old-cross-binutils/bfd/config.bfd
Will Newton 01e6c1a48d ARM: Add support for armeb-*-eabi*
At the moment it is possible to configure binutils for these triples
but the resulting linker defaults to little endian with huge numbers
of testsuite failures, which on the face of it does not appear to make
much sense.

This patch makes the behaviour similar to armeb-elf and the testsuite
is clean.

bfd/ChangeLog:

2014-08-20  Will Newton  <will.newton@linaro.org>

	* config.bfd: Default armeb-*-eabi* to big endian.

ld/ChangeLog:

2014-08-20  Will Newton  <will.newton@linaro.org>

	* configure.tgt: Default armeb-*-eabi* to big endian.
2014-08-20 16:58:36 +01:00

1759 lines
51 KiB
Text

# config.bfd
#
# Copyright (C) 2012-2014 Free Software Foundation, Inc.
#
# This file is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; see the file COPYING3. If not see
# <http://www.gnu.org/licenses/>.
#
# Convert a canonical host type into a BFD host type.
# Set shell variable targ to canonical target name, and run
# using ``. config.bfd''.
# Sets the following shell variables:
# targ_defvec Default vector for this target
# targ_selvecs Vectors to build for this target
# targ64_selvecs Vectors to build if --enable-64-bit-bfd is given
# or if host is 64 bit.
# targ_archs Architectures for this target
# targ_cflags $(CFLAGS) for this target (FIXME: pretty bogus)
# targ_underscore Whether underscores are used: yes or no
# Part of this file is processed by targmatch.sed to generate the
# targmatch.h file. The #ifdef and #endif lines that appear below are
# copied directly into targmatch.h.
# The binutils c++filt program wants to know whether underscores are
# stripped or not. That is why we set targ_underscore. c++filt uses
# this information to choose a default. This information is
# duplicated in the symbol_leading_char field of the BFD target
# vector, but c++filt does not deal with object files and is not
# linked against libbfd.a. It is not terribly important that c++filt
# get this right; it is just convenient.
targ_defvec=
targ_selvecs=
targ64_selvecs=
targ_cflags=
targ_underscore=no
# Catch obsolete configurations.
case $targ in
openrisc-*-* | or32-*-*)
echo "*** Configuration $targ is obsolete." >&2
echo "*** Use or1k-*-elf or or1k-*-linux as the target instead" >&2
exit 1
;;
null)
if test "x$enable_obsolete" != xyes; then
echo "*** Configuration $targ is obsolete." >&2
echo "*** Specify --enable-obsolete to build it anyway." >&2
echo "*** Support will be REMOVED in the next major release of BINUTILS," >&2
echo "*** unless a maintainer comes forward." >&2
exit 1
fi;;
esac
case $targ in
*-go32-rtems* | \
a29k-* | \
arm-*-oabi | \
hppa*-*-rtems* | \
i960-*-rtems* | \
i[3-7]86*-*-rtemscoff* | \
m68*-*-lynxos* | \
m68*-*-rtemscoff* | \
m68*-apollo-* | \
m68*-apple-aux* | \
m68*-bull-sysv* | \
maxq-*-coff | \
mips*el-*-rtems* | \
powerpcle-*-rtems* | \
sparc*-*-rtemsaout* | \
sparc-*-lynxos* | \
vax-*-vms* | \
null)
echo "*** Configuration $targ is obsolete." >&2
echo "*** Support has been REMOVED." >&2
exit 1
;;
esac
targ_cpu=`echo $targ | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
case "${targ_cpu}" in
aarch64*) targ_archs="bfd_aarch64_arch bfd_arm_arch";;
alpha*) targ_archs=bfd_alpha_arch ;;
am34*|am33_2.0*) targ_archs=bfd_mn10300_arch ;;
arm*) targ_archs=bfd_arm_arch ;;
bfin*) targ_archs=bfd_bfin_arch ;;
c30*) targ_archs=bfd_tic30_arch ;;
c4x*) targ_archs=bfd_tic4x_arch ;;
c54x*) targ_archs=bfd_tic54x_arch ;;
cr16*) targ_archs=bfd_cr16_arch ;;
crisv32) targ_archs=bfd_cris_arch ;;
crx*) targ_archs=bfd_crx_arch ;;
dlx*) targ_archs=bfd_dlx_arch ;;
fido*) targ_archs=bfd_m68k_arch ;;
hppa*) targ_archs=bfd_hppa_arch ;;
i[3-7]86) targ_archs=bfd_i386_arch ;;
i370) targ_archs=bfd_i370_arch ;;
lm32) targ_archs=bfd_lm32_arch ;;
m6811*|m68hc11*) targ_archs="bfd_m68hc11_arch bfd_m68hc12_arch bfd_m9s12x_arch bfd_m9s12xg_arch" ;;
m6812*|m68hc12*) targ_archs="bfd_m68hc12_arch bfd_m68hc11_arch bfd_m9s12x_arch bfd_m9s12xg_arch" ;;
m68*) targ_archs=bfd_m68k_arch ;;
m88*) targ_archs=bfd_m88k_arch ;;
microblaze*) targ_archs=bfd_microblaze_arch ;;
mips*) targ_archs=bfd_mips_arch ;;
nds32*) targ_archs=bfd_nds32_arch ;;
nios2*) targ_archs=bfd_nios2_arch ;;
or1k*|or1knd*) targ_archs=bfd_or1k_arch ;;
pdp11*) targ_archs=bfd_pdp11_arch ;;
pj*) targ_archs="bfd_pj_arch bfd_i386_arch";;
powerpc*) targ_archs="bfd_rs6000_arch bfd_powerpc_arch" ;;
rs6000) targ_archs="bfd_rs6000_arch bfd_powerpc_arch" ;;
s390*) targ_archs=bfd_s390_arch ;;
sh*) targ_archs=bfd_sh_arch ;;
sparc*) targ_archs=bfd_sparc_arch ;;
spu*) targ_archs=bfd_spu_arch ;;
tilegx*) targ_archs=bfd_tilegx_arch ;;
tilepro*) targ_archs=bfd_tilepro_arch ;;
v850*) targ_archs="bfd_v850_arch bfd_v850_rh850_arch" ;;
x86_64*) targ_archs=bfd_i386_arch ;;
xtensa*) targ_archs=bfd_xtensa_arch ;;
xgate) targ_archs=bfd_xgate_arch ;;
z80|r800) targ_archs=bfd_z80_arch ;;
z8k*) targ_archs=bfd_z8k_arch ;;
*) targ_archs=bfd_${targ_cpu}_arch ;;
esac
# WHEN ADDING ENTRIES TO THIS MATRIX:
# Make sure that the left side always has two dashes. Otherwise you
# can get spurious matches. Even for unambiguous cases, do this as a
# convention, else the table becomes a real mess to understand and maintain.
#
# Keep obsolete entries above the START comment, to keep them out of
# targmatch.h.
case "${targ}" in
mips*-dec-bsd*)
echo "This target is obsolete and has been removed."
exit 1
;;
mips*-*-mach3*)
echo "This target is obsolete and has been removed."
exit 1
;;
mips*-*-pe*)
echo "This target is obsolete and has been removed."
exit 1
;;
plugin)
targ_defvec=plugin_vec
targ_selvecs="plugin_vec"
;;
# START OF targmatch.h
#ifdef BFD64
aarch64-*-elf)
targ_defvec=aarch64_elf64_le_vec
targ_selvecs="aarch64_elf64_be_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_le_vec arm_elf32_be_vec"
want64=true
;;
aarch64_be-*-elf)
targ_defvec=aarch64_elf64_be_vec
targ_selvecs="aarch64_elf64_le_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_be_vec arm_elf32_le_vec"
want64=true
;;
aarch64-*-linux*)
targ_defvec=aarch64_elf64_le_vec
targ_selvecs="aarch64_elf64_be_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_le_vec arm_elf32_be_vec"
want64=true
;;
aarch64_be-*-linux*)
targ_defvec=aarch64_elf64_be_vec
targ_selvecs="aarch64_elf64_le_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_be_vec arm_elf32_le_vec"
want64=true
;;
alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu)
targ_defvec=alpha_elf64_fbsd_vec
targ_selvecs="alpha_elf64_vec alpha_ecoff_le_vec"
want64=true
# FreeBSD <= 4.0 supports only the old nonstandard way of ABI labelling.
case "${targ}" in
alpha*-*-freebsd3* | alpha*-*-freebsd4 | alpha*-*-freebsd4.0*)
targ_cflags=-DOLD_FREEBSD_ABI_LABEL ;;
esac
;;
alpha*-*-netbsd* | alpha*-*-openbsd*)
targ_defvec=alpha_elf64_vec
targ_selvecs=alpha_ecoff_le_vec
want64=true
;;
alpha*-*-netware*)
targ_defvec=alpha_ecoff_le_vec
targ_selvecs=alpha_nlm32_vec
want64=true
;;
alpha*-*-linux*ecoff*)
targ_defvec=alpha_ecoff_le_vec
targ_selvecs=alpha_elf64_vec
want64=true
;;
alpha*-*-linux-* | alpha*-*-elf*)
targ_defvec=alpha_elf64_vec
targ_selvecs=alpha_ecoff_le_vec
want64=true
;;
alpha*-*-*vms*)
targ_defvec=alpha_vms_vec
targ_selvecs=alpha_vms_lib_txt_vec
want64=true
;;
alpha*-*-*)
targ_defvec=alpha_ecoff_le_vec
want64=true
;;
ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu)
targ_defvec=ia64_elf64_le_vec
targ_selvecs="ia64_elf64_be_vec ia64_pei_vec"
want64=true
;;
ia64*-*-hpux*)
targ_defvec=ia64_elf32_hpux_be_vec
targ_selvecs="ia64_elf64_hpux_be_vec"
want64=true
;;
ia64*-*-*vms*)
targ_defvec=ia64_elf64_vms_vec
targ_selvecs=alpha_vms_lib_txt_vec
want64=true
;;
sparc64-*-freebsd* | sparc64-*-kfreebsd*-gnu)
targ_defvec=sparc_elf64_fbsd_vec
targ_selvecs="sparc_elf64_vec sparc_elf32_vec sparc_aout_sunos_be_vec"
;;
sparc64-*-netbsd* | sparc64-*-openbsd*)
targ_defvec=sparc_elf64_vec
targ_selvecs="sparc_elf32_vec sparc_aout_sunos_be_vec"
want64=true
;;
#endif /* BFD64 */
am34-*-linux* | am33_2.0-*-linux*)
targ_defvec=am33_elf32_linux_vec
;;
arc-*-elf*)
targ_defvec=arc_elf32_le_vec
targ_selvecs=arc_elf32_be_vec
;;
arm-*-nacl*)
targ_defvec=arm_elf32_nacl_le_vec
targ_selvecs="arm_elf32_nacl_be_vec i386_elf32_nacl_vec"
targ64_selvecs="x86_64_elf32_nacl_vec x86_64_elf64_nacl_vec"
targ_archs="$targ_archs bfd_i386_arch"
;;
armeb-*-nacl*)
targ_defvec=arm_elf32_nacl_be_vec
targ_selvecs="arm_elf32_nacl_le_vec i386_elf32_nacl_vec"
targ64_selvecs="x86_64_elf32_nacl_vec x86_64_elf64_nacl_vec"
targ_archs="$targ_archs bfd_i386_arch"
;;
armeb-*-netbsdelf*)
targ_defvec=arm_elf32_be_vec
targ_selvecs="arm_elf32_le_vec arm_aout_nbsd_vec"
;;
arm-*-netbsdelf*)
targ_defvec=arm_elf32_le_vec
targ_selvecs="arm_elf32_be_vec arm_aout_nbsd_vec"
;;
arm-*-netbsd* | arm-*-openbsd*)
targ_defvec=arm_aout_nbsd_vec
targ_selvecs="arm_elf32_le_vec arm_elf32_be_vec"
targ_underscore=yes
;;
arm-*-nto* | nto*arm*)
targ_defvec=arm_elf32_le_vec
targ_selvecs=arm_elf32_be_vec
targ_cflags=-D__QNXTARGET__
;;
arm-*-riscix*)
targ_defvec=arm_aout_riscix_vec
;;
arm-epoc-pe*)
targ_defvec=arm_pe_epoc_le_vec
targ_selvecs="arm_pe_epoc_le_vec arm_pe_epoc_be_vec arm_pei_epoc_le_vec arm_pei_epoc_be_vec"
targ_underscore=no
targ_cflags=-DARM_COFF_BUGFIX
;;
arm-wince-pe | arm-*-wince | arm*-*-mingw32ce* | arm*-*-cegcc*)
targ_defvec=arm_pe_wince_le_vec
targ_selvecs="arm_pe_wince_le_vec arm_pe_wince_be_vec arm_pei_wince_le_vec arm_pei_wince_be_vec"
targ_underscore=no
targ_cflags="-DARM_WINCE -DARM_COFF_BUGFIX"
;;
arm-*-pe*)
targ_defvec=arm_pe_le_vec
targ_selvecs="arm_pe_le_vec arm_pe_be_vec arm_pei_le_vec arm_pei_be_vec"
targ_underscore=yes
;;
arm-*-aout | armel-*-aout)
targ_defvec=arm_aout_le_vec
targ_selvecs=arm_aout_be_vec
;;
armeb-*-aout)
targ_defvec=arm_aout_be_vec
targ_selvecs=arm_aout_le_vec
;;
arm-*-coff)
targ_defvec=arm_coff_le_vec
targ_selvecs=arm_coff_be_vec
targ_underscore=yes
;;
arm-*-rtems*)
targ_defvec=arm_elf32_le_vec
targ_selvecs=arm_elf32_be_vec
;;
armeb-*-elf | arm*b-*-freebsd* | arm*b-*-linux-* | armeb-*-eabi*)
targ_defvec=arm_elf32_be_vec
targ_selvecs=arm_elf32_le_vec
;;
arm-*-kaos*)
targ_defvec=arm_elf32_le_vec
targ_selvecs=arm_elf32_be_vec
;;
arm-*-elf | arm*-*-freebsd* | arm*-*-linux-* | arm*-*-conix* | \
arm*-*-uclinux* | arm-*-kfreebsd*-gnu | \
arm*-*-eabi* )
targ_defvec=arm_elf32_le_vec
targ_selvecs=arm_elf32_be_vec
;;
arm*-*-vxworks | arm*-*-windiss)
targ_defvec=arm_elf32_vxworks_le_vec
targ_selvecs=arm_elf32_vxworks_be_vec
;;
arm*-*-symbianelf*)
targ_defvec=arm_elf32_symbian_le_vec
targ_selvecs=arm_elf32_symbian_be_vec
;;
arm9e-*-elf)
targ_defvec=arm_elf32_le_vec
targ_selvecs=arm_elf32_be_vec
;;
avr-*-*)
targ_defvec=avr_elf32_vec
;;
bfin-*-*)
targ_defvec=bfin_elf32_vec
targ_selvecs=bfin_elf32_fdpic_vec
targ_underscore=yes
;;
c30-*-*aout* | tic30-*-*aout*)
targ_defvec=tic30_aout_vec
;;
c30-*-*coff* | tic30-*-*coff*)
targ_defvec=tic30_coff_vec
;;
c4x-*-*coff* | tic4x-*-*coff* | tic4x-*-rtems*)
targ_defvec=tic4x_coff1_vec
targ_selvecs="tic4x_coff1_beh_vec tic4x_coff2_vec tic4x_coff2_beh_vec tic4x_coff0_vec tic4x_coff0_beh_vec"
targ_underscore=yes
;;
c54x*-*-*coff* | tic54x-*-*coff*)
targ_defvec=tic54x_coff1_vec
targ_selvecs="tic54x_coff1_beh_vec tic54x_coff2_vec tic54x_coff2_beh_vec tic54x_coff0_vec tic54x_coff0_beh_vec"
targ_underscore=yes
;;
cr16-*-elf* | cr16*-*-uclinux*)
targ_defvec=cr16_elf32_vec
targ_underscore=yes
;;
cr16c-*-elf*)
targ_defvec=cr16c_elf32_vec
targ_underscore=yes
;;
cris-*-* | crisv32-*-*)
targ_defvec=cris_aout_vec
targ_selvecs="cris_elf32_us_vec cris_elf32_vec ieee_vec"
targ_underscore=yes # Note: not true for cris_elf32_vec.
;;
crx-*-elf*)
targ_defvec=crx_elf32_vec
targ_underscore=yes
;;
d10v-*-*)
targ_defvec=d10v_elf32_vec
;;
dlx-*-elf*)
targ_defvec=dlx_elf32_be_vec
targ_selvecs="dlx_elf32_be_vec"
;;
d30v-*-*)
targ_defvec=d30v_elf32_vec
;;
epiphany-*-elf)
targ_defvec=epiphany_elf32_vec
;;
fido-*-elf* )
targ_defvec=m68k_elf32_vec
targ_selvecs="m68k_coff_vec ieee_vec"
;;
fr30-*-elf)
targ_defvec=fr30_elf32_vec
;;
frv-*-elf)
targ_defvec=frv_elf32_vec
targ_selvecs=frv_elf32_fdpic_vec
;;
frv-*-*linux*)
targ_defvec=frv_elf32_fdpic_vec
targ_selvecs=frv_elf32_vec
;;
moxie-*-elf | moxie-*-rtems* | moxie-*-uclinux)
targ_defvec=moxie_elf32_be_vec
targ_selvecs=moxie_elf32_le_vec
;;
moxie-*-moxiebox*)
targ_defvec=moxie_elf32_le_vec
;;
h8300*-*-rtemscoff*)
targ_defvec=h8300_coff_vec
targ_underscore=yes
;;
h8300*-*-elf | h8300*-*-rtems*)
targ_defvec=h8300_elf32_vec
targ_underscore=yes
;;
h8300*-*-*)
targ_defvec=h8300_coff_vec
targ_underscore=yes
;;
h8500-*-*)
targ_defvec=h8500_coff_vec
targ_underscore=yes
;;
#ifdef BFD64
hppa*64*-*-linux-*)
targ_defvec=hppa_elf64_linux_vec
targ_selvecs=hppa_elf64_vec
want64=true
;;
hppa*64*-*-hpux11*)
targ_defvec=hppa_elf64_vec
targ_selvecs=hppa_elf64_linux_vec
targ_cflags=-DHPUX_LARGE_AR_IDS
want64=true
;;
#endif
hppa*-*-linux-*)
targ_defvec=hppa_elf32_linux_vec
targ_selvecs=hppa_elf32_vec
;;
hppa*-*-netbsd*)
targ_defvec=hppa_elf32_nbsd_vec
targ_selvecs="hppa_elf32_vec hppa_elf32_linux_vec"
;;
hppa*-*-*elf* | hppa*-*-lites* | hppa*-*-sysv4* | hppa*-*-openbsd*)
targ_defvec=hppa_elf32_vec
targ_selvecs=hppa_elf32_linux_vec
;;
hppa*-*-bsd*)
targ_defvec=hppa_som_vec
targ_selvecs=hppa_elf32_vec
;;
hppa*-*-hpux* | hppa*-*-hiux* | hppa*-*-mpeix*)
targ_defvec=hppa_som_vec
;;
hppa*-*-osf*)
targ_defvec=hppa_som_vec
targ_selvecs=hppa_elf32_vec
;;
i370-*-*)
targ_defvec=i370_elf32_vec
targ_selvecs="i370_elf32_vec"
;;
i[3-7]86-*-sco3.2v5*coff)
targ_defvec=i386_coff_vec
targ_selvecs=i386_elf32_vec
;;
i[3-7]86-*-sysv4* | i[3-7]86-*-unixware* | \
i[3-7]86-*-elf | i[3-7]86-*-sco3.2v5* | \
i[3-7]86-*-dgux* | i[3-7]86-*-sysv5*)
targ_defvec=i386_elf32_vec
targ_selvecs=i386_coff_vec
;;
i[3-7]86-*-solaris2*)
targ_defvec=i386_elf32_sol2_vec
targ_selvecs="i386_coff_vec"
targ64_selvecs="x86_64_elf64_sol2_vec l1om_elf64_vec k1om_elf64_vec"
want64=true
;;
#ifdef BFD64
x86_64-*-solaris2*)
targ_defvec=i386_elf32_sol2_vec
targ_selvecs="x86_64_elf64_sol2_vec l1om_elf64_vec k1om_elf64_vec i386_coff_vec"
want64=true
;;
#endif
i[3-7]86-*-kaos*)
targ_defvec=i386_elf32_vec
targ_selvecs=i386_elf32_vec
;;
i[3-7]86-*-nto*)
targ_defvec=i386_elf32_vec
targ_selvecs=i386_coff_vec
;;
i[3-7]86-*-aros*)
targ_defvec=i386_elf32_vec
;;
i[3-7]86-*-chorus*)
targ_defvec=i386_elf32_vec
;;
i[3-7]86-*-dicos*)
targ_defvec=i386_elf32_vec
targ64_selvecs="x86_64_elf64_vec l1om_elf64_vec k1om_elf64_vec"
;;
*-*-msdosdjgpp* | *-*-go32* )
targ_defvec=i386_coff_go32_vec
targ_selvecs="i386_coff_go32stubbed_vec i386_aout_vec"
;;
i[3-7]86-*-sysv* | i[3-7]86-*-isc* | i[3-7]86-*-sco* | i[3-7]86-*-coff | \
i[3-7]86-*-aix*)
targ_defvec=i386_coff_vec
;;
i[3-7]86-*-rtems*)
targ_defvec=i386_elf32_vec
targ_selvecs="i386_coff_vec i386_aout_vec"
;;
i[3-7]86-*-darwin* | i[3-7]86-*-macos10* | i[3-7]86-*-rhapsody*)
targ_defvec=i386_mach_o_vec
targ_selvecs="mach_o_le_vec mach_o_be_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec"
targ64_selvecs=x86_64_mach_o_vec
targ_archs="$targ_archs bfd_powerpc_arch bfd_rs6000_arch"
;;
i[3-7]86-sequent-bsd*)
targ_defvec=i386_aout_dynix_vec
targ_underscore=yes
;;
i[3-7]86-*-bsd*)
targ_defvec=i386_aout_bsd_vec
targ_underscore=yes
;;
i[3-7]86-*-dragonfly*)
targ_defvec=i386_elf32_vec
targ64_selvecs="x86_64_elf64_vec l1om_elf64_vec k1om_elf64_vec"
;;
i[3-7]86-*-freebsdaout* | i[3-7]86-*-freebsd[12].* | \
i[3-7]86-*-freebsd[12])
targ_defvec=i386_aout_fbsd_vec
targ_selvecs=i386_aout_bsd_vec
targ_underscore=yes
;;
i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu)
targ_defvec=i386_elf32_fbsd_vec
targ_selvecs="i386_elf32_vec i386_pei_vec i386_coff_vec"
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"
# FreeBSD <= 4.0 supports only the old nonstandard way of ABI labelling.
case "${targ}" in
i[3-7]86-*-freebsd3* | i[3-7]86-*-freebsd4 | i[3-7]86-*-freebsd4.0*)
targ_cflags=-DOLD_FREEBSD_ABI_LABEL ;;
esac
;;
i[3-7]86-*-netbsdelf* | i[3-7]86-*-netbsd*-gnu* | i[3-7]86-*-knetbsd*-gnu)
targ_defvec=i386_elf32_vec
targ_selvecs=i386_aout_nbsd_vec
targ64_selvecs="x86_64_elf64_vec l1om_elf64_vec k1om_elf64_vec"
;;
i[3-7]86-*-netbsdpe*)
targ_defvec=i386_pe_vec
targ_selvecs="i386_pe_vec i386_pei_vec i386_elf32_vec"
;;
i[3-7]86-*-netbsdaout* | i[3-7]86-*-netbsd* | \
i[3-7]86-*-openbsd[0-2].* | i[3-7]86-*-openbsd3.[0-3])
targ_defvec=i386_aout_nbsd_vec
targ_selvecs="i386_elf32_vec i386_aout_bsd_vec"
targ_underscore=yes
;;
i[3-7]86-*-openbsd*)
targ_defvec=i386_elf32_vec
targ_selvecs=i386_aout_nbsd_vec
;;
i[3-7]86-*-netware*)
targ_defvec=i386_elf32_vec
targ_selvecs="i386_nlm32_vec i386_coff_vec i386_aout_vec"
;;
i[3-7]86-*-linux*aout*)
targ_defvec=i386_aout_linux_vec
targ_selvecs=i386_elf32_vec
targ_underscore=yes
;;
i[3-7]86-*-linux-*)
targ_defvec=i386_elf32_vec
targ_selvecs="i386_aout_linux_vec i386_pei_vec"
targ64_selvecs="x86_64_elf64_vec x86_64_elf32_vec x86_64_pei_vec l1om_elf64_vec k1om_elf64_vec"
;;
i[3-7]86-*-nacl*)
targ_defvec=i386_elf32_nacl_vec
targ_selvecs="arm_elf32_nacl_be_vec arm_elf32_nacl_le_vec"
targ64_selvecs="x86_64_elf64_nacl_vec x86_64_elf32_nacl_vec"
targ_archs="$targ_archs bfd_arm_arch"
;;
#ifdef BFD64
x86_64-*-darwin*)
targ_defvec=x86_64_mach_o_vec
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"
targ_archs="$targ_archs bfd_powerpc_arch bfd_rs6000_arch"
want64=true
;;
x86_64-*-dicos*)
targ_defvec=x86_64_elf64_vec
targ_selvecs="i386_elf32_vec l1om_elf64_vec k1om_elf64_vec"
want64=true
;;
x86_64-*-elf*)
targ_defvec=x86_64_elf64_vec
targ_selvecs="i386_elf32_vec x86_64_elf32_vec l1om_elf64_vec k1om_elf64_vec"
want64=true
;;
x86_64-*-dragonfly*)
targ_defvec=x86_64_elf64_vec
targ_selvecs="i386_elf32_vec l1om_elf64_vec k1om_elf64_vec"
want64=true
;;
x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu)
targ_defvec=x86_64_elf64_fbsd_vec
targ_selvecs="i386_elf32_fbsd_vec i386_coff_vec i386_pei_vec x86_64_pei_vec i386_elf32_vec x86_64_elf64_vec l1om_elf64_vec l1om_elf64_fbsd_vec k1om_elf64_vec k1om_elf64_fbsd_vec"
want64=true
;;
x86_64-*-netbsd* | x86_64-*-openbsd*)
targ_defvec=x86_64_elf64_vec
targ_selvecs="i386_elf32_vec i386_aout_nbsd_vec i386_coff_vec i386_pei_vec x86_64_pei_vec l1om_elf64_vec k1om_elf64_vec"
want64=true
;;
x86_64-*-linux-*)
targ_defvec=x86_64_elf64_vec
targ_selvecs="i386_elf32_vec x86_64_elf32_vec i386_aout_linux_vec i386_pei_vec x86_64_pei_vec l1om_elf64_vec k1om_elf64_vec"
want64=true
;;
x86_64-*-nacl*)
targ_defvec=x86_64_elf32_nacl_vec
targ_selvecs="i386_elf32_nacl_vec x86_64_elf64_nacl_vec arm_elf32_nacl_be_vec arm_elf32_nacl_le_vec"
targ_archs="$targ_archs bfd_arm_arch"
want64=true
;;
x86_64-*-mingw* | x86_64-*-pe | x86_64-*-pep | x86_64-*-cygwin)
targ_defvec=x86_64_pe_vec
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"
want64=true
targ_underscore=no
;;
x86_64-*-rdos*)
targ_defvec=x86_64_elf64_vec
want64=true
;;
#endif
i[3-7]86-*-lynxos*)
targ_defvec=i386_elf32_vec
targ_selvecs="i386_coff_lynx_vec i386_aout_lynx_vec"
;;
i[3-7]86-*-gnu*)
targ_defvec=i386_elf32_vec
;;
i[3-7]86-*-mach* | i[3-7]86-*-osf1mk*)
targ_defvec=i386_aout_mach3_vec
targ_cflags=-DSTAT_FOR_EXEC
targ_underscore=yes
;;
i[3-7]86-*-os9k)
targ_defvec=i386_aout_os9k_vec
;;
i[3-7]86-*-msdos*)
targ_defvec=i386_aout_vec
targ_selvecs=i386_msdos_vec
;;
i[3-7]86-*-moss*)
targ_defvec=i386_elf32_vec
targ_selvecs="i386_msdos_vec i386_aout_vec"
;;
i[3-7]86-*-beospe*)
targ_defvec=i386_pe_vec
targ_selvecs="i386_pe_vec i386_pei_vec"
;;
i[3-7]86-*-beoself* | i[3-7]86-*-beos*)
targ_defvec=i386_elf32_vec
targ_selvecs="i386_pe_vec i386_pei_vec"
;;
i[3-7]86-*-interix*)
targ_defvec=i386_pei_vec
targ_selvecs="i386_pe_vec"
# FIXME: This should eventually be checked at runtime.
targ_cflags=-DSTRICT_PE_FORMAT
;;
i[3-7]86-*-rdos*)
targ_defvec=i386_elf32_vec
targ_selvecs=i386_coff_vec
;;
i[3-7]86-*-mingw32* | i[3-7]86-*-cygwin* | i[3-7]86-*-winnt | i[3-7]86-*-pe)
targ_defvec=i386_pe_vec
targ_selvecs="i386_pe_vec i386_pei_vec i386_elf32_vec"
targ_underscore=yes
;;
i[3-7]86-none-*)
targ_defvec=i386_coff_vec
;;
i[3-7]86-*-aout* | i[3-7]86*-*-vsta*)
targ_defvec=i386_aout_vec
;;
i[3-7]86-*-vxworks*)
targ_defvec=i386_elf32_vxworks_vec
targ_underscore=yes
;;
i[3-7]86-*-chaos)
targ_defvec=i386_elf32_vec
targ_selfvecs=i386chaos_vec
;;
i860-*-mach3* | i860-*-osf1* | i860-*-coff*)
targ_defvec=i860_coff_vec
;;
i860-stardent-sysv4* | i860-stardent-elf*)
targ_defvec=i860_elf32_le_vec
targ_selvecs="i860_elf32_vec i860_elf32_le_vec"
;;
i860-*-sysv4* | i860-*-elf*)
targ_defvec=i860_elf32_vec
;;
i960-*-vxworks4* | i960-*-vxworks5.0)
targ_defvec=bout_le_vec
targ_selvecs="bout_be_vec icoff_le_vec icoff_be_vec ieee_vec"
targ_underscore=yes
;;
i960-*-vxworks5.* | i960-*-coff* | i960-*-sysv*)
targ_defvec=icoff_le_vec
targ_selvecs="icoff_be_vec bout_le_vec bout_be_vec ieee_vec"
targ_underscore=yes
;;
i960-*-vxworks* | i960-*-aout* | i960-*-bout* | i960-*-nindy*)
targ_defvec=bout_le_vec
targ_selvecs="bout_be_vec icoff_le_vec icoff_be_vec ieee_vec"
targ_underscore=yes
;;
i960-*-elf*)
targ_defvec=i960_elf32_vec
targ_selvecs="icoff_le_vec icoff_be_vec"
;;
ip2k-*-elf)
targ_defvec=ip2k_elf32_vec
;;
iq2000-*-elf)
targ_defvec=iq2000_elf32_vec
;;
lm32-*-elf | lm32-*-rtems*)
targ_defvec=lm32_elf32_vec
targ_selvecs=lm32_elf32_fdpic_vec
;;
lm32-*-*linux*)
targ_defvec=lm32_elf32_fdpic_vec
targ_selvecs=lm32_elf32_vec
;;
m32c-*-elf | m32c-*-rtems*)
targ_defvec=m32c_elf32_vec
;;
m32r*le-*-linux*)
targ_defvec=m32r_elf32_linux_le_vec
targ_selvecs="m32r_elf32_linux_vec m32r_elf32_linux_le_vec"
;;
m32r*-*-linux*)
targ_defvec=m32r_elf32_linux_vec
targ_selvecs="m32r_elf32_linux_vec m32r_elf32_linux_le_vec"
;;
m32r*le-*-*)
targ_defvec=m32r_elf32_le_vec
targ_selvecs="m32r_elf32_vec m32r_elf32_le_vec"
;;
m32r-*-*)
targ_defvec=m32r_elf32_vec
;;
m68hc11-*-* | m6811-*-*)
targ_defvec=m68hc11_elf32_vec
targ_selvecs="m68hc11_elf32_vec m68hc12_elf32_vec"
;;
m68hc12-*-* | m6812-*-*)
targ_defvec=m68hc12_elf32_vec
targ_selvecs="m68hc11_elf32_vec m68hc12_elf32_vec"
;;
m68*-motorola-sysv*)
targ_defvec=m68k_coff_sysv_vec
;;
m68*-hp-bsd*)
targ_defvec=m68k_aout_hp300bsd_vec
targ_underscore=yes
;;
m68*-*-aout*)
targ_defvec=aout0_be_vec
# We include core_cisco_be_vec here, rather than making a separate cisco
# configuration, so that cisco-core.c gets routinely tested at
# least for compilation.
targ_selvecs="core_cisco_be_vec ieee_vec"
targ_underscore=yes
;;
m68*-*-elf* | m68*-*-sysv4* | m68*-*-uclinux*)
targ_defvec=m68k_elf32_vec
targ_selvecs="m68k_coff_vec ieee_vec"
;;
m68*-*-rtems*)
targ_defvec=m68k_elf32_vec
targ_selvecs="m68k_coff_vec m68k_versados_vec ieee_vec aout0_be_vec"
;;
m68*-*-coff* | m68*-*-sysv*)
targ_defvec=m68k_coff_vec
targ_selvecs="m68k_coff_vec m68k_versados_vec ieee_vec"
;;
m68*-*-hpux*)
targ_defvec=m68k_aout_hp300hpux_vec
targ_underscore=yes
;;
m68*-*-linux*aout*)
targ_defvec=m68k_aout_linux_vec
targ_selvecs=m68k_elf32_vec
targ_underscore=yes
;;
m68*-*-linux-*)
targ_defvec=m68k_elf32_vec
targ_selvecs=m68k_aout_linux_vec
;;
m68*-*-gnu*)
targ_defvec=m68k_elf32_vec
# targ_selvecs=m68kmach3_vec
# targ_cflags=-DSTAT_FOR_EXEC
;;
m68*-hp*-netbsd*)
targ_defvec=m68k_aout_4knbsd_vec
targ_selvecs="m68k_aout_nbsd_vec m68k_aout_hp300bsd_vec sparc_aout_sunos_be_vec"
targ_underscore=yes
;;
m68*-*-netbsdelf*)
targ_defvec=m68k_elf32_vec
targ_selvecs="m68k_aout_nbsd_vec m68k_aout_4knbsd_vec m68k_aout_hp300bsd_vec sparc_aout_sunos_be_vec"
;;
m68*-*-netbsdaout* | m68*-*-netbsd*)
targ_defvec=m68k_aout_nbsd_vec
targ_selvecs="m68k_aout_4knbsd_vec m68k_elf32_vec m68k_aout_hp300bsd_vec sparc_aout_sunos_be_vec"
targ_underscore=yes
;;
m68*-*-openbsd*)
targ_defvec=m68k_aout_nbsd_vec
targ_selvecs="m68k_aout_4knbsd_vec m68k_aout_hp300bsd_vec sparc_aout_sunos_be_vec"
targ_underscore=yes
;;
m68*-*-sunos* | m68*-*-os68k* | m68*-*-vxworks* | m68*-netx-* | \
m68*-*-bsd* | m68*-*-vsta*)
targ_defvec=sparc_aout_sunos_be_vec
targ_underscore=yes
;;
m68*-ericsson-*)
targ_defvec=sparc_aout_sunos_be_vec
targ_selvecs="m68k_coff_vec m68k_versados_vec tekhex_vec"
targ_underscore=yes
;;
m68*-cbm-*)
targ_defvec=m68k_elf32_vec
targ_selvecs=m68k_coff_vec
;;
m68*-*-psos*)
targ_defvec=m68k_elf32_vec
targ_selvecs=ieee_vec
targ_underscore=yes
;;
m88*-harris-cxux* | m88*-*-dgux* | m88*-*-sysv4*)
targ_defvec=m88k_elf32_vec
targ_selvecs=m88k_coff_bcs_vec
;;
m88*-*-mach3*)
targ_defvec=m88k_aout_mach3_vec
targ_cflags=-DSTAT_FOR_EXEC
;;
m88*-*-openbsd*)
targ_defvec=m88k_aout_obsd_vec
targ_underscore=yes
;;
m88*-*-*)
targ_defvec=m88k_coff_bcs_vec
targ_underscore=yes
;;
mcore-*-elf)
targ_defvec=mcore_elf32_be_vec
targ_selvecs="mcore_elf32_be_vec mcore_elf32_le_vec"
;;
mcore-*-pe)
targ_defvec=mcore_pe_be_vec
targ_selvecs="mcore_pe_be_vec mcore_pe_le_vec mcore_pei_be_vec mcore_pei_le_vec"
;;
mep-*-elf)
targ_defvec=mep_elf32_vec
targ_selvecs=mep_elf32_le_vec
;;
metag-*-*)
targ_defvec=metag_elf32_vec
targ_underscore=yes
;;
microblazeel*-*)
targ_defvec=microblaze_elf32_le_vec
targ_selvecs=microblaze_elf32_vec
;;
microblaze*-*)
targ_defvec=microblaze_elf32_vec
targ_selvecs=microblaze_elf32_le_vec
;;
mips*-big-*)
targ_defvec=mips_ecoff_be_vec
targ_selvecs=mips_ecoff_le_vec
;;
#ifdef BFD64
mips*el-*-netbsd*)
targ_defvec=mips_elf32_trad_le_vec
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"
;;
mips*-*-netbsd*)
targ_defvec=mips_elf32_trad_be_vec
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"
;;
#endif
mips*-dec-* | mips*el-*-ecoff*)
targ_defvec=mips_ecoff_le_vec
targ_selvecs=mips_ecoff_be_vec
;;
mips*-*-ecoff*)
targ_defvec=mips_ecoff_be_vec
targ_selvecs=mips_ecoff_le_vec
;;
#ifdef BFD64
mips*-*-irix6*)
targ_defvec=mips_elf32_n_be_vec
targ_selvecs="mips_elf32_n_le_vec mips_elf32_be_vec mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec"
;;
mips64*-ps2-elf*)
targ_defvec=mips_elf32_n_le_vec
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"
;;
mips*-ps2-elf*)
targ_defvec=mips_elf32_le_vec
targ_selvecs="mips_elf32_be_vec mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec"
;;
mips*-*-irix5*)
targ_defvec=mips_elf32_be_vec
targ_selvecs="mips_elf32_le_vec mips_ecoff_be_vec mips_ecoff_le_vec"
;;
#endif
mips*-sgi-* | mips*-*-bsd*)
targ_defvec=mips_ecoff_be_vec
targ_selvecs=mips_ecoff_le_vec
;;
mips*-*-lnews*)
targ_defvec=mips_ecoff_bele_vec
targ_selvecs="mips_ecoff_le_vec mips_ecoff_be_vec"
;;
#ifdef BFD64
mips*-*-sysv4*)
targ_defvec=mips_elf32_trad_be_vec
targ_selvecs="mips_elf32_trad_le_vec mips_ecoff_be_vec mips_ecoff_le_vec"
;;
#endif
mips*-*-sysv* | mips*-*-riscos*)
targ_defvec=mips_ecoff_be_vec
targ_selvecs=mips_ecoff_le_vec
;;
#ifdef BFD64
mips*el-*-vxworks*)
targ_defvec=mips_elf32_vxworks_le_vec
targ_selvecs="mips_elf32_le_vec mips_elf32_vxworks_be_vec mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec"
;;
mips*-*-vxworks*)
targ_defvec=mips_elf32_vxworks_be_vec
targ_selvecs="mips_elf32_be_vec mips_elf32_vxworks_le_vec mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec"
;;
mips*el-sde-elf*)
targ_defvec=mips_elf32_trad_le_vec
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"
;;
mips*-sde-elf* | mips*-mti-elf*)
targ_defvec=mips_elf32_trad_be_vec
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"
;;
mips*el-*-elf* | mips*el-*-vxworks* | mips*-*-chorus*)
targ_defvec=mips_elf32_le_vec
targ_selvecs="mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec"
;;
mips*-*-elf* | mips*-*-rtems* | mips*-*-vxworks | mips*-*-windiss)
targ_defvec=mips_elf32_be_vec
targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec"
;;
mips*-*-none)
targ_defvec=mips_elf32_be_vec
targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec"
;;
mips64*-*-openbsd*)
targ_defvec=mips_elf64_trad_be_vec
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*el-*-openbsd*)
targ_defvec=mips_elf32_le_vec
targ_selvecs="mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_le_vec mips_ecoff_be_vec"
;;
mips*-*-openbsd*)
targ_defvec=mips_elf32_be_vec
targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_be_vec mips_ecoff_le_vec"
;;
mips64*el-*-linux*)
targ_defvec=mips_elf32_ntrad_le_vec
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"
;;
mips64*-*-linux*)
targ_defvec=mips_elf32_ntrad_be_vec
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"
;;
mips*el-*-linux*)
targ_defvec=mips_elf32_trad_le_vec
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"
;;
mips*-*-linux*)
targ_defvec=mips_elf32_trad_be_vec
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"
;;
mips64*el-*-freebsd* | mips64*el-*-kfreebsd*-gnu)
# FreeBSD vectors
targ_defvec=mips_elf32_ntradfbsd_le_vec
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"
# Generic vectors
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"
;;
mips64*-*-freebsd* | mips64*-*-kfreebsd*-gnu)
# FreeBSD vectors
targ_defvec=mips_elf32_ntradfbsd_be_vec
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"
# Generic vectors
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"
;;
mips*el-*-freebsd* | mips*el-*-kfreebsd*-gnu)
# FreeBSD vectors
targ_defvec=mips_elf32_tradfbsd_le_vec
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"
# Generic vectors
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"
;;
mips*-*-freebsd* | mips*-*-kfreebsd*-gnu)
# FreeBSD vectors
targ_defvec=mips_elf32_tradfbsd_be_vec
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"
# Generic vectors
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"
;;
mmix-*-*)
targ_defvec=mmix_elf64_vec
targ_selvecs=mmix_mmo_vec
want64=true
;;
#endif
mn10200-*-*)
targ_defvec=mn10200_elf32_vec
;;
mn10300-*-*)
targ_defvec=mn10300_elf32_vec
targ_underscore=yes
;;
mt-*-elf)
targ_defvec=mt_elf32_vec
;;
msp430-*-*)
targ_defvec=msp430_elf32_vec
targ_selvecs=msp430_elf32_ti_vec
;;
nds32*le-*-linux*)
targ_defvec=nds32_elf32_linux_le_vec
targ_selvecs=nds32_elf32_linux_be_vec
;;
nds32*be-*-linux*)
targ_defvec=nds32_elf32_linux_be_vec
targ_selvecs=nds32_elf32_linux_le_vec
;;
nds32*le-*-*)
targ_defvec=nds32_elf32_le_vec
targ_selvecs=nds32_elf32_be_vec
;;
nds32*be-*-*)
targ_defvec=nds32_elf32_be_vec
targ_selvecs=nds32_elf32_le_vec
;;
ns32k-pc532-mach* | ns32k-pc532-ux*)
targ_defvec=ns32k_aout_pc532mach_vec
targ_underscore=yes
;;
ns32k-*-netbsd* | ns32k-*-lites* | ns32k-*-openbsd*)
targ_defvec=ns32k_aout_pc532nbsd_vec
targ_underscore=yes
;;
nios2eb-*-*)
targ_defvec=nios2_elf32_be_vec
targ_selvecs=nios2_elf32_le_vec
;;
nios2el-*-*)
targ_defvec=nios2_elf32_le_vec
targ_selvecs=nios2_elf32_be_vec
;;
nios2-*-*)
targ_defvec=nios2_elf32_le_vec
targ_selvecs=nios2_elf32_be_vec
;;
or1k-*-elf | or1k-*-linux* | or1k-*-rtems*)
targ_defvec=or1k_elf32_vec
;;
or1knd-*-elf | or1knd-*-linux* | or1k-*-rtems*)
targ_defvec=or1k_elf32_vec
;;
pdp11-*-*)
targ_defvec=pdp11_aout_vec
targ_underscore=yes
;;
pj-*-*)
targ_defvec=pj_elf32_vec
targ_selvecs="pj_elf32_vec pj_elf32_le_vec"
;;
pjl-*-*)
targ_defvec=pj_elf32_le_vec
targ_selvecs="pj_elf32_le_vec pj_elf32_vec i386_elf32_vec"
;;
powerpc-*-aix5.[01] | rs6000-*-aix5.[01])
targ_defvec=rs6000_xcoff_vec
targ_selvecs="rs6000_xcoff64_aix_vec"
want64=true
;;
#ifdef BFD64
powerpc64-*-aix5.[01] | rs6000-*-aix5.[01])
targ_defvec=rs6000_xcoff64_aix_vec
targ_selvecs="rs6000_xcoff_vec"
want64=true
;;
#endif
powerpc-*-aix[5-9]* | rs6000-*-aix[5-9]*)
targ_cflags=-DAIX_WEAK_SUPPORT
targ_defvec=rs6000_xcoff_vec
targ_selvecs="rs6000_xcoff64_aix_vec"
want64=true
;;
#ifdef BFD64
powerpc64-*-aix[5-9]* | rs6000-*-aix[5-9]*)
targ_cflags=-DAIX_WEAK_SUPPORT
targ_defvec=rs6000_xcoff64_aix_vec
targ_selvecs="rs6000_xcoff_vec"
want64=true
;;
#endif
powerpc-*-aix* | powerpc-*-beos* | rs6000-*-*)
targ_defvec=rs6000_xcoff_vec
targ64_selvecs=rs6000_xcoff64_vec
case "${targ}" in
*-*-aix4.[3456789]* | *-*-aix[56789]*)
want64=true;;
*)
targ_cflags=-DSMALL_ARCHIVE;;
esac
;;
#ifdef BFD64
powerpc64-*-aix*)
targ_defvec=rs6000_xcoff64_vec
targ_selvecs=rs6000_xcoff_vec
want64=true
;;
powerpc64-*-freebsd*)
targ_defvec=powerpc_elf64_fbsd_vec
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"
want64=true
;;
powerpc64-*-elf* | powerpc-*-elf64* | powerpc64-*-linux* | \
powerpc64-*-*bsd*)
targ_defvec=powerpc_elf64_vec
targ_selvecs="powerpc_elf64_le_vec powerpc_elf32_vec powerpc_elf32_le_vec rs6000_xcoff_vec rs6000_xcoff64_vec rs6000_xcoff64_aix_vec"
want64=true
;;
powerpc64le-*-elf* | powerpcle-*-elf64* | powerpc64le-*-linux* | \
powerpc64le-*-*bsd*)
targ_defvec=powerpc_elf64_le_vec
targ_selvecs="powerpc_elf64_vec powerpc_elf32_le_vec powerpc_elf32_vec rs6000_xcoff_vec rs6000_xcoff64_vec rs6000_xcoff64_aix_vec"
want64=true
;;
#endif
powerpc-*-*freebsd*)
targ_defvec=powerpc_elf32_fbsd_vec
targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_elf32_le_vec powerpc_boot_vec"
targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec powerpc_elf64_fbsd_vec"
;;
powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \
powerpc-*-solaris2* | powerpc-*-linux-* | powerpc-*-rtems* | \
powerpc-*-chorus*)
targ_defvec=powerpc_elf32_vec
targ_selvecs="rs6000_xcoff_vec powerpc_elf32_le_vec powerpc_boot_vec"
targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec"
;;
powerpc-*-kaos*)
targ_defvec=powerpc_elf32_vec
targ_selvecs="powerpc_elf32_le_vec powerpc_boot_vec"
targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec"
;;
powerpc-*-darwin* | powerpc-*-macos10* | powerpc-*-rhapsody*)
targ_defvec=mach_o_be_vec
targ_selvecs="mach_o_be_vec mach_o_le_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec"
targ_archs="$targ_archs bfd_i386_arch"
;;
powerpc-*-macos*)
targ_defvec=powerpc_xcoff_vec
;;
powerpc-*-lynxos*)
targ_defvec=powerpc_elf32_vec
targ_selvecs="rs6000_xcoff_vec"
targ_cflags=-DSMALL_ARCHIVE
;;
powerpc-*-netware*)
targ_defvec=powerpc_elf32_vec
targ_selvecs="powerpc_nlm32_vec rs6000_xcoff_vec"
;;
powerpc-*-nto*)
targ_defvec=powerpc_elf32_vec
targ_selvecs="rs6000_xcoff_vec powerpc_elf32_le_vec powerpc_boot_vec"
;;
powerpc-*-vxworks* | powerpc-*-windiss*)
targ_defvec=powerpc_elf32_vxworks_vec
targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_elf32_le_vec powerpc_boot_vec"
targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec"
;;
powerpcle-*-nto*)
targ_defvec=powerpc_elf32_le_vec
targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_boot_vec"
;;
powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \
powerpcle-*-solaris2* | powerpcle-*-linux-* | powerpcle-*-vxworks*)
targ_defvec=powerpc_elf32_le_vec
targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_boot_vec"
targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec"
;;
powerpcle-*-pe | powerpcle-*-winnt* | powerpcle-*-cygwin*)
targ_defvec=powerpc_pe_le_vec
targ_selvecs="powerpc_pei_le_vec powerpc_pei_vec powerpc_pe_le_vec powerpc_pe_vec"
;;
rl78-*-elf)
targ_defvec=rl78_elf32_vec
;;
rx-*-elf)
targ_defvec=rx_elf32_le_vec
targ_selvecs="rx_elf32_be_vec rx_elf32_le_vec rx_elf32_be_ns_vec"
;;
s390-*-linux*)
targ_defvec=s390_elf32_vec
targ64_selvecs=s390_elf64_vec
want64=true
;;
#ifdef BFD64
s390x-*-linux*)
targ_defvec=s390_elf64_vec
targ_selvecs=s390_elf32_vec
want64=true
;;
s390x-*-tpf*)
targ_defvec=s390_elf64_vec
want64=true
;;
score*-*-elf*)
targ_defvec=score_elf32_be_vec
targ_selvecs=score_elf32_le_vec
;;
sh64l*-*-elf*)
targ_defvec=sh64_elf32_le_vec
targ_selvecs="sh64_elf32_vec sh64_elf64_le_vec sh64_elf64_vec sh_elf32_le_vec sh_elf32_vec"
targ_underscore=yes
want64=true
;;
sh64-*-elf*)
targ_defvec=sh64_elf32_vec
targ_selvecs="sh64_elf32_le_vec sh64_elf64_vec sh64_elf64_le_vec sh_elf32_vec sh_elf32_le_vec"
targ_underscore=yes
want64=true
;;
sh64eb-*-linux*)
targ_defvec=sh64_elf32_linux_be_vec
targ_selvecs="sh64_elf32_linux_vec sh64_elf64_linux_be_vec sh64_elf64_linux_vec sh_elf32_linux_be_vec sh_elf32_linux_vec"
want64=true
;;
sh64-*-linux*)
targ_defvec=sh64_elf32_linux_vec
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"
want64=true
;;
sh-*-linux*)
targ_defvec=sh_elf32_linux_be_vec
targ_selvecs="sh_elf32_linux_vec sh64_elf32_linux_vec sh64_elf32_linux_be_vec sh64_elf64_linux_vec sh64_elf64_linux_be_vec"
want64=true
;;
#endif /* BFD64 */
sh*eb-*-linux*)
targ_defvec=sh_elf32_linux_be_vec
targ_selvecs=sh_elf32_linux_vec
;;
sh*-*-linux*)
targ_defvec=sh_elf32_linux_vec
targ_selvecs=sh_elf32_linux_be_vec
;;
sh-*-uclinux* | sh[12]-*-uclinux*)
targ_defvec=sh_elf32_vec
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"
#ifdef BFD64
targ_selvecs="${targ_selvecs} sh64_elf32_linux_vec sh64_elf32_linux_be_vec sh64_elf64_linux_vec sh64_elf64_linux_be_vec"
#endif
;;
#ifdef BFD64
sh5le-*-netbsd*)
targ_defvec=sh64_elf32_nbsd_le_vec
targ_selvecs="sh64_elf32_nbsd_vec sh64_elf64_nbsd_le_vec sh64_elf64_nbsd_vec sh_elf32_nbsd_vec sh_elf32_nbsd_le_vec"
want64=true
;;
sh5-*-netbsd*)
targ_defvec=sh64_elf32_nbsd_vec
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"
want64=true
;;
sh64le-*-netbsd*)
targ_defvec=sh64_elf64_nbsd_le_vec
targ_selvecs="sh64_elf64_nbsd_vec sh64_elf32_nbsd_le_vec sh64_elf32_nbsd_vec sh_elf32_nbsd_vec sh_elf32_nbsd_le_vec"
want64=true
;;
sh64-*-netbsd*)
targ_defvec=sh64_elf64_nbsd_vec
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"
want64=true
;;
sh*l*-*-netbsdelf*)
targ_defvec=sh_elf32_nbsd_le_vec
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"
want64=true
;;
sh-*-netbsdelf*)
targ_defvec=sh_elf32_nbsd_vec
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"
want64=true
;;
#endif
sh*-*-netbsdelf*)
targ_defvec=sh_elf32_nbsd_vec
targ_selvecs="sh_elf32_nbsd_le_vec sh_coff_vec sh_coff_le_vec"
;;
sh*-*-symbianelf*)
targ_defvec=sh_elf32_symbian_le_vec
targ_selvecs="sh_coff_le_vec sh_coff_small_le_vec"
targ_underscore=yes
;;
#ifdef BFD64
shl*-*-elf* | sh[1234]l*-*-elf* | sh3el*-*-elf* | shl*-*-kaos*)
targ_defvec=sh_elf32_le_vec
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"
targ_underscore=yes
want64=true
;;
#endif
sh-*-rtemscoff*)
targ_defvec=sh_coff_vec
targ_selvecs="sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec"
targ_underscore=yes
;;
#ifdef BFD64
sh-*-elf* | sh[1234]*-elf* | sh-*-rtems* | sh-*-kaos*)
targ_defvec=sh_elf32_vec
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"
targ_underscore=yes
want64=true
;;
#endif
sh-*-nto*)
targ_defvec=sh_elf32_vec
targ_selvecs="sh_elf32_le_vec sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec"
targ_underscore=yes
;;
sh*-*-openbsd*)
targ_defvec=sh_elf32_nbsd_le_vec
targ_selvecs="sh_elf32_nbsd_vec sh_coff_vec sh_coff_le_vec"
;;
sh-*-pe)
targ_defvec=sh_pe_le_vec
targ_selvecs="sh_pe_le_vec sh_pei_le_vec"
targ_underscore=yes
;;
sh-*-vxworks)
targ_defvec=sh_elf32_vxworks_vec
targ_selvecs="sh_elf32_vxworks_le_vec"
# FIXME None of the following are actually used on this target, but
# they're necessary for coff-sh.c (which is unconditionally used) to be
# compiled correctly.
targ_selvecs="$targ_selvecs sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec"
targ_underscore=yes
;;
sh-*-*)
targ_defvec=sh_coff_vec
targ_selvecs="sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec"
targ_underscore=yes
;;
sparclet-*-aout*)
targ_defvec=sparc_aout_sunos_be_vec
targ_selvecs=sparc_aout_le_vec
targ_underscore=yes
;;
sparc86x-*-aout*)
targ_defvec=sparc_aout_sunos_be_vec
targ_underscore=yes
;;
sparclite-*-elf* | sparc86x-*-elf*)
targ_defvec=sparc_elf32_vec
;;
sparc*-*-chorus*)
targ_defvec=sparc_elf32_vec
;;
sparc-*-linux*aout*)
targ_defvec=sparc_aout_linux_vec
targ_selvecs="sparc_elf32_vec sparc_aout_sunos_be_vec"
targ_underscore=yes
;;
sparc-*-linux-* | sparcv*-*-linux-*)
targ_defvec=sparc_elf32_vec
targ_selvecs="sparc_aout_linux_vec sparc_elf64_vec sparc_aout_sunos_be_vec"
;;
sparc-*-netbsdelf*)
targ_defvec=sparc_elf32_vec
targ_selvecs=sparc_aout_nbsd_vec
;;
sparc-*-netbsdaout* | sparc-*-netbsd*)
targ_defvec=sparc_aout_nbsd_vec
targ_selvecs=sparc_elf32_vec
targ_underscore=yes
;;
sparc-*-openbsd[0-2].* | sparc-*-openbsd3.[0-1])
targ_defvec=sparc_aout_nbsd_vec
targ_underscore=yes
;;
sparc-*-openbsd*)
targ_defvec=sparc_elf32_vec
targ_selvecs=sparc_aout_nbsd_vec
;;
sparc-*-elf*)
targ_defvec=sparc_elf32_vec
targ_selvecs=sparc_aout_sunos_be_vec
;;
sparc-*-solaris2.[0-6] | sparc-*-solaris2.[0-6].*)
targ_defvec=sparc_elf32_sol2_vec
targ_selvecs=sparc_aout_sunos_be_vec
;;
#ifdef BFD64
sparc-*-solaris2* | sparcv9-*-solaris2* | sparc64-*-solaris2*)
targ_defvec=sparc_elf32_sol2_vec
targ_selvecs="sparc_elf64_sol2_vec sparc_aout_sunos_be_vec"
want64=true
;;
#endif
sparc-*-sysv4*)
targ_defvec=sparc_elf32_vec
;;
sparc-*-vxworks*)
targ_defvec=sparc_elf32_vxworks_vec
targ_selvecs="sparc_elf32_vec sparc_aout_sunos_be_vec"
;;
sparc-*-netware*)
targ_defvec=sparc_elf32_vec
targ_selvecs="sparc_nlm32_vec sparc_aout_sunos_be_vec"
;;
#ifdef BFD64
sparc64-*-aout*)
targ_defvec=sparc_aout_sunos_be_vec
targ_underscore=yes
want64=true
;;
sparc64*-*-linux-*)
targ_defvec=sparc_elf64_vec
targ_selvecs="sparc_elf32_vec sparc_aout_linux_vec sparc_aout_sunos_be_vec"
want64=true
;;
sparc64-*-elf* | sparc64-*-rtems* )
targ_defvec=sparc_elf64_vec
targ_selvecs=sparc_elf32_vec
want64=true
;;
#endif /* BFD64 */
sparc*-*-coff*)
targ_defvec=sparc_coff_vec
;;
sparc-*-rtems*)
targ_defvec=sparc_elf32_vec
targ_selvecs="sparc_aout_sunos_be_vec sparc_coff_vec"
;;
sparc*-*-*)
targ_defvec=sparc_aout_sunos_be_vec
targ_underscore=yes
;;
spu-*-elf)
targ_defvec=spu_elf32_vec
want64=true
;;
#if HAVE_aout_vec
tahoe-*-*)
targ_defvec=aout_vec
targ_underscore=yes
;;
#endif
tic6x-*-elf)
targ_defvec=tic6x_elf32_c6000_le_vec
targ_selvecs="tic6x_elf32_c6000_be_vec tic6x_elf32_le_vec tic6x_elf32_be_vec"
;;
tic6x-*-uclinux)
targ_defvec=tic6x_elf32_linux_le_vec
targ_selvecs="tic6x_elf32_linux_be_vec tic6x_elf32_le_vec tic6x_elf32_be_vec"
;;
tic80*-*-*)
targ_defvec=tic80_coff_vec
targ_underscore=yes
;;
#ifdef BFD64
tilegx-*-*)
targ_defvec=tilegx_elf64_le_vec
targ_selvecs="tilegx_elf64_be_vec tilegx_elf32_be_vec tilegx_elf32_le_vec"
;;
tilegxbe-*-*)
targ_defvec=tilegx_elf64_be_vec
targ_selvecs="tilegx_elf64_le_vec tilegx_elf32_be_vec tilegx_elf32_le_vec"
;;
#endif
tilepro-*-*)
targ_defvec=tilepro_elf32_vec
;;
v850*-*-*)
targ_defvec=v850_elf32_vec
targ_selvecs="v800_elf32_vec"
;;
vax-*-netbsdelf*)
targ_defvec=vax_elf32_vec
targ_selvecs="vax_aout_nbsd_vec vax_aout_1knbsd_vec"
;;
vax-*-netbsdaout* | vax-*-netbsd*)
targ_defvec=vax_aout_nbsd_vec
targ_selvecs="vax_elf32_vec vax_aout_1knbsd_vec"
targ_underscore=yes
;;
vax-*-bsd* | vax-*-ultrix*)
targ_defvec=vax_aout_bsd_vec
targ_underscore=yes
;;
vax-*-openbsd*)
targ_defvec=vax_aout_nbsd_vec
targ_underscore=yes
;;
vax-*-linux-*)
targ_defvec=vax_elf32_vec
;;
we32k-*-*)
targ_defvec=we32k_coff_vec
;;
w65-*-*)
targ_defvec=w65_coff_vec
;;
xgate-*-*)
targ_defvec=xgate_elf32_vec
targ_selvecs="xgate_elf32_vec"
;;
xstormy16-*-elf)
targ_defvec=xstormy16_elf32_vec
;;
xtensa*-*-*)
targ_defvec=xtensa_elf32_le_vec
targ_selvecs=xtensa_elf32_be_vec
;;
xc16x-*-elf)
targ_defvec=xc16x_elf32_vec
;;
z80-*-*)
targ_defvec=z80_coff_vec
targ_underscore=no
;;
z8k*-*-*)
targ_defvec=z8k_coff_vec
targ_underscore=yes
;;
*-*-ieee*)
targ_defvec=ieee_vec
;;
*-adobe-*)
targ_defvec=aout_adobe_vec
targ_underscore=yes
;;
*-sony-*)
targ_defvec=m68k_aout_newsos3_vec
targ_underscore=yes
;;
*-tandem-*)
targ_defvec=m68k_coff_vec
targ_selvecs=ieee_vec
;;
# END OF targmatch.h
*)
echo 1>&2 "*** BFD does not support target ${targ}."
echo 1>&2 "*** Look in bfd/config.bfd for supported targets."
exit 1
;;
esac
# All MIPS ELF targets need a 64-bit bfd_vma.
case "${targ_defvec} ${targ_selvecs}" in
*mips_elf*)
want64=true
;;
esac
case "${host64}${want64}" in
*true*)
targ_selvecs="${targ_selvecs} ${targ64_selvecs}"
;;
esac
# If we support any ELF target, then automatically add support for the
# generic ELF targets. This permits an objdump with some ELF support
# to be used on an arbitrary ELF file for anything other than
# relocation information.
case "${targ_defvec} ${targ_selvecs}" in
*elf64* | *mips_elf32_n*)
targ_selvecs="${targ_selvecs} elf64_le_vec elf64_be_vec elf32_le_vec elf32_be_vec"
;;
*elf32*)
targ_selvecs="${targ_selvecs} elf32_le_vec elf32_be_vec"
;;
esac
# If we support Intel L1OM target, then add support for bfd_l1om_arch.
case "${targ_defvec} ${targ_selvecs}" in
*l1om_elf64*)
targ_archs="$targ_archs bfd_l1om_arch"
;;
esac
# If we support Intel K1OM target, then add support for bfd_k1om_arch.
case "${targ_defvec} ${targ_selvecs}" in
*k1om_elf64*)
targ_archs="$targ_archs bfd_k1om_arch"
;;
esac