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