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