* configure.in (AC_CHECK_HEADERS): Add alloca.h
* configure: Regenerate.
* config.in: Regenerate.
* som.c: Replace alloca-conf.h inclusion with code recommended in autoconf documentation.
* elf64-hppa.c: Likewise.
This commit is contained in:
Nick Clifton 2007-10-16 15:15:50 +00:00
parent 504b7d2026
commit 8bc9c89276
6 changed files with 69 additions and 12 deletions

View File

@ -1,3 +1,13 @@
2007-10-16 Nick Clifton <nickc@redhat.com>
PR 5146
* configure.in (AC_CHECK_HEADERS): Add alloca.h
* configure: Regenerate.
* config.in: Regenerate.
* som.c: Replace alloca-conf.h inclusion with code recommended in
autoconf documentation.
* elf64-hppa.c: Likewise.
2007-10-16 Nick Clifton <nickc@redhat.com>
* configure.in (--enable-elf-stt-common): New configure

View File

@ -4,6 +4,9 @@
language is requested. */
#undef ENABLE_NLS
/* Define to 1 if you have the <alloca.h> header file. */
#undef HAVE_ALLOCA_H
/* Define to 1 if you have the declaration of `basename', and to 0 if you
don't. */
#undef HAVE_DECL_BASENAME

15
bfd/configure vendored
View File

@ -10531,14 +10531,11 @@ echo "$as_me: error: bad value ${enableval} for ELF STT_COMMON option" >&2;}
esac
else
# We have to choose a default behaviour. For native builds we could
# test whether the loader supports the STT_COMMON type. For cross
# toolchains we default to assuming that they are not supported.
if test "$cross_compiling" != yes; then
# test whether the loader supports the STT_COMMON type, but that would
# mean that built binaries could not be exported to older systems where
# the loader does not support it. So by default we always choose to
# disable this feature.
want_elf_stt_common=false
else
# XXX FIXME: Add code to test the loader here.
want_elf_stt_common=false
fi
fi; if test $want_elf_stt_common = true; then
cat >>confdefs.h <<\_ACEOF
@ -10549,7 +10546,6 @@ fi
# Check whether --with-pkgversion or --without-pkgversion was given.
if test "${with_pkgversion+set}" = set; then
withval="$with_pkgversion"
@ -12548,7 +12544,8 @@ fi
for ac_header in stddef.h string.h strings.h stdlib.h time.h unistd.h
for ac_header in alloca.h stddef.h string.h strings.h stdlib.h time.h unistd.h
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
if eval "test \"\${$as_ac_Header+set}\" = set"; then

View File

@ -171,7 +171,7 @@ AC_SUBST(BFD_HOSTPTR_T)
BFD_CC_FOR_BUILD
AC_CHECK_HEADERS(stddef.h string.h strings.h stdlib.h time.h unistd.h)
AC_CHECK_HEADERS(alloca.h stddef.h string.h strings.h stdlib.h time.h unistd.h)
AC_CHECK_HEADERS(fcntl.h sys/file.h sys/time.h)
GCC_HEADER_STDINT(bfd_stdint.h)
AC_HEADER_TIME

View File

@ -19,7 +19,6 @@
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
MA 02110-1301, USA. */
#include "alloca-conf.h"
#include "sysdep.h"
#include "bfd.h"
#include "libbfd.h"
@ -27,6 +26,31 @@
#include "elf/hppa.h"
#include "libhppa.h"
#include "elf64-hppa.h"
/* This is the code recommended in the autoconf documentation, almost
verbatim. */
#ifndef __GNUC__
# if HAVE_ALLOCA_H
# include <alloca.h>
# else
# ifdef _AIX
/* Indented so that pre-ansi C compilers will ignore it, rather than
choke on it. Some versions of AIX require this to be the first
thing in the file. */
#pragma alloca
# else
# ifndef alloca /* predefined by HP cc +Olibcalls */
# if !defined (__STDC__) && !defined (__hpux)
extern char *alloca ();
# else
extern void *alloca ();
# endif /* __STDC__, __hpux */
# endif /* alloca */
# endif /* _AIX */
# endif /* HAVE_ALLOCA_H */
#endif /* __GNUC__ */
#define ARCH_SIZE 64
#define PLT_ENTRY_SIZE 0x10

View File

@ -23,7 +23,6 @@
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
02110-1301, USA. */
#include "alloca-conf.h"
#include "sysdep.h"
#include "bfd.h"
@ -38,6 +37,30 @@
#include <machine/reg.h>
#include <sys/file.h>
/* This is the code recommended in the autoconf documentation, almost
verbatim. */
#ifndef __GNUC__
# if HAVE_ALLOCA_H
# include <alloca.h>
# else
# ifdef _AIX
/* Indented so that pre-ansi C compilers will ignore it, rather than
choke on it. Some versions of AIX require this to be the first
thing in the file. */
#pragma alloca
# else
# ifndef alloca /* predefined by HP cc +Olibcalls */
# if !defined (__STDC__) && !defined (__hpux)
extern char *alloca ();
# else
extern void *alloca ();
# endif /* __STDC__, __hpux */
# endif /* alloca */
# endif /* _AIX */
# endif /* HAVE_ALLOCA_H */
#endif /* __GNUC__ */
static bfd_reloc_status_type hppa_som_reloc
(bfd *, arelent *, asymbol *, void *, asection *, bfd *, char **);
static bfd_boolean som_mkobject (bfd *);