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