3f5c947f44
us up to version 2.17.50.20070703, at the last GPLv2 commit. Amongst others, this added upstream support for some FreeBSD-specific things that we previously had to manually hack in, such as the OSABI label support, and so on. There are also quite a number of new files, some for cpu's (e.g. SPU) that we may or may not be interested in, but those can be cleaned up later on, if needed.
1030 lines
39 KiB
Plaintext
1030 lines
39 KiB
Plaintext
dnl Process this file with autoconf to produce a configure script.
|
|
dnl
|
|
|
|
AC_PREREQ(2.59)
|
|
AC_INIT
|
|
AC_CONFIG_SRCDIR([libbfd.c])
|
|
|
|
AC_CANONICAL_TARGET
|
|
AC_ISC_POSIX
|
|
|
|
AM_INIT_AUTOMAKE(bfd, 2.17.50)
|
|
|
|
dnl These must be called before AM_PROG_LIBTOOL, because it may want
|
|
dnl to call AC_CHECK_PROG.
|
|
AC_CHECK_TOOL(AR, ar)
|
|
AC_CHECK_TOOL(RANLIB, ranlib, :)
|
|
|
|
dnl Default to a non shared library. This may be overridden by the
|
|
dnl configure option --enable-shared.
|
|
AM_DISABLE_SHARED
|
|
|
|
AC_PROG_CC
|
|
AC_GNU_SOURCE
|
|
|
|
AC_PROG_LIBTOOL
|
|
|
|
AC_ARG_ENABLE(64-bit-bfd,
|
|
[ --enable-64-bit-bfd 64-bit support (on hosts with narrower word sizes)],
|
|
[case "${enableval}" in
|
|
yes) want64=true ;;
|
|
no) want64=false ;;
|
|
*) AC_MSG_ERROR(bad value ${enableval} for 64-bit-bfd option) ;;
|
|
esac],[want64=false])dnl
|
|
AC_ARG_ENABLE(targets,
|
|
[ --enable-targets alternative target configurations],
|
|
[case "${enableval}" in
|
|
yes | "") AC_MSG_ERROR([enable-targets option must specify target names or 'all'])
|
|
;;
|
|
no) enable_targets= ;;
|
|
*) enable_targets=$enableval ;;
|
|
esac])dnl
|
|
AC_ARG_ENABLE(commonbfdlib,
|
|
[ --enable-commonbfdlib build shared BFD/opcodes/libiberty library],
|
|
[case "${enableval}" in
|
|
yes) commonbfdlib=true ;;
|
|
no) commonbfdlib=false ;;
|
|
*) AC_MSG_ERROR([bad value ${enableval} for BFD commonbfdlib option]) ;;
|
|
esac])dnl
|
|
AC_ARG_WITH(mmap,
|
|
[ --with-mmap try using mmap for BFD input files if available],
|
|
[case "${withval}" in
|
|
yes) want_mmap=true ;;
|
|
no) want_mmap=false ;;
|
|
*) AC_MSG_ERROR(bad value ${withval} for BFD with-mmap option) ;;
|
|
esac],[want_mmap=false])dnl
|
|
|
|
AC_ARG_ENABLE(secureplt,
|
|
[ --enable-secureplt Default to creating read-only plt entries],
|
|
[case "${enableval}" in
|
|
yes) use_secureplt=true ;;
|
|
no) use_secureplt=false ;;
|
|
*) AC_MSG_ERROR(bad value ${enableval} for secureplt option) ;;
|
|
esac],[use_secureplt=false])dnl
|
|
if test $use_secureplt = true; then
|
|
AC_DEFINE(USE_SECUREPLT, 1,
|
|
[Define if we should default to creating read-only plt entries])
|
|
fi
|
|
|
|
DEBUGDIR=${libdir}/debug
|
|
|
|
AC_ARG_WITH(separate-debug-dir,
|
|
AS_HELP_STRING([--with-separate-debug-dir=DIR],
|
|
[Look for global separate debug info in DIR [[default=LIBDIR/debug]]]),
|
|
[DEBUGDIR="${withval}"])
|
|
AC_SUBST(DEBUGDIR)
|
|
|
|
ACX_PKGVERSION([GNU Binutils])
|
|
ACX_BUGURL([http://www.sourceware.org/bugzilla/])
|
|
|
|
AM_BINUTILS_WARNINGS
|
|
|
|
AM_CONFIG_HEADER(config.h:config.in)
|
|
|
|
if test -z "$target" ; then
|
|
AC_MSG_ERROR(Unrecognized target system type; please check config.sub.)
|
|
fi
|
|
|
|
AM_MAINTAINER_MODE
|
|
AM_CONDITIONAL(GENINSRC_NEVER, false)
|
|
AM_INSTALL_LIBBFD
|
|
AC_EXEEXT
|
|
|
|
host64=false
|
|
target64=false
|
|
bfd_default_target_size=32
|
|
|
|
# host stuff:
|
|
|
|
ALL_LINGUAS="fr tr ja es sv da zh_CN ro rw vi"
|
|
ZW_GNU_GETTEXT_SISTER_DIR
|
|
AM_PO_SUBDIRS
|
|
|
|
# Permit host specific settings.
|
|
. ${srcdir}/configure.host
|
|
|
|
AC_SUBST(HDEFINES)
|
|
AC_PROG_INSTALL
|
|
|
|
BFD_HOST_64BIT_LONG=0
|
|
BFD_HOST_LONG_LONG=0
|
|
BFD_HOST_64_BIT_DEFINED=0
|
|
BFD_HOST_64_BIT=
|
|
BFD_HOST_U_64_BIT=
|
|
|
|
AC_MSG_CHECKING([for long long])
|
|
AC_CACHE_VAL(bfd_cv_has_long_long,
|
|
[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[unsigned long long ll = 18446744073709551615ULL;]])],[bfd_cv_has_long_long=yes],[bfd_cv_has_long_long=no])])
|
|
AC_MSG_RESULT($bfd_cv_has_long_long)
|
|
if test $bfd_cv_has_long_long = yes; then
|
|
BFD_HOST_LONG_LONG=1
|
|
AC_CHECK_SIZEOF(long long)
|
|
fi
|
|
|
|
AC_CHECK_SIZEOF(long)
|
|
if test "x${ac_cv_sizeof_long}" = "x8"; then
|
|
host64=true
|
|
BFD_HOST_64BIT_LONG=1
|
|
test -n "${HOST_64BIT_TYPE}" || HOST_64BIT_TYPE="long"
|
|
test -n "${HOST_U_64BIT_TYPE}" || HOST_U_64BIT_TYPE="unsigned long"
|
|
elif test "x${ac_cv_sizeof_long_long}" = "x8"; then
|
|
test -n "${HOST_64BIT_TYPE}" || HOST_64BIT_TYPE="long long"
|
|
test -n "${HOST_U_64BIT_TYPE}" || HOST_U_64BIT_TYPE="unsigned long long"
|
|
fi
|
|
|
|
if test -n "${HOST_64BIT_TYPE}" -a -n "${HOST_U_64BIT_TYPE}"; then
|
|
BFD_HOST_64_BIT_DEFINED=1
|
|
BFD_HOST_64_BIT="${HOST_64BIT_TYPE}"
|
|
BFD_HOST_U_64_BIT="${HOST_U_64BIT_TYPE}"
|
|
fi
|
|
|
|
AC_SUBST(BFD_HOST_64BIT_LONG)
|
|
AC_SUBST(BFD_HOST_LONG_LONG)
|
|
AC_SUBST(BFD_HOST_64_BIT_DEFINED)
|
|
AC_SUBST(BFD_HOST_64_BIT)
|
|
AC_SUBST(BFD_HOST_U_64_BIT)
|
|
|
|
BFD_CC_FOR_BUILD
|
|
|
|
AC_CHECK_HEADERS(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
|
|
AC_HEADER_DIRENT
|
|
ACX_HEADER_STRING
|
|
AC_CHECK_FUNCS(fcntl getpagesize setitimer sysconf fdopen getuid getgid)
|
|
AC_CHECK_FUNCS(strtoull)
|
|
|
|
AC_CHECK_DECLS(basename)
|
|
AC_CHECK_DECLS(ftello)
|
|
AC_CHECK_DECLS(ftello64)
|
|
AC_CHECK_DECLS(fseeko)
|
|
AC_CHECK_DECLS(fseeko64)
|
|
|
|
BFD_BINARY_FOPEN
|
|
|
|
AC_CHECK_DECLS(ffs)
|
|
AC_CHECK_DECLS(free)
|
|
AC_CHECK_DECLS(getenv)
|
|
AC_CHECK_DECLS(malloc)
|
|
AC_CHECK_DECLS(realloc)
|
|
AC_CHECK_DECLS(stpcpy)
|
|
AC_CHECK_DECLS(strstr)
|
|
AC_CHECK_DECLS(snprintf)
|
|
AC_CHECK_DECLS(vsnprintf)
|
|
|
|
# If we are configured native, pick a core file support file.
|
|
COREFILE=
|
|
COREFLAG=
|
|
TRAD_HEADER=
|
|
if test "${target}" = "${host}"; then
|
|
case "${host}" in
|
|
alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu)
|
|
COREFILE=''
|
|
;;
|
|
alpha*-*-linux-*)
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/alphalinux.h"'
|
|
;;
|
|
alpha*-*-netbsd* | alpha*-*-openbsd*)
|
|
COREFILE=netbsd-core.lo
|
|
;;
|
|
alpha*-*-*) COREFILE=osf-core.lo ;;
|
|
arm-*-freebsd* | arm-*-kfreebsd*-gnu)
|
|
COREFILE='' ;;
|
|
arm-*-netbsd* | arm-*-openbsd*)
|
|
COREFILE=netbsd-core.lo
|
|
;;
|
|
arm-*-riscix) COREFILE=trad-core.lo ;;
|
|
hppa*-*-hpux*) COREFILE=hpux-core.lo ;;
|
|
hppa*-*-hiux*) COREFILE=hpux-core.lo ;;
|
|
hppa*-*-mpeix*) COREFILE=hpux-core.lo ;;
|
|
hppa*-*-bsd*) COREFILE="hpux-core.lo hppabsd-core.lo"
|
|
COREFLAG="-DHPUX_CORE -DHPPABSD_CORE" ;;
|
|
hppa*-*-netbsd* | hppa*-*-openbsd*)
|
|
COREFILE=netbsd-core.lo
|
|
;;
|
|
|
|
i370-*-*)
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/i370linux.h"'
|
|
;;
|
|
|
|
changequote(,)dnl
|
|
i[3-7]86-sequent-bsd*)
|
|
changequote([,])dnl
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/symmetry.h"'
|
|
;;
|
|
changequote(,)dnl
|
|
i[3-7]86-sequent-sysv4*) ;;
|
|
i[3-7]86-sequent-sysv*)
|
|
changequote([,])dnl
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/symmetry.h"'
|
|
;;
|
|
changequote(,)dnl
|
|
i[3-7]86-*-bsdi)
|
|
changequote([,])dnl
|
|
COREFILE=
|
|
;;
|
|
changequote(,)dnl
|
|
i[3-7]86-*-bsd* | i[3-7]86-*-freebsd[123] | i[3-7]86-*-freebsd[123]\.* | i[3-7]86-*-freebsd4\.[01234] | i[3-7]86-*-freebsd4\.[01234]\.* | i[3-7]86-*-freebsd*aout*)
|
|
changequote([,])dnl
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/i386bsd.h"'
|
|
;;
|
|
changequote(,)dnl
|
|
i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu)
|
|
changequote([,])dnl
|
|
COREFILE=''
|
|
TRAD_HEADER='"hosts/i386bsd.h"'
|
|
;;
|
|
changequote(,)dnl
|
|
i[3-7]86-*-netbsd* | i[3-7]86-*-knetbsd*-gnu | i[3-7]86-*-openbsd*)
|
|
changequote([,])dnl
|
|
COREFILE=netbsd-core.lo
|
|
;;
|
|
changequote(,)dnl
|
|
i[3-7]86-esix-sysv3*)
|
|
changequote([,])dnl
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/esix.h"'
|
|
;;
|
|
changequote(,)dnl
|
|
i[3-7]86-*-sco3.2v5*)
|
|
changequote([,])dnl
|
|
COREFILE=sco5-core.lo
|
|
;;
|
|
changequote(,)dnl
|
|
i[3-7]86-*-sco* | i[3-7]86-*-isc*)
|
|
changequote([,])dnl
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/i386sco.h"'
|
|
;;
|
|
changequote(,)dnl
|
|
i[3-7]86-*-mach3*)
|
|
changequote([,])dnl
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/i386mach3.h"'
|
|
;;
|
|
changequote(,)dnl
|
|
i[3-7]86-*-linux-*)
|
|
changequote([,])dnl
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/i386linux.h"'
|
|
;;
|
|
changequote(,)dnl
|
|
i[3-7]86-*-isc*) COREFILE=trad-core.lo ;;
|
|
i[3-7]86-*-aix*) COREFILE=aix386-core.lo ;;
|
|
changequote([,])dnl
|
|
i860-*-mach3* | i860-*-osf1*)
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/i860mach3.h"'
|
|
;;
|
|
mips-*-netbsd* | mips*-*-openbsd*)
|
|
COREFILE=netbsd-core.lo
|
|
;;
|
|
mips-dec-*)
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/decstation.h"'
|
|
;;
|
|
mips-sgi-irix4*) COREFILE=irix-core.lo ;;
|
|
mips-sgi-irix5*) COREFILE=irix-core.lo ;;
|
|
mips-sgi-irix6*) COREFILE=irix-core.lo ;;
|
|
mips-*-sysv4*) ;;
|
|
mips-*-sysv* | mips-*-riscos*)
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/riscos.h"'
|
|
;;
|
|
mips-sony-bsd*)
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/news-mips.h"'
|
|
;;
|
|
m68*-bull*-sysv*)
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/dpx2.h"'
|
|
;;
|
|
m68*-hp-hpux*) COREFILE=hpux-core.lo ;;
|
|
m68*-hp-bsd*)
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/hp300bsd.h"'
|
|
;;
|
|
m68*-*-linux-*)
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/m68klinux.h"'
|
|
;;
|
|
m68*-motorola-sysv*)
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/delta68.h"'
|
|
;;
|
|
m68*-sony-*)
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/news.h"'
|
|
;;
|
|
m68*-*-netbsd* | m68*-*-openbsd*)
|
|
COREFILE=netbsd-core.lo
|
|
;;
|
|
m68*-apple-aux*)
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/m68kaux.h"'
|
|
;;
|
|
m88*-*-sysv4*)
|
|
;;
|
|
m88*-motorola-sysv*)
|
|
COREFILE=ptrace-core.lo
|
|
;;
|
|
m88*-*-mach3*)
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/m88kmach3.h"'
|
|
;;
|
|
m88*-*-openbsd*)
|
|
COREFILE=netbsd-core.lo
|
|
;;
|
|
ns32k-pc532-mach)
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/pc532mach.h"'
|
|
;;
|
|
ns32k-*-netbsd* | ns32k-*-openbsd*)
|
|
COREFILE=netbsd-core.lo
|
|
;;
|
|
rs6000-*-lynx*)
|
|
COREFILE=lynx-core.lo
|
|
;;
|
|
rs6000-*-aix5.* | powerpc-*-aix5.*)
|
|
COREFILE=rs6000-core.lo
|
|
COREFLAG="$COREFLAG -DAIX_5_CORE -DAIX_CORE_DUMPX_CORE"
|
|
;;
|
|
changequote(,)dnl
|
|
rs6000-*-aix4.[3-9]* | powerpc-*-aix4.[3-9]*)
|
|
changequote([,])dnl
|
|
COREFILE=rs6000-core.lo
|
|
COREFLAG="$COREFLAG -DAIX_CORE_DUMPX_CORE"
|
|
# Not all versions of AIX with -DAIX_CORE_DUMPX_CORE
|
|
# have c_impl as a member of struct core_dumpx
|
|
AC_MSG_CHECKING([for c_impl in struct core_dumpx])
|
|
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <core.h>]], [[struct core_dumpx c; c.c_impl = 0;]])],[AC_DEFINE(HAVE_ST_C_IMPL, 1,
|
|
[Define if struct core_dumpx has member c_impl])
|
|
AC_MSG_RESULT(yes)],[AC_MSG_RESULT(no)])
|
|
;;
|
|
rs6000-*-aix4*) COREFILE=rs6000-core.lo ;;
|
|
rs6000-*-*) COREFILE=rs6000-core.lo ;;
|
|
powerpc-*-aix4*) COREFILE=rs6000-core.lo ;;
|
|
powerpc-*-aix*) COREFILE=rs6000-core.lo ;;
|
|
powerpc-*-beos*) ;;
|
|
powerpc-*-freebsd* | powerpc-*-kfreebsd*-gnu)
|
|
COREFILE='' ;;
|
|
powerpc-*-netbsd*) COREFILE=netbsd-core.lo ;;
|
|
powerpc-*-*bsd*) COREFILE=netbsd-core.lo ;;
|
|
s390*-*-*) COREFILE=trad-core.lo ;;
|
|
sh*-*-netbsd* | sh*-*-openbsd*)
|
|
COREFILE=netbsd-core.lo
|
|
;;
|
|
sparc-*-netbsd* | sparc*-*-openbsd*)
|
|
COREFILE=netbsd-core.lo
|
|
;;
|
|
tahoe-*-*)
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/tahoe.h"'
|
|
;;
|
|
vax-*-netbsd* | vax-*-openbsd*)
|
|
COREFILE=netbsd-core.lo
|
|
;;
|
|
vax-*-ultrix2*)
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/vaxult2.h"'
|
|
;;
|
|
vax-*-ultrix*)
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/vaxult2.h"'
|
|
;;
|
|
vax-*-linux-*)
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/vaxlinux.h"'
|
|
;;
|
|
vax-*-*)
|
|
COREFILE=trad-core.lo
|
|
TRAD_HEADER='"hosts/vaxbsd.h"'
|
|
;;
|
|
x86_64-*-netbsd* | x86_64-*-openbsd*)
|
|
COREFILE=netbsd-core.lo
|
|
;;
|
|
esac
|
|
|
|
case "$COREFILE" in
|
|
aix386-core.lo) COREFLAG=-DAIX386_CORE ;;
|
|
hppabsd-core.lo) COREFLAG=-DHPPABSD_CORE ;;
|
|
hpux-core.lo) COREFLAG=-DHPUX_CORE ;;
|
|
irix-core.lo) COREFLAG=-DIRIX_CORE ;;
|
|
lynx-core.lo) COREFLAG=-DLYNX_CORE ;;
|
|
netbsd-core.lo) COREFLAG=-DNETBSD_CORE ;;
|
|
osf-core.lo) COREFLAG=-DOSF_CORE ;;
|
|
ptrace-core.lo) COREFLAG=-DPTRACE_CORE ;;
|
|
rs6000-core.lo) COREFLAG="$COREFLAG -DAIX_CORE" ;;
|
|
sco5-core.lo) COREFLAG="$COREFLAG -DSCO5_CORE" ;;
|
|
trad-core.lo) COREFLAG="$COREFLAG -DTRAD_CORE" ;;
|
|
esac
|
|
|
|
# ELF corefile support has several flavors, but all of
|
|
# them use something called <sys/procfs.h>
|
|
AC_CHECK_HEADERS(sys/procfs.h)
|
|
if test "$ac_cv_header_sys_procfs_h" = yes; then
|
|
BFD_HAVE_SYS_PROCFS_TYPE(prstatus_t)
|
|
BFD_HAVE_SYS_PROCFS_TYPE(prstatus32_t)
|
|
BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(prstatus_t, pr_who)
|
|
BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(prstatus32_t, pr_who)
|
|
BFD_HAVE_SYS_PROCFS_TYPE(pstatus_t)
|
|
BFD_HAVE_SYS_PROCFS_TYPE(pxstatus_t)
|
|
BFD_HAVE_SYS_PROCFS_TYPE(pstatus32_t)
|
|
BFD_HAVE_SYS_PROCFS_TYPE(prpsinfo_t)
|
|
BFD_HAVE_SYS_PROCFS_TYPE(prpsinfo32_t)
|
|
BFD_HAVE_SYS_PROCFS_TYPE(psinfo_t)
|
|
BFD_HAVE_SYS_PROCFS_TYPE(psinfo32_t)
|
|
BFD_HAVE_SYS_PROCFS_TYPE(lwpstatus_t)
|
|
BFD_HAVE_SYS_PROCFS_TYPE(lwpxstatus_t)
|
|
BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(lwpstatus_t, pr_context)
|
|
BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(lwpstatus_t, pr_reg)
|
|
BFD_HAVE_SYS_PROCFS_TYPE(win32_pstatus_t)
|
|
fi
|
|
fi
|
|
AC_SUBST(COREFILE)
|
|
AC_SUBST(COREFLAG)
|
|
if test -n "$TRAD_HEADER"; then
|
|
AC_DEFINE_UNQUOTED(TRAD_HEADER, $TRAD_HEADER,
|
|
[Name of host specific header file to include in trad-core.c.])
|
|
fi
|
|
|
|
# Horrible hacks to build DLLs on Windows.
|
|
WIN32LDFLAGS=
|
|
WIN32LIBADD=
|
|
case "${host}" in
|
|
*-*-cygwin*)
|
|
if test "$enable_shared" = "yes"; then
|
|
WIN32LDFLAGS="-no-undefined"
|
|
WIN32LIBADD="-L`pwd`/../libiberty -liberty -L`pwd`/../intl -lintl -lcygwin -lkernel32"
|
|
fi
|
|
;;
|
|
*-*-linux*)
|
|
# We borrow WIN32LIBADD so that the shared libbfd won't depend on
|
|
# libiberty.a.
|
|
case "${host}" in
|
|
mips*-*-linux*)
|
|
# Linux/MIPS uses PIC by default.
|
|
if test "$enable_shared" = "yes"; then
|
|
WIN32LIBADD="-L../libiberty -liberty"
|
|
fi
|
|
;;
|
|
*)
|
|
changequote(,)dnl
|
|
x=`sed -n -e 's/^[ ]*PICFLAG[ ]*=[ ]*//p' < ../libiberty/Makefile | sed -n '$p'`
|
|
changequote([,])dnl
|
|
if test -n "$x"; then
|
|
WIN32LIBADD="-L../libiberty/pic -liberty"
|
|
fi
|
|
;;
|
|
esac
|
|
;;
|
|
esac
|
|
AC_SUBST(WIN32LDFLAGS)
|
|
AC_SUBST(WIN32LIBADD)
|
|
|
|
# target stuff:
|
|
|
|
# Canonicalize the secondary target names.
|
|
if test -n "$enable_targets" ; then
|
|
for targ in `echo $enable_targets | sed 's/,/ /g'`
|
|
do
|
|
result=`$ac_config_sub $targ 2>/dev/null`
|
|
if test -n "$result" ; then
|
|
canon_targets="$canon_targets $result"
|
|
else
|
|
# Allow targets that config.sub doesn't recognize, like "all".
|
|
canon_targets="$canon_targets $targ"
|
|
fi
|
|
done
|
|
fi
|
|
|
|
all_targets=false
|
|
defvec=
|
|
selvecs=
|
|
assocvecs=
|
|
selarchs=
|
|
TDEFINES=
|
|
for targ in $target $canon_targets
|
|
do
|
|
if test "x$targ" = "xall"; then
|
|
all_targets=true
|
|
assocvecs="$assocvecs $targ_defvec $targ_selvecs"
|
|
else
|
|
. $srcdir/config.bfd
|
|
if test "x$targ" = "x$target"; then
|
|
defvec=$targ_defvec
|
|
fi
|
|
selvecs="$selvecs $targ_defvec $targ_selvecs"
|
|
selarchs="$selarchs $targ_archs"
|
|
TDEFINES="$TDEFINES $targ_cflags"
|
|
fi
|
|
done
|
|
AC_SUBST(TDEFINES)
|
|
|
|
# This processing still needs to be done if we're to decide properly whether
|
|
# 64-bit support needs to be compiled in. Currently, it will be included if
|
|
# the default or any other explicitly requested target requires it; it
|
|
# will not be included on a 32-bit host if no 64-bit target is requested, and
|
|
# no "--with-64-bit-bfd" option is given, even if "--enable-targets=all" is
|
|
# used.
|
|
|
|
# uniq the default and selected vectors in all the configured targets.
|
|
f=""
|
|
for i in $selvecs ; do
|
|
case " $f " in
|
|
*" $i "*) ;;
|
|
*) f="$f $i" ;;
|
|
esac
|
|
done
|
|
selvecs="$f"
|
|
|
|
|
|
# uniq the associated vectors in all the configured targets.
|
|
f=""
|
|
for i in $assocvecs ; do
|
|
case " $f " in
|
|
*" $i "*) ;;
|
|
*) f="$f $i" ;;
|
|
esac
|
|
done
|
|
assocvecs="$f"
|
|
|
|
|
|
# uniq the architectures in all the configured targets.
|
|
f=""
|
|
for i in $selarchs ; do
|
|
case " $f " in
|
|
*" $i "*) ;;
|
|
*) f="$f $i" ;;
|
|
esac
|
|
done
|
|
selarchs="$f"
|
|
|
|
# Target backend .o files.
|
|
tb=
|
|
|
|
elf="elf.lo elflink.lo elf-attrs.lo elf-strtab.lo elf-eh-frame.lo dwarf1.lo"
|
|
|
|
for vec in $selvecs
|
|
do
|
|
target_size=32
|
|
case "$vec" in
|
|
# This list is alphabetized to make it easy to compare
|
|
# with the two vector lists in targets.c. For the same reason,
|
|
# use one entry per line, even though this leads to long lines.
|
|
a_out_adobe_vec) tb="$tb aout-adobe.lo aout32.lo" ;;
|
|
aix5coff64_vec) tb="$tb coff64-rs6000.lo xcofflink.lo aix5ppc-core.lo"; target_size=64 ;;
|
|
aout0_big_vec) tb="$tb aout0.lo aout32.lo" ;;
|
|
aout_arm_big_vec) tb="$tb aout-arm.lo aout32.lo" ;;
|
|
aout_arm_little_vec) tb="$tb aout-arm.lo aout32.lo" ;;
|
|
apollocoff_vec) tb="$tb coff-apollo.lo" ;;
|
|
arm_epoc_pe_big_vec) tb="$tb epoc-pe-arm.lo peigen.lo cofflink.lo " ;;
|
|
arm_epoc_pe_little_vec) tb="$tb epoc-pe-arm.lo peigen.lo cofflink.lo " ;;
|
|
arm_epoc_pei_big_vec) tb="$tb epoc-pei-arm.lo peigen.lo cofflink.lo " ;;
|
|
arm_epoc_pei_little_vec) tb="$tb epoc-pei-arm.lo peigen.lo cofflink.lo " ;;
|
|
arm_wince_pe_big_vec) tb="$tb pe-arm-wince.lo pe-arm.lo peigen.lo cofflink.lo " ;;
|
|
arm_wince_pe_little_vec) tb="$tb pe-arm-wince.lo pe-arm.lo peigen.lo cofflink.lo " ;;
|
|
arm_wince_pei_big_vec) tb="$tb pei-arm-wince.lo pei-arm.lo peigen.lo cofflink.lo " ;;
|
|
arm_wince_pei_little_vec) tb="$tb pei-arm-wince.lo pei-arm.lo peigen.lo cofflink.lo " ;;
|
|
armcoff_big_vec) tb="$tb coff-arm.lo cofflink.lo " ;;
|
|
armcoff_little_vec) tb="$tb coff-arm.lo cofflink.lo " ;;
|
|
armnetbsd_vec) tb="$tb armnetbsd.lo aout32.lo" ;;
|
|
armpe_big_vec) tb="$tb pe-arm.lo peigen.lo cofflink.lo " ;;
|
|
armpe_little_vec) tb="$tb pe-arm.lo peigen.lo cofflink.lo " ;;
|
|
armpei_big_vec) tb="$tb pei-arm.lo peigen.lo cofflink.lo " ;;
|
|
armpei_little_vec) tb="$tb pei-arm.lo peigen.lo cofflink.lo " ;;
|
|
b_out_vec_big_host) tb="$tb bout.lo aout32.lo" ;;
|
|
b_out_vec_little_host) tb="$tb bout.lo aout32.lo" ;;
|
|
bfd_efi_app_ia32_vec) tb="$tb efi-app-ia32.lo peigen.lo cofflink.lo" ;;
|
|
bfd_efi_app_x86_64_vec) tb="$tb efi-app-x86_64.lo pex64igen.lo cofflink.lo" ;target_size=64;;
|
|
bfd_efi_app_ia64_vec) tb="$tb efi-app-ia64.lo pepigen.lo cofflink.lo"; target_size=64 ;;
|
|
bfd_elf32_am33lin_vec) tb="$tb elf32-am33lin.lo elf32.lo $elf" ;;
|
|
bfd_elf32_avr_vec) tb="$tb elf32-avr.lo elf32.lo $elf" ;;
|
|
bfd_elf32_bfin_vec) tb="$tb elf32-bfin.lo elf32.lo $elf" ;;
|
|
bfd_elf32_bfinfdpic_vec) tb="$tb elf32-bfin.lo elf32.lo $elf" ;;
|
|
bfd_elf32_big_generic_vec) tb="$tb elf32-gen.lo elf32.lo $elf" ;;
|
|
bfd_elf32_bigarc_vec) tb="$tb elf32-arc.lo elf32.lo $elf" ;;
|
|
bfd_elf32_bigarm_vec) tb="$tb elf32-arm.lo elf32.lo elf-vxworks.lo $elf" ;;
|
|
bfd_elf32_bigarm_symbian_vec)
|
|
tb="$tb elf32-arm.lo elf32.lo elf-vxworks.lo $elf" ;;
|
|
bfd_elf32_bigarm_vxworks_vec)
|
|
tb="$tb elf32-arm.lo elf32.lo elf-vxworks.lo $elf" ;;
|
|
bfd_elf32_bigmips_vec) tb="$tb elf32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf ecofflink.lo" ;;
|
|
bfd_elf32_bigmips_vxworks_vec)
|
|
tb="$tb elf32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf ecofflink.lo" ;;
|
|
bfd_elf32_cr16_vec) tb="$tb elf32-cr16.lo elf32.lo $elf" ;;
|
|
bfd_elf32_cr16c_vec) tb="$tb elf32-cr16c.lo elf32.lo $elf" ;;
|
|
bfd_elf32_cris_vec) tb="$tb elf32-cris.lo elf32.lo $elf" ;;
|
|
bfd_elf32_crx_vec) tb="$tb elf32-crx.lo elf32.lo $elf" ;;
|
|
bfd_elf32_d10v_vec) tb="$tb elf32-d10v.lo elf32.lo $elf" ;;
|
|
bfd_elf32_d30v_vec) tb="$tb elf32-d30v.lo elf32.lo $elf" ;;
|
|
bfd_elf32_dlx_big_vec) tb="$tb elf32-dlx.lo elf32.lo $elf" ;;
|
|
bfd_elf32_fr30_vec) tb="$tb elf32-fr30.lo elf32.lo $elf" ;;
|
|
bfd_elf32_frv_vec) tb="$tb elf32-frv.lo elf32.lo $elf" ;;
|
|
bfd_elf32_frvfdpic_vec) tb="$tb elf32-frv.lo elf32.lo $elf" ;;
|
|
bfd_elf32_h8300_vec) tb="$tb elf32-h8300.lo elf32.lo $elf" ;;
|
|
bfd_elf32_hppa_linux_vec) tb="$tb elf32-hppa.lo elf32.lo $elf" ;;
|
|
bfd_elf32_hppa_nbsd_vec) tb="$tb elf32-hppa.lo elf32.lo $elf" ;;
|
|
bfd_elf32_hppa_vec) tb="$tb elf32-hppa.lo elf32.lo $elf" ;;
|
|
bfd_elf32_i370_vec) tb="$tb elf32-i370.lo elf32.lo $elf" ;;
|
|
bfd_elf32_i386_freebsd_vec) tb="$tb elf32-i386.lo elf-vxworks.lo elf32.lo $elf" ;;
|
|
bfd_elf32_i386_vxworks_vec) tb="$tb elf32-i386.lo elf-vxworks.lo elf32.lo $elf" ;;
|
|
bfd_elf32_i386_vec) tb="$tb elf32-i386.lo elf-vxworks.lo elf32.lo $elf" ;;
|
|
bfd_elf32_i860_little_vec) tb="$tb elf32-i860.lo elf32.lo $elf" ;;
|
|
bfd_elf32_i860_vec) tb="$tb elf32-i860.lo elf32.lo $elf" ;;
|
|
bfd_elf32_i960_vec) tb="$tb elf32-i960.lo elf32.lo $elf" ;;
|
|
bfd_elf32_ia64_big_vec) tb="$tb elf32-ia64.lo elf32.lo $elf" ;;
|
|
bfd_elf32_ia64_hpux_big_vec) tb="$tb elf32-ia64.lo elf32.lo $elf";;
|
|
bfd_elf32_ip2k_vec) tb="$tb elf32-ip2k.lo elf32.lo $elf" ;;
|
|
bfd_elf32_iq2000_vec) tb="$tb elf32-iq2000.lo elf32.lo $elf" ;;
|
|
bfd_elf32_little_generic_vec) tb="$tb elf32-gen.lo elf32.lo $elf" ;;
|
|
bfd_elf32_littlearc_vec) tb="$tb elf32-arc.lo elf32.lo $elf" ;;
|
|
bfd_elf32_littlearm_symbian_vec)
|
|
tb="$tb elf32-arm.lo elf32.lo elf-vxworks.lo $elf" ;;
|
|
bfd_elf32_littlearm_vxworks_vec)
|
|
tb="$tb elf32-arm.lo elf32.lo elf-vxworks.lo $elf" ;;
|
|
bfd_elf32_littlearm_vec) tb="$tb elf32-arm.lo elf32.lo elf-vxworks.lo $elf" ;;
|
|
bfd_elf32_littlemips_vec) tb="$tb elf32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf ecofflink.lo" ;;
|
|
bfd_elf32_littlemips_vxworks_vec)
|
|
tb="$tb elf32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf ecofflink.lo" ;;
|
|
bfd_elf32_m32c_vec) tb="$tb elf32-m32c.lo elf32.lo $elf" ;;
|
|
bfd_elf32_m32r_vec) tb="$tb elf32-m32r.lo elf32.lo $elf" ;;
|
|
bfd_elf32_m32rle_vec) tb="$tb elf32-m32r.lo elf32.lo $elf" ;;
|
|
bfd_elf32_m32rlin_vec) tb="$tb elf32-m32r.lo elf32.lo $elf" ;;
|
|
bfd_elf32_m32rlelin_vec) tb="$tb elf32-m32r.lo elf32.lo $elf" ;;
|
|
bfd_elf32_m68hc11_vec) tb="$tb elf32-m68hc11.lo elf32-m68hc1x.lo elf32.lo $elf" ;;
|
|
bfd_elf32_m68hc12_vec) tb="$tb elf32-m68hc12.lo elf32-m68hc1x.lo elf32.lo $elf" ;;
|
|
bfd_elf32_m68k_vec) tb="$tb elf32-m68k.lo elf32.lo $elf" ;;
|
|
bfd_elf32_m88k_vec) tb="$tb elf32-m88k.lo elf32.lo $elf" ;;
|
|
bfd_elf32_mcore_big_vec) tb="$tb elf32-mcore.lo elf32.lo $elf" ;;
|
|
bfd_elf32_mcore_little_vec) tb="$tb elf32-mcore.lo elf32.lo $elf" ;;
|
|
bfd_elf32_mep_vec) tb="$tb elf32-mep.lo elf32.lo $elf" ;;
|
|
bfd_elf32_mep_little_vec) tb="$tb elf32-mep.lo elf32.lo $elf" ;;
|
|
bfd_elf32_mn10200_vec) tb="$tb elf-m10200.lo elf32.lo $elf" ;;
|
|
bfd_elf32_mn10300_vec) tb="$tb elf-m10300.lo elf32.lo $elf" ;;
|
|
bfd_elf32_mt_vec) tb="$tb elf32-mt.lo elf32.lo $elf" ;;
|
|
bfd_elf32_msp430_vec) tb="$tb elf32-msp430.lo elf32.lo $elf" ;;
|
|
bfd_elf32_nbigmips_vec) tb="$tb elfn32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf ecofflink.lo"; target_size=64 ;;
|
|
bfd_elf32_nlittlemips_vec) tb="$tb elfn32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf ecofflink.lo"; target_size=64 ;;
|
|
bfd_elf32_ntradbigmips_vec) tb="$tb elfn32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf ecofflink.lo"; target_size=64 ;;
|
|
bfd_elf32_ntradlittlemips_vec) tb="$tb elfn32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf ecofflink.lo"; target_size=64 ;;
|
|
bfd_elf32_openrisc_vec) tb="$tb elf32-openrisc.lo elf32.lo $elf" ;;
|
|
bfd_elf32_or32_big_vec) tb="$tb elf32-or32.lo elf32.lo $elf" ;;
|
|
bfd_elf32_pj_vec) tb="$tb elf32-pj.lo elf32.lo $elf";;
|
|
bfd_elf32_pjl_vec) tb="$tb elf32-pj.lo elf32.lo $elf";;
|
|
bfd_elf32_powerpc_vec) tb="$tb elf32-ppc.lo elf-vxworks.lo elf32.lo $elf" ;;
|
|
bfd_elf32_powerpcle_vec) tb="$tb elf32-ppc.lo elf-vxworks.lo elf32.lo $elf" ;;
|
|
bfd_elf32_powerpc_vxworks_vec) tb="$tb elf32-ppc.lo elf-vxworks.lo elf32.lo $elf" ;;
|
|
bfd_elf32_s390_vec) tb="$tb elf32-s390.lo elf32.lo $elf" ;;
|
|
bfd_elf32_bigscore_vec) tb="$tb elf32-score.lo elf32.lo $elf" ;;
|
|
bfd_elf32_littlescore_vec) tb="$tb elf32-score.lo elf32.lo $elf" ;;
|
|
# FIXME: We include cofflink.lo not because it's needed for
|
|
# bfd_elf32_sh64[l]_vec, but because we include bfd_elf32_sh[l]_vec
|
|
# which needs it but does not list it. Should be fixed in right place.
|
|
bfd_elf32_sh64_vec) tb="$tb elf32-sh64.lo elf32-sh64-com.lo elf-vxworks.lo elf32.lo $elf cofflink.lo" target_size=64 ;;
|
|
bfd_elf32_sh64l_vec) tb="$tb elf32-sh64.lo elf32-sh64-com.lo elf-vxworks.lo elf32.lo $elf cofflink.lo" target_size=64 ;;
|
|
bfd_elf32_sh64lin_vec) tb="$tb elf32-sh64.lo elf32-sh64-com.lo elf-vxworks.lo elf32.lo $elf cofflink.lo" target_size=64 ;;
|
|
bfd_elf32_sh64blin_vec) tb="$tb elf32-sh64.lo elf32-sh64-com.lo elf-vxworks.lo elf32.lo $elf cofflink.lo" target_size=64 ;;
|
|
bfd_elf32_sh64lnbsd_vec) tb="$tb elf32-sh64.lo elf32-sh64-com.lo elf-vxworks.lo elf32.lo $elf cofflink.lo" ;;
|
|
bfd_elf32_sh64nbsd_vec) tb="$tb elf32-sh64.lo elf32-sh64-com.lo elf-vxworks.lo elf32.lo $elf cofflink.lo" ;;
|
|
bfd_elf32_sh_vec) tb="$tb elf32-sh.lo elf-vxworks.lo elf32.lo $elf coff-sh.lo" ;;
|
|
bfd_elf32_shblin_vec) tb="$tb elf32-sh.lo elf-vxworks.lo elf32.lo $elf coff-sh.lo cofflink.lo" ;;
|
|
bfd_elf32_shl_vec) tb="$tb elf32-sh.lo elf-vxworks.lo elf32.lo $elf coff-sh.lo" ;;
|
|
bfd_elf32_shl_symbian_vec) tb="$tb elf32-sh-symbian.lo elf32-sh64-com.lo elf-vxworks.lo elf32.lo $elf coff-sh.lo" ;;
|
|
bfd_elf32_shlin_vec) tb="$tb elf32-sh.lo elf-vxworks.lo elf32.lo $elf coff-sh.lo cofflink.lo" ;;
|
|
bfd_elf32_shlnbsd_vec) tb="$tb elf32-sh.lo elf-vxworks.lo elf32.lo $elf coff-sh.lo cofflink.lo" ;;
|
|
bfd_elf32_shlvxworks_vec) tb="$tb elf32-sh.lo elf-vxworks.lo elf32.lo $elf coff-sh.lo" ;;
|
|
bfd_elf32_shnbsd_vec) tb="$tb elf32-sh.lo elf-vxworks.lo elf32.lo $elf coff-sh.lo cofflink.lo" ;;
|
|
bfd_elf32_shvxworks_vec) tb="$tb elf32-sh.lo elf-vxworks.lo elf32.lo $elf coff-sh.lo" ;;
|
|
bfd_elf32_sparc_vec) tb="$tb elf32-sparc.lo elfxx-sparc.lo elf-vxworks.lo elf32.lo $elf" ;;
|
|
bfd_elf32_sparc_vxworks_vec) tb="$tb elf32-sparc.lo elfxx-sparc.lo elf-vxworks.lo elf32.lo $elf" ;;
|
|
bfd_elf32_spu_vec) tb="$tb elf32-spu.lo elf32.lo $elf" ;;
|
|
bfd_elf32_tradbigmips_vec) tb="$tb elf32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf ecofflink.lo" ;;
|
|
bfd_elf32_tradlittlemips_vec) tb="$tb elf32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf ecofflink.lo" ;;
|
|
bfd_elf32_us_cris_vec) tb="$tb elf32-cris.lo elf32.lo $elf" ;;
|
|
bfd_elf32_v850_vec) tb="$tb elf32-v850.lo elf32.lo $elf" ;;
|
|
bfd_elf32_vax_vec) tb="$tb elf32-vax.lo elf32.lo $elf" ;;
|
|
bfd_elf32_xstormy16_vec) tb="$tb elf32-xstormy16.lo elf32.lo $elf" ;;
|
|
bfd_elf32_xc16x_vec) tb="$tb elf32-xc16x.lo elf32.lo $elf" ;;
|
|
bfd_elf32_xtensa_le_vec) tb="$tb xtensa-isa.lo xtensa-modules.lo elf32-xtensa.lo elf32.lo $elf" ;;
|
|
bfd_elf32_xtensa_be_vec) tb="$tb xtensa-isa.lo xtensa-modules.lo elf32-xtensa.lo elf32.lo $elf" ;;
|
|
bfd_elf64_alpha_freebsd_vec) tb="$tb elf64-alpha.lo elf64.lo $elf"; target_size=64 ;;
|
|
bfd_elf64_alpha_vec) tb="$tb elf64-alpha.lo elf64.lo $elf"; target_size=64 ;;
|
|
bfd_elf64_big_generic_vec) tb="$tb elf64-gen.lo elf64.lo $elf"; target_size=64 ;;
|
|
bfd_elf64_bigmips_vec) tb="$tb elf64-mips.lo elf64.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf ecofflink.lo"; target_size=64 ;;
|
|
bfd_elf64_hppa_linux_vec) tb="$tb elf64-hppa.lo elf64.lo $elf"; target_size=64 ;;
|
|
bfd_elf64_hppa_vec) tb="$tb elf64-hppa.lo elf64.lo $elf"; target_size=64 ;;
|
|
bfd_elf64_ia64_big_vec) tb="$tb elf64-ia64.lo elf64.lo $elf"; target_size=64 ;;
|
|
bfd_elf64_ia64_hpux_big_vec) tb="$tb elf64-ia64.lo elf64.lo $elf"; target_size=64 ;;
|
|
bfd_elf64_ia64_little_vec) tb="$tb elf64-ia64.lo elf64.lo $elf"; target_size=64 ;;
|
|
bfd_elf64_little_generic_vec) tb="$tb elf64-gen.lo elf64.lo $elf"; target_size=64 ;;
|
|
bfd_elf64_littlemips_vec) tb="$tb elf64-mips.lo elf64.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf ecofflink.lo"; target_size=64 ;;
|
|
bfd_elf64_mmix_vec) tb="$tb elf64-mmix.lo elf64.lo $elf" target_size=64 ;;
|
|
bfd_elf64_powerpc_vec) tb="$tb elf64-ppc.lo elf64-gen.lo elf64.lo $elf"; target_size=64 ;;
|
|
bfd_elf64_powerpcle_vec) tb="$tb elf64-ppc.lo elf64-gen.lo elf64.lo $elf" target_size=64 ;;
|
|
bfd_elf64_s390_vec) tb="$tb elf64-s390.lo elf64.lo $elf"; target_size=64 ;;
|
|
bfd_elf64_sh64_vec) tb="$tb elf64-sh64.lo elf64.lo $elf" target_size=64 ;;
|
|
bfd_elf64_sh64l_vec) tb="$tb elf64-sh64.lo elf64.lo $elf" target_size=64 ;;
|
|
bfd_elf64_sh64lin_vec) tb="$tb elf64-sh64.lo elf64.lo $elf" target_size=64 ;;
|
|
bfd_elf64_sh64blin_vec) tb="$tb elf64-sh64.lo elf64.lo $elf" target_size=64 ;;
|
|
bfd_elf64_sh64lnbsd_vec) tb="$tb elf64-sh64.lo elf64.lo $elf" target_size=64 ;;
|
|
bfd_elf64_sh64nbsd_vec) tb="$tb elf64-sh64.lo elf64.lo $elf" target_size=64 ;;
|
|
bfd_elf64_sparc_vec) tb="$tb elf64-sparc.lo elfxx-sparc.lo elf-vxworks.lo elf64.lo $elf"; target_size=64 ;;
|
|
bfd_elf64_sparc_freebsd_vec) tb="$tb elf64-sparc.lo elfxx-sparc.lo elf-vxworks.lo elf64.lo $elf"; target_size=64 ;;
|
|
bfd_elf64_tradbigmips_vec) tb="$tb elf64-mips.lo elf64.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf ecofflink.lo"; target_size=64 ;;
|
|
bfd_elf64_tradlittlemips_vec) tb="$tb elf64-mips.lo elf64.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf ecofflink.lo"; target_size=64 ;;
|
|
bfd_elf64_x86_64_freebsd_vec) tb="$tb elf64-x86-64.lo elf64.lo $elf"; target_size=64 ;;
|
|
bfd_elf64_x86_64_vec) tb="$tb elf64-x86-64.lo elf64.lo $elf"; target_size=64 ;;
|
|
bfd_mmo_vec) tb="$tb mmo.lo" target_size=64 ;;
|
|
bfd_powerpc_pe_vec) tb="$tb pe-ppc.lo peigen.lo cofflink.lo" ;;
|
|
bfd_powerpc_pei_vec) tb="$tb pei-ppc.lo peigen.lo cofflink.lo" ;;
|
|
bfd_powerpcle_pe_vec) tb="$tb pe-ppc.lo peigen.lo cofflink.lo" ;;
|
|
bfd_powerpcle_pei_vec) tb="$tb pei-ppc.lo peigen.lo cofflink.lo" ;;
|
|
cris_aout_vec) tb="$tb aout-cris.lo" ;;
|
|
demo_64_vec) tb="$tb demo64.lo aout64.lo"; target_size=64 ;;
|
|
ecoff_big_vec) tb="$tb coff-mips.lo ecoff.lo ecofflink.lo" ;;
|
|
ecoff_biglittle_vec) tb="$tb coff-mips.lo ecoff.lo ecofflink.lo" ;;
|
|
ecoff_little_vec) tb="$tb coff-mips.lo ecoff.lo ecofflink.lo" ;;
|
|
ecoffalpha_little_vec) tb="$tb coff-alpha.lo ecoff.lo ecofflink.lo"; target_size=64 ;;
|
|
go32coff_vec) tb="$tb coff-go32.lo cofflink.lo" ;;
|
|
go32stubbedcoff_vec) tb="$tb coff-stgo32.lo cofflink.lo" ;;
|
|
h8300coff_vec) tb="$tb coff-h8300.lo reloc16.lo" ;;
|
|
h8500coff_vec) tb="$tb coff-h8500.lo reloc16.lo" ;;
|
|
host_aout_vec) tb="$tb host-aout.lo aout32.lo" ;;
|
|
hp300bsd_vec) tb="$tb hp300bsd.lo aout32.lo" ;;
|
|
hp300hpux_vec) tb="$tb hp300hpux.lo aout32.lo" ;;
|
|
i386aout_vec) tb="$tb i386aout.lo aout32.lo" ;;
|
|
i386bsd_vec) tb="$tb i386bsd.lo aout32.lo" ;;
|
|
i386coff_vec) tb="$tb coff-i386.lo cofflink.lo" ;;
|
|
x86_64coff_vec) tb="$tb coff-x86_64.lo cofflink.lo"; target_size=64 ;;
|
|
i386dynix_vec) tb="$tb i386dynix.lo aout32.lo" ;;
|
|
i386freebsd_vec) tb="$tb i386freebsd.lo aout32.lo" ;;
|
|
i386linux_vec) tb="$tb i386linux.lo aout32.lo" ;;
|
|
i386lynx_aout_vec) tb="$tb i386lynx.lo lynx-core.lo aout32.lo" ;;
|
|
i386lynx_coff_vec) tb="$tb cf-i386lynx.lo cofflink.lo lynx-core.lo" ;;
|
|
i386mach3_vec) tb="$tb i386mach3.lo aout32.lo" ;;
|
|
i386msdos_vec) tb="$tb i386msdos.lo" ;;
|
|
i386netbsd_vec) tb="$tb i386netbsd.lo aout32.lo" ;;
|
|
i386os9k_vec) tb="$tb i386os9k.lo aout32.lo" ;;
|
|
i386pe_vec) tb="$tb pe-i386.lo peigen.lo cofflink.lo" ;;
|
|
i386pei_vec) tb="$tb pei-i386.lo peigen.lo cofflink.lo" ;;
|
|
x86_64pe_vec) tb="$tb pe-x86_64.lo pex64igen.lo cofflink.lo"; target_size=64 ;;
|
|
x86_64pei_vec) tb="$tb pei-x86_64.lo pex64igen.lo cofflink.lo"; target_size=64 ;;
|
|
i860coff_vec) tb="$tb coff-i860.lo cofflink.lo" ;;
|
|
icoff_big_vec) tb="$tb coff-i960.lo cofflink.lo" ;;
|
|
icoff_little_vec) tb="$tb coff-i960.lo cofflink.lo" ;;
|
|
ieee_vec) tb="$tb ieee.lo" ;;
|
|
m68k4knetbsd_vec) tb="$tb m68k4knetbsd.lo aout32.lo" ;;
|
|
m68kaux_coff_vec) tb="$tb coff-aux.lo coff-m68k.lo cofflink.lo" ;;
|
|
m68kcoff_vec) tb="$tb coff-m68k.lo cofflink.lo" ;;
|
|
m68kcoffun_vec) tb="$tb coff-u68k.lo coff-m68k.lo cofflink.lo" ;;
|
|
m68klinux_vec) tb="$tb m68klinux.lo aout32.lo" ;;
|
|
m68knetbsd_vec) tb="$tb m68knetbsd.lo aout32.lo" ;;
|
|
m68ksysvcoff_vec) tb="$tb coff-svm68k.lo cofflink.lo" ;;
|
|
m88kbcs_vec) tb="$tb coff-m88k.lo" ;;
|
|
m88kmach3_vec) tb="$tb m88kmach3.lo aout32.lo" ;;
|
|
m88kopenbsd_vec) tb="$tb m88kopenbsd.lo aout32.lo" ;;
|
|
maxqcoff_vec) tb="$tb coff-maxq.lo" ;;
|
|
mach_o_be_vec) tb="$tb mach-o.lo" ;;
|
|
mach_o_le_vec) tb="$tb mach-o.lo" ;;
|
|
mach_o_fat_vec) tb="$tb mach-o.lo" ;;
|
|
mcore_pe_big_vec) tb="$tb pe-mcore.lo peigen.lo cofflink.lo" ;;
|
|
mcore_pe_little_vec) tb="$tb pe-mcore.lo peigen.lo cofflink.lo" ;;
|
|
mcore_pei_big_vec) tb="$tb pei-mcore.lo peigen.lo cofflink.lo" ;;
|
|
mcore_pei_little_vec) tb="$tb pei-mcore.lo peigen.lo cofflink.lo" ;;
|
|
mipslpe_vec) tb="$tb pe-mips.lo peigen.lo cofflink.lo" ;;
|
|
mipslpei_vec) tb="$tb pei-mips.lo peigen.lo cofflink.lo" ;;
|
|
newsos3_vec) tb="$tb newsos3.lo aout32.lo" ;;
|
|
nlm32_alpha_vec) tb="$tb nlm32-alpha.lo nlm32.lo nlm.lo"; target_size=64 ;;
|
|
nlm32_i386_vec) tb="$tb nlm32-i386.lo nlm32.lo nlm.lo" ;;
|
|
nlm32_powerpc_vec) tb="$tb nlm32-ppc.lo nlm32.lo nlm.lo" ;;
|
|
nlm32_sparc_vec) tb="$tb nlm32-sparc.lo nlm32.lo nlm.lo" ;;
|
|
or32coff_big_vec) tb="$tb coff-or32.lo cofflink.lo" ;;
|
|
pc532machaout_vec) tb="$tb pc532-mach.lo aout-ns32k.lo" ;;
|
|
pc532netbsd_vec) tb="$tb ns32knetbsd.lo aout-ns32k.lo" ;;
|
|
pef_vec) tb="$tb pef.lo" ;;
|
|
pef_xlib_vec) tb="$tb pef.lo" ;;
|
|
pdp11_aout_vec) tb="$tb pdp11.lo" ;;
|
|
pmac_xcoff_vec) tb="$tb coff-rs6000.lo xcofflink.lo" ;;
|
|
ppcboot_vec) tb="$tb ppcboot.lo" ;;
|
|
riscix_vec) tb="$tb aout32.lo riscix.lo" ;;
|
|
rs6000coff64_vec) tb="$tb coff64-rs6000.lo xcofflink.lo aix5ppc-core.lo"; target_size=64 ;;
|
|
rs6000coff_vec) tb="$tb coff-rs6000.lo xcofflink.lo" ;;
|
|
shcoff_small_vec) tb="$tb coff-sh.lo cofflink.lo" ;;
|
|
shcoff_vec) tb="$tb coff-sh.lo cofflink.lo" ;;
|
|
shlcoff_small_vec) tb="$tb coff-sh.lo cofflink.lo" ;;
|
|
shlcoff_vec) tb="$tb coff-sh.lo cofflink.lo" ;;
|
|
shlpe_vec) tb="$tb pe-sh.lo coff-sh.lo peigen.lo cofflink.lo" ;;
|
|
shlpei_vec) tb="$tb pei-sh.lo coff-sh.lo peigen.lo cofflink.lo" ;;
|
|
som_vec) tb="$tb som.lo" ;;
|
|
sparccoff_vec) tb="$tb coff-sparc.lo" ;;
|
|
sparcle_aout_vec) tb="$tb aout-sparcle.lo aout32.lo" ;;
|
|
sparclinux_vec) tb="$tb sparclinux.lo aout32.lo" ;;
|
|
sparclynx_aout_vec) tb="$tb sparclynx.lo lynx-core.lo aout32.lo" ;;
|
|
sparclynx_coff_vec) tb="$tb cf-sparclynx.lo lynx-core.lo" ;;
|
|
sparcnetbsd_vec) tb="$tb sparcnetbsd.lo aout32.lo" ;;
|
|
sunos_big_vec) tb="$tb sunos.lo aout32.lo" ;;
|
|
sym_vec) tb="$tb xsym.lo" ;;
|
|
tic30_aout_vec) tb="$tb aout-tic30.lo" ;;
|
|
tic30_coff_vec) tb="$tb coff-tic30.lo" ;;
|
|
tic4x_coff0_vec) tb="$tb coff-tic4x.lo" ;;
|
|
tic4x_coff0_beh_vec) tb="$tb coff-tic4x.lo" ;;
|
|
tic4x_coff1_vec) tb="$tb coff-tic4x.lo" ;;
|
|
tic4x_coff1_beh_vec) tb="$tb coff-tic4x.lo" ;;
|
|
tic4x_coff2_vec) tb="$tb coff-tic4x.lo" ;;
|
|
tic4x_coff2_beh_vec) tb="$tb coff-tic4x.lo" ;;
|
|
tic54x_coff0_beh_vec) tb="$tb coff-tic54x.lo" ;;
|
|
tic54x_coff0_vec) tb="$tb coff-tic54x.lo" ;;
|
|
tic54x_coff1_beh_vec) tb="$tb coff-tic54x.lo" ;;
|
|
tic54x_coff1_vec) tb="$tb coff-tic54x.lo" ;;
|
|
tic54x_coff2_beh_vec) tb="$tb coff-tic54x.lo" ;;
|
|
tic54x_coff2_vec) tb="$tb coff-tic54x.lo" ;;
|
|
tic80coff_vec) tb="$tb coff-tic80.lo cofflink.lo" ;;
|
|
vaxnetbsd_vec) tb="$tb vaxnetbsd.lo aout32.lo" ;;
|
|
vax1knetbsd_vec) tb="$tb vax1knetbsd.lo aout32.lo" ;;
|
|
vaxbsd_vec) tb="$tb vaxbsd.lo aout32.lo" ;;
|
|
versados_vec) tb="$tb versados.lo" ;;
|
|
vms_alpha_vec) tb="$tb vms.lo vms-hdr.lo vms-gsd.lo vms-tir.lo vms-misc.lo"; target_size=64 ;;
|
|
vms_vax_vec) tb="$tb vms.lo vms-hdr.lo vms-gsd.lo vms-tir.lo vms-misc.lo" ;;
|
|
w65_vec) tb="$tb coff-w65.lo reloc16.lo" ;;
|
|
we32kcoff_vec) tb="$tb coff-we32k.lo" ;;
|
|
z80coff_vec) tb="$tb coff-z80.lo reloc16.lo" ;;
|
|
z8kcoff_vec) tb="$tb coff-z8k.lo reloc16.lo cofflink.lo" ;;
|
|
|
|
# These appear out of order in targets.c
|
|
srec_vec) tb="$tb srec.lo" ;;
|
|
symbolsrec_vec) tb="$tb srec.lo" ;;
|
|
tekhex_vec) tb="$tb tekhex.lo" ;;
|
|
cisco_core_big_vec) tb="$tb cisco-core.lo" ;;
|
|
cisco_core_little_vec) tb="$tb cisco-core.lo" ;;
|
|
|
|
"") ;;
|
|
*) AC_MSG_ERROR(*** unknown target vector $vec) ;;
|
|
esac
|
|
|
|
if test ${target_size} = 64; then
|
|
target64=true
|
|
fi
|
|
if test x"${vec}" = x"${defvec}"; then
|
|
bfd_default_target_size=${target_size}
|
|
fi
|
|
done
|
|
|
|
# Target architecture .o files.
|
|
# A couple of CPUs use shorter file names to avoid problems on DOS
|
|
# filesystems.
|
|
ta=`echo $selarchs | sed -e s/bfd_/cpu-/g -e s/_arch/.lo/g -e s/mn10200/m10200/ -e s/mn10300/m10300/`
|
|
|
|
# Weed out duplicate .o files.
|
|
f=""
|
|
for i in $tb ; do
|
|
case " $f " in
|
|
*" $i "*) ;;
|
|
*) f="$f $i" ;;
|
|
esac
|
|
done
|
|
tb="$f"
|
|
|
|
f=""
|
|
for i in $ta ; do
|
|
case " $f " in
|
|
*" $i "*) ;;
|
|
*) f="$f $i" ;;
|
|
esac
|
|
done
|
|
ta="$f"
|
|
|
|
bfd_backends="$tb"
|
|
bfd_machines="$ta"
|
|
|
|
if test x${all_targets} = xtrue ; then
|
|
bfd_backends="${bfd_backends}"' $(ALL_BACKENDS)'
|
|
bfd_machines="${bfd_machines}"' $(ALL_MACHINES)'
|
|
selvecs=
|
|
havevecs=
|
|
selarchs=
|
|
test -n "$assocvecs" &&
|
|
assocvecs=`echo $assocvecs | sed -e 's/^/\&/' -e 's/ \(.\)/,\&\1/g'`
|
|
else # all_targets is true
|
|
# Only set these if they will be nonempty, for the clever echo.
|
|
havevecs=
|
|
assocvecs=
|
|
test -n "$selvecs" &&
|
|
havevecs=`echo $selvecs | sed -e 's/^/-DHAVE_/' -e 's/ \(.\)/ -DHAVE_\1/g'`
|
|
test -n "$selvecs" &&
|
|
selvecs=`echo $selvecs | sed -e 's/^/\&/' -e 's/ \(.\)/,\&\1/g'`
|
|
test -n "$selarchs" &&
|
|
selarchs=`echo $selarchs | sed -e 's/^/\&/' -e 's/ \(.\)/,\&\1/g'`
|
|
fi # all_targets is true
|
|
|
|
case ${host64}-${target64}-${want64} in
|
|
*true*)
|
|
wordsize=64
|
|
bfd64_libs='$(BFD64_LIBS)'
|
|
all_backends='$(BFD64_BACKENDS) $(BFD32_BACKENDS)'
|
|
if test $BFD_HOST_64_BIT_DEFINED = 0; then
|
|
AC_MSG_WARN([You have requested a 64 bit BFD configuration, but])
|
|
AC_MSG_WARN([your compiler may not have a 64 bit integral type])
|
|
fi
|
|
if test -n "$GCC" ; then
|
|
bad_64bit_gcc=no;
|
|
AC_MSG_CHECKING([for gcc version with buggy 64-bit support])
|
|
# Add more tests for gcc versions with non-working 64-bit support here.
|
|
AC_EGREP_CPP([: 2 : 91 : 1 :],[:__GNUC__:__GNUC_MINOR__:__i386__:],
|
|
bad_64bit_gcc=yes;
|
|
AC_MSG_RESULT([yes: egcs-1.1.2 on ix86 spotted]),
|
|
AC_MSG_RESULT(no))
|
|
if test $bad_64bit_gcc = yes ; then
|
|
AC_MSG_ERROR([A newer version of gcc is needed for the requested 64-bit BFD configuration])
|
|
fi
|
|
fi
|
|
;;
|
|
false-false-false)
|
|
wordsize=32
|
|
all_backends='$(BFD32_BACKENDS)'
|
|
;;
|
|
esac
|
|
|
|
AC_SUBST(wordsize)
|
|
AC_SUBST(bfd64_libs)
|
|
AC_SUBST(all_backends)
|
|
AC_SUBST(bfd_backends)
|
|
AC_SUBST(bfd_machines)
|
|
AC_SUBST(bfd_default_target_size)
|
|
|
|
# Determine the host dependant file_ptr a.k.a. off_t type. In order
|
|
# prefer: off64_t - if ftello64 and fseeko64, off_t - if ftello and
|
|
# fseeko, long. This assumes that sizeof off_t is .ge. sizeof long.
|
|
# Hopefully a reasonable assumption since fseeko et.al. should be
|
|
# upward compatible.
|
|
AC_CHECK_FUNCS(ftello ftello64 fseeko fseeko64 fopen64)
|
|
if test x"$ac_cv_func_ftello" = xyes -a x"$ac_cv_func_fseeko" = xyes; then
|
|
AC_CHECK_SIZEOF(off_t)
|
|
fi
|
|
AC_MSG_CHECKING([file_ptr type])
|
|
bfd_file_ptr="long"
|
|
bfd_ufile_ptr="unsigned long"
|
|
if test x"$ac_cv_func_ftello64" = xyes -a x"$ac_cv_func_fseeko64" = xyes \
|
|
-o x"${ac_cv_sizeof_off_t}" = x8; then
|
|
bfd_file_ptr=BFD_HOST_64_BIT
|
|
bfd_ufile_ptr=BFD_HOST_U_64_BIT
|
|
fi
|
|
AC_MSG_RESULT($bfd_file_ptr)
|
|
AC_SUBST(bfd_file_ptr)
|
|
AC_SUBST(bfd_ufile_ptr)
|
|
|
|
|
|
tdefaults=""
|
|
test -n "${defvec}" && tdefaults="${tdefaults} -DDEFAULT_VECTOR=${defvec}"
|
|
test -n "${selvecs}" && tdefaults="${tdefaults} -DSELECT_VECS='${selvecs}'"
|
|
test -n "${assocvecs}" && tdefaults="${tdefaults} -DASSOCIATED_VECS='${assocvecs}'"
|
|
test -n "${selarchs}" && tdefaults="${tdefaults} -DSELECT_ARCHITECTURES='${selarchs}'"
|
|
test -n "${havevecs}" && tdefaults="${tdefaults} ${havevecs}"
|
|
AC_SUBST(tdefaults)
|
|
|
|
dnl AC_CHECK_HEADERS(sys/mman.h)
|
|
AC_FUNC_MMAP
|
|
AC_CHECK_FUNCS(madvise mprotect)
|
|
case ${want_mmap}+${ac_cv_func_mmap_fixed_mapped} in
|
|
true+yes ) AC_DEFINE(USE_MMAP, 1, [Use mmap if it's available?]) ;;
|
|
esac
|
|
|
|
rm -f doc/config.status
|
|
AC_CONFIG_FILES([Makefile doc/Makefile bfd-in3.h:bfd-in2.h po/Makefile.in:po/Make-in])
|
|
|
|
dnl We need this duplication, even though we use AM_PO_SUBDIRS, because of
|
|
dnl our two separate POTFILES. Yuck.
|
|
AC_CONFIG_COMMANDS([default],
|
|
[[
|
|
case "$srcdir" in
|
|
.) srcdirpre= ;;
|
|
*) srcdirpre='$(srcdir)/' ;;
|
|
esac
|
|
POFILES=
|
|
GMOFILES=
|
|
for lang in dummy $OBSOLETE_ALL_LINGUAS; do
|
|
if test $lang != dummy; then
|
|
POFILES="$POFILES $srcdirpre$lang.po"
|
|
GMOFILES="$GMOFILES $srcdirpre$lang.gmo"
|
|
fi
|
|
done
|
|
sed -e '/SRC-POTFILES =/r po/SRC-POTFILES' \
|
|
-e '/BLD-POTFILES =/r po/BLD-POTFILES' \
|
|
-e "s,@POFILES@,$POFILES," \
|
|
-e "s,@GMOFILES@,$GMOFILES," \
|
|
po/Makefile.in > po/Makefile]],[[]])
|
|
|
|
dnl Required by html and install-html
|
|
AC_SUBST(datarootdir)
|
|
AC_SUBST(docdir)
|
|
AC_SUBST(htmldir)
|
|
|
|
AC_OUTPUT
|
|
|