1# config.bfd 2# Convert a canonical host type into a BFD host type. 3# Set shell variable targ to canonical target name, and run 4# using ``. config.bfd''. 5# Sets the following shell variables: 6# targ_defvec Default vector for this target 7# targ_selvecs Vectors to build for this target 8# targ64_selvecs Vectors to build if --enable-64-bit-bfd is given 9# or if host is 64 bit. 10# targ_archs Architectures for this target 11# targ_cflags $(CFLAGS) for this target (FIXME: pretty bogus) 12# targ_underscore Whether underscores are used: yes or no 13 14# Part of this file is processed by targmatch.sed to generate the 15# targmatch.h file. The #ifdef and #endif lines that appear below are 16# copied directly into targmatch.h. 17 18# The binutils c++filt program wants to know whether underscores are 19# stripped or not. That is why we set targ_underscore. c++filt uses 20# this information to choose a default. This information is 21# duplicated in the symbol_leading_char field of the BFD target 22# vector, but c++filt does not deal with object files and is not 23# linked against libbfd.a. It is not terribly important that c++filt 24# get this right; it is just convenient. 25 26targ_defvec= 27targ_selvecs= 28targ64_selvecs= 29targ_cflags= 30targ_underscore=no 31 32# Catch obsolete configurations. 33case $targ in 34 m68*-apple-aux* | \ 35 m68*-apollo-* | \ 36 m68*-bull-sysv* | \ 37 m68*-*-rtemscoff* | \ 38 i960-*-rtems* | \ 39 or32-*-rtems* | \ 40 null) 41 if test "x$enable_obsolete" != xyes; then 42 echo "*** Configuration $targ is obsolete." >&2 43 echo "*** Specify --enable-obsolete to build it anyway." >&2 44 echo "*** Support will be REMOVED in the next major release of BINUTILS," >&2 45 echo "*** unless a maintainer comes forward." >&2 46 exit 1 47 fi;; 48esac 49 50case $targ in 51 m68*-*-lynxos* | \ 52 sparc-*-lynxos* | \ 53 vax-*-vms* | \ 54 arm-*-oabi | \ 55 thumb-*-oabi | \ 56 a29k-* | \ 57 hppa*-*-rtems* | \ 58 *-go32-rtems* | \ 59 i[3-7]86*-*-rtemscoff* | \ 60 mips*el-*-rtems* | \ 61 powerpcle-*-rtems* | \ 62 sparc*-*-rtemsaout* | \ 63 null) 64 echo "*** Configuration $targ is obsolete." >&2 65 echo "*** Support has been REMOVED." >&2 66 exit 1 67 ;; 68esac 69 70targ_cpu=`echo $targ | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` 71case "${targ_cpu}" in 72aarch64) targ_archs=bfd_aarch64_arch ;; 73alpha*) targ_archs=bfd_alpha_arch ;; 74arm*) targ_archs=bfd_arm_arch ;; 75bfin*) targ_archs=bfd_bfin_arch ;; 76c30*) targ_archs=bfd_tic30_arch ;; 77c4x*) targ_archs=bfd_tic4x_arch ;; 78c54x*) targ_archs=bfd_tic54x_arch ;; 79crisv32) targ_archs=bfd_cris_arch ;; 80crx*) targ_archs=bfd_crx_arch ;; 81dlx*) targ_archs=bfd_dlx_arch ;; 82hppa*) targ_archs=bfd_hppa_arch ;; 83i[3-7]86) targ_archs=bfd_i386_arch ;; 84i370) targ_archs=bfd_i370_arch ;; 85m6811*|m68hc11*) targ_archs="bfd_m68hc11_arch bfd_m68hc12_arch" ;; 86m6812*|m68hc12*) targ_archs="bfd_m68hc12_arch bfd_m68hc11_arch" ;; 87m68*) targ_archs=bfd_m68k_arch ;; 88m88*) targ_archs=bfd_m88k_arch ;; 89maxq*) targ_archs=bfd_maxq_arch ;; 90mips*) targ_archs=bfd_mips_arch ;; 91or32*) targ_archs=bfd_or32_arch ;; 92pdp11*) targ_archs=bfd_pdp11_arch ;; 93pj*) targ_archs="bfd_pj_arch bfd_i386_arch";; 94powerpc*) targ_archs="bfd_rs6000_arch bfd_powerpc_arch" ;; 95rs6000) targ_archs="bfd_rs6000_arch bfd_powerpc_arch" ;; 96s390*) targ_archs=bfd_s390_arch ;; 97sh*) targ_archs=bfd_sh_arch ;; 98sparc*) targ_archs=bfd_sparc_arch ;; 99strongarm*) targ_archs=bfd_arm_arch ;; 100thumb*) targ_archs=bfd_arm_arch ;; 101v850*) targ_archs=bfd_v850_arch ;; 102x86_64) targ_archs=bfd_i386_arch ;; 103xscale*) targ_archs=bfd_arm_arch ;; 104xtensa*) targ_archs=bfd_xtensa_arch ;; 105z80|r800) targ_archs=bfd_z80_arch ;; 106z8k*) targ_archs=bfd_z8k_arch ;; 107am33_2.0) targ_archs=bfd_mn10300_arch ;; 108*) targ_archs=bfd_${targ_cpu}_arch ;; 109esac 110 111 112# WHEN ADDING ENTRIES TO THIS MATRIX: 113# Make sure that the left side always has two dashes. Otherwise you 114# can get spurious matches. Even for unambiguous cases, do this as a 115# convention, else the table becomes a real mess to understand and maintain. 116# 117# Keep obsolete entries above the START comment, to keep them out of 118# targmatch.h. 119 120case "${targ}" in 121 mips*-dec-bsd*) 122 echo "This target is obsolete and has been removed." 123 exit 1 124 ;; 125 126 mips*-*-mach3*) 127 echo "This target is obsolete and has been removed." 128 exit 1 129 ;; 130 131 mips*-*-pe*) 132 echo "This target is obsolete and has been removed." 133 exit 1 134 ;; 135 136# START OF targmatch.h 137#ifdef BFD64 138 aarch64-*-openbsd*) 139 targ_defvec=bfd_elf64_aarch64_vec 140 ;; 141 142 alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu) 143 targ_defvec=bfd_elf64_alpha_freebsd_vec 144 targ_selvecs=ecoffalpha_little_vec 145 # FreeBSD <= 4.0 supports only the old nonstandard way of ABI labelling. 146 case "${targ}" in 147 alpha*-*-freebsd3* | alpha*-*-freebsd4 | alpha*-*-freebsd4.0*) 148 targ_cflags=-DOLD_FREEBSD_ABI_LABEL ;; 149 esac 150 ;; 151 alpha*-*-netbsd* | alpha*-*-openbsd*) 152 targ_defvec=bfd_elf64_alpha_vec 153 targ_selvecs=ecoffalpha_little_vec 154 ;; 155 alpha*-*-netware*) 156 targ_defvec=ecoffalpha_little_vec 157 targ_selvecs=nlm32_alpha_vec 158 ;; 159 alpha*-*-linuxecoff*) 160 targ_defvec=ecoffalpha_little_vec 161 targ_selvecs=bfd_elf64_alpha_vec 162 ;; 163 alpha*-*-linux-* | alpha*-*-elf*) 164 targ_defvec=bfd_elf64_alpha_vec 165 targ_selvecs=ecoffalpha_little_vec 166 ;; 167 alpha*-*-*vms*) 168 targ_defvec=vms_alpha_vec 169 ;; 170 alpha*-*-*) 171 targ_defvec=ecoffalpha_little_vec 172 ;; 173 ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu | ia64*-*-openbsd*) 174 targ_defvec=bfd_elf64_ia64_little_vec 175 targ_selvecs="bfd_elf64_ia64_big_vec bfd_efi_app_ia64_vec" 176 ;; 177 ia64*-*-hpux*) 178 targ_defvec=bfd_elf32_ia64_hpux_big_vec 179 targ_selvecs="bfd_elf64_ia64_hpux_big_vec" 180 ;; 181 sparc64-*-freebsd* | sparc64-*-netbsd* | sparc64-*-openbsd* | sparc64-*-kfreebsd*-gnu) 182 targ_defvec=bfd_elf64_sparc_vec 183 targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec" 184 ;; 185#endif /* BFD64 */ 186 187 am33_2.0-*-linux*) 188 targ_defvec=bfd_elf32_am33lin_vec 189 ;; 190 arc-*-elf*) 191 targ_defvec=bfd_elf32_littlearc_vec 192 targ_selvecs=bfd_elf32_bigarc_vec 193 ;; 194 195 armeb-*-netbsdelf*) 196 targ_defvec=bfd_elf32_bigarm_vec 197 targ_selvecs="bfd_elf32_littlearm_vec armnetbsd_vec" 198 ;; 199 arm-*-netbsdelf*) 200 targ_defvec=bfd_elf32_littlearm_vec 201 targ_selvecs="bfd_elf32_bigarm_vec armnetbsd_vec" 202 ;; 203 arm-*-netbsd* | arm-*-openbsd*) 204 targ_defvec=armnetbsd_vec 205 targ_selvecs="bfd_elf32_littlearm_vec bfd_elf32_bigarm_vec" 206 targ_underscore=yes 207 targ_cflags=-D__QNXTARGET__ 208 ;; 209 arm-*-nto* | nto*arm*) 210 targ_defvec=bfd_elf32_littlearm_vec 211 targ_selvecs=bfd_elf32_bigarm_vec 212 ;; 213 arm-*-riscix*) 214 targ_defvec=riscix_vec 215 ;; 216 arm-epoc-pe*) 217 targ_defvec=arm_epoc_pe_little_vec 218 targ_selvecs="arm_epoc_pe_little_vec arm_epoc_pe_big_vec arm_epoc_pei_little_vec arm_epoc_pei_big_vec" 219 targ_underscore=no 220 targ_cflags=-DARM_COFF_BUGFIX 221 ;; 222 arm-wince-pe | arm-*-wince) 223 targ_defvec=armpe_little_vec 224 targ_selvecs="armpe_little_vec armpe_big_vec armpei_little_vec armpei_big_vec" 225 targ_underscore=no 226 targ_cflags="-DARM_WINCE -DARM_COFF_BUGFIX" 227 ;; 228 arm-*-pe*) 229 targ_defvec=armpe_little_vec 230 targ_selvecs="armpe_little_vec armpe_big_vec armpei_little_vec armpei_big_vec" 231 targ_underscore=yes 232 ;; 233 arm-*-aout | armel-*-aout) 234 targ_defvec=aout_arm_little_vec 235 targ_selvecs=aout_arm_big_vec 236 ;; 237 armeb-*-aout) 238 targ_defvec=aout_arm_big_vec 239 targ_selvecs=aout_arm_little_vec 240 ;; 241 arm-*-coff) 242 targ_defvec=armcoff_little_vec 243 targ_selvecs=armcoff_big_vec 244 targ_underscore=yes 245 ;; 246 arm-*-rtems*) 247 targ_defvec=bfd_elf32_littlearm_vec 248 targ_selvecs=bfd_elf32_bigarm_vec 249 ;; 250 armeb-*-elf | arm*b-*-linux-* | armeb-*-openbsd*) 251 targ_defvec=bfd_elf32_bigarm_vec 252 targ_selvecs=bfd_elf32_littlearm_vec 253 ;; 254 arm-*-kaos* | strongarm-*-kaos*) 255 targ_defvec=bfd_elf32_littlearm_vec 256 targ_selvecs=bfd_elf32_bigarm_vec 257 ;; 258 arm-*-elf | arm-*-freebsd* | arm*-*-linux-* | arm*-*-conix* | \ 259 arm*-*-uclinux* | arm-*-kfreebsd*-gnu | arm-*-openbsd* | \ 260 arm*-*-eabi* ) 261 targ_defvec=bfd_elf32_littlearm_vec 262 targ_selvecs=bfd_elf32_bigarm_vec 263 ;; 264 arm*-*-vxworks | arm*-*-windiss) 265 targ_defvec=bfd_elf32_littlearm_vxworks_vec 266 targ_selvecs=bfd_elf32_bigarm_vxworks_vec 267 ;; 268 arm*-*-symbianelf*) 269 targ_defvec=bfd_elf32_littlearm_symbian_vec 270 targ_selvecs=bfd_elf32_bigarm_symbian_vec 271 ;; 272 arm9e-*-elf) 273 targ_defvec=bfd_elf32_littlearm_vec 274 targ_selvecs=bfd_elf32_bigarm_vec 275 ;; 276 277 thumb-*-coff) 278 targ_defvec=armcoff_little_vec 279 targ_selvecs=armcoff_big_vec 280 targ_underscore=yes 281 ;; 282 thumb-*-elf) 283 targ_defvec=bfd_elf32_littlearm_vec 284 targ_selvecs=bfd_elf32_bigarm_vec 285 ;; 286 thumb-epoc-pe*) 287 targ_defvec=arm_epoc_pe_little_vec 288 targ_selvecs="arm_epoc_pe_little_vec arm_epoc_pe_big_vec arm_epoc_pei_little_vec arm_epoc_pei_big_vec" 289 targ_underscore=no 290 ;; 291 thumb-*-pe*) 292 targ_defvec=armpe_little_vec 293 targ_selvecs="armpe_little_vec armpe_big_vec armpei_little_vec armpei_big_vec" 294 targ_underscore=yes 295 ;; 296 strongarm-*-elf) 297 targ_defvec=bfd_elf32_littlearm_vec 298 targ_selvecs=bfd_elf32_bigarm_vec 299 ;; 300 strongarm-*-coff) 301 targ_defvec=armcoff_little_vec 302 targ_selvecs=armcoff_big_vec 303 targ_underscore=yes 304 ;; 305 xscale-*-elf) 306 targ_defvec=bfd_elf32_littlearm_vec 307 targ_selvecs=bfd_elf32_bigarm_vec 308 ;; 309 xscale-*-coff) 310 targ_defvec=armcoff_little_vec 311 targ_selvecs=armcoff_big_vec 312 targ_underscore=yes 313 ;; 314 315 avr-*-*) 316 targ_defvec=bfd_elf32_avr_vec 317 ;; 318 319 bfin-*-*) 320 targ_defvec=bfd_elf32_bfin_vec 321 targ_selvecs=bfd_elf32_bfinfdpic_vec 322 targ_underscore=yes 323 ;; 324 325 c30-*-*aout* | tic30-*-*aout*) 326 targ_defvec=tic30_aout_vec 327 ;; 328 c30-*-*coff* | tic30-*-*coff*) 329 targ_defvec=tic30_coff_vec 330 ;; 331 332 c4x-*-*coff* | tic4x-*-*coff* | tic4x-*-rtems*) 333 targ_defvec=tic4x_coff1_vec 334 targ_selvecs="tic4x_coff1_beh_vec tic4x_coff2_vec tic4x_coff2_beh_vec tic4x_coff0_vec tic4x_coff0_beh_vec" 335 targ_underscore=yes 336 ;; 337 338 c54x*-*-*coff* | tic54x-*-*coff*) 339 targ_defvec=tic54x_coff1_vec 340 targ_selvecs="tic54x_coff1_beh_vec tic54x_coff2_vec tic54x_coff2_beh_vec tic54x_coff0_vec tic54x_coff0_beh_vec" 341 targ_underscore=yes 342 ;; 343 344 cr16c-*-elf*) 345 targ_defvec=bfd_elf32_cr16c_vec 346 targ_underscore=yes 347 ;; 348 349 cris-*-* | crisv32-*-*) 350 targ_defvec=cris_aout_vec 351 targ_selvecs="bfd_elf32_us_cris_vec bfd_elf32_cris_vec ieee_vec" 352 targ_underscore=yes # Note: not true for bfd_elf32_cris_vec. 353 ;; 354 355 crx-*-elf*) 356 targ_defvec=bfd_elf32_crx_vec 357 targ_underscore=yes 358 ;; 359 360 d10v-*-*) 361 targ_defvec=bfd_elf32_d10v_vec 362 ;; 363 364 dlx-*-elf*) 365 targ_defvec=bfd_elf32_dlx_big_vec 366 targ_selvecs="bfd_elf32_dlx_big_vec" 367 ;; 368 369 d30v-*-*) 370 targ_defvec=bfd_elf32_d30v_vec 371 ;; 372 373 fr30-*-elf) 374 targ_defvec=bfd_elf32_fr30_vec 375 ;; 376 377 frv-*-elf) 378 targ_defvec=bfd_elf32_frv_vec 379 targ_selvecs=bfd_elf32_frvfdpic_vec 380 ;; 381 382 frv-*-*linux*) 383 targ_defvec=bfd_elf32_frvfdpic_vec 384 targ_selvecs=bfd_elf32_frv_vec 385 ;; 386 387 h8300*-*-rtemscoff*) 388 targ_defvec=h8300coff_vec 389 targ_underscore=yes 390 ;; 391 392 h8300*-*-elf | h8300*-*-rtems*) 393 targ_defvec=bfd_elf32_h8300_vec 394 targ_underscore=yes 395 ;; 396 397 h8300*-*-*) 398 targ_defvec=h8300coff_vec 399 targ_underscore=yes 400 ;; 401 402 h8500-*-*) 403 targ_defvec=h8500coff_vec 404 targ_underscore=yes 405 ;; 406 407#ifdef BFD64 408 hppa*64*-*-linux-*) 409 targ_defvec=bfd_elf64_hppa_linux_vec 410 targ_selvecs=bfd_elf64_hppa_vec 411 ;; 412 hppa*64*-*-hpux11*) 413 targ_defvec=bfd_elf64_hppa_vec 414 targ_selvecs=bfd_elf64_hppa_linux_vec 415 targ_cflags=-DHPUX_LARGE_AR_IDS 416 ;; 417 hppa*64*-*-openbsd*) 418 targ_defvec=bfd_elf64_hppa_vec 419 targ_selvecs=bfd_elf64_hppa_linux_vec 420 ;; 421#endif 422 423 hppa*-*-linux-*) 424 targ_defvec=bfd_elf32_hppa_linux_vec 425 targ_selvecs=bfd_elf32_hppa_vec 426 ;; 427 hppa*-*-netbsd*) 428 targ_defvec=bfd_elf32_hppa_nbsd_vec 429 targ_selvecs="bfd_elf32_hppa_vec bfd_elf32_hppa_linux_vec" 430 ;; 431 hppa*-*-*elf* | hppa*-*-lites* | hppa*-*-sysv4* | hppa*-*-openbsd*) 432 targ_defvec=bfd_elf32_hppa_vec 433 targ_selvecs=bfd_elf32_hppa_linux_vec 434 ;; 435 436#if defined (HOST_HPPAHPUX) || defined (HOST_HPPABSD) || defined (HOST_HPPAOSF) || defined (HOST_HPPAMPEIX) 437 hppa*-*-bsd*) 438 targ_defvec=som_vec 439 targ_selvecs=bfd_elf32_hppa_vec 440 ;; 441 hppa*-*-hpux* | hppa*-*-hiux* | hppa*-*-mpeix*) 442 targ_defvec=som_vec 443 ;; 444 hppa*-*-osf*) 445 targ_defvec=som_vec 446 targ_selvecs=bfd_elf32_hppa_vec 447 ;; 448#endif /* defined (HOST_HPPAHPUX) || defined (HOST_HPPABSD) || defined (HOST_HPPAOSF) */ 449 450 i370-*-*) 451 targ_defvec=bfd_elf32_i370_vec 452 targ_selvecs="bfd_elf32_i370_vec" 453 ;; 454 i[3-7]86-*-sco3.2v5*coff) 455 targ_defvec=i386coff_vec 456 targ_selvecs=bfd_elf32_i386_vec 457 ;; 458 i[3-7]86-*-sysv4* | i[3-7]86-*-unixware* | \ 459 i[3-7]86-*-elf | i[3-7]86-*-sco3.2v5* | \ 460 i[3-7]86-*-dgux* | i[3-7]86-*-sysv5*) 461 targ_defvec=bfd_elf32_i386_vec 462 targ_selvecs=i386coff_vec 463 ;; 464 i[3-7]86-*-solaris2*) 465 targ_defvec=bfd_elf32_i386_vec 466 targ_selvecs=i386coff_vec 467 targ64_selvecs=bfd_elf64_x86_64_vec 468 want64=true 469 ;; 470 i[3-7]86-*-kaos*) 471 targ_defvec=bfd_elf32_i386_vec 472 targ_selvecs=bfd_elf32_i386_vec 473 ;; 474 i[3-7]86-*-nto*) 475 targ_defvec=bfd_elf32_i386_vec 476 targ_selvecs=i386coff_vec 477 ;; 478 i[3-7]86-*-aros*) 479 targ_defvec=bfd_elf32_i386_vec 480 ;; 481 i[3-7]86-*-chorus*) 482 targ_defvec=bfd_elf32_i386_vec 483 ;; 484 *-*-msdosdjgpp* | *-*-go32* ) 485 targ_defvec=go32coff_vec 486 targ_selvecs="go32stubbedcoff_vec i386aout_vec" 487 ;; 488 i[3-7]86-*-sysv* | i[3-7]86-*-isc* | i[3-7]86-*-sco* | i[3-7]86-*-coff | \ 489 i[3-7]86-*-aix*) 490 targ_defvec=i386coff_vec 491 ;; 492 i[3-7]86-*-rtems*) 493 targ_defvec=bfd_elf32_i386_vec 494 targ_selvecs="i386coff_vec i386aout_vec" 495 ;; 496 i[3-7]86-*-darwin* | i[3-7]86-*-macos10* | i[3-7]86-*-rhapsody*) 497 targ_defvec=mach_o_le_vec 498 targ_selvecs="mach_o_le_vec mach_o_be_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec" 499 targ_archs="bfd_i386_arch bfd_powerpc_arch bfd_rs6000_arch" 500 ;; 501 i[3-7]86-sequent-bsd*) 502 targ_defvec=i386dynix_vec 503 targ_underscore=yes 504 ;; 505 i[3-7]86-*-bsd*) 506 targ_defvec=i386bsd_vec 507 targ_underscore=yes 508 ;; 509 i[3-7]86-*-freebsdaout* | i[3-7]86-*-freebsd[12].* | \ 510 i[3-7]86-*-freebsd[12]) 511 targ_defvec=i386freebsd_vec 512 targ_selvecs=i386bsd_vec 513 targ_underscore=yes 514 ;; 515 i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu) 516 targ_defvec=bfd_elf32_i386_freebsd_vec 517 targ_selvecs=i386coff_vec 518 # FreeBSD <= 4.0 supports only the old nonstandard way of ABI labelling. 519 case "${targ}" in 520 i[3-7]86-*-freebsd3* | i[3-7]86-*-freebsd4 | i[3-7]86-*-freebsd4.0*) 521 targ_cflags=-DOLD_FREEBSD_ABI_LABEL ;; 522 esac 523 ;; 524 i[3-7]86-*-netbsdelf* | i[3-7]86-*-netbsd*-gnu* | i[3-7]86-*-knetbsd*-gnu) 525 targ_defvec=bfd_elf32_i386_vec 526 targ_selvecs=i386netbsd_vec 527 targ64_selvecs=bfd_elf64_x86_64_vec 528 ;; 529 i[3-7]86-*-netbsdpe*) 530 targ_defvec=i386pe_vec 531 targ_selvecs="i386pe_vec i386pei_vec bfd_elf32_i386_vec" 532 ;; 533 i[3-7]86-*-netbsdaout* | i[3-7]86-*-netbsd* | \ 534 i[3-7]86-*-openbsd[0-2].* | i[3-7]86-*-openbsd3.[0-3]) 535 targ_defvec=i386netbsd_vec 536 targ_selvecs="bfd_elf32_i386_vec i386bsd_vec" 537 targ_underscore=yes 538 ;; 539 i[3-7]86-*-openbsd*) 540 targ_defvec=bfd_elf32_i386_vec 541 targ_selvecs="i386netbsd_vec bfd_efi_app_ia32_vec" 542 targ64_selvecs=bfd_elf64_x86_64_vec 543 ;; 544 i[3-7]86-*-netware*) 545 targ_defvec=bfd_elf32_i386_vec 546 targ_selvecs="nlm32_i386_vec i386coff_vec i386aout_vec" 547 ;; 548 i[3-7]86-*-linux*aout*) 549 targ_defvec=i386linux_vec 550 targ_selvecs=bfd_elf32_i386_vec 551 targ_underscore=yes 552 ;; 553 i[3-7]86-*-linux-*) 554 targ_defvec=bfd_elf32_i386_vec 555 targ_selvecs="i386linux_vec bfd_efi_app_ia32_vec" 556 targ64_selvecs=bfd_elf64_x86_64_vec 557 ;; 558#ifdef BFD64 559 x86_64-*-elf*) 560 targ_defvec=bfd_elf64_x86_64_vec 561 targ_selvecs="bfd_elf32_i386_vec i386coff_vec" 562 ;; 563 x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu) 564 targ_defvec=bfd_elf64_x86_64_vec 565 targ_selvecs="bfd_elf32_i386_vec i386coff_vec bfd_efi_app_ia32_vec" 566 ;; 567 x86_64-*-netbsd*) 568 targ_defvec=bfd_elf64_x86_64_vec 569 targ_selvecs="bfd_elf32_i386_vec i386netbsd_vec i386coff_vec bfd_efi_app_ia32_vec" 570 ;; 571 x86_64-*-openbsd*) 572 targ_defvec=bfd_elf64_x86_64_vec 573 targ_selvecs="bfd_elf32_i386_vec i386coff_vec bfd_efi_app_ia32_vec bfd_efi_app_x86_64_vec" 574 ;; 575 x86_64-*-linux-*) 576 targ_defvec=bfd_elf64_x86_64_vec 577 targ_selvecs="bfd_elf32_i386_vec i386linux_vec bfd_efi_app_ia32_vec" 578 ;; 579#endif 580 i[3-7]86-*-lynxos*) 581 targ_defvec=bfd_elf32_i386_vec 582 targ_selvecs="i386lynx_coff_vec i386lynx_aout_vec" 583 ;; 584 i[3-7]86-*-gnu*) 585 targ_defvec=bfd_elf32_i386_vec 586 ;; 587 i[3-7]86-*-mach* | i[3-7]86-*-osf1mk*) 588 targ_defvec=i386mach3_vec 589 targ_cflags=-DSTAT_FOR_EXEC 590 targ_underscore=yes 591 ;; 592 i[3-7]86-*-os9k) 593 targ_defvec=i386os9k_vec 594 ;; 595 i[3-7]86-*-msdos*) 596 targ_defvec=i386aout_vec 597 targ_selvecs=i386msdos_vec 598 ;; 599 i[3-7]86-*-moss*) 600 targ_defvec=bfd_elf32_i386_vec 601 targ_selvecs="i386msdos_vec i386aout_vec" 602 ;; 603 i[3-7]86-*-beospe*) 604 targ_defvec=i386pe_vec 605 targ_selvecs="i386pe_vec i386pei_vec" 606 ;; 607 i[3-7]86-*-beoself* | i[3-7]86-*-beos*) 608 targ_defvec=bfd_elf32_i386_vec 609 targ_selvecs="i386pe_vec i386pei_vec" 610 ;; 611 i[3-7]86-*-interix*) 612 targ_defvec=i386pei_vec 613 targ_selvecs="i386pe_vec" 614 # FIXME: This should eventually be checked at runtime. 615 targ_cflags=-DSTRICT_PE_FORMAT 616 ;; 617 i[3-7]86-*-rdos*) 618 targ_defvec=bfd_elf32_i386_vec 619 targ_selvecs=i386coff_vec 620 ;; 621 i[3-7]86-*-mingw32* | i[3-7]86-*-cygwin* | i[3-7]86-*-winnt | i[3-7]86-*-pe) 622 targ_defvec=i386pe_vec 623 targ_selvecs="i386pe_vec i386pei_vec bfd_elf32_i386_vec" 624 targ_underscore=yes 625 ;; 626 i[3-7]86-none-*) 627 targ_defvec=i386coff_vec 628 ;; 629 i[3-7]86-*-aout* | i[3-7]86*-*-vsta*) 630 targ_defvec=i386aout_vec 631 ;; 632 i[3-7]86-*-vxworks*) 633 targ_defvec=bfd_elf32_i386_vxworks_vec 634 targ_underscore=yes 635 ;; 636 i[3-7]86-*-chaos) 637 targ_defvec=bfd_elf32_i386_vec 638 targ_selfvecs=i386chaos_vec 639 ;; 640 641 i860-*-mach3* | i860-*-osf1* | i860-*-coff*) 642 targ_defvec=i860coff_vec 643 ;; 644 i860-stardent-sysv4* | i860-stardent-elf*) 645 targ_defvec=bfd_elf32_i860_little_vec 646 targ_selvecs="bfd_elf32_i860_vec bfd_elf32_i860_little_vec" 647 ;; 648 i860-*-sysv4* | i860-*-elf*) 649 targ_defvec=bfd_elf32_i860_vec 650 ;; 651 652 i960-*-vxworks4* | i960-*-vxworks5.0) 653 targ_defvec=b_out_vec_little_host 654 targ_selvecs="b_out_vec_big_host icoff_little_vec icoff_big_vec ieee_vec" 655 targ_underscore=yes 656 ;; 657 i960-*-vxworks5.* | i960-*-coff* | i960-*-sysv* | i960-*-rtems*) 658 targ_defvec=icoff_little_vec 659 targ_selvecs="icoff_big_vec b_out_vec_little_host b_out_vec_big_host ieee_vec" 660 targ_underscore=yes 661 ;; 662 i960-*-vxworks* | i960-*-aout* | i960-*-bout* | i960-*-nindy*) 663 targ_defvec=b_out_vec_little_host 664 targ_selvecs="b_out_vec_big_host icoff_little_vec icoff_big_vec ieee_vec" 665 targ_underscore=yes 666 ;; 667 i960-*-elf*) 668 targ_defvec=bfd_elf32_i960_vec 669 targ_selvecs="icoff_little_vec icoff_big_vec" 670 ;; 671 672 ip2k-*-elf) 673 targ_defvec=bfd_elf32_ip2k_vec 674 ;; 675 676 iq2000-*-elf) 677 targ_defvec=bfd_elf32_iq2000_vec 678 ;; 679 680 m32c-*-elf) 681 targ_defvec=bfd_elf32_m32c_vec 682 ;; 683 684 m32r*le-*-linux*) 685 targ_defvec=bfd_elf32_m32rlelin_vec 686 targ_selvecs="bfd_elf32_m32rlin_vec bfd_elf32_m32rlelin_vec" 687 ;; 688 689 m32r*-*-linux*) 690 targ_defvec=bfd_elf32_m32rlin_vec 691 targ_selvecs="bfd_elf32_m32rlin_vec bfd_elf32_m32rlelin_vec" 692 ;; 693 694 m32r*le-*-*) 695 targ_defvec=bfd_elf32_m32rle_vec 696 targ_selvecs="bfd_elf32_m32r_vec bfd_elf32_m32rle_vec" 697 ;; 698 699 m32r-*-*) 700 targ_defvec=bfd_elf32_m32r_vec 701 ;; 702 703 m68hc11-*-* | m6811-*-*) 704 targ_defvec=bfd_elf32_m68hc11_vec 705 targ_selvecs="bfd_elf32_m68hc11_vec bfd_elf32_m68hc12_vec" 706 ;; 707 m68hc12-*-* | m6812-*-*) 708 targ_defvec=bfd_elf32_m68hc12_vec 709 targ_selvecs="bfd_elf32_m68hc11_vec bfd_elf32_m68hc12_vec" 710 ;; 711 712 m68*-apollo-*) 713 targ_defvec=apollocoff_vec 714 ;; 715 m68*-bull-sysv*) 716 targ_defvec=m68kcoffun_vec 717 targ_underscore=yes 718 ;; 719 m68*-motorola-sysv*) 720 targ_defvec=m68ksysvcoff_vec 721 ;; 722 m68*-hp-bsd*) 723 targ_defvec=hp300bsd_vec 724 targ_underscore=yes 725 ;; 726 m68*-*-aout*) 727 targ_defvec=aout0_big_vec 728 # We include cisco_core_big_vec here, rather than making a separate cisco 729 # configuration, so that cisco-core.c gets routinely tested at 730 # least for compilation. 731 targ_selvecs="cisco_core_big_vec ieee_vec" 732 targ_underscore=yes 733 ;; 734 m68*-*-rtemscoff*) 735 targ_defvec=m68kcoff_vec 736 targ_selvecs="m68kcoff_vec versados_vec ieee_vec aout0_big_vec" 737 ;; 738 m68*-*-elf* | m68*-*-sysv4* | m68*-*-uclinux*) 739 targ_defvec=bfd_elf32_m68k_vec 740 targ_selvecs="m68kcoff_vec ieee_vec" 741 ;; 742 m68*-*-rtems*) 743 targ_defvec=bfd_elf32_m68k_vec 744 targ_selvecs="m68kcoff_vec versados_vec ieee_vec aout0_big_vec" 745 ;; 746 m68*-*-coff* | m68*-*-sysv*) 747 targ_defvec=m68kcoff_vec 748 targ_selvecs="m68kcoff_vec versados_vec ieee_vec" 749 ;; 750 m68*-*-hpux*) 751 targ_defvec=hp300hpux_vec 752 targ_underscore=yes 753 ;; 754 m68*-*-linux*aout*) 755 targ_defvec=m68klinux_vec 756 targ_selvecs=bfd_elf32_m68k_vec 757 targ_underscore=yes 758 ;; 759 m68*-*-linux-*) 760 targ_defvec=bfd_elf32_m68k_vec 761 targ_selvecs=m68klinux_vec 762 ;; 763 m68*-*-gnu*) 764 targ_defvec=bfd_elf32_m68k_vec 765 # targ_selvecs=m68kmach3_vec 766 # targ_cflags=-DSTAT_FOR_EXEC 767 ;; 768 m68*-hp*-netbsd*) 769 targ_defvec=m68k4knetbsd_vec 770 targ_selvecs="m68knetbsd_vec hp300bsd_vec sunos_big_vec" 771 targ_underscore=yes 772 ;; 773 m68*-*-netbsdelf*) 774 targ_defvec=bfd_elf32_m68k_vec 775 targ_selvecs="m68knetbsd_vec m68k4knetbsd_vec hp300bsd_vec sunos_big_vec" 776 ;; 777 m68*-*-netbsdaout* | m68*-*-netbsd*) 778 targ_defvec=m68knetbsd_vec 779 targ_selvecs="m68k4knetbsd_vec bfd_elf32_m68k_vec hp300bsd_vec sunos_big_vec" 780 targ_underscore=yes 781 ;; 782 m68*-*-openbsd*) 783 targ_defvec=m68knetbsd_vec 784 targ_selvecs="m68k4knetbsd_vec hp300bsd_vec sunos_big_vec" 785 targ_underscore=yes 786 ;; 787 m68*-*-sunos* | m68*-*-os68k* | m68*-*-vxworks* | m68*-netx-* | \ 788 m68*-*-bsd* | m68*-*-vsta*) 789 targ_defvec=sunos_big_vec 790 targ_underscore=yes 791 ;; 792 m68*-ericsson-*) 793 targ_defvec=sunos_big_vec 794 targ_selvecs="m68kcoff_vec versados_vec tekhex_vec" 795 targ_underscore=yes 796 ;; 797 m68*-cbm-*) 798 targ_defvec=bfd_elf32_m68k_vec 799 targ_selvecs=m68kcoff_vec 800 ;; 801 m68*-apple-aux*) 802 targ_defvec=m68kaux_coff_vec 803 ;; 804 m68*-*-psos*) 805 targ_defvec=bfd_elf32_m68k_vec 806 targ_selvecs=ieee_vec 807 targ_underscore=yes 808 ;; 809 810 m88*-harris-cxux* | m88*-*-dgux* | m88*-*-sysv4*) 811 targ_defvec=bfd_elf32_m88k_vec 812 targ_selvecs=m88kbcs_vec 813 ;; 814 m88*-*-mach3*) 815 targ_defvec=m88kmach3_vec 816 targ_cflags=-DSTAT_FOR_EXEC 817 ;; 818 m88k-*-openbsd*) 819 targ_defvec=bfd_elf32_m88k_vec 820 targ_selvecs="m88kopenbsd_vec m88kbcs_vec" 821 ;; 822 m88*-*-*) 823 targ_defvec=m88kbcs_vec 824 targ_underscore=yes 825 ;; 826 827 maxq-*-coff) 828 targ_defvec=maxqcoff_vec 829 ;; 830 831 mcore-*-elf) 832 targ_defvec=bfd_elf32_mcore_big_vec 833 targ_selvecs="bfd_elf32_mcore_big_vec bfd_elf32_mcore_little_vec" 834 ;; 835 mcore-*-pe) 836 targ_defvec=mcore_pe_big_vec 837 targ_selvecs="mcore_pe_big_vec mcore_pe_little_vec mcore_pei_big_vec mcore_pei_little_vec" 838 ;; 839 840 mips*-big-*) 841 targ_defvec=ecoff_big_vec 842 targ_selvecs=ecoff_little_vec 843 ;; 844 mips*el-*-netbsd*) 845 targ_defvec=bfd_elf32_tradlittlemips_vec 846 targ_selvecs="bfd_elf32_tradbigmips_vec bfd_elf64_tradbigmips_vec bfd_elf64_tradlittlemips_vec ecoff_little_vec ecoff_big_vec" 847 ;; 848 mips*-*-netbsd*) 849 targ_defvec=bfd_elf32_tradbigmips_vec 850 targ_selvecs="bfd_elf32_tradlittlemips_vec bfd_elf64_tradbigmips_vec bfd_elf64_tradlittlemips_vec ecoff_big_vec ecoff_little_vec" 851 ;; 852 mips*-dec-* | mips*el-*-ecoff*) 853 targ_defvec=ecoff_little_vec 854 targ_selvecs=ecoff_big_vec 855 ;; 856 mips*-*-ecoff*) 857 targ_defvec=ecoff_big_vec 858 targ_selvecs=ecoff_little_vec 859 ;; 860#ifdef BFD64 861 mips*-*-irix6*) 862 targ_defvec=bfd_elf32_nbigmips_vec 863 targ_selvecs="bfd_elf32_nlittlemips_vec bfd_elf32_bigmips_vec bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec" 864 ;; 865#endif 866 mips*-*-irix5*) 867 targ_defvec=bfd_elf32_bigmips_vec 868 targ_selvecs="bfd_elf32_littlemips_vec ecoff_big_vec ecoff_little_vec" 869 ;; 870 mips*-sgi-* | mips*-*-bsd*) 871 targ_defvec=ecoff_big_vec 872 targ_selvecs=ecoff_little_vec 873 ;; 874 mips*-*-lnews*) 875 targ_defvec=ecoff_biglittle_vec 876 targ_selvecs="ecoff_little_vec ecoff_big_vec" 877 ;; 878 mips*-*-sysv4*) 879 targ_defvec=bfd_elf32_tradbigmips_vec 880 targ_selvecs="bfd_elf32_tradlittlemips_vec ecoff_big_vec ecoff_little_vec" 881 ;; 882 mips*-*-sysv* | mips*-*-riscos*) 883 targ_defvec=ecoff_big_vec 884 targ_selvecs=ecoff_little_vec 885 ;; 886#ifdef BFD64 887 mips*el-*-vxworks*) 888 targ_defvec=bfd_elf32_littlemips_vxworks_vec 889 targ_selvecs="bfd_elf32_littlemips_vec bfd_elf32_bigmips_vxworks_vec bfd_elf32_bigmips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec" 890 ;; 891 mips*-*-vxworks*) 892 targ_defvec=bfd_elf32_bigmips_vxworks_vec 893 targ_selvecs="bfd_elf32_bigmips_vec bfd_elf32_littlemips_vxworks_vec bfd_elf32_bigmips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec" 894 ;; 895#endif 896 mips*el-*-elf* | mips*el-*-vxworks* | mips*-*-chorus*) 897 targ_defvec=bfd_elf32_littlemips_vec 898 targ_selvecs="bfd_elf32_bigmips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec" 899 ;; 900 mips*-*-elf* | mips*-*-rtems* | mips*-*-vxworks | mips*-*-windiss) 901 targ_defvec=bfd_elf32_bigmips_vec 902 targ_selvecs="bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec" 903 ;; 904 mips*-*-none) 905 targ_defvec=bfd_elf32_bigmips_vec 906 targ_selvecs="bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec" 907 ;; 908#ifdef BFD64 909 mips64*el-*-openbsd*) 910 targ_defvec=bfd_elf64_tradlittlemips_vec 911 targ_selvecs="bfd_elf32_ntradlittlemips_vec bfd_elf32_ntradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf64_tradbigmips_vec ecoff_big_vec ecoff_little_vec" 912 ;; 913 mips64*-*-openbsd*) 914 targ_defvec=bfd_elf64_tradbigmips_vec 915 targ_selvecs="bfd_elf32_ntradlittlemips_vec bfd_elf32_ntradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf64_tradlittlemips_vec ecoff_big_vec ecoff_little_vec" 916 ;; 917#endif 918 mips*el-*-openbsd*) 919 targ_defvec=bfd_elf32_littlemips_vec 920 targ_selvecs="bfd_elf32_bigmips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec ecoff_little_vec ecoff_big_vec" 921 ;; 922 mips*-*-openbsd*) 923 targ_defvec=bfd_elf32_bigmips_vec 924 targ_selvecs="bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec ecoff_big_vec ecoff_little_vec" 925 ;; 926#ifdef BFD64 927 mips64*el-*-linux*) 928 targ_defvec=bfd_elf32_ntradlittlemips_vec 929 targ_selvecs="bfd_elf32_ntradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf64_tradlittlemips_vec bfd_elf64_tradbigmips_vec" 930 ;; 931 mips64*-*-linux*) 932 targ_defvec=bfd_elf32_ntradbigmips_vec 933 targ_selvecs="bfd_elf32_ntradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf64_tradbigmips_vec bfd_elf64_tradlittlemips_vec" 934 ;; 935#endif 936 mips*el-*-linux*) 937 targ_defvec=bfd_elf32_tradlittlemips_vec 938 targ_selvecs="bfd_elf32_tradbigmips_vec ecoff_little_vec ecoff_big_vec bfd_elf32_ntradlittlemips_vec bfd_elf64_tradlittlemips_vec bfd_elf32_ntradbigmips_vec bfd_elf64_tradbigmips_vec" 939 want64=true 940 ;; 941 mips*-*-linux*) 942 targ_defvec=bfd_elf32_tradbigmips_vec 943 targ_selvecs="bfd_elf32_tradlittlemips_vec ecoff_big_vec ecoff_little_vec bfd_elf32_ntradbigmips_vec bfd_elf64_tradbigmips_vec bfd_elf32_ntradlittlemips_vec bfd_elf64_tradlittlemips_vec" 944 want64=true 945 ;; 946#ifdef BFD64 947 mmix-*-*) 948 targ_defvec=bfd_elf64_mmix_vec 949 targ_selvecs=bfd_mmo_vec 950 ;; 951#endif 952 mn10200-*-*) 953 targ_defvec=bfd_elf32_mn10200_vec 954 ;; 955 956 mn10300-*-*) 957 targ_defvec=bfd_elf32_mn10300_vec 958 targ_underscore=yes 959 ;; 960 961 mt-*-elf) 962 targ_defvec=bfd_elf32_mt_vec 963 ;; 964 965 msp430-*-*) 966 targ_defvec=bfd_elf32_msp430_vec 967 ;; 968 969 ns32k-pc532-mach* | ns32k-pc532-ux*) 970 targ_defvec=pc532machaout_vec 971 targ_underscore=yes 972 ;; 973 ns32k-*-netbsd* | ns32k-*-lites* | ns32k-*-openbsd*) 974 targ_defvec=pc532netbsd_vec 975 targ_underscore=yes 976 ;; 977 978 openrisc-*-elf) 979 targ_defvec=bfd_elf32_openrisc_vec 980 ;; 981 982 or32-*-coff | or32-*-rtems* ) 983 targ_defvec=or32coff_big_vec 984 targ_underscore=yes 985 ;; 986 987 or32-*-elf) 988 targ_defvec=bfd_elf32_or32_big_vec 989 ;; 990 991 pdp11-*-*) 992 targ_defvec=pdp11_aout_vec 993 targ_underscore=yes 994 ;; 995 996 pj-*-*) 997 targ_defvec=bfd_elf32_pj_vec 998 targ_selvecs="bfd_elf32_pj_vec bfd_elf32_pjl_vec" 999 ;; 1000 1001 pjl-*-*) 1002 targ_defvec=bfd_elf32_pjl_vec 1003 targ_selvecs="bfd_elf32_pjl_vec bfd_elf32_pj_vec bfd_elf32_i386_vec" 1004 ;; 1005 1006 powerpc-*-aix5.[01]) 1007 targ_defvec=rs6000coff_vec 1008 targ_selvecs="aix5coff64_vec" 1009 want64=true 1010 ;; 1011#ifdef BFD64 1012 powerpc64-*-aix5.[01]) 1013 targ_defvec=aix5coff64_vec 1014 targ_selvecs="rs6000coff_vec" 1015 want64=true 1016 ;; 1017#endif 1018 powerpc-*-aix5*) 1019 targ_cflags=-DAIX_WEAK_SUPPORT 1020 targ_defvec=rs6000coff_vec 1021 targ_selvecs="aix5coff64_vec" 1022 want64=true 1023 ;; 1024#ifdef BFD64 1025 powerpc64-*-aix5*) 1026 targ_cflags=-DAIX_WEAK_SUPPORT 1027 targ_defvec=aix5coff64_vec 1028 targ_selvecs="rs6000coff_vec" 1029 want64=true 1030 ;; 1031#endif 1032 1033 powerpc-*-aix* | powerpc-*-beos* | rs6000-*-*) 1034 targ_defvec=rs6000coff_vec 1035 targ64_selvecs=rs6000coff64_vec 1036 case "${targ}" in 1037 *-*-aix4.[3456789]* | *-*-aix[56789]*) 1038 want64=true;; 1039 *) 1040 targ_cflags=-DSMALL_ARCHIVE;; 1041 esac 1042 ;; 1043#ifdef BFD64 1044 powerpc64-*-aix*) 1045 targ_defvec=rs6000coff64_vec 1046 targ_selvecs=rs6000coff_vec 1047 ;; 1048 powerpc64-*-elf* | powerpc-*-elf64* | powerpc64-*-linux* | \ 1049 powerpc64-*-*bsd*) 1050 targ_defvec=bfd_elf64_powerpc_vec 1051 targ_selvecs="bfd_elf64_powerpcle_vec bfd_elf32_powerpc_vec bfd_elf32_powerpcle_vec" 1052 ;; 1053 powerpc64le-*-elf* | powerpcle-*-elf64*) 1054 targ_defvec=bfd_elf64_powerpcle_vec 1055 targ_selvecs="bfd_elf64_powerpc_vec bfd_elf32_powerpcle_vec bfd_elf32_powerpc_vec" 1056 ;; 1057#endif 1058 powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \ 1059 powerpc-*-solaris2* | powerpc-*-linux-* | powerpc-*-rtems* | \ 1060 powerpc-*-chorus*) 1061 targ_defvec=bfd_elf32_powerpc_vec 1062 targ_selvecs="bfd_elf32_powerpcle_vec ppcboot_vec" 1063 targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_vec" 1064 ;; 1065 powerpc-*-kaos*) 1066 targ_defvec=bfd_elf32_powerpc_vec 1067 targ_selvecs="bfd_elf32_powerpcle_vec ppcboot_vec" 1068 targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_vec" 1069 ;; 1070 powerpc-*-darwin* | powerpc-*-macos10* | powerpc-*-rhapsody*) 1071 targ_defvec=mach_o_be_vec 1072 targ_selvecs="mach_o_be_vec mach_o_le_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec" 1073 targ_archs="bfd_powerpc_arch bfd_rs6000_arch bfd_i386_arch" 1074 ;; 1075 powerpc-*-macos*) 1076 targ_defvec=pmac_xcoff_vec 1077 ;; 1078 powerpc-*-lynxos*) 1079 targ_defvec=bfd_elf32_powerpc_vec 1080 targ_selvecs="rs6000coff_vec" 1081 targ_cflags=-DSMALL_ARCHIVE 1082 ;; 1083 powerpc-*-netware*) 1084 targ_defvec=bfd_elf32_powerpc_vec 1085 targ_selvecs="nlm32_powerpc_vec rs6000coff_vec" 1086 ;; 1087 powerpc-*-nto*) 1088 targ_defvec=bfd_elf32_powerpc_vec 1089 targ_selvecs="rs6000coff_vec bfd_elf32_powerpcle_vec ppcboot_vec" 1090 ;; 1091 powerpc-*-vxworks* | powerpc-*-windiss*) 1092 targ_defvec=bfd_elf32_powerpc_vxworks_vec 1093 targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec bfd_elf32_powerpcle_vec ppcboot_vec" 1094 targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_vec" 1095 ;; 1096 powerpcle-*-nto*) 1097 targ_defvec=bfd_elf32_powerpcle_vec 1098 targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec" 1099 ;; 1100 powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \ 1101 powerpcle-*-solaris2* | powerpcle-*-linux-* | powerpcle-*-vxworks*) 1102 targ_defvec=bfd_elf32_powerpcle_vec 1103 targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec" 1104 targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_vec" 1105 ;; 1106 powerpcle-*-pe | powerpcle-*-winnt* | powerpcle-*-cygwin*) 1107 targ_defvec=bfd_powerpcle_pe_vec 1108 targ_selvecs="bfd_powerpcle_pei_vec bfd_powerpc_pei_vec bfd_powerpcle_pe_vec bfd_powerpc_pe_vec" 1109 ;; 1110 1111 s390-*-linux*) 1112 targ_defvec=bfd_elf32_s390_vec 1113 targ64_selvecs=bfd_elf64_s390_vec 1114 want64=true 1115 ;; 1116#ifdef BFD64 1117 s390x-*-linux*) 1118 targ_defvec=bfd_elf64_s390_vec 1119 targ_selvecs=bfd_elf32_s390_vec 1120 ;; 1121 s390x-*-tpf*) 1122 targ_defvec=bfd_elf64_s390_vec 1123 ;; 1124#endif 1125 1126#ifdef BFD64 1127 sh64l*-*-elf*) 1128 targ_defvec=bfd_elf32_sh64l_vec 1129 targ_selvecs="bfd_elf32_sh64_vec bfd_elf64_sh64l_vec bfd_elf64_sh64_vec bfd_elf32_shl_vec bfd_elf32_sh_vec" 1130 targ_underscore=yes 1131 ;; 1132 sh64-*-elf*) 1133 targ_defvec=bfd_elf32_sh64_vec 1134 targ_selvecs="bfd_elf32_sh64l_vec bfd_elf64_sh64_vec bfd_elf64_sh64l_vec bfd_elf32_sh_vec bfd_elf32_shl_vec" 1135 targ_underscore=yes 1136 ;; 1137 sh64eb-*-linux*) 1138 targ_defvec=bfd_elf32_sh64blin_vec 1139 targ_selvecs="bfd_elf32_sh64lin_vec bfd_elf64_sh64blin_vec bfd_elf64_sh64lin_vec bfd_elf32_shblin_vec bfd_elf32_shlin_vec" 1140 ;; 1141 sh64-*-linux*) 1142 targ_defvec=bfd_elf32_sh64lin_vec 1143 targ_selvecs="bfd_elf32_sh64blin_vec bfd_elf64_sh64lin_vec bfd_elf64_sh64blin_vec bfd_elf32_shlin_vec bfd_elf32_shblin_vec" 1144 ;; 1145#endif /* BFD64 */ 1146 1147 sh-*-linux*) 1148 targ_defvec=bfd_elf32_shblin_vec 1149 targ_selvecs=bfd_elf32_shlin_vec 1150#ifdef BFD64 1151 targ_selvecs="${targ_selvecs} bfd_elf32_sh64lin_vec bfd_elf32_sh64blin_vec bfd_elf64_sh64lin_vec bfd_elf64_sh64blin_vec" 1152#endif 1153 ;; 1154 sh*eb-*-linux*) 1155 targ_defvec=bfd_elf32_shblin_vec 1156 targ_selvecs=bfd_elf32_shlin_vec 1157 ;; 1158 sh*-*-linux*) 1159 targ_defvec=bfd_elf32_shlin_vec 1160 targ_selvecs=bfd_elf32_shblin_vec 1161 ;; 1162 1163#ifdef BFD64 1164 sh5le-*-netbsd*) 1165 targ_defvec=bfd_elf32_sh64lnbsd_vec 1166 targ_selvecs="bfd_elf32_sh64nbsd_vec bfd_elf64_sh64lnbsd_vec bfd_elf64_sh64nbsd_vec bfd_elf32_shnbsd_vec bfd_elf32_shlnbsd_vec" 1167 ;; 1168 sh5-*-netbsd*) 1169 targ_defvec=bfd_elf32_sh64nbsd_vec 1170 targ_selvecs="bfd_elf32_sh64lnbsd_vec bfd_elf64_sh64lnbsd_vec bfd_elf64_sh64nbsd_vec bfd_elf32_shnbsd_vec bfd_elf32_shlnbsd_vec" 1171 ;; 1172 1173 sh64le-*-netbsd*) 1174 targ_defvec=bfd_elf64_sh64lnbsd_vec 1175 targ_selvecs="bfd_elf64_sh64nbsd_vec bfd_elf32_sh64lnbsd_vec bfd_elf32_sh64nbsd_vec bfd_elf32_shnbsd_vec bfd_elf32_shlnbsd_vec" 1176 ;; 1177 sh64-*-netbsd*) 1178 targ_defvec=bfd_elf64_sh64nbsd_vec 1179 targ_selvecs="bfd_elf64_sh64lnbsd_vec bfd_elf32_sh64lnbsd_vec bfd_elf32_sh64nbsd_vec bfd_elf32_shnbsd_vec bfd_elf32_shlnbsd_vec" 1180 ;; 1181#endif 1182 1183 sh*l*-*-netbsdelf*) 1184 targ_defvec=bfd_elf32_shlnbsd_vec 1185 targ_selvecs="bfd_elf32_shnbsd_vec shcoff_vec shlcoff_vec" 1186#ifdef BFD64 1187 targ_selvecs="${targ_selvecs} bfd_elf32_sh64lnbsd_vec bfd_elf32_sh64nbsd_vec bfd_elf64_sh64lnbsd_vec bfd_elf64_sh64nbsd_vec" 1188#endif 1189 ;; 1190 sh-*-netbsdelf*) 1191 targ_defvec=bfd_elf32_shnbsd_vec 1192 targ_selvecs="bfd_elf32_shlnbsd_vec shcoff_vec shlcoff_vec" 1193#ifdef BFD64 1194 targ_selvecs="${targ_selvecs} bfd_elf32_sh64lnbsd_vec bfd_elf32_sh64nbsd_vec bfd_elf64_sh64lnbsd_vec bfd_elf64_sh64nbsd_vec" 1195#endif 1196 ;; 1197 sh*-*-netbsdelf*) 1198 targ_defvec=bfd_elf32_shnbsd_vec 1199 targ_selvecs="bfd_elf32_shlnbsd_vec shcoff_vec shlcoff_vec" 1200 ;; 1201 sh*-*-openbsd*) 1202 targ_defvec=bfd_elf32_shlobsd_vec 1203 targ_selvecs="bfd_elf32_shobsd_vec" 1204 ;; 1205 sh*-*-symbianelf*) 1206 targ_defvec=bfd_elf32_shl_symbian_vec 1207 targ_selvecs="shlcoff_vec shlcoff_small_vec" 1208 targ_underscore=yes 1209 ;; 1210 shl*-*-elf* | sh[1234]l*-*-elf* | sh3el*-*-elf* | shl*-*-kaos*) 1211 targ_defvec=bfd_elf32_shl_vec 1212 targ_selvecs="bfd_elf32_sh_vec shlcoff_vec shcoff_vec shlcoff_small_vec shcoff_small_vec" 1213#ifdef BFD64 1214 targ_selvecs="${targ_selvecs} bfd_elf32_sh64_vec bfd_elf32_sh64l_vec bfd_elf64_sh64_vec bfd_elf64_sh64l_vec" 1215#endif 1216 targ_underscore=yes 1217 ;; 1218 sh-*-rtemscoff*) 1219 targ_defvec=shcoff_vec 1220 targ_selvecs="shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec" 1221 targ_underscore=yes 1222 ;; 1223 sh-*-elf* | sh[1234]*-elf* | sh-*-rtems* | sh-*-kaos*) 1224 targ_defvec=bfd_elf32_sh_vec 1225 targ_selvecs="bfd_elf32_shl_vec shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec" 1226#ifdef BFD64 1227 targ_selvecs="${targ_selvecs} bfd_elf32_sh64_vec bfd_elf32_sh64l_vec bfd_elf64_sh64_vec bfd_elf64_sh64l_vec" 1228#endif 1229 targ_underscore=yes 1230 ;; 1231 sh-*-nto*) 1232 targ_defvec=bfd_elf32_sh_vec 1233 targ_selvecs="bfd_elf32_shl_vec shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec" 1234 targ_underscore=yes 1235 ;; 1236 sh-*-pe) 1237 targ_defvec=shlpe_vec 1238 targ_selvecs="shlpe_vec shlpei_vec" 1239 targ_underscore=yes 1240 ;; 1241 sh-*-vxworks) 1242 targ_defvec=bfd_elf32_sh_vec 1243 targ_selvecs="bfd_elf32_shl_vec" 1244 # FIXME None of the following are actually used on this target, but 1245 # they're necessary for coff-sh.c (which is unconditionally used) to be 1246 # compiled correctly. 1247 targ_selvecs="$targ_selvecs shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec" 1248 ;; 1249 sh-*-*) 1250 targ_defvec=shcoff_vec 1251 targ_selvecs="shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec" 1252 targ_underscore=yes 1253 ;; 1254 1255 sparclet-*-aout*) 1256 targ_defvec=sunos_big_vec 1257 targ_selvecs=sparcle_aout_vec 1258 targ_underscore=yes 1259 ;; 1260 sparc86x-*-aout*) 1261 targ_defvec=sunos_big_vec 1262 targ_underscore=yes 1263 ;; 1264 sparclite-*-elf* | sparc86x-*-elf*) 1265 targ_defvec=bfd_elf32_sparc_vec 1266 ;; 1267 sparc*-*-chorus*) 1268 targ_defvec=bfd_elf32_sparc_vec 1269 ;; 1270 sparc-*-linux*aout*) 1271 targ_defvec=sparclinux_vec 1272 targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec" 1273 targ_underscore=yes 1274 ;; 1275 sparc-*-linux-*) 1276 targ_defvec=bfd_elf32_sparc_vec 1277 targ_selvecs="sparclinux_vec bfd_elf64_sparc_vec sunos_big_vec" 1278 ;; 1279 sparc-*-netbsdelf*) 1280 targ_defvec=bfd_elf32_sparc_vec 1281 targ_selvecs=sparcnetbsd_vec 1282 ;; 1283 sparc-*-netbsdaout* | sparc-*-netbsd*) 1284 targ_defvec=sparcnetbsd_vec 1285 targ_selvecs=bfd_elf32_sparc_vec 1286 targ_underscore=yes 1287 ;; 1288 sparc-*-openbsd[0-2].* | sparc-*-openbsd3.[0-1]) 1289 targ_defvec=sparcnetbsd_vec 1290 targ_underscore=yes 1291 ;; 1292 sparc-*-openbsd*) 1293 targ_defvec=bfd_elf32_sparc_vec 1294 targ_selvecs=sparcnetbsd_vec 1295 ;; 1296 sparc-*-elf* | sparc-*-solaris2.[0-6] | sparc-*-solaris2.[0-6].*) 1297 targ_defvec=bfd_elf32_sparc_vec 1298 targ_selvecs=sunos_big_vec 1299 ;; 1300#ifdef BFD64 1301 sparc-*-solaris2* | sparcv9-*-solaris2* | sparc64-*-solaris2*) 1302 targ_defvec=bfd_elf32_sparc_vec 1303 targ_selvecs="bfd_elf64_sparc_vec sunos_big_vec" 1304 ;; 1305#endif 1306 sparc-*-sysv4*) 1307 targ_defvec=bfd_elf32_sparc_vec 1308 ;; 1309 sparc-*-vxworks*) 1310 targ_defvec=bfd_elf32_sparc_vxworks_vec 1311 targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec" 1312 ;; 1313 sparc-*-netware*) 1314 targ_defvec=bfd_elf32_sparc_vec 1315 targ_selvecs="nlm32_sparc_vec sunos_big_vec" 1316 ;; 1317#ifdef BFD64 1318 sparc64-*-aout*) 1319 targ_defvec=sunos_big_vec 1320 targ_underscore=yes 1321 ;; 1322 sparc64-*-linux-*) 1323 targ_defvec=bfd_elf64_sparc_vec 1324 targ_selvecs="bfd_elf32_sparc_vec sparclinux_vec sunos_big_vec" 1325 ;; 1326 sparc64-*-elf*) 1327 targ_defvec=bfd_elf64_sparc_vec 1328 targ_selvecs=bfd_elf32_sparc_vec 1329 ;; 1330#endif /* BFD64 */ 1331 sparc*-*-coff*) 1332 targ_defvec=sparccoff_vec 1333 ;; 1334 sparc*-*-rtems*) 1335 targ_defvec=bfd_elf32_sparc_vec 1336 targ_selvecs="sunos_big_vec sparccoff_vec" 1337 ;; 1338 sparc*-*-*) 1339 targ_defvec=sunos_big_vec 1340 targ_underscore=yes 1341 ;; 1342 1343#if HAVE_host_aout_vec 1344 tahoe-*-*) 1345 targ_defvec=host_aout_vec 1346 targ_underscore=yes 1347 ;; 1348#endif 1349 1350 tic80*-*-*) 1351 targ_defvec=tic80coff_vec 1352 targ_underscore=yes 1353 ;; 1354 1355 v850-*-*) 1356 targ_defvec=bfd_elf32_v850_vec 1357 ;; 1358 v850e-*-*) 1359 targ_defvec=bfd_elf32_v850_vec 1360 ;; 1361 v850ea-*-*) 1362 targ_defvec=bfd_elf32_v850_vec 1363 ;; 1364 1365 vax-*-netbsdelf*) 1366 targ_defvec=bfd_elf32_vax_vec 1367 targ_selvecs="vaxnetbsd_vec vax1knetbsd_vec" 1368 ;; 1369 1370 vax-*-netbsdaout* | vax-*-netbsd*) 1371 targ_defvec=vaxnetbsd_vec 1372 targ_selvecs="bfd_elf32_vax_vec vax1knetbsd_vec" 1373 targ_underscore=yes 1374 ;; 1375 1376 vax-*-bsd* | vax-*-ultrix*) 1377 targ_defvec=vaxbsd_vec 1378 targ_underscore=yes 1379 ;; 1380 1381 vax-*-openbsd*) 1382 targ_defvec=bfd_elf32_vax_vec 1383 targ_selvecs=vaxnetbsd_vec 1384 ;; 1385 1386 vax-*-linux-*) 1387 targ_defvec=bfd_elf32_vax_vec 1388 ;; 1389 1390 vax*-*-*vms*) 1391 targ_defvec=vms_vax_vec 1392 ;; 1393 1394 we32k-*-*) 1395 targ_defvec=we32kcoff_vec 1396 ;; 1397 1398 w65-*-*) 1399 targ_defvec=w65_vec 1400 ;; 1401 1402 xstormy16-*-elf) 1403 targ_defvec=bfd_elf32_xstormy16_vec 1404 ;; 1405 1406 xtensa-*-*) 1407 targ_defvec=bfd_elf32_xtensa_le_vec 1408 targ_selvecs=bfd_elf32_xtensa_be_vec 1409 ;; 1410 xc16x-*-elf) 1411 targ_defvec=bfd_elf32_xc16x_vec 1412 ;; 1413 1414 z80-*-*) 1415 targ_defvec=z80coff_vec 1416 targ_underscore=no 1417 ;; 1418 1419 z8k*-*-*) 1420 targ_defvec=z8kcoff_vec 1421 targ_underscore=yes 1422 ;; 1423 1424 *-*-ieee*) 1425 targ_defvec=ieee_vec 1426 ;; 1427 1428 *-adobe-*) 1429 targ_defvec=a_out_adobe_vec 1430 targ_underscore=yes 1431 ;; 1432 1433 *-sony-*) 1434 targ_defvec=newsos3_vec 1435 targ_underscore=yes 1436 ;; 1437 1438 *-tandem-*) 1439 targ_defvec=m68kcoff_vec 1440 targ_selvecs=ieee_vec 1441 ;; 1442# END OF targmatch.h 1443 *) 1444 echo 1>&2 "*** BFD does not support target ${targ}." 1445 echo 1>&2 "*** Look in bfd/config.bfd for supported targets." 1446 exit 1 1447 ;; 1448esac 1449 1450case "${host64}${want64}" in 1451 *true*) 1452 targ_selvecs="${targ_selvecs} ${targ64_selvecs}" 1453 ;; 1454esac 1455 1456# If we support any ELF target, then automatically add support for the 1457# generic ELF targets. This permits an objdump with some ELF support 1458# to be used on an arbitrary ELF file for anything other than 1459# relocation information. 1460case "${targ_defvec} ${targ_selvecs}" in 1461 *bfd_elf64* | *bfd_elf32_n*mips*) 1462 targ_selvecs="${targ_selvecs} bfd_elf64_little_generic_vec bfd_elf64_big_generic_vec bfd_elf32_little_generic_vec bfd_elf32_big_generic_vec" 1463 ;; 1464 *bfd_elf32*) 1465 targ_selvecs="${targ_selvecs} bfd_elf32_little_generic_vec bfd_elf32_big_generic_vec" 1466 ;; 1467esac 1468