1dnl Process this file with autoconf to produce a configure script. 2dnl 3dnl Copyright (C) 2012-2021 Free Software Foundation, Inc. 4dnl 5dnl This file is free software; you can redistribute it and/or modify 6dnl it under the terms of the GNU General Public License as published by 7dnl the Free Software Foundation; either version 3 of the License, or 8dnl (at your option) any later version. 9dnl 10dnl This program is distributed in the hope that it will be useful, 11dnl but WITHOUT ANY WARRANTY; without even the implied warranty of 12dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13dnl GNU General Public License for more details. 14dnl 15dnl You should have received a copy of the GNU General Public License 16dnl along with this program; see the file COPYING3. If not see 17dnl <http://www.gnu.org/licenses/>. 18dnl 19 20m4_include([version.m4]) 21AC_INIT([bfd], BFD_VERSION) 22AC_CONFIG_SRCDIR([libbfd.c]) 23 24AC_CANONICAL_TARGET 25 26AM_INIT_AUTOMAKE 27 28dnl These must be called before LT_INIT, because it may want 29dnl to call AC_CHECK_PROG. 30AC_CHECK_TOOL(AR, ar) 31AC_CHECK_TOOL(RANLIB, ranlib, :) 32 33dnl Default to a non shared library. This may be overridden by the 34dnl configure option --enable-shared. 35AC_DISABLE_SHARED 36 37AC_PROG_CC 38AC_GNU_SOURCE 39AC_USE_SYSTEM_EXTENSIONS 40 41LT_INIT([dlopen]) 42 43# AC_PLUGINS setting $plugins is called by ACX_LARGEFILE. 44ACX_LARGEFILE 45 46changequote(,)dnl 47case "${target}" in 48 hppa*64*-*-* | vax-*-netbsdelf*) ;; 49 *-*-*aout* | i[3-7]86-*-bsd* | i[3-7]86-*-msdos* | ns32k-*-* | \ 50 pdp11-*-* | vax-*-*bsd*) 51changequote([,])dnl 52 if test "$plugins" = "yes"; then 53 if test "${enable_plugins+set}" = set; then 54 AC_MSG_WARN(Enabling plugins for AOUT is experimental) 55 else 56 plugins=no 57 fi 58 fi ;; 59 hppa*-*-hpux* | *-*-*vms* | \ 60 powerpc*-*-aix* | powerpc-*-beos* | powerpc-*-macos* | rs6000-*-*) 61 if test "$plugins" = "yes"; then 62 if test "${enable_plugins+set}" = set; then 63 AC_MSG_WARN(Enabling plugins may result in ar creating non-standard archives for ${target}) 64 else 65 plugins=no 66 fi 67 fi ;; 68esac 69 70AM_CONDITIONAL(PLUGINS, test "$plugins" = "yes") 71 72ac_checking= 73. ${srcdir}/development.sh 74test "$development" = true && ac_checking=yes 75AC_ARG_ENABLE(checking, 76[ --enable-checking enable run-time checks], 77[case "${enableval}" in 78 no|none) ac_checking= ;; 79 *) ac_checking=yes ;; 80esac])dnl 81if test x$ac_checking != x ; then 82 AC_DEFINE(ENABLE_CHECKING, 1, [Define if you want run-time sanity checks.]) 83fi 84 85AC_ARG_ENABLE(64-bit-bfd, 86[ --enable-64-bit-bfd 64-bit support (on hosts with narrower word sizes)], 87[case "${enableval}" in 88 yes) want64=true ;; 89 no) want64=false ;; 90 *) AC_MSG_ERROR(bad value ${enableval} for 64-bit-bfd option) ;; 91esac],[want64=false])dnl 92 93AC_ARG_ENABLE(targets, 94[ --enable-targets alternative target configurations], 95[case "${enableval}" in 96 yes | "") AC_MSG_ERROR([enable-targets option must specify target names or 'all']) 97 ;; 98 no) enable_targets= ;; 99 *) enable_targets=$enableval ;; 100esac])dnl 101 102AC_ARG_ENABLE(64_bit_archive, 103 AS_HELP_STRING([--enable-64-bit-archive], 104 [force 64-bit archives]), 105[case "${enableval}" in 106 yes) want_64_bit_archive=true ;; 107 no) want_64_bit_archive=false ;; 108 *) AC_MSG_ERROR(bad value ${enableval} for 64-bit-archive option) ;; 109esac],[want_64_bit_archive=unset])dnl 110 111AC_ARG_WITH(mmap, 112[ --with-mmap try using mmap for BFD input files if available], 113[case "${withval}" in 114 yes) want_mmap=true ;; 115 no) want_mmap=false ;; 116 *) AC_MSG_ERROR(bad value ${withval} for BFD with-mmap option) ;; 117esac],[want_mmap=false])dnl 118 119AC_ARG_ENABLE(secureplt, 120[ --enable-secureplt Default to creating read-only plt entries], 121[case "${enableval}" in 122 yes) use_secureplt=true ;; 123 no) use_secureplt=false ;; 124 *) AC_MSG_ERROR(bad value ${enableval} for secureplt option) ;; 125esac],[use_secureplt=true])dnl 126if test $use_secureplt = true; then 127 AC_DEFINE(USE_SECUREPLT, 1, 128 [Define if we should default to creating read-only plt entries]) 129fi 130 131# Decide if -z separate-code should be enabled in ELF linker by default. 132ac_default_ld_z_separate_code=unset 133AC_ARG_ENABLE(separate-code, 134 AS_HELP_STRING([--enable-separate-code], 135 [enable -z separate-code in ELF linker by default]), 136[case "${enableval}" in 137 yes) ac_default_ld_z_separate_code=1 ;; 138 no) ac_default_ld_z_separate_code=0 ;; 139esac]) 140# Enable -z separate-code by default for Linux/x86. 141changequote(,)dnl 142case "${target}" in 143i[3-7]86-*-linux-* | x86_64-*-linux-*) 144changequote([,])dnl 145 if test ${ac_default_ld_z_separate_code} = unset; then 146 ac_default_ld_z_separate_code=1 147 fi 148 ;; 149esac 150if test "${ac_default_ld_z_separate_code}" = unset; then 151 ac_default_ld_z_separate_code=0 152fi 153AC_DEFINE_UNQUOTED(DEFAULT_LD_Z_SEPARATE_CODE, 154 $ac_default_ld_z_separate_code, 155 [Define to 1 if you want to enable -z separate-code in ELF linker by default.]) 156 157AC_ARG_ENABLE(leading-mingw64-underscores, 158 AS_HELP_STRING([--enable-leading-mingw64-underscores], 159 [Enable leading underscores on 64 bit mingw targets]), 160 [],[]) 161AS_IF([ test x"$enable_leading_mingw64_underscores" = xyes ], 162 [AC_DEFINE(USE_MINGW64_LEADING_UNDERSCORES, 1, 163 [Define if we should use leading underscore on 64 bit mingw targets])]) 164 165DEBUGDIR=${libdir}/debug 166AC_ARG_WITH(separate-debug-dir, 167 AS_HELP_STRING([--with-separate-debug-dir=DIR], 168 [Look for global separate debug info in DIR [[default=LIBDIR/debug]]]), 169[DEBUGDIR="${withval}"]) 170AC_SUBST(DEBUGDIR) 171 172ACX_PKGVERSION([GNU Binutils]) 173ACX_BUGURL([https://www.sourceware.org/bugzilla/]) 174 175AM_BINUTILS_WARNINGS 176 177AC_CONFIG_HEADERS(config.h:config.in) 178 179# PR 14072 180AH_VERBATIM([00_CONFIG_H_CHECK], 181[/* Check that config.h is #included before system headers 182 (this works only for glibc, but that should be enough). */ 183#if defined(__GLIBC__) && !defined(__FreeBSD_kernel__) && !defined(__CONFIG_H__) 184# error config.h must be #included before system headers 185#endif 186#define __CONFIG_H__ 1]) 187 188if test -z "$target" ; then 189 AC_MSG_ERROR(Unrecognized target system type; please check config.sub.) 190fi 191 192AM_MAINTAINER_MODE 193AM_CONDITIONAL(GENINSRC_NEVER, false) 194AM_INSTALL_LIBBFD 195AC_EXEEXT 196 197host64=false 198target64=false 199bfd_default_target_size=32 200 201# host stuff: 202 203ALL_LINGUAS="da es fi fr hr id ja ro ru rw sr sv tr uk vi zh_CN pt" 204ZW_GNU_GETTEXT_SISTER_DIR 205AM_PO_SUBDIRS 206 207# Permit host specific settings. 208. ${srcdir}/configure.host 209 210AC_SUBST(HDEFINES) 211AC_PROG_INSTALL 212 213BFD_HOST_64BIT_LONG=0 214BFD_HOST_64BIT_LONG_LONG=0 215BFD_HOST_64_BIT_DEFINED=0 216BFD_HOST_64_BIT= 217BFD_HOST_U_64_BIT= 218BFD_HOSTPTR_T="unsigned long" 219 220AC_CHECK_SIZEOF(long long) 221AC_CHECK_SIZEOF(void *) 222AC_CHECK_SIZEOF(long) 223AC_CHECK_SIZEOF(int) 224 225if test "x${ac_cv_sizeof_void_p}" = "x8"; then 226 host64=true 227fi 228 229if test "x${ac_cv_sizeof_long}" = "x8"; then 230 BFD_HOST_64BIT_LONG=1 231 test -n "${HOST_64BIT_TYPE}" || HOST_64BIT_TYPE="long" 232 test -n "${HOST_U_64BIT_TYPE}" || HOST_U_64BIT_TYPE="unsigned long" 233elif test "x${ac_cv_sizeof_long_long}" = "x8"; then 234 BFD_HOST_64BIT_LONG_LONG=1 235 test -n "${HOST_64BIT_TYPE}" || HOST_64BIT_TYPE="long long" 236 test -n "${HOST_U_64BIT_TYPE}" || HOST_U_64BIT_TYPE="unsigned long long" 237 if test "x${ac_cv_sizeof_void_p}" = "x8"; then 238 BFD_HOSTPTR_T="unsigned long long" 239 fi 240fi 241 242if test -n "${HOST_64BIT_TYPE}" -a -n "${HOST_U_64BIT_TYPE}"; then 243 BFD_HOST_64_BIT_DEFINED=1 244 BFD_HOST_64_BIT="${HOST_64BIT_TYPE}" 245 BFD_HOST_U_64_BIT="${HOST_U_64BIT_TYPE}" 246fi 247 248AC_SUBST(BFD_HOST_64BIT_LONG) 249AC_SUBST(BFD_HOST_64BIT_LONG_LONG) 250AC_SUBST(BFD_HOST_64_BIT_DEFINED) 251AC_SUBST(BFD_HOST_64_BIT) 252AC_SUBST(BFD_HOST_U_64_BIT) 253AC_SUBST(BFD_HOSTPTR_T) 254 255BFD_CC_FOR_BUILD 256 257AC_CHECK_HEADERS(fcntl.h sys/file.h sys/resource.h sys/stat.h sys/types.h \ 258 unistd.h) 259 260AC_CHECK_FUNCS(fcntl fdopen fileno fls getgid getpagesize getrlimit getuid \ 261 sysconf) 262 263AC_CHECK_DECLS([basename, ffs, stpcpy, asprintf, vasprintf, strnlen]) 264 265BFD_BINARY_FOPEN 266 267# Link in zlib if we can. This allows us to read compressed debug sections. 268# This is used only by compress.c. 269AM_ZLIB 270 271save_CFLAGS="$CFLAGS" 272CFLAGS="$CFLAGS -Werror" 273AC_CACHE_CHECK([compiler support for hidden visibility], bfd_cv_hidden, 274[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ 275const char hw[] __attribute__ ((__visibility__ ("hidden"))) = "Hello, World\n"; 276extern void print (const char *) __attribute__ ((__visibility__ ("hidden")));]], 277 [[print (hw);]])], 278 [bfd_cv_hidden=yes], [bfd_cv_hidden=no])]) 279CFLAGS="$save_CFLAGS" 280if test $bfd_cv_hidden = yes; then 281 AC_DEFINE(HAVE_HIDDEN, 1, 282 [Define if your compiler supports hidden visibility.]) 283fi 284 285# Check if linker supports --as-needed and --no-as-needed options 286AC_CACHE_CHECK(linker --as-needed support, bfd_cv_ld_as_needed, 287 [bfd_cv_ld_as_needed=no 288 if $LD --help 2>/dev/null | grep as-needed > /dev/null; then 289 bfd_cv_ld_as_needed=yes 290 fi 291 ]) 292 293LT_LIB_M 294 295# When building a shared libbfd, link against the pic version of libiberty 296# so that apps that use libbfd won't need libiberty just to satisfy any 297# libbfd references. 298# We can't do that if a pic libiberty is unavailable since including non-pic 299# code would insert text relocations into libbfd. 300SHARED_LIBADD= 301SHARED_LDFLAGS= 302if test "$enable_shared" = "yes"; then 303changequote(,)dnl 304 x=`sed -n -e 's/^[ ]*PICFLAG[ ]*=[ ]*//p' < ../libiberty/Makefile | sed -n '$p'` 305changequote([,])dnl 306 if test -n "$x"; then 307 SHARED_LIBADD="-L`pwd`/../libiberty/pic -liberty" 308 fi 309fi 310 311SHARED_LIBADD="$SHARED_LIBADD $LIBINTL" 312 313if test "$enable_shared" = "yes"; then 314 case "${host}" in 315 # More hacks to build DLLs on Windows. 316 *-*-cygwin*) 317 SHARED_LDFLAGS="-no-undefined" 318 SHARED_LIBADD="-L`pwd`/../libiberty -liberty $SHARED_LIBADD -lcygwin -lkernel32" 319 ;; 320 esac 321 322 if test -n "$SHARED_LIBADD"; then 323 if test -n "$LIBM"; then 324 if test x"$bfd_cv_ld_as_needed" = xyes; then 325 # Link against libm only when needed. Put -lc, -lm inside -Wl 326 # to stop libtool reordering these options. 327 SHARED_LIBADD="$SHARED_LIBADD -Wl,-lc,--as-needed,`echo $LIBM | sed 's/ /,/g'`,--no-as-needed" 328 else 329 SHARED_LIBADD="$SHARED_LIBADD $LIBM" 330 fi 331 fi 332 fi 333fi 334AC_SUBST(SHARED_LDFLAGS) 335AC_SUBST(SHARED_LIBADD) 336 337# target stuff: 338 339# Canonicalize the secondary target names. 340if test -n "$enable_targets" ; then 341 for targ in `echo $enable_targets | sed 's/,/ /g'` 342 do 343 result=`$ac_config_sub $targ 2>/dev/null` 344 if test -n "$result" ; then 345 canon_targets="$canon_targets $result" 346 else 347 # Allow targets that config.sub doesn't recognize, like "all". 348 canon_targets="$canon_targets $targ" 349 fi 350 done 351fi 352 353all_targets=false 354defvec= 355selvecs= 356assocvecs= 357selarchs= 358TDEFINES= 359for targ in $target $canon_targets 360do 361 if test $targ = all; then 362 all_targets=true 363 assocvecs="$assocvecs $targ_defvec $targ_selvecs" 364 elif test $targ != plugin; then 365 . $srcdir/config.bfd 366 if test $targ = $target; then 367 defvec=$targ_defvec 368 fi 369 selvecs="$selvecs $targ_defvec $targ_selvecs" 370 selarchs="$selarchs $targ_archs" 371 TDEFINES="$TDEFINES $targ_cflags" 372 fi 373done 374AC_SUBST(TDEFINES) 375 376# This processing still needs to be done if we're to decide properly whether 377# 64-bit support needs to be compiled in. Currently, it will be included if 378# the default or any other explicitly requested target requires it; it 379# will not be included on a 32-bit host if no 64-bit target is requested, and 380# no "--with-64-bit-bfd" option is given, even if "--enable-targets=all" is 381# used. 382 383# uniq the default and selected vectors in all the configured targets. 384f="" 385for i in $selvecs ; do 386 case " $f " in 387 *" $i "*) ;; 388 *) f="$f $i" ;; 389 esac 390done 391selvecs="$f" 392 393 394# uniq the associated vectors in all the configured targets. 395f="" 396for i in $assocvecs ; do 397 case " $f " in 398 *" $i "*) ;; 399 *) f="$f $i" ;; 400 esac 401done 402assocvecs="$f" 403 404 405# uniq the architectures in all the configured targets. 406f="" 407for i in $selarchs ; do 408 case " $f " in 409 *" $i "*) ;; 410 *) f="$f $i" ;; 411 esac 412done 413selarchs="$f" 414 415# Target backend .o files. 416tb= 417 418elf="elf.lo elflink.lo elf-attrs.lo elf-strtab.lo elf-eh-frame.lo 419 dwarf1.lo dwarf2.lo" 420coffgen="coffgen.lo dwarf2.lo" 421coff="cofflink.lo $coffgen" 422ecoff="ecofflink.lo $coffgen" 423xcoff="xcofflink.lo $coffgen" 424 425elfxx_x86="elfxx-x86.lo elf-ifunc.lo elf-vxworks.lo" 426for vec in $selvecs 427do 428 target_size=32 429 case "$vec" in 430 # This list is alphabetized to make it easy to compare 431 # with the two vector lists in targets.c. For the same reason, 432 # use one entry per line, even though this leads to long lines. 433 aarch64_elf32_be_vec) tb="$tb elf32-aarch64.lo elfxx-aarch64.lo elf-ifunc.lo elf32.lo $elf"; target_size=64 ;; 434 aarch64_elf32_le_vec) tb="$tb elf32-aarch64.lo elfxx-aarch64.lo elf-ifunc.lo elf32.lo $elf"; target_size=64 ;; 435 aarch64_elf64_be_vec) tb="$tb elf64-aarch64.lo elfxx-aarch64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;; 436 aarch64_elf64_be_cloudabi_vec) tb="$tb elf64-aarch64.lo elfxx-aarch64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;; 437 aarch64_elf64_le_vec) tb="$tb elf64-aarch64.lo elfxx-aarch64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;; 438 aarch64_elf64_le_cloudabi_vec) tb="$tb elf64-aarch64.lo elfxx-aarch64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;; 439 aarch64_mach_o_vec) tb="$tb mach-o-aarch64.lo"; target_size=64 ;; 440 alpha_ecoff_le_vec) tb="$tb coff-alpha.lo ecoff.lo $ecoff"; target_size=64 ;; 441 alpha_elf64_vec) tb="$tb elf64-alpha.lo elf64.lo $elf"; target_size=64 ;; 442 alpha_elf64_fbsd_vec) tb="$tb elf64-alpha.lo elf64.lo $elf"; target_size=64 ;; 443 alpha_vms_vec) tb="$tb vms-alpha.lo vms-misc.lo vms-lib.lo"; target_size=64 ;; 444 alpha_vms_lib_txt_vec) tb="$tb vms-lib.lo vms-misc.lo" ;; 445 am33_elf32_linux_vec) tb="$tb elf32-am33lin.lo elf32.lo $elf" ;; 446 aout0_be_vec) tb="$tb aout0.lo aout32.lo" ;; 447 aout64_vec) tb="$tb demo64.lo aout64.lo"; target_size=64 ;; 448 aout_vec) tb="$tb host-aout.lo aout32.lo" ;; 449 arc_elf32_be_vec) tb="$tb elf32-arc.lo elf32.lo $elf" ;; 450 arc_elf32_le_vec) tb="$tb elf32-arc.lo elf32.lo $elf" ;; 451 arm_elf32_be_vec) tb="$tb elf32-arm.lo elf32.lo elf-nacl.lo elf-vxworks.lo $elf" ;; 452 arm_elf32_le_vec) tb="$tb elf32-arm.lo elf32.lo elf-nacl.lo elf-vxworks.lo $elf" ;; 453 arm_elf32_fdpic_be_vec) tb="$tb elf32-arm.lo elf32.lo elf-nacl.lo elf-vxworks.lo $elf" ;; 454 arm_elf32_fdpic_le_vec) tb="$tb elf32-arm.lo elf32.lo elf-nacl.lo elf-vxworks.lo $elf" ;; 455 arm_elf32_nacl_be_vec) tb="$tb elf32-arm.lo elf32.lo elf-nacl.lo elf-vxworks.lo $elf" ;; 456 arm_elf32_nacl_le_vec) tb="$tb elf32-arm.lo elf32.lo elf-nacl.lo elf-vxworks.lo $elf" ;; 457 arm_elf32_vxworks_be_vec) tb="$tb elf32-arm.lo elf32.lo elf-nacl.lo elf-vxworks.lo $elf" ;; 458 arm_elf32_vxworks_le_vec) tb="$tb elf32-arm.lo elf32.lo elf-nacl.lo elf-vxworks.lo $elf" ;; 459 arm_pe_be_vec) tb="$tb pe-arm.lo peigen.lo $coff" ;; 460 arm_pe_le_vec) tb="$tb pe-arm.lo peigen.lo $coff" ;; 461 arm_pe_wince_be_vec) tb="$tb pe-arm-wince.lo pe-arm.lo peigen.lo $coff" ;; 462 arm_pe_wince_le_vec) tb="$tb pe-arm-wince.lo pe-arm.lo peigen.lo $coff" ;; 463 arm_pei_be_vec) tb="$tb pei-arm.lo peigen.lo $coff" ;; 464 arm_pei_le_vec) tb="$tb pei-arm.lo peigen.lo $coff" ;; 465 arm_pei_wince_be_vec) tb="$tb pei-arm-wince.lo pei-arm.lo peigen.lo $coff" ;; 466 arm_pei_wince_le_vec) tb="$tb pei-arm-wince.lo pei-arm.lo peigen.lo $coff" ;; 467 arm_mach_o_vec) tb="$tb mach-o-arm.lo" ;; 468 avr_elf32_vec) tb="$tb elf32-avr.lo elf32.lo $elf" ;; 469 bfin_elf32_vec) tb="$tb elf32-bfin.lo elf32.lo $elf" ;; 470 bfin_elf32_fdpic_vec) tb="$tb elf32-bfin.lo elf32.lo $elf" ;; 471 cr16_elf32_vec) tb="$tb elf32-cr16.lo elf32.lo $elf" ;; 472 cris_aout_vec) tb="$tb aout-cris.lo" ;; 473 cris_elf32_vec) tb="$tb elf32-cris.lo elf32.lo $elf" ;; 474 cris_elf32_us_vec) tb="$tb elf32-cris.lo elf32.lo $elf" ;; 475 crx_elf32_vec) tb="$tb elf32-crx.lo elf32.lo $elf" ;; 476 csky_elf32_be_vec) tb="$tb elf32-csky.lo elf32.lo $elf" ;; 477 csky_elf32_le_vec) tb="$tb elf32-csky.lo elf32.lo $elf" ;; 478 d10v_elf32_vec) tb="$tb elf32-d10v.lo elf32.lo $elf" ;; 479 d30v_elf32_vec) tb="$tb elf32-d30v.lo elf32.lo $elf" ;; 480 dlx_elf32_be_vec) tb="$tb elf32-dlx.lo elf32.lo $elf" ;; 481 elf32_be_vec) tb="$tb elf32-gen.lo elf32.lo $elf" ;; 482 elf32_le_vec) tb="$tb elf32-gen.lo elf32.lo $elf" ;; 483 elf64_be_vec) tb="$tb elf64-gen.lo elf64.lo $elf"; target_size=64 ;; 484 elf64_le_vec) tb="$tb elf64-gen.lo elf64.lo $elf"; target_size=64 ;; 485 bpf_elf64_le_vec) tb="$tb elf64-bpf.lo elf64.lo $elf"; target_size=64;; 486 bpf_elf64_be_vec) tb="$tb elf64-bpf.lo elf64.lo $elf"; target_size=64 ;; 487 epiphany_elf32_vec) tb="$tb elf32-epiphany.lo elf32.lo $elf" ;; 488 fr30_elf32_vec) tb="$tb elf32-fr30.lo elf32.lo $elf" ;; 489 frv_elf32_vec) tb="$tb elf32-frv.lo elf32.lo $elf" ;; 490 frv_elf32_fdpic_vec) tb="$tb elf32-frv.lo elf32.lo $elf" ;; 491 h8300_elf32_vec) tb="$tb elf32-h8300.lo elf32.lo $elf" ;; 492 h8300_elf32_linux_vec) tb="$tb elf32-h8300.lo elf32.lo $elf" ;; 493 hppa_elf32_vec) tb="$tb elf32-hppa.lo elf32.lo $elf" ;; 494 hppa_elf32_linux_vec) tb="$tb elf32-hppa.lo elf32.lo $elf" ;; 495 hppa_elf32_nbsd_vec) tb="$tb elf32-hppa.lo elf32.lo $elf" ;; 496 hppa_elf64_vec) tb="$tb elf64-hppa.lo elf64.lo $elf"; target_size=64 ;; 497 hppa_elf64_linux_vec) tb="$tb elf64-hppa.lo elf64.lo $elf"; target_size=64 ;; 498 hppa_som_vec) tb="$tb som.lo" ;; 499 i386_aout_vec) tb="$tb i386aout.lo aout32.lo" ;; 500 i386_aout_bsd_vec) tb="$tb i386bsd.lo aout32.lo" ;; 501 i386_aout_lynx_vec) tb="$tb i386lynx.lo lynx-core.lo aout32.lo" ;; 502 i386_coff_vec) tb="$tb coff-i386.lo $coff" ;; 503 i386_coff_go32_vec) tb="$tb coff-go32.lo $coff" ;; 504 i386_coff_go32stubbed_vec) tb="$tb coff-stgo32.lo $coff" ;; 505 i386_coff_lynx_vec) tb="$tb cf-i386lynx.lo lynx-core.lo $coff" ;; 506 i386_elf32_vec) tb="$tb elf32-i386.lo $elfxx_x86 elf32.lo $elf" ;; 507 i386_elf32_fbsd_vec) tb="$tb elf32-i386.lo $elfxx_x86 elf32.lo $elf" ;; 508 i386_elf32_sol2_vec) tb="$tb elf32-i386.lo $elfxx_x86 elf32.lo $elf" ;; 509 i386_elf32_vxworks_vec) tb="$tb elf32-i386.lo $elfxx_x86 elf32.lo $elf" ;; 510 i386_mach_o_vec) tb="$tb mach-o-i386.lo" ;; 511 i386_msdos_vec) tb="$tb i386msdos.lo" ;; 512 i386_pe_vec) tb="$tb pe-i386.lo peigen.lo $coff" ;; 513 i386_pe_big_vec) tb="$tb pe-i386.lo peigen.lo $coff" ;; 514 i386_pei_vec) tb="$tb pei-i386.lo peigen.lo $coff" ;; 515 iamcu_elf32_vec) tb="$tb elf32-i386.lo $elfxx_x86 elf32.lo $elf" ;; 516 ia64_elf32_be_vec) tb="$tb elf32-ia64.lo elfxx-ia64.lo elf32.lo $elf" ;; 517 ia64_elf32_hpux_be_vec) tb="$tb elf32-ia64.lo elfxx-ia64.lo elf32.lo $elf" ;; 518 ia64_elf64_be_vec) tb="$tb elf64-ia64.lo elfxx-ia64.lo elf64.lo $elf"; target_size=64 ;; 519 ia64_elf64_le_vec) tb="$tb elf64-ia64.lo elfxx-ia64.lo elf64.lo $elf"; target_size=64 ;; 520 ia64_elf64_hpux_be_vec) tb="$tb elf64-ia64.lo elfxx-ia64.lo elf64.lo $elf"; target_size=64 ;; 521 ia64_elf64_vms_vec) tb="$tb elf64-ia64-vms.lo elf64-ia64.lo elfxx-ia64.lo elf64.lo vms-lib.lo vms-misc.lo $elf"; target_size=64 ;; 522 ia64_pei_vec) tb="$tb pei-ia64.lo pepigen.lo $coff"; target_size=64 ;; 523 ip2k_elf32_vec) tb="$tb elf32-ip2k.lo elf32.lo $elf" ;; 524 iq2000_elf32_vec) tb="$tb elf32-iq2000.lo elf32.lo $elf" ;; 525 k1om_elf64_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;; 526 k1om_elf64_fbsd_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;; 527 l1om_elf64_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;; 528 l1om_elf64_fbsd_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;; 529 lm32_elf32_vec) tb="$tb elf32-lm32.lo elf32.lo $elf" ;; 530 lm32_elf32_fdpic_vec) tb="$tb elf32-lm32.lo elf32.lo $elf" ;; 531 m32c_elf32_vec) tb="$tb elf32-m32c.lo elf32.lo $elf" ;; 532 m32r_elf32_vec) tb="$tb elf32-m32r.lo elf32.lo $elf" ;; 533 m32r_elf32_le_vec) tb="$tb elf32-m32r.lo elf32.lo $elf" ;; 534 m32r_elf32_linux_vec) tb="$tb elf32-m32r.lo elf32.lo $elf" ;; 535 m32r_elf32_linux_le_vec) tb="$tb elf32-m32r.lo elf32.lo $elf" ;; 536 m68hc11_elf32_vec) tb="$tb elf32-m68hc11.lo elf32-m68hc1x.lo elf32.lo $elf" ;; 537 m68hc12_elf32_vec) tb="$tb elf32-m68hc12.lo elf32-m68hc1x.lo elf32.lo $elf" ;; 538 m68k_elf32_vec) tb="$tb elf32-m68k.lo elf32.lo $elf" ;; 539 s12z_elf32_vec) tb="$tb elf32-s12z.lo elf32.lo $elf" ;; 540 mach_o_be_vec) tb="$tb mach-o.lo dwarf2.lo" ;; 541 mach_o_le_vec) tb="$tb mach-o.lo dwarf2.lo" ;; 542 mach_o_fat_vec) tb="$tb mach-o.lo dwarf2.lo" ;; 543 mcore_elf32_be_vec) tb="$tb elf32-mcore.lo elf32.lo $elf" ;; 544 mcore_elf32_le_vec) tb="$tb elf32-mcore.lo elf32.lo $elf" ;; 545 mcore_pe_be_vec) tb="$tb pe-mcore.lo peigen.lo $coff" ;; 546 mcore_pe_le_vec) tb="$tb pe-mcore.lo peigen.lo $coff" ;; 547 mcore_pei_be_vec) tb="$tb pei-mcore.lo peigen.lo $coff" ;; 548 mcore_pei_le_vec) tb="$tb pei-mcore.lo peigen.lo $coff" ;; 549 mep_elf32_vec) tb="$tb elf32-mep.lo elf32.lo $elf" ;; 550 mep_elf32_le_vec) tb="$tb elf32-mep.lo elf32.lo $elf" ;; 551 metag_elf32_vec) tb="$tb elf32-metag.lo elf32.lo $elf" ;; 552 microblaze_elf32_vec) tb="$tb elf32-microblaze.lo elf32.lo $elf" ;; 553 microblaze_elf32_le_vec) tb="$tb elf32-microblaze.lo elf32.lo $elf" ;; 554 mips_ecoff_be_vec) tb="$tb coff-mips.lo ecoff.lo $ecoff" ;; 555 mips_ecoff_le_vec) tb="$tb coff-mips.lo ecoff.lo $ecoff" ;; 556 mips_ecoff_bele_vec) tb="$tb coff-mips.lo ecoff.lo $ecoff" ;; 557 mips_elf32_be_vec) tb="$tb elf32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf $ecoff" ;; 558 mips_elf32_le_vec) tb="$tb elf32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf $ecoff" ;; 559 mips_elf32_n_be_vec) tb="$tb elfn32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf $ecoff"; target_size=64 ;; 560 mips_elf32_n_le_vec) tb="$tb elfn32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf $ecoff"; target_size=64 ;; 561 mips_elf32_ntrad_be_vec) tb="$tb elfn32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf $ecoff"; target_size=64 ;; 562 mips_elf32_ntrad_le_vec) tb="$tb elfn32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf $ecoff"; target_size=64 ;; 563 mips_elf32_ntradfbsd_be_vec) tb="$tb elfn32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf $ecoff"; target_size=64 ;; 564 mips_elf32_ntradfbsd_le_vec) tb="$tb elfn32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf $ecoff"; target_size=64 ;; 565 mips_elf32_trad_be_vec) tb="$tb elf32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf $ecoff" ;; 566 mips_elf32_trad_le_vec) tb="$tb elf32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf $ecoff" ;; 567 mips_elf32_tradfbsd_be_vec) tb="$tb elf32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf $ecoff" ;; 568 mips_elf32_tradfbsd_le_vec) tb="$tb elf32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf $ecoff" ;; 569 mips_elf32_vxworks_be_vec) tb="$tb elf32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf $ecoff" ;; 570 mips_elf32_vxworks_le_vec) tb="$tb elf32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf $ecoff" ;; 571 mips_elf64_be_vec) tb="$tb elf64-mips.lo elf64.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf $ecoff"; target_size=64 ;; 572 mips_elf64_le_vec) tb="$tb elf64-mips.lo elf64.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf $ecoff"; target_size=64 ;; 573 mips_elf64_trad_be_vec) tb="$tb elf64-mips.lo elf64.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf $ecoff"; target_size=64 ;; 574 mips_elf64_trad_le_vec) tb="$tb elf64-mips.lo elf64.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf $ecoff"; target_size=64 ;; 575 mips_elf64_tradfbsd_be_vec) tb="$tb elf64-mips.lo elf64.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf $ecoff"; target_size=64 ;; 576 mips_elf64_tradfbsd_le_vec) tb="$tb elf64-mips.lo elf64.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf $ecoff"; target_size=64 ;; 577 mmix_elf64_vec) tb="$tb elf64-mmix.lo elf64.lo $elf" target_size=64 ;; 578 mmix_mmo_vec) tb="$tb mmo.lo" target_size=64 ;; 579 mn10200_elf32_vec) tb="$tb elf-m10200.lo elf32.lo $elf" ;; 580 mn10300_elf32_vec) tb="$tb elf-m10300.lo elf32.lo $elf" ;; 581 moxie_elf32_be_vec) tb="$tb elf32-moxie.lo elf32.lo $elf" ;; 582 moxie_elf32_le_vec) tb="$tb elf32-moxie.lo elf32.lo $elf" ;; 583 msp430_elf32_vec) tb="$tb elf32-msp430.lo elf32.lo $elf" ;; 584 msp430_elf32_ti_vec) tb="$tb elf32-msp430.lo elf32.lo $elf" ;; 585 mt_elf32_vec) tb="$tb elf32-mt.lo elf32.lo $elf" ;; 586 nds32_elf32_be_vec) tb="$tb elf32-nds32.lo elf32.lo $elf" ;; 587 nds32_elf32_le_vec) tb="$tb elf32-nds32.lo elf32.lo $elf" ;; 588 nds32_elf32_linux_be_vec) tb="$tb elf32-nds32.lo elf32.lo $elf" ;; 589 nds32_elf32_linux_le_vec) tb="$tb elf32-nds32.lo elf32.lo $elf" ;; 590 nfp_elf64_vec) tb="$tb elf64-nfp.lo elf64.lo $elf" ;; 591 nios2_elf32_be_vec) tb="$tb elf32-nios2.lo elf32.lo $elf" ;; 592 nios2_elf32_le_vec) tb="$tb elf32-nios2.lo elf32.lo $elf" ;; 593 ns32k_aout_pc532mach_vec) tb="$tb pc532-mach.lo aout-ns32k.lo" ;; 594 ns32k_aout_pc532nbsd_vec) tb="$tb ns32knetbsd.lo aout-ns32k.lo" ;; 595 or1k_elf32_vec) tb="$tb elf32-or1k.lo elf32.lo $elf" ;; 596 pdp11_aout_vec) tb="$tb pdp11.lo" ;; 597 pef_vec) tb="$tb pef.lo" ;; 598 pef_xlib_vec) tb="$tb pef.lo" ;; 599 pj_elf32_vec) tb="$tb elf32-pj.lo elf32.lo $elf" ;; 600 pj_elf32_le_vec) tb="$tb elf32-pj.lo elf32.lo $elf" ;; 601 powerpc_boot_vec) tb="$tb ppcboot.lo" ;; 602 powerpc_elf32_vec) tb="$tb elf32-ppc.lo elf-vxworks.lo elf32.lo $elf" ;; 603 powerpc_elf32_le_vec) tb="$tb elf32-ppc.lo elf-vxworks.lo elf32.lo $elf" ;; 604 powerpc_elf32_fbsd_vec) tb="$tb elf32-ppc.lo elf-vxworks.lo elf32.lo $elf" ;; 605 powerpc_elf32_vxworks_vec) tb="$tb elf32-ppc.lo elf-vxworks.lo elf32.lo $elf" ;; 606 powerpc_elf64_vec) tb="$tb elf64-ppc.lo elf64-gen.lo elf64.lo $elf"; target_size=64 ;; 607 powerpc_elf64_le_vec) tb="$tb elf64-ppc.lo elf64-gen.lo elf64.lo $elf" target_size=64 ;; 608 powerpc_elf64_fbsd_vec) tb="$tb elf64-ppc.lo elf64-gen.lo elf64.lo $elf" target_size=64 ;; 609 powerpc_elf64_fbsd_le_vec) tb="$tb elf64-ppc.lo elf64-gen.lo elf64.lo $elf" target_size=64 ;; 610 powerpc_xcoff_vec) tb="$tb coff-rs6000.lo $xcoff" ;; 611 pru_elf32_vec) tb="$tb elf32-pru.lo elf32.lo $elf" ;; 612 riscv_elf32_vec) tb="$tb elf32-riscv.lo elfxx-riscv.lo elf-ifunc.lo elf32.lo $elf" ;; 613 riscv_elf64_vec) tb="$tb elf64-riscv.lo elf64.lo elfxx-riscv.lo elf-ifunc.lo elf32.lo $elf"; target_size=64 ;; 614 riscv_elf32_be_vec) tb="$tb elf32-riscv.lo elfxx-riscv.lo elf-ifunc.lo elf32.lo $elf" ;; 615 riscv_elf64_be_vec) tb="$tb elf64-riscv.lo elf64.lo elfxx-riscv.lo elf-ifunc.lo elf32.lo $elf"; target_size=64 ;; 616 rl78_elf32_vec) tb="$tb elf32-rl78.lo elf32.lo $elf" ;; 617 rs6000_xcoff64_vec) tb="$tb coff64-rs6000.lo aix5ppc-core.lo $xcoff"; target_size=64 ;; 618 rs6000_xcoff64_aix_vec) tb="$tb coff64-rs6000.lo aix5ppc-core.lo $xcoff"; target_size=64 ;; 619 rs6000_xcoff_vec) tb="$tb coff-rs6000.lo $xcoff" ;; 620 rx_elf32_be_vec) tb="$tb elf32-rx.lo elf32.lo $elf" ;; 621 rx_elf32_be_ns_vec) tb="$tb elf32-rx.lo elf32.lo $elf" ;; 622 rx_elf32_le_vec) tb="$tb elf32-rx.lo elf32.lo $elf" ;; 623 rx_elf32_linux_le_vec) tb="$tb elf32-rx.lo elf32.lo $elf" ;; 624 s390_elf32_vec) tb="$tb elf32-s390.lo elf32.lo $elf" ;; 625 s390_elf64_vec) tb="$tb elf64-s390.lo elf64.lo $elf"; target_size=64 ;; 626 score_elf32_be_vec) tb="$tb elf32-score.lo elf32-score7.lo elf32.lo elf64.lo $elf"; want64=true; target_size=64 ;; 627 score_elf32_le_vec) tb="$tb elf32-score.lo elf32-score7.lo elf32.lo elf64.lo $elf"; want64=true; target_size=64 ;; 628 sh_coff_vec) tb="$tb coff-sh.lo $coff" ;; 629 sh_coff_le_vec) tb="$tb coff-sh.lo $coff" ;; 630 sh_coff_small_vec) tb="$tb coff-sh.lo $coff" ;; 631 sh_coff_small_le_vec) tb="$tb coff-sh.lo $coff" ;; 632 sh_elf32_vec) tb="$tb elf32-sh.lo elf-vxworks.lo elf32.lo $elf coff-sh.lo $coff" ;; 633 sh_elf32_le_vec) tb="$tb elf32-sh.lo elf-vxworks.lo elf32.lo $elf coff-sh.lo $coff" ;; 634 sh_elf32_fdpic_be_vec) tb="$tb elf32-sh.lo elf-vxworks.lo elf32.lo $elf coff-sh.lo $coff" ;; 635 sh_elf32_fdpic_le_vec) tb="$tb elf32-sh.lo elf-vxworks.lo elf32.lo $elf coff-sh.lo $coff" ;; 636 sh_elf32_linux_vec) tb="$tb elf32-sh.lo elf-vxworks.lo elf32.lo $elf coff-sh.lo $coff" ;; 637 sh_elf32_linux_be_vec) tb="$tb elf32-sh.lo elf-vxworks.lo elf32.lo $elf coff-sh.lo $coff" ;; 638 sh_elf32_nbsd_vec) tb="$tb elf32-sh.lo elf-vxworks.lo elf32.lo $elf coff-sh.lo $coff" ;; 639 sh_elf32_nbsd_le_vec) tb="$tb elf32-sh.lo elf-vxworks.lo elf32.lo $elf coff-sh.lo $coff" ;; 640 sh_elf32_vxworks_vec) tb="$tb elf32-sh.lo elf-vxworks.lo elf32.lo $elf coff-sh.lo $coff" ;; 641 sh_elf32_vxworks_le_vec) tb="$tb elf32-sh.lo elf-vxworks.lo elf32.lo $elf coff-sh.lo $coff" ;; 642 sh_pe_le_vec) tb="$tb pe-sh.lo coff-sh.lo peigen.lo $coff" ;; 643 sh_pei_le_vec) tb="$tb pei-sh.lo coff-sh.lo peigen.lo $coff" ;; 644 sparc_elf32_vec) tb="$tb elf32-sparc.lo elfxx-sparc.lo elf-vxworks.lo elf32.lo $elf" ;; 645 sparc_elf32_sol2_vec) tb="$tb elf32-sparc.lo elfxx-sparc.lo elf-vxworks.lo elf32.lo $elf" ;; 646 sparc_elf32_vxworks_vec) tb="$tb elf32-sparc.lo elfxx-sparc.lo elf-vxworks.lo elf32.lo $elf" ;; 647 sparc_elf64_vec) tb="$tb elf64-sparc.lo elfxx-sparc.lo elf-vxworks.lo elf64.lo $elf"; target_size=64 ;; 648 sparc_elf64_fbsd_vec) tb="$tb elf64-sparc.lo elfxx-sparc.lo elf-vxworks.lo elf64.lo $elf"; target_size=64 ;; 649 sparc_elf64_sol2_vec) tb="$tb elf64-sparc.lo elfxx-sparc.lo elf-vxworks.lo elf64.lo $elf"; target_size=64 ;; 650 spu_elf32_vec) tb="$tb elf32-spu.lo elf32.lo $elf" ;; 651 sym_vec) tb="$tb xsym.lo" ;; 652 tic30_coff_vec) tb="$tb coff-tic30.lo $coffgen" ;; 653 tic4x_coff0_vec) tb="$tb coff-tic4x.lo $coffgen" ;; 654 tic4x_coff0_beh_vec) tb="$tb coff-tic4x.lo $coffgen" ;; 655 tic4x_coff1_vec) tb="$tb coff-tic4x.lo $coffgen" ;; 656 tic4x_coff1_beh_vec) tb="$tb coff-tic4x.lo $coffgen" ;; 657 tic4x_coff2_vec) tb="$tb coff-tic4x.lo $coffgen" ;; 658 tic4x_coff2_beh_vec) tb="$tb coff-tic4x.lo $coffgen" ;; 659 tic54x_coff0_vec) tb="$tb coff-tic54x.lo $coffgen" ;; 660 tic54x_coff0_beh_vec) tb="$tb coff-tic54x.lo $coffgen" ;; 661 tic54x_coff1_vec) tb="$tb coff-tic54x.lo $coffgen" ;; 662 tic54x_coff1_beh_vec) tb="$tb coff-tic54x.lo $coffgen" ;; 663 tic54x_coff2_vec) tb="$tb coff-tic54x.lo $coffgen" ;; 664 tic54x_coff2_beh_vec) tb="$tb coff-tic54x.lo $coffgen" ;; 665 tic6x_elf32_be_vec) tb="$tb elf32-tic6x.lo elf32.lo $elf" ;; 666 tic6x_elf32_le_vec) tb="$tb elf32-tic6x.lo elf32.lo $elf" ;; 667 tic6x_elf32_c6000_be_vec) tb="$tb elf32-tic6x.lo elf32.lo $elf" ;; 668 tic6x_elf32_c6000_le_vec) tb="$tb elf32-tic6x.lo elf32.lo $elf" ;; 669 tic6x_elf32_linux_be_vec) tb="$tb elf32-tic6x.lo elf32.lo $elf" ;; 670 tic6x_elf32_linux_le_vec) tb="$tb elf32-tic6x.lo elf32.lo $elf" ;; 671 tilegx_elf32_be_vec) tb="$tb elf32-tilegx.lo elfxx-tilegx.lo elf32.lo $elf" ; target_size=32 ;; 672 tilegx_elf32_le_vec) tb="$tb elf32-tilegx.lo elfxx-tilegx.lo elf32.lo $elf" ; target_size=32 ;; 673 tilegx_elf64_be_vec) tb="$tb elf64-tilegx.lo elfxx-tilegx.lo elf64.lo $elf" ; target_size=64 ;; 674 tilegx_elf64_le_vec) tb="$tb elf64-tilegx.lo elfxx-tilegx.lo elf64.lo $elf" ; target_size=64 ;; 675 tilepro_elf32_vec) tb="$tb elf32-tilepro.lo elf32.lo $elf" ;; 676 v800_elf32_vec) tb="$tb elf32-v850.lo elf32.lo $elf" ;; 677 v850_elf32_vec) tb="$tb elf32-v850.lo elf32.lo $elf" ;; 678 vax_aout_1knbsd_vec) tb="$tb vax1knetbsd.lo aout32.lo" ;; 679 vax_aout_nbsd_vec) tb="$tb vaxnetbsd.lo aout32.lo" ;; 680 vax_elf32_vec) tb="$tb elf32-vax.lo elf32.lo $elf" ;; 681 ft32_elf32_vec) tb="$tb elf32-ft32.lo elf32.lo $elf" ;; 682 visium_elf32_vec) tb="$tb elf32-visium.lo elf32.lo $elf" ;; 683 wasm_vec) tb="$tb wasm-module.lo" ;; 684 wasm32_elf32_vec) tb="$tb elf32-wasm32.lo elf32.lo $elf" ;; 685 x86_64_coff_vec) tb="$tb coff-x86_64.lo $coff"; target_size=64 ;; 686 x86_64_elf32_vec) tb="$tb elf64-x86-64.lo $elfxx_x86 elf64.lo elf32.lo $elf"; target_size=64 ;; 687 x86_64_elf64_vec) tb="$tb elf64-x86-64.lo $elfxx_x86 elf64.lo $elf"; target_size=64 ;; 688 x86_64_elf64_cloudabi_vec) tb="$tb elf64-x86-64.lo $elfxx_x86 elf64.lo $elf"; target_size=64 ;; 689 x86_64_elf64_fbsd_vec) tb="$tb elf64-x86-64.lo $elfxx_x86 elf64.lo $elf"; target_size=64 ;; 690 x86_64_elf64_sol2_vec) tb="$tb elf64-x86-64.lo $elfxx_x86 elf64.lo $elf"; target_size=64 ;; 691 x86_64_mach_o_vec) tb="$tb mach-o-x86-64.lo" ;; 692 x86_64_pe_vec) tb="$tb pe-x86_64.lo pex64igen.lo $coff"; target_size=64 ;; 693 x86_64_pe_big_vec) tb="$tb pe-x86_64.lo pex64igen.lo $coff"; target_size=64 ;; 694 x86_64_pei_vec) tb="$tb pei-x86_64.lo pex64igen.lo $coff"; target_size=64 ;; 695 xc16x_elf32_vec) tb="$tb elf32-xc16x.lo elf32.lo $elf" ;; 696 xgate_elf32_vec) tb="$tb elf32-xgate.lo elf32.lo $elf" ;; 697 xstormy16_elf32_vec) tb="$tb elf32-xstormy16.lo elf32.lo $elf" ;; 698 xtensa_elf32_be_vec) tb="$tb xtensa-isa.lo xtensa-modules.lo elf32-xtensa.lo elf32.lo $elf" ;; 699 xtensa_elf32_le_vec) tb="$tb xtensa-isa.lo xtensa-modules.lo elf32-xtensa.lo elf32.lo $elf" ;; 700 z80_coff_vec) tb="$tb coff-z80.lo reloc16.lo $coffgen" ;; 701 z80_elf32_vec) tb="$tb elf32-z80.lo elf32.lo $elf" ;; 702 z8k_coff_vec) tb="$tb coff-z8k.lo reloc16.lo $coff" ;; 703 704 # These appear out of order in targets.c 705 srec_vec) tb="$tb srec.lo" ;; 706 symbolsrec_vec) tb="$tb srec.lo" ;; 707 tekhex_vec) tb="$tb tekhex.lo" ;; 708 core_cisco_be_vec) tb="$tb cisco-core.lo" ;; 709 core_cisco_le_vec) tb="$tb cisco-core.lo" ;; 710 711 "") ;; 712 *) AC_MSG_ERROR(*** unknown target vector $vec) ;; 713 esac 714 715 if test ${target_size} = 64; then 716 target64=true 717 fi 718 if test x"${vec}" = x"${defvec}"; then 719 bfd_default_target_size=${target_size} 720 fi 721done 722 723if test "$plugins" = "yes"; then 724 tb="$tb plugin.lo" 725fi 726 727# Target architecture .o files. 728# A couple of CPUs use shorter file names to avoid problems on DOS 729# filesystems. 730ta=`echo $selarchs | sed -e s/bfd_/cpu-/g -e s/_arch/.lo/g -e s/mn10200/m10200/ -e s/mn10300/m10300/` 731 732# Weed out duplicate .o files. 733f="" 734for i in $tb ; do 735 case " $f " in 736 *" $i "*) ;; 737 *) f="$f $i" ;; 738 esac 739done 740tb="$f" 741 742f="" 743for i in $ta ; do 744 case " $f " in 745 *" $i "*) ;; 746 *) f="$f $i" ;; 747 esac 748done 749ta="$f" 750 751bfd_backends="$tb" 752bfd_machines="$ta" 753 754if test x${all_targets} = xtrue ; then 755 bfd_backends="${bfd_backends}"' $(ALL_BACKENDS)' 756 bfd_machines="${bfd_machines}"' $(ALL_MACHINES)' 757 selvecs= 758 havevecs=-DHAVE_all_vecs 759 selarchs= 760 test -n "$assocvecs" && 761 assocvecs=`echo $assocvecs | sed -e 's/^/\&/' -e 's/ \(.\)/,\&\1/g'` 762else # all_targets is true 763 # Only set these if they will be nonempty, for the clever echo. 764 havevecs= 765 assocvecs= 766 test -n "$selvecs" && 767 havevecs=`echo $selvecs | sed -e 's/^/-DHAVE_/' -e 's/ \(.\)/ -DHAVE_\1/g'` 768 test -n "$selvecs" && 769 selvecs=`echo $selvecs | sed -e 's/^/\&/' -e 's/ \(.\)/,\&\1/g'` 770 test -n "$selarchs" && 771 selarchs=`echo $selarchs | sed -e 's/^/\&/' -e 's/ \(.\)/,\&\1/g'` 772fi # all_targets is true 773 774# 64-bit archives need a 64-bit bfd_vma. 775if test "x$want_64_bit_archive" = xtrue; then 776 want64=true 777 AC_DEFINE(USE_64_BIT_ARCHIVE, 1, 778 [Define if 64-bit archives should always be used.]) 779fi 780 781case ${host64}-${target64}-${want64} in 782 *true*) 783 wordsize=64 784 bfd64_libs='$(BFD64_LIBS)' 785 all_backends='$(BFD64_BACKENDS) $(BFD32_BACKENDS)' 786 if 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_MSG_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 all_backends='$(BFD32_BACKENDS)' 806 ;; 807esac 808 809tdefaults="" 810test -n "${defvec}" && tdefaults="${tdefaults} -DDEFAULT_VECTOR=${defvec}" 811test -n "${selvecs}" && tdefaults="${tdefaults} -DSELECT_VECS='${selvecs}'" 812test -n "${assocvecs}" && tdefaults="${tdefaults} -DASSOCIATED_VECS='${assocvecs}'" 813test -n "${selarchs}" && tdefaults="${tdefaults} -DSELECT_ARCHITECTURES='${selarchs}'" 814 815AC_SUBST(wordsize) 816AC_SUBST(bfd64_libs) 817AC_SUBST(all_backends) 818AC_SUBST(bfd_backends) 819AC_SUBST(bfd_machines) 820AC_SUBST(bfd_default_target_size) 821AC_SUBST(tdefaults) 822AC_SUBST(havevecs) 823 824# If we are configured native, pick a core file support file. 825COREFILE= 826COREFLAG= 827CORE_HEADER= 828TRAD_HEADER= 829if test "${target}" = "${host}"; then 830 case "${host}" in 831 alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu | alpha*-*-*vms*) 832 COREFILE='' 833 ;; 834 alpha*-*-linux-*) 835 COREFILE=trad-core.lo 836 TRAD_HEADER='"hosts/alphalinux.h"' 837 ;; 838 alpha*-*-netbsd* | alpha*-*-openbsd*) 839 COREFILE=netbsd-core.lo 840 ;; 841 alpha*-*-*) 842 COREFILE=osf-core.lo 843 ;; 844 arm-*-freebsd* | arm-*-kfreebsd*-gnu) 845 COREFILE='' ;; 846 arm*-*-netbsd* | arm-*-openbsd*) 847 COREFILE=netbsd-core.lo 848 ;; 849 arm-*-riscix) COREFILE=trad-core.lo ;; 850 hppa*-*-hpux*) COREFILE=hpux-core.lo ;; 851 hppa*-*-hiux*) COREFILE=hpux-core.lo ;; 852 hppa*-*-mpeix*) COREFILE=hpux-core.lo ;; 853 hppa*-*-bsd*) COREFILE="hpux-core.lo hppabsd-core.lo" 854 COREFLAG="-DHPUX_CORE -DHPPABSD_CORE" ;; 855 hppa*-*-netbsd* | hppa*-*-openbsd*) 856 COREFILE=netbsd-core.lo 857 ;; 858 859changequote(,)dnl 860 i[3-7]86-sequent-bsd*) 861changequote([,])dnl 862 COREFILE=trad-core.lo 863 TRAD_HEADER='"hosts/symmetry.h"' 864 ;; 865changequote(,)dnl 866 i[3-7]86-sequent-sysv4*) ;; 867 i[3-7]86-sequent-sysv*) 868changequote([,])dnl 869 COREFILE=trad-core.lo 870 TRAD_HEADER='"hosts/symmetry.h"' 871 ;; 872changequote(,)dnl 873 i[3-7]86-*-bsdi) 874changequote([,])dnl 875 COREFILE= 876 ;; 877changequote(,)dnl 878 i[3-7]86-*-bsd* | i[3-7]86-*-freebsd[123] | i[3-7]86-*-freebsd[123]\.* | i[3-7]86-*-freebsd4\.[01234] | i[3-7]86-*-freebsd4\.[01234]\.* | i[3-7]86-*-freebsd*aout*) 879changequote([,])dnl 880 COREFILE=trad-core.lo 881 TRAD_HEADER='"hosts/i386bsd.h"' 882 ;; 883changequote(,)dnl 884 i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu | i[3-7]86-*-dragonfly*) 885changequote([,])dnl 886 COREFILE='' 887 TRAD_HEADER='"hosts/i386bsd.h"' 888 ;; 889changequote(,)dnl 890 i[3-7]86-*-netbsd* | i[3-7]86-*-knetbsd*-gnu | i[3-7]86-*-openbsd*) 891changequote([,])dnl 892 COREFILE=netbsd-core.lo 893 ;; 894changequote(,)dnl 895 i[3-7]86-esix-sysv3*) 896changequote([,])dnl 897 COREFILE=trad-core.lo 898 TRAD_HEADER='"hosts/esix.h"' 899 ;; 900changequote(,)dnl 901 i[3-7]86-*-sco3.2v5*) 902changequote([,])dnl 903 COREFILE=sco5-core.lo 904 ;; 905changequote(,)dnl 906 i[3-7]86-*-sco* | i[3-7]86-*-isc*) 907changequote([,])dnl 908 COREFILE=trad-core.lo 909 TRAD_HEADER='"hosts/i386sco.h"' 910 ;; 911changequote(,)dnl 912 i[3-7]86-*-mach3*) 913changequote([,])dnl 914 COREFILE=trad-core.lo 915 TRAD_HEADER='"hosts/i386mach3.h"' 916 ;; 917changequote(,)dnl 918 i[3-7]86-*-linux-*) 919changequote([,])dnl 920 COREFILE=trad-core.lo 921 TRAD_HEADER='"hosts/i386linux.h"' 922 case "$enable_targets"-"$want64" in 923 *x86_64-*linux*|*-true) 924 CORE_HEADER='"hosts/x86-64linux.h"' 925 esac 926 ;; 927changequote(,)dnl 928 i[3-7]86-*-isc*) COREFILE=trad-core.lo ;; 929 i[3-7]86-*-aix*) COREFILE=aix386-core.lo ;; 930changequote([,])dnl 931 mips*-*-netbsd* | mips*-*-openbsd*) 932 COREFILE=netbsd-core.lo 933 ;; 934 mips-sgi-irix4*) COREFILE=irix-core.lo ;; 935 mips-sgi-irix5*) COREFILE=irix-core.lo ;; 936 mips-sgi-irix6*) COREFILE=irix-core.lo ;; 937 m68*-*-linux-*) 938 COREFILE=trad-core.lo 939 TRAD_HEADER='"hosts/m68klinux.h"' 940 ;; 941 m68*-*-netbsd*) 942 COREFILE=netbsd-core.lo 943 ;; 944 ns32k-pc532-mach) 945 COREFILE=trad-core.lo 946 TRAD_HEADER='"hosts/pc532mach.h"' 947 ;; 948 ns32k-*-netbsd* | ns32k-*-openbsd*) 949 COREFILE=netbsd-core.lo 950 ;; 951 rs6000-*-lynx*) 952 COREFILE=lynx-core.lo 953 ;; 954changequote(,)dnl 955 rs6000-*-aix[5-9].* | powerpc-*-aix[5-9].* | powerpc64-*-aix[5-9].*) 956changequote([,])dnl 957 COREFILE=rs6000-core.lo 958 COREFLAG="$COREFLAG -DAIX_5_CORE -DAIX_CORE_DUMPX_CORE" 959 ;; 960changequote(,)dnl 961 rs6000-*-aix4.[3-9]* | powerpc-*-aix4.[3-9]*) 962changequote([,])dnl 963 COREFILE=rs6000-core.lo 964 COREFLAG="$COREFLAG -DAIX_CORE_DUMPX_CORE" 965 # Not all versions of AIX with -DAIX_CORE_DUMPX_CORE 966 # have c_impl as a member of struct core_dumpx 967 AC_MSG_CHECKING([for c_impl in struct core_dumpx]) 968 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <core.h>]], [[struct core_dumpx c; c.c_impl = 0;]])],[AC_DEFINE(HAVE_ST_C_IMPL, 1, 969 [Define if struct core_dumpx has member c_impl]) 970 AC_MSG_RESULT(yes)],[AC_MSG_RESULT(no)]) 971 ;; 972 rs6000-*-aix4*) COREFILE=rs6000-core.lo ;; 973 rs6000-*-*) COREFILE=rs6000-core.lo ;; 974 powerpc64-*-aix*) COREFILE=rs6000-core.lo ;; 975 powerpc-*-aix4*) COREFILE=rs6000-core.lo ;; 976 powerpc-*-aix*) COREFILE=rs6000-core.lo ;; 977 powerpc-*-beos*) ;; 978 powerpc-*-freebsd* | powerpc-*-kfreebsd*-gnu) 979 COREFILE='' ;; 980 powerpc-*-netbsd*) COREFILE=netbsd-core.lo ;; 981 powerpc-*-*bsd*) COREFILE=netbsd-core.lo ;; 982 s390*-*-*) COREFILE=trad-core.lo ;; 983 sh*-*-netbsd* | sh*-*-openbsd*) 984 COREFILE=netbsd-core.lo 985 ;; 986 sparc-*-netbsd* | sparc*-*-openbsd*) 987 COREFILE=netbsd-core.lo 988 ;; 989 vax-*-netbsd* | vax-*-openbsd*) 990 COREFILE=netbsd-core.lo 991 ;; 992 vax-*-ultrix2*) 993 COREFILE=trad-core.lo 994 TRAD_HEADER='"hosts/vaxult2.h"' 995 ;; 996 vax-*-ultrix*) 997 COREFILE=trad-core.lo 998 TRAD_HEADER='"hosts/vaxult2.h"' 999 ;; 1000 vax-*-linux-*) 1001 COREFILE=trad-core.lo 1002 TRAD_HEADER='"hosts/vaxlinux.h"' 1003 ;; 1004 vax-*-*) 1005 COREFILE=trad-core.lo 1006 TRAD_HEADER='"hosts/vaxbsd.h"' 1007 ;; 1008 x86_64-*-linux*) 1009 CORE_HEADER='"hosts/x86-64linux.h"' 1010 ;; 1011 x86_64-*-netbsd* | x86_64-*-openbsd*) 1012 COREFILE=netbsd-core.lo 1013 ;; 1014 esac 1015 1016 case "$COREFILE" in 1017 aix386-core.lo) COREFLAG=-DAIX386_CORE ;; 1018 hppabsd-core.lo) COREFLAG=-DHPPABSD_CORE ;; 1019 hpux-core.lo) COREFLAG=-DHPUX_CORE ;; 1020 irix-core.lo) COREFLAG=-DIRIX_CORE ;; 1021 lynx-core.lo) COREFLAG=-DLYNX_CORE ;; 1022 netbsd-core.lo) COREFLAG=-DNETBSD_CORE ;; 1023 osf-core.lo) COREFLAG=-DOSF_CORE ;; 1024 ptrace-core.lo) COREFLAG=-DPTRACE_CORE ;; 1025 rs6000-core.lo) COREFLAG="$COREFLAG -DAIX_CORE" ;; 1026 sco5-core.lo) COREFLAG="$COREFLAG -DSCO5_CORE" ;; 1027 trad-core.lo) COREFLAG="$COREFLAG -DTRAD_CORE" ;; 1028 esac 1029 1030 # ELF corefile support has several flavors, but all of 1031 # them use something called <sys/procfs.h> 1032 BFD_SYS_PROCFS_H 1033 if test "$ac_cv_header_sys_procfs_h" = yes; then 1034 BFD_HAVE_SYS_PROCFS_TYPE(prstatus_t) 1035 BFD_HAVE_SYS_PROCFS_TYPE(prstatus32_t) 1036 BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(prstatus_t, pr_who) 1037 BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(prstatus32_t, pr_who) 1038 BFD_HAVE_SYS_PROCFS_TYPE(pstatus_t) 1039 BFD_HAVE_SYS_PROCFS_TYPE(pxstatus_t) 1040 BFD_HAVE_SYS_PROCFS_TYPE(pstatus32_t) 1041 BFD_HAVE_SYS_PROCFS_TYPE(prpsinfo_t) 1042 BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(prpsinfo_t, pr_pid) 1043 BFD_HAVE_SYS_PROCFS_TYPE(prpsinfo32_t) 1044 BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(prpsinfo32_t, pr_pid) 1045 BFD_HAVE_SYS_PROCFS_TYPE(psinfo_t) 1046 BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(psinfo_t, pr_pid) 1047 BFD_HAVE_SYS_PROCFS_TYPE(psinfo32_t) 1048 BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(psinfo32_t, pr_pid) 1049 BFD_HAVE_SYS_PROCFS_TYPE(lwpstatus_t) 1050 BFD_HAVE_SYS_PROCFS_TYPE(lwpxstatus_t) 1051 BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(lwpstatus_t, pr_context) 1052 BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(lwpstatus_t, pr_reg) 1053 BFD_HAVE_SYS_PROCFS_TYPE_MEMBER(lwpstatus_t, pr_fpreg) 1054 BFD_HAVE_SYS_PROCFS_TYPE(win32_pstatus_t) 1055 fi 1056fi 1057AC_SUBST(COREFILE) 1058AC_SUBST(COREFLAG) 1059if test -n "$CORE_HEADER"; then 1060 AC_DEFINE_UNQUOTED(CORE_HEADER, $CORE_HEADER, 1061 [Name of host specific core header file to include in elf.c.]) 1062fi 1063if test -n "$TRAD_HEADER"; then 1064 AC_DEFINE_UNQUOTED(TRAD_HEADER, $TRAD_HEADER, 1065 [Name of host specific header file to include in trad-core.c.]) 1066fi 1067 1068if test "$plugins" = "yes"; then 1069 supports_plugins=1 1070else 1071 supports_plugins=0 1072fi 1073AC_SUBST(supports_plugins) 1074AC_SUBST(lt_cv_dlopen_libs) 1075 1076# Determine the host dependent file_ptr a.k.a. off_t type. In order 1077# prefer: off64_t - if ftello64 and fseeko64, off_t - if ftello and 1078# fseeko, long. This assumes that sizeof off_t is .ge. sizeof long. 1079# Hopefully a reasonable assumption since fseeko et.al. should be 1080# upward compatible. 1081AC_CHECK_FUNCS(ftello ftello64 fseeko fseeko64 fopen64) 1082AC_CHECK_DECLS([ftello, ftello64, fseeko, fseeko64, fopen64]) 1083if test x"$ac_cv_func_ftello" = xyes -a x"$ac_cv_func_fseeko" = xyes; then 1084 AC_CHECK_SIZEOF(off_t) 1085fi 1086AC_MSG_CHECKING([file_ptr type]) 1087bfd_file_ptr="long" 1088bfd_ufile_ptr="unsigned long" 1089if test x"$ac_cv_func_ftello64" = xyes -a x"$ac_cv_func_fseeko64" = xyes \ 1090 -o x"${ac_cv_sizeof_off_t}" = x8; then 1091 bfd_file_ptr=BFD_HOST_64_BIT 1092 bfd_ufile_ptr=BFD_HOST_U_64_BIT 1093fi 1094AC_MSG_RESULT($bfd_file_ptr) 1095AC_SUBST(bfd_file_ptr) 1096AC_SUBST(bfd_ufile_ptr) 1097 1098AC_FUNC_MMAP 1099AC_CHECK_FUNCS(madvise mprotect) 1100case ${want_mmap}+${ac_cv_func_mmap_fixed_mapped} in 1101 true+yes ) AC_DEFINE(USE_MMAP, 1, [Use mmap if it's available?]) ;; 1102esac 1103 1104rm -f doc/config.status 1105AC_CONFIG_FILES([Makefile doc/Makefile bfd-in3.h:bfd-in2.h po/Makefile.in:po/Make-in]) 1106 1107dnl We need this duplication, even though we use AM_PO_SUBDIRS, because of 1108dnl our two separate POTFILES. Yuck. 1109AC_CONFIG_COMMANDS([default], 1110[[ 1111case "$srcdir" in 1112 .) srcdirpre= ;; 1113 *) srcdirpre='$(srcdir)/' ;; 1114esac 1115POFILES= 1116GMOFILES= 1117for lang in dummy $OBSOLETE_ALL_LINGUAS; do 1118 if test $lang != dummy; then 1119 POFILES="$POFILES $srcdirpre$lang.po" 1120 GMOFILES="$GMOFILES $srcdirpre$lang.gmo" 1121 fi 1122done 1123sed -e '/SRC-POTFILES =/r po/SRC-POTFILES' \ 1124 -e '/BLD-POTFILES =/r po/BLD-POTFILES' \ 1125 -e "s,@POFILES@,$POFILES," \ 1126 -e "s,@GMOFILES@,$GMOFILES," \ 1127 po/Makefile.in > po/Makefile]],[[]]) 1128 1129dnl Required by html, pdf, install-pdf and install-html 1130AC_SUBST(datarootdir) 1131AC_SUBST(docdir) 1132AC_SUBST(htmldir) 1133AC_SUBST(pdfdir) 1134 1135AC_OUTPUT 1136 1137GNU_MAKE_JOBSERVER 1138