summaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2019-04-21 13:58:49 -0600
committerTom Tromey <tom@tromey.com>2019-08-12 10:57:56 -0600
commit86c6b807f50ecec84e55007bf6cb6e54c159727b (patch)
tree1b3454909a376b369eecaf0df7d20b7558bf5bce /gdb
parent5db2718ce48c497e317787caebacd019da59c3b0 (diff)
downloadbinutils-gdb-86c6b807f50ecec84e55007bf6cb6e54c159727b.tar.gz
Require readline 7 or newer
This changes gdb to require readline 7 or newer at build time. gdb/ChangeLog 2019-08-12 Tom Tromey <tom@tromey.com> * configure: Rebuild. * configure.ac: Check for readline 7. * NEWS: Mention readline 7 requirement. * README: Update. gdb/doc/ChangeLog 2019-08-12 Tom Tromey <tom@tromey.com> * gdb.texinfo (Configure Options): Document minimum version of readline.
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog7
-rw-r--r--gdb/NEWS5
-rw-r--r--gdb/README3
-rwxr-xr-xgdb/configure32
-rw-r--r--gdb/configure.ac14
-rw-r--r--gdb/doc/ChangeLog5
-rw-r--r--gdb/doc/gdb.texinfo3
7 files changed, 67 insertions, 2 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index e13415518fc..12998aa2b14 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,12 @@
2019-08-12 Tom Tromey <tom@tromey.com>
+ * configure: Rebuild.
+ * configure.ac: Check for readline 7.
+ * NEWS: Mention readline 7 requirement.
+ * README: Update.
+
+2019-08-12 Tom Tromey <tom@tromey.com>
+
* mingw-hdep.c (gdb_select): Remove readline hack.
2019-08-09 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
diff --git a/gdb/NEWS b/gdb/NEWS
index fa01adf6e89..462247f4861 100644
--- a/gdb/NEWS
+++ b/gdb/NEWS
@@ -299,6 +299,11 @@ maint show test-options-completion-result
Using another implementation of the make program or an earlier version of
GNU make to build GDB or GDBserver is not supported.
+* Building GDB now requires GNU readline >= 7.0.
+
+ GDB now bundles GNU readline 8.0, but if you choose to use
+ --with-system-readline, only readline >= 7.0 can be used.
+
*** Changes in GDB 8.3
* GDB and GDBserver now support access to additional registers on
diff --git a/gdb/README b/gdb/README
index 8a91aab2a4c..8883a8a09e3 100644
--- a/gdb/README
+++ b/gdb/README
@@ -439,7 +439,8 @@ more obscure GDB `configure' options are not listed here.
`--with-system-readline'
Use the readline library installed on the host, rather than the
- library supplied as part of GDB.
+ library supplied as part of GDB. Readline 7 or newer is required;
+ this is enforced by the build system.
`--with-system-zlib
Use the zlib library installed on the host, rather than the
diff --git a/gdb/configure b/gdb/configure
index 9206f0e7f88..2832c836177 100755
--- a/gdb/configure
+++ b/gdb/configure
@@ -8952,6 +8952,38 @@ fi
if test "$with_system_readline" = yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether system readline is new enough" >&5
+$as_echo_n "checking whether system readline is new enough... " >&6; }
+if ${gdb_cv_readline_ok+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <stdio.h>
+#include <readline/readline.h>
+int
+main ()
+{
+#if RL_VERSION_MAJOR < 7
+# error "readline version 7 required"
+#endif
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ gdb_cv_readline_ok=yes
+else
+ gdb_cv_readline_ok=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_readline_ok" >&5
+$as_echo "$gdb_cv_readline_ok" >&6; }
+ if test "$gdb_cv_readline_ok" != yes; then
+ as_fn_error $? "system readline is not new enough" "$LINENO" 5
+ fi
+
READLINE=-lreadline
READLINE_DEPS=
READLINE_CFLAGS=
diff --git a/gdb/configure.ac b/gdb/configure.ac
index 05b722b7f11..0979109d976 100644
--- a/gdb/configure.ac
+++ b/gdb/configure.ac
@@ -581,6 +581,20 @@ AC_ARG_WITH([system-readline],
[use installed readline library])])
if test "$with_system_readline" = yes; then
+ AC_CACHE_CHECK([whether system readline is new enough],
+ [gdb_cv_readline_ok],
+ [AC_TRY_COMPILE(
+ [#include <stdio.h>
+#include <readline/readline.h>],
+ [#if RL_VERSION_MAJOR < 7
+# error "readline version 7 required"
+#endif],
+ gdb_cv_readline_ok=yes,
+ gdb_cv_readline_ok=no)])
+ if test "$gdb_cv_readline_ok" != yes; then
+ AC_MSG_ERROR([system readline is not new enough])
+ fi
+
READLINE=-lreadline
READLINE_DEPS=
READLINE_CFLAGS=
diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog
index 5b55e0593cb..971e9c311ae 100644
--- a/gdb/doc/ChangeLog
+++ b/gdb/doc/ChangeLog
@@ -1,3 +1,8 @@
+2019-08-12 Tom Tromey <tom@tromey.com>
+
+ * gdb.texinfo (Configure Options): Document minimum version of
+ readline.
+
2019-08-09 Alan Hayward <alan.hayward@arm.com>
* gdb.texinfo (AArch64 Pointer Authentication): Fix typo.
diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
index c8ca757989c..523e3d0bfe1 100644
--- a/gdb/doc/gdb.texinfo
+++ b/gdb/doc/gdb.texinfo
@@ -36905,7 +36905,8 @@ details.
@item --with-system-readline
Use the readline library installed on the host, rather than the
-library supplied as part of @value{GDBN}.
+library supplied as part of @value{GDBN}. Readline 7 or newer is
+required; this is enforced by the build system.
@item --with-system-zlib
Use the zlib library installed on the host, rather than the library