aboutsummaryrefslogtreecommitdiff
path: root/gdb/configure
diff options
context:
space:
mode:
authorFrank Ch. Eigler <fche@redhat.com>2019-08-06 11:23:48 -0400
committerFrank Ch. Eigler <fche@redhat.com>2019-08-06 15:09:53 -0400
commit404f29021abaef86a341663444fb069eb1f0282a (patch)
tree76a3409f363d27b2c0fcceaaea2dcf2a86f7e5e6 /gdb/configure
parent046bebe1c0a367687bd693eb4594fcdcba0b8f7e (diff)
downloadgdb-404f29021abaef86a341663444fb069eb1f0282a.zip
gdb-404f29021abaef86a341663444fb069eb1f0282a.tar.gz
gdb-404f29021abaef86a341663444fb069eb1f0282a.tar.bz2
[PR build/24886] disable glibc mcheck support
This patch drops gdb's configury support for glibc's mcheck function. It has been observed to cause false abort()s, because it is thread-unsafe yet interposes every malloc/free operation. So if any library transitively used by gdb also uses threads, then these functions can easily corrupt their own checking data. These days, gcc ASAN and valgrind provide high quality checking, and mcheck is apparently itself being slowly deprecated. So, let's stop linking to it. Attached patch drops the autoconf/Makefile machinery for both gdb and gdbserver. No testsuite-visible impact. IMHO not worth mentioning in NEWS. See also: https://sourceware.org/bugzilla/show_bug.cgi?id=9939 gdb/ChangeLog PR build/24886 * configure.ac: Drop enable-libmcheck support. * configure, config.in: Rebuild. * libmcheck.m4: Remove. * acinclude.m4: Don't include it. * Makefile.in: Don't distribute it. * top.c (print_gdb_configuration): Don't mention it. gdb/gdbserver/ChangeLog PR build/24886 * configure.ac: Drop enable-libmcheck support. * configure, config.in: Rebuild. * acinclude.m4: Don't include it.
Diffstat (limited to 'gdb/configure')
-rwxr-xr-xgdb/configure81
1 files changed, 0 insertions, 81 deletions
diff --git a/gdb/configure b/gdb/configure
index 12954d1..9206f0e 100755
--- a/gdb/configure
+++ b/gdb/configure
@@ -879,7 +879,6 @@ with_libmpfr_prefix
with_python
with_guile
enable_source_highlight
-enable_libmcheck
with_intel_pt
with_libipt_prefix
with_included_regex
@@ -1556,7 +1555,6 @@ Optional Features:
--disable-rpath do not hardcode runtime library paths
--enable-source-highlight
enable source-highlight for source listings
- --enable-libmcheck Try linking with -lmcheck if available
--enable-werror treat compile warnings as errors
--enable-build-warnings enable build-time compiler warnings if gcc is used
--enable-gdb-build-warnings
@@ -11316,85 +11314,6 @@ fi
-# --------------------- #
-# Check for libmcheck. #
-# --------------------- #
-
-# Enable -lmcheck by default (it provides cheap-enough memory mangling),
-# but turn it off if Python is enabled with threads, since -lmcheck is
-# not thread safe (http://sourceware.org/bugzilla/show_bug.cgi?id=9939),
-# and for releases.
-if test \( "${have_libpython}" = "no" -o "${python_has_threads}" = "no" \) \
- && $development; then
- libmcheck_default=yes
-else
- libmcheck_default=no
-fi
-
- # Check whether --enable-libmcheck was given.
-if test "${enable_libmcheck+set}" = set; then :
- enableval=$enable_libmcheck; case "${enableval}" in
- yes | y) ENABLE_LIBMCHECK="yes" ;;
- no | n) ENABLE_LIBMCHECK="no" ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-libmcheck" "$LINENO" 5 ;;
- esac
-fi
-
-
- if test -z "${ENABLE_LIBMCHECK}"; then
- ENABLE_LIBMCHECK=${libmcheck_default}
- fi
-
- if test "$ENABLE_LIBMCHECK" = "yes" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lmcheck" >&5
-$as_echo_n "checking for main in -lmcheck... " >&6; }
-if ${ac_cv_lib_mcheck_main+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lmcheck $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_mcheck_main=yes
-else
- ac_cv_lib_mcheck_main=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_mcheck_main" >&5
-$as_echo "$ac_cv_lib_mcheck_main" >&6; }
-if test "x$ac_cv_lib_mcheck_main" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBMCHECK 1
-_ACEOF
-
- LIBS="-lmcheck $LIBS"
-
-fi
-
- fi
-
-
-if test "$ENABLE_LIBMCHECK" = "yes" \
- -a "${have_libpython}" != "no" \
- -a "${python_has_threads}" = "yes" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: --enable-libmcheck may lead to spurious crashes if threads are used in python" >&5
-$as_echo "$as_me: WARNING: --enable-libmcheck may lead to spurious crashes if threads are used in python" >&2;}
-fi
-
# Check whether --with-intel_pt was given.
if test "${with_intel_pt+set}" = set; then :