I'm seeing this on F27 (a clean build from scratch):
~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[3]: Entering directory '/home/pedro/brno/pedro/gdb/binutils-gdb/build/gdbsupport'
CC gdb_tilde_expand.o
In file included from /home/pedro/gdb/binutils-gdb/src/gdbsupport/../gnulib/import/libc-config.h:33:0,
from ../gnulib/import/glob.h:544,
from /home/pedro/gdb/binutils-gdb/src/gdbsupport/gdb_tilde_expand.c:22:
../bfd/config.h:7:4: error: #error config.h must be #included before system headers
# error config.h must be #included before system headers
^~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~
libc-config.h, where it includes config.h, says:
~~~~~~~~~~~~~~~~~~~~~~~~~~~
/* This is intended to be a good-enough substitute for glibc system
macros like those defined in <sys/cdefs.h>, so that Gnulib code
shared with glibc can do this as the first #include:
#ifndef _LIBC
# include <libc-config.h>
#endif
When compiled as part of glibc this is a no-op; when compiled as
part of Gnulib this includes Gnulib's <config.h> and defines macros
that glibc library code would normally assume. */
#include <config.h>
~~~~~~~~~~~~~~~~~~~~~~~~~~~
The issue is that that '#include <config.h>' picks up bfd's config.h
instead of gnulib's.
This problem doesn't trigger in the gdb dir because there we generate
config.h under that exact name so gnulib's libc-config.h ends up
picking gdb's config.h instead of gnulib.c and that ends up harmless.
In gdbsupport, the config.h file is really named support-config.h, so
that '#include <config.h>' in libc-config.h doesn't pick it like it
would if it had the conventional config.h name.
This patch fixes it by simply renaming gdbserver's support-config.h to
config.h.
gdbsupport/ChangeLog:
2020-01-17 Pedro Alves <palves@redhat.com>
* configure.ac: Generate config.h instead of support-config.h.
* common-defs.h: Include <gdbsupport/config.h> instead of
<gdbsupport/support-config.h>.
* Makefile.in: Regenerate.
* configure: Regenerate.
+2020-01-17 Pedro Alves <palves@redhat.com>
+
+ * configure.ac: Generate config.h instead of support-config.h.
+ * common-defs.h: Include <gdbsupport/config.h> instead of
+ <gdbsupport/support-config.h>.
+ * Makefile.in: Regenerate.
+ * configure: Regenerate.
+
2020-01-14 Tom Tromey <tom@tromey.com>
* Makefile.in: Rebuild.
2020-01-14 Tom Tromey <tom@tromey.com>
* Makefile.in: Rebuild.
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
configure.lineno config.status.lineno
mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
configure.lineno config.status.lineno
mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
-CONFIG_HEADER = support-config.h
+CONFIG_HEADER = config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
LIBRARIES = $(noinst_LIBRARIES)
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
LIBRARIES = $(noinst_LIBRARIES)
xml-utils.c \
$(selftest)
xml-utils.c \
$(selftest)
$(MAKE) $(AM_MAKEFLAGS) all-am
.SUFFIXES:
$(MAKE) $(AM_MAKEFLAGS) all-am
.SUFFIXES:
$(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
$(am__aclocal_m4_deps):
$(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
$(am__aclocal_m4_deps):
-support-config.h: stamp-h1
@test -f $@ || rm -f stamp-h1
@test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1
stamp-h1: $(srcdir)/config.in $(top_builddir)/config.status
@rm -f stamp-h1
@test -f $@ || rm -f stamp-h1
@test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1
stamp-h1: $(srcdir)/config.in $(top_builddir)/config.status
@rm -f stamp-h1
- cd $(top_builddir) && $(SHELL) ./config.status support-config.h
+ cd $(top_builddir) && $(SHELL) ./config.status config.h
$(srcdir)/config.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
($(am__cd) $(top_srcdir) && $(AUTOHEADER))
rm -f stamp-h1
touch $@
distclean-hdr:
$(srcdir)/config.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
($(am__cd) $(top_srcdir) && $(AUTOHEADER))
rm -f stamp-h1
touch $@
distclean-hdr:
- -rm -f support-config.h stamp-h1
+ -rm -f config.h stamp-h1
clean-noinstLIBRARIES:
-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
clean-noinstLIBRARIES:
-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
-rm -f cscope.out cscope.in.out cscope.po.out cscope.files
check-am: all-am
check: check-am
-rm -f cscope.out cscope.in.out cscope.po.out cscope.files
check-am: all-am
check: check-am
-all-am: Makefile $(LIBRARIES) support-config.h
+all-am: Makefile $(LIBRARIES) config.h
installdirs:
install: install-am
install-exec: install-exec-am
installdirs:
install: install-am
install-exec: install-exec-am
-#include <gdbsupport/support-config.h>
+#include <gdbsupport/config.h>
#undef PACKAGE_NAME
#undef PACKAGE
#undef PACKAGE_NAME
#undef PACKAGE
-ac_config_headers="$ac_config_headers support-config.h:config.in"
+ac_config_headers="$ac_config_headers config.h:config.in"
ac_aux_dir=
for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
ac_aux_dir=
for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
ac_compiler_gnu=$ac_cv_c_compiler_gnu
ac_compiler_gnu=$ac_cv_c_compiler_gnu
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sigsetjmp" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sigsetjmp" >&5
$as_echo_n "checking for sigsetjmp... " >&6; }
if ${gdb_cv_func_sigsetjmp+:} false; then :
$as_echo_n "(cached) " >&6
$as_echo_n "checking for sigsetjmp... " >&6; }
if ${gdb_cv_func_sigsetjmp+:} false; then :
$as_echo_n "(cached) " >&6
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_func_sigsetjmp" >&5
$as_echo "$gdb_cv_func_sigsetjmp" >&6; }
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_func_sigsetjmp" >&5
$as_echo "$gdb_cv_func_sigsetjmp" >&6; }
-if test "$gdb_cv_func_sigsetjmp" = "yes"; then
+ if test "$gdb_cv_func_sigsetjmp" = "yes"; then
$as_echo "#define HAVE_SIGSETJMP 1" >>confdefs.h
$as_echo "#define HAVE_SIGSETJMP 1" >>confdefs.h
# Check whether --with-intel_pt was given.
# Check whether --with-intel_pt was given.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use intel pt" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use intel pt" >&5
$as_echo_n "checking whether to use intel pt... " >&6; }
$as_echo_n "checking whether to use intel pt... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_intel_pt" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_intel_pt" >&5
$as_echo "$with_intel_pt" >&6; }
$as_echo "$with_intel_pt" >&6; }
-if test "${with_intel_pt}" = no; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Intel Processor Trace support disabled; some features may be unavailable." >&5
+ if test "${with_intel_pt}" = no; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Intel Processor Trace support disabled; some features may be unavailable." >&5
$as_echo "$as_me: WARNING: Intel Processor Trace support disabled; some features may be unavailable." >&2;}
$as_echo "$as_me: WARNING: Intel Processor Trace support disabled; some features may be unavailable." >&2;}
- HAVE_LIBIPT=no
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ HAVE_LIBIPT=no
+ else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-#include <linux/perf_event.h>
-#ifndef PERF_ATTR_SIZE_VER5
-# error
-#endif
+ #include <linux/perf_event.h>
+ #ifndef PERF_ATTR_SIZE_VER5
+ # error
+ #endif
_ACEOF
if ac_fn_c_try_cpp "$LINENO"; then :
_ACEOF
if ac_fn_c_try_cpp "$LINENO"; then :
perf_event=no
fi
rm -f conftest.err conftest.i conftest.$ac_ext
perf_event=no
fi
rm -f conftest.err conftest.i conftest.$ac_ext
- if test "$perf_event" != yes; then
- if test "$with_intel_pt" = yes; then
- as_fn_error $? "linux/perf_event.h missing or too old" "$LINENO" 5
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: linux/perf_event.h missing or too old; some features may be unavailable." >&5
+ if test "$perf_event" != yes; then
+ if test "$with_intel_pt" = yes; then
+ as_fn_error $? "linux/perf_event.h missing or too old" "$LINENO" 5
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: linux/perf_event.h missing or too old; some features may be unavailable." >&5
$as_echo "$as_me: WARNING: linux/perf_event.h missing or too old; some features may be unavailable." >&2;}
$as_echo "$as_me: WARNING: linux/perf_event.h missing or too old; some features may be unavailable." >&2;}
- if test "$HAVE_LIBIPT" != yes; then
- if test "$with_intel_pt" = yes; then
- as_fn_error $? "libipt is missing or unusable" "$LINENO" 5
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libipt is missing or unusable; some features may be unavailable." >&5
+ if test "$HAVE_LIBIPT" != yes; then
+ if test "$with_intel_pt" = yes; then
+ as_fn_error $? "libipt is missing or unusable" "$LINENO" 5
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libipt is missing or unusable; some features may be unavailable." >&5
$as_echo "$as_me: WARNING: libipt is missing or unusable; some features may be unavailable." >&2;}
$as_echo "$as_me: WARNING: libipt is missing or unusable; some features may be unavailable." >&2;}
- fi
- else
- save_LIBS=$LIBS
- LIBS="$LIBS $LIBIPT"
- for ac_func in pt_insn_event
+ fi
+ else
+ save_LIBS=$LIBS
+ LIBS="$LIBS $LIBIPT"
+ for ac_func in pt_insn_event
do :
ac_fn_c_check_func "$LINENO" "pt_insn_event" "ac_cv_func_pt_insn_event"
if test "x$ac_cv_func_pt_insn_event" = xyes; then :
do :
ac_fn_c_check_func "$LINENO" "pt_insn_event" "ac_cv_func_pt_insn_event"
if test "x$ac_cv_func_pt_insn_event" = xyes; then :
- ac_fn_c_check_member "$LINENO" "struct pt_insn" "enabled" "ac_cv_member_struct_pt_insn_enabled" "#include <intel-pt.h>
+ ac_fn_c_check_member "$LINENO" "struct pt_insn" "enabled" "ac_cv_member_struct_pt_insn_enabled" "#include <intel-pt.h>
"
if test "x$ac_cv_member_struct_pt_insn_enabled" = xyes; then :
"
if test "x$ac_cv_member_struct_pt_insn_enabled" = xyes; then :
-if test "$ac_cv_header_sys_procfs_h" = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gregset_t in sys/procfs.h" >&5
+ if test "$ac_cv_header_sys_procfs_h" = yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gregset_t in sys/procfs.h" >&5
$as_echo_n "checking for gregset_t in sys/procfs.h... " >&6; }
if ${bfd_cv_have_sys_procfs_type_gregset_t+:} false; then :
$as_echo_n "(cached) " >&6
$as_echo_n "checking for gregset_t in sys/procfs.h... " >&6; }
if ${bfd_cv_have_sys_procfs_type_gregset_t+:} false; then :
$as_echo_n "(cached) " >&6
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_gregset_t" >&5
$as_echo "$bfd_cv_have_sys_procfs_type_gregset_t" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_gregset_t" >&5
$as_echo "$bfd_cv_have_sys_procfs_type_gregset_t" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for fpregset_t in sys/procfs.h" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for fpregset_t in sys/procfs.h" >&5
$as_echo_n "checking for fpregset_t in sys/procfs.h... " >&6; }
if ${bfd_cv_have_sys_procfs_type_fpregset_t+:} false; then :
$as_echo_n "(cached) " >&6
$as_echo_n "checking for fpregset_t in sys/procfs.h... " >&6; }
if ${bfd_cv_have_sys_procfs_type_fpregset_t+:} false; then :
$as_echo_n "(cached) " >&6
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_fpregset_t" >&5
$as_echo "$bfd_cv_have_sys_procfs_type_fpregset_t" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_fpregset_t" >&5
$as_echo "$bfd_cv_have_sys_procfs_type_fpregset_t" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for prgregset_t in sys/procfs.h" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for prgregset_t in sys/procfs.h" >&5
$as_echo_n "checking for prgregset_t in sys/procfs.h... " >&6; }
if ${bfd_cv_have_sys_procfs_type_prgregset_t+:} false; then :
$as_echo_n "(cached) " >&6
$as_echo_n "checking for prgregset_t in sys/procfs.h... " >&6; }
if ${bfd_cv_have_sys_procfs_type_prgregset_t+:} false; then :
$as_echo_n "(cached) " >&6
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_prgregset_t" >&5
$as_echo "$bfd_cv_have_sys_procfs_type_prgregset_t" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_prgregset_t" >&5
$as_echo "$bfd_cv_have_sys_procfs_type_prgregset_t" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for prfpregset_t in sys/procfs.h" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for prfpregset_t in sys/procfs.h" >&5
$as_echo_n "checking for prfpregset_t in sys/procfs.h... " >&6; }
if ${bfd_cv_have_sys_procfs_type_prfpregset_t+:} false; then :
$as_echo_n "(cached) " >&6
$as_echo_n "checking for prfpregset_t in sys/procfs.h... " >&6; }
if ${bfd_cv_have_sys_procfs_type_prfpregset_t+:} false; then :
$as_echo_n "(cached) " >&6
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_prfpregset_t" >&5
$as_echo "$bfd_cv_have_sys_procfs_type_prfpregset_t" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_prfpregset_t" >&5
$as_echo "$bfd_cv_have_sys_procfs_type_prfpregset_t" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for prgregset32_t in sys/procfs.h" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for prgregset32_t in sys/procfs.h" >&5
$as_echo_n "checking for prgregset32_t in sys/procfs.h... " >&6; }
if ${bfd_cv_have_sys_procfs_type_prgregset32_t+:} false; then :
$as_echo_n "(cached) " >&6
$as_echo_n "checking for prgregset32_t in sys/procfs.h... " >&6; }
if ${bfd_cv_have_sys_procfs_type_prgregset32_t+:} false; then :
$as_echo_n "(cached) " >&6
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_prgregset32_t" >&5
$as_echo "$bfd_cv_have_sys_procfs_type_prgregset32_t" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_prgregset32_t" >&5
$as_echo "$bfd_cv_have_sys_procfs_type_prgregset32_t" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for lwpid_t in sys/procfs.h" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for lwpid_t in sys/procfs.h" >&5
$as_echo_n "checking for lwpid_t in sys/procfs.h... " >&6; }
if ${bfd_cv_have_sys_procfs_type_lwpid_t+:} false; then :
$as_echo_n "(cached) " >&6
$as_echo_n "checking for lwpid_t in sys/procfs.h... " >&6; }
if ${bfd_cv_have_sys_procfs_type_lwpid_t+:} false; then :
$as_echo_n "(cached) " >&6
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_lwpid_t" >&5
$as_echo "$bfd_cv_have_sys_procfs_type_lwpid_t" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_lwpid_t" >&5
$as_echo "$bfd_cv_have_sys_procfs_type_lwpid_t" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for psaddr_t in sys/procfs.h" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for psaddr_t in sys/procfs.h" >&5
$as_echo_n "checking for psaddr_t in sys/procfs.h... " >&6; }
if ${bfd_cv_have_sys_procfs_type_psaddr_t+:} false; then :
$as_echo_n "(cached) " >&6
$as_echo_n "checking for psaddr_t in sys/procfs.h... " >&6; }
if ${bfd_cv_have_sys_procfs_type_psaddr_t+:} false; then :
$as_echo_n "(cached) " >&6
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_psaddr_t" >&5
$as_echo "$bfd_cv_have_sys_procfs_type_psaddr_t" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_psaddr_t" >&5
$as_echo "$bfd_cv_have_sys_procfs_type_psaddr_t" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for elf_fpregset_t in sys/procfs.h" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for elf_fpregset_t in sys/procfs.h" >&5
$as_echo_n "checking for elf_fpregset_t in sys/procfs.h... " >&6; }
if ${bfd_cv_have_sys_procfs_type_elf_fpregset_t+:} false; then :
$as_echo_n "(cached) " >&6
$as_echo_n "checking for elf_fpregset_t in sys/procfs.h... " >&6; }
if ${bfd_cv_have_sys_procfs_type_elf_fpregset_t+:} false; then :
$as_echo_n "(cached) " >&6
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_elf_fpregset_t" >&5
$as_echo "$bfd_cv_have_sys_procfs_type_elf_fpregset_t" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_elf_fpregset_t" >&5
$as_echo "$bfd_cv_have_sys_procfs_type_elf_fpregset_t" >&6; }
# Check whether we will enable the inclusion of unit tests when
# Check whether we will enable the inclusion of unit tests when
for ac_config_target in $ac_config_targets
do
case $ac_config_target in
for ac_config_target in $ac_config_targets
do
case $ac_config_target in
- "support-config.h") CONFIG_HEADERS="$CONFIG_HEADERS support-config.h:config.in" ;;
+ "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h:config.in" ;;
"depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
"Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
"depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
"Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
AC_INIT([gdbsupport], 1.0)
AC_CONFIG_SRCDIR(common-defs.h)
AC_INIT([gdbsupport], 1.0)
AC_CONFIG_SRCDIR(common-defs.h)
-AC_CONFIG_HEADER(support-config.h:config.in)
+AC_CONFIG_HEADER(config.h:config.in)
AC_CANONICAL_SYSTEM
AM_MAINTAINER_MODE
AC_CONFIG_AUX_DIR(..)
AC_CANONICAL_SYSTEM
AM_MAINTAINER_MODE
AC_CONFIG_AUX_DIR(..)