# 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* | mips*-img-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* | or1knd-*-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
