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