config.bfd revision 78828
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# targ_archs Architectures for this target 9# targ_cflags $(CFLAGS) for this target (FIXME: pretty bogus) 10# targ_underscore Whether underscores are used: yes or no 11 12# Part of this file is processed by targmatch.sed to generate the 13# targmatch.h file. The #ifdef and #endif lines that appear below are 14# copied directly into targmatch.h. 15 16# The binutils c++filt program wants to know whether underscores are 17# stripped or not. That is why we set targ_underscore. c++filt uses 18# this information to choose a default. This information is 19# duplicated in the symbol_leading_char field of the BFD target 20# vector, but c++filt does not deal with object files and is not 21# linked against libbfd.a. It is not terribly important that c++filt 22# get this right; it is just convenient. 23 24targ_defvec= 25targ_selvecs= 26targ_cflags= 27targ_underscore=no 28 29targ_cpu=`echo $targ | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` 30case "${targ_cpu}" in 31alpha*) targ_archs=bfd_alpha_arch ;; 32arm*) targ_archs=bfd_arm_arch ;; 33strongarm*) targ_archs=bfd_arm_arch ;; 34thumb*) targ_archs=bfd_arm_arch ;; 35xscale*) targ_archs=bfd_arm_arch ;; 36c30*) targ_archs=bfd_tic30_arch ;; 37c54x*) targ_archs=bfd_tic54x_arch ;; 38hppa*) targ_archs=bfd_hppa_arch ;; 39x86_64) targ_archs=bfd_i386_arch ;; 40i[3456]86) targ_archs=bfd_i386_arch ;; 41i370) targ_archs=bfd_i370_arch ;; 42m6811*|m68hc11*) targ_archs="bfd_m68hc11_arch bfd_m68hc12_arch" ;; 43m6812*|m68hc12*) targ_archs="bfd_m68hc12_arch bfd_m68hc11_arch" ;; 44m68*) targ_archs=bfd_m68k_arch ;; 45m88*) targ_archs=bfd_m88k_arch ;; 46mips*) targ_archs=bfd_mips_arch ;; 47pj*) targ_archs="bfd_pj_arch bfd_i386_arch";; 48powerpc*) targ_archs="bfd_rs6000_arch bfd_powerpc_arch" ;; 49rs6000) targ_archs="bfd_rs6000_arch bfd_powerpc_arch" ;; 50sparc*) targ_archs=bfd_sparc_arch ;; 51v850*) targ_archs=bfd_v850_arch ;; 52z8k*) targ_archs=bfd_z8k_arch ;; 53*) targ_archs=bfd_${targ_cpu}_arch ;; 54esac 55 56 57# WHEN ADDING ENTRIES TO THIS MATRIX: 58# Make sure that the left side always has two dashes. Otherwise you 59# can get spurious matches. Even for unambiguous cases, do this as a 60# convention, else the table becomes a real mess to understand and maintain. 61 62case "${targ}" in 63# START OF targmatch.h 64#ifdef BFD64 65 alpha*-*-netbsd* | alpha*-*-freebsd*) 66 targ_defvec=bfd_elf64_alpha_vec 67 targ_selvecs=ecoffalpha_little_vec 68 ;; 69 alpha*-*-netware*) 70 targ_defvec=ecoffalpha_little_vec 71 targ_selvecs=nlm32_alpha_vec 72 ;; 73 alpha*-*-linuxecoff*) 74 targ_defvec=ecoffalpha_little_vec 75 targ_selvecs=bfd_elf64_alpha_vec 76 ;; 77 alpha*-*-linux-gnu* | alpha*-*-elf*) 78 targ_defvec=bfd_elf64_alpha_vec 79 targ_selvecs=ecoffalpha_little_vec 80 ;; 81 alpha*-*-*vms*) 82 targ_defvec=vms_alpha_vec 83 ;; 84 alpha*-*-*) 85 targ_defvec=ecoffalpha_little_vec 86 ;; 87 ia64*-*-freebsd* | ia64*-*-linux-gnu* | ia64*-*-elf*) 88 targ_defvec=bfd_elf64_ia64_little_vec 89 targ_selvecs="bfd_elf64_ia64_big_vec bfd_efi_app_ia64_vec" 90 ;; 91 ia64*-*-hpux*) 92 targ_defvec=bfd_elf64_ia64_big_vec 93 targ_selvecs="bfd_elf32_ia64_big_vec" 94 ;; 95 sparc64-*-freebsd* | sparc64-*-netbsd*) 96 targ_defvec=bfd_elf64_sparc_vec 97 targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec" 98 ;; 99#endif /* BFD64 */ 100 101 arc-*-elf*) 102 targ_defvec=bfd_elf32_littlearc_vec 103 targ_selvecs=bfd_elf32_bigarc_vec 104 ;; 105 106 arm-*-netbsd*) 107 targ_defvec=armnetbsd_vec 108 targ_underscore=yes 109 ;; 110 arm-*-riscix*) 111 targ_defvec=riscix_vec 112 ;; 113 arm-epoc-pe*) 114 targ_defvec=arm_epoc_pe_little_vec 115 targ_selvecs="arm_epoc_pe_little_vec arm_epoc_pe_big_vec arm_epoc_pei_little_vec arm_epoc_pei_big_vec" 116 targ_underscore=no 117 ;; 118 arm-wince-pe | arm-*-wince) 119 targ_defvec=armpe_little_vec 120 targ_selvecs="armpe_little_vec armpe_big_vec armpei_little_vec armpei_big_vec" 121 targ_underscore=no 122 targ_cflags=-DARM_WINCE 123 ;; 124 arm-*-pe*) 125 targ_defvec=armpe_little_vec 126 targ_selvecs="armpe_little_vec armpe_big_vec armpei_little_vec armpei_big_vec" 127 targ_underscore=yes 128 ;; 129 arm-*-aout | armel-*-aout) 130 targ_defvec=aout_arm_little_vec 131 targ_selvecs=aout_arm_big_vec 132 ;; 133 armeb-*-aout) 134 targ_defvec=aout_arm_big_vec 135 targ_selvecs=aout_arm_little_vec 136 ;; 137 arm-*-coff) 138 targ_defvec=armcoff_little_vec 139 targ_selvecs=armcoff_big_vec 140 targ_underscore=yes 141 ;; 142 arm-*-vxworks*) 143 targ_defvec=armcoff_little_vec 144 targ_selvecs=armcoff_big_vec 145 targ_underscore=yes 146 targ_cflags=-DVXWORKS 147 ;; 148 arm-*-rtems*) 149 targ_defvec=bfd_elf32_littlearm_vec 150 targ_selvecs=bfd_elf32_bigarm_vec 151 ;; 152 armeb-*-elf | arm*b-*-linux-gnu*) 153 targ_defvec=bfd_elf32_bigarm_vec 154 targ_selvecs=bfd_elf32_littlearm_vec 155 ;; 156 arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-conix* | arm*-*-uclinux*) 157 targ_defvec=bfd_elf32_littlearm_vec 158 targ_selvecs=bfd_elf32_bigarm_vec 159 ;; 160 arm-*-oabi) 161 targ_defvec=bfd_elf32_littlearm_oabi_vec 162 targ_selvecs=bfd_elf32_bigarm_oabi_vec 163 ;; 164 165 thumb-*-coff) 166 targ_defvec=armcoff_little_vec 167 targ_selvecs=armcoff_big_vec 168 targ_underscore=yes 169 ;; 170 thumb-*-oabi) 171 targ_defvec=bfd_elf32_littlearm_oabi_vec 172 targ_selvecs=bfd_elf32_bigarm_oabi_vec 173 ;; 174 thumb-*-elf) 175 targ_defvec=bfd_elf32_littlearm_vec 176 targ_selvecs=bfd_elf32_bigarm_vec 177 ;; 178 thumb-epoc-pe*) 179 targ_defvec=arm_epoc_pe_little_vec 180 targ_selvecs="arm_epoc_pe_little_vec arm_epoc_pe_big_vec arm_epoc_pei_little_vec arm_epoc_pei_big_vec" 181 targ_underscore=no 182 ;; 183 thumb-*-pe*) 184 targ_defvec=armpe_little_vec 185 targ_selvecs="armpe_little_vec armpe_big_vec armpei_little_vec armpei_big_vec" 186 targ_underscore=yes 187 ;; 188 strongarm-*-elf) 189 targ_defvec=bfd_elf32_littlearm_vec 190 targ_selvecs=bfd_elf32_bigarm_vec 191 ;; 192 strongarm-*-coff) 193 targ_defvec=armcoff_little_vec 194 targ_selvecs=armcoff_big_vec 195 targ_underscore=yes 196 ;; 197 xscale-*-elf) 198 targ_defvec=bfd_elf32_littlearm_vec 199 targ_selvecs=bfd_elf32_bigarm_vec 200 ;; 201 xscale-*-coff) 202 targ_defvec=armcoff_little_vec 203 targ_selvecs=armcoff_big_vec 204 targ_underscore=yes 205 ;; 206 207 a29k-*-ebmon* | a29k-*-udi* | a29k-*-coff* | a29k-*-sym1* | \ 208 a29k-*-vxworks* | a29k-*-sysv* | a29k-*rtems*) 209 targ_defvec=a29kcoff_big_vec 210 targ_selvecs=sunos_big_vec 211 targ_underscore=yes 212 ;; 213 a29k-*-aout* | a29k-*-bsd* | a29k-*-vsta*) 214 targ_defvec=sunos_big_vec 215 targ_underscore=yes 216 ;; 217 218 avr-*-*) 219 targ_defvec=bfd_elf32_avr_vec 220 ;; 221 222 c30-*-*aout* | tic30-*-*aout*) 223 targ_defvec=tic30_aout_vec 224 ;; 225 c30-*-*coff* | tic30-*-*coff*) 226 targ_defvec=tic30_coff_vec 227 ;; 228 229 c54x*-*-*coff* | tic54x-*-*coff*) 230 targ_defvec=tic54x_coff1_vec 231 targ_selvecs="tic54x_coff1_beh_vec tic54x_coff2_vec tic54x_coff2_beh_vec tic54x_coff0_vec tic54x_coff0_beh_vec" 232 targ_underscore=yes 233 ;; 234 235 cris-*-*) 236 targ_defvec=cris_aout_vec 237 targ_selvecs="bfd_elf32_us_cris_vec bfd_elf32_cris_vec ieee_vec" 238 targ_underscore=yes # Note: not true for bfd_elf32_cris_vec. 239 ;; 240 241 d10v-*-*) 242 targ_defvec=bfd_elf32_d10v_vec 243 ;; 244 245 d30v-*-*) 246 targ_defvec=bfd_elf32_d30v_vec 247 ;; 248 249 fr30-*-elf) 250 targ_defvec=bfd_elf32_fr30_vec 251 ;; 252 253 254 h8300*-*-*) 255 targ_defvec=h8300coff_vec 256 targ_underscore=yes 257 ;; 258 259 h8500-*-*) 260 targ_defvec=h8500coff_vec 261 targ_underscore=yes 262 ;; 263 264#ifdef BFD64 265 hppa*64*-*-linux-gnu*) 266 targ_defvec=bfd_elf64_hppa_linux_vec 267 targ_selvecs=bfd_elf64_hppa_vec 268 ;; 269 hppa*64*-*-hpux11*) 270 targ_defvec=bfd_elf64_hppa_vec 271 targ_selvecs=bfd_elf64_hppa_linux_vec 272 targ_cflags=-DHPUX_LARGE_AR_IDS 273 ;; 274#endif 275 276 hppa*-*-linux-gnu*) 277 targ_defvec=bfd_elf32_hppa_linux_vec 278 targ_selvecs=bfd_elf32_hppa_vec 279 ;; 280 hppa*-*-*elf* | hppa*-*-lites* | hppa*-*-sysv4* | hppa*-*-rtems*) 281 targ_defvec=bfd_elf32_hppa_vec 282 targ_selvecs=bfd_elf32_hppa_linux_vec 283 ;; 284 285#if defined (HOST_HPPAHPUX) || defined (HOST_HPPABSD) || defined (HOST_HPPAOSF) || defined (HOST_HPPAMPEIX) 286 hppa*-*-bsd*) 287 targ_defvec=som_vec 288 targ_selvecs=bfd_elf32_hppa_vec 289 ;; 290 hppa*-*-hpux* | hppa*-*-hiux* | hppa*-*-mpeix*) 291 targ_defvec=som_vec 292 ;; 293 hppa*-*-osf*) 294 targ_defvec=som_vec 295 targ_selvecs=bfd_elf32_hppa_vec 296 ;; 297#endif /* defined (HOST_HPPAHPUX) || defined (HOST_HPPABSD) || defined (HOST_HPPAOSF) */ 298 299 i370-*-*) 300 targ_defvec=bfd_elf32_i370_vec 301 targ_selvecs="bfd_elf32_i370_vec" 302 ;; 303 i[3456]86-*-sco3.2v5*coff) 304 targ_defvec=i386coff_vec 305 targ_selvecs=bfd_elf32_i386_vec 306 ;; 307 i[3456]86-*-sysv4* | i[3456]86-*-unixware* | i[3456]86-*-solaris2* | \ 308 i[3456]86-*-elf | i[3456]86-*-sco3.2v5* | \ 309 i[3456]86-*-dgux* | i[3456]86-*-sysv5*) 310 targ_defvec=bfd_elf32_i386_vec 311 targ_selvecs=i386coff_vec 312 ;; 313 i[3456]86-*-rtemself*) 314 targ_defvec=bfd_elf32_i386_vec 315 targ_selvecs="i386coff_vec i386aout_vec" 316 ;; 317 i[3456]86-*-chorus*) 318 targ_defvec=bfd_elf32_i386_vec 319 ;; 320 i[3456]86-*-msdosdjgpp* | i[3456]*-*-go32* | i[3456]86-go32-rtems* ) 321 targ_defvec=go32coff_vec 322 targ_selvecs="go32stubbedcoff_vec i386aout_vec" 323 ;; 324 i[3456]86-*-sysv* | i[3456]86-*-isc* | i[3456]86-*-sco* | i[3456]86-*-coff | \ 325 i[3456]86-*-aix*) 326 targ_defvec=i386coff_vec 327 ;; 328 i[3456]86*-*-rtems*) 329 targ_defvec=i386coff_vec 330 targ_selvecs="bfd_elf32_i386_vec i386aout_vec" 331 ;; 332 i[3456]86-sequent-bsd*) 333 targ_defvec=i386dynix_vec 334 targ_underscore=yes 335 ;; 336 i[3456]86-*-bsd*) 337 targ_defvec=i386bsd_vec 338 targ_underscore=yes 339 ;; 340 i[3456]86-*-freebsdaout* | i[3456]86-*-freebsd[12].* | \ 341 i[3456]86-*-freebsd[12]) 342 targ_defvec=i386freebsd_vec 343 targ_selvecs=i386bsd_vec 344 targ_underscore=yes 345 ;; 346 i[3456]86-*-freebsd*) 347 targ_defvec=bfd_elf32_i386_vec 348 targ_selvecs=i386coff_vec 349 ;; 350 i[3456]86-*-netbsdelf*) 351 targ_defvec=bfd_elf32_i386_vec 352 targ_selvecs=i386netbsd_vec 353 ;; 354 i[3456]86-*-netbsdaout* | i[3456]86-*-netbsd* | i[3456]86-*-openbsd*) 355 targ_defvec=i386netbsd_vec 356 targ_selvecs="bfd_elf32_i386_vec i386bsd_vec" 357 targ_underscore=yes 358 ;; 359 i[3456]86-*-netware*) 360 targ_defvec=bfd_elf32_i386_vec 361 targ_selvecs="nlm32_i386_vec i386coff_vec i386aout_vec" 362 ;; 363 i[3456]86-*-linux*aout*) 364 targ_defvec=i386linux_vec 365 targ_selvecs=bfd_elf32_i386_vec 366 targ_underscore=yes 367 ;; 368 i[3456]86-*-linux-gnu*) 369 targ_defvec=bfd_elf32_i386_vec 370 targ_selvecs="i386linux_vec bfd_efi_app_ia32_vec" 371 ;; 372#ifdef BFD64 373 x86_64-*-freebsd*) 374 targ_defvec=bfd_elf64_x86_64_vec 375 targ_selvecs="bfd_elf32_i386_vec i386coff_vec bfd_efi_app_ia32_vec" 376 ;; 377 x86_64-*-linux-gnu*) 378 targ_defvec=bfd_elf64_x86_64_vec 379 targ_selvecs="bfd_elf32_i386_vec i386linux_vec bfd_efi_app_ia32_vec" 380 ;; 381#endif 382 i[3456]86-*-lynxos*) 383 targ_defvec=i386lynx_coff_vec 384 targ_selvecs=i386lynx_aout_vec 385 ;; 386 i[3456]86-*-gnu*) 387 targ_defvec=bfd_elf32_i386_vec 388 ;; 389 i[3456]86-*-mach* | i[3456]86-*-osf1mk*) 390 targ_defvec=i386mach3_vec 391 targ_cflags=-DSTAT_FOR_EXEC 392 targ_underscore=yes 393 ;; 394 i[3456]86-*-os9k) 395 targ_defvec=i386os9k_vec 396 ;; 397 i[3456]86-*-msdos*) 398 targ_defvec=i386aout_vec 399 targ_selvecs=i386msdos_vec 400 ;; 401 i[3456]86-*-moss*) 402 targ_defvec=bfd_elf32_i386_vec 403 targ_selvecs="i386msdos_vec i386aout_vec" 404 ;; 405 i[3456]86-*-beospe*) 406 targ_defvec=i386pe_vec 407 targ_selvecs="i386pe_vec i386pei_vec" 408 ;; 409 i[3456]86-*-beoself* | i[3456]86-*-beos*) 410 targ_defvec=bfd_elf32_i386_vec 411 targ_selvecs="i386pe_vec i386pei_vec" 412 ;; 413 i[3456]86-*-interix*) 414 targ_defvec=i386pei_vec 415 targ_selvecs="i386pe_vec" 416 # FIXME: This should eventually be checked at runtime. 417 targ_cflags=-DSTRICT_PE_FORMAT 418 ;; 419 i[3456]86-*-mingw32* | i[3456]86-*-cygwin* | i[3456]86-*-winnt | i[3456]86-*-pe) 420 targ_defvec=i386pe_vec 421 targ_selvecs="i386pe_vec i386pei_vec bfd_elf32_i386_vec" 422 ;; 423 i[3456]86-none-*) 424 targ_defvec=i386coff_vec 425 ;; 426 i[3456]86-*-aout* | i[3456]86*-*-vsta*) 427 targ_defvec=i386aout_vec 428 ;; 429 i[3456]86-*-vxworks*) 430 targ_defvec=i386aout_vec 431 targ_underscore=yes 432 ;; 433 i[3456]86-*-chaos) 434 targ_defvec=bfd_elf32_i386_vec 435 targ_selfvecs=i386chaos_vec 436 ;; 437 438 i860-*-mach3* | i860-*-osf1* | i860-*-coff*) 439 targ_defvec=i860coff_vec 440 ;; 441 i860-stardent-sysv4* | i860-stardent-elf*) 442 targ_defvec=bfd_elf32_i860_little_vec 443 targ_selvecs="bfd_elf32_i860_vec bfd_elf32_i860_little_vec" 444 ;; 445 i860-*-sysv4* | i860-*-elf*) 446 targ_defvec=bfd_elf32_i860_vec 447 ;; 448 449 i960-*-vxworks4* | i960-*-vxworks5.0) 450 targ_defvec=b_out_vec_little_host 451 targ_selvecs="b_out_vec_big_host icoff_little_vec icoff_big_vec ieee_vec" 452 targ_underscore=yes 453 ;; 454 i960-*-vxworks5.* | i960-*-coff* | i960-*-sysv* | i960-*-rtems*) 455 targ_defvec=icoff_little_vec 456 targ_selvecs="icoff_big_vec b_out_vec_little_host b_out_vec_big_host ieee_vec" 457 targ_underscore=yes 458 ;; 459 i960-*-vxworks* | i960-*-aout* | i960-*-bout* | i960-*-nindy*) 460 targ_defvec=b_out_vec_little_host 461 targ_selvecs="b_out_vec_big_host icoff_little_vec icoff_big_vec ieee_vec" 462 targ_underscore=yes 463 ;; 464 i960-*-elf*) 465 targ_defvec=bfd_elf32_i960_vec 466 targ_selvecs="icoff_little_vec icoff_big_vec" 467 ;; 468 469 m32r-*-*) 470 targ_defvec=bfd_elf32_m32r_vec 471 ;; 472 473 m68hc11-*-* | m6811-*-*) 474 targ_defvec=bfd_elf32_m68hc11_vec 475 targ_selvecs="bfd_elf32_m68hc11_vec bfd_elf32_m68hc12_vec" 476 ;; 477 m68hc12-*-* | m6812-*-*) 478 targ_defvec=bfd_elf32_m68hc12_vec 479 targ_selvecs="bfd_elf32_m68hc11_vec bfd_elf32_m68hc12_vec" 480 ;; 481 482 m68*-apollo-*) 483 targ_defvec=apollocoff_vec 484 ;; 485 m68*-bull-sysv*) 486 targ_defvec=m68kcoffun_vec 487 targ_underscore=yes 488 ;; 489 m68*-motorola-sysv*) 490 targ_defvec=m68ksysvcoff_vec 491 ;; 492 m68*-hp-bsd*) 493 targ_defvec=hp300bsd_vec 494 targ_underscore=yes 495 ;; 496 m68*-*-aout*) 497 targ_defvec=aout0_big_vec 498 # We include cisco_core_big_vec here, rather than making a separate cisco 499 # configuration, so that cisco-core.c gets routinely tested at 500 # least for compilation. 501 targ_selvecs="cisco_core_big_vec ieee_vec" 502 targ_underscore=yes 503 ;; 504 m68*-*-elf* | m68*-*-sysv4*) 505 targ_defvec=bfd_elf32_m68k_vec 506 targ_selvecs="m68kcoff_vec ieee_vec" 507 ;; 508 m68*-*-rtems*) 509 targ_defvec=m68kcoff_vec 510 targ_selvecs="m68kcoff_vec versados_vec ieee_vec aout0_big_vec" 511 ;; 512 m68*-*-coff* | m68*-*-sysv*) 513 targ_defvec=m68kcoff_vec 514 targ_selvecs="m68kcoff_vec versados_vec ieee_vec" 515 ;; 516 m68*-*-hpux*) 517 targ_defvec=hp300hpux_vec 518 targ_underscore=yes 519 ;; 520 m68*-*-linux*aout*) 521 targ_defvec=m68klinux_vec 522 targ_selvecs=bfd_elf32_m68k_vec 523 targ_underscore=yes 524 ;; 525 m68*-*-linux-gnu*) 526 targ_defvec=bfd_elf32_m68k_vec 527 targ_selvecs=m68klinux_vec 528 ;; 529 m68*-*-gnu*) 530 targ_defvec=bfd_elf32_m68k_vec 531 # targ_selvecs=m68kmach3_vec 532 # targ_cflags=-DSTAT_FOR_EXEC 533 ;; 534 m68*-*-lynxos*) 535 targ_defvec=m68klynx_coff_vec 536 targ_selvecs=m68klynx_aout_vec 537 ;; 538 m68*-hp*-netbsd*) 539 targ_defvec=m68k4knetbsd_vec 540 targ_selvecs="m68knetbsd_vec hp300bsd_vec sunos_big_vec" 541 targ_underscore=yes 542 ;; 543 m68*-*-netbsd* | m68*-*-openbsd*) 544 targ_defvec=m68knetbsd_vec 545 targ_selvecs="m68k4knetbsd_vec hp300bsd_vec sunos_big_vec" 546 targ_underscore=yes 547 ;; 548 m68*-*-sunos* | m68*-*-os68k* | m68*-*-vxworks* | m68*-netx-* | \ 549 m68*-*-bsd* | m68*-*-vsta*) 550 targ_defvec=sunos_big_vec 551 targ_underscore=yes 552 ;; 553 m68*-ericsson-*) 554 targ_defvec=sunos_big_vec 555 targ_selvecs="m68kcoff_vec versados_vec tekhex_vec" 556 targ_underscore=yes 557 ;; 558 m68*-cbm-*) 559 targ_defvec=bfd_elf32_m68k_vec 560 targ_selvecs=m68kcoff_vec 561 ;; 562 m68*-apple-aux*) 563 targ_defvec=m68kaux_coff_vec 564 ;; 565 m68*-*-psos*) 566 targ_defvec=bfd_elf32_m68k_vec 567 targ_selvecs=ieee_vec 568 targ_underscore=yes 569 ;; 570 571 m88*-harris-cxux* | m88*-*-dgux* | m88*-*-sysv4*) 572 targ_defvec=bfd_elf32_m88k_vec 573 targ_selvecs=m88kbcs_vec 574 ;; 575 m88*-*-mach3*) 576 targ_defvec=m88kmach3_vec 577 targ_cflags=-DSTAT_FOR_EXEC 578 ;; 579 m88*-*-*) 580 targ_defvec=m88kbcs_vec 581 targ_underscore=yes 582 ;; 583 584 mcore-*-elf) 585 targ_defvec=bfd_elf32_mcore_big_vec 586 targ_selvecs="bfd_elf32_mcore_big_vec bfd_elf32_mcore_little_vec" 587 ;; 588 mcore-*-pe) 589 targ_defvec=mcore_pe_big_vec 590 targ_selvecs="mcore_pe_big_vec mcore_pe_little_vec mcore_pei_big_vec mcore_pei_little_vec" 591 ;; 592 593 mips*-big-*) 594 targ_defvec=ecoff_big_vec 595 targ_selvecs=ecoff_little_vec 596 ;; 597 mips-dec-netbsd* | mips*el*-*-netbsd*) 598 targ_defvec=bfd_elf32_littlemips_vec 599 targ_selvecs="bfd_elf32_bigmips_vec ecoff_little_vec ecoff_big_vec" 600 ;; 601 mips*-*-netbsd*) 602 targ_defvec=bfd_elf32_bigmips_vec 603 targ_selvecs="bfd_elf32_littlemips_vec ecoff_big_vec ecoff_little_vec" 604 ;; 605 mips*-dec-bsd*) 606 targ_defvec=aout_mips_little_vec 607 targ_underscore=yes 608 ;; 609 mips*-dec-mach3*) 610 targ_defvec=aout_mips_little_vec 611 targ_cflags=-DSTAT_FOR_EXEC 612 ;; 613 mips*-dec-* | mips*el-*-ecoff*) 614 targ_defvec=ecoff_little_vec 615 targ_selvecs=ecoff_big_vec 616 ;; 617 mips*-*-ecoff*) 618 targ_defvec=ecoff_big_vec 619 targ_selvecs=ecoff_little_vec 620 ;; 621 mips*-*-irix6*) 622 targ_defvec=bfd_elf32_bigmips_vec 623 targ_selvecs="bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec" 624 ;; 625 mips*-*-irix5*) 626 targ_defvec=bfd_elf32_bigmips_vec 627 targ_selvecs="bfd_elf32_littlemips_vec ecoff_big_vec ecoff_little_vec" 628 ;; 629 mips*-sgi-* | mips*-*-bsd*) 630 targ_defvec=ecoff_big_vec 631 targ_selvecs=ecoff_little_vec 632 ;; 633 mips*-*-lnews*) 634 targ_defvec=ecoff_biglittle_vec 635 targ_selvecs="ecoff_little_vec ecoff_big_vec" 636 ;; 637 mips*-*-mach3*) 638 targ_defvec=aout_mips_little_vec 639 targ_cflags=-DSTAT_FOR_EXEC 640 ;; 641 mips*-*-pe*) 642 targ_defvec=mipslpe_vec 643 targ_selvecs="mipslpei_vec mipslpei_vec ecoff_little_vec ecoff_big_vec" 644 targ_underscore=yes 645 ;; 646 mips*-*-sysv4*) 647 targ_defvec=bfd_elf32_tradbigmips_vec 648 targ_selvecs="bfd_elf32_tradlittlemips_vec ecoff_big_vec ecoff_little_vec" 649 ;; 650 mips*-*-sysv* | mips*-*-riscos*) 651 targ_defvec=ecoff_big_vec 652 targ_selvecs=ecoff_little_vec 653 ;; 654 mips*el-*-elf* | mips*el-*-rtems* | mips*el-*-vxworks* | mips*-*-chorus*) 655 targ_defvec=bfd_elf32_littlemips_vec 656 targ_selvecs="bfd_elf32_bigmips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec" 657 ;; 658 mips*-*-elf* | mips*-*-rtems* | mips*-*-vxworks*) 659 targ_defvec=bfd_elf32_bigmips_vec 660 targ_selvecs="bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec" 661 ;; 662 mips*-*-none) 663 targ_defvec=bfd_elf32_bigmips_vec 664 targ_selvecs="bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec" 665 ;; 666 mips*el*-*-openbsd*) 667 targ_defvec=bfd_elf32_littlemips_vec 668 targ_selvecs="bfd_elf32_bigmips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec ecoff_little_vec ecoff_big_vec" 669 ;; 670 mips*el*-*-linux-gnu*) 671 targ_defvec=bfd_elf32_tradlittlemips_vec 672 targ_selvecs="bfd_elf32_tradbigmips_vec bfd_elf64_tradlittlemips_vec bfd_elf64_tradbigmips_vec ecoff_little_vec ecoff_big_vec" 673 ;; 674 mips*-*-openbsd*) 675 targ_defvec=bfd_elf32_bigmips_vec 676 targ_selvecs="bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec ecoff_big_vec ecoff_little_vec" 677 ;; 678 mips*-*-linux-gnu*) 679 targ_defvec=bfd_elf32_tradbigmips_vec 680 targ_selvecs="bfd_elf32_tradlittlemips_vec bfd_elf64_tradbigmips_vec bfd_elf64_tradlittlemips_vec ecoff_big_vec ecoff_little_vec" 681 ;; 682 683 mn10200-*-*) 684 targ_defvec=bfd_elf32_mn10200_vec 685 ;; 686 687 mn10300-*-*) 688 targ_defvec=bfd_elf32_mn10300_vec 689 ;; 690 691 ns32k-pc532-mach* | ns32k-pc532-ux*) 692 targ_defvec=pc532machaout_vec 693 targ_underscore=yes 694 ;; 695 ns32k-*-netbsd* | ns32k-*-lites* | ns32k-*-openbsd*) 696 targ_defvec=pc532netbsd_vec 697 targ_underscore=yes 698 ;; 699 700 pj-*-*) 701 targ_defvec=bfd_elf32_pj_vec 702 targ_selvecs="bfd_elf32_pj_vec bfd_elf32_pjl_vec" 703 ;; 704 705 pjl-*-*) 706 targ_defvec=bfd_elf32_pjl_vec 707 targ_selvecs="bfd_elf32_pjl_vec bfd_elf32_pj_vec bfd_elf32_i386_vec" 708 ;; 709 710 powerpc-*-aix* | powerpc-*-beos*) 711 targ_defvec=rs6000coff_vec 712 targ_selvecs="rs6000coff64_vec" 713 ;; 714 powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \ 715 powerpc-*-solaris2* | powerpc-*-linux-gnu* | powerpc-*-rtems* | \ 716 powerpc-*-chorus* | powerpc-*-vxworks*) 717 targ_defvec=bfd_elf32_powerpc_vec 718 targ_selvecs="rs6000coff_vec bfd_elf32_powerpcle_vec ppcboot_vec" 719 ;; 720 powerpc-*-macos* | powerpc-*-mpw*) 721 targ_defvec=pmac_xcoff_vec 722 ;; 723 powerpc-*-netware*) 724 targ_defvec=bfd_elf32_powerpc_vec 725 targ_selvecs="nlm32_powerpc_vec rs6000coff_vec" 726 ;; 727 powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \ 728 powerpcle-*-solaris2* | powerpcle-*-linux-gnu* | powerpcle-*-vxworks* |\ 729 powerpcle-*-rtems*) 730 targ_defvec=bfd_elf32_powerpcle_vec 731 targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec" 732 ;; 733 734 powerpcle-*-pe | powerpcle-*-winnt* | powerpcle-*-cygwin*) 735 targ_defvec=bfd_powerpcle_pe_vec 736 targ_selvecs="bfd_powerpcle_pei_vec bfd_powerpc_pei_vec bfd_powerpcle_pe_vec bfd_powerpc_pe_vec" 737 ;; 738 739 rs6000-*-*) 740 targ_defvec=rs6000coff_vec 741 ;; 742 743 sh-*-linux*) 744 targ_defvec=bfd_elf32_shblin_vec 745 targ_selvecs=bfd_elf32_shlin_vec 746 ;; 747 748 sh-*-elf* | sh-*-rtemself*) 749 targ_defvec=bfd_elf32_sh_vec 750 targ_selvecs="bfd_elf32_shl_vec shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec" 751 targ_underscore=yes 752 ;; 753 sh-*-pe) 754 targ_defvec=shlpe_vec 755 targ_selvecs="shlpe_vec shlpei_vec" 756 targ_underscore=yes 757 ;; 758 sh-*-* | sh-*-rtems*) 759 targ_defvec=shcoff_vec 760 targ_selvecs="shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec" 761 targ_underscore=yes 762 ;; 763 764 sparclet-*-aout*) 765 targ_defvec=sunos_big_vec 766 targ_selvecs=sparcle_aout_vec 767 targ_underscore=yes 768 ;; 769 sparc86x-*-aout*) 770 targ_defvec=sunos_big_vec 771 targ_underscore=yes 772 ;; 773 sparclite-*-elf* | sparc86x-*-elf*) 774 targ_defvec=bfd_elf32_sparc_vec 775 ;; 776 sparc*-*-chorus*) 777 targ_defvec=bfd_elf32_sparc_vec 778 ;; 779 sparc-*-linux*aout*) 780 targ_defvec=sparclinux_vec 781 targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec" 782 targ_underscore=yes 783 ;; 784 sparc-*-linux-gnu*) 785 targ_defvec=bfd_elf32_sparc_vec 786 targ_selvecs="sparclinux_vec bfd_elf64_sparc_vec sunos_big_vec" 787 ;; 788 sparc-*-lynxos*) 789 targ_defvec=sparclynx_coff_vec 790 targ_selvecs=sparclynx_aout_vec 791 ;; 792 sparc-*-netbsdelf*) 793 targ_defvec=bfd_elf32_sparc_vec 794 targ_selvecs=sparcnetbsd_vec 795 ;; 796 sparc-*-netbsdaout* | sparc-*-netbsd*) 797 targ_defvec=sparcnetbsd_vec 798 targ_selvecs=bfd_elf32_sparc_vec 799 targ_underscore=yes 800 ;; 801 sparc-*-openbsd*) 802 targ_defvec=sparcnetbsd_vec 803 targ_underscore=yes 804 ;; 805 sparc-*-elf* | sparc-*-solaris2.[0-6] | sparc-*-solaris2.[0-6].*) 806 targ_defvec=bfd_elf32_sparc_vec 807 targ_selvecs=sunos_big_vec 808 ;; 809#ifdef BFD64 810 sparc-*-solaris2* | sparcv9-*-solaris2* | sparc64-*-solaris2*) 811 targ_defvec=bfd_elf32_sparc_vec 812 targ_selvecs="bfd_elf64_sparc_vec sunos_big_vec" 813 ;; 814#endif 815 sparc-*-sysv4*) 816 targ_defvec=bfd_elf32_sparc_vec 817 ;; 818 sparc-*-netware*) 819 targ_defvec=bfd_elf32_sparc_vec 820 targ_selvecs="nlm32_sparc_vec sunos_big_vec" 821 ;; 822#ifdef BFD64 823 sparc64-*-aout*) 824 targ_defvec=sunos_big_vec 825 targ_underscore=yes 826 ;; 827 sparc64-*-linux-gnu*) 828 targ_defvec=bfd_elf64_sparc_vec 829 targ_selvecs="bfd_elf32_sparc_vec sparclinux_vec sunos_big_vec" 830 ;; 831 sparc64-*-elf*) 832 targ_defvec=bfd_elf64_sparc_vec 833 targ_selvecs=bfd_elf32_sparc_vec 834 ;; 835#endif /* BFD64 */ 836 sparc*-*-coff*) 837 targ_defvec=sparccoff_vec 838 ;; 839 sparc*-*-rtemsaout*) 840 targ_defvec=sunos_big_vec 841 targ_selvecs="bfd_elf32_sparc_vec sparccoff_vec" 842 targ_underscore=yes 843 ;; 844 sparc*-*-rtems* | sparc*-*-rtemself*) 845 targ_defvec=bfd_elf32_sparc_vec 846 targ_selvecs="sunos_big_vec sparccoff_vec" 847 ;; 848 sparc*-*-* | sparc*-*-rtems*) 849 targ_defvec=sunos_big_vec 850 targ_underscore=yes 851 ;; 852 853#if HAVE_host_aout_vec 854 tahoe-*-*) 855 targ_defvec=host_aout_vec 856 targ_underscore=yes 857 ;; 858#endif 859 860 tic80*-*-*) 861 targ_defvec=tic80coff_vec 862 targ_underscore=yes 863 ;; 864 865 866 v850-*-*) 867 targ_defvec=bfd_elf32_v850_vec 868 ;; 869 v850e-*-*) 870 targ_defvec=bfd_elf32_v850_vec 871 ;; 872 v850ea-*-*) 873 targ_defvec=bfd_elf32_v850_vec 874 ;; 875#if HAVE_host_aout_vec 876 vax-*-bsd* | vax-*-ultrix*) 877 targ_defvec=host_aout_vec 878 targ_underscore=yes 879 ;; 880#endif 881 882 vax*-*-*vms*) 883 targ_defvec=vms_vax_vec 884 ;; 885 886 we32k-*-*) 887 targ_defvec=we32kcoff_vec 888 ;; 889 890 w65-*-*) 891 targ_defvec=w65_vec 892 ;; 893 894 z8k*-*-*) 895 targ_defvec=z8kcoff_vec 896 targ_underscore=yes 897 ;; 898 899 *-*-ieee*) 900 targ_defvec=ieee_vec 901 ;; 902 903 *-adobe-*) 904 targ_defvec=a_out_adobe_vec 905 targ_underscore=yes 906 ;; 907 908 *-sony-*) 909 targ_defvec=newsos3_vec 910 targ_underscore=yes 911 ;; 912 913 *-tandem-*) 914 targ_defvec=m68kcoff_vec 915 targ_selvecs=ieee_vec 916 ;; 917# END OF targmatch.h 918 *) 919 echo 1>&2 "*** BFD does not support target ${targ}." 920 echo 1>&2 "*** Look in bfd/config.bfd for supported targets." 921 exit 1 922 ;; 923esac 924 925# If we support any ELF target, then automatically add support for the 926# generic ELF targets. This permits an objdump with some ELF support 927# to be used on an arbitrary ELF file for anything other than 928# relocation information. 929case "${targ_defvec} ${targ_selvecs}" in 930 *bfd_elf64*) 931 targ_selvecs="${targ_selvecs} bfd_elf64_little_generic_vec bfd_elf64_big_generic_vec bfd_elf32_little_generic_vec bfd_elf32_big_generic_vec" 932 ;; 933 *bfd_elf32*) 934 targ_selvecs="${targ_selvecs} bfd_elf32_little_generic_vec bfd_elf32_big_generic_vec" 935 ;; 936esac 937