Create libiberty.m4, have GDB and GDBserver use it
authorPedro Alves <palves@redhat.com>
Fri, 27 Feb 2015 15:52:02 +0000 (15:52 +0000)
committerPedro Alves <palves@redhat.com>
Fri, 27 Feb 2015 15:52:02 +0000 (15:52 +0000)
commit07697489f4587e41f4f63aa526c1bd7d2fcd5494
tree113b7f264c63cdb823dd30d0fba4beb5a8ae0177
parentcdb602b17548eeebb5e700c507d734ea5f887a49
Create libiberty.m4, have GDB and GDBserver use it

Converting GDB to be a C++ program, I stumbled on 'basename' issues,
like:

 src/gdb/../include/ansidecl.h:169:64: error: new declaration ‘char* basename(const char*)’
 /usr/include/string.h:597:26: error: ambiguates old declaration ‘const char* basename(const char*)’

which I believe led to this bit in gold's configure.ac:

 dnl We have to check these in C, not C++, because autoconf generates
 dnl tests which have no type information, and current glibc provides
 dnl multiple declarations of functions like basename when compiling
 dnl with C++.
 AC_CHECK_DECLS([basename, ffs, asprintf, vasprintf, snprintf, vsnprintf, strverscmp])

These checks IIUC intend to generate all the HAVE_DECL_FOO symbols
that libiberty.h and ansidecl.h check.

GDB is missing these checks currently, which results in the conflict
shown above.

This adds an m4 file that both GDB and GDBserver's configury use to
pull in the autoconf checks that libiberty clients needs done in order
to use these libiberty.h/ansidecl.h.

gdb/ChangeLog:
2015-02-27  Pedro Alves  <palves@redhat.com>

* libiberty.m4: New file.
* acinclude.m4: Include libiberty.m4.
* configure.ac: Call libiberty_INIT.
* config.in, configure: Regenerate.

gdb/gdbserver/
2015-02-27  Pedro Alves  <palves@redhat.com>

* acinclude.m4: Include libiberty.m4.
* configure.ac: Call libiberty_INIT.
* config.in, configure: Regenerate.
gdb/ChangeLog
gdb/acinclude.m4
gdb/config.in
gdb/configure
gdb/configure.ac
gdb/gdbserver/ChangeLog
gdb/gdbserver/acinclude.m4
gdb/gdbserver/config.in
gdb/gdbserver/configure
gdb/gdbserver/configure.ac
gdb/libiberty.m4 [new file with mode: 0644]
This page took 0.026731 seconds and 4 git commands to generate.