1# config.bfd 2# 3# Copyright (C) 2012-2022 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 *-*-beos* | \ 52 null) 53 if test "x$enable_obsolete" != xyes; then 54 echo "*** Configuration $targ is obsolete." >&2 55 echo "*** Specify --enable-obsolete to build it anyway." >&2 56 echo "*** Support will be REMOVED in the next major release of BINUTILS," >&2 57 echo "*** unless a maintainer comes forward." >&2 58 exit 1 59 fi;; 60esac 61 62# Warn on changed defaulting 63case $targ in 64 *-*-netbsdelf* | *-*-netbsdaout* | *-*-netbsdpe*) 65 # Explicit, no defaulting 66 ;; 67 ns32k-*-netbsd*) 68 # The obsolete warning below is enough, and ns32k does not have ELF support 69 ;; 70 *-*-netbsd* ) 71 targ_migrated=`echo "$targ" | sed 's/netbsd/netbsdaout/'` 72 echo "*** WARNING: $targ is now defaults to meaning ELF not a.out." >&2 73 echo "*** Use $targ_migrated instead to explicitly specify a.out." >&2 74 ;; 75esac 76 77case $targ in 78 mips*-*-irix5* | mips*-*-irix6*) 79 # Not obsolete 80 ;; 81 *-adobe-* | \ 82 *-go32-rtems* | \ 83 *-sony-* | \ 84 *-tandem-* | \ 85 *-*-ieee* | \ 86 *-*-netbsdpe* | \ 87 *-*-netware* | \ 88 *-*-rtemsaout* | \ 89 *-*-rtemscoff* | \ 90 a29k-* | \ 91 arm*-*-aout | \ 92 arm-*-coff | \ 93 arm*-*-netbsdaout* | \ 94 arm-*-oabi | \ 95 arm-*-riscix* | \ 96 arm*-*-symbianelf* | \ 97 arm-epoc-pe* | \ 98 c30-*-*aout* | tic30-*-*aout* | \ 99 cr16c-*-* | \ 100 h8300*-*-coff | \ 101 h8500*-*-coff | \ 102 hppa*-*-rtems* | \ 103 i[3-7]86-*-unixware* | \ 104 i[3-7]86-*-dgux* | \ 105 i[3-7]86-*-chorus* | \ 106 i[3-7]86-*-sysv* | \ 107 i[3-7]86-*-isc* | \ 108 i[3-7]86-*-sco* | \ 109 i[3-7]86-*-coff | \ 110 i[3-7]86-*-aix* | \ 111 i[3-7]86-sequent-bsd* | \ 112 i[3-7]86-*-freebsdaout* | i[3-7]86-*-freebsd[12].* | i[3-7]86-*-freebsd[12] | \ 113 i[3-7]86-*-netbsdaout* | \ 114 i[3-7]86-*-openbsd[0-2].* | i[3-7]86-*-openbsd3.[0-3] | \ 115 i[3-7]86-*-linux*aout* | \ 116 i[3-7]86-*-mach* | i[3-7]86-*-osf1mk* | \ 117 i[3-7]86-*-os9k | \ 118 i[3-7]86-none-* | \ 119 i[3-7]86-*-aout* | i[3-7]86*-*-vsta* | \ 120 i370-* | \ 121 i860-*-* | \ 122 i960-*-* | \ 123 m68*-*-bsd* | \ 124 m68*-*-aout* | \ 125 m68*-*-coff* | \ 126 m68*-*-hpux* | \ 127 m68*-*-linux*aout* | \ 128 m68*-*-lynxos* | \ 129 m68*-*-openbsd* | \ 130 m68*-*-os68k* | \ 131 m68*-*-psos* | \ 132 m68*-*-sunos* | \ 133 m68*-*-sysv* | \ 134 m68*-*-vsta* | \ 135 m68*-*-vxworks* | \ 136 m68*-apollo-* | \ 137 m68*-apple-aux* | \ 138 m68*-bull-sysv* | \ 139 m68*-ericsson-* | \ 140 m68*-motorola-sysv* | \ 141 m68*-netx-* | \ 142 m88*-*-* | \ 143 maxq-*-coff | \ 144 mips*-*-bsd* | \ 145 mips*-*-ecoff* | \ 146 mips*-*-lnews* | \ 147 mips*-*-mach3* | \ 148 mips*-*-pe* | \ 149 mips*-*-riscos* | \ 150 mips*-*-sysv* | \ 151 mips*-big-* | \ 152 mips*-dec-* | \ 153 mips*-sgi-* | \ 154 mips*el-*-rtems* | \ 155 m32c-*-rtems* | \ 156 ns32k-*-netbsd* | \ 157 openrisc-*-* | \ 158 or32-*-* | \ 159 powerpc-*-lynxos* | powerpc-*-windiss* | \ 160 powerpcle-*-pe | powerpcle-*-winnt* | powerpcle-*-cygwin* | \ 161 sh*-*-netbsdaout* | \ 162 sh*-*-symbianelf* | sh5*-*-* | sh64*-*-* | \ 163 sparc*-*-*aout* | \ 164 sparc*-*-chorus* | \ 165 sparc*-*-coff* | \ 166 sparc-*-lynxos* | \ 167 sparc-*-openbsd[0-2].* | sparc-*-openbsd3.[0-1] | \ 168 tahoe-*-* | \ 169 vax-*-bsd* | vax-*-ultrix* | vax-*-vms* | \ 170 w65-*-* | \ 171 we32k-*-* | \ 172 xc16x-*-* | \ 173 null) 174 echo "*** Configuration $targ is now obsolete" >&2 175 echo "*** and so support for it has been REMOVED." >&2 176 exit 1 177 ;; 178esac 179 180targ_cpu=`echo $targ | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` 181case "${targ_cpu}" in 182aarch64*) targ_archs="bfd_aarch64_arch bfd_arm_arch";; 183alpha*) targ_archs=bfd_alpha_arch ;; 184am33_2.0*) targ_archs=bfd_mn10300_arch ;; 185arc*) targ_archs=bfd_arc_arch ;; 186arm*) targ_archs=bfd_arm_arch ;; 187amdgcn*) targ_archs=bfd_amdgcn_arch ;; 188bfin*) targ_archs=bfd_bfin_arch ;; 189c30*) targ_archs=bfd_tic30_arch ;; 190c4x*) targ_archs=bfd_tic4x_arch ;; 191c54x*) targ_archs=bfd_tic54x_arch ;; 192cr16*) targ_archs=bfd_cr16_arch ;; 193crisv32) targ_archs=bfd_cris_arch ;; 194crx*) targ_archs=bfd_crx_arch ;; 195csky*) targ_archs=bfd_csky_arch ;; 196dlx*) targ_archs=bfd_dlx_arch ;; 197fido*) targ_archs=bfd_m68k_arch ;; 198hppa*) targ_archs=bfd_hppa_arch ;; 199i[3-7]86) targ_archs=bfd_i386_arch ;; 200ia16) targ_archs=bfd_i386_arch ;; 201loongarch*) targ_archs=bfd_loongarch_arch ;; 202m6811*|m68hc11*) targ_archs="bfd_m68hc11_arch bfd_m68hc12_arch bfd_m9s12x_arch bfd_m9s12xg_arch" ;; 203m6812*|m68hc12*) targ_archs="bfd_m68hc12_arch bfd_m68hc11_arch bfd_m9s12x_arch bfd_m9s12xg_arch" ;; 204m68*) targ_archs=bfd_m68k_arch ;; 205microblaze*) targ_archs=bfd_microblaze_arch ;; 206mips*) targ_archs=bfd_mips_arch ;; 207nds32*) targ_archs=bfd_nds32_arch ;; 208nios2*) targ_archs=bfd_nios2_arch ;; 209or1k*|or1knd*) targ_archs=bfd_or1k_arch ;; 210pdp11*) targ_archs=bfd_pdp11_arch ;; 211pj*) targ_archs="bfd_pj_arch bfd_i386_arch";; 212powerpc*) targ_archs="bfd_rs6000_arch bfd_powerpc_arch" ;; 213pru*) targ_archs=bfd_pru_arch ;; 214riscv*) targ_archs=bfd_riscv_arch ;; 215rs6000) targ_archs="bfd_rs6000_arch bfd_powerpc_arch" ;; 216s12z*) targ_archs=bfd_s12z_arch ;; 217s390*) targ_archs=bfd_s390_arch ;; 218sh*) targ_archs=bfd_sh_arch ;; 219sparc*) targ_archs=bfd_sparc_arch ;; 220spu*) targ_archs=bfd_spu_arch ;; 221tilegx*) targ_archs=bfd_tilegx_arch ;; 222tilepro*) targ_archs=bfd_tilepro_arch ;; 223v850*) targ_archs="bfd_v850_arch bfd_v850_rh850_arch" ;; 224visium*) targ_archs=bfd_visium_arch ;; 225x86_64*) targ_archs=bfd_i386_arch ;; 226xtensa*) targ_archs=bfd_xtensa_arch ;; 227z80*|r800|z180|gbz80|ez80*) targ_archs=bfd_z80_arch ;; 228z8k*) targ_archs=bfd_z8k_arch ;; 229*) targ_archs=bfd_${targ_cpu}_arch ;; 230esac 231 232 233# WHEN ADDING ENTRIES TO THIS MATRIX: 234# Make sure that the left side always has two dashes. Otherwise you 235# can get spurious matches. Even for unambiguous cases, do this as a 236# convention, else the table becomes a real mess to understand and maintain. 237 238case "${targ}" in 239# START OF targmatch.h 240#ifdef BFD64 241 aarch64-*-darwin*) 242 targ_defvec=aarch64_mach_o_vec 243 targ_selvecs="arm_mach_o_vec mach_o_le_vec mach_o_be_vec mach_o_fat_vec" 244 targ_archs="$targ_archs bfd_i386_arch bfd_powerpc_arch bfd_rs6000_arch" 245 want64=true 246 ;; 247 aarch64-*-elf | aarch64-*-rtems* | aarch64-*-genode*) 248 targ_defvec=aarch64_elf64_le_vec 249 targ_selvecs="aarch64_elf64_be_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_le_vec arm_elf32_be_vec aarch64_pei_le_vec aarch64_pe_le_vec" 250 want64=true 251 ;; 252 aarch64-*-pe*) 253 targ_defvec=aarch64_pe_le_vec 254 targ_selvecs="aarch64_pe_le_vec aarch64_pei_le_vec" 255 want64=true 256 targ_underscore=no 257 ;; 258 aarch64_be-*-elf) 259 targ_defvec=aarch64_elf64_be_vec 260 targ_selvecs="aarch64_elf64_le_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_be_vec arm_elf32_le_vec" 261 want64=true 262 ;; 263 aarch64-*-freebsd*) 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-*-openbsd*) 269 targ_defvec=aarch64_elf64_le_vec 270 targ_selvecs="aarch64_elf64_be_vec arm_elf32_le_vec arm_elf32_be_vec" 271 want64=true 272 ;; 273 aarch64-*-fuchsia*) 274 targ_defvec=aarch64_elf64_le_vec 275 targ_selvecs="aarch64_elf64_be_vec arm_elf32_le_vec arm_elf32_be_vec" 276 want64=true 277 ;; 278 aarch64-*-cloudabi*) 279 targ_defvec=aarch64_elf64_le_cloudabi_vec 280 targ_selvecs=aarch64_elf64_be_cloudabi_vec 281 want64=true 282 ;; 283 aarch64-*-haiku*) 284 targ_defvec=aarch64_elf64_le_vec 285 targ_selvecs="aarch64_elf64_be_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_le_vec arm_elf32_be_vec" 286 want64=true 287 ;; 288 aarch64-*-linux* | aarch64-*-netbsd*) 289 targ_defvec=aarch64_elf64_le_vec 290 targ_selvecs="aarch64_elf64_be_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_le_vec arm_elf32_be_vec aarch64_pei_le_vec aarch64_pe_le_vec" 291 want64=true 292 ;; 293 aarch64_be-*-linux* | aarch64_be-*-netbsd*) 294 targ_defvec=aarch64_elf64_be_vec 295 targ_selvecs="aarch64_elf64_le_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_be_vec arm_elf32_le_vec" 296 want64=true 297 ;; 298 alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu) 299 targ_defvec=alpha_elf64_fbsd_vec 300 targ_selvecs="alpha_elf64_vec alpha_ecoff_le_vec" 301 want64=true 302 # FreeBSD <= 4.0 supports only the old nonstandard way of ABI labelling. 303 case "${targ}" in 304 alpha*-*-freebsd3* | alpha*-*-freebsd4 | alpha*-*-freebsd4.0*) 305 targ_cflags=-DOLD_FREEBSD_ABI_LABEL ;; 306 esac 307 ;; 308 alpha*-*-netbsd* | alpha*-*-openbsd*) 309 targ_defvec=alpha_elf64_vec 310 targ_selvecs=alpha_ecoff_le_vec 311 want64=true 312 ;; 313 alpha*-*-linux*ecoff*) 314 targ_defvec=alpha_ecoff_le_vec 315 targ_selvecs=alpha_elf64_vec 316 want64=true 317 ;; 318 alpha*-*-linux-* | alpha*-*-elf*) 319 targ_defvec=alpha_elf64_vec 320 targ_selvecs=alpha_ecoff_le_vec 321 want64=true 322 ;; 323 alpha*-*-*vms*) 324 targ_defvec=alpha_vms_vec 325 targ_selvecs=alpha_vms_lib_txt_vec 326 want64=true 327 ;; 328 alpha*-*-*) 329 targ_defvec=alpha_ecoff_le_vec 330 want64=true 331 ;; 332 amdgcn-*-*) 333 targ_defvec=amdgcn_elf64_le_vec 334 want64=true 335 ;; 336 ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu) 337 targ_defvec=ia64_elf64_le_vec 338 targ_selvecs="ia64_elf64_be_vec ia64_pei_vec" 339 want64=true 340 ;; 341 ia64*-*-hpux*) 342 targ_defvec=ia64_elf32_hpux_be_vec 343 targ_selvecs="ia64_elf64_hpux_be_vec" 344 want64=true 345 ;; 346 ia64*-*-*vms*) 347 targ_defvec=ia64_elf64_vms_vec 348 targ_selvecs=alpha_vms_lib_txt_vec 349 want64=true 350 ;; 351#endif /* BFD64 */ 352 353 am33_2.0-*-linux*) 354 targ_defvec=am33_elf32_linux_vec 355 ;; 356 357 arc*eb-*-elf* | arc*eb-*-linux*) 358 targ_defvec=arc_elf32_be_vec 359 targ_selvecs=arc_elf32_le_vec 360 ;; 361 362 arc*-*-elf* | arc*-*-linux*) 363 targ_defvec=arc_elf32_le_vec 364 targ_selvecs=arc_elf32_be_vec 365 ;; 366 367 arm-*-darwin*) 368 targ_defvec=arm_mach_o_vec 369 targ_selvecs="mach_o_le_vec mach_o_be_vec mach_o_fat_vec" 370 targ_archs="$targ_archs bfd_i386_arch bfd_powerpc_arch bfd_rs6000_arch" 371 ;; 372 arm-*-fuchsia*) 373 targ_defvec=arm_elf32_le_vec 374 targ_selvecs="arm_elf32_be_vec" 375 ;; 376 arm*-*-haiku*) 377 targ_defvec=arm_elf32_le_vec 378 targ_selvecs="arm_elf32_fdpic_le_vec arm_elf32_be_vec arm_elf32_fdpic_be_vec arm_pe_le_vec arm_pe_be_vec arm_pei_le_vec arm_pei_be_vec" 379 ;; 380 arm-*-nacl*) 381 targ_defvec=arm_elf32_nacl_le_vec 382 targ_selvecs="arm_elf32_nacl_be_vec" 383 ;; 384 armeb-*-nacl*) 385 targ_defvec=arm_elf32_nacl_be_vec 386 targ_selvecs="arm_elf32_nacl_le_vec" 387 ;; 388 armeb-*-netbsd*) 389 targ_defvec=arm_elf32_be_vec 390 targ_selvecs="arm_elf32_le_vec" 391 ;; 392 arm-*-netbsd* | arm-*-openbsd*) 393 targ_defvec=arm_elf32_le_vec 394 targ_selvecs="arm_elf32_be_vec" 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-wince-pe | arm-*-wince | arm*-*-mingw32ce* | arm*-*-cegcc*) 402 targ_defvec=arm_pe_wince_le_vec 403 targ_selvecs="arm_pe_wince_le_vec arm_pe_wince_be_vec arm_pei_wince_le_vec arm_pei_wince_be_vec" 404 targ_underscore=no 405 targ_cflags="-DARM_WINCE -DARM_COFF_BUGFIX" 406 ;; 407 arm-*-pe*) 408 targ_defvec=arm_pe_le_vec 409 targ_selvecs="arm_pe_le_vec arm_pe_be_vec arm_pei_le_vec arm_pei_be_vec" 410 targ_underscore=yes 411 ;; 412 arm-*-phoenix*) 413 targ_defvec=arm_elf32_le_vec 414 targ_selvecs=arm_elf32_be_vec 415 ;; 416 armeb-*-elf | arm*b-*-freebsd* | arm*b-*-linux-* | armeb-*-eabi*) 417 targ_defvec=arm_elf32_be_vec 418 targ_selvecs=arm_elf32_le_vec 419 ;; 420 arm-*-kaos*) 421 targ_defvec=arm_elf32_le_vec 422 targ_selvecs=arm_elf32_be_vec 423 ;; 424 arm-*-elf | arm*-*-freebsd* | arm*-*-linux-* | arm*-*-conix* | \ 425 arm*-*-uclinux* | arm-*-kfreebsd*-gnu | \ 426 arm*-*-eabi* | arm-*-rtems* | arm*-*-uclinuxfdpiceabi) 427 targ_defvec=arm_elf32_le_vec 428 targ_selvecs="arm_elf32_fdpic_le_vec arm_elf32_be_vec arm_elf32_fdpic_be_vec" 429 ;; 430 arm*-*-vxworks | arm*-*-windiss) 431 targ_defvec=arm_elf32_vxworks_le_vec 432 targ_selvecs=arm_elf32_vxworks_be_vec 433 ;; 434 arm9e-*-elf) 435 targ_defvec=arm_elf32_le_vec 436 targ_selvecs=arm_elf32_be_vec 437 ;; 438 439 avr-*-*) 440 targ_defvec=avr_elf32_vec 441 ;; 442 443 bfin-*-*) 444 targ_defvec=bfin_elf32_vec 445 targ_selvecs=bfin_elf32_fdpic_vec 446 targ_underscore=yes 447 ;; 448 449 c30-*-*coff* | tic30-*-*coff*) 450 targ_defvec=tic30_coff_vec 451 ;; 452 453 c4x-*-*coff* | tic4x-*-*coff*) 454 targ_defvec=tic4x_coff1_vec 455 targ_selvecs="tic4x_coff1_beh_vec tic4x_coff2_vec tic4x_coff2_beh_vec tic4x_coff0_vec tic4x_coff0_beh_vec" 456 targ_underscore=yes 457 ;; 458 459 c54x*-*-*coff* | tic54x-*-*coff*) 460 targ_defvec=tic54x_coff1_vec 461 targ_selvecs="tic54x_coff1_beh_vec tic54x_coff2_vec tic54x_coff2_beh_vec tic54x_coff0_vec tic54x_coff0_beh_vec" 462 targ_underscore=yes 463 ;; 464 465 cr16-*-elf* | cr16*-*-uclinux*) 466 targ_defvec=cr16_elf32_vec 467 targ_underscore=yes 468 ;; 469 470 cris-*-* | crisv32-*-*) 471 targ_defvec=cris_aout_vec 472 targ_selvecs="cris_elf32_us_vec cris_elf32_vec" 473 case "${targ}" in 474 *-*-linux*) ;; 475 *) targ_underscore=yes ;; 476 esac 477 want64=true 478 ;; 479 480 crx-*-elf*) 481 targ_defvec=crx_elf32_vec 482 targ_underscore=yes 483 ;; 484 485 csky-*-elf* | csky-*-linux* ) 486 targ_defvec=csky_elf32_le_vec 487 targ_selvecs="csky_elf32_be_vec csky_elf32_le_vec" 488 ;; 489 490 d10v-*-*) 491 targ_defvec=d10v_elf32_vec 492 ;; 493 494 dlx-*-elf*) 495 targ_defvec=dlx_elf32_be_vec 496 targ_selvecs="dlx_elf32_be_vec" 497 ;; 498 499 d30v-*-*) 500 targ_defvec=d30v_elf32_vec 501 ;; 502 503#ifdef BFD64 504 bpf-*-none) 505 targ_defvec=bpf_elf64_le_vec 506 targ_selvecs=bpf_elf64_be_vec 507 targ_underscore=yes 508 ;; 509#endif 510 511 epiphany-*-*) 512 targ_defvec=epiphany_elf32_vec 513 targ_underscore=yes 514 ;; 515 516 fido-*-elf* ) 517 targ_defvec=m68k_elf32_vec 518 ;; 519 520 fr30-*-elf) 521 targ_defvec=fr30_elf32_vec 522 ;; 523 524 frv-*-elf) 525 targ_defvec=frv_elf32_vec 526 targ_selvecs=frv_elf32_fdpic_vec 527 ;; 528 529 frv-*-*linux*) 530 targ_defvec=frv_elf32_fdpic_vec 531 targ_selvecs=frv_elf32_vec 532 ;; 533 534 moxie-*-elf | moxie-*-rtems* | moxie-*-uclinux) 535 targ_defvec=moxie_elf32_be_vec 536 targ_selvecs=moxie_elf32_le_vec 537 ;; 538 539 moxie-*-moxiebox*) 540 targ_defvec=moxie_elf32_le_vec 541 ;; 542 543 h8300*-*-elf | h8300*-*-rtems*) 544 targ_defvec=h8300_elf32_vec 545 targ_underscore=yes 546 ;; 547 548 h8300*-*-linux*) 549 targ_defvec=h8300_elf32_linux_vec 550 ;; 551 552#ifdef BFD64 553 hppa*64*-*-linux-*) 554 targ_defvec=hppa_elf64_linux_vec 555 targ_selvecs=hppa_elf64_vec 556 want64=true 557 ;; 558 hppa*64*-*-hpux11*) 559 targ_defvec=hppa_elf64_vec 560 targ_selvecs=hppa_elf64_linux_vec 561 targ_cflags=-DHPUX_LARGE_AR_IDS 562 want64=true 563 ;; 564#endif 565 566 hppa*-*-linux-*) 567 targ_defvec=hppa_elf32_linux_vec 568 targ_selvecs=hppa_elf32_vec 569 ;; 570 hppa*-*-netbsd*) 571 targ_defvec=hppa_elf32_nbsd_vec 572 targ_selvecs="hppa_elf32_vec hppa_elf32_linux_vec" 573 ;; 574 hppa*-*-*elf* | hppa*-*-lites* | hppa*-*-sysv4* | hppa*-*-openbsd*) 575 targ_defvec=hppa_elf32_vec 576 targ_selvecs=hppa_elf32_linux_vec 577 ;; 578 579 hppa*-*-bsd*) 580 targ_defvec=hppa_som_vec 581 targ_selvecs=hppa_elf32_vec 582 ;; 583 hppa*-*-hpux* | hppa*-*-hiux* | hppa*-*-mpeix*) 584 targ_defvec=hppa_som_vec 585 ;; 586 hppa*-*-osf*) 587 targ_defvec=hppa_som_vec 588 targ_selvecs=hppa_elf32_vec 589 ;; 590 591 i[3-7]86-*-elf* | i[3-7]86-*-rtems* | i[3-7]86-*-genode*) 592 targ_defvec=i386_elf32_vec 593 targ_selvecs="iamcu_elf32_vec i386_coff_vec" 594 ;; 595 i[3-7]86-*-solaris2*) 596 targ_defvec=i386_elf32_sol2_vec 597 targ_selvecs="iamcu_elf32_vec i386_coff_vec i386_pei_vec" 598 targ64_selvecs="x86_64_elf64_sol2_vec x86_64_pe_vec x86_64_pei_vec" 599 want64=true 600 ;; 601#ifdef BFD64 602 x86_64-*-solaris2*) 603 targ_defvec=i386_elf32_sol2_vec 604 targ_selvecs="x86_64_elf64_sol2_vec iamcu_elf32_vec i386_coff_vec i386_pei_vec x86_64_pe_vec x86_64_pei_vec" 605 want64=true 606 ;; 607#endif 608 i[3-7]86-*-nto*) 609 targ_defvec=i386_elf32_vec 610 targ_selvecs="iamcu_elf32_vec i386_coff_vec" 611 ;; 612 i[3-7]86-*-aros*) 613 targ_defvec=i386_elf32_vec 614 targ_selvecs=iamcu_elf32_vec 615 ;; 616 i[3-7]86-*-dicos*) 617 targ_defvec=i386_elf32_vec 618 targ_selvecs=iamcu_elf32_vec 619 targ64_selvecs="x86_64_elf64_vec" 620 ;; 621 *-*-msdosdjgpp* | *-*-go32* ) 622 targ_defvec=i386_coff_go32_vec 623 targ_selvecs="i386_coff_go32stubbed_vec i386_aout_vec" 624 ;; 625 i[3-7]86-*-darwin* | i[3-7]86-*-macos10* | i[3-7]86-*-rhapsody*) 626 targ_defvec=i386_mach_o_vec 627 targ_selvecs="mach_o_le_vec mach_o_be_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec" 628 targ64_selvecs=x86_64_mach_o_vec 629 targ_archs="$targ_archs bfd_powerpc_arch bfd_rs6000_arch" 630 ;; 631 i[3-7]86-*-bsd*) 632 targ_defvec=i386_aout_bsd_vec 633 targ_underscore=yes 634 ;; 635 i[3-7]86-*-dragonfly*) 636 targ_defvec=i386_elf32_vec 637 targ_selvecs=iamcu_elf32_vec 638 targ64_selvecs="x86_64_elf64_vec" 639 ;; 640 i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu) 641 targ_defvec=i386_elf32_fbsd_vec 642 targ_selvecs="i386_elf32_vec iamcu_elf32_vec i386_pei_vec i386_coff_vec" 643 targ64_selvecs="x86_64_elf64_fbsd_vec x86_64_elf64_vec x86_64_pe_vec x86_64_pei_vec" 644 # FreeBSD <= 4.0 supports only the old nonstandard way of ABI labelling. 645 case "${targ}" in 646 i[3-7]86-*-freebsd3* | i[3-7]86-*-freebsd4 | i[3-7]86-*-freebsd4.0*) 647 targ_cflags=-DOLD_FREEBSD_ABI_LABEL ;; 648 esac 649 ;; 650 i[3-7]86-*-netbsd* | i[3-7]86-*-knetbsd*-gnu) 651 targ_defvec=i386_elf32_vec 652 targ_selvecs="iamcu_elf32_vec" 653 targ64_selvecs="x86_64_elf64_vec" 654 ;; 655 i[3-7]86-*-openbsd*) 656 targ_defvec=i386_elf32_vec 657 targ_selvecs="iamcu_elf32_vec" 658 ;; 659 i[3-7]86-*-linux-*) 660 targ_defvec=i386_elf32_vec 661 targ_selvecs="iamcu_elf32_vec i386_pei_vec" 662 targ64_selvecs="x86_64_elf64_vec x86_64_elf32_vec x86_64_pe_vec x86_64_pei_vec" 663 ;; 664 i[3-7]86-*-redox*) 665 targ_defvec=i386_elf32_vec 666 targ_selvecs= 667 targ64_selvecs=x86_64_elf64_vec 668 ;; 669#ifdef BFD64 670 x86_64-*-cloudabi*) 671 targ_defvec=x86_64_elf64_cloudabi_vec 672 want64=true 673 ;; 674 x86_64-*-darwin*) 675 targ_defvec=x86_64_mach_o_vec 676 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" 677 targ_archs="$targ_archs bfd_powerpc_arch bfd_rs6000_arch" 678 want64=true 679 ;; 680 x86_64-*-dicos*) 681 targ_defvec=x86_64_elf64_vec 682 targ_selvecs="i386_elf32_vec iamcu_elf32_vec" 683 want64=true 684 ;; 685 x86_64-*-elf* | x86_64-*-rtems* | x86_64-*-fuchsia | x86_64-*-genode*) 686 targ_defvec=x86_64_elf64_vec 687 targ_selvecs="i386_elf32_vec iamcu_elf32_vec x86_64_elf32_vec" 688 case "${targ}" in 689 x86_64-*-rtems*) 690 targ_selvecs="${targ_selvecs} x86_64_pe_vec x86_64_pei_vec" 691 esac 692 want64=true 693 ;; 694 x86_64-*-dragonfly*) 695 targ_defvec=x86_64_elf64_vec 696 targ_selvecs="i386_elf32_vec iamcu_elf32_vec" 697 want64=true 698 ;; 699 x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu) 700 targ_defvec=x86_64_elf64_fbsd_vec 701 targ_selvecs="i386_elf32_fbsd_vec iamcu_elf32_vec i386_coff_vec i386_pei_vec x86_64_pe_vec x86_64_pei_vec i386_elf32_vec x86_64_elf64_vec" 702 want64=true 703 ;; 704 x86_64-*-haiku*) 705 targ_defvec=x86_64_elf64_vec 706 targ_selvecs="i386_elf32_vec" 707 want64=true 708 ;; 709 x86_64-*-netbsd* | x86_64-*-openbsd*) 710 targ_defvec=x86_64_elf64_vec 711 targ_selvecs="i386_elf32_vec iamcu_elf32_vec i386_coff_vec i386_pei_vec x86_64_pe_vec x86_64_pei_vec" 712 want64=true 713 ;; 714 x86_64-*-linux-*) 715 targ_defvec=x86_64_elf64_vec 716 targ_selvecs="i386_elf32_vec iamcu_elf32_vec x86_64_elf32_vec i386_pei_vec x86_64_pe_vec x86_64_pei_vec" 717 want64=true 718 ;; 719 x86_64-*-mingw* | x86_64-*-pe | x86_64-*-pep | x86_64-*-cygwin) 720 targ_defvec=x86_64_pe_vec 721 targ_selvecs="x86_64_pe_vec x86_64_pei_vec x86_64_pe_big_vec x86_64_elf64_vec i386_pe_vec i386_pei_vec i386_elf32_vec iamcu_elf32_vec pdb_vec" 722 want64=true 723 targ_underscore=no 724 ;; 725 x86_64-*-rdos*) 726 targ_defvec=x86_64_elf64_vec 727 want64=true 728 ;; 729 x86_64-*-redox*) 730 targ_defvec=x86_64_elf64_vec 731 targ_selvecs=i386_elf32_vec 732 want64=true 733 ;; 734#endif 735 i[3-7]86-*-lynxos*) 736 targ_defvec=i386_elf32_vec 737 targ_selvecs="iamcu_elf32_vec i386_coff_lynx_vec i386_aout_lynx_vec" 738 ;; 739 i[3-7]86-*-gnu*) 740 targ_defvec=i386_elf32_vec 741 targ_selvecs=iamcu_elf32_vec 742 ;; 743 i[3-7]86-*-msdos*) 744 targ_defvec=i386_aout_vec 745 targ_selvecs=i386_msdos_vec 746 ;; 747 i[3-7]86-*-moss*) 748 targ_defvec=i386_elf32_vec 749 targ_selvecs="iamcu_elf32_vec i386_msdos_vec i386_aout_vec" 750 ;; 751 i[3-7]86-*-beospe*) 752 targ_defvec=i386_pe_vec 753 targ_selvecs="i386_pe_vec i386_pei_vec" 754 ;; 755 i[3-7]86-*-beos*) 756 targ_defvec=i386_elf32_vec 757 targ_selvecs="iamcu_elf32_vec i386_pe_vec i386_pei_vec" 758 ;; 759 i[3-7]86-*-haiku*) 760 targ_defvec=i386_elf32_vec 761 targ_selvecs="i386_pei_vec" 762 ;; 763 i[3-7]86-*-interix*) 764 targ_defvec=i386_pei_vec 765 targ_selvecs="i386_pe_vec" 766 # FIXME: This should eventually be checked at runtime. 767 targ_cflags=-DSTRICT_PE_FORMAT 768 ;; 769 i[3-7]86-*-rdos*) 770 targ_defvec=i386_elf32_vec 771 targ_selvecs="iamcu_elf32_vec i386_coff_vec" 772 ;; 773 i[3-7]86-*-mingw32* | i[3-7]86-*-cygwin* | i[3-7]86-*-winnt | i[3-7]86-*-pe) 774 targ_defvec=i386_pe_vec 775 targ_selvecs="i386_pe_vec i386_pe_big_vec i386_pei_vec i386_elf32_vec iamcu_elf32_vec pdb_vec" 776 targ_underscore=yes 777 ;; 778 i[3-7]86-*-vxworks*) 779 targ_defvec=i386_elf32_vxworks_vec 780 targ_underscore=yes 781 ;; 782 783 ia16-*-elf) 784 targ_defvec=i386_elf32_vec 785 targ_selvecs="i386_msdos_vec i386_aout_vec" 786 ;; 787 788 ip2k-*-elf) 789 targ_defvec=ip2k_elf32_vec 790 targ_underscore=yes 791 ;; 792 793 iq2000-*-elf) 794 targ_defvec=iq2000_elf32_vec 795 ;; 796 797 lm32-*-elf | lm32-*-rtems*) 798 targ_defvec=lm32_elf32_vec 799 targ_selvecs=lm32_elf32_fdpic_vec 800 ;; 801 802 lm32-*-*linux*) 803 targ_defvec=lm32_elf32_fdpic_vec 804 targ_selvecs=lm32_elf32_vec 805 ;; 806 807 m32c-*-elf) 808 targ_defvec=m32c_elf32_vec 809 targ_underscore=yes 810 ;; 811 812 m32r*le-*-linux*) 813 targ_defvec=m32r_elf32_linux_le_vec 814 targ_selvecs="m32r_elf32_linux_vec m32r_elf32_linux_le_vec" 815 ;; 816 m32r*-*-linux*) 817 targ_defvec=m32r_elf32_linux_vec 818 targ_selvecs="m32r_elf32_linux_vec m32r_elf32_linux_le_vec" 819 ;; 820 m32r*le-*-*) 821 targ_defvec=m32r_elf32_le_vec 822 targ_selvecs="m32r_elf32_vec m32r_elf32_le_vec" 823 ;; 824 m32r-*-*) 825 targ_defvec=m32r_elf32_vec 826 ;; 827 828 m68*-*-haiku*) 829 targ_defvec=m68k_elf32_vec 830 ;; 831 m68hc11-*-* | m6811-*-*) 832 targ_defvec=m68hc11_elf32_vec 833 targ_selvecs="m68hc11_elf32_vec m68hc12_elf32_vec" 834 ;; 835 m68hc12-*-* | m6812-*-*) 836 targ_defvec=m68hc12_elf32_vec 837 targ_selvecs="m68hc11_elf32_vec m68hc12_elf32_vec" 838 ;; 839 840 m68*-*-*) 841 targ_defvec=m68k_elf32_vec 842 ;; 843 m68*-*-netbsdelf* | m5407-*-netbsdelf*) 844 targ_defvec=m68k_elf32_vec 845 targ_selvecs="m68k_aout_nbsd_vec m68k_aout_4knbsd_vec m68k_aout_hp300bsd_vec sparc_aout_sunos_be_vec" 846 ;; 847 848 s12z-*-*) 849 targ_defvec=s12z_elf32_vec 850 ;; 851 mcore-*-elf) 852 targ_defvec=mcore_elf32_be_vec 853 targ_selvecs="mcore_elf32_be_vec mcore_elf32_le_vec" 854 ;; 855 mcore-*-pe) 856 targ_defvec=mcore_pe_be_vec 857 targ_selvecs="mcore_pe_be_vec mcore_pe_le_vec mcore_pei_be_vec mcore_pei_le_vec" 858 ;; 859 860 mep-*-elf) 861 targ_defvec=mep_elf32_vec 862 targ_selvecs=mep_elf32_le_vec 863 ;; 864 865 metag-*-*) 866 targ_defvec=metag_elf32_vec 867 targ_underscore=yes 868 ;; 869 870 microblazeel*-*) 871 targ_defvec=microblaze_elf32_le_vec 872 targ_selvecs=microblaze_elf32_vec 873 ;; 874 875 microblaze*-*) 876 targ_defvec=microblaze_elf32_vec 877 targ_selvecs=microblaze_elf32_le_vec 878 ;; 879 880 mips*-big-*) 881 targ_defvec=mips_ecoff_be_vec 882 targ_selvecs=mips_ecoff_le_vec 883 ;; 884 885 mips*-dec-* | mips*el-*-ecoff*) 886 targ_defvec=mips_ecoff_le_vec 887 targ_selvecs=mips_ecoff_be_vec 888 ;; 889 mips*-*-ecoff*) 890 targ_defvec=mips_ecoff_be_vec 891 targ_selvecs=mips_ecoff_le_vec 892 ;; 893#ifdef BFD64 894 mips64*el-*-netbsd*) 895 targ_defvec=mips_elf32_ntrad_le_vec 896 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" 897 ;; 898 mips64*-*-netbsd*) 899 targ_defvec=mips_elf32_ntrad_be_vec 900 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" 901 ;; 902 mips*el-*-netbsd*) 903 targ_defvec=mips_elf32_trad_le_vec 904 targ_selvecs="mips_elf32_trad_be_vec mips_elf32_ntrad_le_vec mips_elf32_ntrad_be_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec mips_ecoff_le_vec mips_ecoff_be_vec" 905 ;; 906 mips*-*-netbsd*) 907 targ_defvec=mips_elf32_trad_be_vec 908 targ_selvecs="mips_elf32_trad_le_vec mips_elf32_ntrad_be_vec mips_elf32_ntrad_le_vec mips_elf64_trad_le_vec mips_elf64_trad_be_vec mips_ecoff_be_vec mips_ecoff_le_vec" 909 ;; 910 mips*el-*-haiku*) 911 targ_defvec=mips_elf32_le_vec 912 targ_selvecs="mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_le_vec mips_ecoff_be_vec" 913 ;; 914 mips*-*-irix6*) 915 targ_defvec=mips_elf32_n_be_vec 916 targ_selvecs="mips_elf32_n_le_vec mips_elf32_be_vec mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec" 917 ;; 918 mips64*-ps2-elf*) 919 targ_defvec=mips_elf32_n_le_vec 920 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" 921 ;; 922 mips*-ps2-elf*) 923 targ_defvec=mips_elf32_le_vec 924 targ_selvecs="mips_elf32_be_vec mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec" 925 ;; 926 mips*-*-irix5*) 927 targ_defvec=mips_elf32_be_vec 928 targ_selvecs="mips_elf32_le_vec mips_ecoff_be_vec mips_ecoff_le_vec" 929 ;; 930 mips*el-*-vxworks*) 931 targ_defvec=mips_elf32_vxworks_le_vec 932 targ_selvecs="mips_elf32_le_vec mips_elf32_vxworks_be_vec mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec" 933 ;; 934 mips*-*-vxworks*) 935 targ_defvec=mips_elf32_vxworks_be_vec 936 targ_selvecs="mips_elf32_be_vec mips_elf32_vxworks_le_vec mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec" 937 ;; 938 mips*el-sde-elf*) 939 targ_defvec=mips_elf32_trad_le_vec 940 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" 941 ;; 942 mips*-sde-elf* | mips*-mti-elf* | mips*-img-elf*) 943 targ_defvec=mips_elf32_trad_be_vec 944 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" 945 ;; 946 mips*el-*-elf* | mips*-*-chorus*) 947 targ_defvec=mips_elf32_le_vec 948 targ_selvecs="mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec" 949 ;; 950 mips*-*-elf* | mips*-*-rtems* | mips*-*-windiss | mips*-*-none) 951 targ_defvec=mips_elf32_be_vec 952 targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec" 953 ;; 954 mips64*el-*-netbsd*) 955 targ_defvec=mips_elf32_ntrad_le_vec 956 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" 957 ;; 958 mips64*-*-netbsd*) 959 targ_defvec=mips_elf32_ntrad_be_vec 960 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" 961 ;; 962 mips*el-*-netbsd*) 963 targ_defvec=mips_elf32_trad_le_vec 964 targ_selvecs="mips_elf32_trad_be_vec mips_elf32_ntrad_le_vec mips_elf32_ntrad_be_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec mips_ecoff_le_vec mips_ecoff_be_vec" 965 ;; 966 mips*-*-netbsd*) 967 targ_defvec=mips_elf32_trad_be_vec 968 targ_selvecs="mips_elf32_trad_le_vec mips_elf32_ntrad_be_vec mips_elf32_ntrad_le_vec mips_elf64_trad_le_vec mips_elf64_trad_be_vec mips_ecoff_be_vec mips_ecoff_le_vec" 969 ;; 970 mips64*-*-openbsd*) 971 targ_defvec=mips_elf64_trad_be_vec 972 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" 973 ;; 974 mips*el-*-openbsd*) 975 targ_defvec=mips_elf32_le_vec 976 targ_selvecs="mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_le_vec mips_ecoff_be_vec" 977 ;; 978 mips*-*-openbsd*) 979 targ_defvec=mips_elf32_be_vec 980 targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_be_vec mips_ecoff_le_vec" 981 ;; 982 mips64*el-*-linux*) 983 targ_defvec=mips_elf32_ntrad_le_vec 984 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" 985 ;; 986 mips64*-*-linux*) 987 targ_defvec=mips_elf32_ntrad_be_vec 988 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" 989 ;; 990 mips*el-*-linux*) 991 targ_defvec=mips_elf32_trad_le_vec 992 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" 993 ;; 994 mips*-*-linux*) 995 targ_defvec=mips_elf32_trad_be_vec 996 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" 997 ;; 998 mips64*el-*-freebsd* | mips64*el-*-kfreebsd*-gnu) 999 # FreeBSD vectors 1000 targ_defvec=mips_elf32_ntradfbsd_le_vec 1001 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" 1002 # Generic vectors 1003 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" 1004 ;; 1005 mips64*-*-freebsd* | mips64*-*-kfreebsd*-gnu) 1006 # FreeBSD vectors 1007 targ_defvec=mips_elf32_ntradfbsd_be_vec 1008 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" 1009 # Generic vectors 1010 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" 1011 ;; 1012 mips*el-*-freebsd* | mips*el-*-kfreebsd*-gnu) 1013 # FreeBSD vectors 1014 targ_defvec=mips_elf32_tradfbsd_le_vec 1015 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" 1016 # Generic vectors 1017 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" 1018 ;; 1019 mips*-*-freebsd* | mips*-*-kfreebsd*-gnu) 1020 # FreeBSD vectors 1021 targ_defvec=mips_elf32_tradfbsd_be_vec 1022 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" 1023 # Generic vectors 1024 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" 1025 ;; 1026 mmix-*-*) 1027 targ_defvec=mmix_elf64_vec 1028 targ_selvecs=mmix_mmo_vec 1029 want64=true 1030 ;; 1031#endif 1032 mn10200-*-*) 1033 targ_defvec=mn10200_elf32_vec 1034 targ_underscore=yes 1035 ;; 1036 1037 mn10300-*-*) 1038 targ_defvec=mn10300_elf32_vec 1039 targ_underscore=yes 1040 ;; 1041 1042 mt-*-elf) 1043 targ_defvec=mt_elf32_vec 1044 ;; 1045 1046 msp430-*-*) 1047 targ_defvec=msp430_elf32_vec 1048 targ_selvecs=msp430_elf32_ti_vec 1049 ;; 1050 1051 nds32*le-*-linux*) 1052 targ_defvec=nds32_elf32_linux_le_vec 1053 targ_selvecs=nds32_elf32_linux_be_vec 1054 ;; 1055 1056 nds32*be-*-linux*) 1057 targ_defvec=nds32_elf32_linux_be_vec 1058 targ_selvecs=nds32_elf32_linux_le_vec 1059 ;; 1060 1061 nds32*le-*-*) 1062 targ_defvec=nds32_elf32_le_vec 1063 targ_selvecs=nds32_elf32_be_vec 1064 ;; 1065 1066 nds32*be-*-*) 1067 targ_defvec=nds32_elf32_be_vec 1068 targ_selvecs=nds32_elf32_le_vec 1069 ;; 1070 1071#ifdef BFD64 1072 nfp-*-*) 1073 targ_defvec=nfp_elf64_vec 1074 ;; 1075#endif 1076 1077 ns32k-pc532-mach* | ns32k-pc532-ux*) 1078 targ_defvec=ns32k_aout_pc532mach_vec 1079 targ_underscore=yes 1080 ;; 1081 ns32k-*-lites* | ns32k-*-*bsd*) 1082 targ_defvec=ns32k_aout_pc532nbsd_vec 1083 targ_underscore=yes 1084 ;; 1085 1086 nios2eb-*-*) 1087 targ_defvec=nios2_elf32_be_vec 1088 targ_selvecs=nios2_elf32_le_vec 1089 ;; 1090 1091 nios2el-*-*) 1092 targ_defvec=nios2_elf32_le_vec 1093 targ_selvecs=nios2_elf32_be_vec 1094 ;; 1095 1096 nios2-*-*) 1097 targ_defvec=nios2_elf32_le_vec 1098 targ_selvecs=nios2_elf32_be_vec 1099 ;; 1100 1101 or1k-*-elf | or1k-*-linux* | or1k-*-rtems*) 1102 targ_defvec=or1k_elf32_vec 1103 ;; 1104 1105 or1knd-*-elf | or1knd-*-linux* | or1knd-*-rtems*) 1106 targ_defvec=or1k_elf32_vec 1107 ;; 1108 1109 pdp11-*-*) 1110 targ_defvec=pdp11_aout_vec 1111 targ_underscore=yes 1112 ;; 1113 1114 pj-*-*) 1115 targ_defvec=pj_elf32_vec 1116 targ_selvecs="pj_elf32_vec pj_elf32_le_vec" 1117 ;; 1118 1119 pjl-*-*) 1120 targ_defvec=pj_elf32_le_vec 1121 targ_selvecs="pj_elf32_le_vec pj_elf32_vec i386_elf32_vec iamcu_elf32_vec" 1122 ;; 1123 1124 powerpc-*-aix5.[01] | rs6000-*-aix5.[01]) 1125 targ_defvec=rs6000_xcoff_vec 1126 targ_selvecs="rs6000_xcoff64_aix_vec" 1127 want64=true 1128 ;; 1129 powerpc-*-haiku*) 1130 targ_defvec=powerpc_elf32_vec 1131 targ_selvecs="rs6000_xcoff_vec powerpc_elf32_le_vec pef_vec pef_xlib_vec powerpc_xcoff_vec powerpc_boot_vec" 1132 targ_cflags=-D__HAIKU_TARGET__ 1133 ;; 1134#ifdef BFD64 1135 powerpc64-*-aix5.[01]) 1136 targ_defvec=rs6000_xcoff64_aix_vec 1137 targ_selvecs="rs6000_xcoff_vec" 1138 want64=true 1139 ;; 1140#endif 1141 powerpc-*-aix[5-9]* | rs6000-*-aix[5-9]*) 1142 targ_cflags=-DAIX_WEAK_SUPPORT 1143 targ_defvec=rs6000_xcoff_vec 1144 targ_selvecs="rs6000_xcoff64_aix_vec" 1145 want64=true 1146 ;; 1147#ifdef BFD64 1148 powerpc64-*-aix[5-9]*) 1149 targ_cflags=-DAIX_WEAK_SUPPORT 1150 targ_defvec=rs6000_xcoff64_aix_vec 1151 targ_selvecs="rs6000_xcoff_vec" 1152 want64=true 1153 ;; 1154#endif 1155 1156 powerpc-*-aix* | powerpc-*-beos* | rs6000-*-*) 1157 targ_defvec=rs6000_xcoff_vec 1158 targ64_selvecs=rs6000_xcoff64_vec 1159 case "${targ}" in 1160 *-*-aix4.[3456789]* | *-*-aix[56789]*) 1161 want64=true;; 1162 *) 1163 targ_cflags=-DSMALL_ARCHIVE;; 1164 esac 1165 ;; 1166#ifdef BFD64 1167 powerpc64-*-aix*) 1168 targ_defvec=rs6000_xcoff64_vec 1169 targ_selvecs=rs6000_xcoff_vec 1170 want64=true 1171 ;; 1172 powerpc64-*-freebsd*) 1173 targ_defvec=powerpc_elf64_fbsd_vec 1174 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" 1175 want64=true 1176 ;; 1177 powerpc64le-*-freebsd*) 1178 targ_defvec=powerpc_elf64_fbsd_le_vec 1179 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" 1180 want64=true 1181 ;; 1182 powerpc64-*-elf* | powerpc-*-elf64* | powerpc64-*-linux* | \ 1183 powerpc64-*-*bsd*) 1184 targ_defvec=powerpc_elf64_vec 1185 targ_selvecs="powerpc_elf64_le_vec powerpc_elf32_vec powerpc_elf32_le_vec rs6000_xcoff_vec rs6000_xcoff64_vec rs6000_xcoff64_aix_vec" 1186 want64=true 1187 ;; 1188 powerpc64le-*-elf* | powerpcle-*-elf64* | powerpc64le-*-linux* | \ 1189 powerpc64le-*-*bsd*) 1190 targ_defvec=powerpc_elf64_le_vec 1191 targ_selvecs="powerpc_elf64_vec powerpc_elf32_le_vec powerpc_elf32_vec rs6000_xcoff_vec rs6000_xcoff64_vec rs6000_xcoff64_aix_vec" 1192 want64=true 1193 ;; 1194#endif 1195 powerpc-*-*freebsd*) 1196 targ_defvec=powerpc_elf32_fbsd_vec 1197 targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_elf32_le_vec powerpc_boot_vec" 1198 targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec powerpc_elf64_fbsd_vec" 1199 ;; 1200 powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \ 1201 powerpc-*-solaris2* | powerpc-*-linux-* | powerpc-*-rtems* | \ 1202 powerpc-*-chorus*) 1203 targ_defvec=powerpc_elf32_vec 1204 targ_selvecs="rs6000_xcoff_vec powerpc_elf32_le_vec powerpc_boot_vec" 1205 targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec" 1206 ;; 1207 powerpc-*-kaos*) 1208 targ_defvec=powerpc_elf32_vec 1209 targ_selvecs="powerpc_elf32_le_vec powerpc_boot_vec" 1210 targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec" 1211 ;; 1212 powerpc-*-darwin* | powerpc-*-macos10* | powerpc-*-rhapsody*) 1213 targ_defvec=mach_o_be_vec 1214 targ_selvecs="mach_o_be_vec mach_o_le_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec" 1215 targ_archs="$targ_archs bfd_i386_arch" 1216 ;; 1217 powerpc-*-macos*) 1218 targ_defvec=powerpc_xcoff_vec 1219 ;; 1220 powerpc-*-lynxos*) 1221 targ_defvec=powerpc_elf32_vec 1222 targ_selvecs="rs6000_xcoff_vec" 1223 targ_cflags=-DSMALL_ARCHIVE 1224 ;; 1225 powerpc-*-nto*) 1226 targ_defvec=powerpc_elf32_vec 1227 targ_selvecs="rs6000_xcoff_vec powerpc_elf32_le_vec powerpc_boot_vec" 1228 ;; 1229 powerpc-*-vxworks* | powerpc-*-windiss*) 1230 targ_defvec=powerpc_elf32_vxworks_vec 1231 targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_elf32_le_vec powerpc_boot_vec" 1232 targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec" 1233 ;; 1234 powerpcle-*-nto*) 1235 targ_defvec=powerpc_elf32_le_vec 1236 targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_boot_vec" 1237 ;; 1238 powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \ 1239 powerpcle-*-solaris2* | powerpcle-*-linux-* | powerpcle-*-vxworks*) 1240 targ_defvec=powerpc_elf32_le_vec 1241 targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_boot_vec" 1242 targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec" 1243 ;; 1244 1245 pru-*-*) 1246 targ_defvec=pru_elf32_vec 1247 ;; 1248 1249#ifdef BFD64 1250 riscvbe-*-* | riscv32be*-*-*) 1251 targ_defvec=riscv_elf32_be_vec 1252 targ_selvecs="riscv_elf32_vec riscv_elf64_vec riscv_elf32_be_vec riscv_elf64_be_vec" 1253 want64=true 1254 ;; 1255 riscv-*-* | riscv32*-*-*) 1256 targ_defvec=riscv_elf32_vec 1257 targ_selvecs="riscv_elf32_vec riscv_elf64_vec riscv_elf32_be_vec riscv_elf64_be_vec" 1258 want64=true 1259 ;; 1260 riscv64be*-*-*) 1261 targ_defvec=riscv_elf64_be_vec 1262 targ_selvecs="riscv_elf32_vec riscv_elf64_vec riscv_elf32_be_vec riscv_elf64_be_vec" 1263 want64=true 1264 ;; 1265 riscv64*-*-*) 1266 targ_defvec=riscv_elf64_vec 1267 targ_selvecs="riscv_elf32_vec riscv_elf64_vec riscv_elf32_be_vec riscv_elf64_be_vec" 1268 want64=true 1269 ;; 1270#endif 1271 1272 rl78-*-elf) 1273 targ_defvec=rl78_elf32_vec 1274 targ_underscore=yes 1275 ;; 1276 1277 rx-*-elf) 1278 targ_defvec=rx_elf32_le_vec 1279 targ_selvecs="rx_elf32_be_vec rx_elf32_le_vec rx_elf32_be_ns_vec" 1280 targ_underscore=yes 1281 ;; 1282 rx-*-linux*) 1283 targ_defvec=rx_elf32_linux_le_vec 1284 targ_selvecs="rx_elf32_linux_le_vec" 1285 ;; 1286 1287 s390-*-linux*) 1288 targ_defvec=s390_elf32_vec 1289 targ64_selvecs=s390_elf64_vec 1290 want64=true 1291 ;; 1292#ifdef BFD64 1293 s390x-*-linux*) 1294 targ_defvec=s390_elf64_vec 1295 targ_selvecs=s390_elf32_vec 1296 want64=true 1297 ;; 1298 s390x-*-tpf*) 1299 targ_defvec=s390_elf64_vec 1300 want64=true 1301 ;; 1302 1303 score*-*-elf*) 1304 targ_defvec=score_elf32_be_vec 1305 targ_selvecs=score_elf32_le_vec 1306 ;; 1307#endif /* BFD64 */ 1308 1309 sh*eb-*-linux*) 1310 targ_defvec=sh_elf32_linux_be_vec 1311 targ_selvecs=sh_elf32_linux_vec 1312 targ_selvecs="${targ_selvecs} sh_elf32_fdpic_le_vec sh_elf32_fdpic_be_vec" 1313 ;; 1314 sh*-*-linux*) 1315 targ_defvec=sh_elf32_linux_vec 1316 targ_selvecs=sh_elf32_linux_be_vec 1317 targ_selvecs="${targ_selvecs} sh_elf32_fdpic_le_vec sh_elf32_fdpic_be_vec" 1318 ;; 1319 1320 sh-*-uclinux* | sh[12]-*-uclinux*) 1321 targ_defvec=sh_elf32_vec 1322 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" 1323 ;; 1324 1325 sh*l*-*-netbsd*) 1326 targ_defvec=sh_elf32_nbsd_le_vec 1327 targ_selvecs="sh_elf32_nbsd_vec sh_coff_vec sh_coff_le_vec" 1328 ;; 1329 sh*-*-netbsd*) 1330 targ_defvec=sh_elf32_nbsd_vec 1331 targ_selvecs="sh_elf32_nbsd_le_vec sh_coff_vec sh_coff_le_vec" 1332 ;; 1333 1334 shl*-*-elf* | sh[1234]l*-*-elf* | sh3el*-*-elf* | shl*-*-kaos*) 1335 targ_defvec=sh_elf32_le_vec 1336 targ_selvecs="sh_elf32_vec sh_coff_le_vec sh_coff_vec sh_coff_small_le_vec sh_coff_small_vec" 1337 targ_underscore=yes 1338 ;; 1339 1340 sh-*-elf* | sh[1234]*-elf* | sh-*-rtems* | sh-*-kaos*) 1341 targ_defvec=sh_elf32_vec 1342 targ_selvecs="sh_elf32_le_vec sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec" 1343 targ_underscore=yes 1344 ;; 1345 1346 sh-*-nto*) 1347 targ_defvec=sh_elf32_vec 1348 targ_selvecs="sh_elf32_le_vec sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec" 1349 targ_underscore=yes 1350 ;; 1351 sh*-*-openbsd*) 1352 targ_defvec=sh_elf32_nbsd_le_vec 1353 targ_selvecs="sh_elf32_nbsd_vec sh_coff_vec sh_coff_le_vec" 1354 ;; 1355 sh-*-pe) 1356 targ_defvec=sh_pe_le_vec 1357 targ_selvecs="sh_pe_le_vec sh_pei_le_vec" 1358 targ_underscore=yes 1359 ;; 1360 sh-*-vxworks) 1361 targ_defvec=sh_elf32_vxworks_vec 1362 targ_selvecs="sh_elf32_vxworks_le_vec" 1363 # FIXME None of the following are actually used on this target, but 1364 # they're necessary for coff-sh.c (which is unconditionally used) to be 1365 # compiled correctly. 1366 targ_selvecs="$targ_selvecs sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec" 1367 targ_underscore=yes 1368 ;; 1369 sh-*-*) 1370 targ_defvec=sh_coff_vec 1371 targ_selvecs="sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec" 1372 targ_underscore=yes 1373 ;; 1374 1375 sparc-*-solaris2.[0-6] | sparc-*-solaris2.[0-6].*) 1376 # PR 27666: Do not include sparc_elf32_vec here. 1377 targ_defvec=sparc_elf32_sol2_vec 1378 ;; 1379#ifdef BFD64 1380 sparc-*-solaris2* | sparcv9-*-solaris2* | sparc64-*-solaris2*) 1381 # PR 27666: Do not include sparc_elf32_vec or sparc_elf64_vec here. 1382 targ_defvec=sparc_elf32_sol2_vec 1383 targ_selvecs="sparc_elf64_sol2_vec" 1384 want64=true 1385 ;; 1386 sparc64-*-haiku*) 1387 targ_defvec=sparc_elf64_vec 1388 targ_selvecs="sparc_elf64_vec sparc_elf32_vec" 1389 want64=true 1390 ;; 1391 sparc64-*-freebsd* | sparc64-*-kfreebsd*-gnu) 1392 targ_defvec=sparc_elf64_fbsd_vec 1393 targ_selvecs="sparc_elf64_vec sparc_elf32_vec" 1394 ;; 1395 sparc64*-*-*) 1396 targ_defvec=sparc_elf64_vec 1397 targ_selvecs="sparc_elf32_vec" 1398 want64=true 1399 ;; 1400#endif 1401 sparc-*-linux-* | sparcv*-*-linux-*) 1402 targ_defvec=sparc_elf32_vec 1403 targ_selvecs="sparc_elf64_vec" 1404 ;; 1405 sparc-*-vxworks*) 1406 targ_defvec=sparc_elf32_vxworks_vec 1407 targ_selvecs="sparc_elf32_vec" 1408 ;; 1409 sparc*-*-*) 1410 targ_defvec=sparc_elf32_vec 1411 ;; 1412 1413 spu-*-elf) 1414 targ_defvec=spu_elf32_vec 1415 want64=true 1416 ;; 1417 1418 tic6x-*-elf) 1419 targ_defvec=tic6x_elf32_c6000_le_vec 1420 targ_selvecs="tic6x_elf32_c6000_be_vec tic6x_elf32_le_vec tic6x_elf32_be_vec" 1421 ;; 1422 1423 tic6x-*-uclinux) 1424 targ_defvec=tic6x_elf32_linux_le_vec 1425 targ_selvecs="tic6x_elf32_linux_be_vec tic6x_elf32_le_vec tic6x_elf32_be_vec" 1426 ;; 1427 1428#ifdef BFD64 1429 tilegx-*-*) 1430 targ_defvec=tilegx_elf64_le_vec 1431 targ_selvecs="tilegx_elf64_be_vec tilegx_elf32_be_vec tilegx_elf32_le_vec" 1432 ;; 1433 tilegxbe-*-*) 1434 targ_defvec=tilegx_elf64_be_vec 1435 targ_selvecs="tilegx_elf64_le_vec tilegx_elf32_be_vec tilegx_elf32_le_vec" 1436 ;; 1437#endif 1438 1439 tilepro-*-*) 1440 targ_defvec=tilepro_elf32_vec 1441 ;; 1442 1443 ft32*-*-*) 1444 targ_defvec=ft32_elf32_vec 1445 ;; 1446 1447 v850*-*-*) 1448 targ_defvec=v850_elf32_vec 1449 targ_selvecs="v800_elf32_vec" 1450 targ_underscore=yes 1451 ;; 1452 1453 vax-*-netbsdaout*) 1454 targ_defvec=vax_aout_nbsd_vec 1455 targ_selvecs="vax_elf32_vec vax_aout_1knbsd_vec" 1456 targ_underscore=yes 1457 ;; 1458 1459 vax-*-netbsd*) 1460 targ_defvec=vax_elf32_vec 1461 targ_selvecs="vax_aout_nbsd_vec vax_aout_1knbsd_vec" 1462 ;; 1463 1464 vax-*-openbsd*) 1465 targ_defvec=vax_aout_nbsd_vec 1466 targ_underscore=yes 1467 ;; 1468 1469 vax-*-linux-*) 1470 targ_defvec=vax_elf32_vec 1471 ;; 1472 1473 visium-*-elf) 1474 targ_defvec=visium_elf32_vec 1475 ;; 1476 1477 wasm32-*-*) 1478 targ_defvec=wasm32_elf32_vec 1479 targ_selvecs="wasm_vec" 1480 ;; 1481 1482 xgate-*-*) 1483 targ_defvec=xgate_elf32_vec 1484 targ_selvecs="xgate_elf32_vec" 1485 ;; 1486 1487 xstormy16-*-elf) 1488 targ_defvec=xstormy16_elf32_vec 1489 ;; 1490 1491 xtensa*-*-*) 1492 targ_defvec=xtensa_elf32_le_vec 1493 targ_selvecs=xtensa_elf32_be_vec 1494 ;; 1495 1496 z80-*-coff) 1497 targ_defvec=z80_coff_vec 1498 targ_underscore=no 1499 ;; 1500 1501 z80-*-elf) 1502 targ_defvec=z80_elf32_vec 1503 targ_underscore=no 1504 ;; 1505 1506 z8k*-*-*) 1507 targ_defvec=z8k_coff_vec 1508 targ_underscore=yes 1509 ;; 1510 1511#ifdef BFD64 1512 loongarch32-*) 1513 targ_defvec=loongarch_elf32_vec 1514 targ_selvecs="loongarch_elf32_vec" 1515 want64=true 1516 ;; 1517 1518 loongarch64-*) 1519 targ_defvec=loongarch_elf64_vec 1520 targ_selvecs="loongarch_elf32_vec loongarch_elf64_vec loongarch64_pei_vec" 1521 want64=true 1522 ;; 1523#endif 1524 1525# END OF targmatch.h 1526 bpf-*-*) 1527 echo "*** Configuration $targ is not fully supported." >&2 1528 echo "*** Use bpf or bpf-*-none as the target instead." >&2 1529 exit 1 1530 ;; 1531 1532 *) 1533 echo 1>&2 "*** BFD does not support target ${targ}." 1534 echo 1>&2 "*** Look in bfd/config.bfd for supported targets." 1535 exit 1 1536 ;; 1537esac 1538 1539if test x"$targ_defvec" = x"aarch64-pe"; then 1540 # Not currently complete (and probably not stable), warn user 1541 echo "*** WARNING BFD aarch64-pe support not complete nor stable" 1542 echo "*** Do not rely on this for production purposes" 1543fi 1544 1545# All MIPS ELF targets need a 64-bit bfd_vma. 1546case "${targ_defvec} ${targ_selvecs}" in 1547 *mips_elf*) 1548 want64=true 1549 ;; 1550esac 1551 1552case "${host64}${want64}" in 1553 *true*) 1554 targ_selvecs="${targ_selvecs} ${targ64_selvecs}" 1555 ;; 1556esac 1557 1558# If we support any ELF target, then automatically add support for the 1559# generic ELF targets. This permits an objdump with some ELF support 1560# to be used on an arbitrary ELF file for anything other than 1561# relocation information. 1562case "${targ_defvec} ${targ_selvecs}" in 1563 *elf64* | *mips_elf32_n*) 1564 targ_selvecs="${targ_selvecs} elf64_le_vec elf64_be_vec elf32_le_vec elf32_be_vec" 1565 ;; 1566 *elf32*) 1567 targ_selvecs="${targ_selvecs} elf32_le_vec elf32_be_vec" 1568 ;; 1569esac 1570 1571# If we support Intel MCU target, then add support for bfd_iamcu_arch. 1572case "${targ_defvec} ${targ_selvecs}" in 1573 *iamcu_elf32*) 1574 targ_archs="$targ_archs bfd_iamcu_arch" 1575 ;; 1576esac 1577