configure.in revision 92828
1dnl Process this file with autoconf to produce a configure script. 2dnl 3 4AC_PREREQ(2.13) 5AC_INIT(libbfd.c) 6 7AC_CANONICAL_SYSTEM 8AC_ISC_POSIX 9 10AM_INIT_AUTOMAKE(bfd, 2.12) 11# Uncomment the next line to remove the date from the reported bfd version 12is_release=y 13 14changequote(,)dnl 15bfd_version=`echo "${VERSION}" | sed -e 's/\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\).*/\1.00\2.00\3.00\4.00\5/' -e 's/\([^\.]*\)\..*\(..\)\..*\(..\)\..*\(..\)\..*\(..\)$/\1\2\3\4\5/'` 16changequote([,])dnl 17 18bfd_version_string="\"${VERSION}\"" 19bfd_version_date=`sed -e 's/.*DATE //' < ${srcdir}/version.h` 20if test x${is_release} = x; then 21dnl Sad, but we can't use XSTRING here to pick up the date from version.h 22dnl because traditional C doesn't allow it. 23 bfd_version_string="\"${VERSION} ${bfd_version_date}\"" 24fi 25dnl Since we need to edit bfd-in3.h to get the date for bfd_version_string, 26dnl we may as well substitute for bfd_version_date too. That way we don't 27dnl need to #include version.h 28AC_SUBST(bfd_version) 29AC_SUBST(bfd_version_date) 30AC_SUBST(bfd_version_string) 31 32dnl These must be called before AM_PROG_LIBTOOL, because it may want 33dnl to call AC_CHECK_PROG. 34AC_CHECK_TOOL(AR, ar) 35AC_CHECK_TOOL(RANLIB, ranlib, :) 36 37dnl Default to a non shared library. This may be overridden by the 38dnl configure option --enable-shared. 39AM_DISABLE_SHARED 40 41AM_PROG_LIBTOOL 42 43AC_ARG_ENABLE(64-bit-bfd, 44[ --enable-64-bit-bfd 64-bit support (on hosts with narrower word sizes)], 45[case "${enableval}" in 46 yes) want64=true ;; 47 no) want64=false ;; 48 *) AC_MSG_ERROR(bad value ${enableval} for 64-bit-bfd option) ;; 49esac],[want64=false])dnl 50AC_ARG_ENABLE(targets, 51[ --enable-targets alternative target configurations], 52[case "${enableval}" in 53 yes | "") AC_ERROR(enable-targets option must specify target names or 'all') 54 ;; 55 no) enable_targets= ;; 56 *) enable_targets=$enableval ;; 57esac])dnl 58AC_ARG_ENABLE(commonbfdlib, 59[ --enable-commonbfdlib build shared BFD/opcodes/libiberty library], 60[case "${enableval}" in 61 yes) commonbfdlib=true ;; 62 no) commonbfdlib=false ;; 63 *) AC_MSG_ERROR([bad value ${enableval} for BFD commonbfdlib option]) ;; 64esac])dnl 65AC_ARG_WITH(mmap, 66[ --with-mmap try using mmap for BFD input files if available], 67[case "${withval}" in 68 yes) want_mmap=true ;; 69 no) want_mmap=false ;; 70 *) AC_MSG_ERROR(bad value ${withval} for BFD with-mmap option) ;; 71esac],[want_mmap=false])dnl 72 73build_warnings="-W -Wall -Wstrict-prototypes -Wmissing-prototypes" 74AC_ARG_ENABLE(build-warnings, 75[ --enable-build-warnings Enable build-time compiler warnings if gcc is used], 76[case "${enableval}" in 77 yes) ;; 78 no) build_warnings="-w";; 79 ,*) t=`echo "${enableval}" | sed -e "s/,/ /g"` 80 build_warnings="${build_warnings} ${t}";; 81 *,) t=`echo "${enableval}" | sed -e "s/,/ /g"` 82 build_warnings="${t} ${build_warnings}";; 83 *) build_warnings=`echo "${enableval}" | sed -e "s/,/ /g"`;; 84esac 85if test x"$silent" != x"yes" && test x"$build_warnings" != x""; then 86 echo "Setting warning flags = $build_warnings" 6>&1 87fi])dnl 88WARN_CFLAGS="" 89if test "x${build_warnings}" != x -a "x$GCC" = xyes ; then 90 WARN_CFLAGS="${build_warnings}" 91fi 92AC_SUBST(WARN_CFLAGS) 93 94AM_CONFIG_HEADER(config.h:config.in) 95 96if test -z "$target" ; then 97 AC_MSG_ERROR(Unrecognized target system type; please check config.sub.) 98fi 99 100AM_MAINTAINER_MODE 101AC_EXEEXT 102 103host64=false 104target64=false 105bfd_default_target_size=32 106 107# host stuff: 108 109AC_PROG_CC 110 111ALL_LINGUAS="fr tr ja es sv" 112CY_GNU_GETTEXT 113 114# Permit host specific settings. 115. ${srcdir}/configure.host 116 117AC_SUBST(HDEFINES) 118AC_PROG_INSTALL 119 120BFD_HOST_64BIT_LONG=0 121BFD_HOST_64_BIT_DEFINED=0 122BFD_HOST_64_BIT= 123BFD_HOST_U_64_BIT= 124if test "x${HOST_64BIT_TYPE}" = "xlong"; then 125 BFD_HOST_64BIT_LONG=1 126elif test "x${HOST_64BIT_TYPE}" != "x"; then 127 BFD_HOST_64_BIT_DEFINED=1 128 BFD_HOST_64_BIT=${HOST_64BIT_TYPE} 129 BFD_HOST_U_64_BIT=${HOST_U_64BIT_TYPE} 130fi 131AC_SUBST(BFD_HOST_64BIT_LONG) 132AC_SUBST(BFD_HOST_64_BIT_DEFINED) 133AC_SUBST(BFD_HOST_64_BIT) 134AC_SUBST(BFD_HOST_U_64_BIT) 135 136BFD_CC_FOR_BUILD 137 138AC_CHECK_HEADERS(stddef.h string.h strings.h stdlib.h time.h unistd.h) 139AC_CHECK_HEADERS(fcntl.h sys/file.h sys/time.h) 140AC_HEADER_TIME 141AC_HEADER_DIRENT 142AC_CHECK_FUNCS(fcntl getpagesize setitimer sysconf fdopen getuid getgid) 143 144BFD_BINARY_FOPEN 145 146BFD_NEED_DECLARATION(strstr) 147BFD_NEED_DECLARATION(malloc) 148BFD_NEED_DECLARATION(realloc) 149BFD_NEED_DECLARATION(free) 150BFD_NEED_DECLARATION(getenv) 151 152# If we are configured native, pick a core file support file. 153COREFILE= 154COREFLAG= 155TRAD_HEADER= 156if test "${target}" = "${host}"; then 157 case "${host}" in 158 alpha*-*-freebsd*) 159 COREFILE='' 160 ;; 161 alpha*-*-linux-gnu*) 162 COREFILE=trad-core.lo 163 TRAD_HEADER='"hosts/alphalinux.h"' 164 ;; 165 alpha*-*-netbsd*) COREFILE=netbsd-core.lo ;; 166 alpha*-*-*) COREFILE=osf-core.lo ;; 167 arm-*-freebsd*) COREFILE='' ;; 168 arm-*-netbsd*) COREFILE=netbsd-core.lo ;; 169 arm-*-riscix) COREFILE=trad-core.lo ;; 170 hppa*-*-hpux*) COREFILE=hpux-core.lo ;; 171 hppa*-*-hiux*) COREFILE=hpux-core.lo ;; 172 hppa*-*-mpeix*) COREFILE=hpux-core.lo ;; 173 hppa*-*-bsd*) COREFILE="hpux-core.lo hppabsd-core.lo" 174 COREFLAG="-DHPUX_CORE -DHPPABSD_CORE" ;; 175 i370-*-*) 176 COREFILE=trad-core.lo 177 TRAD_HEADER='"hosts/i370linux.h"' 178 ;; 179 180changequote(,)dnl 181 i[3456]86-sequent-bsd*) 182changequote([,])dnl 183 COREFILE=trad-core.lo 184 TRAD_HEADER='"hosts/symmetry.h"' 185 ;; 186changequote(,)dnl 187 i[3456]86-sequent-sysv4*) ;; 188 i[3456]86-sequent-sysv*) 189changequote([,])dnl 190 COREFILE=trad-core.lo 191 TRAD_HEADER='"hosts/symmetry.h"' 192 ;; 193changequote(,)dnl 194 i[3456]86-*-bsdi) 195changequote([,])dnl 196 COREFILE= 197 ;; 198changequote(,)dnl 199 i[3456]86-*-bsd* | i[34567]86-*-freebsd[123] | i[34567]86-*-freebsd[123]\.* | i[34567]86-*-freebsd4\.[01234]* | i[34567]86-*-freebsd*aout*) 200changequote([,])dnl 201 COREFILE=trad-core.lo 202 TRAD_HEADER='"hosts/i386bsd.h"' 203 ;; 204changequote(,)dnl 205 i[3456]86-*-freebsd*) 206changequote([,])dnl 207 COREFILE='' 208 TRAD_HEADER='"hosts/i386bsd.h"' 209 ;; 210changequote(,)dnl 211 i[3456]86-*-netbsd* | i[3456]86-*-openbsd*) 212changequote([,])dnl 213 COREFILE=netbsd-core.lo 214 ;; 215changequote(,)dnl 216 i[3456]86-esix-sysv3*) 217changequote([,])dnl 218 COREFILE=trad-core.lo 219 TRAD_HEADER='"hosts/esix.h"' 220 ;; 221changequote(,)dnl 222 i[3456]86-*-sco3.2v5*) 223changequote([,])dnl 224 COREFILE=sco5-core.lo 225 ;; 226changequote(,)dnl 227 i[3456]86-*-sco* | i[3456]86-*-isc*) 228changequote([,])dnl 229 COREFILE=trad-core.lo 230 TRAD_HEADER='"hosts/i386sco.h"' 231 ;; 232changequote(,)dnl 233 i[3456]86-*-mach3*) 234changequote([,])dnl 235 COREFILE=trad-core.lo 236 TRAD_HEADER='"hosts/i386mach3.h"' 237 ;; 238changequote(,)dnl 239 i[3456]86-*-linux-gnu*) 240changequote([,])dnl 241 COREFILE=trad-core.lo 242 TRAD_HEADER='"hosts/i386linux.h"' 243 ;; 244changequote(,)dnl 245 i[3456]86-*-isc*) COREFILE=trad-core.lo ;; 246 i[3456]86-*-aix*) COREFILE=aix386-core.lo ;; 247changequote([,])dnl 248 i860-*-mach3* | i860-*-osf1*) 249 COREFILE=trad-core.lo 250 TRAD_HEADER='"hosts/i860mach3.h"' 251 ;; 252 mips-dec-bsd*) 253 COREFILE=trad-core.lo 254 TRAD_HEADER='"hosts/mipsbsd.h"' 255 ;; 256 mips-dec-mach3*) 257 COREFILE=trad-core.lo 258 TRAD_HEADER='"hosts/mipsmach3.h"' 259 ;; 260 mips-*-netbsd* | mips*-*-openbsd*) 261 COREFILE=netbsd-core.lo 262 ;; 263 mips-dec-*) 264 COREFILE=trad-core.lo 265 TRAD_HEADER='"hosts/decstation.h"' 266 ;; 267 mips-sgi-irix4*) COREFILE=irix-core.lo ;; 268 mips-sgi-irix5*) COREFILE=irix-core.lo ;; 269 mips-sgi-irix6*) COREFILE=irix-core.lo ;; 270 mips-*-mach3*) 271 COREFILE=trad-core.lo 272 TRAD_HEADER='"hosts/mipsmach3.h"' 273 ;; 274 mips-*-sysv4*) ;; 275 mips-*-sysv* | mips-*-riscos*) 276 COREFILE=trad-core.lo 277 TRAD_HEADER='"hosts/riscos.h"' 278 ;; 279 mips-sony-bsd*) 280 COREFILE=trad-core.lo 281 TRAD_HEADER='"hosts/news-mips.h"' 282 ;; 283 m68*-bull*-sysv*) 284 COREFILE=trad-core.lo 285 TRAD_HEADER='"hosts/dpx2.h"' 286 ;; 287 m68*-hp-hpux*) COREFILE=hpux-core.lo ;; 288 m68*-hp-bsd*) 289 COREFILE=trad-core.lo 290 TRAD_HEADER='"hosts/hp300bsd.h"' 291 ;; 292 m68*-*-linux-gnu*) 293 COREFILE=trad-core.lo 294 TRAD_HEADER='"hosts/m68klinux.h"' 295 ;; 296 m68*-motorola-sysv*) 297 COREFILE=trad-core.lo 298 TRAD_HEADER='"hosts/delta68.h"' 299 ;; 300 m68*-sony-*) 301 COREFILE=trad-core.lo 302 TRAD_HEADER='"hosts/news.h"' 303 ;; 304 m68*-*-netbsd* | m68*-*-openbsd*) 305 COREFILE=netbsd-core.lo 306 ;; 307 m68*-apple-aux*) 308 COREFILE=trad-core.lo 309 TRAD_HEADER='"hosts/m68kaux.h"' 310 ;; 311 m88*-*-sysv4*) ;; 312 m88*-motorola-sysv*) COREFILE=ptrace-core.lo ;; 313 m88*-*-mach3*) 314 COREFILE=trad-core.lo 315 TRAD_HEADER='"hosts/m88kmach3.h"' 316 ;; 317 ns32k-pc532-mach) 318 COREFILE=trad-core.lo 319 TRAD_HEADER='"hosts/pc532mach.h"' 320 ;; 321 ns32k-*-netbsd* | ns32k-*-openbsd*) 322 COREFILE=netbsd-core.lo 323 ;; 324 rs6000-*-lynx*) COREFILE=lynx-core.lo ;; 325changequote(,)dnl 326 rs6000-*-aix4.[3-9]* | powerpc-*-aix4.[3-9]*) 327changequote([,])dnl 328 COREFILE=rs6000-core.lo 329 COREFLAG="$COREFLAG -DAIX_CORE_DUMPX_CORE" 330 ;; 331 rs6000-*-aix4*) COREFILE=rs6000-core.lo ;; 332 rs6000-*-*) COREFILE=rs6000-core.lo ;; 333 powerpc-*-aix4*) COREFILE=rs6000-core.lo ;; 334 powerpc-*-aix*) COREFILE=rs6000-core.lo ;; 335 powerpc-*-beos*) ;; 336 powerpc-*-freebsd*) COREFILE='' ;; 337 powerpc-*-netbsd*) COREFILE=netbsd-core.lo ;; 338 powerpc-*-*bsd*) COREFILE=netbsd-core.lo ;; 339 s390*-*-*) COREFILE=trad-core.lo ;; 340 sh*-*-netbsd*) COREFILE=netbsd-core.lo ;; 341 sparc-*-netbsd* | sparc-*-openbsd*) 342 COREFILE=netbsd-core.lo 343 ;; 344 tahoe-*-*) 345 COREFILE=trad-core.lo 346 TRAD_HEADER='"hosts/tahoe.h"' 347 ;; 348 vax-*-ultrix2*) 349 COREFILE=trad-core.lo 350 TRAD_HEADER='"hosts/vaxult2.h"' 351 ;; 352 vax-*-ultrix*) 353 COREFILE=trad-core.lo 354 TRAD_HEADER='"hosts/vaxult2.h"' 355 ;; 356 vax-*-*) 357 COREFILE=trad-core.lo 358 TRAD_HEADER='"hosts/vaxbsd.h"' 359 ;; 360 x86_64-*-netbsd*) COREFILE=netbsd-core.lo ;; 361 esac 362 363 case "$COREFILE" in 364 aix386-core.lo) COREFLAG=-DAIX386_CORE ;; 365 hppabsd-core.lo) COREFLAG=-DHPPABSD_CORE ;; 366 hpux-core.lo) COREFLAG=-DHPUX_CORE ;; 367 irix-core.lo) COREFLAG=-DIRIX_CORE ;; 368 lynx-core.lo) COREFLAG=-DLYNX_CORE ;; 369 netbsd-core.lo) COREFLAG=-DNETBSD_CORE ;; 370 osf-core.lo) COREFLAG=-DOSF_CORE ;; 371 ptrace-core.lo) COREFLAG=-DPTRACE_CORE ;; 372 rs6000-core.lo) COREFLAG="$COREFLAG -DAIX_CORE" ;; 373 sco5-core.lo) COREFLAG="$COREFLAG -DSCO5_CORE" ;; 374 trad-core.lo) COREFLAG="$COREFLAG -DTRAD_CORE" ;; 375 esac 376 377 # ELF corefile support has several flavors, but all of 378 # them use something called <sys/procfs.h> 379 AC_CHECK_HEADERS(sys/procfs.h) 380 if test "$ac_cv_header_sys_procfs_h" = yes; then 381 BFD_HAVE_SYS_PROCFS_TYPE(prstatus_t) 382 BFD_HAVE_SYS_PROCFS_TYPE(prstatus32_t) 383 BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(prstatus_t, pr_who) 384 BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(prstatus32_t, pr_who) 385 BFD_HAVE_SYS_PROCFS_TYPE(pstatus_t) 386 BFD_HAVE_SYS_PROCFS_TYPE(pxstatus_t) 387 BFD_HAVE_SYS_PROCFS_TYPE(pstatus32_t) 388 BFD_HAVE_SYS_PROCFS_TYPE(prpsinfo_t) 389 BFD_HAVE_SYS_PROCFS_TYPE(prpsinfo32_t) 390 BFD_HAVE_SYS_PROCFS_TYPE(psinfo_t) 391 BFD_HAVE_SYS_PROCFS_TYPE(psinfo32_t) 392 BFD_HAVE_SYS_PROCFS_TYPE(lwpstatus_t) 393 BFD_HAVE_SYS_PROCFS_TYPE(lwpxstatus_t) 394 BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(lwpstatus_t, pr_context) 395 BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(lwpstatus_t, pr_reg) 396 BFD_HAVE_SYS_PROCFS_TYPE(win32_pstatus_t) 397 fi 398fi 399AC_SUBST(COREFILE) 400AC_SUBST(COREFLAG) 401if test -n "$TRAD_HEADER"; then 402 AC_DEFINE_UNQUOTED(TRAD_HEADER, $TRAD_HEADER, 403 [Name of host specific header file to include in trad-core.c.]) 404fi 405 406# Horrible hacks to build DLLs on Windows. 407WIN32LDFLAGS= 408WIN32LIBADD= 409case "${host}" in 410*-*-cygwin*) 411 if test "$enable_shared" = "yes"; then 412 WIN32LDFLAGS="-no-undefined" 413 WIN32LIBADD="-L`pwd`/../libiberty -liberty -L`pwd`/../intl -lintl -lcygwin -lkernel32" 414 fi 415 ;; 416*-*-linux*) 417 # We borrow WIN32LIBADD so that the shared libbfd won't depend on 418 # libiberty.a. 419 case "${host}" in 420 mips*-*-linux*) 421 # Linux/MIPS uses PIC by default. 422 if test "$enable_shared" = "yes"; then 423 WIN32LIBADD="-L../libiberty -liberty" 424 fi 425 ;; 426 *) 427changequote(,)dnl 428 x=`sed -n -e 's/^[ ]*PICFLAG[ ]*=[ ]*//p' < ../libiberty/Makefile | tail -1` 429changequote([,])dnl 430 if test -n "$x"; then 431 WIN32LIBADD="-L../libiberty/pic -liberty" 432 fi 433 ;; 434 esac 435 ;; 436esac 437AC_SUBST(WIN32LDFLAGS) 438AC_SUBST(WIN32LIBADD) 439 440# target stuff: 441 442# Canonicalize the secondary target names. 443if test -n "$enable_targets" ; then 444 for targ in `echo $enable_targets | sed 's/,/ /g'` 445 do 446 result=`$ac_config_sub $targ 2>/dev/null` 447 if test -n "$result" ; then 448 canon_targets="$canon_targets $result" 449 else 450 # Allow targets that config.sub doesn't recognize, like "all". 451 canon_targets="$canon_targets $targ" 452 fi 453 done 454fi 455 456all_targets=false 457defvec= 458selvecs= 459selarchs= 460TDEFINES= 461for targ in $target $canon_targets 462do 463 if test "x$targ" = "xall"; then 464 all_targets=true 465 else 466 . $srcdir/config.bfd 467 if test "x$targ" = "x$target"; then 468 defvec=$targ_defvec 469 fi 470 selvecs="$selvecs $targ_defvec $targ_selvecs" 471 selarchs="$selarchs $targ_archs" 472 TDEFINES="$TDEFINES $targ_cflags" 473 fi 474done 475AC_SUBST(TDEFINES) 476 477# This processing still needs to be done if we're to decide properly whether 478# 64-bit support needs to be compiled in. Currently, it will be included if 479# the default or any other explicitly requested target requires it; it 480# will not be included on a 32-bit host if no 64-bit target is requested, and 481# no "--with-64-bit-bfd" option is given, even if "--enable-targets=all" is 482# used. 483 484# uniq the default and selected vectors in all the configured targets. 485f="" 486for i in $selvecs ; do 487 case " $f " in 488 *" $i "*) ;; 489 *) f="$f $i" ;; 490 esac 491done 492selvecs="$f" 493 494 495# uniq the architectures in all the configured targets. 496f="" 497for i in $selarchs ; do 498 case " $f " in 499 *" $i "*) ;; 500 *) f="$f $i" ;; 501 esac 502done 503selarchs="$f" 504 505# Target backend .o files. 506tb= 507 508elf="elf.lo elflink.lo elf-strtab.lo elf-eh-frame.lo dwarf1.lo" 509 510for vec in $selvecs 511do 512 target_size=32 513 case "$vec" in 514 # This list is alphabetized to make it easy to compare 515 # with the two vector lists in targets.c. For the same reason, 516 # use one entry per line, even though this leads to long lines. 517 # FIXME: We include cofflink.lo not because it's needed for 518 # bfd_elf32_sh64[l]_vec, but because we include bfd_elf32_sh[l]_vec 519 # which needs it but does not list it. Should be fixed in right place. 520 bfd_elf32_sh64_vec) tb="$tb elf32-sh64.lo elf32.lo $elf cofflink.lo" 521 target_size=64 ;; 522 bfd_elf32_sh64l_vec) tb="$tb elf32-sh64.lo elf32.lo $elf cofflink.lo" 523 target_size=64 ;; 524 bfd_elf64_sh64_vec) tb="$tb elf64-sh64.lo elf64.lo $elf" 525 target_size=64 ;; 526 bfd_elf64_sh64l_vec) tb="$tb elf64-sh64.lo elf64.lo $elf" 527 target_size=64 ;; 528 a29kcoff_big_vec) tb="$tb coff-a29k.lo cofflink.lo" ;; 529 a_out_adobe_vec) tb="$tb aout-adobe.lo aout32.lo" ;; 530 aout0_big_vec) tb="$tb aout0.lo aout32.lo" ;; 531 aout_arm_big_vec) tb="$tb aout-arm.lo aout32.lo" ;; 532 aout_arm_little_vec) tb="$tb aout-arm.lo aout32.lo" ;; 533 aout_mips_big_vec) tb="$tb mipsbsd.lo aout32.lo" ;; 534 aout_mips_little_vec) tb="$tb mipsbsd.lo aout32.lo" ;; 535 apollocoff_vec) tb="$tb coff-apollo.lo" ;; 536 arm_epoc_pe_big_vec) tb="$tb epoc-pe-arm.lo peigen.lo cofflink.lo " ;; 537 arm_epoc_pe_little_vec) tb="$tb epoc-pe-arm.lo peigen.lo cofflink.lo " ;; 538 arm_epoc_pei_big_vec) tb="$tb epoc-pei-arm.lo peigen.lo cofflink.lo " ;; 539 arm_epoc_pei_little_vec) tb="$tb epoc-pei-arm.lo peigen.lo cofflink.lo " ;; 540 armcoff_big_vec) tb="$tb coff-arm.lo cofflink.lo " ;; 541 armcoff_little_vec) tb="$tb coff-arm.lo cofflink.lo " ;; 542 armnetbsd_vec) tb="$tb armnetbsd.lo aout32.lo" ;; 543 armpe_big_vec) tb="$tb pe-arm.lo peigen.lo cofflink.lo " ;; 544 armpe_little_vec) tb="$tb pe-arm.lo peigen.lo cofflink.lo " ;; 545 armpei_big_vec) tb="$tb pei-arm.lo peigen.lo cofflink.lo " ;; 546 armpei_little_vec) tb="$tb pei-arm.lo peigen.lo cofflink.lo " ;; 547 b_out_vec_big_host) tb="$tb bout.lo aout32.lo" ;; 548 b_out_vec_little_host) tb="$tb bout.lo aout32.lo" ;; 549 bfd_efi_app_ia32_vec) tb="$tb efi-app-ia32.lo peigen.lo cofflink.lo" ;; 550 bfd_efi_app_ia64_vec) tb="$tb efi-app-ia64.lo pepigen.lo cofflink.lo"; target_size=64 ;; 551 bfd_elf32_avr_vec) tb="$tb elf32-avr.lo elf32.lo $elf" ;; 552 bfd_elf32_big_generic_vec) tb="$tb elf32-gen.lo elf32.lo $elf" ;; 553 bfd_elf32_bigarc_vec) tb="$tb elf32-arc.lo elf32.lo $elf" ;; 554 bfd_elf32_bigarm_oabi_vec) tb="$tb elfarm-oabi.lo elf32.lo $elf" ;; 555 bfd_elf32_bigarm_vec) tb="$tb elfarm-nabi.lo elf32.lo $elf" ;; 556 bfd_elf32_bigmips_vec) tb="$tb elf32-mips.lo elf32.lo $elf ecofflink.lo" ;; 557 bfd_elf32_cris_vec) tb="$tb elf32-cris.lo elf32.lo $elf" ;; 558 bfd_elf32_d10v_vec) tb="$tb elf32-d10v.lo elf32.lo $elf" ;; 559 bfd_elf32_d30v_vec) tb="$tb elf32-d30v.lo elf32.lo $elf" ;; 560 bfd_elf32_fr30_vec) tb="$tb elf32-fr30.lo elf32.lo $elf" ;; 561 bfd_elf32_h8300_vec) tb="$tb elf32-h8300.lo elf32.lo $elf" ;; 562 bfd_elf32_hppa_linux_vec) tb="$tb elf32-hppa.lo elf32.lo $elf" ;; 563 bfd_elf32_hppa_vec) tb="$tb elf32-hppa.lo elf32.lo $elf" ;; 564 bfd_elf32_i370_vec) tb="$tb elf32-i370.lo elf32.lo $elf" ;; 565 bfd_elf32_i386_vec) tb="$tb elf32-i386.lo elf32.lo $elf" ;; 566 bfd_elf32_i860_little_vec) tb="$tb elf32-i860.lo elf32.lo $elf" ;; 567 bfd_elf32_i860_vec) tb="$tb elf32-i860.lo elf32.lo $elf" ;; 568 bfd_elf32_i960_vec) tb="$tb elf32-i960.lo elf32.lo $elf" ;; 569 bfd_elf32_ia64_big_vec) tb="$tb elf32-ia64.lo elf32.lo $elf" ;; 570 bfd_elf32_ia64_hpux_big_vec) tb="$tb elf32-ia64.lo elf32.lo $elf";; 571 bfd_elf32_little_generic_vec) tb="$tb elf32-gen.lo elf32.lo $elf" ;; 572 bfd_elf32_littlearc_vec) tb="$tb elf32-arc.lo elf32.lo $elf" ;; 573 bfd_elf32_littlearm_oabi_vec) tb="$tb elfarm-oabi.lo elf32.lo $elf" ;; 574 bfd_elf32_littlearm_vec) tb="$tb elfarm-nabi.lo elf32.lo $elf" ;; 575 bfd_elf32_littlemips_vec) tb="$tb elf32-mips.lo elf32.lo $elf ecofflink.lo" ;; 576 bfd_elf32_m32r_vec) tb="$tb elf32-m32r.lo elf32.lo $elf" ;; 577 bfd_elf32_m68hc11_vec) tb="$tb elf32-m68hc11.lo elf32.lo $elf" ;; 578 bfd_elf32_m68hc12_vec) tb="$tb elf32-m68hc12.lo elf32.lo $elf" ;; 579 bfd_elf32_m68k_vec) tb="$tb elf32-m68k.lo elf32.lo $elf" ;; 580 bfd_elf32_m88k_vec) tb="$tb elf32-m88k.lo elf32.lo $elf" ;; 581 bfd_elf32_mcore_big_vec) tb="$tb elf32-mcore.lo elf32.lo $elf" ;; 582 bfd_elf32_mcore_little_vec) tb="$tb elf32-mcore.lo elf32.lo $elf" ;; 583 bfd_elf32_mn10200_vec) tb="$tb elf-m10200.lo elf32.lo $elf" ;; 584 bfd_elf32_mn10300_vec) tb="$tb elf-m10300.lo elf32.lo $elf" ;; 585 bfd_elf32_openrisc_vec) tb="$tb elf32-openrisc.lo elf32.lo $elf" ;; 586 bfd_elf32_or32_big_vec) tb="$tb elf32-or32.lo elf32.lo $elf" ;; 587 bfd_elf32_pj_vec) tb="$tb elf32-pj.lo elf32.lo $elf";; 588 bfd_elf32_pjl_vec) tb="$tb elf32-pj.lo elf32.lo $elf";; 589 bfd_elf32_powerpc_vec) tb="$tb elf32-ppc.lo elf32.lo $elf" ;; 590 bfd_elf32_powerpcle_vec) tb="$tb elf32-ppc.lo elf32.lo $elf" ;; 591 bfd_elf32_s390_vec) tb="$tb elf32-s390.lo elf32.lo $elf" ;; 592 bfd_elf32_sh_vec) tb="$tb elf32-sh.lo elf32.lo $elf coff-sh.lo" ;; 593 bfd_elf32_shblin_vec) tb="$tb elf32-sh-lin.lo elf32.lo $elf coff-sh.lo cofflink.lo" ;; 594 bfd_elf32_shl_vec) tb="$tb elf32-sh.lo elf32.lo $elf coff-sh.lo" ;; 595 bfd_elf32_shlin_vec) tb="$tb elf32-sh-lin.lo elf32.lo $elf coff-sh.lo cofflink.lo" ;; 596 bfd_elf32_shlnbsd_vec) tb="$tb elf32-sh-nbsd.lo elf32.lo $elf coff-sh.lo cofflink.lo" ;; 597 bfd_elf32_shnbsd_vec) tb="$tb elf32-sh-nbsd.lo elf32.lo $elf coff-sh.lo cofflink.lo" ;; 598 bfd_elf32_sparc_vec) tb="$tb elf32-sparc.lo elf32.lo $elf" ;; 599 bfd_elf32_tradbigmips_vec) tb="$tb elf32-mips.lo elf32.lo $elf ecofflink.lo" ;; 600 bfd_elf32_tradlittlemips_vec) tb="$tb elf32-mips.lo elf32.lo $elf ecofflink.lo" ;; 601 bfd_elf32_us_cris_vec) tb="$tb elf32-cris.lo elf32.lo $elf" ;; 602 bfd_elf32_v850_vec) tb="$tb elf32-v850.lo elf32.lo $elf" ;; 603 bfd_elf32_xstormy16_vec) tb="$tb elf32-xstormy16.lo elf32.lo $elf" ;; 604 bfd_elf64_alpha_vec) tb="$tb elf64-alpha.lo elf64.lo $elf"; target_size=64 ;; 605 bfd_elf64_big_generic_vec) tb="$tb elf64-gen.lo elf64.lo $elf"; target_size=64 ;; 606 bfd_elf64_bigmips_vec) tb="$tb elf64-mips.lo elf64.lo elf32-mips.lo elf32.lo $elf ecofflink.lo"; target_size=64 ;; 607 bfd_elf64_hppa_linux_vec) tb="$tb elf64-hppa.lo elf64.lo $elf"; target_size=64 ;; 608 bfd_elf64_hppa_vec) tb="$tb elf64-hppa.lo elf64.lo $elf"; target_size=64 ;; 609 bfd_elf64_ia64_aix_big_vec) tb="$tb elf64-ia64.lo elf64.lo $elf"; target_size=64 ;; 610 bfd_elf64_ia64_aix_little_vec) tb="$tb elf64-ia64.lo elf64.lo $elf"; target_size=64 ;; 611 bfd_elf64_ia64_big_vec) tb="$tb elf64-ia64.lo elf64.lo $elf"; target_size=64 ;; 612 bfd_elf64_ia64_hpux_big_vec) tb="$tb elf64-ia64.lo elf64.lo $elf"; target_size=64 ;; 613 bfd_elf64_ia64_little_vec) tb="$tb elf64-ia64.lo elf64.lo $elf"; target_size=64 ;; 614 bfd_elf64_little_generic_vec) tb="$tb elf64-gen.lo elf64.lo $elf"; target_size=64 ;; 615 bfd_elf64_littlemips_vec) tb="$tb elf64-mips.lo elf64.lo elf32-mips.lo elf32.lo $elf ecofflink.lo"; target_size=64 ;; 616 bfd_elf64_mmix_vec) tb="$tb elf64-mmix.lo elf64.lo $elf" target_size=64 ;; 617 bfd_elf64_powerpc_vec) tb="$tb elf64-ppc.lo elf64-gen.lo elf64.lo $elf"; target_size=64 ;; 618 bfd_elf64_powerpcle_vec) tb="$tb elf64-ppc.lo elf64-gen.lo elf64.lo $elf" target_size=64 ;; 619 bfd_elf64_s390_vec) tb="$tb elf64-s390.lo elf64.lo $elf"; target_size=64 ;; 620 bfd_elf64_sparc_vec) tb="$tb elf64-sparc.lo elf64.lo $elf"; target_size=64 ;; 621 bfd_elf64_tradbigmips_vec) tb="$tb elf64-mips.lo elf64.lo $elf ecofflink.lo"; target_size=64 ;; 622 bfd_elf64_tradlittlemips_vec) tb="$tb elf64-mips.lo elf64.lo $elf ecofflink.lo"; target_size=64 ;; 623 bfd_elf64_x86_64_vec) tb="$tb elf64-x86-64.lo elf64.lo $elf"; target_size=64 ;; 624 bfd_mmo_vec) tb="$tb mmo.lo" target_size=64 ;; 625 bfd_powerpc_pe_vec) tb="$tb pe-ppc.lo peigen.lo cofflink.lo" ;; 626 bfd_powerpc_pei_vec) tb="$tb pei-ppc.lo peigen.lo cofflink.lo" ;; 627 bfd_powerpcle_pe_vec) tb="$tb pe-ppc.lo peigen.lo cofflink.lo" ;; 628 bfd_powerpcle_pei_vec) tb="$tb pei-ppc.lo peigen.lo cofflink.lo" ;; 629 cisco_core_big_vec) tb="$tb cisco-core.lo" ;; 630 cisco_core_little_vec) tb="$tb cisco-core.lo" ;; 631 cris_aout_vec) tb="$tb aout-cris.lo" ;; 632 demo_64_vec) tb="$tb demo64.lo aout64.lo"; target_size=64 ;; 633 ecoff_big_vec) tb="$tb coff-mips.lo ecoff.lo ecofflink.lo" ;; 634 ecoff_biglittle_vec) tb="$tb coff-mips.lo ecoff.lo ecofflink.lo" ;; 635 ecoff_little_vec) tb="$tb coff-mips.lo ecoff.lo ecofflink.lo" ;; 636 ecoffalpha_little_vec) tb="$tb coff-alpha.lo ecoff.lo ecofflink.lo"; target_size=64 ;; 637 go32coff_vec) tb="$tb coff-go32.lo cofflink.lo" ;; 638 go32stubbedcoff_vec) tb="$tb coff-stgo32.lo cofflink.lo" ;; 639 h8300coff_vec) tb="$tb coff-h8300.lo reloc16.lo" ;; 640 h8500coff_vec) tb="$tb coff-h8500.lo reloc16.lo" ;; 641 host_aout_vec) tb="$tb host-aout.lo aout32.lo" ;; 642 hp300bsd_vec) tb="$tb hp300bsd.lo aout32.lo" ;; 643 hp300hpux_vec) tb="$tb hp300hpux.lo aout32.lo" ;; 644 i386aout_vec) tb="$tb i386aout.lo aout32.lo" ;; 645 i386bsd_vec) tb="$tb i386bsd.lo aout32.lo" ;; 646 i386coff_vec) tb="$tb coff-i386.lo cofflink.lo" ;; 647 i386dynix_vec) tb="$tb i386dynix.lo aout32.lo" ;; 648 i386freebsd_vec) tb="$tb i386freebsd.lo aout32.lo" ;; 649 i386linux_vec) tb="$tb i386linux.lo aout32.lo" ;; 650 i386lynx_aout_vec) tb="$tb i386lynx.lo lynx-core.lo aout32.lo" ;; 651 i386lynx_coff_vec) tb="$tb cf-i386lynx.lo cofflink.lo lynx-core.lo" ;; 652 i386mach3_vec) tb="$tb i386mach3.lo aout32.lo" ;; 653 i386msdos_vec) tb="$tb i386msdos.lo" ;; 654 i386netbsd_vec) tb="$tb i386netbsd.lo aout32.lo" ;; 655 i386os9k_vec) tb="$tb i386os9k.lo aout32.lo" ;; 656 i386pe_vec) tb="$tb pe-i386.lo peigen.lo cofflink.lo" ;; 657 i386pei_vec) tb="$tb pei-i386.lo peigen.lo cofflink.lo" ;; 658 i860coff_vec) tb="$tb coff-i860.lo cofflink.lo" ;; 659 icoff_big_vec) tb="$tb coff-i960.lo cofflink.lo" ;; 660 icoff_little_vec) tb="$tb coff-i960.lo cofflink.lo" ;; 661 ieee_vec) tb="$tb ieee.lo" ;; 662 m68k4knetbsd_vec) tb="$tb m68k4knetbsd.lo aout32.lo" ;; 663 m68kaux_coff_vec) tb="$tb coff-aux.lo coff-m68k.lo cofflink.lo" ;; 664 m68kcoff_vec) tb="$tb coff-m68k.lo cofflink.lo" ;; 665 m68kcoffun_vec) tb="$tb coff-u68k.lo coff-m68k.lo cofflink.lo" ;; 666 m68klinux_vec) tb="$tb m68klinux.lo aout32.lo" ;; 667 m68klynx_aout_vec) tb="$tb m68klynx.lo lynx-core.lo aout32.lo" ;; 668 m68klynx_coff_vec) tb="$tb cf-m68klynx.lo coff-m68k.lo cofflink.lo lynx-core.lo" ;; 669 m68knetbsd_vec) tb="$tb m68knetbsd.lo aout32.lo" ;; 670 m68ksysvcoff_vec) tb="$tb coff-svm68k.lo cofflink.lo" ;; 671 m88kbcs_vec) tb="$tb coff-m88k.lo" ;; 672 mcore_pe_big_vec) tb="$tb pe-mcore.lo peigen.lo cofflink.lo" ;; 673 mcore_pe_little_vec) tb="$tb pe-mcore.lo peigen.lo cofflink.lo" ;; 674 mcore_pei_big_vec) tb="$tb pei-mcore.lo peigen.lo cofflink.lo" ;; 675 mcore_pei_little_vec) tb="$tb pei-mcore.lo peigen.lo cofflink.lo" ;; 676 mipslpe_vec) tb="$tb pe-mips.lo peigen.lo cofflink.lo" ;; 677 mipslpei_vec) tb="$tb pei-mips.lo peigen.lo cofflink.lo" ;; 678 newsos3_vec) tb="$tb newsos3.lo aout32.lo" ;; 679 nlm32_alpha_vec) tb="$tb nlm32-alpha.lo nlm32.lo nlm.lo"; target_size=64 ;; 680 nlm32_i386_vec) tb="$tb nlm32-i386.lo nlm32.lo nlm.lo" ;; 681 nlm32_powerpc_vec) tb="$tb nlm32-ppc.lo nlm32.lo nlm.lo" ;; 682 nlm32_sparc_vec) tb="$tb nlm32-sparc.lo nlm32.lo nlm.lo" ;; 683 or32coff_big_vec) tb="$tb coff-or32.lo cofflink.lo" ;; 684 pc532machaout_vec) tb="$tb pc532-mach.lo aout-ns32k.lo" ;; 685 pc532netbsd_vec) tb="$tb ns32knetbsd.lo aout-ns32k.lo" ;; 686 pdp11_aout_vec) tb="$tb pdp11.lo" ;; 687 pmac_xcoff_vec) tb="$tb coff-rs6000.lo xcofflink.lo" ;; 688 ppcboot_vec) tb="$tb ppcboot.lo" ;; 689 riscix_vec) tb="$tb aout32.lo riscix.lo" ;; 690 rs6000coff64_vec) tb="$tb coff64-rs6000.lo xcofflink.lo"; target_size=64 ;; 691 rs6000coff_vec) tb="$tb coff-rs6000.lo xcofflink.lo" ;; 692 shcoff_small_vec) tb="$tb coff-sh.lo cofflink.lo" ;; 693 shcoff_vec) tb="$tb coff-sh.lo cofflink.lo" ;; 694 shlcoff_small_vec) tb="$tb coff-sh.lo cofflink.lo" ;; 695 shlcoff_vec) tb="$tb coff-sh.lo cofflink.lo" ;; 696 shlpe_vec) tb="$tb pe-sh.lo coff-sh.lo peigen.lo cofflink.lo" ;; 697 shlpei_vec) tb="$tb pei-sh.lo coff-sh.lo peigen.lo cofflink.lo" ;; 698 som_vec) tb="$tb som.lo" ;; 699 sparccoff_vec) tb="$tb coff-sparc.lo" ;; 700 sparcle_aout_vec) tb="$tb aout-sparcle.lo aout32.lo" ;; 701 sparclinux_vec) tb="$tb sparclinux.lo aout32.lo" ;; 702 sparclynx_aout_vec) tb="$tb sparclynx.lo lynx-core.lo aout32.lo" ;; 703 sparclynx_coff_vec) tb="$tb cf-sparclynx.lo lynx-core.lo" ;; 704 sparcnetbsd_vec) tb="$tb sparcnetbsd.lo aout32.lo" ;; 705 srec_vec) tb="$tb srec.lo" ;; 706 sunos_big_vec) tb="$tb sunos.lo aout32.lo" ;; 707 symbolsrec_vec) tb="$tb srec.lo" ;; 708 tekhex_vec) tb="$tb tekhex.lo" ;; 709 tic30_aout_vec) tb="$tb aout-tic30.lo" ;; 710 tic30_coff_vec) tb="$tb coff-tic30.lo" ;; 711 tic54x_coff0_beh_vec) tb="$tb coff-tic54x.lo" ;; 712 tic54x_coff0_vec) tb="$tb coff-tic54x.lo" ;; 713 tic54x_coff1_beh_vec) tb="$tb coff-tic54x.lo" ;; 714 tic54x_coff1_vec) tb="$tb coff-tic54x.lo" ;; 715 tic54x_coff2_beh_vec) tb="$tb coff-tic54x.lo" ;; 716 tic54x_coff2_vec) tb="$tb coff-tic54x.lo" ;; 717 tic80coff_vec) tb="$tb coff-tic80.lo cofflink.lo" ;; 718 versados_vec) tb="$tb versados.lo" ;; 719 vms_alpha_vec) tb="$tb vms.lo vms-hdr.lo vms-gsd.lo vms-tir.lo vms-misc.lo"; target_size=64 ;; 720 vms_vax_vec) tb="$tb vms.lo vms-hdr.lo vms-gsd.lo vms-tir.lo vms-misc.lo" ;; 721 w65_vec) tb="$tb coff-w65.lo reloc16.lo" ;; 722 we32kcoff_vec) tb="$tb coff-we32k.lo" ;; 723 z8kcoff_vec) tb="$tb coff-z8k.lo reloc16.lo" ;; 724 725 "") ;; 726 *) AC_MSG_ERROR(*** unknown target vector $vec) ;; 727 esac 728 729 if test ${target_size} = 64; then 730 target64=true 731 fi 732 if test x"${vec}" = x"${defvec}"; then 733 bfd_default_target_size=${target_size} 734 fi 735done 736 737# Target architecture .o files. 738# A couple of CPUs use shorter file names to avoid problems on DOS 739# filesystems. 740ta=`echo $selarchs | sed -e s/bfd_/cpu-/g -e s/_arch/.lo/g -e s/mn10200/m10200/ -e s/mn10300/m10300/` 741 742# Weed out duplicate .o files. 743f="" 744for i in $tb ; do 745 case " $f " in 746 *" $i "*) ;; 747 *) f="$f $i" ;; 748 esac 749done 750tb="$f" 751 752f="" 753for i in $ta ; do 754 case " $f " in 755 *" $i "*) ;; 756 *) f="$f $i" ;; 757 esac 758done 759ta="$f" 760 761bfd_backends="$tb" 762bfd_machines="$ta" 763 764if test x${all_targets} = xtrue ; then 765 bfd_backends="${bfd_backends}"' $(ALL_BACKENDS)' 766 bfd_machines="${bfd_machines}"' $(ALL_MACHINES)' 767 selvecs= 768 havevecs= 769 selarchs= 770else # all_targets is true 771 # Only set these if they will be nonempty, for the clever echo. 772 havevecs= 773 test -n "$selvecs" && 774 havevecs=`echo $selvecs | sed -e 's/^/-DHAVE_/' -e 's/ \(.\)/ -DHAVE_\1/g'` 775 test -n "$selvecs" && 776 selvecs=`echo $selvecs | sed -e 's/^/\&/' -e 's/ \(.\)/,\&\1/g'` 777 test -n "$selarchs" && 778 selarchs=`echo $selarchs | sed -e 's/^/\&/' -e 's/ \(.\)/,\&\1/g'` 779fi # all_targets is true 780 781case ${host64}-${target64}-${want64} in 782 *true*) 783 wordsize=64 784 bfd_libs='$(BFD64_LIBS) $(BFD32_LIBS)' 785 all_backends='$(BFD64_BACKENDS) $(BFD32_BACKENDS)' 786 if test -z "$GCC" && test "$BFD_HOST_64BIT_LONG" = "0" && test "$BFD_HOST_64_BIT_DEFINED" = "0"; then 787 AC_MSG_WARN([You have requested a 64 bit BFD configuration, but]) 788 AC_MSG_WARN([your compiler may not have a 64 bit integral type]) 789 fi 790 if test -n "$GCC" ; then 791 bad_64bit_gcc=no; 792 AC_MSG_CHECKING([for gcc version with buggy 64-bit support]) 793 # Add more tests for gcc versions with non-working 64-bit support here. 794 AC_EGREP_CPP([: 2 : 91 : 1 :],[:__GNUC__:__GNUC_MINOR__:__i386__:], 795 bad_64bit_gcc=yes; 796 AC_MSG_RESULT([yes: egcs-1.1.2 on ix86 spotted]), 797 AC_MSG_RESULT(no)) 798 if test $bad_64bit_gcc = yes ; then 799 AC_ERROR([A newer version of gcc is needed for the requested 64-bit BFD configuration]) 800 fi 801 fi 802 ;; 803 false-false-false) 804 wordsize=32 805 bfd_libs='$(BFD32_LIBS)' 806 all_backends='$(BFD32_BACKENDS)' 807 ;; 808esac 809 810AC_SUBST(wordsize) 811AC_SUBST(bfd_libs) 812AC_SUBST(all_backends) 813AC_SUBST(bfd_backends) 814AC_SUBST(bfd_machines) 815AC_SUBST(bfd_default_target_size) 816 817tdefaults="" 818test -n "${defvec}" && tdefaults="${tdefaults} -DDEFAULT_VECTOR=${defvec}" 819test -n "${selvecs}" && tdefaults="${tdefaults} -DSELECT_VECS='${selvecs}'" 820test -n "${selarchs}" && tdefaults="${tdefaults} -DSELECT_ARCHITECTURES='${selarchs}'" 821test -n "${havevecs}" && tdefaults="${tdefaults} ${havevecs}" 822AC_SUBST(tdefaults) 823 824dnl AC_CHECK_HEADERS(sys/mman.h) 825AC_FUNC_MMAP 826AC_CHECK_FUNCS(madvise mprotect) 827case ${want_mmap}+${ac_cv_func_mmap_fixed_mapped} in 828 true+yes ) AC_DEFINE(USE_MMAP, 1, [Use mmap if it's available?]) ;; 829esac 830 831rm -f doc/config.status 832AC_OUTPUT(Makefile doc/Makefile bfd-in3.h:bfd-in2.h po/Makefile.in:po/Make-in, 833[sed -e '/SRC-POTFILES =/r po/SRC-POTFILES' -e '/BLD-POTFILES =/r po/BLD-POTFILES' po/Makefile.in > po/Makefile]) 834 835