configure.in revision 99461
1294113Sbaptdnl Process this file with autoconf to produce a configure script. 2274876Sbaptdnl 3274876Sbapt 4279527SbaptAC_PREREQ(2.13) 5274876SbaptAC_INIT(libbfd.c) 6274876Sbapt 7274876SbaptAC_CANONICAL_SYSTEM 8274876SbaptAC_ISC_POSIX 9274876Sbapt 10294113SbaptAM_INIT_AUTOMAKE(bfd, 2.12.1) 11274876Sbapt# Uncomment the next line to remove the date from the reported bfd version 12294113Sbaptis_release=y 13274876Sbapt 14274876Sbaptchangequote(,)dnl 15274876Sbaptbfd_version=`echo "${VERSION}" | sed -e 's/\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\).*/\1.00\2.00\3.00\4.00\5/' -e 's/\([^\.]*\)\..*\(..\)\..*\(..\)\..*\(..\)\..*\(..\)$/\1\2\3\4\5/'` 16274876Sbaptchangequote([,])dnl 17274876Sbapt 18274876Sbaptbfd_version_string="\"${VERSION}\"" 19274876Sbaptbfd_version_date=`sed -e 's/.*DATE //' < ${srcdir}/version.h` 20274876Sbaptif test x${is_release} = x; then 21275432Sbaptdnl Sad, but we can't use XSTRING here to pick up the date from version.h 22275432Sbaptdnl because traditional C doesn't allow it. 23274876Sbapt bfd_version_string="\"${VERSION} ${bfd_version_date}\"" 24294113Sbaptfi 25294113Sbaptdnl Since we need to edit bfd-in3.h to get the date for bfd_version_string, 26294113Sbaptdnl we may as well substitute for bfd_version_date too. That way we don't 27276219Sbaptdnl need to #include version.h 28274876SbaptAC_SUBST(bfd_version) 29274876SbaptAC_SUBST(bfd_version_date) 30279527SbaptAC_SUBST(bfd_version_string) 31274876Sbapt 32274876Sbaptdnl These must be called before AM_PROG_LIBTOOL, because it may want 33274876Sbaptdnl to call AC_CHECK_PROG. 34274876SbaptAC_CHECK_TOOL(AR, ar) 35274876SbaptAC_CHECK_TOOL(RANLIB, ranlib, :) 36274876Sbapt 37274876Sbaptdnl Default to a non shared library. This may be overridden by the 38274876Sbaptdnl configure option --enable-shared. 39274876SbaptAM_DISABLE_SHARED 40274876Sbapt 41274876SbaptAM_PROG_LIBTOOL 42274876Sbapt 43274876SbaptAC_ARG_ENABLE(64-bit-bfd, 44274876Sbapt[ --enable-64-bit-bfd 64-bit support (on hosts with narrower word sizes)], 45274876Sbapt[case "${enableval}" in 46274876Sbapt yes) want64=true ;; 47294113Sbapt no) want64=false ;; 48294113Sbapt *) AC_MSG_ERROR(bad value ${enableval} for 64-bit-bfd option) ;; 49274876Sbaptesac],[want64=false])dnl 50274876SbaptAC_ARG_ENABLE(targets, 51274876Sbapt[ --enable-targets alternative target configurations], 52274876Sbapt[case "${enableval}" in 53274876Sbapt yes | "") AC_ERROR(enable-targets option must specify target names or 'all') 54274876Sbapt ;; 55274876Sbapt no) enable_targets= ;; 56274876Sbapt *) enable_targets=$enableval ;; 57294113Sbaptesac])dnl 58274876SbaptAC_ARG_ENABLE(commonbfdlib, 59274876Sbapt[ --enable-commonbfdlib build shared BFD/opcodes/libiberty library], 60274876Sbapt[case "${enableval}" in 61274876Sbapt yes) commonbfdlib=true ;; 62294113Sbapt no) commonbfdlib=false ;; 63274876Sbapt *) AC_MSG_ERROR([bad value ${enableval} for BFD commonbfdlib option]) ;; 64274876Sbaptesac])dnl 65274876SbaptAC_ARG_WITH(mmap, 66274876Sbapt[ --with-mmap try using mmap for BFD input files if available], 67294113Sbapt[case "${withval}" in 68274876Sbapt yes) want_mmap=true ;; 69274876Sbapt no) want_mmap=false ;; 70274876Sbapt *) AC_MSG_ERROR(bad value ${withval} for BFD with-mmap option) ;; 71274876Sbaptesac],[want_mmap=false])dnl 72274876Sbapt 73274876Sbaptbuild_warnings="-W -Wall -Wstrict-prototypes -Wmissing-prototypes" 74274876SbaptAC_ARG_ENABLE(build-warnings, 75274876Sbapt[ --enable-build-warnings Enable build-time compiler warnings if gcc is used], 76274876Sbapt[case "${enableval}" in 77274876Sbapt yes) ;; 78274876Sbapt no) build_warnings="-w";; 79274876Sbapt ,*) t=`echo "${enableval}" | sed -e "s/,/ /g"` 80274876Sbapt build_warnings="${build_warnings} ${t}";; 81274876Sbapt *,) t=`echo "${enableval}" | sed -e "s/,/ /g"` 82274876Sbapt build_warnings="${t} ${build_warnings}";; 83275432Sbapt *) build_warnings=`echo "${enableval}" | sed -e "s/,/ /g"`;; 84274876Sbaptesac 85275432Sbaptif test x"$silent" != x"yes" && test x"$build_warnings" != x""; then 86274876Sbapt echo "Setting warning flags = $build_warnings" 6>&1 87274876Sbaptfi])dnl 88279527SbaptWARN_CFLAGS="" 89279527Sbaptif test "x${build_warnings}" != x -a "x$GCC" = xyes ; then 90274876Sbapt WARN_CFLAGS="${build_warnings}" 91274876Sbaptfi 92274876SbaptAC_SUBST(WARN_CFLAGS) 93274876Sbapt 94274876SbaptAM_CONFIG_HEADER(config.h:config.in) 95274876Sbapt 96274876Sbaptif test -z "$target" ; then 97274876Sbapt AC_MSG_ERROR(Unrecognized target system type; please check config.sub.) 98274876Sbaptfi 99274876Sbapt 100274876SbaptAM_MAINTAINER_MODE 101274876SbaptAC_EXEEXT 102274876Sbapt 103274876Sbapthost64=false 104274876Sbapttarget64=false 105274876Sbaptbfd_default_target_size=32 106274876Sbapt 107274876Sbapt# host stuff: 108274876Sbapt 109274876SbaptAC_PROG_CC 110274876Sbapt 111274876SbaptALL_LINGUAS="fr tr ja es sv" 112274876SbaptCY_GNU_GETTEXT 113274876Sbapt 114274876Sbapt# Permit host specific settings. 115274876Sbapt. ${srcdir}/configure.host 116274876Sbapt 117274876SbaptAC_SUBST(HDEFINES) 118274876SbaptAC_PROG_INSTALL 119294113Sbapt 120294113SbaptBFD_HOST_64BIT_LONG=0 121274876SbaptBFD_HOST_64_BIT_DEFINED=0 122274876SbaptBFD_HOST_64_BIT= 123274876SbaptBFD_HOST_U_64_BIT= 124274876Sbaptif test "x${HOST_64BIT_TYPE}" = "xlong"; then 125274876Sbapt BFD_HOST_64BIT_LONG=1 126274876Sbaptelif test "x${HOST_64BIT_TYPE}" != "x"; then 127274876Sbapt BFD_HOST_64_BIT_DEFINED=1 128294113Sbapt BFD_HOST_64_BIT=${HOST_64BIT_TYPE} 129274876Sbapt BFD_HOST_U_64_BIT=${HOST_U_64BIT_TYPE} 130294113Sbaptfi 131274876SbaptAC_SUBST(BFD_HOST_64BIT_LONG) 132274876SbaptAC_SUBST(BFD_HOST_64_BIT_DEFINED) 133274876SbaptAC_SUBST(BFD_HOST_64_BIT) 134274876SbaptAC_SUBST(BFD_HOST_U_64_BIT) 135274876Sbapt 136274876SbaptBFD_CC_FOR_BUILD 137294113Sbapt 138274876SbaptAC_CHECK_HEADERS(stddef.h string.h strings.h stdlib.h time.h unistd.h) 139294113SbaptAC_CHECK_HEADERS(fcntl.h sys/file.h sys/time.h) 140274876SbaptAC_HEADER_TIME 141274876SbaptAC_HEADER_DIRENT 142294113SbaptAC_CHECK_FUNCS(fcntl getpagesize setitimer sysconf fdopen getuid getgid) 143294113Sbapt 144274876SbaptBFD_BINARY_FOPEN 145274876Sbapt 146274876SbaptBFD_NEED_DECLARATION(strstr) 147294113SbaptBFD_NEED_DECLARATION(malloc) 148274876SbaptBFD_NEED_DECLARATION(realloc) 149294113SbaptBFD_NEED_DECLARATION(free) 150274876SbaptBFD_NEED_DECLARATION(getenv) 151274876Sbapt 152274876Sbapt# If we are configured native, pick a core file support file. 153294113SbaptCOREFILE= 154274876SbaptCOREFLAG= 155274876SbaptTRAD_HEADER= 156274876Sbaptif test "${target}" = "${host}"; then 157274876Sbapt case "${host}" in 158274876Sbapt alpha*-*-freebsd*) 159274876Sbapt COREFILE='' 160274876Sbapt ;; 161274876Sbapt alpha*-*-linux-gnu*) 162274876Sbapt COREFILE=trad-core.lo 163274876Sbapt TRAD_HEADER='"hosts/alphalinux.h"' 164274876Sbapt ;; 165274876Sbapt alpha*-*-netbsd*) COREFILE=netbsd-core.lo ;; 166274876Sbapt alpha*-*-*) COREFILE=osf-core.lo ;; 167274876Sbapt arm-*-freebsd*) COREFILE='' ;; 168274876Sbapt arm-*-netbsd*) COREFILE=netbsd-core.lo ;; 169274876Sbapt arm-*-riscix) COREFILE=trad-core.lo ;; 170274876Sbapt hppa*-*-hpux*) COREFILE=hpux-core.lo ;; 171274876Sbapt hppa*-*-hiux*) COREFILE=hpux-core.lo ;; 172274876Sbapt hppa*-*-mpeix*) COREFILE=hpux-core.lo ;; 173274876Sbapt hppa*-*-bsd*) COREFILE="hpux-core.lo hppabsd-core.lo" 174294113Sbapt COREFLAG="-DHPUX_CORE -DHPPABSD_CORE" ;; 175274876Sbapt i370-*-*) 176294113Sbapt COREFILE=trad-core.lo 177294113Sbapt TRAD_HEADER='"hosts/i370linux.h"' 178294113Sbapt ;; 179294113Sbapt 180274876Sbaptchangequote(,)dnl 181294113Sbapt i[3456]86-sequent-bsd*) 182274876Sbaptchangequote([,])dnl 183274876Sbapt COREFILE=trad-core.lo 184275432Sbapt TRAD_HEADER='"hosts/symmetry.h"' 185280025Sbapt ;; 186274876Sbaptchangequote(,)dnl 187274876Sbapt i[3456]86-sequent-sysv4*) ;; 188274876Sbapt i[3456]86-sequent-sysv*) 189275432Sbaptchangequote([,])dnl 190274876Sbapt COREFILE=trad-core.lo 191274876Sbapt TRAD_HEADER='"hosts/symmetry.h"' 192274876Sbapt ;; 193274876Sbaptchangequote(,)dnl 194274876Sbapt i[3456]86-*-bsdi) 195280025Sbaptchangequote([,])dnl 196280025Sbapt COREFILE= 197274876Sbapt ;; 198274876Sbaptchangequote(,)dnl 199294113Sbapt i[3456]86-*-bsd* | i[34567]86-*-freebsd[123] | i[34567]86-*-freebsd[123]\.* | i[34567]86-*-freebsd4\.[01234]* | i[34567]86-*-freebsd*aout*) 200294113Sbaptchangequote([,])dnl 201294113Sbapt COREFILE=trad-core.lo 202294113Sbapt TRAD_HEADER='"hosts/i386bsd.h"' 203294113Sbapt ;; 204274876Sbaptchangequote(,)dnl 205274876Sbapt i[3456]86-*-freebsd*) 206294113Sbaptchangequote([,])dnl 207294113Sbapt COREFILE='' 208294113Sbapt TRAD_HEADER='"hosts/i386bsd.h"' 209294113Sbapt ;; 210294113Sbaptchangequote(,)dnl 211274876Sbapt i[3456]86-*-netbsd* | i[3456]86-*-openbsd*) 212274876Sbaptchangequote([,])dnl 213274876Sbapt COREFILE=netbsd-core.lo 214274876Sbapt ;; 215274876Sbaptchangequote(,)dnl 216274876Sbapt i[3456]86-esix-sysv3*) 217274876Sbaptchangequote([,])dnl 218274876Sbapt COREFILE=trad-core.lo 219274876Sbapt TRAD_HEADER='"hosts/esix.h"' 220274876Sbapt ;; 221274876Sbaptchangequote(,)dnl 222294113Sbapt i[3456]86-*-sco3.2v5*) 223274876Sbaptchangequote([,])dnl 224294113Sbapt COREFILE=sco5-core.lo 225294113Sbapt ;; 226294113Sbaptchangequote(,)dnl 227294113Sbapt i[3456]86-*-sco* | i[3456]86-*-isc*) 228294113Sbaptchangequote([,])dnl 229294113Sbapt COREFILE=trad-core.lo 230294113Sbapt TRAD_HEADER='"hosts/i386sco.h"' 231294113Sbapt ;; 232294113Sbaptchangequote(,)dnl 233294113Sbapt i[3456]86-*-mach3*) 234294113Sbaptchangequote([,])dnl 235274876Sbapt COREFILE=trad-core.lo 236274876Sbapt TRAD_HEADER='"hosts/i386mach3.h"' 237294113Sbapt ;; 238274876Sbaptchangequote(,)dnl 239274876Sbapt i[3456]86-*-linux-gnu*) 240274876Sbaptchangequote([,])dnl 241274876Sbapt COREFILE=trad-core.lo 242274876Sbapt TRAD_HEADER='"hosts/i386linux.h"' 243294113Sbapt ;; 244274876Sbaptchangequote(,)dnl 245274876Sbapt i[3456]86-*-isc*) COREFILE=trad-core.lo ;; 246274876Sbapt i[3456]86-*-aix*) COREFILE=aix386-core.lo ;; 247274876Sbaptchangequote([,])dnl 248274876Sbapt i860-*-mach3* | i860-*-osf1*) 249274876Sbapt COREFILE=trad-core.lo 250274876Sbapt TRAD_HEADER='"hosts/i860mach3.h"' 251274876Sbapt ;; 252274876Sbapt mips-dec-bsd*) 253274876Sbapt COREFILE=trad-core.lo 254274876Sbapt TRAD_HEADER='"hosts/mipsbsd.h"' 255274876Sbapt ;; 256274876Sbapt mips-dec-mach3*) 257274876Sbapt COREFILE=trad-core.lo 258274876Sbapt TRAD_HEADER='"hosts/mipsmach3.h"' 259274876Sbapt ;; 260274876Sbapt mips-*-netbsd* | mips*-*-openbsd*) 261274876Sbapt COREFILE=netbsd-core.lo 262274876Sbapt ;; 263274876Sbapt mips-dec-*) 264274876Sbapt COREFILE=trad-core.lo 265294113Sbapt TRAD_HEADER='"hosts/decstation.h"' 266294113Sbapt ;; 267274876Sbapt mips-sgi-irix4*) COREFILE=irix-core.lo ;; 268274876Sbapt mips-sgi-irix5*) COREFILE=irix-core.lo ;; 269274876Sbapt mips-sgi-irix6*) COREFILE=irix-core.lo ;; 270274876Sbapt mips-*-mach3*) 271274876Sbapt COREFILE=trad-core.lo 272274876Sbapt TRAD_HEADER='"hosts/mipsmach3.h"' 273274876Sbapt ;; 274274876Sbapt mips-*-sysv4*) ;; 275274876Sbapt mips-*-sysv* | mips-*-riscos*) 276274876Sbapt COREFILE=trad-core.lo 277294113Sbapt TRAD_HEADER='"hosts/riscos.h"' 278274876Sbapt ;; 279274876Sbapt mips-sony-bsd*) 280274876Sbapt COREFILE=trad-core.lo 281274876Sbapt TRAD_HEADER='"hosts/news-mips.h"' 282274876Sbapt ;; 283274876Sbapt m68*-bull*-sysv*) 284274876Sbapt COREFILE=trad-core.lo 285274876Sbapt TRAD_HEADER='"hosts/dpx2.h"' 286274876Sbapt ;; 287274876Sbapt m68*-hp-hpux*) COREFILE=hpux-core.lo ;; 288274876Sbapt m68*-hp-bsd*) 289274876Sbapt COREFILE=trad-core.lo 290274876Sbapt TRAD_HEADER='"hosts/hp300bsd.h"' 291274876Sbapt ;; 292274876Sbapt m68*-*-linux-gnu*) 293274876Sbapt COREFILE=trad-core.lo 294274876Sbapt TRAD_HEADER='"hosts/m68klinux.h"' 295274876Sbapt ;; 296274876Sbapt m68*-motorola-sysv*) 297274876Sbapt COREFILE=trad-core.lo 298274876Sbapt TRAD_HEADER='"hosts/delta68.h"' 299275432Sbapt ;; 300274876Sbapt m68*-sony-*) 301274876Sbapt COREFILE=trad-core.lo 302274876Sbapt TRAD_HEADER='"hosts/news.h"' 303274876Sbapt ;; 304274876Sbapt m68*-*-netbsd* | m68*-*-openbsd*) 305274876Sbapt COREFILE=netbsd-core.lo 306274876Sbapt ;; 307294113Sbapt m68*-apple-aux*) 308274876Sbapt COREFILE=trad-core.lo 309274876Sbapt TRAD_HEADER='"hosts/m68kaux.h"' 310274876Sbapt ;; 311274876Sbapt m88*-*-sysv4*) ;; 312274876Sbapt m88*-motorola-sysv*) COREFILE=ptrace-core.lo ;; 313274876Sbapt m88*-*-mach3*) 314274876Sbapt COREFILE=trad-core.lo 315274876Sbapt TRAD_HEADER='"hosts/m88kmach3.h"' 316294113Sbapt ;; 317294113Sbapt ns32k-pc532-mach) 318274876Sbapt COREFILE=trad-core.lo 319274876Sbapt TRAD_HEADER='"hosts/pc532mach.h"' 320274876Sbapt ;; 321274876Sbapt ns32k-*-netbsd* | ns32k-*-openbsd*) 322274876Sbapt COREFILE=netbsd-core.lo 323274876Sbapt ;; 324294113Sbapt rs6000-*-lynx*) COREFILE=lynx-core.lo ;; 325294113Sbaptchangequote(,)dnl 326274876Sbapt rs6000-*-aix4.[3-9]* | powerpc-*-aix4.[3-9]*) 327274876Sbaptchangequote([,])dnl 328274876Sbapt COREFILE=rs6000-core.lo 329274876Sbapt COREFLAG="$COREFLAG -DAIX_CORE_DUMPX_CORE" 330274876Sbapt # Not all versions of AIX with -DAIX_CORE_DUMPX_CORE 331274876Sbapt # have c_impl as a member of struct core_dumpx 332274876Sbapt AC_MSG_CHECKING([for c_impl in struct core_dumpx]) 333274876Sbapt AC_TRY_COMPILE([#include <core.h>], 334274876Sbapt [struct core_dumpx c; c.c_impl = 0;], 335274876Sbapt [AC_DEFINE(HAVE_ST_C_IMPL, 1, 336275432Sbapt [Define if struct core_dumpx has member c_impl]) 337275432Sbapt AC_MSG_RESULT(yes)],[AC_MSG_RESULT(no)]) 338274876Sbapt ;; 339274876Sbapt rs6000-*-aix4*) COREFILE=rs6000-core.lo ;; 340279527Sbapt rs6000-*-*) COREFILE=rs6000-core.lo ;; 341274876Sbapt powerpc-*-aix4*) COREFILE=rs6000-core.lo ;; 342279527Sbapt powerpc-*-aix*) COREFILE=rs6000-core.lo ;; 343279527Sbapt powerpc-*-beos*) ;; 344279527Sbapt powerpc-*-freebsd*) COREFILE='' ;; 345279527Sbapt powerpc-*-netbsd*) COREFILE=netbsd-core.lo ;; 346279527Sbapt powerpc-*-*bsd*) COREFILE=netbsd-core.lo ;; 347279527Sbapt s390*-*-*) COREFILE=trad-core.lo ;; 348279527Sbapt sh*-*-netbsd*) COREFILE=netbsd-core.lo ;; 349274876Sbapt sparc-*-netbsd* | sparc-*-openbsd*) 350274876Sbapt COREFILE=netbsd-core.lo 351274876Sbapt ;; 352274876Sbapt tahoe-*-*) 353274876Sbapt COREFILE=trad-core.lo 354274876Sbapt TRAD_HEADER='"hosts/tahoe.h"' 355274876Sbapt ;; 356275432Sbapt vax-*-ultrix2*) 357275432Sbapt COREFILE=trad-core.lo 358275432Sbapt TRAD_HEADER='"hosts/vaxult2.h"' 359275432Sbapt ;; 360275432Sbapt vax-*-ultrix*) 361275432Sbapt COREFILE=trad-core.lo 362275432Sbapt TRAD_HEADER='"hosts/vaxult2.h"' 363275432Sbapt ;; 364274876Sbapt vax-*-*) 365274876Sbapt COREFILE=trad-core.lo 366294113Sbapt TRAD_HEADER='"hosts/vaxbsd.h"' 367294113Sbapt ;; 368274876Sbapt x86_64-*-netbsd*) COREFILE=netbsd-core.lo ;; 369274876Sbapt esac 370274876Sbapt 371294113Sbapt case "$COREFILE" in 372274876Sbapt aix386-core.lo) COREFLAG=-DAIX386_CORE ;; 373274876Sbapt hppabsd-core.lo) COREFLAG=-DHPPABSD_CORE ;; 374275432Sbapt hpux-core.lo) COREFLAG=-DHPUX_CORE ;; 375275432Sbapt irix-core.lo) COREFLAG=-DIRIX_CORE ;; 376275432Sbapt lynx-core.lo) COREFLAG=-DLYNX_CORE ;; 377275432Sbapt netbsd-core.lo) COREFLAG=-DNETBSD_CORE ;; 378275432Sbapt osf-core.lo) COREFLAG=-DOSF_CORE ;; 379275432Sbapt ptrace-core.lo) COREFLAG=-DPTRACE_CORE ;; 380275432Sbapt rs6000-core.lo) COREFLAG="$COREFLAG -DAIX_CORE" ;; 381275432Sbapt sco5-core.lo) COREFLAG="$COREFLAG -DSCO5_CORE" ;; 382275432Sbapt trad-core.lo) COREFLAG="$COREFLAG -DTRAD_CORE" ;; 383275432Sbapt esac 384275432Sbapt 385275432Sbapt # ELF corefile support has several flavors, but all of 386275432Sbapt # them use something called <sys/procfs.h> 387274876Sbapt AC_CHECK_HEADERS(sys/procfs.h) 388274876Sbapt if test "$ac_cv_header_sys_procfs_h" = yes; then 389274876Sbapt BFD_HAVE_SYS_PROCFS_TYPE(prstatus_t) 390274876Sbapt BFD_HAVE_SYS_PROCFS_TYPE(prstatus32_t) 391274876Sbapt BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(prstatus_t, pr_who) 392274876Sbapt BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(prstatus32_t, pr_who) 393274876Sbapt BFD_HAVE_SYS_PROCFS_TYPE(pstatus_t) 394274876Sbapt BFD_HAVE_SYS_PROCFS_TYPE(pxstatus_t) 395294113Sbapt BFD_HAVE_SYS_PROCFS_TYPE(pstatus32_t) 396294113Sbapt BFD_HAVE_SYS_PROCFS_TYPE(prpsinfo_t) 397294113Sbapt BFD_HAVE_SYS_PROCFS_TYPE(prpsinfo32_t) 398274876Sbapt BFD_HAVE_SYS_PROCFS_TYPE(psinfo_t) 399274876Sbapt BFD_HAVE_SYS_PROCFS_TYPE(psinfo32_t) 400274876Sbapt BFD_HAVE_SYS_PROCFS_TYPE(lwpstatus_t) 401279527Sbapt BFD_HAVE_SYS_PROCFS_TYPE(lwpxstatus_t) 402279527Sbapt BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(lwpstatus_t, pr_context) 403274876Sbapt BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(lwpstatus_t, pr_reg) 404274876Sbapt BFD_HAVE_SYS_PROCFS_TYPE(win32_pstatus_t) 405279527Sbapt fi 406279527Sbaptfi 407274876SbaptAC_SUBST(COREFILE) 408274876SbaptAC_SUBST(COREFLAG) 409279527Sbaptif test -n "$TRAD_HEADER"; then 410274876Sbapt AC_DEFINE_UNQUOTED(TRAD_HEADER, $TRAD_HEADER, 411274876Sbapt [Name of host specific header file to include in trad-core.c.]) 412274876Sbaptfi 413279527Sbapt 414274876Sbapt# Horrible hacks to build DLLs on Windows. 415274876SbaptWIN32LDFLAGS= 416274876SbaptWIN32LIBADD= 417274876Sbaptcase "${host}" in 418274876Sbapt*-*-cygwin*) 419274876Sbapt if test "$enable_shared" = "yes"; then 420274876Sbapt WIN32LDFLAGS="-no-undefined" 421274876Sbapt WIN32LIBADD="-L`pwd`/../libiberty -liberty -L`pwd`/../intl -lintl -lcygwin -lkernel32" 422274876Sbapt fi 423274876Sbapt ;; 424274876Sbapt*-*-linux*) 425274876Sbapt # We borrow WIN32LIBADD so that the shared libbfd won't depend on 426274876Sbapt # libiberty.a. 427274876Sbapt case "${host}" in 428279527Sbapt mips*-*-linux*) 429274876Sbapt # Linux/MIPS uses PIC by default. 430274876Sbapt if test "$enable_shared" = "yes"; then 431279527Sbapt WIN32LIBADD="-L../libiberty -liberty" 432279527Sbapt fi 433274876Sbapt ;; 434279527Sbapt *) 435279527Sbaptchangequote(,)dnl 436279527Sbapt x=`sed -n -e 's/^[ ]*PICFLAG[ ]*=[ ]*//p' < ../libiberty/Makefile | tail -1` 437274876Sbaptchangequote([,])dnl 438274876Sbapt if test -n "$x"; then 439274876Sbapt WIN32LIBADD="-L../libiberty/pic -liberty" 440274876Sbapt fi 441274876Sbapt ;; 442274876Sbapt esac 443274876Sbapt ;; 444274876Sbaptesac 445274876SbaptAC_SUBST(WIN32LDFLAGS) 446274876SbaptAC_SUBST(WIN32LIBADD) 447274876Sbapt 448274876Sbapt# target stuff: 449274876Sbapt 450274876Sbapt# Canonicalize the secondary target names. 451274876Sbaptif test -n "$enable_targets" ; then 452274876Sbapt for targ in `echo $enable_targets | sed 's/,/ /g'` 453274876Sbapt do 454274876Sbapt result=`$ac_config_sub $targ 2>/dev/null` 455274876Sbapt if test -n "$result" ; then 456274876Sbapt canon_targets="$canon_targets $result" 457274876Sbapt else 458274876Sbapt # Allow targets that config.sub doesn't recognize, like "all". 459274876Sbapt canon_targets="$canon_targets $targ" 460274876Sbapt fi 461274876Sbapt done 462274876Sbaptfi 463274876Sbapt 464274876Sbaptall_targets=false 465274876Sbaptdefvec= 466274876Sbaptselvecs= 467274876Sbaptselarchs= 468274876SbaptTDEFINES= 469274876Sbaptfor targ in $target $canon_targets 470274876Sbaptdo 471274876Sbapt if test "x$targ" = "xall"; then 472274876Sbapt all_targets=true 473274876Sbapt else 474274876Sbapt . $srcdir/config.bfd 475275432Sbapt if test "x$targ" = "x$target"; then 476274876Sbapt defvec=$targ_defvec 477274876Sbapt fi 478275432Sbapt selvecs="$selvecs $targ_defvec $targ_selvecs" 479274876Sbapt selarchs="$selarchs $targ_archs" 480274876Sbapt TDEFINES="$TDEFINES $targ_cflags" 481274876Sbapt fi 482274876Sbaptdone 483274876SbaptAC_SUBST(TDEFINES) 484274876Sbapt 485275432Sbapt# This processing still needs to be done if we're to decide properly whether 486274876Sbapt# 64-bit support needs to be compiled in. Currently, it will be included if 487274876Sbapt# the default or any other explicitly requested target requires it; it 488279527Sbapt# will not be included on a 32-bit host if no 64-bit target is requested, and 489279527Sbapt# no "--with-64-bit-bfd" option is given, even if "--enable-targets=all" is 490279527Sbapt# used. 491279527Sbapt 492279527Sbapt# uniq the default and selected vectors in all the configured targets. 493279527Sbaptf="" 494279527Sbaptfor i in $selvecs ; do 495279527Sbapt case " $f " in 496279527Sbapt *" $i "*) ;; 497279527Sbapt *) f="$f $i" ;; 498279527Sbapt esac 499279527Sbaptdone 500279527Sbaptselvecs="$f" 501279527Sbapt 502279527Sbapt 503279527Sbapt# uniq the architectures in all the configured targets. 504274876Sbaptf="" 505275432Sbaptfor i in $selarchs ; do 506294113Sbapt case " $f " in 507274876Sbapt *" $i "*) ;; 508274876Sbapt *) f="$f $i" ;; 509279527Sbapt esac 510279527Sbaptdone 511279527Sbaptselarchs="$f" 512279527Sbapt 513279527Sbapt# Target backend .o files. 514279527Sbapttb= 515279527Sbapt 516274876Sbaptelf="elf.lo elflink.lo elf-strtab.lo elf-eh-frame.lo dwarf1.lo" 517274876Sbapt 518275432Sbaptfor vec in $selvecs 519275432Sbaptdo 520274876Sbapt target_size=32 521274876Sbapt case "$vec" in 522274876Sbapt # This list is alphabetized to make it easy to compare 523274876Sbapt # with the two vector lists in targets.c. For the same reason, 524274876Sbapt # use one entry per line, even though this leads to long lines. 525274876Sbapt # FIXME: We include cofflink.lo not because it's needed for 526274876Sbapt # bfd_elf32_sh64[l]_vec, but because we include bfd_elf32_sh[l]_vec 527274876Sbapt # which needs it but does not list it. Should be fixed in right place. 528274876Sbapt bfd_elf32_sh64_vec) tb="$tb elf32-sh64.lo elf32.lo $elf cofflink.lo" 529274876Sbapt target_size=64 ;; 530274876Sbapt bfd_elf32_sh64l_vec) tb="$tb elf32-sh64.lo elf32.lo $elf cofflink.lo" 531274876Sbapt target_size=64 ;; 532274876Sbapt bfd_elf64_sh64_vec) tb="$tb elf64-sh64.lo elf64.lo $elf" 533274876Sbapt target_size=64 ;; 534274876Sbapt bfd_elf64_sh64l_vec) tb="$tb elf64-sh64.lo elf64.lo $elf" 535274876Sbapt target_size=64 ;; 536274876Sbapt a29kcoff_big_vec) tb="$tb coff-a29k.lo cofflink.lo" ;; 537274876Sbapt a_out_adobe_vec) tb="$tb aout-adobe.lo aout32.lo" ;; 538274876Sbapt aout0_big_vec) tb="$tb aout0.lo aout32.lo" ;; 539274876Sbapt aout_arm_big_vec) tb="$tb aout-arm.lo aout32.lo" ;; 540274876Sbapt aout_arm_little_vec) tb="$tb aout-arm.lo aout32.lo" ;; 541274876Sbapt aout_mips_big_vec) tb="$tb mipsbsd.lo aout32.lo" ;; 542274876Sbapt aout_mips_little_vec) tb="$tb mipsbsd.lo aout32.lo" ;; 543274876Sbapt apollocoff_vec) tb="$tb coff-apollo.lo" ;; 544274876Sbapt arm_epoc_pe_big_vec) tb="$tb epoc-pe-arm.lo peigen.lo cofflink.lo " ;; 545274876Sbapt arm_epoc_pe_little_vec) tb="$tb epoc-pe-arm.lo peigen.lo cofflink.lo " ;; 546274876Sbapt arm_epoc_pei_big_vec) tb="$tb epoc-pei-arm.lo peigen.lo cofflink.lo " ;; 547274876Sbapt arm_epoc_pei_little_vec) tb="$tb epoc-pei-arm.lo peigen.lo cofflink.lo " ;; 548274876Sbapt armcoff_big_vec) tb="$tb coff-arm.lo cofflink.lo " ;; 549274876Sbapt armcoff_little_vec) tb="$tb coff-arm.lo cofflink.lo " ;; 550274876Sbapt armnetbsd_vec) tb="$tb armnetbsd.lo aout32.lo" ;; 551274876Sbapt armpe_big_vec) tb="$tb pe-arm.lo peigen.lo cofflink.lo " ;; 552274876Sbapt armpe_little_vec) tb="$tb pe-arm.lo peigen.lo cofflink.lo " ;; 553274876Sbapt armpei_big_vec) tb="$tb pei-arm.lo peigen.lo cofflink.lo " ;; 554274876Sbapt armpei_little_vec) tb="$tb pei-arm.lo peigen.lo cofflink.lo " ;; 555274876Sbapt b_out_vec_big_host) tb="$tb bout.lo aout32.lo" ;; 556294113Sbapt b_out_vec_little_host) tb="$tb bout.lo aout32.lo" ;; 557274876Sbapt bfd_efi_app_ia32_vec) tb="$tb efi-app-ia32.lo peigen.lo cofflink.lo" ;; 558294113Sbapt bfd_efi_app_ia64_vec) tb="$tb efi-app-ia64.lo pepigen.lo cofflink.lo"; target_size=64 ;; 559274876Sbapt bfd_elf32_avr_vec) tb="$tb elf32-avr.lo elf32.lo $elf" ;; 560274876Sbapt bfd_elf32_big_generic_vec) tb="$tb elf32-gen.lo elf32.lo $elf" ;; 561274876Sbapt bfd_elf32_bigarc_vec) tb="$tb elf32-arc.lo elf32.lo $elf" ;; 562274876Sbapt bfd_elf32_bigarm_oabi_vec) tb="$tb elfarm-oabi.lo elf32.lo $elf" ;; 563274876Sbapt bfd_elf32_bigarm_vec) tb="$tb elfarm-nabi.lo elf32.lo $elf" ;; 564274876Sbapt bfd_elf32_bigmips_vec) tb="$tb elf32-mips.lo elf32.lo $elf ecofflink.lo" ;; 565274876Sbapt bfd_elf32_cris_vec) tb="$tb elf32-cris.lo elf32.lo $elf" ;; 566274876Sbapt bfd_elf32_d10v_vec) tb="$tb elf32-d10v.lo elf32.lo $elf" ;; 567274876Sbapt bfd_elf32_d30v_vec) tb="$tb elf32-d30v.lo elf32.lo $elf" ;; 568274876Sbapt bfd_elf32_fr30_vec) tb="$tb elf32-fr30.lo elf32.lo $elf" ;; 569274876Sbapt bfd_elf32_h8300_vec) tb="$tb elf32-h8300.lo elf32.lo $elf" ;; 570274876Sbapt bfd_elf32_hppa_linux_vec) tb="$tb elf32-hppa.lo elf32.lo $elf" ;; 571274876Sbapt bfd_elf32_hppa_vec) tb="$tb elf32-hppa.lo elf32.lo $elf" ;; 572274876Sbapt bfd_elf32_i370_vec) tb="$tb elf32-i370.lo elf32.lo $elf" ;; 573274876Sbapt bfd_elf32_i386_vec) tb="$tb elf32-i386.lo elf32.lo $elf" ;; 574274876Sbapt bfd_elf32_i860_little_vec) tb="$tb elf32-i860.lo elf32.lo $elf" ;; 575274876Sbapt bfd_elf32_i860_vec) tb="$tb elf32-i860.lo elf32.lo $elf" ;; 576274876Sbapt bfd_elf32_i960_vec) tb="$tb elf32-i960.lo elf32.lo $elf" ;; 577274876Sbapt bfd_elf32_ia64_big_vec) tb="$tb elf32-ia64.lo elf32.lo $elf" ;; 578274876Sbapt bfd_elf32_ia64_hpux_big_vec) tb="$tb elf32-ia64.lo elf32.lo $elf";; 579274876Sbapt bfd_elf32_little_generic_vec) tb="$tb elf32-gen.lo elf32.lo $elf" ;; 580274876Sbapt bfd_elf32_littlearc_vec) tb="$tb elf32-arc.lo elf32.lo $elf" ;; 581274876Sbapt bfd_elf32_littlearm_oabi_vec) tb="$tb elfarm-oabi.lo elf32.lo $elf" ;; 582274876Sbapt bfd_elf32_littlearm_vec) tb="$tb elfarm-nabi.lo elf32.lo $elf" ;; 583274876Sbapt bfd_elf32_littlemips_vec) tb="$tb elf32-mips.lo elf32.lo $elf ecofflink.lo" ;; 584274876Sbapt bfd_elf32_m32r_vec) tb="$tb elf32-m32r.lo elf32.lo $elf" ;; 585274876Sbapt bfd_elf32_m68hc11_vec) tb="$tb elf32-m68hc11.lo elf32.lo $elf" ;; 586274876Sbapt bfd_elf32_m68hc12_vec) tb="$tb elf32-m68hc12.lo elf32.lo $elf" ;; 587274876Sbapt bfd_elf32_m68k_vec) tb="$tb elf32-m68k.lo elf32.lo $elf" ;; 588274876Sbapt bfd_elf32_m88k_vec) tb="$tb elf32-m88k.lo elf32.lo $elf" ;; 589274876Sbapt bfd_elf32_mcore_big_vec) tb="$tb elf32-mcore.lo elf32.lo $elf" ;; 590274876Sbapt bfd_elf32_mcore_little_vec) tb="$tb elf32-mcore.lo elf32.lo $elf" ;; 591274876Sbapt bfd_elf32_mn10200_vec) tb="$tb elf-m10200.lo elf32.lo $elf" ;; 592274876Sbapt bfd_elf32_mn10300_vec) tb="$tb elf-m10300.lo elf32.lo $elf" ;; 593274876Sbapt bfd_elf32_openrisc_vec) tb="$tb elf32-openrisc.lo elf32.lo $elf" ;; 594274876Sbapt bfd_elf32_or32_big_vec) tb="$tb elf32-or32.lo elf32.lo $elf" ;; 595274876Sbapt bfd_elf32_pj_vec) tb="$tb elf32-pj.lo elf32.lo $elf";; 596274876Sbapt bfd_elf32_pjl_vec) tb="$tb elf32-pj.lo elf32.lo $elf";; 597274876Sbapt bfd_elf32_powerpc_vec) tb="$tb elf32-ppc.lo elf32.lo $elf" ;; 598274876Sbapt bfd_elf32_powerpcle_vec) tb="$tb elf32-ppc.lo elf32.lo $elf" ;; 599274876Sbapt bfd_elf32_s390_vec) tb="$tb elf32-s390.lo elf32.lo $elf" ;; 600274876Sbapt bfd_elf32_sh_vec) tb="$tb elf32-sh.lo elf32.lo $elf coff-sh.lo" ;; 601274876Sbapt bfd_elf32_shblin_vec) tb="$tb elf32-sh-lin.lo elf32.lo $elf coff-sh.lo cofflink.lo" ;; 602274876Sbapt bfd_elf32_shl_vec) tb="$tb elf32-sh.lo elf32.lo $elf coff-sh.lo" ;; 603274876Sbapt bfd_elf32_shlin_vec) tb="$tb elf32-sh-lin.lo elf32.lo $elf coff-sh.lo cofflink.lo" ;; 604274876Sbapt bfd_elf32_shlnbsd_vec) tb="$tb elf32-sh-nbsd.lo elf32.lo $elf coff-sh.lo cofflink.lo" ;; 605274876Sbapt bfd_elf32_shnbsd_vec) tb="$tb elf32-sh-nbsd.lo elf32.lo $elf coff-sh.lo cofflink.lo" ;; 606274876Sbapt bfd_elf32_sparc_vec) tb="$tb elf32-sparc.lo elf32.lo $elf" ;; 607274876Sbapt bfd_elf32_tradbigmips_vec) tb="$tb elf32-mips.lo elf32.lo $elf ecofflink.lo" ;; 608274876Sbapt bfd_elf32_tradlittlemips_vec) tb="$tb elf32-mips.lo elf32.lo $elf ecofflink.lo" ;; 609274876Sbapt bfd_elf32_us_cris_vec) tb="$tb elf32-cris.lo elf32.lo $elf" ;; 610274876Sbapt bfd_elf32_v850_vec) tb="$tb elf32-v850.lo elf32.lo $elf" ;; 611274876Sbapt bfd_elf32_xstormy16_vec) tb="$tb elf32-xstormy16.lo elf32.lo $elf" ;; 612274876Sbapt bfd_elf64_alpha_vec) tb="$tb elf64-alpha.lo elf64.lo $elf"; target_size=64 ;; 613274876Sbapt bfd_elf64_big_generic_vec) tb="$tb elf64-gen.lo elf64.lo $elf"; target_size=64 ;; 614274876Sbapt bfd_elf64_bigmips_vec) tb="$tb elf64-mips.lo elf64.lo elf32-mips.lo elf32.lo $elf ecofflink.lo"; target_size=64 ;; 615274876Sbapt bfd_elf64_hppa_linux_vec) tb="$tb elf64-hppa.lo elf64.lo $elf"; target_size=64 ;; 616274876Sbapt bfd_elf64_hppa_vec) tb="$tb elf64-hppa.lo elf64.lo $elf"; target_size=64 ;; 617275432Sbapt bfd_elf64_ia64_aix_big_vec) tb="$tb elf64-ia64.lo elf64.lo $elf"; target_size=64 ;; 618275432Sbapt bfd_elf64_ia64_aix_little_vec) tb="$tb elf64-ia64.lo elf64.lo $elf"; target_size=64 ;; 619275432Sbapt bfd_elf64_ia64_big_vec) tb="$tb elf64-ia64.lo elf64.lo $elf"; target_size=64 ;; 620275432Sbapt bfd_elf64_ia64_hpux_big_vec) tb="$tb elf64-ia64.lo elf64.lo $elf"; target_size=64 ;; 621274876Sbapt bfd_elf64_ia64_little_vec) tb="$tb elf64-ia64.lo elf64.lo $elf"; target_size=64 ;; 622274876Sbapt bfd_elf64_little_generic_vec) tb="$tb elf64-gen.lo elf64.lo $elf"; target_size=64 ;; 623274876Sbapt bfd_elf64_littlemips_vec) tb="$tb elf64-mips.lo elf64.lo elf32-mips.lo elf32.lo $elf ecofflink.lo"; target_size=64 ;; 624274876Sbapt bfd_elf64_mmix_vec) tb="$tb elf64-mmix.lo elf64.lo $elf" target_size=64 ;; 625274876Sbapt bfd_elf64_powerpc_vec) tb="$tb elf64-ppc.lo elf64-gen.lo elf64.lo $elf"; target_size=64 ;; 626274876Sbapt bfd_elf64_powerpcle_vec) tb="$tb elf64-ppc.lo elf64-gen.lo elf64.lo $elf" target_size=64 ;; 627274876Sbapt bfd_elf64_s390_vec) tb="$tb elf64-s390.lo elf64.lo $elf"; target_size=64 ;; 628274876Sbapt bfd_elf64_sparc_vec) tb="$tb elf64-sparc.lo elf64.lo $elf"; target_size=64 ;; 629274876Sbapt bfd_elf64_tradbigmips_vec) tb="$tb elf64-mips.lo elf64.lo $elf ecofflink.lo"; target_size=64 ;; 630274876Sbapt bfd_elf64_tradlittlemips_vec) tb="$tb elf64-mips.lo elf64.lo $elf ecofflink.lo"; target_size=64 ;; 631274876Sbapt bfd_elf64_x86_64_vec) tb="$tb elf64-x86-64.lo elf64.lo $elf"; target_size=64 ;; 632274876Sbapt bfd_mmo_vec) tb="$tb mmo.lo" target_size=64 ;; 633274876Sbapt bfd_powerpc_pe_vec) tb="$tb pe-ppc.lo peigen.lo cofflink.lo" ;; 634274876Sbapt bfd_powerpc_pei_vec) tb="$tb pei-ppc.lo peigen.lo cofflink.lo" ;; 635274876Sbapt bfd_powerpcle_pe_vec) tb="$tb pe-ppc.lo peigen.lo cofflink.lo" ;; 636274876Sbapt bfd_powerpcle_pei_vec) tb="$tb pei-ppc.lo peigen.lo cofflink.lo" ;; 637274876Sbapt cisco_core_big_vec) tb="$tb cisco-core.lo" ;; 638274876Sbapt cisco_core_little_vec) tb="$tb cisco-core.lo" ;; 639274876Sbapt cris_aout_vec) tb="$tb aout-cris.lo" ;; 640275432Sbapt demo_64_vec) tb="$tb demo64.lo aout64.lo"; target_size=64 ;; 641274876Sbapt ecoff_big_vec) tb="$tb coff-mips.lo ecoff.lo ecofflink.lo" ;; 642274876Sbapt ecoff_biglittle_vec) tb="$tb coff-mips.lo ecoff.lo ecofflink.lo" ;; 643274876Sbapt ecoff_little_vec) tb="$tb coff-mips.lo ecoff.lo ecofflink.lo" ;; 644274876Sbapt ecoffalpha_little_vec) tb="$tb coff-alpha.lo ecoff.lo ecofflink.lo"; target_size=64 ;; 645274876Sbapt go32coff_vec) tb="$tb coff-go32.lo cofflink.lo" ;; 646274876Sbapt go32stubbedcoff_vec) tb="$tb coff-stgo32.lo cofflink.lo" ;; 647274876Sbapt h8300coff_vec) tb="$tb coff-h8300.lo reloc16.lo" ;; 648274876Sbapt h8500coff_vec) tb="$tb coff-h8500.lo reloc16.lo" ;; 649274876Sbapt host_aout_vec) tb="$tb host-aout.lo aout32.lo" ;; 650274876Sbapt hp300bsd_vec) tb="$tb hp300bsd.lo aout32.lo" ;; 651274876Sbapt hp300hpux_vec) tb="$tb hp300hpux.lo aout32.lo" ;; 652274876Sbapt i386aout_vec) tb="$tb i386aout.lo aout32.lo" ;; 653294113Sbapt i386bsd_vec) tb="$tb i386bsd.lo aout32.lo" ;; 654274876Sbapt i386coff_vec) tb="$tb coff-i386.lo cofflink.lo" ;; 655274876Sbapt i386dynix_vec) tb="$tb i386dynix.lo aout32.lo" ;; 656274876Sbapt i386freebsd_vec) tb="$tb i386freebsd.lo aout32.lo" ;; 657274876Sbapt i386linux_vec) tb="$tb i386linux.lo aout32.lo" ;; 658274876Sbapt i386lynx_aout_vec) tb="$tb i386lynx.lo lynx-core.lo aout32.lo" ;; 659274876Sbapt i386lynx_coff_vec) tb="$tb cf-i386lynx.lo cofflink.lo lynx-core.lo" ;; 660274876Sbapt i386mach3_vec) tb="$tb i386mach3.lo aout32.lo" ;; 661274876Sbapt i386msdos_vec) tb="$tb i386msdos.lo" ;; 662274876Sbapt i386netbsd_vec) tb="$tb i386netbsd.lo aout32.lo" ;; 663274876Sbapt i386os9k_vec) tb="$tb i386os9k.lo aout32.lo" ;; 664274876Sbapt i386pe_vec) tb="$tb pe-i386.lo peigen.lo cofflink.lo" ;; 665274876Sbapt i386pei_vec) tb="$tb pei-i386.lo peigen.lo cofflink.lo" ;; 666274876Sbapt i860coff_vec) tb="$tb coff-i860.lo cofflink.lo" ;; 667274876Sbapt icoff_big_vec) tb="$tb coff-i960.lo cofflink.lo" ;; 668274876Sbapt icoff_little_vec) tb="$tb coff-i960.lo cofflink.lo" ;; 669279527Sbapt ieee_vec) tb="$tb ieee.lo" ;; 670274876Sbapt m68k4knetbsd_vec) tb="$tb m68k4knetbsd.lo aout32.lo" ;; 671274876Sbapt m68kaux_coff_vec) tb="$tb coff-aux.lo coff-m68k.lo cofflink.lo" ;; 672274876Sbapt m68kcoff_vec) tb="$tb coff-m68k.lo cofflink.lo" ;; 673274876Sbapt m68kcoffun_vec) tb="$tb coff-u68k.lo coff-m68k.lo cofflink.lo" ;; 674274876Sbapt m68klinux_vec) tb="$tb m68klinux.lo aout32.lo" ;; 675274876Sbapt m68klynx_aout_vec) tb="$tb m68klynx.lo lynx-core.lo aout32.lo" ;; 676274876Sbapt m68klynx_coff_vec) tb="$tb cf-m68klynx.lo coff-m68k.lo cofflink.lo lynx-core.lo" ;; 677274876Sbapt m68knetbsd_vec) tb="$tb m68knetbsd.lo aout32.lo" ;; 678274876Sbapt m68ksysvcoff_vec) tb="$tb coff-svm68k.lo cofflink.lo" ;; 679274876Sbapt m88kbcs_vec) tb="$tb coff-m88k.lo" ;; 680274876Sbapt mcore_pe_big_vec) tb="$tb pe-mcore.lo peigen.lo cofflink.lo" ;; 681274876Sbapt mcore_pe_little_vec) tb="$tb pe-mcore.lo peigen.lo cofflink.lo" ;; 682274876Sbapt mcore_pei_big_vec) tb="$tb pei-mcore.lo peigen.lo cofflink.lo" ;; 683274876Sbapt mcore_pei_little_vec) tb="$tb pei-mcore.lo peigen.lo cofflink.lo" ;; 684274876Sbapt mipslpe_vec) tb="$tb pe-mips.lo peigen.lo cofflink.lo" ;; 685274876Sbapt mipslpei_vec) tb="$tb pei-mips.lo peigen.lo cofflink.lo" ;; 686274876Sbapt newsos3_vec) tb="$tb newsos3.lo aout32.lo" ;; 687274876Sbapt nlm32_alpha_vec) tb="$tb nlm32-alpha.lo nlm32.lo nlm.lo"; target_size=64 ;; 688274876Sbapt nlm32_i386_vec) tb="$tb nlm32-i386.lo nlm32.lo nlm.lo" ;; 689274876Sbapt nlm32_powerpc_vec) tb="$tb nlm32-ppc.lo nlm32.lo nlm.lo" ;; 690274876Sbapt nlm32_sparc_vec) tb="$tb nlm32-sparc.lo nlm32.lo nlm.lo" ;; 691274876Sbapt or32coff_big_vec) tb="$tb coff-or32.lo cofflink.lo" ;; 692274876Sbapt pc532machaout_vec) tb="$tb pc532-mach.lo aout-ns32k.lo" ;; 693274876Sbapt pc532netbsd_vec) tb="$tb ns32knetbsd.lo aout-ns32k.lo" ;; 694274876Sbapt pdp11_aout_vec) tb="$tb pdp11.lo" ;; 695274876Sbapt pmac_xcoff_vec) tb="$tb coff-rs6000.lo xcofflink.lo" ;; 696274876Sbapt ppcboot_vec) tb="$tb ppcboot.lo" ;; 697274876Sbapt riscix_vec) tb="$tb aout32.lo riscix.lo" ;; 698274876Sbapt rs6000coff64_vec) tb="$tb coff64-rs6000.lo xcofflink.lo"; target_size=64 ;; 699274876Sbapt rs6000coff_vec) tb="$tb coff-rs6000.lo xcofflink.lo" ;; 700274876Sbapt shcoff_small_vec) tb="$tb coff-sh.lo cofflink.lo" ;; 701274876Sbapt shcoff_vec) tb="$tb coff-sh.lo cofflink.lo" ;; 702274876Sbapt shlcoff_small_vec) tb="$tb coff-sh.lo cofflink.lo" ;; 703274876Sbapt shlcoff_vec) tb="$tb coff-sh.lo cofflink.lo" ;; 704274876Sbapt shlpe_vec) tb="$tb pe-sh.lo coff-sh.lo peigen.lo cofflink.lo" ;; 705274876Sbapt shlpei_vec) tb="$tb pei-sh.lo coff-sh.lo peigen.lo cofflink.lo" ;; 706274876Sbapt som_vec) tb="$tb som.lo" ;; 707274876Sbapt sparccoff_vec) tb="$tb coff-sparc.lo" ;; 708274876Sbapt sparcle_aout_vec) tb="$tb aout-sparcle.lo aout32.lo" ;; 709274876Sbapt sparclinux_vec) tb="$tb sparclinux.lo aout32.lo" ;; 710274876Sbapt sparclynx_aout_vec) tb="$tb sparclynx.lo lynx-core.lo aout32.lo" ;; 711274876Sbapt sparclynx_coff_vec) tb="$tb cf-sparclynx.lo lynx-core.lo" ;; 712274876Sbapt sparcnetbsd_vec) tb="$tb sparcnetbsd.lo aout32.lo" ;; 713274876Sbapt srec_vec) tb="$tb srec.lo" ;; 714274876Sbapt sunos_big_vec) tb="$tb sunos.lo aout32.lo" ;; 715274876Sbapt symbolsrec_vec) tb="$tb srec.lo" ;; 716274876Sbapt tekhex_vec) tb="$tb tekhex.lo" ;; 717274876Sbapt tic30_aout_vec) tb="$tb aout-tic30.lo" ;; 718274876Sbapt tic30_coff_vec) tb="$tb coff-tic30.lo" ;; 719274876Sbapt tic54x_coff0_beh_vec) tb="$tb coff-tic54x.lo" ;; 720274876Sbapt tic54x_coff0_vec) tb="$tb coff-tic54x.lo" ;; 721274876Sbapt tic54x_coff1_beh_vec) tb="$tb coff-tic54x.lo" ;; 722274876Sbapt tic54x_coff1_vec) tb="$tb coff-tic54x.lo" ;; 723274876Sbapt tic54x_coff2_beh_vec) tb="$tb coff-tic54x.lo" ;; 724274876Sbapt tic54x_coff2_vec) tb="$tb coff-tic54x.lo" ;; 725274876Sbapt tic80coff_vec) tb="$tb coff-tic80.lo cofflink.lo" ;; 726274876Sbapt versados_vec) tb="$tb versados.lo" ;; 727274876Sbapt vms_alpha_vec) tb="$tb vms.lo vms-hdr.lo vms-gsd.lo vms-tir.lo vms-misc.lo"; target_size=64 ;; 728274876Sbapt vms_vax_vec) tb="$tb vms.lo vms-hdr.lo vms-gsd.lo vms-tir.lo vms-misc.lo" ;; 729274876Sbapt w65_vec) tb="$tb coff-w65.lo reloc16.lo" ;; 730274876Sbapt we32kcoff_vec) tb="$tb coff-we32k.lo" ;; 731274876Sbapt z8kcoff_vec) tb="$tb coff-z8k.lo reloc16.lo" ;; 732274876Sbapt 733274876Sbapt "") ;; 734274876Sbapt *) AC_MSG_ERROR(*** unknown target vector $vec) ;; 735279527Sbapt esac 736294113Sbapt 737274876Sbapt if test ${target_size} = 64; then 738274876Sbapt target64=true 739274876Sbapt fi 740274876Sbapt if test x"${vec}" = x"${defvec}"; then 741294113Sbapt bfd_default_target_size=${target_size} 742274876Sbapt fi 743274876Sbaptdone 744274876Sbapt 745274876Sbapt# Target architecture .o files. 746274876Sbapt# A couple of CPUs use shorter file names to avoid problems on DOS 747274876Sbapt# filesystems. 748274876Sbaptta=`echo $selarchs | sed -e s/bfd_/cpu-/g -e s/_arch/.lo/g -e s/mn10200/m10200/ -e s/mn10300/m10300/` 749274876Sbapt 750274876Sbapt# Weed out duplicate .o files. 751274876Sbaptf="" 752274876Sbaptfor i in $tb ; do 753274876Sbapt case " $f " in 754294113Sbapt *" $i "*) ;; 755274876Sbapt *) f="$f $i" ;; 756274876Sbapt esac 757274876Sbaptdone 758275432Sbapttb="$f" 759275432Sbapt 760274876Sbaptf="" 761274876Sbaptfor i in $ta ; do 762294113Sbapt case " $f " in 763274876Sbapt *" $i "*) ;; 764274876Sbapt *) f="$f $i" ;; 765274876Sbapt esac 766275432Sbaptdone 767275432Sbaptta="$f" 768275432Sbapt 769274876Sbaptbfd_backends="$tb" 770274876Sbaptbfd_machines="$ta" 771275432Sbapt 772275432Sbaptif test x${all_targets} = xtrue ; then 773275432Sbapt bfd_backends="${bfd_backends}"' $(ALL_BACKENDS)' 774294113Sbapt bfd_machines="${bfd_machines}"' $(ALL_MACHINES)' 775275432Sbapt selvecs= 776294113Sbapt havevecs= 777294113Sbapt selarchs= 778294113Sbaptelse # all_targets is true 779294113Sbapt # Only set these if they will be nonempty, for the clever echo. 780294113Sbapt havevecs= 781294113Sbapt test -n "$selvecs" && 782275432Sbapt havevecs=`echo $selvecs | sed -e 's/^/-DHAVE_/' -e 's/ \(.\)/ -DHAVE_\1/g'` 783275432Sbapt test -n "$selvecs" && 784275432Sbapt selvecs=`echo $selvecs | sed -e 's/^/\&/' -e 's/ \(.\)/,\&\1/g'` 785274876Sbapt test -n "$selarchs" && 786274876Sbapt selarchs=`echo $selarchs | sed -e 's/^/\&/' -e 's/ \(.\)/,\&\1/g'` 787274876Sbaptfi # all_targets is true 788275432Sbapt 789274876Sbaptcase ${host64}-${target64}-${want64} in 790274876Sbapt *true*) 791274876Sbapt wordsize=64 792274876Sbapt bfd_libs='$(BFD64_LIBS) $(BFD32_LIBS)' 793274876Sbapt all_backends='$(BFD64_BACKENDS) $(BFD32_BACKENDS)' 794274876Sbapt if test -z "$GCC" && test "$BFD_HOST_64BIT_LONG" = "0" && test "$BFD_HOST_64_BIT_DEFINED" = "0"; then 795274876Sbapt AC_MSG_WARN([You have requested a 64 bit BFD configuration, but]) 796274876Sbapt AC_MSG_WARN([your compiler may not have a 64 bit integral type]) 797274876Sbapt fi 798274876Sbapt if test -n "$GCC" ; then 799274876Sbapt bad_64bit_gcc=no; 800274876Sbapt AC_MSG_CHECKING([for gcc version with buggy 64-bit support]) 801275432Sbapt # Add more tests for gcc versions with non-working 64-bit support here. 802274876Sbapt AC_EGREP_CPP([: 2 : 91 : 1 :],[:__GNUC__:__GNUC_MINOR__:__i386__:], 803274876Sbapt bad_64bit_gcc=yes; 804274876Sbapt AC_MSG_RESULT([yes: egcs-1.1.2 on ix86 spotted]), 805294113Sbapt AC_MSG_RESULT(no)) 806274876Sbapt if test $bad_64bit_gcc = yes ; then 807294113Sbapt AC_ERROR([A newer version of gcc is needed for the requested 64-bit BFD configuration]) 808274876Sbapt fi 809274876Sbapt fi 810274876Sbapt ;; 811274876Sbapt false-false-false) 812294113Sbapt wordsize=32 813274876Sbapt bfd_libs='$(BFD32_LIBS)' 814274876Sbapt all_backends='$(BFD32_BACKENDS)' 815274876Sbapt ;; 816274876Sbaptesac 817274876Sbapt 818274876SbaptAC_SUBST(wordsize) 819274876SbaptAC_SUBST(bfd_libs) 820274876SbaptAC_SUBST(all_backends) 821274876SbaptAC_SUBST(bfd_backends) 822274876SbaptAC_SUBST(bfd_machines) 823274876SbaptAC_SUBST(bfd_default_target_size) 824274876Sbapt 825274876Sbapttdefaults="" 826274876Sbapttest -n "${defvec}" && tdefaults="${tdefaults} -DDEFAULT_VECTOR=${defvec}" 827274876Sbapttest -n "${selvecs}" && tdefaults="${tdefaults} -DSELECT_VECS='${selvecs}'" 828274876Sbapttest -n "${selarchs}" && tdefaults="${tdefaults} -DSELECT_ARCHITECTURES='${selarchs}'" 829274876Sbapttest -n "${havevecs}" && tdefaults="${tdefaults} ${havevecs}" 830274876SbaptAC_SUBST(tdefaults) 831274876Sbapt 832274876Sbaptdnl AC_CHECK_HEADERS(sys/mman.h) 833274876SbaptAC_FUNC_MMAP 834294113SbaptAC_CHECK_FUNCS(madvise mprotect) 835274876Sbaptcase ${want_mmap}+${ac_cv_func_mmap_fixed_mapped} in 836274876Sbapt true+yes ) AC_DEFINE(USE_MMAP, 1, [Use mmap if it's available?]) ;; 837274876Sbaptesac 838274876Sbapt 839274876Sbaptrm -f doc/config.status 840294113SbaptAC_OUTPUT(Makefile doc/Makefile bfd-in3.h:bfd-in2.h po/Makefile.in:po/Make-in, 841274876Sbapt[sed -e '/SRC-POTFILES =/r po/SRC-POTFILES' -e '/BLD-POTFILES =/r po/BLD-POTFILES' po/Makefile.in > po/Makefile]) 842274876Sbapt 843274876Sbapt