From a9b9870206658564272fe17d2079ed9eb6ffb15f Mon Sep 17 00:00:00 2001 From: Nick Alcock Date: Fri, 5 Jun 2020 18:38:03 +0100 Subject: libctf, dedup: add new configure option --enable-libctf-hash-debugging Add a new debugging configure option, --enable-libctf-hash-debugging, off by default, which lets you configure in expensive internal consistency checks and enable the printing of debugging output when LIBCTF_DEBUG=t before type deduplication has happened. In this commit we just add the option and cause it to turn ctf_assert into a real, hard assert for easier debugging. libctf/ * configure.ac: Add --enable-libctf-hash-debugging. * aclocal.m4: Pull in enable.m4, for GCC_ENABLE. * Makefile.in: Regenerated. * configure: Likewise. * config.h.in: Likewise. * ctf-impl.h [ENABLE_LIBCTF_HASH_DEBUGGING] (ctf_assert): Define to assert. --- libctf/configure | 41 +++++++++++++++++++++++++++++++++++++++-- 1 file changed, 39 insertions(+), 2 deletions(-) (limited to 'libctf/configure') diff --git a/libctf/configure b/libctf/configure index 58aaa3a..9f16ae9 100755 --- a/libctf/configure +++ b/libctf/configure @@ -642,6 +642,8 @@ SHARED_LIBADD SHARED_LDFLAGS NEED_CTF_QSORT_R_FALSE NEED_CTF_QSORT_R_TRUE +ENABLE_LIBCTF_HASH_DEBUGGING_FALSE +ENABLE_LIBCTF_HASH_DEBUGGING_TRUE zlibinc zlibdir ac_libctf_warn_cflags @@ -796,6 +798,7 @@ enable_werror_always enable_maintainer_mode enable_install_libbfd with_system_zlib +enable_libctf_hash_debugging ' ac_precious_vars='build_alias host_alias @@ -1441,6 +1444,9 @@ Optional Features: enable make rules and dependencies not useful (and sometimes confusing) to the casual installer --enable-install-libbfd controls installation of libbfd and related headers + --enable-libctf-hash-debugging + Enable expensive debugging of CTF deduplication type + hashing [default=no] Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] @@ -11513,7 +11519,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11516 "configure" +#line 11522 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11619,7 +11625,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11622 "configure" +#line 11628 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -12799,6 +12805,33 @@ fi + # Check whether --enable-libctf-hash-debugging was given. +if test "${enable_libctf_hash_debugging+set}" = set; then : + enableval=$enable_libctf_hash_debugging; + case "$enableval" in + yes|no) ;; + *) as_fn_error $? "Argument to enable/disable libctf-hash-debugging must be yes or no" "$LINENO" 5 ;; + esac + +else + enable_libctf_hash_debugging=no +fi + + +if test "${enable_libctf_hash_debugging}" = yes; then + +$as_echo "#define ENABLE_LIBCTF_HASH_DEBUGGING 1" >>confdefs.h + +fi + if test "${enable_libctf_hash_debugging}" = yes; then + ENABLE_LIBCTF_HASH_DEBUGGING_TRUE= + ENABLE_LIBCTF_HASH_DEBUGGING_FALSE='#' +else + ENABLE_LIBCTF_HASH_DEBUGGING_TRUE='#' + ENABLE_LIBCTF_HASH_DEBUGGING_FALSE= +fi + + # Similar to GDB_AC_CHECK_BFD. OLD_CFLAGS=$CFLAGS OLD_LDFLAGS=$LDFLAGS @@ -13495,6 +13528,10 @@ if test -z "${INSTALL_LIBBFD_TRUE}" && test -z "${INSTALL_LIBBFD_FALSE}"; then as_fn_error $? "conditional \"INSTALL_LIBBFD\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${ENABLE_LIBCTF_HASH_DEBUGGING_TRUE}" && test -z "${ENABLE_LIBCTF_HASH_DEBUGGING_FALSE}"; then + as_fn_error $? "conditional \"ENABLE_LIBCTF_HASH_DEBUGGING\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${NEED_CTF_QSORT_R_TRUE}" && test -z "${NEED_CTF_QSORT_R_FALSE}"; then as_fn_error $? "conditional \"NEED_CTF_QSORT_R\" was never defined. -- cgit v1.1