2014-07-04 11:29:42 +08:00
|
|
|
/* config.in. Generated from configure.ac by autoheader. */
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2012-05-17 23:13:28 +08:00
|
|
|
/* Check that config.h is #included before system headers
|
|
|
|
(this works only for glibc, but that should be enough). */
|
2012-09-11 06:30:57 +08:00
|
|
|
#if defined(__GLIBC__) && !defined(__FreeBSD_kernel__) && !defined(__CONFIG_H__)
|
2012-05-17 23:13:28 +08:00
|
|
|
# error config.h must be #included before system headers
|
|
|
|
#endif
|
|
|
|
#define __CONFIG_H__ 1
|
|
|
|
|
2010-04-11 06:21:31 +08:00
|
|
|
/* Name of host specific core header file to include in elf.c. */
|
|
|
|
#undef CORE_HEADER
|
|
|
|
|
2018-02-28 03:34:20 +08:00
|
|
|
/* Define to 1 if you want to enable -z separate-code in ELF linker by
|
|
|
|
default. */
|
|
|
|
#undef DEFAULT_LD_Z_SEPARATE_CODE
|
|
|
|
|
2021-04-12 17:03:45 +08:00
|
|
|
/* Define if you want run-time sanity checks. */
|
|
|
|
#undef ENABLE_CHECKING
|
|
|
|
|
2006-06-05 20:28:18 +08:00
|
|
|
/* Define to 1 if translation of program messages to the user's native
|
|
|
|
language is requested. */
|
2004-08-31 02:58:14 +08:00
|
|
|
#undef ENABLE_NLS
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2015-07-28 15:57:32 +08:00
|
|
|
/* Define to 1 if you have the declaration of `asprintf', and to 0 if you
|
|
|
|
don't. */
|
|
|
|
#undef HAVE_DECL_ASPRINTF
|
|
|
|
|
2005-04-01 00:09:03 +08:00
|
|
|
/* Define to 1 if you have the declaration of `basename', and to 0 if you
|
|
|
|
don't. */
|
2005-03-31 23:35:38 +08:00
|
|
|
#undef HAVE_DECL_BASENAME
|
|
|
|
|
2005-04-22 21:58:14 +08:00
|
|
|
/* Define to 1 if you have the declaration of `ffs', and to 0 if you don't. */
|
|
|
|
#undef HAVE_DECL_FFS
|
|
|
|
|
C99 bfd configury
Certain library headers and functions are required by C99. This
removes configure tests for them. The patch also removes AC_ISC_POSIX
and AC_HEADER_DIRENT, which the autoconf manual states are obsolescent.
sys/time.h is no longer tangled up with time.h so it can be handled by
the gprof configure.
* configure.ac: Don't check for long long or long double type.
Don't check for alloca.h, limits.h, stddef.h, stdlib.h, string.h,
strings.h, time.h, wchar.h, wctype.h or sys/time.h. Don't check
for strtoull, free, malloc, realloc, getenv, strstr, snprintf,
vsnprintf, strlen or setitimer. Sort AC_CHECK_DECLS.
(AC_ISC_POSIX): Don't invoke.
(AC_HEADER_TIME, AC_HEADER_DIRENT, ACX_HEADER_STRING): Likewise.
* sysdep.h: Remove many HAVE_*_H checks and fallback declarations.
Do test HAVE_SYS_TYPES_H. Don't include sys/time.h. Reorder
header order as per automake AC_INCLUDES_DEFAULT.
* bfd-in.h: Include inttypes.h unconditionally.
* bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Assume long long and
long double are available.
(bfd_scan_vma): Assume long long and strtoull are available.
* elflink.c: Include limits.h unconditionally.
* elfnn-riscv.c: Likewise.
* wasm-module.c: Likewise.
* hpux-core.c: Include dirent.h unconditionally.
* trad-core.c: Likewise.
* hosts/x86-64linux.h: Include stdlib.h unconditionally.
* peXXigen.c: Remove HAVE_WCHAR_H and HAVE_WCTYPE_H checks.
* elf32-m68hc1x.c: Don't include alloca-conf.h.
* elf64-hppa.c: Likewise.
* som.c: Likewise.
* wasm-module.c: Likewise.
* xsym.c: Likewise.
* bfd-in2.h: Regenerate.
* config.in: Regenerate.
* configure: Regenerate.
2021-04-05 13:57:37 +08:00
|
|
|
/* Define to 1 if you have the declaration of `fopen64', and to 0 if you
|
|
|
|
don't. */
|
|
|
|
#undef HAVE_DECL_FOPEN64
|
2005-04-22 21:58:14 +08:00
|
|
|
|
2005-04-20 23:00:15 +08:00
|
|
|
/* Define to 1 if you have the declaration of `fseeko', and to 0 if you don't.
|
|
|
|
*/
|
|
|
|
#undef HAVE_DECL_FSEEKO
|
|
|
|
|
|
|
|
/* Define to 1 if you have the declaration of `fseeko64', and to 0 if you
|
|
|
|
don't. */
|
|
|
|
#undef HAVE_DECL_FSEEKO64
|
|
|
|
|
|
|
|
/* Define to 1 if you have the declaration of `ftello', and to 0 if you don't.
|
|
|
|
*/
|
|
|
|
#undef HAVE_DECL_FTELLO
|
|
|
|
|
|
|
|
/* Define to 1 if you have the declaration of `ftello64', and to 0 if you
|
|
|
|
don't. */
|
|
|
|
#undef HAVE_DECL_FTELLO64
|
|
|
|
|
2005-05-05 06:15:30 +08:00
|
|
|
/* Define to 1 if you have the declaration of `stpcpy', and to 0 if you don't.
|
|
|
|
*/
|
|
|
|
#undef HAVE_DECL_STPCPY
|
|
|
|
|
2021-07-07 19:44:31 +08:00
|
|
|
/* Define to 1 if you have the declaration of `strnlen', and to 0 if you
|
|
|
|
don't. */
|
|
|
|
#undef HAVE_DECL_STRNLEN
|
|
|
|
|
2015-07-28 15:57:32 +08:00
|
|
|
/* Define to 1 if you have the declaration of `vasprintf', and to 0 if you
|
|
|
|
don't. */
|
|
|
|
#undef HAVE_DECL_VASPRINTF
|
|
|
|
|
2022-12-20 15:31:07 +08:00
|
|
|
/* Define to 1 if you have the declaration of `___lc_codepage_func', and to 0
|
|
|
|
if you don't. */
|
|
|
|
#undef HAVE_DECL____LC_CODEPAGE_FUNC
|
|
|
|
|
2007-07-02 15:12:53 +08:00
|
|
|
/* Define to 1 if you have the <dlfcn.h> header file. */
|
|
|
|
#undef HAVE_DLFCN_H
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to 1 if you have the `fcntl' function. */
|
1999-05-03 15:29:11 +08:00
|
|
|
#undef HAVE_FCNTL
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to 1 if you have the <fcntl.h> header file. */
|
|
|
|
#undef HAVE_FCNTL_H
|
|
|
|
|
|
|
|
/* Define to 1 if you have the `fdopen' function. */
|
1999-05-03 15:29:11 +08:00
|
|
|
#undef HAVE_FDOPEN
|
|
|
|
|
2008-11-06 22:10:46 +08:00
|
|
|
/* Define to 1 if you have the `fileno' function. */
|
|
|
|
#undef HAVE_FILENO
|
|
|
|
|
2018-09-21 22:27:30 +08:00
|
|
|
/* Define to 1 if you have the `fls' function. */
|
|
|
|
#undef HAVE_FLS
|
|
|
|
|
2005-11-04 00:06:11 +08:00
|
|
|
/* Define to 1 if you have the `fopen64' function. */
|
|
|
|
#undef HAVE_FOPEN64
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to 1 if you have the `fseeko' function. */
|
2004-02-12 06:05:35 +08:00
|
|
|
#undef HAVE_FSEEKO
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to 1 if you have the `fseeko64' function. */
|
2004-02-12 06:05:35 +08:00
|
|
|
#undef HAVE_FSEEKO64
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to 1 if you have the `ftello' function. */
|
2004-02-12 06:05:35 +08:00
|
|
|
#undef HAVE_FTELLO
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to 1 if you have the `ftello64' function. */
|
2004-02-12 06:05:35 +08:00
|
|
|
#undef HAVE_FTELLO64
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to 1 if you have the `getgid' function. */
|
1999-05-28 06:48:53 +08:00
|
|
|
#undef HAVE_GETGID
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to 1 if you have the `getpagesize' function. */
|
1999-05-03 15:29:11 +08:00
|
|
|
#undef HAVE_GETPAGESIZE
|
|
|
|
|
2013-05-27 15:55:17 +08:00
|
|
|
/* Define to 1 if you have the `getrlimit' function. */
|
|
|
|
#undef HAVE_GETRLIMIT
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to 1 if you have the `getuid' function. */
|
1999-05-28 06:48:53 +08:00
|
|
|
#undef HAVE_GETUID
|
|
|
|
|
2018-05-18 10:05:18 +08:00
|
|
|
/* Define if your compiler supports hidden visibility. */
|
|
|
|
#undef HAVE_HIDDEN
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to 1 if you have the <inttypes.h> header file. */
|
|
|
|
#undef HAVE_INTTYPES_H
|
|
|
|
|
|
|
|
/* Define if <sys/procfs.h> has lwpstatus_t. */
|
|
|
|
#undef HAVE_LWPSTATUS_T
|
|
|
|
|
|
|
|
/* Define if <sys/procfs.h> has lwpstatus_t.pr_context. */
|
|
|
|
#undef HAVE_LWPSTATUS_T_PR_CONTEXT
|
|
|
|
|
2010-01-05 08:40:07 +08:00
|
|
|
/* Define if <sys/procfs.h> has lwpstatus_t.pr_fpreg. */
|
|
|
|
#undef HAVE_LWPSTATUS_T_PR_FPREG
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define if <sys/procfs.h> has lwpstatus_t.pr_reg. */
|
|
|
|
#undef HAVE_LWPSTATUS_T_PR_REG
|
|
|
|
|
|
|
|
/* Define if <sys/procfs.h> has lwpxstatus_t. */
|
|
|
|
#undef HAVE_LWPXSTATUS_T
|
|
|
|
|
|
|
|
/* Define to 1 if you have the `madvise' function. */
|
1999-05-03 15:29:11 +08:00
|
|
|
#undef HAVE_MADVISE
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to 1 if you have the <memory.h> header file. */
|
|
|
|
#undef HAVE_MEMORY_H
|
|
|
|
|
|
|
|
/* Define to 1 if you have a working `mmap' system call. */
|
|
|
|
#undef HAVE_MMAP
|
|
|
|
|
|
|
|
/* Define to 1 if you have the `mprotect' function. */
|
1999-05-03 15:29:11 +08:00
|
|
|
#undef HAVE_MPROTECT
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define if <sys/procfs.h> has prpsinfo32_t. */
|
|
|
|
#undef HAVE_PRPSINFO32_T
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2011-05-12 15:41:43 +08:00
|
|
|
/* Define if <sys/procfs.h> has prpsinfo32_t.pr_pid. */
|
|
|
|
#undef HAVE_PRPSINFO32_T_PR_PID
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define if <sys/procfs.h> has prpsinfo_t. */
|
|
|
|
#undef HAVE_PRPSINFO_T
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2011-05-12 15:41:43 +08:00
|
|
|
/* Define if <sys/procfs.h> has prpsinfo_t.pr_pid. */
|
|
|
|
#undef HAVE_PRPSINFO_T_PR_PID
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define if <sys/procfs.h> has prstatus32_t. */
|
|
|
|
#undef HAVE_PRSTATUS32_T
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define if <sys/procfs.h> has prstatus32_t.pr_who. */
|
|
|
|
#undef HAVE_PRSTATUS32_T_PR_WHO
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define if <sys/procfs.h> has prstatus_t. */
|
|
|
|
#undef HAVE_PRSTATUS_T
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define if <sys/procfs.h> has prstatus_t.pr_who. */
|
|
|
|
#undef HAVE_PRSTATUS_T_PR_WHO
|
2003-08-28 01:57:33 +08:00
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define if <sys/procfs.h> has psinfo32_t. */
|
|
|
|
#undef HAVE_PSINFO32_T
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2011-05-12 15:41:43 +08:00
|
|
|
/* Define if <sys/procfs.h> has psinfo32_t.pr_pid. */
|
|
|
|
#undef HAVE_PSINFO32_T_PR_PID
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define if <sys/procfs.h> has psinfo_t. */
|
|
|
|
#undef HAVE_PSINFO_T
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2011-05-12 15:41:43 +08:00
|
|
|
/* Define if <sys/procfs.h> has psinfo_t.pr_pid. */
|
|
|
|
#undef HAVE_PSINFO_T_PR_PID
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define if <sys/procfs.h> has pstatus32_t. */
|
|
|
|
#undef HAVE_PSTATUS32_T
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define if <sys/procfs.h> has pstatus_t. */
|
|
|
|
#undef HAVE_PSTATUS_T
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define if <sys/procfs.h> has pxstatus_t. */
|
|
|
|
#undef HAVE_PXSTATUS_T
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to 1 if you have the <stdint.h> header file. */
|
|
|
|
#undef HAVE_STDINT_H
|
|
|
|
|
|
|
|
/* Define to 1 if you have the <stdlib.h> header file. */
|
1999-05-03 15:29:11 +08:00
|
|
|
#undef HAVE_STDLIB_H
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to 1 if you have the <strings.h> header file. */
|
1999-05-03 15:29:11 +08:00
|
|
|
#undef HAVE_STRINGS_H
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to 1 if you have the <string.h> header file. */
|
|
|
|
#undef HAVE_STRING_H
|
|
|
|
|
|
|
|
/* Define if struct core_dumpx has member c_impl */
|
|
|
|
#undef HAVE_ST_C_IMPL
|
|
|
|
|
|
|
|
/* Define to 1 if you have the `sysconf' function. */
|
|
|
|
#undef HAVE_SYSCONF
|
|
|
|
|
|
|
|
/* Define to 1 if you have the <sys/file.h> header file. */
|
1999-05-03 15:29:11 +08:00
|
|
|
#undef HAVE_SYS_FILE_H
|
|
|
|
|
Bump to autoconf 2.69 and automake 1.15.1
When trying to run the update-gnulib.sh script in gdb, I get this:
Error: Wrong automake version (Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/\${ <-- HERE ([^ =:+{}]+)}/ at /opt/automake/1.11.1/bin/automake line 4113.), we need 1.11.1.
Aborting.
Apparently, it's an issue with a regex in automake that triggers a
warning starting with Perl 5.22. It has been fixed in automake 1.15.1.
So I think it's a good excuse to bump the versions of autoconf and
automake used in the gnulib import. And to avoid requiring multiple
builds of autoconf/automake, it was suggested that we bump the required
version of those tools for all binutils-gdb.
For autoconf, the 2.69 version is universally available, so it's an easy
choice. For automake, different distros and distro versions have
different automake versions. But 1.15.1 seems to be the most readily
available as a package. In any case, it's easy to build it from source.
I removed the version checks from AUTOMAKE_OPTIONS and AC_PREREQ,
because I don't think they are useful in our case. They only specify a
lower bound for the acceptable version of automake/autoconf. That's
useful if you let the user choose the version of the tool they want to
use, but want to set a minimum version (because you use a feature that
was introduced in that version). In our case, we force people to use a
specific version anyway. For the autoconf version, we have the check in
config/override.m4 that enforces the version we want. It will be one
less thing to update next time we change autotools version.
I hit a few categories of problems that required some changes. They are
described below along with the chosen solutions.
Problem 1:
configure.ac:17: warning: AM_INIT_AUTOMAKE: two- and three-arguments forms are deprecated. For more info, see:
configure.ac:17: http://www.gnu.org/software/automake/manual/automake.html#Modernize-AM_005fINIT_005fAUTOMAKE-invocation
Solution 1:
Adjust the code based on the example at that URL.
Problem 2 (in zlib/):
Makefile.am: error: required file './INSTALL' not found
Makefile.am: 'automake --add-missing' can install 'INSTALL'
Makefile.am: error: required file './NEWS' not found
Makefile.am: error: required file './AUTHORS' not found
Makefile.am: error: required file './COPYING' not found
Makefile.am: 'automake --add-missing' can install 'COPYING'
Solution 2:
Add the foreign option to AUTOMAKE_OPTIONS.
Problem 3:
doc/Makefile.am:20: error: support for Cygnus-style trees has been removed
Solution 3:
Remove the cygnus options.
Problem 4:
Makefile.am:656: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
Solution 4:
Rename "INCLUDES = " to "AM_CPPFLAGS += " (because AM_CPPFLAGS is
already defined earlier).
Problem 5:
doc/Makefile.am:71: warning: suffix '.texinfo' for Texinfo files is discouraged; use '.texi' instead
doc/Makefile.am: warning: Oops!
doc/Makefile.am: It appears this file (or files included by it) are triggering
doc/Makefile.am: an undocumented, soon-to-be-removed automake hack.
doc/Makefile.am: Future automake versions will no longer place in the builddir
doc/Makefile.am: (rather than in the srcdir) the generated '.info' files that
doc/Makefile.am: appear to be cleaned, by e.g. being listed in CLEANFILES or
doc/Makefile.am: DISTCLEANFILES.
doc/Makefile.am: If you want your '.info' files to be placed in the builddir
doc/Makefile.am: rather than in the srcdir, you have to use the shiny new
doc/Makefile.am: 'info-in-builddir' automake option.
Solution 5:
Rename .texinfo files to .texi.
Problem 6:
doc/Makefile.am: warning: Oops!
doc/Makefile.am: It appears this file (or files included by it) are triggering
doc/Makefile.am: an undocumented, soon-to-be-removed automake hack.
doc/Makefile.am: Future automake versions will no longer place in the builddir
doc/Makefile.am: (rather than in the srcdir) the generated '.info' files that
doc/Makefile.am: appear to be cleaned, by e.g. being listed in CLEANFILES or
doc/Makefile.am: DISTCLEANFILES.
doc/Makefile.am: If you want your '.info' files to be placed in the builddir
doc/Makefile.am: rather than in the srcdir, you have to use the shiny new
doc/Makefile.am: 'info-in-builddir' automake option.
Solution 6:
Remove the hack at the bottom of doc/Makefile.am and use
the info-in-builddir automake option.
Problem 7:
doc/Makefile.am:35: error: required file '../texinfo.tex' not found
doc/Makefile.am:35: 'automake --add-missing' can install 'texinfo.tex'
Solution 7:
Use the no-texinfo.tex automake option. We also have one in
texinfo/texinfo.tex, not sure if we should point to that, or move it
(or a newer version of it added with automake --add-missing) to
top-level.
Problem 8:
Makefile.am:131: warning: source file 'config/tc-aarch64.c' is in a subdirectory,
Makefile.am:131: but option 'subdir-objects' is disabled
automake: warning: possible forward-incompatibility.
automake: At least a source file is in a subdirectory, but the 'subdir-objects'
automake: automake option hasn't been enabled. For now, the corresponding output
automake: object file(s) will be placed in the top-level directory. However,
automake: this behaviour will change in future Automake versions: they will
automake: unconditionally cause object files to be placed in the same subdirectory
automake: of the corresponding sources.
automake: You are advised to start using 'subdir-objects' option throughout your
automake: project, to avoid future incompatibilities.
Solution 8:
Use subdir-objects, that means adjusting references to some .o that will now
be in config/.
Problem 9:
configure.ac:375: warning: AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected in body
../../lib/autoconf/lang.m4:193: AC_LANG_CONFTEST is expanded from...
../../lib/autoconf/general.m4:2601: _AC_COMPILE_IFELSE is expanded from...
../../lib/autoconf/general.m4:2617: AC_COMPILE_IFELSE is expanded from...
../../lib/m4sugar/m4sh.m4:639: AS_IF is expanded from...
../../lib/autoconf/general.m4:2042: AC_CACHE_VAL is expanded from...
../../lib/autoconf/general.m4:2063: AC_CACHE_CHECK is expanded from...
configure.ac:375: the top level
Solution 9:
Use AC_LANG_SOURCE, or use proper quoting.
Problem 10 (in intl/):
configure.ac:7: warning: AC_COMPILE_IFELSE was called before AC_USE_SYSTEM_EXTENSIONS
/usr/share/aclocal/threadlib.m4:36: gl_THREADLIB_EARLY_BODY is expanded from...
/usr/share/aclocal/threadlib.m4:29: gl_THREADLIB_EARLY is expanded from...
/usr/share/aclocal/threadlib.m4:318: gl_THREADLIB is expanded from...
/usr/share/aclocal/lock.m4:9: gl_LOCK is expanded from...
/usr/share/aclocal/intl.m4:211: gt_INTL_SUBDIR_CORE is expanded from...
/usr/share/aclocal/intl.m4:25: AM_INTL_SUBDIR is expanded from...
/usr/share/aclocal/gettext.m4:57: AM_GNU_GETTEXT is expanded from...
configure.ac:7: the top level
Solution 10:
Add AC_USE_SYSTEM_EXTENSIONS in configure.ac.
ChangeLog:
* libtool.m4: Use AC_LANG_SOURCE.
* configure.ac: Remove AC_PREREQ, use AC_LANG_SOURCE.
* README-maintainer-mode: Update version requirements.
* ar-lib: New file.
* test-driver: New file.
* configure: Re-generate.
bfd/ChangeLog:
* Makefile.am (AUTOMAKE_OPTIONS): Remove 1.11.
(INCLUDES): Rename to ...
(AM_CPPFLAGS): ... this.
* configure.ac: Remove AC_PREREQ.
* doc/Makefile.am (AUTOMAKE_OPTIONS): Remove 1.9, cygnus, add
info-in-builddir no-texinfo.tex.
(info_TEXINFOS): Rename bfd.texinfo to bfd.texi.
* doc/bfd.texinfo: Rename to ...
* doc/bfd.texi: ... this.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* config.in: Re-generate.
* configure: Re-generate.
* doc/Makefile.in: Re-generate.
binutils/ChangeLog:
* configure.ac: Remove AC_PREREQ.
* doc/Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus, add
info-in-builddir no-texinfo.tex.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* config.in: Re-generate.
* configure: Re-generate.
* doc/Makefile.in: Re-generate.
config/ChangeLog:
* override.m4 (_GCC_AUTOCONF_VERSION): Bump from 2.64 to 2.69.
etc/ChangeLog:
* configure.in: Remove AC_PREREQ.
* configure: Re-generate.
gas/ChangeLog:
* Makefile.am (AUTOMAKE_OPTIONS): Remove 1.11, add subdir-objects.
(TARG_CPU_O, OBJ_FORMAT_O, ATOF_TARG_O): Add config/ prefix.
* configure.ac (TARG_CPU_O, OBJ_FORMAT_O, ATOF_TARG_O, emfiles,
extra_objects): Add config/ prefix.
* doc/as.texinfo: Rename to...
* doc/as.texi: ... this.
* doc/Makefile.am: Rename as.texinfo to as.texi throughout.
Remove DISTCLEANFILES hack.
(AUTOMAKE_OPTIONS): Remove 1.8, cygnus, add no-texinfo.tex and
info-in-builddir.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* config.in: Re-generate.
* configure: Re-generate.
* doc/Makefile.in: Re-generate.
gdb/ChangeLog:
* common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
* configure.ac: Remove AC_PREREQ, add missing quoting.
* gnulib/configure.ac: Modernize usage of
AC_INIT/AM_INIT_AUTOMAKE. Remove AC_PREREQ.
* gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
(AUTOMAKE_VERSION): Bump to 1.15.1.
* configure: Re-generate.
* config.in: Re-generate.
* aclocal.m4: Re-generate.
* gnulib/aclocal.m4: Re-generate.
* gnulib/config.in: Re-generate.
* gnulib/configure: Re-generate.
* gnulib/import/Makefile.in: Re-generate.
gdb/gdbserver/ChangeLog:
* configure.ac: Remove AC_PREREQ, add missing quoting.
* configure: Re-generate.
* config.in: Re-generate.
* aclocal.m4: Re-generate.
gdb/testsuite/ChangeLog:
* configure.ac: Remove AC_PREREQ.
* configure: Re-generate.
gold/ChangeLog:
* configure.ac: Remove AC_PREREQ, add missing quoting and usage
of AC_LANG_SOURCE.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* configure: Re-generate.
* testsuite/Makefile.in: Re-generate.
gprof/ChangeLog:
* configure.ac: Remove AC_PREREQ.
* Makefile.am: Remove DISTCLEANFILES hack.
(AUTOMAKE_OPTIONS): Remove 1.11, add info-in-builddir.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* configure: Re-generate.
* gconfig.in: Re-generate.
intl/ChangeLog:
* configure.ac: Add AC_USE_SYSTEM_EXTENSIONS, remove AC_PREREQ.
* configure: Re-generate.
* config.h.in: Re-generate.
* aclocal.m4: Re-generate.
ld/ChangeLog:
* configure.ac: Remove AC_PREREQ.
* Makefile.am: Remove DISTCLEANFILES hack, rename ld.texinfo to
ld.texi, ldint.texinfo to ldint.texi throughout.
(AUTOMAKE_OPTIONS): Add info-in-builddir.
* README: Rename ld.texinfo to ld.texi, ldint.texinfo to
ldint.texi throughout.
* gen-doc.texi: Likewise.
* h8-doc.texi: Likewise.
* ld.texinfo: Rename to ...
* ld.texi: ... this.
* ldint.texinfo: Rename to ...
* ldint.texi: ... this.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* config.in: Re-generate.
* configure: Re-generate.
libdecnumber/ChangeLog:
* configure.ac: Remove AC_PREREQ.
* configure: Re-generate.
* aclocal.m4.
libiberty/ChangeLog:
* configure.ac: Remove AC_PREREQ.
* configure: Re-generate.
* config.in: Re-generate.
opcodes/ChangeLog:
* Makefile.am (AUTOMAKE_OPTIONS): Remove 1.11.
* configure.ac: Remove AC_PREREQ.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* configure: Re-generate.
readline/ChangeLog.gdb:
* configure: Re-generate.
* examples/rlfe/configure: Re-generate.
sim/ChangeLog:
* All configure.ac: Remove AC_PREREQ.
* All configure: Re-generate.
zlib/ChangeLog.bin-gdb:
* configure.ac: Modernize AC_INIT call, remove AC_PREREQ.
* Makefile.am (AUTOMAKE_OPTIONS): Remove 1.8, cygnus, add
foreign.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* configure: Re-generate.
2018-06-20 04:54:48 +08:00
|
|
|
/* Define to 1 if you have the <sys/param.h> header file. */
|
|
|
|
#undef HAVE_SYS_PARAM_H
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to 1 if you have the <sys/procfs.h> header file. */
|
1999-05-03 15:29:11 +08:00
|
|
|
#undef HAVE_SYS_PROCFS_H
|
|
|
|
|
2013-05-27 15:55:17 +08:00
|
|
|
/* Define to 1 if you have the <sys/resource.h> header file. */
|
|
|
|
#undef HAVE_SYS_RESOURCE_H
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to 1 if you have the <sys/stat.h> header file. */
|
2004-03-19 15:00:51 +08:00
|
|
|
#undef HAVE_SYS_STAT_H
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to 1 if you have the <sys/types.h> header file. */
|
2004-03-19 15:00:51 +08:00
|
|
|
#undef HAVE_SYS_TYPES_H
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to 1 if you have the <unistd.h> header file. */
|
1999-05-03 15:29:11 +08:00
|
|
|
#undef HAVE_UNISTD_H
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define if <sys/procfs.h> has win32_pstatus_t. */
|
|
|
|
#undef HAVE_WIN32_PSTATUS_T
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2012-03-21 03:24:32 +08:00
|
|
|
/* Define to 1 if you have the <windows.h> header file. */
|
|
|
|
#undef HAVE_WINDOWS_H
|
|
|
|
|
binutils, gdb: support zstd compressed debug sections
PR29397 PR29563: Add new configure option --with-zstd which defaults to
auto. If pkgconfig/libzstd.pc is found, define HAVE_ZSTD and support
zstd compressed debug sections for most tools.
* bfd: for addr2line, objdump --dwarf, gdb, etc
* gas: support --compress-debug-sections=zstd
* ld: support ELFCOMPRESS_ZSTD input and --compress-debug-sections=zstd
* objcopy: support ELFCOMPRESS_ZSTD input for
--decompress-debug-sections and --compress-debug-sections=zstd
* gdb: support ELFCOMPRESS_ZSTD input. The bfd change references zstd
symbols, so gdb has to link against -lzstd in this patch.
If zstd is not supported, ELFCOMPRESS_ZSTD input triggers an error. We
can avoid HAVE_ZSTD if binutils-gdb imports zstd/ like zlib/, but this
is too heavyweight, so don't do it for now.
```
% ld/ld-new a.o
ld/ld-new: a.o: section .debug_abbrev is compressed with zstd, but BFD is not built with zstd support
...
% ld/ld-new a.o --compress-debug-sections=zstd
ld/ld-new: --compress-debug-sections=zstd: ld is not built with zstd support
% binutils/objcopy --compress-debug-sections=zstd a.o b.o
binutils/objcopy: --compress-debug-sections=zstd: binutils is not built with zstd support
% binutils/objcopy b.o --decompress-debug-sections
binutils/objcopy: zstd.o: section .debug_abbrev is compressed with zstd, but BFD is not built with zstd support
...
```
2022-09-27 10:50:13 +08:00
|
|
|
/* Define to 1 if zstd is enabled. */
|
|
|
|
#undef HAVE_ZSTD
|
|
|
|
|
2007-07-02 15:12:53 +08:00
|
|
|
/* Define to the sub-directory in which libtool stores uninstalled libraries.
|
|
|
|
*/
|
|
|
|
#undef LT_OBJDIR
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Name of package */
|
|
|
|
#undef PACKAGE
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to the address where bug reports for this package should be sent. */
|
|
|
|
#undef PACKAGE_BUGREPORT
|
2000-12-01 03:16:54 +08:00
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to the full name of this package. */
|
|
|
|
#undef PACKAGE_NAME
|
2000-08-31 02:12:21 +08:00
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to the full name and version of this package. */
|
|
|
|
#undef PACKAGE_STRING
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to the one symbol short name of this package. */
|
|
|
|
#undef PACKAGE_TARNAME
|
2000-08-31 02:12:21 +08:00
|
|
|
|
2009-08-23 00:56:56 +08:00
|
|
|
/* Define to the home page for this package. */
|
|
|
|
#undef PACKAGE_URL
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to the version of this package. */
|
|
|
|
#undef PACKAGE_VERSION
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2009-08-23 00:56:56 +08:00
|
|
|
/* The size of `int', as computed by sizeof. */
|
2007-04-24 12:05:04 +08:00
|
|
|
#undef SIZEOF_INT
|
|
|
|
|
2009-08-23 00:56:56 +08:00
|
|
|
/* The size of `long', as computed by sizeof. */
|
2004-08-31 02:58:14 +08:00
|
|
|
#undef SIZEOF_LONG
|
2000-08-31 02:12:21 +08:00
|
|
|
|
2009-08-23 00:56:56 +08:00
|
|
|
/* The size of `long long', as computed by sizeof. */
|
2004-08-31 02:58:14 +08:00
|
|
|
#undef SIZEOF_LONG_LONG
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2009-08-23 00:56:56 +08:00
|
|
|
/* The size of `off_t', as computed by sizeof. */
|
2004-08-31 02:58:14 +08:00
|
|
|
#undef SIZEOF_OFF_T
|
2000-12-01 03:16:54 +08:00
|
|
|
|
2009-08-23 00:56:56 +08:00
|
|
|
/* The size of `void *', as computed by sizeof. */
|
2007-04-24 12:05:04 +08:00
|
|
|
#undef SIZEOF_VOID_P
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Define to 1 if you have the ANSI C header files. */
|
|
|
|
#undef STDC_HEADERS
|
1999-05-03 15:29:11 +08:00
|
|
|
|
|
|
|
/* Name of host specific header file to include in trad-core.c. */
|
|
|
|
#undef TRAD_HEADER
|
|
|
|
|
2016-12-22 10:42:07 +08:00
|
|
|
/* Define if 64-bit archives should always be used. */
|
2016-05-26 00:46:47 +08:00
|
|
|
#undef USE_64_BIT_ARCHIVE
|
|
|
|
|
2004-08-31 02:58:14 +08:00
|
|
|
/* Use b modifier when opening binary files? */
|
|
|
|
#undef USE_BINARY_FOPEN
|
2004-02-12 06:05:35 +08:00
|
|
|
|
2010-04-28 01:26:09 +08:00
|
|
|
/* Define if we should use leading underscore on 64 bit mingw targets */
|
|
|
|
#undef USE_MINGW64_LEADING_UNDERSCORES
|
|
|
|
|
1999-05-03 15:29:11 +08:00
|
|
|
/* Use mmap if it's available? */
|
|
|
|
#undef USE_MMAP
|
|
|
|
|
* configure.in (--enable-secureplt): New.
* elf64-alpha.c (INSN_LDA, INSN_LDAH, INSN_LDQ, INSN_BR): New.
(INSN_SUBQ, INSN_S4SUBQ, INSN_JMP): New.
(INSN_A, INSN_AB, INSN_ABC, INSN_ABO, INSN_AD): New.
(elf64_alpha_use_secureplt): New.
(OLD_PLT_HEADER_SIZE, OLD_PLT_ENTRY_SIZE): New.
(NEW_PLT_HEADER_SIZE, NEW_PLT_ENTRY_SIZE): New.
(PLT_HEADER_SIZE, PLT_ENTRY_SIZE): Conditionalize on secureplt.
(ALPHA_ELF_LINK_HASH_PLT_LOC): Remove.
(struct alpha_elf_link_hash_entry): Add plt_offset.
(PLT_HEADER_WORD1, PLT_HEADER_WORD2, PLT_HEADER_WORD3): Remove.
(PLT_HEADER_WORD4, PLT_ENTRY_WORD1, PLT_ENTRY_WORD2): Remove.
(PLT_ENTRY_WORD3): Remove.
(elf64_alpha_create_dynamic_sections): If secureplt, set SEC_READONLY
on .plt and create .got.plt.
(elf64_alpha_output_extsym): Remove .plt frobbing for symbol values.
(get_got_entry): Initialize plt_offset.
(elf64_alpha_want_plt): New.
(elf64_alpha_check_relocs): Use it.
(elf64_alpha_adjust_dynamic_symbol): Likewise. Don't allocate
plt entries here.
(elf64_alpha_calc_got_offsets_for_symbol): Don't report internal
error as user error.
(elf64_alpha_size_plt_section_1): Allocate one plt entry per
got subsection.
(elf64_alpha_size_plt_section): Size .got.plt section.
(elf64_alpha_size_rela_got_1): Don't allocate relocations if
plt entries used.
(elf64_alpha_size_dynamic_sections): Call elf64_alpha_size_plt_section.
Add PLTRO DYNAMIC entry.
(elf64_alpha_finish_dynamic_symbol): Generate secureplt format.
(elf64_alpha_finish_dynamic_sections): Likewise.
2005-05-30 07:13:39 +08:00
|
|
|
/* Define if we should default to creating read-only plt entries */
|
|
|
|
#undef USE_SECUREPLT
|
|
|
|
|
2008-08-15 16:31:52 +08:00
|
|
|
/* Enable extensions on AIX 3, Interix. */
|
|
|
|
#ifndef _ALL_SOURCE
|
|
|
|
# undef _ALL_SOURCE
|
|
|
|
#endif
|
|
|
|
/* Enable GNU extensions on systems that have them. */
|
|
|
|
#ifndef _GNU_SOURCE
|
|
|
|
# undef _GNU_SOURCE
|
|
|
|
#endif
|
|
|
|
/* Enable threading extensions on Solaris. */
|
|
|
|
#ifndef _POSIX_PTHREAD_SEMANTICS
|
|
|
|
# undef _POSIX_PTHREAD_SEMANTICS
|
|
|
|
#endif
|
|
|
|
/* Enable extensions on HP NonStop. */
|
|
|
|
#ifndef _TANDEM_SOURCE
|
|
|
|
# undef _TANDEM_SOURCE
|
|
|
|
#endif
|
|
|
|
/* Enable general extensions on Solaris. */
|
|
|
|
#ifndef __EXTENSIONS__
|
|
|
|
# undef __EXTENSIONS__
|
|
|
|
#endif
|
|
|
|
|
2009-08-23 00:56:56 +08:00
|
|
|
|
|
|
|
/* Version number of package */
|
|
|
|
#undef VERSION
|
|
|
|
|
Bump to autoconf 2.69 and automake 1.15.1
When trying to run the update-gnulib.sh script in gdb, I get this:
Error: Wrong automake version (Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/\${ <-- HERE ([^ =:+{}]+)}/ at /opt/automake/1.11.1/bin/automake line 4113.), we need 1.11.1.
Aborting.
Apparently, it's an issue with a regex in automake that triggers a
warning starting with Perl 5.22. It has been fixed in automake 1.15.1.
So I think it's a good excuse to bump the versions of autoconf and
automake used in the gnulib import. And to avoid requiring multiple
builds of autoconf/automake, it was suggested that we bump the required
version of those tools for all binutils-gdb.
For autoconf, the 2.69 version is universally available, so it's an easy
choice. For automake, different distros and distro versions have
different automake versions. But 1.15.1 seems to be the most readily
available as a package. In any case, it's easy to build it from source.
I removed the version checks from AUTOMAKE_OPTIONS and AC_PREREQ,
because I don't think they are useful in our case. They only specify a
lower bound for the acceptable version of automake/autoconf. That's
useful if you let the user choose the version of the tool they want to
use, but want to set a minimum version (because you use a feature that
was introduced in that version). In our case, we force people to use a
specific version anyway. For the autoconf version, we have the check in
config/override.m4 that enforces the version we want. It will be one
less thing to update next time we change autotools version.
I hit a few categories of problems that required some changes. They are
described below along with the chosen solutions.
Problem 1:
configure.ac:17: warning: AM_INIT_AUTOMAKE: two- and three-arguments forms are deprecated. For more info, see:
configure.ac:17: http://www.gnu.org/software/automake/manual/automake.html#Modernize-AM_005fINIT_005fAUTOMAKE-invocation
Solution 1:
Adjust the code based on the example at that URL.
Problem 2 (in zlib/):
Makefile.am: error: required file './INSTALL' not found
Makefile.am: 'automake --add-missing' can install 'INSTALL'
Makefile.am: error: required file './NEWS' not found
Makefile.am: error: required file './AUTHORS' not found
Makefile.am: error: required file './COPYING' not found
Makefile.am: 'automake --add-missing' can install 'COPYING'
Solution 2:
Add the foreign option to AUTOMAKE_OPTIONS.
Problem 3:
doc/Makefile.am:20: error: support for Cygnus-style trees has been removed
Solution 3:
Remove the cygnus options.
Problem 4:
Makefile.am:656: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
Solution 4:
Rename "INCLUDES = " to "AM_CPPFLAGS += " (because AM_CPPFLAGS is
already defined earlier).
Problem 5:
doc/Makefile.am:71: warning: suffix '.texinfo' for Texinfo files is discouraged; use '.texi' instead
doc/Makefile.am: warning: Oops!
doc/Makefile.am: It appears this file (or files included by it) are triggering
doc/Makefile.am: an undocumented, soon-to-be-removed automake hack.
doc/Makefile.am: Future automake versions will no longer place in the builddir
doc/Makefile.am: (rather than in the srcdir) the generated '.info' files that
doc/Makefile.am: appear to be cleaned, by e.g. being listed in CLEANFILES or
doc/Makefile.am: DISTCLEANFILES.
doc/Makefile.am: If you want your '.info' files to be placed in the builddir
doc/Makefile.am: rather than in the srcdir, you have to use the shiny new
doc/Makefile.am: 'info-in-builddir' automake option.
Solution 5:
Rename .texinfo files to .texi.
Problem 6:
doc/Makefile.am: warning: Oops!
doc/Makefile.am: It appears this file (or files included by it) are triggering
doc/Makefile.am: an undocumented, soon-to-be-removed automake hack.
doc/Makefile.am: Future automake versions will no longer place in the builddir
doc/Makefile.am: (rather than in the srcdir) the generated '.info' files that
doc/Makefile.am: appear to be cleaned, by e.g. being listed in CLEANFILES or
doc/Makefile.am: DISTCLEANFILES.
doc/Makefile.am: If you want your '.info' files to be placed in the builddir
doc/Makefile.am: rather than in the srcdir, you have to use the shiny new
doc/Makefile.am: 'info-in-builddir' automake option.
Solution 6:
Remove the hack at the bottom of doc/Makefile.am and use
the info-in-builddir automake option.
Problem 7:
doc/Makefile.am:35: error: required file '../texinfo.tex' not found
doc/Makefile.am:35: 'automake --add-missing' can install 'texinfo.tex'
Solution 7:
Use the no-texinfo.tex automake option. We also have one in
texinfo/texinfo.tex, not sure if we should point to that, or move it
(or a newer version of it added with automake --add-missing) to
top-level.
Problem 8:
Makefile.am:131: warning: source file 'config/tc-aarch64.c' is in a subdirectory,
Makefile.am:131: but option 'subdir-objects' is disabled
automake: warning: possible forward-incompatibility.
automake: At least a source file is in a subdirectory, but the 'subdir-objects'
automake: automake option hasn't been enabled. For now, the corresponding output
automake: object file(s) will be placed in the top-level directory. However,
automake: this behaviour will change in future Automake versions: they will
automake: unconditionally cause object files to be placed in the same subdirectory
automake: of the corresponding sources.
automake: You are advised to start using 'subdir-objects' option throughout your
automake: project, to avoid future incompatibilities.
Solution 8:
Use subdir-objects, that means adjusting references to some .o that will now
be in config/.
Problem 9:
configure.ac:375: warning: AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected in body
../../lib/autoconf/lang.m4:193: AC_LANG_CONFTEST is expanded from...
../../lib/autoconf/general.m4:2601: _AC_COMPILE_IFELSE is expanded from...
../../lib/autoconf/general.m4:2617: AC_COMPILE_IFELSE is expanded from...
../../lib/m4sugar/m4sh.m4:639: AS_IF is expanded from...
../../lib/autoconf/general.m4:2042: AC_CACHE_VAL is expanded from...
../../lib/autoconf/general.m4:2063: AC_CACHE_CHECK is expanded from...
configure.ac:375: the top level
Solution 9:
Use AC_LANG_SOURCE, or use proper quoting.
Problem 10 (in intl/):
configure.ac:7: warning: AC_COMPILE_IFELSE was called before AC_USE_SYSTEM_EXTENSIONS
/usr/share/aclocal/threadlib.m4:36: gl_THREADLIB_EARLY_BODY is expanded from...
/usr/share/aclocal/threadlib.m4:29: gl_THREADLIB_EARLY is expanded from...
/usr/share/aclocal/threadlib.m4:318: gl_THREADLIB is expanded from...
/usr/share/aclocal/lock.m4:9: gl_LOCK is expanded from...
/usr/share/aclocal/intl.m4:211: gt_INTL_SUBDIR_CORE is expanded from...
/usr/share/aclocal/intl.m4:25: AM_INTL_SUBDIR is expanded from...
/usr/share/aclocal/gettext.m4:57: AM_GNU_GETTEXT is expanded from...
configure.ac:7: the top level
Solution 10:
Add AC_USE_SYSTEM_EXTENSIONS in configure.ac.
ChangeLog:
* libtool.m4: Use AC_LANG_SOURCE.
* configure.ac: Remove AC_PREREQ, use AC_LANG_SOURCE.
* README-maintainer-mode: Update version requirements.
* ar-lib: New file.
* test-driver: New file.
* configure: Re-generate.
bfd/ChangeLog:
* Makefile.am (AUTOMAKE_OPTIONS): Remove 1.11.
(INCLUDES): Rename to ...
(AM_CPPFLAGS): ... this.
* configure.ac: Remove AC_PREREQ.
* doc/Makefile.am (AUTOMAKE_OPTIONS): Remove 1.9, cygnus, add
info-in-builddir no-texinfo.tex.
(info_TEXINFOS): Rename bfd.texinfo to bfd.texi.
* doc/bfd.texinfo: Rename to ...
* doc/bfd.texi: ... this.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* config.in: Re-generate.
* configure: Re-generate.
* doc/Makefile.in: Re-generate.
binutils/ChangeLog:
* configure.ac: Remove AC_PREREQ.
* doc/Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus, add
info-in-builddir no-texinfo.tex.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* config.in: Re-generate.
* configure: Re-generate.
* doc/Makefile.in: Re-generate.
config/ChangeLog:
* override.m4 (_GCC_AUTOCONF_VERSION): Bump from 2.64 to 2.69.
etc/ChangeLog:
* configure.in: Remove AC_PREREQ.
* configure: Re-generate.
gas/ChangeLog:
* Makefile.am (AUTOMAKE_OPTIONS): Remove 1.11, add subdir-objects.
(TARG_CPU_O, OBJ_FORMAT_O, ATOF_TARG_O): Add config/ prefix.
* configure.ac (TARG_CPU_O, OBJ_FORMAT_O, ATOF_TARG_O, emfiles,
extra_objects): Add config/ prefix.
* doc/as.texinfo: Rename to...
* doc/as.texi: ... this.
* doc/Makefile.am: Rename as.texinfo to as.texi throughout.
Remove DISTCLEANFILES hack.
(AUTOMAKE_OPTIONS): Remove 1.8, cygnus, add no-texinfo.tex and
info-in-builddir.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* config.in: Re-generate.
* configure: Re-generate.
* doc/Makefile.in: Re-generate.
gdb/ChangeLog:
* common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
* configure.ac: Remove AC_PREREQ, add missing quoting.
* gnulib/configure.ac: Modernize usage of
AC_INIT/AM_INIT_AUTOMAKE. Remove AC_PREREQ.
* gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
(AUTOMAKE_VERSION): Bump to 1.15.1.
* configure: Re-generate.
* config.in: Re-generate.
* aclocal.m4: Re-generate.
* gnulib/aclocal.m4: Re-generate.
* gnulib/config.in: Re-generate.
* gnulib/configure: Re-generate.
* gnulib/import/Makefile.in: Re-generate.
gdb/gdbserver/ChangeLog:
* configure.ac: Remove AC_PREREQ, add missing quoting.
* configure: Re-generate.
* config.in: Re-generate.
* aclocal.m4: Re-generate.
gdb/testsuite/ChangeLog:
* configure.ac: Remove AC_PREREQ.
* configure: Re-generate.
gold/ChangeLog:
* configure.ac: Remove AC_PREREQ, add missing quoting and usage
of AC_LANG_SOURCE.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* configure: Re-generate.
* testsuite/Makefile.in: Re-generate.
gprof/ChangeLog:
* configure.ac: Remove AC_PREREQ.
* Makefile.am: Remove DISTCLEANFILES hack.
(AUTOMAKE_OPTIONS): Remove 1.11, add info-in-builddir.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* configure: Re-generate.
* gconfig.in: Re-generate.
intl/ChangeLog:
* configure.ac: Add AC_USE_SYSTEM_EXTENSIONS, remove AC_PREREQ.
* configure: Re-generate.
* config.h.in: Re-generate.
* aclocal.m4: Re-generate.
ld/ChangeLog:
* configure.ac: Remove AC_PREREQ.
* Makefile.am: Remove DISTCLEANFILES hack, rename ld.texinfo to
ld.texi, ldint.texinfo to ldint.texi throughout.
(AUTOMAKE_OPTIONS): Add info-in-builddir.
* README: Rename ld.texinfo to ld.texi, ldint.texinfo to
ldint.texi throughout.
* gen-doc.texi: Likewise.
* h8-doc.texi: Likewise.
* ld.texinfo: Rename to ...
* ld.texi: ... this.
* ldint.texinfo: Rename to ...
* ldint.texi: ... this.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* config.in: Re-generate.
* configure: Re-generate.
libdecnumber/ChangeLog:
* configure.ac: Remove AC_PREREQ.
* configure: Re-generate.
* aclocal.m4.
libiberty/ChangeLog:
* configure.ac: Remove AC_PREREQ.
* configure: Re-generate.
* config.in: Re-generate.
opcodes/ChangeLog:
* Makefile.am (AUTOMAKE_OPTIONS): Remove 1.11.
* configure.ac: Remove AC_PREREQ.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* configure: Re-generate.
readline/ChangeLog.gdb:
* configure: Re-generate.
* examples/rlfe/configure: Re-generate.
sim/ChangeLog:
* All configure.ac: Remove AC_PREREQ.
* All configure: Re-generate.
zlib/ChangeLog.bin-gdb:
* configure.ac: Modernize AC_INIT call, remove AC_PREREQ.
* Makefile.am (AUTOMAKE_OPTIONS): Remove 1.8, cygnus, add
foreign.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* configure: Re-generate.
2018-06-20 04:54:48 +08:00
|
|
|
/* Enable large inode numbers on Mac OS X 10.5. */
|
|
|
|
#ifndef _DARWIN_USE_64_BIT_INODE
|
|
|
|
# define _DARWIN_USE_64_BIT_INODE 1
|
|
|
|
#endif
|
|
|
|
|
2009-08-23 00:56:56 +08:00
|
|
|
/* Number of bits in a file offset, on hosts where this is settable. */
|
|
|
|
#undef _FILE_OFFSET_BITS
|
|
|
|
|
|
|
|
/* Define for large files, on AIX-style hosts. */
|
|
|
|
#undef _LARGE_FILES
|
|
|
|
|
|
|
|
/* Define to 1 if on MINIX. */
|
|
|
|
#undef _MINIX
|
|
|
|
|
|
|
|
/* Define to 2 if the system does not provide POSIX.1 features except with
|
|
|
|
this defined. */
|
|
|
|
#undef _POSIX_1_SOURCE
|
|
|
|
|
|
|
|
/* Define to 1 if you need to in order for `stat' and other things to work. */
|
|
|
|
#undef _POSIX_SOURCE
|
Unify Solaris procfs and largefile handling
GDB currently doesn't build on 32-bit Solaris:
* On Solaris 11.4/x86:
In file included from /usr/include/sys/procfs.h:26,
from /vol/src/gnu/gdb/hg/master/dist/gdb/i386-sol2-nat.c:24:
/usr/include/sys/old_procfs.h:31:2: error: #error "Cannot use procfs in the large file compilation environment"
#error "Cannot use procfs in the large file compilation environment"
^~~~~
* On Solaris 11.3/x86 there are several more instances of this.
The interaction between procfs and large-file support historically has
been a royal mess on Solaris:
* There are two versions of the procfs interface:
** The old ioctl-based /proc, deprecated and not used any longer in
either gdb or binutils.
** The `new' (introduced in Solaris 2.6, 1997) structured /proc.
* There are two headers one can possibly include:
** <procfs.h> which only provides the structured /proc, definining
_STRUCTURED_PROC=1 and then including ...
** <sys/procfs.h> which defaults to _STRUCTURED_PROC=0, the ioctl-based
/proc, but provides structured /proc if _STRUCTURED_PROC == 1.
* procfs and the large-file environment didn't go well together:
** Until Solaris 11.3, <sys/procfs.h> would always #error in 32-bit
compilations when the large-file environment was active
(_FILE_OFFSET_BITS == 64).
** In both Solaris 11.4 and Illumos, this restriction was lifted for
structured /proc.
So one has to be careful always to define _STRUCTURED_PROC=1 when
testing for or using <sys/procfs.h> on Solaris. As the errors above
show, this isn't always the case in binutils-gdb right now.
Also one may need to disable large-file support for 32-bit compilations
on Solaris. config/largefile.m4 meant to do this by wrapping the
AC_SYS_LARGEFILE autoconf macro with appropriate checks, yielding
ACX_LARGEFILE. Unfortunately the macro doesn't always succeed because
it neglects the _STRUCTURED_PROC part.
To make things even worse, since GCC 9 g++ predefines
_FILE_OFFSET_BITS=64 on Solaris. So even if largefile.m4 deciced not to
enable large-file support, this has no effect, breaking the gdb build.
This patch addresses all this as follows:
* All tests for the <sys/procfs.h> header are made with
_STRUCTURED_PROC=1, the definition going into the various config.h
files instead of having to make them (and sometimes failing) in the
affected sources.
* To cope with the g++ predefine of _FILE_OFFSET_BITS=64,
-U_FILE_OFFSET_BITS is added to various *_CPPFLAGS variables. It had
been far easier to have just
#undef _FILE_OFFSET_BITS
in config.h, but unfortunately such a construct in config.in is
commented by config.status irrespective of indentation and whitespace
if large-file support is disabled. I found no way around this and
putting the #undef in several global headers for bfd, binutils, ld,
and gdb seemed way more invasive.
* Last, the applicability check in largefile.m4 was modified only to
disable largefile support if really needed. To do so, it checks if
<sys/procfs.h> compiles with _FILE_OFFSET_BITS=64 defined. If it
doesn't, the disabling only happens if gdb exists in-tree and isn't
disabled, otherwise (building binutils from a tarball), there's no
conflict.
What initially confused me was the check for $plugins here, which
originally caused the disabling not to take place. Since AC_PLUGINGS
does enable plugin support if <dlfcn.h> exists (which it does on
Solaris), the disabling never happened.
I could find no explanation why the linker plugin needs large-file
support but thought it would be enough if gld and GCC's lto-plugin
agreed on the _FILE_OFFSET_BITS value. Unfortunately, that's not
enough: lto-plugin uses the simple-object interface from libiberty,
which includes off_t arguments. So to fully disable large-file
support would mean also disabling it in libiberty and its users: gcc
and libstdc++-v3. This seems highly undesirable, so I decided to
disable the linker plugin instead if large-file support won't work.
The patch allows binutils+gdb to build on i386-pc-solaris2.11 (both
Solaris 11.3 and 11.4, using GCC 9.3.0 which is the worst case due to
predefined _FILE_OFFSET_BITS=64). Also regtested on
amd64-pc-solaris2.11 (again on Solaris 11.3 and 11.4),
x86_64-pc-linux-gnu and i686-pc-linux-gnu.
config:
* largefile.m4 (ACX_LARGEFILE) <sparc-*-solaris*|i?86-*-solaris*>:
Check for <sys/procfs.h> incompatilibity with large-file support
on Solaris.
Only disable large-file support and perhaps plugins if needed.
Set, substitute LARGEFILE_CPPFLAGS if so.
bfd:
* bfd.m4 (BFD_SYS_PROCFS_H): New macro.
(BFD_HAVE_SYS_PROCFS_TYPE): Require BFD_SYS_PROCFS_H.
Don't define _STRUCTURED_PROC.
(BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): Likewise.
* elf.c [HAVE_SYS_PROCFS_H] (_STRUCTURED_PROC): Don't define.
* configure.ac: Use BFD_SYS_PROCFS_H to check for <sys/procfs.h>.
* configure, config.in: Regenerate.
* Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS.
* Makefile.in, doc/Makefile.in: Regenerate.
binutils:
* Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS.
* Makefile.in, doc/Makefile.in: Regenerate.
* configure: Regenerate.
gas:
* Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS.
* Makefile.in, doc/Makefile.in: Regenerate.
* configure: Regenerate.
gdb:
* proc-api.c (_STRUCTURED_PROC): Don't define.
* proc-events.c: Likewise.
* proc-flags.c: Likewise.
* proc-why.c: Likewise.
* procfs.c: Likewise.
* Makefile.in (INTERNAL_CPPFLAGS): Add LARGEFILE_CPPFLAGS.
* configure, config.in: Regenerate.
gdbserver:
* configure, config.in: Regenerate.
gdbsupport:
* Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS.
* common.m4 (GDB_AC_COMMON): Use BFD_SYS_PROCFS_H to check for
<sys/procfs.h>.
* Makefile.in: Regenerate.
* configure, config.in: Regenerate.
gnulib:
* configure.ac: Run ACX_LARGEFILE before gl_EARLY.
* configure: Regenerate.
gprof:
* Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS.
* Makefile.in: Regenerate.
* configure: Regenerate.
ld:
* Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS.
* Makefile.in: Regenerate.
* configure: Regenerate.
2020-07-30 21:41:50 +08:00
|
|
|
|
|
|
|
/* Use structured /proc on Solaris. */
|
|
|
|
#undef _STRUCTURED_PROC
|