configure.in revision 107492
190731Sjhaydnl Process this file with autoconf to produce a configure script. 2158124Smarceldnl 3158124Smarcel 490731SjhayAC_PREREQ(2.13) 590731SjhayAC_INIT(libbfd.c) 690731Sjhay 790731SjhayAC_CANONICAL_SYSTEM 890731SjhayAC_ISC_POSIX 990731Sjhay 1090731SjhayAM_INIT_AUTOMAKE(bfd, 2.13.1) 1190731Sjhay# Uncomment the next line to remove the date from the reported bfd version 1290731Sjhay# is_release=y 1390731Sjhay 1490731Sjhaychangequote(,)dnl 1590731Sjhaybfd_version=`echo "${VERSION}" | sed -e 's/\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\).*/\1.00\2.00\3.00\4.00\5/' -e 's/\([^\.]*\)\..*\(..\)\..*\(..\)\..*\(..\)\..*\(..\)$/\1\2\3\4\5/'` 1690731Sjhaychangequote([,])dnl 1790731Sjhay 1890731Sjhaybfd_version_string="\"${VERSION}\"" 1990731Sjhaybfd_version_date=`sed -e 's/.*DATE //' < ${srcdir}/version.h` 2090731Sjhayif test x${is_release} = x; then 2190731Sjhaydnl Sad, but we can't use XSTRING here to pick up the date from version.h 2290731Sjhaydnl because traditional C doesn't allow it. 2390731Sjhay bfd_version_string="\"${VERSION} ${bfd_version_date}\"" 2490731Sjhayfi 2590731Sjhaydnl Since we need to edit bfd-in3.h to get the date for bfd_version_string, 2690731Sjhaydnl we may as well substitute for bfd_version_date too. That way we don't 2790731Sjhaydnl need to #include version.h 2890731SjhayAC_SUBST(bfd_version) 2990731SjhayAC_SUBST(bfd_version_date) 3090731SjhayAC_SUBST(bfd_version_string) 3190731Sjhay 3290731Sjhaydnl These must be called before AM_PROG_LIBTOOL, because it may want 3390731Sjhaydnl to call AC_CHECK_PROG. 3490731SjhayAC_CHECK_TOOL(AR, ar) 3590731SjhayAC_CHECK_TOOL(RANLIB, ranlib, :) 36158124Smarcel 3790731Sjhaydnl Default to a non shared library. This may be overridden by the 3890731Sjhaydnl configure option --enable-shared. 3990731SjhayAM_DISABLE_SHARED 4090731Sjhay 4190731SjhayAM_PROG_LIBTOOL 4290731Sjhay 4390731SjhayAC_ARG_ENABLE(64-bit-bfd, 44102714Sphk[ --enable-64-bit-bfd 64-bit support (on hosts with narrower word sizes)], 45158124Smarcel[case "${enableval}" in 46158124Smarcel yes) want64=true ;; 47160030Sobrien no) want64=false ;; 4890731Sjhay *) AC_MSG_ERROR(bad value ${enableval} for 64-bit-bfd option) ;; 49158124Smarcelesac],[want64=false])dnl 5090731SjhayAC_ARG_ENABLE(targets, 51158124Smarcel[ --enable-targets alternative target configurations], 52158124Smarcel[case "${enableval}" in 53158124Smarcel yes | "") AC_ERROR(enable-targets option must specify target names or 'all') 54158124Smarcel ;; 55158124Smarcel no) enable_targets= ;; 56158124Smarcel *) enable_targets=$enableval ;; 57158124Smarcelesac])dnl 58158124SmarcelAC_ARG_ENABLE(commonbfdlib, 5990731Sjhay[ --enable-commonbfdlib build shared BFD/opcodes/libiberty library], 60158124Smarcel[case "${enableval}" in 6190731Sjhay yes) commonbfdlib=true ;; 62158124Smarcel no) commonbfdlib=false ;; 63158124Smarcel *) AC_MSG_ERROR([bad value ${enableval} for BFD commonbfdlib option]) ;; 64158124Smarcelesac])dnl 65158124SmarcelAC_ARG_WITH(mmap, 66158124Smarcel[ --with-mmap try using mmap for BFD input files if available], 67158124Smarcel[case "${withval}" in 68102893Sphk yes) want_mmap=true ;; 69158124Smarcel no) want_mmap=false ;; 70102893Sphk *) AC_MSG_ERROR(bad value ${withval} for BFD with-mmap option) ;; 71158124Smarcelesac],[want_mmap=false])dnl 72158124Smarcel 73158124Smarcelbuild_warnings="-W -Wall -Wstrict-prototypes -Wmissing-prototypes" 74158124SmarcelAC_ARG_ENABLE(build-warnings, 75102734Sphk[ --enable-build-warnings Enable build-time compiler warnings if gcc is used], 76158124Smarcel[case "${enableval}" in 77158124Smarcel yes) ;; 78158124Smarcel no) build_warnings="-w";; 79158124Smarcel ,*) t=`echo "${enableval}" | sed -e "s/,/ /g"` 80102734Sphk build_warnings="${build_warnings} ${t}";; 81158124Smarcel *,) t=`echo "${enableval}" | sed -e "s/,/ /g"` 82158124Smarcel build_warnings="${t} ${build_warnings}";; 83158124Smarcel *) build_warnings=`echo "${enableval}" | sed -e "s/,/ /g"`;; 84158124Smarcelesac 85158124Smarcelif test x"$silent" != x"yes" && test x"$build_warnings" != x""; then 86158124Smarcel echo "Setting warning flags = $build_warnings" 6>&1 87158124Smarcelfi])dnl 88158124SmarcelWARN_CFLAGS="" 89158124Smarcelif test "x${build_warnings}" != x -a "x$GCC" = xyes ; then 90158124Smarcel WARN_CFLAGS="${build_warnings}" 91158124Smarcelfi 92158124SmarcelAC_SUBST(WARN_CFLAGS) 93158124Smarcel 94158124SmarcelAM_CONFIG_HEADER(config.h:config.in) 95158124Smarcel 96158124Smarcelif test -z "$target" ; then 97158124Smarcel AC_MSG_ERROR(Unrecognized target system type; please check config.sub.) 98158124Smarcelfi 99158124Smarcel 100158124SmarcelAM_MAINTAINER_MODE 101158124SmarcelAM_INSTALL_LIBBFD 102158124SmarcelAC_EXEEXT 103158124Smarcel 104158124Smarcelhost64=false 105158124Smarceltarget64=false 106158124Smarcelbfd_default_target_size=32 107158124Smarcel 108158124Smarcel# host stuff: 109102734Sphk 110158124SmarcelAC_PROG_CC 111158124Smarcel 112158124SmarcelALL_LINGUAS="fr tr ja es sv da" 113158124SmarcelCY_GNU_GETTEXT 114158124Smarcel 115158124Smarcel# Permit host specific settings. 116158124Smarcel. ${srcdir}/configure.host 117158124Smarcel 118158124SmarcelAC_SUBST(HDEFINES) 119158124SmarcelAC_PROG_INSTALL 120158124Smarcel 121158124SmarcelBFD_HOST_64BIT_LONG=0 122142502SsamBFD_HOST_64_BIT_DEFINED=0 123158124SmarcelBFD_HOST_64_BIT= 124158124SmarcelBFD_HOST_U_64_BIT= 125102734Sphkif test "x${HOST_64BIT_TYPE}" = "xlong"; then 126102734Sphk BFD_HOST_64BIT_LONG=1 127166901Spisoelif test "x${HOST_64BIT_TYPE}" != "x"; then 128158124Smarcel BFD_HOST_64_BIT_DEFINED=1 129112270Ssobomax BFD_HOST_64_BIT=${HOST_64BIT_TYPE} 130158124Smarcel BFD_HOST_U_64_BIT=${HOST_U_64BIT_TYPE} 131158124Smarcelfi 132158124SmarcelAC_SUBST(BFD_HOST_64BIT_LONG) 133158124SmarcelAC_SUBST(BFD_HOST_64_BIT_DEFINED) 134158124SmarcelAC_SUBST(BFD_HOST_64_BIT) 135112270SsobomaxAC_SUBST(BFD_HOST_U_64_BIT) 136158124Smarcel 137158124SmarcelBFD_CC_FOR_BUILD 138158124Smarcel 139158124SmarcelAC_CHECK_HEADERS(stddef.h string.h strings.h stdlib.h time.h unistd.h) 140158124SmarcelAC_CHECK_HEADERS(fcntl.h sys/file.h sys/time.h) 141158124SmarcelAC_HEADER_TIME 142158124SmarcelAC_HEADER_DIRENT 143112270SsobomaxAC_CHECK_FUNCS(fcntl getpagesize setitimer sysconf fdopen getuid getgid) 144158124Smarcel 145158124SmarcelBFD_BINARY_FOPEN 146158124Smarcel 147158124SmarcelBFD_NEED_DECLARATION(strstr) 148158124SmarcelBFD_NEED_DECLARATION(malloc) 149158124SmarcelBFD_NEED_DECLARATION(realloc) 150158124SmarcelBFD_NEED_DECLARATION(free) 151158124SmarcelBFD_NEED_DECLARATION(getenv) 152158124Smarcel 153158124Smarcel# If we are configured native, pick a core file support file. 154158124SmarcelCOREFILE= 155112270SsobomaxCOREFLAG= 156158124SmarcelTRAD_HEADER= 157158124Smarcelif test "${target}" = "${host}"; then 158158124Smarcel case "${host}" in 159158124Smarcel alpha*-*-freebsd*) 160158124Smarcel COREFILE='' 161158124Smarcel ;; 162158124Smarcel alpha*-*-linux-gnu*) 163158124Smarcel COREFILE=trad-core.lo 164158124Smarcel TRAD_HEADER='"hosts/alphalinux.h"' 165112270Ssobomax ;; 166158124Smarcel alpha*-*-netbsd* | alpha*-*-openbsd*) 167158124Smarcel COREFILE=netbsd-core.lo 168158124Smarcel ;; 169158124Smarcel alpha*-*-*) COREFILE=osf-core.lo ;; 170158124Smarcel arm-*-freebsd*) COREFILE='' ;; 171158124Smarcel arm-*-netbsd*) COREFILE=netbsd-core.lo ;; 172158124Smarcel arm-*-riscix) COREFILE=trad-core.lo ;; 173158124Smarcel hppa*-*-hpux*) COREFILE=hpux-core.lo ;; 174158124Smarcel hppa*-*-hiux*) COREFILE=hpux-core.lo ;; 175158124Smarcel hppa*-*-mpeix*) COREFILE=hpux-core.lo ;; 176158124Smarcel hppa*-*-bsd*) COREFILE="hpux-core.lo hppabsd-core.lo" 177158124Smarcel COREFLAG="-DHPUX_CORE -DHPPABSD_CORE" ;; 178158124Smarcel i370-*-*) 179158124Smarcel COREFILE=trad-core.lo 180158124Smarcel TRAD_HEADER='"hosts/i370linux.h"' 181158124Smarcel ;; 182158124Smarcel 183158124Smarcelchangequote(,)dnl 184158124Smarcel i[3456]86-sequent-bsd*) 185166901Spisochangequote([,])dnl 186158124Smarcel COREFILE=trad-core.lo 187166901Spiso TRAD_HEADER='"hosts/symmetry.h"' 188112270Ssobomax ;; 189112270Ssobomaxchangequote(,)dnl 190102714Sphk i[3456]86-sequent-sysv4*) ;; 191158124Smarcel i[3456]86-sequent-sysv*) 19290731Sjhaychangequote([,])dnl 193158124Smarcel COREFILE=trad-core.lo 194158124Smarcel TRAD_HEADER='"hosts/symmetry.h"' 195158124Smarcel ;; 19690731Sjhaychangequote(,)dnl 197158124Smarcel i[3456]86-*-bsdi) 198158124Smarcelchangequote([,])dnl 199158124Smarcel COREFILE= 200158124Smarcel ;; 201158124Smarcelchangequote(,)dnl 202158124Smarcel i[3456]86-*-bsd* | i[34567]86-*-freebsd[123] | i[34567]86-*-freebsd[123]\.* | i[34567]86-*-freebsd4\.[01234]* | i[34567]86-*-freebsd*aout*) 203158124Smarcelchangequote([,])dnl 20490731Sjhay COREFILE=trad-core.lo 205158124Smarcel TRAD_HEADER='"hosts/i386bsd.h"' 206119814Smarcel ;; 207158124Smarcelchangequote(,)dnl 208158124Smarcel i[3456]86-*-freebsd*) 20990731Sjhaychangequote([,])dnl 210158124Smarcel COREFILE='' 211158124Smarcel TRAD_HEADER='"hosts/i386bsd.h"' 212158124Smarcel ;; 213158124Smarcelchangequote(,)dnl 214158124Smarcel i[3456]86-*-netbsd* | i[3456]86-*-openbsd*) 215158124Smarcelchangequote([,])dnl 216158124Smarcel COREFILE=netbsd-core.lo 217158124Smarcel ;; 218158124Smarcelchangequote(,)dnl 219158124Smarcel i[3456]86-esix-sysv3*) 220158124Smarcelchangequote([,])dnl 221158124Smarcel COREFILE=trad-core.lo 222158124Smarcel TRAD_HEADER='"hosts/esix.h"' 223158124Smarcel ;; 224158124Smarcelchangequote(,)dnl 225158124Smarcel i[3456]86-*-sco3.2v5*) 226158124Smarcelchangequote([,])dnl 22790731Sjhay COREFILE=sco5-core.lo 228158124Smarcel ;; 229158124Smarcelchangequote(,)dnl 230158124Smarcel i[3456]86-*-sco* | i[3456]86-*-isc*) 231158124Smarcelchangequote([,])dnl 232158124Smarcel COREFILE=trad-core.lo 233158124Smarcel TRAD_HEADER='"hosts/i386sco.h"' 234158124Smarcel ;; 235158124Smarcelchangequote(,)dnl 236158124Smarcel i[3456]86-*-mach3*) 23790731Sjhaychangequote([,])dnl 238158124Smarcel COREFILE=trad-core.lo 239158124Smarcel TRAD_HEADER='"hosts/i386mach3.h"' 240158124Smarcel ;; 241158124Smarcelchangequote(,)dnl 242158124Smarcel i[3456]86-*-linux-gnu*) 24390731Sjhaychangequote([,])dnl 244158124Smarcel COREFILE=trad-core.lo 245158124Smarcel TRAD_HEADER='"hosts/i386linux.h"' 246158124Smarcel ;; 24790731Sjhaychangequote(,)dnl 248158124Smarcel i[3456]86-*-isc*) COREFILE=trad-core.lo ;; 249158124Smarcel i[3456]86-*-aix*) COREFILE=aix386-core.lo ;; 250158124Smarcelchangequote([,])dnl 251109458Smarcel i860-*-mach3* | i860-*-osf1*) 252158124Smarcel COREFILE=trad-core.lo 253158124Smarcel TRAD_HEADER='"hosts/i860mach3.h"' 254158124Smarcel ;; 255158124Smarcel mips-dec-bsd*) 256158124Smarcel COREFILE=trad-core.lo 257158124Smarcel TRAD_HEADER='"hosts/mipsbsd.h"' 258158124Smarcel ;; 259158124Smarcel mips-dec-mach3*) 260158124Smarcel COREFILE=trad-core.lo 261158124Smarcel TRAD_HEADER='"hosts/mipsmach3.h"' 262158124Smarcel ;; 263158124Smarcel mips-*-netbsd* | mips*-*-openbsd*) 264158124Smarcel COREFILE=netbsd-core.lo 265158124Smarcel ;; 266119814Smarcel mips-dec-*) 267158124Smarcel COREFILE=trad-core.lo 268158124Smarcel TRAD_HEADER='"hosts/decstation.h"' 269158124Smarcel ;; 270158124Smarcel mips-sgi-irix4*) COREFILE=irix-core.lo ;; 271158124Smarcel mips-sgi-irix5*) COREFILE=irix-core.lo ;; 272158124Smarcel mips-sgi-irix6*) COREFILE=irix-core.lo ;; 273158124Smarcel mips-*-mach3*) 274158124Smarcel COREFILE=trad-core.lo 275158124Smarcel TRAD_HEADER='"hosts/mipsmach3.h"' 276158124Smarcel ;; 277158124Smarcel mips-*-sysv4*) ;; 278158124Smarcel mips-*-sysv* | mips-*-riscos*) 279158124Smarcel COREFILE=trad-core.lo 280158124Smarcel TRAD_HEADER='"hosts/riscos.h"' 281158124Smarcel ;; 282158124Smarcel mips-sony-bsd*) 283158124Smarcel COREFILE=trad-core.lo 284158124Smarcel TRAD_HEADER='"hosts/news-mips.h"' 285158124Smarcel ;; 286158124Smarcel m68*-bull*-sysv*) 28790731Sjhay COREFILE=trad-core.lo 288158124Smarcel TRAD_HEADER='"hosts/dpx2.h"' 289158124Smarcel ;; 290158124Smarcel m68*-hp-hpux*) COREFILE=hpux-core.lo ;; 291158124Smarcel m68*-hp-bsd*) 292158124Smarcel COREFILE=trad-core.lo 293112270Ssobomax TRAD_HEADER='"hosts/hp300bsd.h"' 294158124Smarcel ;; 295158124Smarcel m68*-*-linux-gnu*) 296158124Smarcel COREFILE=trad-core.lo 297158124Smarcel TRAD_HEADER='"hosts/m68klinux.h"' 29890731Sjhay ;; 299158124Smarcel m68*-motorola-sysv*) 300158124Smarcel COREFILE=trad-core.lo 301158124Smarcel TRAD_HEADER='"hosts/delta68.h"' 302102734Sphk ;; 30390731Sjhay m68*-sony-*) 304158124Smarcel COREFILE=trad-core.lo 305158124Smarcel TRAD_HEADER='"hosts/news.h"' 306158124Smarcel ;; 307158124Smarcel m68*-*-netbsd* | m68*-*-openbsd*) 308158124Smarcel COREFILE=netbsd-core.lo 309158124Smarcel ;; 31090731Sjhay m68*-apple-aux*) 311158124Smarcel COREFILE=trad-core.lo 312158124Smarcel TRAD_HEADER='"hosts/m68kaux.h"' 313158124Smarcel ;; 314158124Smarcel m88*-*-sysv4*) 315158124Smarcel ;; 316166901Spiso m88*-motorola-sysv*) 317158124Smarcel COREFILE=ptrace-core.lo 318158124Smarcel ;; 319166901Spiso m88*-*-mach3*) 320166901Spiso COREFILE=trad-core.lo 321158124Smarcel TRAD_HEADER='"hosts/m88kmach3.h"' 322158124Smarcel ;; 32390731Sjhay ns32k-pc532-mach) 324158124Smarcel COREFILE=trad-core.lo 325158124Smarcel TRAD_HEADER='"hosts/pc532mach.h"' 326158124Smarcel ;; 327158124Smarcel ns32k-*-netbsd* | ns32k-*-openbsd*) 328158124Smarcel COREFILE=netbsd-core.lo 32990731Sjhay ;; 330158124Smarcel rs6000-*-lynx*) 331158124Smarcel COREFILE=lynx-core.lo 332158124Smarcel ;; 333158124Smarcel rs6000-*-aix5.* | powerpc-*-aix5.*) 334158124Smarcel COREFILE=rs6000-core.lo 33590731Sjhay COREFLAG="$COREFLAG -DAIX_5_CORE -DAIX_CORE_DUMPX_CORE" 336158124Smarcel ;; 337158124Smarcelchangequote(,)dnl 338158124Smarcel rs6000-*-aix4.[3-9]* | powerpc-*-aix4.[3-9]*) 339158124Smarcelchangequote([,])dnl 34090731Sjhay COREFILE=rs6000-core.lo 341158124Smarcel COREFLAG="$COREFLAG -DAIX_CORE_DUMPX_CORE" 342158124Smarcel # Not all versions of AIX with -DAIX_CORE_DUMPX_CORE 343158124Smarcel # have c_impl as a member of struct core_dumpx 344158124Smarcel AC_MSG_CHECKING([for c_impl in struct core_dumpx]) 34590925Snyan AC_TRY_COMPILE([#include <core.h>], 34690731Sjhay [struct core_dumpx c; c.c_impl = 0;], 34790731Sjhay [AC_DEFINE(HAVE_ST_C_IMPL, 1, 348158124Smarcel [Define if struct core_dumpx has member c_impl]) 349158124Smarcel AC_MSG_RESULT(yes)],[AC_MSG_RESULT(no)]) 350158124Smarcel ;; 351158124Smarcel rs6000-*-aix4*) COREFILE=rs6000-core.lo ;; 352158124Smarcel rs6000-*-*) COREFILE=rs6000-core.lo ;; 353158124Smarcel powerpc-*-aix4*) COREFILE=rs6000-core.lo ;; 354158124Smarcel powerpc-*-aix*) COREFILE=rs6000-core.lo ;; 35590731Sjhay powerpc-*-beos*) ;; 356158124Smarcel powerpc-*-freebsd*) COREFILE='' ;; 357158124Smarcel powerpc-*-netbsd*) COREFILE=netbsd-core.lo ;; 358158124Smarcel powerpc-*-*bsd*) COREFILE=netbsd-core.lo ;; 359158124Smarcel s390*-*-*) COREFILE=trad-core.lo ;; 360158124Smarcel sh*-*-netbsd*) COREFILE=netbsd-core.lo ;; 361158124Smarcel sparc-*-netbsd* | sparc*-*-openbsd*) 362158124Smarcel COREFILE=netbsd-core.lo 363158124Smarcel ;; 364158124Smarcel tahoe-*-*) 365158124Smarcel COREFILE=trad-core.lo 366158124Smarcel TRAD_HEADER='"hosts/tahoe.h"' 367158124Smarcel ;; 368158124Smarcel vax-*-netbsd*) COREFILE=netbsd-core.lo ;; 369158124Smarcel vax-*-ultrix2*) 370158124Smarcel COREFILE=trad-core.lo 371158124Smarcel TRAD_HEADER='"hosts/vaxult2.h"' 372158124Smarcel ;; 373158124Smarcel vax-*-ultrix*) 374158124Smarcel COREFILE=trad-core.lo 375158124Smarcel TRAD_HEADER='"hosts/vaxult2.h"' 376158124Smarcel ;; 377158124Smarcel vax-*-*) 378158124Smarcel COREFILE=trad-core.lo 379158124Smarcel TRAD_HEADER='"hosts/vaxbsd.h"' 380158124Smarcel ;; 38190731Sjhay x86_64-*-netbsd*) COREFILE=netbsd-core.lo ;; 38290731Sjhay esac 383158124Smarcel 384158124Smarcel case "$COREFILE" in 385112270Ssobomax aix386-core.lo) COREFLAG=-DAIX386_CORE ;; 386158124Smarcel hppabsd-core.lo) COREFLAG=-DHPPABSD_CORE ;; 387158124Smarcel hpux-core.lo) COREFLAG=-DHPUX_CORE ;; 388158124Smarcel irix-core.lo) COREFLAG=-DIRIX_CORE ;; 389158124Smarcel lynx-core.lo) COREFLAG=-DLYNX_CORE ;; 390112270Ssobomax netbsd-core.lo) COREFLAG=-DNETBSD_CORE ;; 391158124Smarcel osf-core.lo) COREFLAG=-DOSF_CORE ;; 392112270Ssobomax ptrace-core.lo) COREFLAG=-DPTRACE_CORE ;; 393158124Smarcel rs6000-core.lo) COREFLAG="$COREFLAG -DAIX_CORE" ;; 394158124Smarcel sco5-core.lo) COREFLAG="$COREFLAG -DSCO5_CORE" ;; 395158124Smarcel trad-core.lo) COREFLAG="$COREFLAG -DTRAD_CORE" ;; 396158124Smarcel esac 397158124Smarcel 398158124Smarcel # ELF corefile support has several flavors, but all of 399158124Smarcel # them use something called <sys/procfs.h> 400158124Smarcel AC_CHECK_HEADERS(sys/procfs.h) 401158124Smarcel if test "$ac_cv_header_sys_procfs_h" = yes; then 402158124Smarcel BFD_HAVE_SYS_PROCFS_TYPE(prstatus_t) 403158124Smarcel BFD_HAVE_SYS_PROCFS_TYPE(prstatus32_t) 404158124Smarcel BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(prstatus_t, pr_who) 405158124Smarcel BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(prstatus32_t, pr_who) 406158124Smarcel BFD_HAVE_SYS_PROCFS_TYPE(pstatus_t) 407112270Ssobomax BFD_HAVE_SYS_PROCFS_TYPE(pxstatus_t) 408158124Smarcel BFD_HAVE_SYS_PROCFS_TYPE(pstatus32_t) 409158124Smarcel BFD_HAVE_SYS_PROCFS_TYPE(prpsinfo_t) 410112270Ssobomax BFD_HAVE_SYS_PROCFS_TYPE(prpsinfo32_t) 411158124Smarcel BFD_HAVE_SYS_PROCFS_TYPE(psinfo_t) 412158124Smarcel BFD_HAVE_SYS_PROCFS_TYPE(psinfo32_t) 413158124Smarcel BFD_HAVE_SYS_PROCFS_TYPE(lwpstatus_t) 41490731Sjhay BFD_HAVE_SYS_PROCFS_TYPE(lwpxstatus_t) 415158124Smarcel BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(lwpstatus_t, pr_context) 416158124Smarcel BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(lwpstatus_t, pr_reg) 417158124Smarcel BFD_HAVE_SYS_PROCFS_TYPE(win32_pstatus_t) 418158124Smarcel fi 419158124Smarcelfi 420158124SmarcelAC_SUBST(COREFILE) 421158124SmarcelAC_SUBST(COREFLAG) 422158124Smarcelif test -n "$TRAD_HEADER"; then 423158124Smarcel AC_DEFINE_UNQUOTED(TRAD_HEADER, $TRAD_HEADER, 424158124Smarcel [Name of host specific header file to include in trad-core.c.]) 425158124Smarcelfi 426158124Smarcel 427158124Smarcel# Horrible hacks to build DLLs on Windows. 428158124SmarcelWIN32LDFLAGS= 429158124SmarcelWIN32LIBADD= 43090731Sjhaycase "${host}" in 43190731Sjhay*-*-cygwin*) 432158124Smarcel if test "$enable_shared" = "yes"; then 433158124Smarcel WIN32LDFLAGS="-no-undefined" 43490731Sjhay WIN32LIBADD="-L`pwd`/../libiberty -liberty -L`pwd`/../intl -lintl -lcygwin -lkernel32" 435158124Smarcel fi 436158124Smarcel ;; 437158124Smarcel*-*-linux*) 43890731Sjhay # We borrow WIN32LIBADD so that the shared libbfd won't depend on 439158124Smarcel # libiberty.a. 440158124Smarcel case "${host}" in 441158124Smarcel mips*-*-linux*) 44290731Sjhay # Linux/MIPS uses PIC by default. 443158124Smarcel if test "$enable_shared" = "yes"; then 444158124Smarcel WIN32LIBADD="-L../libiberty -liberty" 445158124Smarcel fi 446158124Smarcel ;; 447158124Smarcel *) 448158124Smarcelchangequote(,)dnl 449158124Smarcel x=`sed -n -e 's/^[ ]*PICFLAG[ ]*=[ ]*//p' < ../libiberty/Makefile | tail -1` 450158124Smarcelchangequote([,])dnl 451158124Smarcel if test -n "$x"; then 452158124Smarcel WIN32LIBADD="-L../libiberty/pic -liberty" 453158124Smarcel fi 454158124Smarcel ;; 45590731Sjhay esac 45690731Sjhay ;; 457102714Sphkesac 458158124SmarcelAC_SUBST(WIN32LDFLAGS) 45990731SjhayAC_SUBST(WIN32LIBADD) 46090731Sjhay 461158124Smarcel# target stuff: 462158124Smarcel 463158124Smarcel# Canonicalize the secondary target names. 464158124Smarcelif test -n "$enable_targets" ; then 46590731Sjhay for targ in `echo $enable_targets | sed 's/,/ /g'` 466158124Smarcel do 467158124Smarcel result=`$ac_config_sub $targ 2>/dev/null` 468158124Smarcel if test -n "$result" ; then 469158124Smarcel canon_targets="$canon_targets $result" 470158124Smarcel else 471158124Smarcel # Allow targets that config.sub doesn't recognize, like "all". 472118292Sambrisko canon_targets="$canon_targets $targ" 473158124Smarcel fi 474158124Smarcel done 47590731Sjhayfi 476158124Smarcel 477158124Smarcelall_targets=false 478158124Smarceldefvec= 479158124Smarcelselvecs= 480158124Smarcelselarchs= 481158124SmarcelTDEFINES= 482158124Smarcelfor targ in $target $canon_targets 483158124Smarceldo 484158124Smarcel if test "x$targ" = "xall"; then 485158124Smarcel all_targets=true 486158124Smarcel else 487118292Sambrisko . $srcdir/config.bfd 488158124Smarcel if test "x$targ" = "x$target"; then 48990731Sjhay defvec=$targ_defvec 490158124Smarcel fi 491158124Smarcel selvecs="$selvecs $targ_defvec $targ_selvecs" 492158124Smarcel selarchs="$selarchs $targ_archs" 493158124Smarcel TDEFINES="$TDEFINES $targ_cflags" 494158124Smarcel fi 495158124Smarceldone 496158124SmarcelAC_SUBST(TDEFINES) 497158124Smarcel 498158124Smarcel# This processing still needs to be done if we're to decide properly whether 499158124Smarcel# 64-bit support needs to be compiled in. Currently, it will be included if 500158124Smarcel# the default or any other explicitly requested target requires it; it 501158124Smarcel# will not be included on a 32-bit host if no 64-bit target is requested, and 502158124Smarcel# no "--with-64-bit-bfd" option is given, even if "--enable-targets=all" is 503158124Smarcel# used. 504158124Smarcel 505158124Smarcel# uniq the default and selected vectors in all the configured targets. 506158124Smarcelf="" 507158124Smarcelfor i in $selvecs ; do 508158124Smarcel case " $f " in 50990731Sjhay *" $i "*) ;; 51090731Sjhay *) f="$f $i" ;; 511102714Sphk esac 512158124Smarceldone 51390731Sjhayselvecs="$f" 51490731Sjhay 515158124Smarcel 516158124Smarcel# uniq the architectures in all the configured targets. 517158124Smarcelf="" 518158124Smarcelfor i in $selarchs ; do 519158124Smarcel case " $f " in 520158124Smarcel *" $i "*) ;; 521158124Smarcel *) f="$f $i" ;; 522158124Smarcel esac 523158124Smarceldone 524158124Smarcelselarchs="$f" 525158124Smarcel 526158124Smarcel# Target backend .o files. 527158124Smarceltb= 528158124Smarcel 529158124Smarcelelf="elf.lo elflink.lo elf-strtab.lo elf-eh-frame.lo dwarf1.lo" 530158124Smarcel 531158124Smarcelfor vec in $selvecs 532158124Smarceldo 533158124Smarcel target_size=32 534158124Smarcel case "$vec" in 535158124Smarcel # This list is alphabetized to make it easy to compare 536158124Smarcel # with the two vector lists in targets.c. For the same reason, 537158124Smarcel # use one entry per line, even though this leads to long lines. 538158124Smarcel a29kcoff_big_vec) tb="$tb coff-a29k.lo cofflink.lo" ;; 539158124Smarcel a_out_adobe_vec) tb="$tb aout-adobe.lo aout32.lo" ;; 540158124Smarcel aix5coff64_vec) tb="$tb coff64-rs6000.lo xcofflink.lo aix5ppc-core.lo"; target_size=64 ;; 541158124Smarcel aout0_big_vec) tb="$tb aout0.lo aout32.lo" ;; 542158124Smarcel aout_arm_big_vec) tb="$tb aout-arm.lo aout32.lo" ;; 543158124Smarcel aout_arm_little_vec) tb="$tb aout-arm.lo aout32.lo" ;; 544158124Smarcel aout_mips_big_vec) tb="$tb mipsbsd.lo aout32.lo" ;; 545158124Smarcel aout_mips_little_vec) tb="$tb mipsbsd.lo aout32.lo" ;; 546158124Smarcel apollocoff_vec) tb="$tb coff-apollo.lo" ;; 54790731Sjhay arm_epoc_pe_big_vec) tb="$tb epoc-pe-arm.lo peigen.lo cofflink.lo " ;; 54890731Sjhay arm_epoc_pe_little_vec) tb="$tb epoc-pe-arm.lo peigen.lo cofflink.lo " ;; 54990731Sjhay arm_epoc_pei_big_vec) tb="$tb epoc-pei-arm.lo peigen.lo cofflink.lo " ;; 550102714Sphk arm_epoc_pei_little_vec) tb="$tb epoc-pei-arm.lo peigen.lo cofflink.lo " ;; 551158124Smarcel armcoff_big_vec) tb="$tb coff-arm.lo cofflink.lo " ;; 55290731Sjhay armcoff_little_vec) tb="$tb coff-arm.lo cofflink.lo " ;; 55390731Sjhay armnetbsd_vec) tb="$tb armnetbsd.lo aout32.lo" ;; 554158124Smarcel armpe_big_vec) tb="$tb pe-arm.lo peigen.lo cofflink.lo " ;; 555158124Smarcel armpe_little_vec) tb="$tb pe-arm.lo peigen.lo cofflink.lo " ;; 556158124Smarcel armpei_big_vec) tb="$tb pei-arm.lo peigen.lo cofflink.lo " ;; 55790731Sjhay armpei_little_vec) tb="$tb pei-arm.lo peigen.lo cofflink.lo " ;; 558158124Smarcel b_out_vec_big_host) tb="$tb bout.lo aout32.lo" ;; 559158124Smarcel b_out_vec_little_host) tb="$tb bout.lo aout32.lo" ;; 560158124Smarcel bfd_efi_app_ia32_vec) tb="$tb efi-app-ia32.lo peigen.lo cofflink.lo" ;; 561158124Smarcel bfd_efi_app_ia64_vec) tb="$tb efi-app-ia64.lo pepigen.lo cofflink.lo"; target_size=64 ;; 562158124Smarcel bfd_elf32_avr_vec) tb="$tb elf32-avr.lo elf32.lo $elf" ;; 56390731Sjhay bfd_elf32_big_generic_vec) tb="$tb elf32-gen.lo elf32.lo $elf" ;; 564158124Smarcel bfd_elf32_bigarc_vec) tb="$tb elf32-arc.lo elf32.lo $elf" ;; 565158124Smarcel bfd_elf32_bigarm_oabi_vec) tb="$tb elfarm-oabi.lo elf32.lo $elf" ;; 566158124Smarcel bfd_elf32_bigarm_vec) tb="$tb elfarm-nabi.lo elf32.lo $elf" ;; 567158124Smarcel bfd_elf32_bigmips_vec) tb="$tb elf32-mips.lo elfxx-mips.lo elf32.lo $elf ecofflink.lo" ;; 568158124Smarcel bfd_elf32_cris_vec) tb="$tb elf32-cris.lo elf32.lo $elf" ;; 569158124Smarcel bfd_elf32_d10v_vec) tb="$tb elf32-d10v.lo elf32.lo $elf" ;; 570158124Smarcel bfd_elf32_d30v_vec) tb="$tb elf32-d30v.lo elf32.lo $elf" ;; 571158124Smarcel bfd_elf32_dlx_big_vec) tb="$tb elf32-dlx.lo elf32.lo $elf" ;; 572158124Smarcel bfd_elf32_fr30_vec) tb="$tb elf32-fr30.lo elf32.lo $elf" ;; 573158124Smarcel bfd_elf32_frv_vec) tb="$tb elf32-frv.lo elf32.lo $elf" ;; 574158124Smarcel bfd_elf32_h8300_vec) tb="$tb elf32-h8300.lo elf32.lo $elf" ;; 575158124Smarcel bfd_elf32_hppa_linux_vec) tb="$tb elf32-hppa.lo elf32.lo $elf" ;; 576158124Smarcel bfd_elf32_hppa_vec) tb="$tb elf32-hppa.lo elf32.lo $elf" ;; 577158124Smarcel bfd_elf32_i370_vec) tb="$tb elf32-i370.lo elf32.lo $elf" ;; 578158124Smarcel bfd_elf32_i386_freebsd_vec) tb="$tb elf32-i386-fbsd.lo elf32.lo $elf" ;; 579158124Smarcel bfd_elf32_i386_vec) tb="$tb elf32-i386.lo elf32.lo $elf" ;; 580158124Smarcel bfd_elf32_i860_little_vec) tb="$tb elf32-i860.lo elf32.lo $elf" ;; 581158124Smarcel bfd_elf32_i860_vec) tb="$tb elf32-i860.lo elf32.lo $elf" ;; 582158124Smarcel bfd_elf32_i960_vec) tb="$tb elf32-i960.lo elf32.lo $elf" ;; 58390731Sjhay bfd_elf32_ia64_big_vec) tb="$tb elf32-ia64.lo elf32.lo $elf" ;; 58490731Sjhay bfd_elf32_ia64_hpux_big_vec) tb="$tb elf32-ia64.lo elf32.lo $elf";; 585102714Sphk bfd_elf32_little_generic_vec) tb="$tb elf32-gen.lo elf32.lo $elf" ;; 586158124Smarcel bfd_elf32_littlearc_vec) tb="$tb elf32-arc.lo elf32.lo $elf" ;; 587166901Spiso bfd_elf32_littlearm_oabi_vec) tb="$tb elfarm-oabi.lo elf32.lo $elf" ;; 58890731Sjhay bfd_elf32_littlearm_vec) tb="$tb elfarm-nabi.lo elf32.lo $elf" ;; 589158124Smarcel bfd_elf32_littlemips_vec) tb="$tb elf32-mips.lo elfxx-mips.lo elf32.lo $elf ecofflink.lo" ;; 59090731Sjhay bfd_elf32_m32r_vec) tb="$tb elf32-m32r.lo elf32.lo $elf" ;; 591158124Smarcel bfd_elf32_m68hc11_vec) tb="$tb elf32-m68hc11.lo elf32.lo $elf" ;; 592158124Smarcel bfd_elf32_m68hc12_vec) tb="$tb elf32-m68hc12.lo elf32.lo $elf" ;; 59390731Sjhay bfd_elf32_m68k_vec) tb="$tb elf32-m68k.lo elf32.lo $elf" ;; 594158124Smarcel bfd_elf32_m88k_vec) tb="$tb elf32-m88k.lo elf32.lo $elf" ;; 595158124Smarcel bfd_elf32_mcore_big_vec) tb="$tb elf32-mcore.lo elf32.lo $elf" ;; 596158124Smarcel bfd_elf32_mcore_little_vec) tb="$tb elf32-mcore.lo elf32.lo $elf" ;; 597158124Smarcel bfd_elf32_mn10200_vec) tb="$tb elf-m10200.lo elf32.lo $elf" ;; 598158124Smarcel bfd_elf32_mn10300_vec) tb="$tb elf-m10300.lo elf32.lo $elf" ;; 599158124Smarcel bfd_elf32_openrisc_vec) tb="$tb elf32-openrisc.lo elf32.lo $elf" ;; 600158124Smarcel bfd_elf32_or32_big_vec) tb="$tb elf32-or32.lo elf32.lo $elf" ;; 601158124Smarcel bfd_elf32_pj_vec) tb="$tb elf32-pj.lo elf32.lo $elf";; 602158124Smarcel bfd_elf32_pjl_vec) tb="$tb elf32-pj.lo elf32.lo $elf";; 603158124Smarcel bfd_elf32_powerpc_vec) tb="$tb elf32-ppc.lo elf32.lo $elf" ;; 604158124Smarcel bfd_elf32_powerpcle_vec) tb="$tb elf32-ppc.lo elf32.lo $elf" ;; 605158124Smarcel bfd_elf32_s390_vec) tb="$tb elf32-s390.lo elf32.lo $elf" ;; 606170386Spiso # FIXME: We include cofflink.lo not because it's needed for 607158124Smarcel # bfd_elf32_sh64[l]_vec, but because we include bfd_elf32_sh[l]_vec 608170386Spiso # which needs it but does not list it. Should be fixed in right place. 609170386Spiso bfd_elf32_sh64_vec) tb="$tb elf32-sh64.lo elf32-sh64-com.lo elf32.lo $elf cofflink.lo" target_size=64 ;; 610170386Spiso bfd_elf32_sh64l_vec) tb="$tb elf32-sh64.lo elf32-sh64-com.lo elf32.lo $elf cofflink.lo" target_size=64 ;; 611158124Smarcel bfd_elf32_sh64lnbsd_vec) tb="$tb elf32-sh64-nbsd.lo elf32-sh64-com.lo elf32.lo $elf cofflink.lo" ;; 612102895Sphk bfd_elf32_sh64nbsd_vec) tb="$tb elf32-sh64-nbsd.lo elf32-sh64-com.lo elf32.lo $elf cofflink.lo" ;; 613158124Smarcel bfd_elf32_sh_vec) tb="$tb elf32-sh.lo elf32.lo $elf coff-sh.lo" ;; 614158124Smarcel bfd_elf32_shblin_vec) tb="$tb elf32-sh-lin.lo elf32.lo $elf coff-sh.lo cofflink.lo" ;; 615158124Smarcel bfd_elf32_shl_vec) tb="$tb elf32-sh.lo elf32.lo $elf coff-sh.lo" ;; 616158124Smarcel bfd_elf32_shlin_vec) tb="$tb elf32-sh-lin.lo elf32.lo $elf coff-sh.lo cofflink.lo" ;; 617158124Smarcel bfd_elf32_shlnbsd_vec) tb="$tb elf32-sh-nbsd.lo elf32.lo $elf coff-sh.lo cofflink.lo" ;; 618158124Smarcel bfd_elf32_shnbsd_vec) tb="$tb elf32-sh-nbsd.lo elf32.lo $elf coff-sh.lo cofflink.lo" ;; 619158124Smarcel bfd_elf32_sparc_vec) tb="$tb elf32-sparc.lo elf32.lo $elf" ;; 620158124Smarcel bfd_elf32_tradbigmips_vec) tb="$tb elf32-mips.lo elfxx-mips.lo elf32.lo $elf ecofflink.lo" ;; 621158124Smarcel bfd_elf32_tradlittlemips_vec) tb="$tb elf32-mips.lo elfxx-mips.lo elf32.lo $elf ecofflink.lo" ;; 622158124Smarcel bfd_elf32_us_cris_vec) tb="$tb elf32-cris.lo elf32.lo $elf" ;; 623158124Smarcel bfd_elf32_v850_vec) tb="$tb elf32-v850.lo elf32.lo $elf" ;; 624158124Smarcel bfd_elf32_vax_vec) tb="$tb elf32-vax.lo elf32.lo $elf" ;; 625158124Smarcel bfd_elf32_xstormy16_vec) tb="$tb elf32-xstormy16.lo elf32.lo $elf" ;; 626158124Smarcel bfd_elf64_alpha_freebsd_vec) tb="$tb elf64-alpha-fbsd.lo elf64.lo $elf"; target_size=64 ;; 62790731Sjhay bfd_elf64_alpha_vec) tb="$tb elf64-alpha.lo elf64.lo $elf"; target_size=64 ;; 62890731Sjhay bfd_elf64_big_generic_vec) tb="$tb elf64-gen.lo elf64.lo $elf"; target_size=64 ;; 629158124Smarcel bfd_elf64_bigmips_vec) tb="$tb elf64-mips.lo elf64.lo elfxx-mips.lo elf32.lo $elf ecofflink.lo"; target_size=64 ;; 630158124Smarcel bfd_elf64_hppa_linux_vec) tb="$tb elf64-hppa.lo elf64.lo $elf"; target_size=64 ;; 631166901Spiso bfd_elf64_hppa_vec) tb="$tb elf64-hppa.lo elf64.lo $elf"; target_size=64 ;; 632158124Smarcel bfd_elf64_ia64_aix_big_vec) tb="$tb elf64-ia64.lo elf64.lo $elf"; target_size=64 ;; 633158124Smarcel bfd_elf64_ia64_aix_little_vec) tb="$tb elf64-ia64.lo elf64.lo $elf"; target_size=64 ;; 634158124Smarcel bfd_elf64_ia64_big_vec) tb="$tb elf64-ia64.lo elf64.lo $elf"; target_size=64 ;; 635158124Smarcel bfd_elf64_ia64_hpux_big_vec) tb="$tb elf64-ia64.lo elf64.lo $elf"; target_size=64 ;; 636158124Smarcel bfd_elf64_ia64_little_vec) tb="$tb elf64-ia64.lo elf64.lo $elf"; target_size=64 ;; 637158124Smarcel bfd_elf64_little_generic_vec) tb="$tb elf64-gen.lo elf64.lo $elf"; target_size=64 ;; 638158124Smarcel bfd_elf64_littlemips_vec) tb="$tb elf64-mips.lo elf64.lo elfxx-mips.lo elf32.lo $elf ecofflink.lo"; target_size=64 ;; 639158124Smarcel bfd_elf64_mmix_vec) tb="$tb elf64-mmix.lo elf64.lo $elf" target_size=64 ;; 64090731Sjhay bfd_elf64_powerpc_vec) tb="$tb elf64-ppc.lo elf64-gen.lo elf64.lo $elf"; target_size=64 ;; 64190731Sjhay bfd_elf64_powerpcle_vec) tb="$tb elf64-ppc.lo elf64-gen.lo elf64.lo $elf" target_size=64 ;; 642102714Sphk bfd_elf64_s390_vec) tb="$tb elf64-s390.lo elf64.lo $elf"; target_size=64 ;; 643158124Smarcel bfd_elf64_sh64_vec) tb="$tb elf64-sh64.lo elf64.lo $elf" target_size=64 ;; 644158124Smarcel bfd_elf64_sh64l_vec) tb="$tb elf64-sh64.lo elf64.lo $elf" target_size=64 ;; 64590731Sjhay bfd_elf64_sh64lnbsd_vec) tb="$tb elf64-sh64-nbsd.lo elf64.lo $elf" target_size=64 ;; 646158124Smarcel bfd_elf64_sh64nbsd_vec) tb="$tb elf64-sh64-nbsd.lo elf64.lo $elf" target_size=64 ;; 647158124Smarcel bfd_elf64_sparc_vec) tb="$tb elf64-sparc.lo elf64.lo $elf"; target_size=64 ;; 648158124Smarcel bfd_elf64_tradbigmips_vec) tb="$tb elf64-mips.lo elf64.lo elfxx-mips.lo elf32.lo $elf ecofflink.lo"; target_size=64 ;; 64990731Sjhay bfd_elf64_tradlittlemips_vec) tb="$tb elf64-mips.lo elf64.lo elfxx-mips.lo elf32.lo $elf ecofflink.lo"; target_size=64 ;; 65090731Sjhay bfd_elf64_x86_64_vec) tb="$tb elf64-x86-64.lo elf64.lo $elf"; target_size=64 ;; 651158124Smarcel bfd_mmo_vec) tb="$tb mmo.lo" target_size=64 ;; 652158124Smarcel bfd_powerpc_pe_vec) tb="$tb pe-ppc.lo peigen.lo cofflink.lo" ;; 653158124Smarcel bfd_powerpc_pei_vec) tb="$tb pei-ppc.lo peigen.lo cofflink.lo" ;; 654158124Smarcel bfd_powerpcle_pe_vec) tb="$tb pe-ppc.lo peigen.lo cofflink.lo" ;; 655158124Smarcel bfd_powerpcle_pei_vec) tb="$tb pei-ppc.lo peigen.lo cofflink.lo" ;; 656158124Smarcel cris_aout_vec) tb="$tb aout-cris.lo" ;; 657158124Smarcel demo_64_vec) tb="$tb demo64.lo aout64.lo"; target_size=64 ;; 658158124Smarcel ecoff_big_vec) tb="$tb coff-mips.lo ecoff.lo ecofflink.lo" ;; 659158124Smarcel ecoff_biglittle_vec) tb="$tb coff-mips.lo ecoff.lo ecofflink.lo" ;; 660158124Smarcel ecoff_little_vec) tb="$tb coff-mips.lo ecoff.lo ecofflink.lo" ;; 661158124Smarcel ecoffalpha_little_vec) tb="$tb coff-alpha.lo ecoff.lo ecofflink.lo"; target_size=64 ;; 662158124Smarcel go32coff_vec) tb="$tb coff-go32.lo cofflink.lo" ;; 663158124Smarcel go32stubbedcoff_vec) tb="$tb coff-stgo32.lo cofflink.lo" ;; 664158124Smarcel h8300coff_vec) tb="$tb coff-h8300.lo reloc16.lo" ;; 665158124Smarcel h8500coff_vec) tb="$tb coff-h8500.lo reloc16.lo" ;; 666158124Smarcel host_aout_vec) tb="$tb host-aout.lo aout32.lo" ;; 667158124Smarcel hp300bsd_vec) tb="$tb hp300bsd.lo aout32.lo" ;; 668158124Smarcel hp300hpux_vec) tb="$tb hp300hpux.lo aout32.lo" ;; 669158124Smarcel i386aout_vec) tb="$tb i386aout.lo aout32.lo" ;; 670158124Smarcel i386bsd_vec) tb="$tb i386bsd.lo aout32.lo" ;; 671158124Smarcel i386coff_vec) tb="$tb coff-i386.lo cofflink.lo" ;; 672158124Smarcel i386dynix_vec) tb="$tb i386dynix.lo aout32.lo" ;; 673158124Smarcel i386freebsd_vec) tb="$tb i386freebsd.lo aout32.lo" ;; 674158124Smarcel i386linux_vec) tb="$tb i386linux.lo aout32.lo" ;; 675158124Smarcel i386lynx_aout_vec) tb="$tb i386lynx.lo lynx-core.lo aout32.lo" ;; 676158124Smarcel i386lynx_coff_vec) tb="$tb cf-i386lynx.lo cofflink.lo lynx-core.lo" ;; 677158124Smarcel i386mach3_vec) tb="$tb i386mach3.lo aout32.lo" ;; 678158124Smarcel i386msdos_vec) tb="$tb i386msdos.lo" ;; 679158124Smarcel i386netbsd_vec) tb="$tb i386netbsd.lo aout32.lo" ;; 680158124Smarcel i386os9k_vec) tb="$tb i386os9k.lo aout32.lo" ;; 681158124Smarcel i386pe_vec) tb="$tb pe-i386.lo peigen.lo cofflink.lo" ;; 68290731Sjhay i386pei_vec) tb="$tb pei-i386.lo peigen.lo cofflink.lo" ;; 68390731Sjhay i860coff_vec) tb="$tb coff-i860.lo cofflink.lo" ;; 684102714Sphk icoff_big_vec) tb="$tb coff-i960.lo cofflink.lo" ;; 685158124Smarcel icoff_little_vec) tb="$tb coff-i960.lo cofflink.lo" ;; 68690731Sjhay ieee_vec) tb="$tb ieee.lo" ;; 687158124Smarcel m68k4knetbsd_vec) tb="$tb m68k4knetbsd.lo aout32.lo" ;; 68890731Sjhay m68kaux_coff_vec) tb="$tb coff-aux.lo coff-m68k.lo cofflink.lo" ;; 689158124Smarcel m68kcoff_vec) tb="$tb coff-m68k.lo cofflink.lo" ;; 690158124Smarcel m68kcoffun_vec) tb="$tb coff-u68k.lo coff-m68k.lo cofflink.lo" ;; 691158124Smarcel m68klinux_vec) tb="$tb m68klinux.lo aout32.lo" ;; 692158124Smarcel m68klynx_aout_vec) tb="$tb m68klynx.lo lynx-core.lo aout32.lo" ;; 693158124Smarcel m68klynx_coff_vec) tb="$tb cf-m68klynx.lo coff-m68k.lo cofflink.lo lynx-core.lo" ;; 69490731Sjhay m68knetbsd_vec) tb="$tb m68knetbsd.lo aout32.lo" ;; 695158124Smarcel m68ksysvcoff_vec) tb="$tb coff-svm68k.lo cofflink.lo" ;; 696158124Smarcel m88kbcs_vec) tb="$tb coff-m88k.lo" ;; 697158124Smarcel m88kmach3_vec) tb="$tb m88kmach3.lo aout32.lo" ;; 698158124Smarcel mcore_pe_big_vec) tb="$tb pe-mcore.lo peigen.lo cofflink.lo" ;; 699158124Smarcel mcore_pe_little_vec) tb="$tb pe-mcore.lo peigen.lo cofflink.lo" ;; 700158124Smarcel mcore_pei_big_vec) tb="$tb pei-mcore.lo peigen.lo cofflink.lo" ;; 70190731Sjhay mcore_pei_little_vec) tb="$tb pei-mcore.lo peigen.lo cofflink.lo" ;; 702158124Smarcel mipslpe_vec) tb="$tb pe-mips.lo peigen.lo cofflink.lo" ;; 703158124Smarcel mipslpei_vec) tb="$tb pei-mips.lo peigen.lo cofflink.lo" ;; 70490731Sjhay newsos3_vec) tb="$tb newsos3.lo aout32.lo" ;; 705158124Smarcel nlm32_alpha_vec) tb="$tb nlm32-alpha.lo nlm32.lo nlm.lo"; target_size=64 ;; 706158124Smarcel nlm32_i386_vec) tb="$tb nlm32-i386.lo nlm32.lo nlm.lo" ;; 707119814Smarcel nlm32_powerpc_vec) tb="$tb nlm32-ppc.lo nlm32.lo nlm.lo" ;; 70890731Sjhay nlm32_sparc_vec) tb="$tb nlm32-sparc.lo nlm32.lo nlm.lo" ;; 70990731Sjhay or32coff_big_vec) tb="$tb coff-or32.lo cofflink.lo" ;; 71090731Sjhay pc532machaout_vec) tb="$tb pc532-mach.lo aout-ns32k.lo" ;; 71190731Sjhay pc532netbsd_vec) tb="$tb ns32knetbsd.lo aout-ns32k.lo" ;; 71290731Sjhay pdp11_aout_vec) tb="$tb pdp11.lo" ;; 713 pmac_xcoff_vec) tb="$tb coff-rs6000.lo xcofflink.lo" ;; 714 ppcboot_vec) tb="$tb ppcboot.lo" ;; 715 riscix_vec) tb="$tb aout32.lo riscix.lo" ;; 716 rs6000coff64_vec) tb="$tb coff64-rs6000.lo xcofflink.lo aix5ppc-core.lo"; target_size=64 ;; 717 rs6000coff_vec) tb="$tb coff-rs6000.lo xcofflink.lo" ;; 718 shcoff_small_vec) tb="$tb coff-sh.lo cofflink.lo" ;; 719 shcoff_vec) tb="$tb coff-sh.lo cofflink.lo" ;; 720 shlcoff_small_vec) tb="$tb coff-sh.lo cofflink.lo" ;; 721 shlcoff_vec) tb="$tb coff-sh.lo cofflink.lo" ;; 722 shlpe_vec) tb="$tb pe-sh.lo coff-sh.lo peigen.lo cofflink.lo" ;; 723 shlpei_vec) tb="$tb pei-sh.lo coff-sh.lo peigen.lo cofflink.lo" ;; 724 som_vec) tb="$tb som.lo" ;; 725 sparccoff_vec) tb="$tb coff-sparc.lo" ;; 726 sparcle_aout_vec) tb="$tb aout-sparcle.lo aout32.lo" ;; 727 sparclinux_vec) tb="$tb sparclinux.lo aout32.lo" ;; 728 sparclynx_aout_vec) tb="$tb sparclynx.lo lynx-core.lo aout32.lo" ;; 729 sparclynx_coff_vec) tb="$tb cf-sparclynx.lo lynx-core.lo" ;; 730 sparcnetbsd_vec) tb="$tb sparcnetbsd.lo aout32.lo" ;; 731 sunos_big_vec) tb="$tb sunos.lo aout32.lo" ;; 732 tic30_aout_vec) tb="$tb aout-tic30.lo" ;; 733 tic30_coff_vec) tb="$tb coff-tic30.lo" ;; 734 tic54x_coff0_beh_vec) tb="$tb coff-tic54x.lo" ;; 735 tic54x_coff0_vec) tb="$tb coff-tic54x.lo" ;; 736 tic54x_coff1_beh_vec) tb="$tb coff-tic54x.lo" ;; 737 tic54x_coff1_vec) tb="$tb coff-tic54x.lo" ;; 738 tic54x_coff2_beh_vec) tb="$tb coff-tic54x.lo" ;; 739 tic54x_coff2_vec) tb="$tb coff-tic54x.lo" ;; 740 tic80coff_vec) tb="$tb coff-tic80.lo cofflink.lo" ;; 741 vaxnetbsd_vec) tb="$tb vaxnetbsd.lo aout32.lo" ;; 742 vax1knetbsd_vec) tb="$tb vax1knetbsd.lo aout32.lo" ;; 743 vaxbsd_vec) tb="$tb vaxbsd.lo aout32.lo" ;; 744 versados_vec) tb="$tb versados.lo" ;; 745 vms_alpha_vec) tb="$tb vms.lo vms-hdr.lo vms-gsd.lo vms-tir.lo vms-misc.lo"; target_size=64 ;; 746 vms_vax_vec) tb="$tb vms.lo vms-hdr.lo vms-gsd.lo vms-tir.lo vms-misc.lo" ;; 747 w65_vec) tb="$tb coff-w65.lo reloc16.lo" ;; 748 we32kcoff_vec) tb="$tb coff-we32k.lo" ;; 749 z8kcoff_vec) tb="$tb coff-z8k.lo reloc16.lo" ;; 750 751 # These appear out of order in targets.c 752 srec_vec) tb="$tb srec.lo" ;; 753 symbolsrec_vec) tb="$tb srec.lo" ;; 754 tekhex_vec) tb="$tb tekhex.lo" ;; 755 cisco_core_big_vec) tb="$tb cisco-core.lo" ;; 756 cisco_core_little_vec) tb="$tb cisco-core.lo" ;; 757 758 "") ;; 759 *) AC_MSG_ERROR(*** unknown target vector $vec) ;; 760 esac 761 762 if test ${target_size} = 64; then 763 target64=true 764 fi 765 if test x"${vec}" = x"${defvec}"; then 766 bfd_default_target_size=${target_size} 767 fi 768done 769 770# Target architecture .o files. 771# A couple of CPUs use shorter file names to avoid problems on DOS 772# filesystems. 773ta=`echo $selarchs | sed -e s/bfd_/cpu-/g -e s/_arch/.lo/g -e s/mn10200/m10200/ -e s/mn10300/m10300/` 774 775# Weed out duplicate .o files. 776f="" 777for i in $tb ; do 778 case " $f " in 779 *" $i "*) ;; 780 *) f="$f $i" ;; 781 esac 782done 783tb="$f" 784 785f="" 786for i in $ta ; do 787 case " $f " in 788 *" $i "*) ;; 789 *) f="$f $i" ;; 790 esac 791done 792ta="$f" 793 794bfd_backends="$tb" 795bfd_machines="$ta" 796 797if test x${all_targets} = xtrue ; then 798 bfd_backends="${bfd_backends}"' $(ALL_BACKENDS)' 799 bfd_machines="${bfd_machines}"' $(ALL_MACHINES)' 800 selvecs= 801 havevecs= 802 selarchs= 803else # all_targets is true 804 # Only set these if they will be nonempty, for the clever echo. 805 havevecs= 806 test -n "$selvecs" && 807 havevecs=`echo $selvecs | sed -e 's/^/-DHAVE_/' -e 's/ \(.\)/ -DHAVE_\1/g'` 808 test -n "$selvecs" && 809 selvecs=`echo $selvecs | sed -e 's/^/\&/' -e 's/ \(.\)/,\&\1/g'` 810 test -n "$selarchs" && 811 selarchs=`echo $selarchs | sed -e 's/^/\&/' -e 's/ \(.\)/,\&\1/g'` 812fi # all_targets is true 813 814case ${host64}-${target64}-${want64} in 815 *true*) 816 wordsize=64 817 bfd_libs='$(BFD64_LIBS) $(BFD32_LIBS)' 818 all_backends='$(BFD64_BACKENDS) $(BFD32_BACKENDS)' 819 if test -z "$GCC" && test "$BFD_HOST_64BIT_LONG" = "0" && test "$BFD_HOST_64_BIT_DEFINED" = "0"; then 820 AC_MSG_WARN([You have requested a 64 bit BFD configuration, but]) 821 AC_MSG_WARN([your compiler may not have a 64 bit integral type]) 822 fi 823 if test -n "$GCC" ; then 824 bad_64bit_gcc=no; 825 AC_MSG_CHECKING([for gcc version with buggy 64-bit support]) 826 # Add more tests for gcc versions with non-working 64-bit support here. 827 AC_EGREP_CPP([: 2 : 91 : 1 :],[:__GNUC__:__GNUC_MINOR__:__i386__:], 828 bad_64bit_gcc=yes; 829 AC_MSG_RESULT([yes: egcs-1.1.2 on ix86 spotted]), 830 AC_MSG_RESULT(no)) 831 if test $bad_64bit_gcc = yes ; then 832 AC_ERROR([A newer version of gcc is needed for the requested 64-bit BFD configuration]) 833 fi 834 fi 835 ;; 836 false-false-false) 837 wordsize=32 838 bfd_libs='$(BFD32_LIBS)' 839 all_backends='$(BFD32_BACKENDS)' 840 ;; 841esac 842 843AC_SUBST(wordsize) 844AC_SUBST(bfd_libs) 845AC_SUBST(all_backends) 846AC_SUBST(bfd_backends) 847AC_SUBST(bfd_machines) 848AC_SUBST(bfd_default_target_size) 849 850tdefaults="" 851test -n "${defvec}" && tdefaults="${tdefaults} -DDEFAULT_VECTOR=${defvec}" 852test -n "${selvecs}" && tdefaults="${tdefaults} -DSELECT_VECS='${selvecs}'" 853test -n "${selarchs}" && tdefaults="${tdefaults} -DSELECT_ARCHITECTURES='${selarchs}'" 854test -n "${havevecs}" && tdefaults="${tdefaults} ${havevecs}" 855AC_SUBST(tdefaults) 856 857dnl AC_CHECK_HEADERS(sys/mman.h) 858AC_FUNC_MMAP 859AC_CHECK_FUNCS(madvise mprotect) 860case ${want_mmap}+${ac_cv_func_mmap_fixed_mapped} in 861 true+yes ) AC_DEFINE(USE_MMAP, 1, [Use mmap if it's available?]) ;; 862esac 863 864rm -f doc/config.status 865AC_OUTPUT(Makefile doc/Makefile bfd-in3.h:bfd-in2.h po/Makefile.in:po/Make-in, 866[sed -e '/SRC-POTFILES =/r po/SRC-POTFILES' -e '/BLD-POTFILES =/r po/BLD-POTFILES' po/Makefile.in > po/Makefile]) 867 868