config.bfd revision 1.5
1# config.bfd 2# 3# Copyright (C) 2012-2015 Free Software Foundation, Inc. 4# 5# This file is free software; you can redistribute it and/or modify 6# it under the terms of the GNU General Public License as published by 7# the Free Software Foundation; either version 3 of the License, or 8# (at your option) any later version. 9# 10# This program is distributed in the hope that it will be useful, 11# but WITHOUT ANY WARRANTY; without even the implied warranty of 12# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13# GNU General Public License for more details. 14# 15# You should have received a copy of the GNU General Public License 16# along with this program; see the file COPYING3. If not see 17# <http://www.gnu.org/licenses/>. 18# 19# Convert a canonical host type into a BFD host type. 20# Set shell variable targ to canonical target name, and run 21# using ``. config.bfd''. 22# Sets the following shell variables: 23# targ_defvec Default vector for this target 24# targ_selvecs Vectors to build for this target 25# targ64_selvecs Vectors to build if --enable-64-bit-bfd is given 26# or if host is 64 bit. 27# targ_archs Architectures for this target 28# targ_cflags $(CFLAGS) for this target (FIXME: pretty bogus) 29# targ_underscore Whether underscores are used: yes or no 30 31# Part of this file is processed by targmatch.sed to generate the 32# targmatch.h file. The #ifdef and #endif lines that appear below are 33# copied directly into targmatch.h. 34 35# The binutils c++filt program wants to know whether underscores are 36# stripped or not. That is why we set targ_underscore. c++filt uses 37# this information to choose a default. This information is 38# duplicated in the symbol_leading_char field of the BFD target 39# vector, but c++filt does not deal with object files and is not 40# linked against libbfd.a. It is not terribly important that c++filt 41# get this right; it is just convenient. 42 43targ_defvec= 44targ_selvecs= 45targ64_selvecs= 46targ_cflags= 47targ_underscore=no 48 49# Catch obsolete configurations. 50case $targ in 51 openrisc-*-* | or32-*-*) 52 echo "*** Configuration $targ is obsolete." >&2 53 echo "*** Use or1k-*-elf or or1k-*-linux as the target instead" >&2 54 exit 1 55 ;; 56 null) 57 if test "x$enable_obsolete" != xyes; then 58 echo "*** Configuration $targ is obsolete." >&2 59 echo "*** Specify --enable-obsolete to build it anyway." >&2 60 echo "*** Support will be REMOVED in the next major release of BINUTILS," >&2 61 echo "*** unless a maintainer comes forward." >&2 62 exit 1 63 fi;; 64esac 65 66case $targ in 67 *-go32-rtems* | \ 68 a29k-* | \ 69 arm-*-oabi | \ 70 hppa*-*-rtems* | \ 71 i960-*-rtems* | \ 72 i[3-7]86*-*-rtemscoff* | \ 73 m68*-*-lynxos* | \ 74 m68*-*-rtemscoff* | \ 75 m68*-apollo-* | \ 76 m68*-apple-aux* | \ 77 m68*-bull-sysv* | \ 78 maxq-*-coff | \ 79 mips*el-*-rtems* | \ 80 powerpcle-*-rtems* | \ 81 sparc*-*-rtemsaout* | \ 82 sparc-*-lynxos* | \ 83 vax-*-vms* | \ 84 null) 85 echo "*** Configuration $targ is obsolete." >&2 86 echo "*** Support has been REMOVED." >&2 87 exit 1 88 ;; 89esac 90 91targ_cpu=`echo $targ | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` 92case "${targ_cpu}" in 93aarch64*) targ_archs="bfd_aarch64_arch bfd_arm_arch";; 94alpha*) targ_archs=bfd_alpha_arch ;; 95am34*|am33_2.0*) targ_archs=bfd_mn10300_arch ;; 96arm*) targ_archs=bfd_arm_arch ;; 97bfin*) targ_archs=bfd_bfin_arch ;; 98c30*) targ_archs=bfd_tic30_arch ;; 99c4x*) targ_archs=bfd_tic4x_arch ;; 100c54x*) targ_archs=bfd_tic54x_arch ;; 101cr16*) targ_archs=bfd_cr16_arch ;; 102crisv32) targ_archs=bfd_cris_arch ;; 103crx*) targ_archs=bfd_crx_arch ;; 104dlx*) targ_archs=bfd_dlx_arch ;; 105fido*) targ_archs=bfd_m68k_arch ;; 106hppa*) targ_archs=bfd_hppa_arch ;; 107i[3-7]86) targ_archs=bfd_i386_arch ;; 108i370) targ_archs=bfd_i370_arch ;; 109lm32) targ_archs=bfd_lm32_arch ;; 110m5200|m5407) targ_archs=bfd_m68k_arch ;; 111m6811*|m68hc11*) targ_archs="bfd_m68hc11_arch bfd_m68hc12_arch bfd_m9s12x_arch bfd_m9s12xg_arch" ;; 112m6812*|m68hc12*) targ_archs="bfd_m68hc12_arch bfd_m68hc11_arch bfd_m9s12x_arch bfd_m9s12xg_arch" ;; 113m68*) targ_archs=bfd_m68k_arch ;; 114m88*) targ_archs=bfd_m88k_arch ;; 115microblaze*) targ_archs=bfd_microblaze_arch ;; 116mips*) targ_archs=bfd_mips_arch ;; 117nds32*) targ_archs=bfd_nds32_arch ;; 118nios2*) targ_archs=bfd_nios2_arch ;; 119or1k*|or1knd*) targ_archs=bfd_or1k_arch ;; 120pdp11*) targ_archs=bfd_pdp11_arch ;; 121pj*) targ_archs="bfd_pj_arch bfd_i386_arch";; 122powerpc*) targ_archs="bfd_rs6000_arch bfd_powerpc_arch" ;; 123rs6000) targ_archs="bfd_rs6000_arch bfd_powerpc_arch" ;; 124s390*) targ_archs=bfd_s390_arch ;; 125sh*) targ_archs=bfd_sh_arch ;; 126sparc*) targ_archs=bfd_sparc_arch ;; 127spu*) targ_archs=bfd_spu_arch ;; 128tilegx*) targ_archs=bfd_tilegx_arch ;; 129tilepro*) targ_archs=bfd_tilepro_arch ;; 130v850*) targ_archs="bfd_v850_arch bfd_v850_rh850_arch" ;; 131visium*) targ_archs=bfd_visium_arch ;; 132x86_64*) targ_archs=bfd_i386_arch ;; 133xtensa*) targ_archs=bfd_xtensa_arch ;; 134xgate) targ_archs=bfd_xgate_arch ;; 135z80|r800) targ_archs=bfd_z80_arch ;; 136z8k*) targ_archs=bfd_z8k_arch ;; 137*) targ_archs=bfd_${targ_cpu}_arch ;; 138esac 139 140 141# WHEN ADDING ENTRIES TO THIS MATRIX: 142# Make sure that the left side always has two dashes. Otherwise you 143# can get spurious matches. Even for unambiguous cases, do this as a 144# convention, else the table becomes a real mess to understand and maintain. 145# 146# Keep obsolete entries above the START comment, to keep them out of 147# targmatch.h. 148 149case "${targ}" in 150 mips*-dec-bsd*) 151 echo "This target is obsolete and has been removed." 152 exit 1 153 ;; 154 155 mips*-*-mach3*) 156 echo "This target is obsolete and has been removed." 157 exit 1 158 ;; 159 160 mips*-*-pe*) 161 echo "This target is obsolete and has been removed." 162 exit 1 163 ;; 164 165 plugin) 166 targ_defvec=plugin_vec 167 targ_selvecs="plugin_vec" 168 ;; 169 170# START OF targmatch.h 171#ifdef BFD64 172 aarch64-*-elf) 173 targ_defvec=aarch64_elf64_le_vec 174 targ_selvecs="aarch64_elf64_be_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_le_vec arm_elf32_be_vec" 175 want64=true 176 ;; 177 aarch64_be-*-elf) 178 targ_defvec=aarch64_elf64_be_vec 179 targ_selvecs="aarch64_elf64_le_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_be_vec arm_elf32_le_vec" 180 want64=true 181 ;; 182 aarch64-*-freebsd*) 183 targ_defvec=aarch64_elf64_le_vec 184 targ_selvecs="aarch64_elf64_be_vec arm_elf32_le_vec arm_elf32_be_vec" 185 want64=true 186 ;; 187 aarch64-*-linux*) 188 targ_defvec=aarch64_elf64_le_vec 189 targ_selvecs="aarch64_elf64_be_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_le_vec arm_elf32_be_vec" 190 want64=true 191 ;; 192 aarch64_be-*-linux*) 193 targ_defvec=aarch64_elf64_be_vec 194 targ_selvecs="aarch64_elf64_le_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_be_vec arm_elf32_le_vec" 195 want64=true 196 ;; 197 aarch64-*-netbsd*) 198 targ_defvec=bfd_elf64_littleaarch64_vec 199 targ_selvecs="bfd_elf64_bigaarch64_vec bfd_elf32_littlearm_vec bfd_elf32_bigarm_vec" 200 want64=true 201 ;; 202 aarch64_be-*-netbsd*) 203 targ_defvec=bfd_elf64_bigaarch64_vec 204 targ_selvecs="bfd_elf64_littleaarch64_vec bfd_elf32_bigarm_vec bfd_elf32_littlearm_vec" 205 want64=true 206 ;; 207 alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu) 208 targ_defvec=alpha_elf64_fbsd_vec 209 targ_selvecs="alpha_elf64_vec alpha_ecoff_le_vec" 210 want64=true 211 # FreeBSD <= 4.0 supports only the old nonstandard way of ABI labelling. 212 case "${targ}" in 213 alpha*-*-freebsd3* | alpha*-*-freebsd4 | alpha*-*-freebsd4.0*) 214 targ_cflags=-DOLD_FREEBSD_ABI_LABEL ;; 215 esac 216 ;; 217 alpha*-*-netbsd* | alpha*-*-openbsd*) 218 targ_defvec=alpha_elf64_vec 219 targ_selvecs=alpha_ecoff_le_vec 220 want64=true 221 ;; 222 alpha*-*-netware*) 223 targ_defvec=alpha_ecoff_le_vec 224 targ_selvecs=alpha_nlm32_vec 225 want64=true 226 ;; 227 alpha*-*-linux*ecoff*) 228 targ_defvec=alpha_ecoff_le_vec 229 targ_selvecs=alpha_elf64_vec 230 want64=true 231 ;; 232 alpha*-*-linux-* | alpha*-*-elf*) 233 targ_defvec=alpha_elf64_vec 234 targ_selvecs=alpha_ecoff_le_vec 235 want64=true 236 ;; 237 alpha*-*-*vms*) 238 targ_defvec=alpha_vms_vec 239 targ_selvecs=alpha_vms_lib_txt_vec 240 want64=true 241 ;; 242 alpha*-*-*) 243 targ_defvec=alpha_ecoff_le_vec 244 want64=true 245 ;; 246 ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu) 247 targ_defvec=ia64_elf64_le_vec 248 targ_selvecs="ia64_elf64_be_vec ia64_pei_vec" 249 want64=true 250 ;; 251 ia64*-*-hpux*) 252 targ_defvec=ia64_elf32_hpux_be_vec 253 targ_selvecs="ia64_elf64_hpux_be_vec" 254 want64=true 255 ;; 256 ia64*-*-*vms*) 257 targ_defvec=ia64_elf64_vms_vec 258 targ_selvecs=alpha_vms_lib_txt_vec 259 want64=true 260 ;; 261 sparc64-*-freebsd* | sparc64-*-kfreebsd*-gnu) 262 targ_defvec=sparc_elf64_fbsd_vec 263 targ_selvecs="sparc_elf64_vec sparc_elf32_vec sparc_aout_sunos_be_vec" 264 ;; 265 sparc64-*-netbsd* | sparc64-*-openbsd*) 266 targ_defvec=sparc_elf64_vec 267 targ_selvecs="sparc_elf32_vec sparc_aout_sunos_be_vec" 268 want64=true 269 ;; 270#endif /* BFD64 */ 271 272 am34-*-linux* | am33_2.0-*-linux*) 273 targ_defvec=am33_elf32_linux_vec 274 ;; 275 276 arc-*-elf*) 277 targ_defvec=arc_elf32_le_vec 278 targ_selvecs=arc_elf32_be_vec 279 ;; 280 281 arm-*-nacl*) 282 targ_defvec=arm_elf32_nacl_le_vec 283 targ_selvecs="arm_elf32_nacl_be_vec i386_elf32_nacl_vec" 284 targ64_selvecs="x86_64_elf32_nacl_vec x86_64_elf64_nacl_vec" 285 targ_archs="$targ_archs bfd_i386_arch" 286 ;; 287 armeb-*-nacl*) 288 targ_defvec=arm_elf32_nacl_be_vec 289 targ_selvecs="arm_elf32_nacl_le_vec i386_elf32_nacl_vec" 290 targ64_selvecs="x86_64_elf32_nacl_vec x86_64_elf64_nacl_vec" 291 targ_archs="$targ_archs bfd_i386_arch" 292 ;; 293 armeb-*-netbsdelf*) 294 targ_defvec=arm_elf32_be_vec 295 targ_selvecs="arm_elf32_le_vec arm_aout_nbsd_vec" 296 ;; 297 arm-*-netbsdelf*) 298 targ_defvec=arm_elf32_le_vec 299 targ_selvecs="arm_elf32_be_vec arm_aout_nbsd_vec" 300 ;; 301 arm-*-netbsd* | arm-*-openbsd*) 302 targ_defvec=arm_aout_nbsd_vec 303 targ_selvecs="arm_elf32_le_vec arm_elf32_be_vec" 304 targ_underscore=yes 305 ;; 306 arm-*-nto* | nto*arm*) 307 targ_defvec=arm_elf32_le_vec 308 targ_selvecs=arm_elf32_be_vec 309 targ_cflags=-D__QNXTARGET__ 310 ;; 311 arm-*-riscix*) 312 targ_defvec=arm_aout_riscix_vec 313 ;; 314 arm-epoc-pe*) 315 targ_defvec=arm_pe_epoc_le_vec 316 targ_selvecs="arm_pe_epoc_le_vec arm_pe_epoc_be_vec arm_pei_epoc_le_vec arm_pei_epoc_be_vec" 317 targ_underscore=no 318 targ_cflags=-DARM_COFF_BUGFIX 319 ;; 320 arm-wince-pe | arm-*-wince | arm*-*-mingw32ce* | arm*-*-cegcc*) 321 targ_defvec=arm_pe_wince_le_vec 322 targ_selvecs="arm_pe_wince_le_vec arm_pe_wince_be_vec arm_pei_wince_le_vec arm_pei_wince_be_vec" 323 targ_underscore=no 324 targ_cflags="-DARM_WINCE -DARM_COFF_BUGFIX" 325 ;; 326 arm-*-pe*) 327 targ_defvec=arm_pe_le_vec 328 targ_selvecs="arm_pe_le_vec arm_pe_be_vec arm_pei_le_vec arm_pei_be_vec" 329 targ_underscore=yes 330 ;; 331 arm-*-aout | armel-*-aout) 332 targ_defvec=arm_aout_le_vec 333 targ_selvecs=arm_aout_be_vec 334 ;; 335 armeb-*-aout) 336 targ_defvec=arm_aout_be_vec 337 targ_selvecs=arm_aout_le_vec 338 ;; 339 arm-*-coff) 340 targ_defvec=arm_coff_le_vec 341 targ_selvecs=arm_coff_be_vec 342 targ_underscore=yes 343 ;; 344 arm-*-rtems*) 345 targ_defvec=arm_elf32_le_vec 346 targ_selvecs=arm_elf32_be_vec 347 ;; 348 armeb-*-elf | arm*b-*-freebsd* | arm*b-*-linux-* | armeb-*-eabi*) 349 targ_defvec=arm_elf32_be_vec 350 targ_selvecs=arm_elf32_le_vec 351 ;; 352 arm-*-kaos*) 353 targ_defvec=arm_elf32_le_vec 354 targ_selvecs=arm_elf32_be_vec 355 ;; 356 arm-*-elf | arm*-*-freebsd* | arm*-*-linux-* | arm*-*-conix* | \ 357 arm*-*-uclinux* | arm-*-kfreebsd*-gnu | \ 358 arm*-*-eabi* ) 359 targ_defvec=arm_elf32_le_vec 360 targ_selvecs=arm_elf32_be_vec 361 ;; 362 arm*-*-vxworks | arm*-*-windiss) 363 targ_defvec=arm_elf32_vxworks_le_vec 364 targ_selvecs=arm_elf32_vxworks_be_vec 365 ;; 366 arm*-*-symbianelf*) 367 targ_defvec=arm_elf32_symbian_le_vec 368 targ_selvecs=arm_elf32_symbian_be_vec 369 ;; 370 arm9e-*-elf) 371 targ_defvec=arm_elf32_le_vec 372 targ_selvecs=arm_elf32_be_vec 373 ;; 374 375 avr-*-*) 376 targ_defvec=avr_elf32_vec 377 ;; 378 379 bfin-*-*) 380 targ_defvec=bfin_elf32_vec 381 targ_selvecs=bfin_elf32_fdpic_vec 382 targ_underscore=yes 383 ;; 384 385 c30-*-*aout* | tic30-*-*aout*) 386 targ_defvec=tic30_aout_vec 387 ;; 388 c30-*-*coff* | tic30-*-*coff*) 389 targ_defvec=tic30_coff_vec 390 ;; 391 392 c4x-*-*coff* | tic4x-*-*coff* | tic4x-*-rtems*) 393 targ_defvec=tic4x_coff1_vec 394 targ_selvecs="tic4x_coff1_beh_vec tic4x_coff2_vec tic4x_coff2_beh_vec tic4x_coff0_vec tic4x_coff0_beh_vec" 395 targ_underscore=yes 396 ;; 397 398 c54x*-*-*coff* | tic54x-*-*coff*) 399 targ_defvec=tic54x_coff1_vec 400 targ_selvecs="tic54x_coff1_beh_vec tic54x_coff2_vec tic54x_coff2_beh_vec tic54x_coff0_vec tic54x_coff0_beh_vec" 401 targ_underscore=yes 402 ;; 403 404 cr16-*-elf* | cr16*-*-uclinux*) 405 targ_defvec=cr16_elf32_vec 406 targ_underscore=yes 407 ;; 408 409 cr16c-*-elf*) 410 targ_defvec=cr16c_elf32_vec 411 targ_underscore=yes 412 ;; 413 414 cris-*-* | crisv32-*-*) 415 targ_defvec=cris_aout_vec 416 targ_selvecs="cris_elf32_us_vec cris_elf32_vec ieee_vec" 417 targ_underscore=yes # Note: not true for cris_elf32_vec. 418 ;; 419 420 crx-*-elf*) 421 targ_defvec=crx_elf32_vec 422 targ_underscore=yes 423 ;; 424 425 d10v-*-*) 426 targ_defvec=d10v_elf32_vec 427 ;; 428 429 dlx-*-elf*) 430 targ_defvec=dlx_elf32_be_vec 431 targ_selvecs="dlx_elf32_be_vec" 432 ;; 433 434 d30v-*-*) 435 targ_defvec=d30v_elf32_vec 436 ;; 437 438 epiphany-*-elf) 439 targ_defvec=epiphany_elf32_vec 440 ;; 441 442 fido-*-elf* ) 443 targ_defvec=m68k_elf32_vec 444 targ_selvecs="m68k_coff_vec ieee_vec" 445 ;; 446 447 fr30-*-elf) 448 targ_defvec=fr30_elf32_vec 449 ;; 450 451 frv-*-elf) 452 targ_defvec=frv_elf32_vec 453 targ_selvecs=frv_elf32_fdpic_vec 454 ;; 455 456 frv-*-*linux*) 457 targ_defvec=frv_elf32_fdpic_vec 458 targ_selvecs=frv_elf32_vec 459 ;; 460 461 moxie-*-elf | moxie-*-rtems* | moxie-*-uclinux) 462 targ_defvec=moxie_elf32_be_vec 463 targ_selvecs=moxie_elf32_le_vec 464 ;; 465 466 moxie-*-moxiebox*) 467 targ_defvec=moxie_elf32_le_vec 468 ;; 469 470 h8300*-*-rtemscoff*) 471 targ_defvec=h8300_coff_vec 472 targ_underscore=yes 473 ;; 474 475 h8300*-*-elf | h8300*-*-rtems*) 476 targ_defvec=h8300_elf32_vec 477 targ_underscore=yes 478 ;; 479 480 h8300*-*-linux*) 481 targ_defvec=h8300_elf32_linux_vec 482 ;; 483 484 h8300*-*-*) 485 targ_defvec=h8300_coff_vec 486 targ_underscore=yes 487 ;; 488 489 h8500-*-*) 490 targ_defvec=h8500_coff_vec 491 targ_underscore=yes 492 ;; 493 494#ifdef BFD64 495 hppa*64*-*-linux-*) 496 targ_defvec=hppa_elf64_linux_vec 497 targ_selvecs=hppa_elf64_vec 498 want64=true 499 ;; 500 hppa*64*-*-hpux11*) 501 targ_defvec=hppa_elf64_vec 502 targ_selvecs=hppa_elf64_linux_vec 503 targ_cflags=-DHPUX_LARGE_AR_IDS 504 want64=true 505 ;; 506#endif 507 508 hppa*-*-linux-*) 509 targ_defvec=hppa_elf32_linux_vec 510 targ_selvecs=hppa_elf32_vec 511 ;; 512 hppa*-*-netbsd*) 513 targ_defvec=hppa_elf32_nbsd_vec 514 targ_selvecs="hppa_elf32_vec hppa_elf32_linux_vec" 515 ;; 516 hppa*-*-*elf* | hppa*-*-lites* | hppa*-*-sysv4* | hppa*-*-openbsd*) 517 targ_defvec=hppa_elf32_vec 518 targ_selvecs=hppa_elf32_linux_vec 519 ;; 520 521 hppa*-*-bsd*) 522 targ_defvec=hppa_som_vec 523 targ_selvecs=hppa_elf32_vec 524 ;; 525 hppa*-*-hpux* | hppa*-*-hiux* | hppa*-*-mpeix*) 526 targ_defvec=hppa_som_vec 527 ;; 528 hppa*-*-osf*) 529 targ_defvec=hppa_som_vec 530 targ_selvecs=hppa_elf32_vec 531 ;; 532 533 i370-*-*) 534 targ_defvec=i370_elf32_vec 535 targ_selvecs="i370_elf32_vec" 536 ;; 537 i[3-7]86-*-sco3.2v5*coff) 538 targ_defvec=i386_coff_vec 539 targ_selvecs=i386_elf32_vec 540 ;; 541 i[3-7]86-*-sysv4* | i[3-7]86-*-unixware* | \ 542 i[3-7]86-*-elf* | i[3-7]86-*-sco3.2v5* | \ 543 i[3-7]86-*-dgux* | i[3-7]86-*-sysv5*) 544 targ_defvec=i386_elf32_vec 545 targ_selvecs="iamcu_elf32_vec i386_coff_vec" 546 ;; 547 i[3-7]86-*-solaris2*) 548 targ_defvec=i386_elf32_sol2_vec 549 targ_selvecs="i386_coff_vec" 550 targ64_selvecs="x86_64_elf64_sol2_vec l1om_elf64_vec k1om_elf64_vec" 551 want64=true 552 ;; 553#ifdef BFD64 554 x86_64-*-solaris2*) 555 targ_defvec=i386_elf32_sol2_vec 556 targ_selvecs="x86_64_elf64_sol2_vec l1om_elf64_vec k1om_elf64_vec i386_coff_vec" 557 want64=true 558 ;; 559#endif 560 i[3-7]86-*-kaos*) 561 targ_defvec=i386_elf32_vec 562 targ_selvecs=i386_elf32_vec 563 ;; 564 i[3-7]86-*-nto*) 565 targ_defvec=i386_elf32_vec 566 targ_selvecs="iamcu_elf32_vec i386_coff_vec" 567 ;; 568 i[3-7]86-*-aros*) 569 targ_defvec=i386_elf32_vec 570 targ_selvecs=iamcu_elf32_vec 571 ;; 572 i[3-7]86-*-chorus*) 573 targ_defvec=i386_elf32_vec 574 targ_selvecs=iamcu_elf32_vec 575 ;; 576 i[3-7]86-*-dicos*) 577 targ_defvec=i386_elf32_vec 578 targ_selvecs=iamcu_elf32_vec 579 targ64_selvecs="x86_64_elf64_vec l1om_elf64_vec k1om_elf64_vec" 580 ;; 581 *-*-msdosdjgpp* | *-*-go32* ) 582 targ_defvec=i386_coff_go32_vec 583 targ_selvecs="i386_coff_go32stubbed_vec i386_aout_vec" 584 ;; 585 i[3-7]86-*-sysv* | i[3-7]86-*-isc* | i[3-7]86-*-sco* | i[3-7]86-*-coff | \ 586 i[3-7]86-*-aix*) 587 targ_defvec=i386_coff_vec 588 ;; 589 i[3-7]86-*-rtems*) 590 targ_defvec=i386_elf32_vec 591 targ_selvecs="iamcu_elf32_vec i386_coff_vec i386_aout_vec" 592 ;; 593 i[3-7]86-*-darwin* | i[3-7]86-*-macos10* | i[3-7]86-*-rhapsody*) 594 targ_defvec=i386_mach_o_vec 595 targ_selvecs="mach_o_le_vec mach_o_be_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec" 596 targ64_selvecs=x86_64_mach_o_vec 597 targ_archs="$targ_archs bfd_powerpc_arch bfd_rs6000_arch" 598 ;; 599 i[3-7]86-sequent-bsd*) 600 targ_defvec=i386_aout_dynix_vec 601 targ_underscore=yes 602 ;; 603 i[3-7]86-*-bsd*) 604 targ_defvec=i386_aout_bsd_vec 605 targ_underscore=yes 606 ;; 607 i[3-7]86-*-dragonfly*) 608 targ_defvec=i386_elf32_vec 609 targ_selvecs=iamcu_elf32_vec 610 targ64_selvecs="x86_64_elf64_vec l1om_elf64_vec k1om_elf64_vec" 611 ;; 612 i[3-7]86-*-freebsdaout* | i[3-7]86-*-freebsd[12].* | \ 613 i[3-7]86-*-freebsd[12]) 614 targ_defvec=i386_aout_fbsd_vec 615 targ_selvecs=i386_aout_bsd_vec 616 targ_underscore=yes 617 ;; 618 i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu) 619 targ_defvec=i386_elf32_fbsd_vec 620 targ_selvecs="i386_elf32_vec iamcu_elf32_vec i386_pei_vec i386_coff_vec" 621 targ64_selvecs="x86_64_elf64_fbsd_vec x86_64_elf64_vec x86_64_pei_vec l1om_elf64_vec l1om_elf64_fbsd_vec k1om_elf64_vec k1om_elf64_fbsd_vec" 622 # FreeBSD <= 4.0 supports only the old nonstandard way of ABI labelling. 623 case "${targ}" in 624 i[3-7]86-*-freebsd3* | i[3-7]86-*-freebsd4 | i[3-7]86-*-freebsd4.0*) 625 targ_cflags=-DOLD_FREEBSD_ABI_LABEL ;; 626 esac 627 ;; 628 i[3-7]86-*-netbsdelf* | i[3-7]86-*-netbsd*-gnu* | i[3-7]86-*-knetbsd*-gnu) 629 targ_defvec=i386_elf32_vec 630 targ_selvecs="i386_aout_nbsd_vec iamcu_elf32_vec" 631 targ64_selvecs="x86_64_elf64_vec l1om_elf64_vec k1om_elf64_vec" 632 ;; 633 i[3-7]86-*-netbsdpe*) 634 targ_defvec=i386_pe_vec 635 targ_selvecs="i386_pe_vec i386_pei_vec i386_elf32_vec iamcu_elf32_vec" 636 ;; 637 i[3-7]86-*-netbsdaout* | i[3-7]86-*-netbsd* | \ 638 i[3-7]86-*-openbsd[0-2].* | i[3-7]86-*-openbsd3.[0-3]) 639 targ_defvec=i386_aout_nbsd_vec 640 targ_selvecs="i386_elf32_vec iamcu_elf32_vec i386_aout_bsd_vec" 641 targ_underscore=yes 642 ;; 643 i[3-7]86-*-openbsd*) 644 targ_defvec=i386_elf32_vec 645 targ_selvecs="iamcu_elf32_vec i386_aout_nbsd_vec" 646 ;; 647 i[3-7]86-*-netware*) 648 targ_defvec=i386_elf32_vec 649 targ_selvecs="iamcu_elf32_vec i386_nlm32_vec i386_coff_vec i386_aout_vec" 650 ;; 651 i[3-7]86-*-linux*aout*) 652 targ_defvec=i386_aout_linux_vec 653 targ_selvecs="i386_elf32_vec iamcu_elf32_vec" 654 targ_underscore=yes 655 ;; 656 i[3-7]86-*-linux-*) 657 targ_defvec=i386_elf32_vec 658 targ_selvecs="iamcu_elf32_vec i386_aout_linux_vec i386_pei_vec" 659 targ64_selvecs="x86_64_elf64_vec x86_64_elf32_vec x86_64_pei_vec l1om_elf64_vec k1om_elf64_vec" 660 ;; 661 i[3-7]86-*-nacl*) 662 targ_defvec=i386_elf32_nacl_vec 663 targ_selvecs="arm_elf32_nacl_be_vec arm_elf32_nacl_le_vec" 664 targ64_selvecs="x86_64_elf64_nacl_vec x86_64_elf32_nacl_vec" 665 targ_archs="$targ_archs bfd_arm_arch" 666 ;; 667#ifdef BFD64 668 x86_64-*-cloudabi*) 669 targ_defvec=x86_64_elf64_cloudabi_vec 670 want64=true 671 ;; 672 x86_64-*-darwin*) 673 targ_defvec=x86_64_mach_o_vec 674 targ_selvecs="i386_mach_o_vec mach_o_le_vec mach_o_be_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec" 675 targ_archs="$targ_archs bfd_powerpc_arch bfd_rs6000_arch" 676 want64=true 677 ;; 678 x86_64-*-dicos*) 679 targ_defvec=x86_64_elf64_vec 680 targ_selvecs="i386_elf32_vec iamcu_elf32_vec l1om_elf64_vec k1om_elf64_vec" 681 want64=true 682 ;; 683 x86_64-*-elf*) 684 targ_defvec=x86_64_elf64_vec 685 targ_selvecs="i386_elf32_vec iamcu_elf32_vec x86_64_elf32_vec l1om_elf64_vec k1om_elf64_vec" 686 want64=true 687 ;; 688 x86_64-*-dragonfly*) 689 targ_defvec=x86_64_elf64_vec 690 targ_selvecs="i386_elf32_vec iamcu_elf32_vec l1om_elf64_vec k1om_elf64_vec" 691 want64=true 692 ;; 693 x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu) 694 targ_defvec=x86_64_elf64_fbsd_vec 695 targ_selvecs="i386_elf32_fbsd_vec iamcu_elf32_vec i386_coff_vec i386_pei_vec x86_64_pei_vec i386_elf32_vec x86_64_elf64_vec l1om_elf64_vec l1om_elf64_fbsd_vec k1om_elf64_vec k1om_elf64_fbsd_vec" 696 want64=true 697 ;; 698 x86_64-*-netbsd* | x86_64-*-openbsd*) 699 targ_defvec=x86_64_elf64_vec 700 targ_selvecs="i386_elf32_vec iamcu_elf32_vec i386_aout_nbsd_vec i386_coff_vec i386_pei_vec x86_64_pei_vec l1om_elf64_vec k1om_elf64_vec" 701 want64=true 702 ;; 703 x86_64-*-linux-*) 704 targ_defvec=x86_64_elf64_vec 705 targ_selvecs="i386_elf32_vec iamcu_elf32_vec x86_64_elf32_vec i386_aout_linux_vec i386_pei_vec x86_64_pei_vec l1om_elf64_vec k1om_elf64_vec" 706 want64=true 707 ;; 708 x86_64-*-nacl*) 709 targ_defvec=x86_64_elf32_nacl_vec 710 targ_selvecs="i386_elf32_nacl_vec x86_64_elf64_nacl_vec arm_elf32_nacl_be_vec arm_elf32_nacl_le_vec" 711 targ_archs="$targ_archs bfd_arm_arch" 712 want64=true 713 ;; 714 x86_64-*-mingw* | x86_64-*-pe | x86_64-*-pep | x86_64-*-cygwin) 715 targ_defvec=x86_64_pe_vec 716 targ_selvecs="x86_64_pe_vec x86_64_pei_vec x86_64_pe_be_vec x86_64_elf64_vec l1om_elf64_vec k1om_elf64_vec i386_pe_vec i386_pei_vec i386_elf32_vec iamcu_elf32_vec" 717 want64=true 718 targ_underscore=no 719 ;; 720 x86_64-*-rdos*) 721 targ_defvec=x86_64_elf64_vec 722 want64=true 723 ;; 724#endif 725 i[3-7]86-*-lynxos*) 726 targ_defvec=i386_elf32_vec 727 targ_selvecs="iamcu_elf32_vec i386_coff_lynx_vec i386_aout_lynx_vec" 728 ;; 729 i[3-7]86-*-gnu*) 730 targ_defvec=i386_elf32_vec 731 targ_selvecs=iamcu_elf32_vec 732 ;; 733 i[3-7]86-*-mach* | i[3-7]86-*-osf1mk*) 734 targ_defvec=i386_aout_mach3_vec 735 targ_cflags=-DSTAT_FOR_EXEC 736 targ_underscore=yes 737 ;; 738 i[3-7]86-*-os9k) 739 targ_defvec=i386_aout_os9k_vec 740 ;; 741 i[3-7]86-*-msdos*) 742 targ_defvec=i386_aout_vec 743 targ_selvecs=i386_msdos_vec 744 ;; 745 i[3-7]86-*-moss*) 746 targ_defvec=i386_elf32_vec 747 targ_selvecs="iamcu_elf32_vec i386_msdos_vec i386_aout_vec" 748 ;; 749 i[3-7]86-*-beospe*) 750 targ_defvec=i386_pe_vec 751 targ_selvecs="i386_pe_vec i386_pei_vec" 752 ;; 753 i[3-7]86-*-beoself* | i[3-7]86-*-beos*) 754 targ_defvec=i386_elf32_vec 755 targ_selvecs="iamcu_elf32_vec i386_pe_vec i386_pei_vec" 756 ;; 757 i[3-7]86-*-interix*) 758 targ_defvec=i386_pei_vec 759 targ_selvecs="i386_pe_vec" 760 # FIXME: This should eventually be checked at runtime. 761 targ_cflags=-DSTRICT_PE_FORMAT 762 ;; 763 i[3-7]86-*-rdos*) 764 targ_defvec=i386_elf32_vec 765 targ_selvecs="iamcu_elf32_vec i386_coff_vec" 766 ;; 767 i[3-7]86-*-mingw32* | i[3-7]86-*-cygwin* | i[3-7]86-*-winnt | i[3-7]86-*-pe) 768 targ_defvec=i386_pe_vec 769 targ_selvecs="i386_pe_vec i386_pei_vec i386_elf32_vec iamcu_elf32_vec" 770 targ_underscore=yes 771 ;; 772 i[3-7]86-none-*) 773 targ_defvec=i386_coff_vec 774 ;; 775 i[3-7]86-*-aout* | i[3-7]86*-*-vsta*) 776 targ_defvec=i386_aout_vec 777 ;; 778 i[3-7]86-*-vxworks*) 779 targ_defvec=i386_elf32_vxworks_vec 780 targ_underscore=yes 781 ;; 782 i[3-7]86-*-chaos) 783 targ_defvec=i386_elf32_vec 784 targ_selfvecs="iamcu_elf32_vec i386chaos_vec" 785 ;; 786 787 i860-*-mach3* | i860-*-osf1* | i860-*-coff*) 788 targ_defvec=i860_coff_vec 789 ;; 790 i860-stardent-sysv4* | i860-stardent-elf*) 791 targ_defvec=i860_elf32_le_vec 792 targ_selvecs="i860_elf32_vec i860_elf32_le_vec" 793 ;; 794 i860-*-sysv4* | i860-*-elf*) 795 targ_defvec=i860_elf32_vec 796 ;; 797 798 i960-*-vxworks4* | i960-*-vxworks5.0) 799 targ_defvec=bout_le_vec 800 targ_selvecs="bout_be_vec icoff_le_vec icoff_be_vec ieee_vec" 801 targ_underscore=yes 802 ;; 803 i960-*-vxworks5.* | i960-*-coff* | i960-*-sysv*) 804 targ_defvec=icoff_le_vec 805 targ_selvecs="icoff_be_vec bout_le_vec bout_be_vec ieee_vec" 806 targ_underscore=yes 807 ;; 808 i960-*-vxworks* | i960-*-aout* | i960-*-bout* | i960-*-nindy*) 809 targ_defvec=bout_le_vec 810 targ_selvecs="bout_be_vec icoff_le_vec icoff_be_vec ieee_vec" 811 targ_underscore=yes 812 ;; 813 i960-*-elf*) 814 targ_defvec=i960_elf32_vec 815 targ_selvecs="icoff_le_vec icoff_be_vec" 816 ;; 817 818 ip2k-*-elf) 819 targ_defvec=ip2k_elf32_vec 820 ;; 821 822 iq2000-*-elf) 823 targ_defvec=iq2000_elf32_vec 824 ;; 825 826 lm32-*-elf | lm32-*-rtems*) 827 targ_defvec=lm32_elf32_vec 828 targ_selvecs=lm32_elf32_fdpic_vec 829 ;; 830 831 lm32-*-*linux*) 832 targ_defvec=lm32_elf32_fdpic_vec 833 targ_selvecs=lm32_elf32_vec 834 ;; 835 836 m32c-*-elf | m32c-*-rtems*) 837 targ_defvec=m32c_elf32_vec 838 ;; 839 840 m32r*le-*-linux*) 841 targ_defvec=m32r_elf32_linux_le_vec 842 targ_selvecs="m32r_elf32_linux_vec m32r_elf32_linux_le_vec" 843 ;; 844 m32r*-*-linux*) 845 targ_defvec=m32r_elf32_linux_vec 846 targ_selvecs="m32r_elf32_linux_vec m32r_elf32_linux_le_vec" 847 ;; 848 m32r*le-*-*) 849 targ_defvec=m32r_elf32_le_vec 850 targ_selvecs="m32r_elf32_vec m32r_elf32_le_vec" 851 ;; 852 m32r-*-*) 853 targ_defvec=m32r_elf32_vec 854 ;; 855 856 m68hc11-*-* | m6811-*-*) 857 targ_defvec=m68hc11_elf32_vec 858 targ_selvecs="m68hc11_elf32_vec m68hc12_elf32_vec" 859 ;; 860 m68hc12-*-* | m6812-*-*) 861 targ_defvec=m68hc12_elf32_vec 862 targ_selvecs="m68hc11_elf32_vec m68hc12_elf32_vec" 863 ;; 864 865 m68*-motorola-sysv*) 866 targ_defvec=m68k_coff_sysv_vec 867 ;; 868 m68*-hp-bsd*) 869 targ_defvec=m68k_aout_hp300bsd_vec 870 targ_underscore=yes 871 ;; 872 m68*-*-aout*) 873 targ_defvec=aout0_be_vec 874 # We include core_cisco_be_vec here, rather than making a separate cisco 875 # configuration, so that cisco-core.c gets routinely tested at 876 # least for compilation. 877 targ_selvecs="core_cisco_be_vec ieee_vec" 878 targ_underscore=yes 879 ;; 880 m68*-*-elf* | m68*-*-sysv4* | m68*-*-uclinux*) 881 targ_defvec=m68k_elf32_vec 882 targ_selvecs="m68k_coff_vec ieee_vec" 883 ;; 884 m68*-*-rtems*) 885 targ_defvec=m68k_elf32_vec 886 targ_selvecs="m68k_coff_vec m68k_versados_vec ieee_vec aout0_be_vec" 887 ;; 888 m68*-*-coff* | m68*-*-sysv*) 889 targ_defvec=m68k_coff_vec 890 targ_selvecs="m68k_coff_vec m68k_versados_vec ieee_vec" 891 ;; 892 m68*-*-hpux*) 893 targ_defvec=m68k_aout_hp300hpux_vec 894 targ_underscore=yes 895 ;; 896 m68*-*-linux*aout*) 897 targ_defvec=m68k_aout_linux_vec 898 targ_selvecs=m68k_elf32_vec 899 targ_underscore=yes 900 ;; 901 m68*-*-linux-*) 902 targ_defvec=m68k_elf32_vec 903 targ_selvecs=m68k_aout_linux_vec 904 ;; 905 m68*-*-gnu*) 906 targ_defvec=m68k_elf32_vec 907 # targ_selvecs=m68kmach3_vec 908 # targ_cflags=-DSTAT_FOR_EXEC 909 ;; 910 m68*-hp*-netbsd*) 911 targ_defvec=m68k_aout_4knbsd_vec 912 targ_selvecs="m68k_aout_nbsd_vec m68k_aout_hp300bsd_vec sparc_aout_sunos_be_vec" 913 targ_underscore=yes 914 ;; 915 m68*-*-netbsdelf* | m5407-*-netbsdelf*) 916 targ_defvec=m68k_elf32_vec 917 targ_selvecs="m68k_aout_nbsd_vec m68k_aout_4knbsd_vec m68k_aout_hp300bsd_vec sparc_aout_sunos_be_vec" 918 ;; 919 m68*-*-netbsdaout* | m68*-*-netbsd*) 920 targ_defvec=m68k_aout_nbsd_vec 921 targ_selvecs="m68k_aout_4knbsd_vec m68k_elf32_vec m68k_aout_hp300bsd_vec sparc_aout_sunos_be_vec" 922 targ_underscore=yes 923 ;; 924 m68*-*-openbsd*) 925 targ_defvec=m68k_aout_nbsd_vec 926 targ_selvecs="m68k_aout_4knbsd_vec m68k_aout_hp300bsd_vec sparc_aout_sunos_be_vec" 927 targ_underscore=yes 928 ;; 929 m68*-*-sunos* | m68*-*-os68k* | m68*-*-vxworks* | m68*-netx-* | \ 930 m68*-*-bsd* | m68*-*-vsta*) 931 targ_defvec=sparc_aout_sunos_be_vec 932 targ_underscore=yes 933 ;; 934 m68*-ericsson-*) 935 targ_defvec=sparc_aout_sunos_be_vec 936 targ_selvecs="m68k_coff_vec m68k_versados_vec tekhex_vec" 937 targ_underscore=yes 938 ;; 939 m68*-cbm-*) 940 targ_defvec=m68k_elf32_vec 941 targ_selvecs=m68k_coff_vec 942 ;; 943 m68*-*-psos*) 944 targ_defvec=m68k_elf32_vec 945 targ_selvecs=ieee_vec 946 targ_underscore=yes 947 ;; 948 949 m88*-harris-cxux* | m88*-*-dgux* | m88*-*-sysv4*) 950 targ_defvec=m88k_elf32_vec 951 targ_selvecs=m88k_coff_bcs_vec 952 ;; 953 m88*-*-mach3*) 954 targ_defvec=m88k_aout_mach3_vec 955 targ_cflags=-DSTAT_FOR_EXEC 956 ;; 957 m88*-*-openbsd*) 958 targ_defvec=m88k_aout_obsd_vec 959 targ_underscore=yes 960 ;; 961 m88*-*-*) 962 targ_defvec=m88k_coff_bcs_vec 963 targ_underscore=yes 964 ;; 965 966 mcore-*-elf) 967 targ_defvec=mcore_elf32_be_vec 968 targ_selvecs="mcore_elf32_be_vec mcore_elf32_le_vec" 969 ;; 970 mcore-*-pe) 971 targ_defvec=mcore_pe_be_vec 972 targ_selvecs="mcore_pe_be_vec mcore_pe_le_vec mcore_pei_be_vec mcore_pei_le_vec" 973 ;; 974 975 mep-*-elf) 976 targ_defvec=mep_elf32_vec 977 targ_selvecs=mep_elf32_le_vec 978 ;; 979 980 metag-*-*) 981 targ_defvec=metag_elf32_vec 982 targ_underscore=yes 983 ;; 984 985 microblazeel*-*) 986 targ_defvec=microblaze_elf32_le_vec 987 targ_selvecs=microblaze_elf32_vec 988 ;; 989 990 microblaze*-*) 991 targ_defvec=microblaze_elf32_vec 992 targ_selvecs=microblaze_elf32_le_vec 993 ;; 994 995 mips*-big-*) 996 targ_defvec=mips_ecoff_be_vec 997 targ_selvecs=mips_ecoff_le_vec 998 ;; 999 1000 mips*-dec-* | mips*el-*-ecoff*) 1001 targ_defvec=mips_ecoff_le_vec 1002 targ_selvecs=mips_ecoff_be_vec 1003 ;; 1004 mips*-*-ecoff*) 1005 targ_defvec=mips_ecoff_be_vec 1006 targ_selvecs=mips_ecoff_le_vec 1007 ;; 1008#ifdef BFD64 1009 mips*-*-irix6*) 1010 targ_defvec=mips_elf32_n_be_vec 1011 targ_selvecs="mips_elf32_n_le_vec mips_elf32_be_vec mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec" 1012 ;; 1013 mips64*-ps2-elf*) 1014 targ_defvec=mips_elf32_n_le_vec 1015 targ_selvecs="mips_elf32_n_le_vec mips_elf32_n_be_vec mips_elf32_be_vec mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec" 1016 ;; 1017 mips*-ps2-elf*) 1018 targ_defvec=mips_elf32_le_vec 1019 targ_selvecs="mips_elf32_be_vec mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec" 1020 ;; 1021 mips*-*-irix5*) 1022 targ_defvec=mips_elf32_be_vec 1023 targ_selvecs="mips_elf32_le_vec mips_ecoff_be_vec mips_ecoff_le_vec" 1024 ;; 1025#endif 1026 mips*-sgi-* | mips*-*-bsd*) 1027 targ_defvec=mips_ecoff_be_vec 1028 targ_selvecs=mips_ecoff_le_vec 1029 ;; 1030 mips*-*-lnews*) 1031 targ_defvec=mips_ecoff_bele_vec 1032 targ_selvecs="mips_ecoff_le_vec mips_ecoff_be_vec" 1033 ;; 1034#ifdef BFD64 1035 mips*-*-sysv4*) 1036 targ_defvec=mips_elf32_trad_be_vec 1037 targ_selvecs="mips_elf32_trad_le_vec mips_ecoff_be_vec mips_ecoff_le_vec" 1038 ;; 1039#endif 1040 mips*-*-sysv* | mips*-*-riscos*) 1041 targ_defvec=mips_ecoff_be_vec 1042 targ_selvecs=mips_ecoff_le_vec 1043 ;; 1044#ifdef BFD64 1045 mips*el-*-vxworks*) 1046 targ_defvec=mips_elf32_vxworks_le_vec 1047 targ_selvecs="mips_elf32_le_vec mips_elf32_vxworks_be_vec mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec" 1048 ;; 1049 mips*-*-vxworks*) 1050 targ_defvec=mips_elf32_vxworks_be_vec 1051 targ_selvecs="mips_elf32_be_vec mips_elf32_vxworks_le_vec mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec" 1052 ;; 1053 mips*el-sde-elf*) 1054 targ_defvec=mips_elf32_trad_le_vec 1055 targ_selvecs="mips_elf32_trad_be_vec mips_elf32_ntrad_be_vec mips_elf32_ntrad_le_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec" 1056 ;; 1057 mips*-sde-elf* | mips*-mti-elf* | mips*-img-elf*) 1058 targ_defvec=mips_elf32_trad_be_vec 1059 targ_selvecs="mips_elf32_trad_le_vec mips_elf32_ntrad_be_vec mips_elf32_ntrad_le_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec" 1060 ;; 1061 mips*el-*-elf* | mips*el-*-vxworks* | mips*-*-chorus*) 1062 targ_defvec=mips_elf32_le_vec 1063 targ_selvecs="mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec" 1064 ;; 1065 mips*-*-elf* | mips*-*-rtems* | mips*-*-vxworks | mips*-*-windiss) 1066 targ_defvec=mips_elf32_be_vec 1067 targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec" 1068 ;; 1069 mips*-*-none) 1070 targ_defvec=mips_elf32_be_vec 1071 targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec" 1072 ;; 1073 mips64*el-*-netbsd*) 1074 targ_defvec=mips_elf32_ntrad_le_vec 1075 targ_selvecs="mips_elf32_ntrad_be_vec mips_elf32_trad_le_vec mips_elf32_trad_be_vec mips_elf64_trad_le_vec mips_elf64_trad_be_vec" 1076 ;; 1077 mips64*-*-netbsd*) 1078 targ_defvec=mips_elf32_ntrad_be_vec 1079 targ_selvecs="mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec" 1080 ;; 1081 mips*el-*-netbsd*) 1082 targ_defvec=mips_elf32_trad_le_vec 1083 targ_selvecs="mips_elf32_trad_be_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec mips_ecoff_le_vec mips_ecoff_be_vec" 1084 ;; 1085 mips*-*-netbsd*) 1086 targ_defvec=mips_elf32_trad_be_vec 1087 targ_selvecs="mips_elf32_trad_le_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec mips_ecoff_be_vec mips_ecoff_le_vec" 1088 ;; 1089 mips64*-*-openbsd*) 1090 targ_defvec=mips_elf64_trad_be_vec 1091 targ_selvecs="mips_elf32_ntrad_le_vec mips_elf32_ntrad_be_vec mips_elf32_trad_le_vec mips_elf32_trad_be_vec mips_elf64_trad_le_vec" 1092 ;; 1093 mips*el-*-openbsd*) 1094 targ_defvec=mips_elf32_le_vec 1095 targ_selvecs="mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_le_vec mips_ecoff_be_vec" 1096 ;; 1097 mips*-*-openbsd*) 1098 targ_defvec=mips_elf32_be_vec 1099 targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_be_vec mips_ecoff_le_vec" 1100 ;; 1101 mips64*el-*-linux*) 1102 targ_defvec=mips_elf32_ntrad_le_vec 1103 targ_selvecs="mips_elf32_ntrad_be_vec mips_elf32_trad_le_vec mips_elf32_trad_be_vec mips_elf64_trad_le_vec mips_elf64_trad_be_vec" 1104 ;; 1105 mips64*-*-linux*) 1106 targ_defvec=mips_elf32_ntrad_be_vec 1107 targ_selvecs="mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec" 1108 ;; 1109 mips*el-*-linux*) 1110 targ_defvec=mips_elf32_trad_le_vec 1111 targ_selvecs="mips_elf32_trad_be_vec mips_ecoff_le_vec mips_ecoff_be_vec mips_elf32_ntrad_le_vec mips_elf64_trad_le_vec mips_elf32_ntrad_be_vec mips_elf64_trad_be_vec" 1112 ;; 1113 mips*-*-linux*) 1114 targ_defvec=mips_elf32_trad_be_vec 1115 targ_selvecs="mips_elf32_trad_le_vec mips_ecoff_be_vec mips_ecoff_le_vec mips_elf32_ntrad_be_vec mips_elf64_trad_be_vec mips_elf32_ntrad_le_vec mips_elf64_trad_le_vec" 1116 ;; 1117 mips64*el-*-freebsd* | mips64*el-*-kfreebsd*-gnu) 1118 # FreeBSD vectors 1119 targ_defvec=mips_elf32_ntradfbsd_le_vec 1120 targ_selvecs="mips_elf32_ntradfbsd_be_vec mips_elf32_tradfbsd_le_vec mips_elf32_tradfbsd_be_vec mips_elf64_tradfbsd_le_vec mips_elf64_tradfbsd_be_vec" 1121 # Generic vectors 1122 targ_selvecs="${targ_selvecs} mips_elf32_ntrad_le_vec mips_elf32_ntrad_be_vec mips_elf32_trad_le_vec mips_elf32_trad_be_vec mips_elf64_trad_le_vec mips_elf64_trad_be_vec" 1123 ;; 1124 mips64*-*-freebsd* | mips64*-*-kfreebsd*-gnu) 1125 # FreeBSD vectors 1126 targ_defvec=mips_elf32_ntradfbsd_be_vec 1127 targ_selvecs="mips_elf32_ntradfbsd_le_vec mips_elf32_tradfbsd_be_vec mips_elf32_tradfbsd_le_vec mips_elf64_tradfbsd_be_vec mips_elf64_tradfbsd_le_vec" 1128 # Generic vectors 1129 targ_selvecs="${targ_selvecs} mips_elf32_ntrad_be_vec mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec" 1130 ;; 1131 mips*el-*-freebsd* | mips*el-*-kfreebsd*-gnu) 1132 # FreeBSD vectors 1133 targ_defvec=mips_elf32_tradfbsd_le_vec 1134 targ_selvecs="mips_elf32_tradfbsd_be_vec mips_elf32_ntradfbsd_le_vec mips_elf64_tradfbsd_le_vec mips_elf32_ntradfbsd_be_vec mips_elf64_tradfbsd_be_vec" 1135 # Generic vectors 1136 targ_selvecs="${targ_selvecs} mips_elf32_trad_le_vec mips_elf32_trad_be_vec mips_elf32_ntrad_le_vec mips_elf64_trad_le_vec mips_elf32_ntrad_be_vec mips_elf64_trad_be_vec" 1137 ;; 1138 mips*-*-freebsd* | mips*-*-kfreebsd*-gnu) 1139 # FreeBSD vectors 1140 targ_defvec=mips_elf32_tradfbsd_be_vec 1141 targ_selvecs="mips_elf32_tradfbsd_le_vec mips_elf32_ntradfbsd_be_vec mips_elf64_tradfbsd_be_vec mips_elf32_ntradfbsd_le_vec mips_elf64_tradfbsd_le_vec" 1142 # Generic vectors 1143 targ_selvecs="${targ_selvecs} mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf32_ntrad_be_vec mips_elf64_trad_be_vec mips_elf32_ntrad_le_vec mips_elf64_trad_le_vec" 1144 ;; 1145 mmix-*-*) 1146 targ_defvec=mmix_elf64_vec 1147 targ_selvecs=mmix_mmo_vec 1148 want64=true 1149 ;; 1150#endif 1151 mn10200-*-*) 1152 targ_defvec=mn10200_elf32_vec 1153 ;; 1154 1155 mn10300-*-*) 1156 targ_defvec=mn10300_elf32_vec 1157 targ_underscore=yes 1158 ;; 1159 1160 mt-*-elf) 1161 targ_defvec=mt_elf32_vec 1162 ;; 1163 1164 msp430-*-*) 1165 targ_defvec=msp430_elf32_vec 1166 targ_selvecs=msp430_elf32_ti_vec 1167 ;; 1168 1169 nds32*le-*-linux*) 1170 targ_defvec=nds32_elf32_linux_le_vec 1171 targ_selvecs=nds32_elf32_linux_be_vec 1172 ;; 1173 1174 nds32*be-*-linux*) 1175 targ_defvec=nds32_elf32_linux_be_vec 1176 targ_selvecs=nds32_elf32_linux_le_vec 1177 ;; 1178 1179 nds32*le-*-*) 1180 targ_defvec=nds32_elf32_le_vec 1181 targ_selvecs=nds32_elf32_be_vec 1182 ;; 1183 1184 nds32*be-*-*) 1185 targ_defvec=nds32_elf32_be_vec 1186 targ_selvecs=nds32_elf32_le_vec 1187 ;; 1188 1189 ns32k-pc532-mach* | ns32k-pc532-ux*) 1190 targ_defvec=ns32k_aout_pc532mach_vec 1191 targ_underscore=yes 1192 ;; 1193 ns32k-*-netbsd* | ns32k-*-lites* | ns32k-*-openbsd*) 1194 targ_defvec=ns32k_aout_pc532nbsd_vec 1195 targ_underscore=yes 1196 ;; 1197 1198 nios2eb-*-*) 1199 targ_defvec=nios2_elf32_be_vec 1200 targ_selvecs=nios2_elf32_le_vec 1201 ;; 1202 1203 nios2el-*-*) 1204 targ_defvec=nios2_elf32_le_vec 1205 targ_selvecs=nios2_elf32_be_vec 1206 ;; 1207 1208 nios2-*-*) 1209 targ_defvec=nios2_elf32_le_vec 1210 targ_selvecs=nios2_elf32_be_vec 1211 ;; 1212 1213 or1k-*-elf | or1k-*-linux* | or1k-*-rtems*) 1214 targ_defvec=or1k_elf32_vec 1215 ;; 1216 1217 or1knd-*-elf | or1knd-*-linux* | or1knd-*-rtems*) 1218 targ_defvec=or1k_elf32_vec 1219 ;; 1220 1221 pdp11-*-*) 1222 targ_defvec=pdp11_aout_vec 1223 targ_underscore=yes 1224 ;; 1225 1226 pj-*-*) 1227 targ_defvec=pj_elf32_vec 1228 targ_selvecs="pj_elf32_vec pj_elf32_le_vec" 1229 ;; 1230 1231 pjl-*-*) 1232 targ_defvec=pj_elf32_le_vec 1233 targ_selvecs="pj_elf32_le_vec pj_elf32_vec i386_elf32_vec iamcu_elf32_vec" 1234 ;; 1235 1236 powerpc-*-aix5.[01] | rs6000-*-aix5.[01]) 1237 targ_defvec=rs6000_xcoff_vec 1238 targ_selvecs="rs6000_xcoff64_aix_vec" 1239 want64=true 1240 ;; 1241#ifdef BFD64 1242 powerpc64-*-aix5.[01] | rs6000-*-aix5.[01]) 1243 targ_defvec=rs6000_xcoff64_aix_vec 1244 targ_selvecs="rs6000_xcoff_vec" 1245 want64=true 1246 ;; 1247#endif 1248 powerpc-*-aix[5-9]* | rs6000-*-aix[5-9]*) 1249 targ_cflags=-DAIX_WEAK_SUPPORT 1250 targ_defvec=rs6000_xcoff_vec 1251 targ_selvecs="rs6000_xcoff64_aix_vec" 1252 want64=true 1253 ;; 1254#ifdef BFD64 1255 powerpc64-*-aix[5-9]* | rs6000-*-aix[5-9]*) 1256 targ_cflags=-DAIX_WEAK_SUPPORT 1257 targ_defvec=rs6000_xcoff64_aix_vec 1258 targ_selvecs="rs6000_xcoff_vec" 1259 want64=true 1260 ;; 1261#endif 1262 1263 powerpc-*-aix* | powerpc-*-beos* | rs6000-*-*) 1264 targ_defvec=rs6000_xcoff_vec 1265 targ64_selvecs=rs6000_xcoff64_vec 1266 case "${targ}" in 1267 *-*-aix4.[3456789]* | *-*-aix[56789]*) 1268 want64=true;; 1269 *) 1270 targ_cflags=-DSMALL_ARCHIVE;; 1271 esac 1272 ;; 1273#ifdef BFD64 1274 powerpc64-*-aix*) 1275 targ_defvec=rs6000_xcoff64_vec 1276 targ_selvecs=rs6000_xcoff_vec 1277 want64=true 1278 ;; 1279 powerpc64-*-freebsd*) 1280 targ_defvec=powerpc_elf64_fbsd_vec 1281 targ_selvecs="powerpc_elf64_vec powerpc_elf32_vec powerpc_elf32_fbsd_vec powerpc_elf32_le_vec rs6000_xcoff_vec rs6000_xcoff64_vec rs6000_xcoff64_aix_vec" 1282 want64=true 1283 ;; 1284 powerpc64-*-elf* | powerpc-*-elf64* | powerpc64-*-linux* | \ 1285 powerpc64-*-*bsd*) 1286 targ_defvec=powerpc_elf64_vec 1287 targ_selvecs="powerpc_elf64_le_vec powerpc_elf32_vec powerpc_elf32_le_vec rs6000_xcoff_vec rs6000_xcoff64_vec rs6000_xcoff64_aix_vec" 1288 want64=true 1289 ;; 1290 powerpc64le-*-elf* | powerpcle-*-elf64* | powerpc64le-*-linux* | \ 1291 powerpc64le-*-*bsd*) 1292 targ_defvec=powerpc_elf64_le_vec 1293 targ_selvecs="powerpc_elf64_vec powerpc_elf32_le_vec powerpc_elf32_vec rs6000_xcoff_vec rs6000_xcoff64_vec rs6000_xcoff64_aix_vec" 1294 want64=true 1295 ;; 1296#endif 1297 powerpc-*-*freebsd*) 1298 targ_defvec=powerpc_elf32_fbsd_vec 1299 targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_elf32_le_vec powerpc_boot_vec" 1300 targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec powerpc_elf64_fbsd_vec" 1301 ;; 1302 powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \ 1303 powerpc-*-solaris2* | powerpc-*-linux-* | powerpc-*-rtems* | \ 1304 powerpc-*-chorus*) 1305 targ_defvec=powerpc_elf32_vec 1306 targ_selvecs="rs6000_xcoff_vec powerpc_elf32_le_vec powerpc_boot_vec" 1307 targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec" 1308 ;; 1309 powerpc-*-kaos*) 1310 targ_defvec=powerpc_elf32_vec 1311 targ_selvecs="powerpc_elf32_le_vec powerpc_boot_vec" 1312 targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec" 1313 ;; 1314 powerpc-*-darwin* | powerpc-*-macos10* | powerpc-*-rhapsody*) 1315 targ_defvec=mach_o_be_vec 1316 targ_selvecs="mach_o_be_vec mach_o_le_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec" 1317 targ_archs="$targ_archs bfd_i386_arch" 1318 ;; 1319 powerpc-*-macos*) 1320 targ_defvec=powerpc_xcoff_vec 1321 ;; 1322 powerpc-*-lynxos*) 1323 targ_defvec=powerpc_elf32_vec 1324 targ_selvecs="rs6000_xcoff_vec" 1325 targ_cflags=-DSMALL_ARCHIVE 1326 ;; 1327 powerpc-*-netware*) 1328 targ_defvec=powerpc_elf32_vec 1329 targ_selvecs="powerpc_nlm32_vec rs6000_xcoff_vec" 1330 ;; 1331 powerpc-*-nto*) 1332 targ_defvec=powerpc_elf32_vec 1333 targ_selvecs="rs6000_xcoff_vec powerpc_elf32_le_vec powerpc_boot_vec" 1334 ;; 1335 powerpc-*-vxworks* | powerpc-*-windiss*) 1336 targ_defvec=powerpc_elf32_vxworks_vec 1337 targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_elf32_le_vec powerpc_boot_vec" 1338 targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec" 1339 ;; 1340 powerpcle-*-nto*) 1341 targ_defvec=powerpc_elf32_le_vec 1342 targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_boot_vec" 1343 ;; 1344 powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \ 1345 powerpcle-*-solaris2* | powerpcle-*-linux-* | powerpcle-*-vxworks*) 1346 targ_defvec=powerpc_elf32_le_vec 1347 targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_boot_vec" 1348 targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec" 1349 ;; 1350 powerpcle-*-pe | powerpcle-*-winnt* | powerpcle-*-cygwin*) 1351 targ_defvec=powerpc_pe_le_vec 1352 targ_selvecs="powerpc_pei_le_vec powerpc_pei_vec powerpc_pe_le_vec powerpc_pe_vec" 1353 ;; 1354 1355 rl78-*-elf) 1356 targ_defvec=rl78_elf32_vec 1357 ;; 1358 1359 rx-*-elf) 1360 targ_defvec=rx_elf32_le_vec 1361 targ_selvecs="rx_elf32_be_vec rx_elf32_le_vec rx_elf32_be_ns_vec" 1362 ;; 1363 1364 s390-*-linux*) 1365 targ_defvec=s390_elf32_vec 1366 targ64_selvecs=s390_elf64_vec 1367 want64=true 1368 ;; 1369#ifdef BFD64 1370 s390x-*-linux*) 1371 targ_defvec=s390_elf64_vec 1372 targ_selvecs=s390_elf32_vec 1373 want64=true 1374 ;; 1375 s390x-*-tpf*) 1376 targ_defvec=s390_elf64_vec 1377 want64=true 1378 ;; 1379 1380 score*-*-elf*) 1381 targ_defvec=score_elf32_be_vec 1382 targ_selvecs=score_elf32_le_vec 1383 ;; 1384 1385 sh64l*-*-elf*) 1386 targ_defvec=sh64_elf32_le_vec 1387 targ_selvecs="sh64_elf32_vec sh64_elf64_le_vec sh64_elf64_vec sh_elf32_le_vec sh_elf32_vec" 1388 targ_underscore=yes 1389 want64=true 1390 ;; 1391 sh64-*-elf*) 1392 targ_defvec=sh64_elf32_vec 1393 targ_selvecs="sh64_elf32_le_vec sh64_elf64_vec sh64_elf64_le_vec sh_elf32_vec sh_elf32_le_vec" 1394 targ_underscore=yes 1395 want64=true 1396 ;; 1397 sh64eb-*-linux*) 1398 targ_defvec=sh64_elf32_linux_be_vec 1399 targ_selvecs="sh64_elf32_linux_vec sh64_elf64_linux_be_vec sh64_elf64_linux_vec sh_elf32_linux_be_vec sh_elf32_linux_vec" 1400 want64=true 1401 ;; 1402 sh64-*-linux*) 1403 targ_defvec=sh64_elf32_linux_vec 1404 targ_selvecs="sh64_elf32_linux_be_vec sh64_elf64_linux_vec sh64_elf64_linux_be_vec sh_elf32_linux_vec sh_elf32_linux_be_vec" 1405 want64=true 1406 ;; 1407 sh-*-linux*) 1408 targ_defvec=sh_elf32_linux_be_vec 1409 targ_selvecs="sh_elf32_linux_vec sh64_elf32_linux_vec sh64_elf32_linux_be_vec sh64_elf64_linux_vec sh64_elf64_linux_be_vec" 1410 want64=true 1411 ;; 1412#endif /* BFD64 */ 1413 1414 sh*eb-*-linux*) 1415 targ_defvec=sh_elf32_linux_be_vec 1416 targ_selvecs=sh_elf32_linux_vec 1417 ;; 1418 sh*-*-linux*) 1419 targ_defvec=sh_elf32_linux_vec 1420 targ_selvecs=sh_elf32_linux_be_vec 1421 ;; 1422 1423 sh-*-uclinux* | sh[12]-*-uclinux*) 1424 targ_defvec=sh_elf32_vec 1425 targ_selvecs="sh_elf32_le_vec sh_elf32_linux_be_vec sh_elf32_linux_vec sh_elf32_fdpic_le_vec sh_elf32_fdpic_be_vec" 1426#ifdef BFD64 1427 targ_selvecs="${targ_selvecs} sh64_elf32_linux_vec sh64_elf32_linux_be_vec sh64_elf64_linux_vec sh64_elf64_linux_be_vec" 1428#endif 1429 ;; 1430 1431#ifdef BFD64 1432 sh5le-*-netbsd*) 1433 targ_defvec=sh64_elf32_nbsd_le_vec 1434 targ_selvecs="sh64_elf32_nbsd_vec sh64_elf64_nbsd_le_vec sh64_elf64_nbsd_vec sh_elf32_nbsd_vec sh_elf32_nbsd_le_vec" 1435 want64=true 1436 ;; 1437 sh5-*-netbsd*) 1438 targ_defvec=sh64_elf32_nbsd_vec 1439 targ_selvecs="sh64_elf32_nbsd_le_vec sh64_elf64_nbsd_le_vec sh64_elf64_nbsd_vec sh_elf32_nbsd_vec sh_elf32_nbsd_le_vec" 1440 want64=true 1441 ;; 1442 1443 sh64le-*-netbsd*) 1444 targ_defvec=sh64_elf64_nbsd_le_vec 1445 targ_selvecs="sh64_elf64_nbsd_vec sh64_elf32_nbsd_le_vec sh64_elf32_nbsd_vec sh_elf32_nbsd_vec sh_elf32_nbsd_le_vec" 1446 want64=true 1447 ;; 1448 sh64-*-netbsd*) 1449 targ_defvec=sh64_elf64_nbsd_vec 1450 targ_selvecs="sh64_elf64_nbsd_le_vec sh64_elf32_nbsd_le_vec sh64_elf32_nbsd_vec sh_elf32_nbsd_vec sh_elf32_nbsd_le_vec" 1451 want64=true 1452 ;; 1453 1454 sh*l*-*-netbsdelf*) 1455 targ_defvec=sh_elf32_nbsd_le_vec 1456 targ_selvecs="sh_elf32_nbsd_vec sh_coff_vec sh_coff_le_vec sh64_elf32_nbsd_le_vec sh64_elf32_nbsd_vec sh64_elf64_nbsd_le_vec sh64_elf64_nbsd_vec" 1457 want64=true 1458 ;; 1459 sh-*-netbsdelf*) 1460 targ_defvec=sh_elf32_nbsd_vec 1461 targ_selvecs="sh_elf32_nbsd_le_vec sh_coff_vec sh_coff_le_vec sh64_elf32_nbsd_le_vec sh64_elf32_nbsd_vec sh64_elf64_nbsd_le_vec sh64_elf64_nbsd_vec" 1462 want64=true 1463 ;; 1464#endif 1465 1466 sh*-*-netbsdelf*) 1467 targ_defvec=sh_elf32_nbsd_vec 1468 targ_selvecs="sh_elf32_nbsd_le_vec sh_coff_vec sh_coff_le_vec" 1469 ;; 1470 sh*-*-symbianelf*) 1471 targ_defvec=sh_elf32_symbian_le_vec 1472 targ_selvecs="sh_coff_le_vec sh_coff_small_le_vec" 1473 targ_underscore=yes 1474 ;; 1475 1476#ifdef BFD64 1477 shl*-*-elf* | sh[1234]l*-*-elf* | sh3el*-*-elf* | shl*-*-kaos*) 1478 targ_defvec=sh_elf32_le_vec 1479 targ_selvecs="sh_elf32_vec sh_coff_le_vec sh_coff_vec sh_coff_small_le_vec sh_coff_small_vec sh64_elf32_vec sh64_elf32_le_vec sh64_elf64_vec sh64_elf64_le_vec" 1480 targ_underscore=yes 1481 want64=true 1482 ;; 1483#endif 1484 1485 sh-*-rtemscoff*) 1486 targ_defvec=sh_coff_vec 1487 targ_selvecs="sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec" 1488 targ_underscore=yes 1489 ;; 1490 1491#ifdef BFD64 1492 sh-*-elf* | sh[1234]*-elf* | sh-*-rtems* | sh-*-kaos*) 1493 targ_defvec=sh_elf32_vec 1494 targ_selvecs="sh_elf32_le_vec sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec sh64_elf32_vec sh64_elf32_le_vec sh64_elf64_vec sh64_elf64_le_vec" 1495 targ_underscore=yes 1496 want64=true 1497 ;; 1498#endif 1499 1500 sh-*-nto*) 1501 targ_defvec=sh_elf32_vec 1502 targ_selvecs="sh_elf32_le_vec sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec" 1503 targ_underscore=yes 1504 ;; 1505 sh*-*-openbsd*) 1506 targ_defvec=sh_elf32_nbsd_le_vec 1507 targ_selvecs="sh_elf32_nbsd_vec sh_coff_vec sh_coff_le_vec" 1508 ;; 1509 sh-*-pe) 1510 targ_defvec=sh_pe_le_vec 1511 targ_selvecs="sh_pe_le_vec sh_pei_le_vec" 1512 targ_underscore=yes 1513 ;; 1514 sh-*-vxworks) 1515 targ_defvec=sh_elf32_vxworks_vec 1516 targ_selvecs="sh_elf32_vxworks_le_vec" 1517 # FIXME None of the following are actually used on this target, but 1518 # they're necessary for coff-sh.c (which is unconditionally used) to be 1519 # compiled correctly. 1520 targ_selvecs="$targ_selvecs sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec" 1521 targ_underscore=yes 1522 ;; 1523 sh-*-*) 1524 targ_defvec=sh_coff_vec 1525 targ_selvecs="sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec" 1526 targ_underscore=yes 1527 ;; 1528 1529 sparclet-*-aout*) 1530 targ_defvec=sparc_aout_sunos_be_vec 1531 targ_selvecs=sparc_aout_le_vec 1532 targ_underscore=yes 1533 ;; 1534 sparc86x-*-aout*) 1535 targ_defvec=sparc_aout_sunos_be_vec 1536 targ_underscore=yes 1537 ;; 1538 sparclite-*-elf* | sparc86x-*-elf*) 1539 targ_defvec=sparc_elf32_vec 1540 ;; 1541 sparc*-*-chorus*) 1542 targ_defvec=sparc_elf32_vec 1543 ;; 1544 sparc-*-linux*aout*) 1545 targ_defvec=sparc_aout_linux_vec 1546 targ_selvecs="sparc_elf32_vec sparc_aout_sunos_be_vec" 1547 targ_underscore=yes 1548 ;; 1549 sparc-*-linux-* | sparcv*-*-linux-*) 1550 targ_defvec=sparc_elf32_vec 1551 targ_selvecs="sparc_aout_linux_vec sparc_elf64_vec sparc_aout_sunos_be_vec" 1552 ;; 1553 sparc-*-netbsdelf*) 1554 targ_defvec=sparc_elf32_vec 1555 targ_selvecs=sparc_aout_nbsd_vec 1556 ;; 1557 sparc-*-netbsdaout* | sparc-*-netbsd*) 1558 targ_defvec=sparc_aout_nbsd_vec 1559 targ_selvecs=sparc_elf32_vec 1560 targ_underscore=yes 1561 ;; 1562 sparc-*-openbsd[0-2].* | sparc-*-openbsd3.[0-1]) 1563 targ_defvec=sparc_aout_nbsd_vec 1564 targ_underscore=yes 1565 ;; 1566 sparc-*-openbsd*) 1567 targ_defvec=sparc_elf32_vec 1568 targ_selvecs=sparc_aout_nbsd_vec 1569 ;; 1570 sparc-*-elf*) 1571 targ_defvec=sparc_elf32_vec 1572 targ_selvecs=sparc_aout_sunos_be_vec 1573 ;; 1574 sparc-*-solaris2.[0-6] | sparc-*-solaris2.[0-6].*) 1575 targ_defvec=sparc_elf32_sol2_vec 1576 targ_selvecs=sparc_aout_sunos_be_vec 1577 ;; 1578#ifdef BFD64 1579 sparc-*-solaris2* | sparcv9-*-solaris2* | sparc64-*-solaris2*) 1580 targ_defvec=sparc_elf32_sol2_vec 1581 targ_selvecs="sparc_elf64_sol2_vec sparc_aout_sunos_be_vec" 1582 want64=true 1583 ;; 1584#endif 1585 sparc-*-sysv4*) 1586 targ_defvec=sparc_elf32_vec 1587 ;; 1588 sparc-*-vxworks*) 1589 targ_defvec=sparc_elf32_vxworks_vec 1590 targ_selvecs="sparc_elf32_vec sparc_aout_sunos_be_vec" 1591 ;; 1592 sparc-*-netware*) 1593 targ_defvec=sparc_elf32_vec 1594 targ_selvecs="sparc_nlm32_vec sparc_aout_sunos_be_vec" 1595 ;; 1596#ifdef BFD64 1597 sparc64-*-aout*) 1598 targ_defvec=sparc_aout_sunos_be_vec 1599 targ_underscore=yes 1600 want64=true 1601 ;; 1602 sparc64*-*-linux-*) 1603 targ_defvec=sparc_elf64_vec 1604 targ_selvecs="sparc_elf32_vec sparc_aout_linux_vec sparc_aout_sunos_be_vec" 1605 want64=true 1606 ;; 1607 sparc64-*-elf* | sparc64-*-rtems* ) 1608 targ_defvec=sparc_elf64_vec 1609 targ_selvecs=sparc_elf32_vec 1610 want64=true 1611 ;; 1612#endif /* BFD64 */ 1613 sparc*-*-coff*) 1614 targ_defvec=sparc_coff_vec 1615 ;; 1616 sparc-*-rtems*) 1617 targ_defvec=sparc_elf32_vec 1618 targ_selvecs="sparc_aout_sunos_be_vec sparc_coff_vec" 1619 ;; 1620 sparc*-*-*) 1621 targ_defvec=sparc_aout_sunos_be_vec 1622 targ_underscore=yes 1623 ;; 1624 1625 spu-*-elf) 1626 targ_defvec=spu_elf32_vec 1627 want64=true 1628 ;; 1629 1630#if HAVE_aout_vec 1631 tahoe-*-*) 1632 targ_defvec=aout_vec 1633 targ_underscore=yes 1634 ;; 1635#endif 1636 1637 tic6x-*-elf) 1638 targ_defvec=tic6x_elf32_c6000_le_vec 1639 targ_selvecs="tic6x_elf32_c6000_be_vec tic6x_elf32_le_vec tic6x_elf32_be_vec" 1640 ;; 1641 1642 tic6x-*-uclinux) 1643 targ_defvec=tic6x_elf32_linux_le_vec 1644 targ_selvecs="tic6x_elf32_linux_be_vec tic6x_elf32_le_vec tic6x_elf32_be_vec" 1645 ;; 1646 1647 tic80*-*-*) 1648 targ_defvec=tic80_coff_vec 1649 targ_underscore=yes 1650 ;; 1651 1652#ifdef BFD64 1653 tilegx-*-*) 1654 targ_defvec=tilegx_elf64_le_vec 1655 targ_selvecs="tilegx_elf64_be_vec tilegx_elf32_be_vec tilegx_elf32_le_vec" 1656 ;; 1657 tilegxbe-*-*) 1658 targ_defvec=tilegx_elf64_be_vec 1659 targ_selvecs="tilegx_elf64_le_vec tilegx_elf32_be_vec tilegx_elf32_le_vec" 1660 ;; 1661#endif 1662 1663 tilepro-*-*) 1664 targ_defvec=tilepro_elf32_vec 1665 ;; 1666 1667 ft32*-*-*) 1668 targ_defvec=ft32_elf32_vec 1669 ;; 1670 1671 v850*-*-*) 1672 targ_defvec=v850_elf32_vec 1673 targ_selvecs="v800_elf32_vec" 1674 ;; 1675 1676 vax-*-netbsdelf*) 1677 targ_defvec=vax_elf32_vec 1678 targ_selvecs="vax_aout_nbsd_vec vax_aout_1knbsd_vec" 1679 ;; 1680 1681 vax-*-netbsdaout* | vax-*-netbsd*) 1682 targ_defvec=vax_aout_nbsd_vec 1683 targ_selvecs="vax_elf32_vec vax_aout_1knbsd_vec" 1684 targ_underscore=yes 1685 ;; 1686 1687 vax-*-bsd* | vax-*-ultrix*) 1688 targ_defvec=vax_aout_bsd_vec 1689 targ_underscore=yes 1690 ;; 1691 1692 vax-*-openbsd*) 1693 targ_defvec=vax_aout_nbsd_vec 1694 targ_underscore=yes 1695 ;; 1696 1697 vax-*-linux-*) 1698 targ_defvec=vax_elf32_vec 1699 ;; 1700 1701 visium-*-elf) 1702 targ_defvec=visium_elf32_vec 1703 ;; 1704 1705 we32k-*-*) 1706 targ_defvec=we32k_coff_vec 1707 ;; 1708 1709 w65-*-*) 1710 targ_defvec=w65_coff_vec 1711 ;; 1712 1713 xgate-*-*) 1714 targ_defvec=xgate_elf32_vec 1715 targ_selvecs="xgate_elf32_vec" 1716 ;; 1717 1718 xstormy16-*-elf) 1719 targ_defvec=xstormy16_elf32_vec 1720 ;; 1721 1722 xtensa*-*-*) 1723 targ_defvec=xtensa_elf32_le_vec 1724 targ_selvecs=xtensa_elf32_be_vec 1725 ;; 1726 xc16x-*-elf) 1727 targ_defvec=xc16x_elf32_vec 1728 ;; 1729 1730 z80-*-*) 1731 targ_defvec=z80_coff_vec 1732 targ_underscore=no 1733 ;; 1734 1735 z8k*-*-*) 1736 targ_defvec=z8k_coff_vec 1737 targ_underscore=yes 1738 ;; 1739 1740 *-*-ieee*) 1741 targ_defvec=ieee_vec 1742 ;; 1743 1744 *-adobe-*) 1745 targ_defvec=aout_adobe_vec 1746 targ_underscore=yes 1747 ;; 1748 1749 *-sony-*) 1750 targ_defvec=m68k_aout_newsos3_vec 1751 targ_underscore=yes 1752 ;; 1753 1754 *-tandem-*) 1755 targ_defvec=m68k_coff_vec 1756 targ_selvecs=ieee_vec 1757 ;; 1758# END OF targmatch.h 1759 *) 1760 echo 1>&2 "*** BFD does not support target ${targ}." 1761 echo 1>&2 "*** Look in bfd/config.bfd for supported targets." 1762 exit 1 1763 ;; 1764esac 1765 1766# All MIPS ELF targets need a 64-bit bfd_vma. 1767case "${targ_defvec} ${targ_selvecs}" in 1768 *mips_elf*) 1769 want64=true 1770 ;; 1771esac 1772 1773case "${host64}${want64}" in 1774 *true*) 1775 targ_selvecs="${targ_selvecs} ${targ64_selvecs}" 1776 ;; 1777esac 1778 1779# If we support any ELF target, then automatically add support for the 1780# generic ELF targets. This permits an objdump with some ELF support 1781# to be used on an arbitrary ELF file for anything other than 1782# relocation information. 1783case "${targ_defvec} ${targ_selvecs}" in 1784 *elf64* | *mips_elf32_n*) 1785 targ_selvecs="${targ_selvecs} elf64_le_vec elf64_be_vec elf32_le_vec elf32_be_vec" 1786 ;; 1787 *elf32*) 1788 targ_selvecs="${targ_selvecs} elf32_le_vec elf32_be_vec" 1789 ;; 1790esac 1791 1792# If we support Intel MCU target, then add support for bfd_iamcu_arch. 1793case "${targ_defvec} ${targ_selvecs}" in 1794 *iamcu_elf32*) 1795 targ_archs="$targ_archs bfd_iamcu_arch" 1796 ;; 1797esac 1798 1799# If we support Intel L1OM target, then add support for bfd_l1om_arch. 1800case "${targ_defvec} ${targ_selvecs}" in 1801 *l1om_elf64*) 1802 targ_archs="$targ_archs bfd_l1om_arch" 1803 ;; 1804esac 1805 1806# If we support Intel K1OM target, then add support for bfd_k1om_arch. 1807case "${targ_defvec} ${targ_selvecs}" in 1808 *k1om_elf64*) 1809 targ_archs="$targ_archs bfd_k1om_arch" 1810 ;; 1811esac 1812