13761a1136
* config.bfd (msp430): Define targ_selvecs. * configure.in: Add bfd_elf32_msp430_ti_vec. * cpu-msp430.c: Add some more MSP430 machine numbers. * elf32-msp430.c Add support for MSP430X relocations. Add support for TI compiler generated relocations. Add support for sym_diff relocations. Add support for relaxing out of range short branches into long branches. Add support for MSP430 attribute section. * reloc.c: Add MSP430X relocations. * targets.c: Add bfd_elf32_msp430_ti_vec. * bfd-in2.h: Regenerate. * configure: Regenerate. * libbfd.h: Regenerate. * readelf.c: Add support for MSP430X architecture. * readelf.exp: Expect -wi test to fail for the MSP430. * config/tc-msp430.c: Add support for the MSP430X architecture. Add code to insert a NOP instruction after any instruction that might change the interrupt state. Add support for the LARGE memory model. Add code to initialise the .MSP430.attributes section. * config/tc-msp430.h: Add support for the MSP430X architecture. * doc/c-msp430.texi: Document the new -mL and -mN command line options. * NEWS: Mention support for the MSP430X architecture. * gas/all/gas.exp: Skip the DIFF1 test for the MSP430. Expect the FORWARD test to pass for the MSP430. Skip the REDEF tests for the MSP430. Expect the 930509A test to fail for the MSP430. * gas/all/sleb128-4.d: Skip for the MSP430. * gas/elf/elf.exp: Set target_machine to msp430 for the MSP430. Skip the EHOPT0 test for the MSP430. Skip the REDEF and EQU-RELOC tests for the MSP430. * gas/elf/section2.e-msp430: New file. * gas/lns/lns-big-delta.d: Remove expectation of 20-bit addresses. * gas/lns/lns.exp: Use alternate LNS COMMON test for the MSP430. * gas/msp430/msp430x.s: New test. * gas/msp430/msp430x.d: Expected disassembly. * gas/msp430/msp430.exp: Run new test. * gas/msp430/opcode.d: Update expected disassembly. * msp430.h: Add MSP430X relocs. Add some more MSP430 machine numbers. Add values used by .MSP430.attributes section. * msp430.h: Add patterns for MSP430X instructions. * Makefile.am: Add emsp430X.c * Makefine.in: Regenerate. * configure.tgt (msp430): Add msp430X emulation. * ldmain.c (multiple_definition): Only disable relaxation if it was enabled by the user. * ldmain.h (RELAXATION_ENABLED_BY_USER): New macro. * emulparams/msp430all.sh: Add support for MSP430X. * emultempl/generic.em: (before_parse): Enable relaxation for the MSP430. * scripttempl/msp430.sc: Reorganize sections. Add .rodata section. * scripttempl/msp430_3.sc: Likewise. * NEWS: Mention support for MSP430X. * ld-elf/flags1.d: Expect this test to pass on the MSP430. * ld-elf/init-fini-arrays.d: Expect this test to fail on the MSP430. * ld-elf/merge.d: Expect this test to pass on the MSP430. * ld-elf/sec64k.exp: Skip these tests for the MSP430. * ld-gc/pr13683.d: Expect this test to fail on the MSP430. * ld-srec/srec.exp: Expect these tests to fail on the MSP430. * ld-undefined/undefined.exp: Expect the UNDEFINED LINE test to fail on the MSP430. * msp430-dis.c: Add support for MSP430X instructions.
1745 lines
52 KiB
Text
1745 lines
52 KiB
Text
# config.bfd
|
|
#
|
|
# Copyright 2012, 2013 Free Software Foundation
|
|
#
|
|
# 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
|
|
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
|
|
m68*-apple-aux* | \
|
|
m68*-apollo-* | \
|
|
m68*-bull-sysv* | \
|
|
m68*-*-rtemscoff* | \
|
|
maxq-*-coff | \
|
|
i960-*-rtems* | \
|
|
or32-*-rtems* | \
|
|
m68*-*-lynxos* | \
|
|
sparc-*-lynxos* | \
|
|
vax-*-vms* | \
|
|
arm-*-oabi | \
|
|
a29k-* | \
|
|
hppa*-*-rtems* | \
|
|
*-go32-rtems* | \
|
|
i[3-7]86*-*-rtemscoff* | \
|
|
mips*el-*-rtems* | \
|
|
powerpcle-*-rtems* | \
|
|
sparc*-*-rtemsaout* | \
|
|
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 ;;
|
|
nios2*) targ_archs=bfd_nios2_arch ;;
|
|
or32*) targ_archs=bfd_or32_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=bfd_elf64_littleaarch64_vec
|
|
targ_selvecs="bfd_elf64_bigaarch64_vec bfd_elf32_littlearm_vec bfd_elf32_bigarm_vec"
|
|
want64=true
|
|
;;
|
|
aarch64_be-*-elf)
|
|
targ_defvec=bfd_elf64_bigaarch64_vec
|
|
targ_selvecs="bfd_elf64_littleaarch64_vec bfd_elf32_bigarm_vec bfd_elf32_littlearm_vec"
|
|
want64=true
|
|
;;
|
|
aarch64-*-linux*)
|
|
targ_defvec=bfd_elf64_littleaarch64_vec
|
|
targ_selvecs="bfd_elf64_bigaarch64_vec bfd_elf32_littlearm_vec bfd_elf32_bigarm_vec"
|
|
want64=true
|
|
;;
|
|
aarch64_be-*-linux*)
|
|
targ_defvec=bfd_elf64_bigaarch64_vec
|
|
targ_selvecs="bfd_elf64_littleaarch64_vec bfd_elf32_bigarm_vec bfd_elf32_littlearm_vec"
|
|
want64=true
|
|
;;
|
|
alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu)
|
|
targ_defvec=bfd_elf64_alpha_freebsd_vec
|
|
targ_selvecs="bfd_elf64_alpha_vec ecoffalpha_little_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=bfd_elf64_alpha_vec
|
|
targ_selvecs=ecoffalpha_little_vec
|
|
want64=true
|
|
;;
|
|
alpha*-*-netware*)
|
|
targ_defvec=ecoffalpha_little_vec
|
|
targ_selvecs=nlm32_alpha_vec
|
|
want64=true
|
|
;;
|
|
alpha*-*-linux*ecoff*)
|
|
targ_defvec=ecoffalpha_little_vec
|
|
targ_selvecs=bfd_elf64_alpha_vec
|
|
want64=true
|
|
;;
|
|
alpha*-*-linux-* | alpha*-*-elf*)
|
|
targ_defvec=bfd_elf64_alpha_vec
|
|
targ_selvecs=ecoffalpha_little_vec
|
|
want64=true
|
|
;;
|
|
alpha*-*-*vms*)
|
|
targ_defvec=vms_alpha_vec
|
|
targ_selvecs=vms_lib_txt_vec
|
|
want64=true
|
|
;;
|
|
alpha*-*-*)
|
|
targ_defvec=ecoffalpha_little_vec
|
|
want64=true
|
|
;;
|
|
ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu)
|
|
targ_defvec=bfd_elf64_ia64_little_vec
|
|
targ_selvecs="bfd_elf64_ia64_big_vec bfd_pei_ia64_vec"
|
|
want64=true
|
|
;;
|
|
ia64*-*-hpux*)
|
|
targ_defvec=bfd_elf32_ia64_hpux_big_vec
|
|
targ_selvecs="bfd_elf64_ia64_hpux_big_vec"
|
|
want64=true
|
|
;;
|
|
ia64*-*-*vms*)
|
|
targ_defvec=bfd_elf64_ia64_vms_vec
|
|
targ_selvecs=vms_lib_txt_vec
|
|
want64=true
|
|
;;
|
|
sparc64-*-freebsd* | sparc64-*-kfreebsd*-gnu)
|
|
targ_defvec=bfd_elf64_sparc_freebsd_vec
|
|
targ_selvecs="bfd_elf64_sparc_vec bfd_elf32_sparc_vec sunos_big_vec"
|
|
;;
|
|
sparc64-*-netbsd* | sparc64-*-openbsd*)
|
|
targ_defvec=bfd_elf64_sparc_vec
|
|
targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec"
|
|
want64=true
|
|
;;
|
|
#endif /* BFD64 */
|
|
|
|
am34-*-linux* | am33_2.0-*-linux*)
|
|
targ_defvec=bfd_elf32_am33lin_vec
|
|
;;
|
|
|
|
arc-*-elf*)
|
|
targ_defvec=bfd_elf32_littlearc_vec
|
|
targ_selvecs=bfd_elf32_bigarc_vec
|
|
;;
|
|
|
|
arm-*-nacl*)
|
|
targ_defvec=bfd_elf32_littlearm_nacl_vec
|
|
targ_selvecs="bfd_elf32_bigarm_nacl_vec bfd_elf32_i386_nacl_vec"
|
|
targ64_selvecs="bfd_elf32_x86_64_nacl_vec bfd_elf64_x86_64_nacl_vec"
|
|
targ_archs="$targ_archs bfd_i386_arch"
|
|
;;
|
|
armeb-*-nacl*)
|
|
targ_defvec=bfd_elf32_bigarm_nacl_vec
|
|
targ_selvecs="bfd_elf32_littlearm_nacl_vec bfd_elf32_i386_nacl_vec"
|
|
targ64_selvecs="bfd_elf32_x86_64_nacl_vec bfd_elf64_x86_64_nacl_vec"
|
|
targ_archs="$targ_archs bfd_i386_arch"
|
|
;;
|
|
armeb-*-netbsdelf*)
|
|
targ_defvec=bfd_elf32_bigarm_vec
|
|
targ_selvecs="bfd_elf32_littlearm_vec armnetbsd_vec"
|
|
;;
|
|
arm-*-netbsdelf*)
|
|
targ_defvec=bfd_elf32_littlearm_vec
|
|
targ_selvecs="bfd_elf32_bigarm_vec armnetbsd_vec"
|
|
;;
|
|
arm-*-netbsd* | arm-*-openbsd*)
|
|
targ_defvec=armnetbsd_vec
|
|
targ_selvecs="bfd_elf32_littlearm_vec bfd_elf32_bigarm_vec"
|
|
targ_underscore=yes
|
|
targ_cflags=-D__QNXTARGET__
|
|
;;
|
|
arm-*-nto* | nto*arm*)
|
|
targ_defvec=bfd_elf32_littlearm_vec
|
|
targ_selvecs=bfd_elf32_bigarm_vec
|
|
;;
|
|
arm-*-riscix*)
|
|
targ_defvec=riscix_vec
|
|
;;
|
|
arm-epoc-pe*)
|
|
targ_defvec=arm_epoc_pe_little_vec
|
|
targ_selvecs="arm_epoc_pe_little_vec arm_epoc_pe_big_vec arm_epoc_pei_little_vec arm_epoc_pei_big_vec"
|
|
targ_underscore=no
|
|
targ_cflags=-DARM_COFF_BUGFIX
|
|
;;
|
|
arm-wince-pe | arm-*-wince | arm*-*-mingw32ce* | arm*-*-cegcc*)
|
|
targ_defvec=arm_wince_pe_little_vec
|
|
targ_selvecs="arm_wince_pe_little_vec arm_wince_pe_big_vec arm_wince_pei_little_vec arm_wince_pei_big_vec"
|
|
targ_underscore=no
|
|
targ_cflags="-DARM_WINCE -DARM_COFF_BUGFIX"
|
|
;;
|
|
arm-*-pe*)
|
|
targ_defvec=armpe_little_vec
|
|
targ_selvecs="armpe_little_vec armpe_big_vec armpei_little_vec armpei_big_vec"
|
|
targ_underscore=yes
|
|
;;
|
|
arm-*-aout | armel-*-aout)
|
|
targ_defvec=aout_arm_little_vec
|
|
targ_selvecs=aout_arm_big_vec
|
|
;;
|
|
armeb-*-aout)
|
|
targ_defvec=aout_arm_big_vec
|
|
targ_selvecs=aout_arm_little_vec
|
|
;;
|
|
arm-*-coff)
|
|
targ_defvec=armcoff_little_vec
|
|
targ_selvecs=armcoff_big_vec
|
|
targ_underscore=yes
|
|
;;
|
|
arm-*-rtems*)
|
|
targ_defvec=bfd_elf32_littlearm_vec
|
|
targ_selvecs=bfd_elf32_bigarm_vec
|
|
;;
|
|
armeb-*-elf | arm*b-*-linux-*)
|
|
targ_defvec=bfd_elf32_bigarm_vec
|
|
targ_selvecs=bfd_elf32_littlearm_vec
|
|
;;
|
|
arm-*-kaos*)
|
|
targ_defvec=bfd_elf32_littlearm_vec
|
|
targ_selvecs=bfd_elf32_bigarm_vec
|
|
;;
|
|
arm-*-elf | arm-*-freebsd* | arm*-*-linux-* | arm*-*-conix* | \
|
|
arm*-*-uclinux* | arm-*-kfreebsd*-gnu | \
|
|
arm*-*-eabi* )
|
|
targ_defvec=bfd_elf32_littlearm_vec
|
|
targ_selvecs=bfd_elf32_bigarm_vec
|
|
;;
|
|
arm*-*-vxworks | arm*-*-windiss)
|
|
targ_defvec=bfd_elf32_littlearm_vxworks_vec
|
|
targ_selvecs=bfd_elf32_bigarm_vxworks_vec
|
|
;;
|
|
arm*-*-symbianelf*)
|
|
targ_defvec=bfd_elf32_littlearm_symbian_vec
|
|
targ_selvecs=bfd_elf32_bigarm_symbian_vec
|
|
;;
|
|
arm9e-*-elf)
|
|
targ_defvec=bfd_elf32_littlearm_vec
|
|
targ_selvecs=bfd_elf32_bigarm_vec
|
|
;;
|
|
|
|
avr-*-*)
|
|
targ_defvec=bfd_elf32_avr_vec
|
|
;;
|
|
|
|
bfin-*-*)
|
|
targ_defvec=bfd_elf32_bfin_vec
|
|
targ_selvecs=bfd_elf32_bfinfdpic_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=bfd_elf32_cr16_vec
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
cr16c-*-elf*)
|
|
targ_defvec=bfd_elf32_cr16c_vec
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
cris-*-* | crisv32-*-*)
|
|
targ_defvec=cris_aout_vec
|
|
targ_selvecs="bfd_elf32_us_cris_vec bfd_elf32_cris_vec ieee_vec"
|
|
targ_underscore=yes # Note: not true for bfd_elf32_cris_vec.
|
|
;;
|
|
|
|
crx-*-elf*)
|
|
targ_defvec=bfd_elf32_crx_vec
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
d10v-*-*)
|
|
targ_defvec=bfd_elf32_d10v_vec
|
|
;;
|
|
|
|
dlx-*-elf*)
|
|
targ_defvec=bfd_elf32_dlx_big_vec
|
|
targ_selvecs="bfd_elf32_dlx_big_vec"
|
|
;;
|
|
|
|
d30v-*-*)
|
|
targ_defvec=bfd_elf32_d30v_vec
|
|
;;
|
|
|
|
epiphany-*-elf)
|
|
targ_defvec=bfd_elf32_epiphany_vec
|
|
;;
|
|
|
|
fido-*-elf* )
|
|
targ_defvec=bfd_elf32_m68k_vec
|
|
targ_selvecs="m68kcoff_vec ieee_vec"
|
|
;;
|
|
|
|
fr30-*-elf)
|
|
targ_defvec=bfd_elf32_fr30_vec
|
|
;;
|
|
|
|
frv-*-elf)
|
|
targ_defvec=bfd_elf32_frv_vec
|
|
targ_selvecs=bfd_elf32_frvfdpic_vec
|
|
;;
|
|
|
|
frv-*-*linux*)
|
|
targ_defvec=bfd_elf32_frvfdpic_vec
|
|
targ_selvecs=bfd_elf32_frv_vec
|
|
;;
|
|
|
|
moxie-*-elf | moxie-*-rtems* | moxie-*-uclinux)
|
|
targ_defvec=bfd_elf32_bigmoxie_vec
|
|
targ_selvecs=bfd_elf32_littlemoxie_vec
|
|
;;
|
|
|
|
h8300*-*-rtemscoff*)
|
|
targ_defvec=h8300coff_vec
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
h8300*-*-elf | h8300*-*-rtems*)
|
|
targ_defvec=bfd_elf32_h8300_vec
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
h8300*-*-*)
|
|
targ_defvec=h8300coff_vec
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
h8500-*-*)
|
|
targ_defvec=h8500coff_vec
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
#ifdef BFD64
|
|
hppa*64*-*-linux-*)
|
|
targ_defvec=bfd_elf64_hppa_linux_vec
|
|
targ_selvecs=bfd_elf64_hppa_vec
|
|
want64=true
|
|
;;
|
|
hppa*64*-*-hpux11*)
|
|
targ_defvec=bfd_elf64_hppa_vec
|
|
targ_selvecs=bfd_elf64_hppa_linux_vec
|
|
targ_cflags=-DHPUX_LARGE_AR_IDS
|
|
want64=true
|
|
;;
|
|
#endif
|
|
|
|
hppa*-*-linux-*)
|
|
targ_defvec=bfd_elf32_hppa_linux_vec
|
|
targ_selvecs=bfd_elf32_hppa_vec
|
|
;;
|
|
hppa*-*-netbsd*)
|
|
targ_defvec=bfd_elf32_hppa_nbsd_vec
|
|
targ_selvecs="bfd_elf32_hppa_vec bfd_elf32_hppa_linux_vec"
|
|
;;
|
|
hppa*-*-*elf* | hppa*-*-lites* | hppa*-*-sysv4* | hppa*-*-openbsd*)
|
|
targ_defvec=bfd_elf32_hppa_vec
|
|
targ_selvecs=bfd_elf32_hppa_linux_vec
|
|
;;
|
|
|
|
hppa*-*-bsd*)
|
|
targ_defvec=som_vec
|
|
targ_selvecs=bfd_elf32_hppa_vec
|
|
;;
|
|
hppa*-*-hpux* | hppa*-*-hiux* | hppa*-*-mpeix*)
|
|
targ_defvec=som_vec
|
|
;;
|
|
hppa*-*-osf*)
|
|
targ_defvec=som_vec
|
|
targ_selvecs=bfd_elf32_hppa_vec
|
|
;;
|
|
|
|
i370-*-*)
|
|
targ_defvec=bfd_elf32_i370_vec
|
|
targ_selvecs="bfd_elf32_i370_vec"
|
|
;;
|
|
i[3-7]86-*-sco3.2v5*coff)
|
|
targ_defvec=i386coff_vec
|
|
targ_selvecs=bfd_elf32_i386_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=bfd_elf32_i386_vec
|
|
targ_selvecs=i386coff_vec
|
|
;;
|
|
i[3-7]86-*-solaris2*)
|
|
targ_defvec=bfd_elf32_i386_sol2_vec
|
|
targ_selvecs="i386coff_vec"
|
|
targ64_selvecs="bfd_elf64_x86_64_sol2_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec"
|
|
want64=true
|
|
;;
|
|
#ifdef BFD64
|
|
x86_64-*-solaris2*)
|
|
targ_defvec=bfd_elf32_i386_sol2_vec
|
|
targ_selvecs="bfd_elf64_x86_64_sol2_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec i386coff_vec"
|
|
want64=true
|
|
;;
|
|
#endif
|
|
i[3-7]86-*-kaos*)
|
|
targ_defvec=bfd_elf32_i386_vec
|
|
targ_selvecs=bfd_elf32_i386_vec
|
|
;;
|
|
i[3-7]86-*-nto*)
|
|
targ_defvec=bfd_elf32_i386_vec
|
|
targ_selvecs=i386coff_vec
|
|
;;
|
|
i[3-7]86-*-aros*)
|
|
targ_defvec=bfd_elf32_i386_vec
|
|
;;
|
|
i[3-7]86-*-chorus*)
|
|
targ_defvec=bfd_elf32_i386_vec
|
|
;;
|
|
i[3-7]86-*-dicos*)
|
|
targ_defvec=bfd_elf32_i386_vec
|
|
targ64_selvecs="bfd_elf64_x86_64_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec"
|
|
;;
|
|
*-*-msdosdjgpp* | *-*-go32* )
|
|
targ_defvec=go32coff_vec
|
|
targ_selvecs="go32stubbedcoff_vec i386aout_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=i386coff_vec
|
|
;;
|
|
i[3-7]86-*-rtems*)
|
|
targ_defvec=bfd_elf32_i386_vec
|
|
targ_selvecs="i386coff_vec i386aout_vec"
|
|
;;
|
|
i[3-7]86-*-darwin* | i[3-7]86-*-macos10* | i[3-7]86-*-rhapsody*)
|
|
targ_defvec=mach_o_i386_vec
|
|
targ_selvecs="mach_o_le_vec mach_o_be_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec"
|
|
targ64_selvecs=mach_o_x86_64_vec
|
|
targ_archs="$targ_archs bfd_powerpc_arch bfd_rs6000_arch"
|
|
;;
|
|
i[3-7]86-sequent-bsd*)
|
|
targ_defvec=i386dynix_vec
|
|
targ_underscore=yes
|
|
;;
|
|
i[3-7]86-*-bsd*)
|
|
targ_defvec=i386bsd_vec
|
|
targ_underscore=yes
|
|
;;
|
|
i[3-7]86-*-dragonfly*)
|
|
targ_defvec=bfd_elf32_i386_vec
|
|
targ64_selvecs="bfd_elf64_x86_64_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec"
|
|
;;
|
|
i[3-7]86-*-freebsdaout* | i[3-7]86-*-freebsd[12].* | \
|
|
i[3-7]86-*-freebsd[12])
|
|
targ_defvec=i386freebsd_vec
|
|
targ_selvecs=i386bsd_vec
|
|
targ_underscore=yes
|
|
;;
|
|
i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu)
|
|
targ_defvec=bfd_elf32_i386_freebsd_vec
|
|
targ_selvecs="bfd_elf32_i386_vec i386pei_vec i386coff_vec"
|
|
targ64_selvecs="bfd_elf64_x86_64_freebsd_vec bfd_elf64_x86_64_vec x86_64pei_vec bfd_elf64_l1om_vec bfd_elf64_l1om_freebsd_vec bfd_elf64_k1om_vec bfd_elf64_k1om_freebsd_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=bfd_elf32_i386_vec
|
|
targ_selvecs=i386netbsd_vec
|
|
targ64_selvecs="bfd_elf64_x86_64_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec"
|
|
;;
|
|
i[3-7]86-*-netbsdpe*)
|
|
targ_defvec=i386pe_vec
|
|
targ_selvecs="i386pe_vec i386pei_vec bfd_elf32_i386_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=i386netbsd_vec
|
|
targ_selvecs="bfd_elf32_i386_vec i386bsd_vec"
|
|
targ_underscore=yes
|
|
;;
|
|
i[3-7]86-*-openbsd*)
|
|
targ_defvec=bfd_elf32_i386_vec
|
|
targ_selvecs=i386netbsd_vec
|
|
;;
|
|
i[3-7]86-*-netware*)
|
|
targ_defvec=bfd_elf32_i386_vec
|
|
targ_selvecs="nlm32_i386_vec i386coff_vec i386aout_vec"
|
|
;;
|
|
i[3-7]86-*-linux*aout*)
|
|
targ_defvec=i386linux_vec
|
|
targ_selvecs=bfd_elf32_i386_vec
|
|
targ_underscore=yes
|
|
;;
|
|
i[3-7]86-*-linux-*)
|
|
targ_defvec=bfd_elf32_i386_vec
|
|
targ_selvecs="i386linux_vec i386pei_vec"
|
|
targ64_selvecs="bfd_elf64_x86_64_vec bfd_elf32_x86_64_vec x86_64pei_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec"
|
|
;;
|
|
i[3-7]86-*-nacl*)
|
|
targ_defvec=bfd_elf32_i386_nacl_vec
|
|
targ_selvecs="bfd_elf32_bigarm_nacl_vec bfd_elf32_littlearm_nacl_vec"
|
|
targ64_selvecs="bfd_elf64_x86_64_nacl_vec bfd_elf32_x86_64_nacl_vec"
|
|
targ_archs="$targ_archs bfd_arm_arch"
|
|
;;
|
|
#ifdef BFD64
|
|
x86_64-*-darwin*)
|
|
targ_defvec=mach_o_x86_64_vec
|
|
targ_selvecs="mach_o_i386_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=bfd_elf64_x86_64_vec
|
|
targ_selvecs="bfd_elf32_i386_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec"
|
|
want64=true
|
|
;;
|
|
x86_64-*-elf*)
|
|
targ_defvec=bfd_elf64_x86_64_vec
|
|
targ_selvecs="bfd_elf32_i386_vec bfd_elf32_x86_64_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec"
|
|
want64=true
|
|
;;
|
|
x86_64-*-dragonfly*)
|
|
targ_defvec=bfd_elf64_x86_64_vec
|
|
targ_selvecs="bfd_elf32_i386_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec"
|
|
want64=true
|
|
;;
|
|
x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu)
|
|
targ_defvec=bfd_elf64_x86_64_freebsd_vec
|
|
targ_selvecs="bfd_elf32_i386_freebsd_vec i386coff_vec i386pei_vec x86_64pei_vec bfd_elf32_i386_vec bfd_elf64_x86_64_vec bfd_elf64_l1om_vec bfd_elf64_l1om_freebsd_vec bfd_elf64_k1om_vec bfd_elf64_k1om_freebsd_vec"
|
|
want64=true
|
|
;;
|
|
x86_64-*-netbsd* | x86_64-*-openbsd*)
|
|
targ_defvec=bfd_elf64_x86_64_vec
|
|
targ_selvecs="bfd_elf32_i386_vec i386netbsd_vec i386coff_vec i386pei_vec x86_64pei_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec"
|
|
want64=true
|
|
;;
|
|
x86_64-*-linux-*)
|
|
targ_defvec=bfd_elf64_x86_64_vec
|
|
targ_selvecs="bfd_elf32_i386_vec bfd_elf32_x86_64_vec i386linux_vec i386pei_vec x86_64pei_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec"
|
|
want64=true
|
|
;;
|
|
x86_64-*-nacl*)
|
|
targ_defvec=bfd_elf32_x86_64_nacl_vec
|
|
targ_selvecs="bfd_elf32_i386_nacl_vec bfd_elf64_x86_64_nacl_vec bfd_elf32_bigarm_nacl_vec bfd_elf32_littlearm_nacl_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_64pe_vec
|
|
targ_selvecs="x86_64pe_vec x86_64pei_vec bfd_elf64_x86_64_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec i386pe_vec i386pei_vec bfd_elf32_i386_vec"
|
|
want64=true
|
|
targ_underscore=no
|
|
;;
|
|
x86_64-*-rdos*)
|
|
targ_defvec=bfd_elf64_x86_64_vec
|
|
want64=true
|
|
;;
|
|
#endif
|
|
i[3-7]86-*-lynxos*)
|
|
targ_defvec=bfd_elf32_i386_vec
|
|
targ_selvecs="i386lynx_coff_vec i386lynx_aout_vec"
|
|
;;
|
|
i[3-7]86-*-gnu*)
|
|
targ_defvec=bfd_elf32_i386_vec
|
|
;;
|
|
i[3-7]86-*-mach* | i[3-7]86-*-osf1mk*)
|
|
targ_defvec=i386mach3_vec
|
|
targ_cflags=-DSTAT_FOR_EXEC
|
|
targ_underscore=yes
|
|
;;
|
|
i[3-7]86-*-os9k)
|
|
targ_defvec=i386os9k_vec
|
|
;;
|
|
i[3-7]86-*-msdos*)
|
|
targ_defvec=i386aout_vec
|
|
targ_selvecs=i386msdos_vec
|
|
;;
|
|
i[3-7]86-*-moss*)
|
|
targ_defvec=bfd_elf32_i386_vec
|
|
targ_selvecs="i386msdos_vec i386aout_vec"
|
|
;;
|
|
i[3-7]86-*-beospe*)
|
|
targ_defvec=i386pe_vec
|
|
targ_selvecs="i386pe_vec i386pei_vec"
|
|
;;
|
|
i[3-7]86-*-beoself* | i[3-7]86-*-beos*)
|
|
targ_defvec=bfd_elf32_i386_vec
|
|
targ_selvecs="i386pe_vec i386pei_vec"
|
|
;;
|
|
i[3-7]86-*-interix*)
|
|
targ_defvec=i386pei_vec
|
|
targ_selvecs="i386pe_vec"
|
|
# FIXME: This should eventually be checked at runtime.
|
|
targ_cflags=-DSTRICT_PE_FORMAT
|
|
;;
|
|
i[3-7]86-*-rdos*)
|
|
targ_defvec=bfd_elf32_i386_vec
|
|
targ_selvecs=i386coff_vec
|
|
;;
|
|
i[3-7]86-*-mingw32* | i[3-7]86-*-cygwin* | i[3-7]86-*-winnt | i[3-7]86-*-pe)
|
|
targ_defvec=i386pe_vec
|
|
targ_selvecs="i386pe_vec i386pei_vec bfd_elf32_i386_vec"
|
|
targ_underscore=yes
|
|
;;
|
|
i[3-7]86-none-*)
|
|
targ_defvec=i386coff_vec
|
|
;;
|
|
i[3-7]86-*-aout* | i[3-7]86*-*-vsta*)
|
|
targ_defvec=i386aout_vec
|
|
;;
|
|
i[3-7]86-*-vxworks*)
|
|
targ_defvec=bfd_elf32_i386_vxworks_vec
|
|
targ_underscore=yes
|
|
;;
|
|
i[3-7]86-*-chaos)
|
|
targ_defvec=bfd_elf32_i386_vec
|
|
targ_selfvecs=i386chaos_vec
|
|
;;
|
|
|
|
i860-*-mach3* | i860-*-osf1* | i860-*-coff*)
|
|
targ_defvec=i860coff_vec
|
|
;;
|
|
i860-stardent-sysv4* | i860-stardent-elf*)
|
|
targ_defvec=bfd_elf32_i860_little_vec
|
|
targ_selvecs="bfd_elf32_i860_vec bfd_elf32_i860_little_vec"
|
|
;;
|
|
i860-*-sysv4* | i860-*-elf*)
|
|
targ_defvec=bfd_elf32_i860_vec
|
|
;;
|
|
|
|
i960-*-vxworks4* | i960-*-vxworks5.0)
|
|
targ_defvec=b_out_vec_little_host
|
|
targ_selvecs="b_out_vec_big_host icoff_little_vec icoff_big_vec ieee_vec"
|
|
targ_underscore=yes
|
|
;;
|
|
i960-*-vxworks5.* | i960-*-coff* | i960-*-sysv*)
|
|
targ_defvec=icoff_little_vec
|
|
targ_selvecs="icoff_big_vec b_out_vec_little_host b_out_vec_big_host ieee_vec"
|
|
targ_underscore=yes
|
|
;;
|
|
i960-*-vxworks* | i960-*-aout* | i960-*-bout* | i960-*-nindy*)
|
|
targ_defvec=b_out_vec_little_host
|
|
targ_selvecs="b_out_vec_big_host icoff_little_vec icoff_big_vec ieee_vec"
|
|
targ_underscore=yes
|
|
;;
|
|
i960-*-elf*)
|
|
targ_defvec=bfd_elf32_i960_vec
|
|
targ_selvecs="icoff_little_vec icoff_big_vec"
|
|
;;
|
|
|
|
ip2k-*-elf)
|
|
targ_defvec=bfd_elf32_ip2k_vec
|
|
;;
|
|
|
|
iq2000-*-elf)
|
|
targ_defvec=bfd_elf32_iq2000_vec
|
|
;;
|
|
|
|
lm32-*-elf | lm32-*-rtems*)
|
|
targ_defvec=bfd_elf32_lm32_vec
|
|
targ_selvecs=bfd_elf32_lm32fdpic_vec
|
|
;;
|
|
|
|
lm32-*-*linux*)
|
|
targ_defvec=bfd_elf32_lm32fdpic_vec
|
|
targ_selvecs=bfd_elf32_lm32_vec
|
|
;;
|
|
|
|
m32c-*-elf | m32c-*-rtems*)
|
|
targ_defvec=bfd_elf32_m32c_vec
|
|
;;
|
|
|
|
m32r*le-*-linux*)
|
|
targ_defvec=bfd_elf32_m32rlelin_vec
|
|
targ_selvecs="bfd_elf32_m32rlin_vec bfd_elf32_m32rlelin_vec"
|
|
;;
|
|
m32r*-*-linux*)
|
|
targ_defvec=bfd_elf32_m32rlin_vec
|
|
targ_selvecs="bfd_elf32_m32rlin_vec bfd_elf32_m32rlelin_vec"
|
|
;;
|
|
m32r*le-*-*)
|
|
targ_defvec=bfd_elf32_m32rle_vec
|
|
targ_selvecs="bfd_elf32_m32r_vec bfd_elf32_m32rle_vec"
|
|
;;
|
|
m32r-*-*)
|
|
targ_defvec=bfd_elf32_m32r_vec
|
|
;;
|
|
|
|
m68hc11-*-* | m6811-*-*)
|
|
targ_defvec=bfd_elf32_m68hc11_vec
|
|
targ_selvecs="bfd_elf32_m68hc11_vec bfd_elf32_m68hc12_vec"
|
|
;;
|
|
m68hc12-*-* | m6812-*-*)
|
|
targ_defvec=bfd_elf32_m68hc12_vec
|
|
targ_selvecs="bfd_elf32_m68hc11_vec bfd_elf32_m68hc12_vec"
|
|
;;
|
|
|
|
m68*-motorola-sysv*)
|
|
targ_defvec=m68ksysvcoff_vec
|
|
;;
|
|
m68*-hp-bsd*)
|
|
targ_defvec=hp300bsd_vec
|
|
targ_underscore=yes
|
|
;;
|
|
m68*-*-aout*)
|
|
targ_defvec=aout0_big_vec
|
|
# We include cisco_core_big_vec here, rather than making a separate cisco
|
|
# configuration, so that cisco-core.c gets routinely tested at
|
|
# least for compilation.
|
|
targ_selvecs="cisco_core_big_vec ieee_vec"
|
|
targ_underscore=yes
|
|
;;
|
|
m68*-*-elf* | m68*-*-sysv4* | m68*-*-uclinux*)
|
|
targ_defvec=bfd_elf32_m68k_vec
|
|
targ_selvecs="m68kcoff_vec ieee_vec"
|
|
;;
|
|
m68*-*-rtems*)
|
|
targ_defvec=bfd_elf32_m68k_vec
|
|
targ_selvecs="m68kcoff_vec versados_vec ieee_vec aout0_big_vec"
|
|
;;
|
|
m68*-*-coff* | m68*-*-sysv*)
|
|
targ_defvec=m68kcoff_vec
|
|
targ_selvecs="m68kcoff_vec versados_vec ieee_vec"
|
|
;;
|
|
m68*-*-hpux*)
|
|
targ_defvec=hp300hpux_vec
|
|
targ_underscore=yes
|
|
;;
|
|
m68*-*-linux*aout*)
|
|
targ_defvec=m68klinux_vec
|
|
targ_selvecs=bfd_elf32_m68k_vec
|
|
targ_underscore=yes
|
|
;;
|
|
m68*-*-linux-*)
|
|
targ_defvec=bfd_elf32_m68k_vec
|
|
targ_selvecs=m68klinux_vec
|
|
;;
|
|
m68*-*-gnu*)
|
|
targ_defvec=bfd_elf32_m68k_vec
|
|
# targ_selvecs=m68kmach3_vec
|
|
# targ_cflags=-DSTAT_FOR_EXEC
|
|
;;
|
|
m68*-hp*-netbsd*)
|
|
targ_defvec=m68k4knetbsd_vec
|
|
targ_selvecs="m68knetbsd_vec hp300bsd_vec sunos_big_vec"
|
|
targ_underscore=yes
|
|
;;
|
|
m68*-*-netbsdelf*)
|
|
targ_defvec=bfd_elf32_m68k_vec
|
|
targ_selvecs="m68knetbsd_vec m68k4knetbsd_vec hp300bsd_vec sunos_big_vec"
|
|
;;
|
|
m68*-*-netbsdaout* | m68*-*-netbsd*)
|
|
targ_defvec=m68knetbsd_vec
|
|
targ_selvecs="m68k4knetbsd_vec bfd_elf32_m68k_vec hp300bsd_vec sunos_big_vec"
|
|
targ_underscore=yes
|
|
;;
|
|
m68*-*-openbsd*)
|
|
targ_defvec=m68knetbsd_vec
|
|
targ_selvecs="m68k4knetbsd_vec hp300bsd_vec sunos_big_vec"
|
|
targ_underscore=yes
|
|
;;
|
|
m68*-*-sunos* | m68*-*-os68k* | m68*-*-vxworks* | m68*-netx-* | \
|
|
m68*-*-bsd* | m68*-*-vsta*)
|
|
targ_defvec=sunos_big_vec
|
|
targ_underscore=yes
|
|
;;
|
|
m68*-ericsson-*)
|
|
targ_defvec=sunos_big_vec
|
|
targ_selvecs="m68kcoff_vec versados_vec tekhex_vec"
|
|
targ_underscore=yes
|
|
;;
|
|
m68*-cbm-*)
|
|
targ_defvec=bfd_elf32_m68k_vec
|
|
targ_selvecs=m68kcoff_vec
|
|
;;
|
|
m68*-*-psos*)
|
|
targ_defvec=bfd_elf32_m68k_vec
|
|
targ_selvecs=ieee_vec
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
m88*-harris-cxux* | m88*-*-dgux* | m88*-*-sysv4*)
|
|
targ_defvec=bfd_elf32_m88k_vec
|
|
targ_selvecs=m88kbcs_vec
|
|
;;
|
|
m88*-*-mach3*)
|
|
targ_defvec=m88kmach3_vec
|
|
targ_cflags=-DSTAT_FOR_EXEC
|
|
;;
|
|
m88*-*-openbsd*)
|
|
targ_defvec=m88kopenbsd_vec
|
|
targ_underscore=yes
|
|
;;
|
|
m88*-*-*)
|
|
targ_defvec=m88kbcs_vec
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
mcore-*-elf)
|
|
targ_defvec=bfd_elf32_mcore_big_vec
|
|
targ_selvecs="bfd_elf32_mcore_big_vec bfd_elf32_mcore_little_vec"
|
|
;;
|
|
mcore-*-pe)
|
|
targ_defvec=mcore_pe_big_vec
|
|
targ_selvecs="mcore_pe_big_vec mcore_pe_little_vec mcore_pei_big_vec mcore_pei_little_vec"
|
|
;;
|
|
|
|
mep-*-elf)
|
|
targ_defvec=bfd_elf32_mep_vec
|
|
targ_selvecs=bfd_elf32_mep_little_vec
|
|
;;
|
|
|
|
metag-*-*)
|
|
targ_defvec=bfd_elf32_metag_vec
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
microblazeel*-*)
|
|
targ_defvec=bfd_elf32_microblazeel_vec
|
|
targ_selvecs=bfd_elf32_microblaze_vec
|
|
;;
|
|
|
|
microblaze*-*)
|
|
targ_defvec=bfd_elf32_microblaze_vec
|
|
targ_selvecs=bfd_elf32_microblazeel_vec
|
|
;;
|
|
|
|
mips*-big-*)
|
|
targ_defvec=ecoff_big_vec
|
|
targ_selvecs=ecoff_little_vec
|
|
;;
|
|
mips*el-*-netbsd*)
|
|
targ_defvec=bfd_elf32_tradlittlemips_vec
|
|
targ_selvecs="bfd_elf32_tradbigmips_vec bfd_elf64_tradbigmips_vec bfd_elf64_tradlittlemips_vec ecoff_little_vec ecoff_big_vec"
|
|
;;
|
|
mips*-*-netbsd*)
|
|
targ_defvec=bfd_elf32_tradbigmips_vec
|
|
targ_selvecs="bfd_elf32_tradlittlemips_vec bfd_elf64_tradbigmips_vec bfd_elf64_tradlittlemips_vec ecoff_big_vec ecoff_little_vec"
|
|
;;
|
|
mips*-dec-* | mips*el-*-ecoff*)
|
|
targ_defvec=ecoff_little_vec
|
|
targ_selvecs=ecoff_big_vec
|
|
;;
|
|
mips*-*-ecoff*)
|
|
targ_defvec=ecoff_big_vec
|
|
targ_selvecs=ecoff_little_vec
|
|
;;
|
|
#ifdef BFD64
|
|
mips*-*-irix6*)
|
|
targ_defvec=bfd_elf32_nbigmips_vec
|
|
targ_selvecs="bfd_elf32_nlittlemips_vec bfd_elf32_bigmips_vec bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec"
|
|
want64=true
|
|
;;
|
|
mips64*-ps2-elf*)
|
|
targ_defvec=bfd_elf32_nlittlemips_vec
|
|
targ_selvecs="bfd_elf32_nlittlemips_vec bfd_elf32_nbigmips_vec bfd_elf32_bigmips_vec bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec"
|
|
want64=true
|
|
;;
|
|
#endif
|
|
mips*-ps2-elf*)
|
|
targ_defvec=bfd_elf32_littlemips_vec
|
|
targ_selvecs="bfd_elf32_bigmips_vec bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec"
|
|
;;
|
|
mips*-*-irix5*)
|
|
targ_defvec=bfd_elf32_bigmips_vec
|
|
targ_selvecs="bfd_elf32_littlemips_vec ecoff_big_vec ecoff_little_vec"
|
|
;;
|
|
mips*-sgi-* | mips*-*-bsd*)
|
|
targ_defvec=ecoff_big_vec
|
|
targ_selvecs=ecoff_little_vec
|
|
;;
|
|
mips*-*-lnews*)
|
|
targ_defvec=ecoff_biglittle_vec
|
|
targ_selvecs="ecoff_little_vec ecoff_big_vec"
|
|
;;
|
|
mips*-*-sysv4*)
|
|
targ_defvec=bfd_elf32_tradbigmips_vec
|
|
targ_selvecs="bfd_elf32_tradlittlemips_vec ecoff_big_vec ecoff_little_vec"
|
|
;;
|
|
mips*-*-sysv* | mips*-*-riscos*)
|
|
targ_defvec=ecoff_big_vec
|
|
targ_selvecs=ecoff_little_vec
|
|
;;
|
|
#ifdef BFD64
|
|
mips*el-*-vxworks*)
|
|
targ_defvec=bfd_elf32_littlemips_vxworks_vec
|
|
targ_selvecs="bfd_elf32_littlemips_vec bfd_elf32_bigmips_vxworks_vec bfd_elf32_bigmips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec"
|
|
want64=true
|
|
;;
|
|
mips*-*-vxworks*)
|
|
targ_defvec=bfd_elf32_bigmips_vxworks_vec
|
|
targ_selvecs="bfd_elf32_bigmips_vec bfd_elf32_littlemips_vxworks_vec bfd_elf32_bigmips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec"
|
|
want64=true
|
|
;;
|
|
#endif
|
|
mips*el-sde-elf*)
|
|
targ_defvec=bfd_elf32_tradlittlemips_vec
|
|
targ_selvecs="bfd_elf32_tradbigmips_vec bfd_elf32_ntradbigmips_vec bfd_elf32_ntradlittlemips_vec bfd_elf64_tradbigmips_vec bfd_elf64_tradlittlemips_vec"
|
|
want64=true
|
|
;;
|
|
mips*-sde-elf* | mips*-mti-elf*)
|
|
targ_defvec=bfd_elf32_tradbigmips_vec
|
|
targ_selvecs="bfd_elf32_tradlittlemips_vec bfd_elf32_ntradbigmips_vec bfd_elf32_ntradlittlemips_vec bfd_elf64_tradbigmips_vec bfd_elf64_tradlittlemips_vec"
|
|
want64=true
|
|
;;
|
|
mips*el-*-elf* | mips*el-*-vxworks* | mips*-*-chorus*)
|
|
targ_defvec=bfd_elf32_littlemips_vec
|
|
targ_selvecs="bfd_elf32_bigmips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec"
|
|
;;
|
|
mips*-*-elf* | mips*-*-rtems* | mips*-*-vxworks | mips*-*-windiss)
|
|
targ_defvec=bfd_elf32_bigmips_vec
|
|
targ_selvecs="bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec"
|
|
;;
|
|
mips*-*-none)
|
|
targ_defvec=bfd_elf32_bigmips_vec
|
|
targ_selvecs="bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec"
|
|
;;
|
|
#ifdef BFD64
|
|
mips64*-*-openbsd*)
|
|
targ_defvec=bfd_elf64_tradbigmips_vec
|
|
targ_selvecs="bfd_elf32_ntradlittlemips_vec bfd_elf32_ntradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf64_tradlittlemips_vec"
|
|
want64=true
|
|
;;
|
|
#endif
|
|
mips*el-*-openbsd*)
|
|
targ_defvec=bfd_elf32_littlemips_vec
|
|
targ_selvecs="bfd_elf32_bigmips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec ecoff_little_vec ecoff_big_vec"
|
|
;;
|
|
mips*-*-openbsd*)
|
|
targ_defvec=bfd_elf32_bigmips_vec
|
|
targ_selvecs="bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec ecoff_big_vec ecoff_little_vec"
|
|
;;
|
|
#ifdef BFD64
|
|
mips64*el-*-linux*)
|
|
targ_defvec=bfd_elf32_ntradlittlemips_vec
|
|
targ_selvecs="bfd_elf32_ntradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf64_tradlittlemips_vec bfd_elf64_tradbigmips_vec"
|
|
want64=true
|
|
;;
|
|
mips64*-*-linux*)
|
|
targ_defvec=bfd_elf32_ntradbigmips_vec
|
|
targ_selvecs="bfd_elf32_ntradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf64_tradbigmips_vec bfd_elf64_tradlittlemips_vec"
|
|
want64=true
|
|
;;
|
|
mips*el-*-linux*)
|
|
targ_defvec=bfd_elf32_tradlittlemips_vec
|
|
targ_selvecs="bfd_elf32_tradbigmips_vec ecoff_little_vec ecoff_big_vec bfd_elf32_ntradlittlemips_vec bfd_elf64_tradlittlemips_vec bfd_elf32_ntradbigmips_vec bfd_elf64_tradbigmips_vec"
|
|
want64=true
|
|
;;
|
|
mips*-*-linux*)
|
|
targ_defvec=bfd_elf32_tradbigmips_vec
|
|
targ_selvecs="bfd_elf32_tradlittlemips_vec ecoff_big_vec ecoff_little_vec bfd_elf32_ntradbigmips_vec bfd_elf64_tradbigmips_vec bfd_elf32_ntradlittlemips_vec bfd_elf64_tradlittlemips_vec"
|
|
want64=true
|
|
;;
|
|
mips64*el-*-freebsd* | mips64*el-*-kfreebsd*-gnu)
|
|
# FreeBSD vectors
|
|
targ_defvec=bfd_elf32_ntradlittlemips_freebsd_vec
|
|
targ_selvecs="bfd_elf32_ntradbigmips_freebsd_vec bfd_elf32_tradlittlemips_freebsd_vec bfd_elf32_tradbigmips_freebsd_vec bfd_elf64_tradlittlemips_freebsd_vec bfd_elf64_tradbigmips_freebsd_vec"
|
|
# Generic vectors
|
|
targ_selvecs="${targ_selvecs} bfd_elf32_ntradlittlemips_vec bfd_elf32_ntradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf64_tradlittlemips_vec bfd_elf64_tradbigmips_vec"
|
|
want64=true
|
|
;;
|
|
mips64*-*-freebsd* | mips64*-*-kfreebsd*-gnu)
|
|
# FreeBSD vectors
|
|
targ_defvec=bfd_elf32_ntradbigmips_freebsd_vec
|
|
targ_selvecs="bfd_elf32_ntradlittlemips_freebsd_vec bfd_elf32_tradbigmips_freebsd_vec bfd_elf32_tradlittlemips_freebsd_vec bfd_elf64_tradbigmips_freebsd_vec bfd_elf64_tradlittlemips_freebsd_vec"
|
|
# Generic vectors
|
|
targ_selvecs="${targ_selvecs} bfd_elf32_ntradbigmips_vec bfd_elf32_ntradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf64_tradbigmips_vec bfd_elf64_tradlittlemips_vec"
|
|
want64=true
|
|
;;
|
|
#endif
|
|
mips*el-*-freebsd* | mips*el-*-kfreebsd*-gnu)
|
|
# FreeBSD vectors
|
|
targ_defvec=bfd_elf32_tradlittlemips_freebsd_vec
|
|
targ_selvecs="bfd_elf32_tradbigmips_freebsd_vec bfd_elf32_ntradlittlemips_freebsd_vec bfd_elf64_tradlittlemips_freebsd_vec bfd_elf32_ntradbigmips_freebsd_vec bfd_elf64_tradbigmips_freebsd_vec"
|
|
# Generic vectors
|
|
targ_selvecs="${targ_selvecs} bfd_elf32_tradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf32_ntradlittlemips_vec bfd_elf64_tradlittlemips_vec bfd_elf32_ntradbigmips_vec bfd_elf64_tradbigmips_vec"
|
|
want64=true
|
|
;;
|
|
mips*-*-freebsd* | mips*-*-kfreebsd*-gnu)
|
|
# FreeBSD vectors
|
|
targ_defvec=bfd_elf32_tradbigmips_freebsd_vec
|
|
targ_selvecs="bfd_elf32_tradlittlemips_freebsd_vec bfd_elf32_ntradbigmips_freebsd_vec bfd_elf64_tradbigmips_freebsd_vec bfd_elf32_ntradlittlemips_freebsd_vec bfd_elf64_tradlittlemips_freebsd_vec"
|
|
# Generic vectors
|
|
targ_selvecs="${targ_selvecs} bfd_elf32_tradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf32_ntradbigmips_vec bfd_elf64_tradbigmips_vec bfd_elf32_ntradlittlemips_vec bfd_elf64_tradlittlemips_vec"
|
|
want64=true
|
|
;;
|
|
#ifdef BFD64
|
|
mmix-*-*)
|
|
targ_defvec=bfd_elf64_mmix_vec
|
|
targ_selvecs=bfd_mmo_vec
|
|
want64=true
|
|
;;
|
|
#endif
|
|
mn10200-*-*)
|
|
targ_defvec=bfd_elf32_mn10200_vec
|
|
;;
|
|
|
|
mn10300-*-*)
|
|
targ_defvec=bfd_elf32_mn10300_vec
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
mt-*-elf)
|
|
targ_defvec=bfd_elf32_mt_vec
|
|
;;
|
|
|
|
msp430-*-*)
|
|
targ_defvec=bfd_elf32_msp430_vec
|
|
targ_selvecs=bfd_elf32_msp430_ti_vec
|
|
;;
|
|
|
|
ns32k-pc532-mach* | ns32k-pc532-ux*)
|
|
targ_defvec=pc532machaout_vec
|
|
targ_underscore=yes
|
|
;;
|
|
ns32k-*-netbsd* | ns32k-*-lites* | ns32k-*-openbsd*)
|
|
targ_defvec=pc532netbsd_vec
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
nios2eb-*-*)
|
|
targ_defvec=bfd_elf32_bignios2_vec
|
|
targ_selvecs=bfd_elf32_littlenios2_vec
|
|
;;
|
|
|
|
nios2el-*-*)
|
|
targ_defvec=bfd_elf32_littlenios2_vec
|
|
targ_selvecs=bfd_elf32_bignios2_vec
|
|
;;
|
|
|
|
nios2-*-*)
|
|
targ_defvec=bfd_elf32_littlenios2_vec
|
|
targ_selvecs=bfd_elf32_bignios2_vec
|
|
;;
|
|
|
|
openrisc-*-elf)
|
|
targ_defvec=bfd_elf32_openrisc_vec
|
|
;;
|
|
|
|
or32-*-coff)
|
|
targ_defvec=or32coff_big_vec
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
or32-*-elf)
|
|
targ_defvec=bfd_elf32_or32_big_vec
|
|
;;
|
|
|
|
pdp11-*-*)
|
|
targ_defvec=pdp11_aout_vec
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
pj-*-*)
|
|
targ_defvec=bfd_elf32_pj_vec
|
|
targ_selvecs="bfd_elf32_pj_vec bfd_elf32_pjl_vec"
|
|
;;
|
|
|
|
pjl-*-*)
|
|
targ_defvec=bfd_elf32_pjl_vec
|
|
targ_selvecs="bfd_elf32_pjl_vec bfd_elf32_pj_vec bfd_elf32_i386_vec"
|
|
;;
|
|
|
|
powerpc-*-aix5.[01] | rs6000-*-aix5.[01])
|
|
targ_defvec=rs6000coff_vec
|
|
targ_selvecs="aix5coff64_vec"
|
|
want64=true
|
|
;;
|
|
#ifdef BFD64
|
|
powerpc64-*-aix5.[01] | rs6000-*-aix5.[01])
|
|
targ_defvec=aix5coff64_vec
|
|
targ_selvecs="rs6000coff_vec"
|
|
want64=true
|
|
;;
|
|
#endif
|
|
powerpc-*-aix[5-9]* | rs6000-*-aix[5-9]*)
|
|
targ_cflags=-DAIX_WEAK_SUPPORT
|
|
targ_defvec=rs6000coff_vec
|
|
targ_selvecs="aix5coff64_vec"
|
|
want64=true
|
|
;;
|
|
#ifdef BFD64
|
|
powerpc64-*-aix[5-9]* | rs6000-*-aix[5-9]*)
|
|
targ_cflags=-DAIX_WEAK_SUPPORT
|
|
targ_defvec=aix5coff64_vec
|
|
targ_selvecs="rs6000coff_vec"
|
|
want64=true
|
|
;;
|
|
#endif
|
|
|
|
powerpc-*-aix* | powerpc-*-beos* | rs6000-*-*)
|
|
targ_defvec=rs6000coff_vec
|
|
targ64_selvecs=rs6000coff64_vec
|
|
case "${targ}" in
|
|
*-*-aix4.[3456789]* | *-*-aix[56789]*)
|
|
want64=true;;
|
|
*)
|
|
targ_cflags=-DSMALL_ARCHIVE;;
|
|
esac
|
|
;;
|
|
#ifdef BFD64
|
|
powerpc64-*-aix*)
|
|
targ_defvec=rs6000coff64_vec
|
|
targ_selvecs=rs6000coff_vec
|
|
want64=true
|
|
;;
|
|
powerpc64-*-freebsd*)
|
|
targ_defvec=bfd_elf64_powerpc_freebsd_vec
|
|
targ_selvecs="bfd_elf64_powerpc_vec bfd_elf32_powerpc_vec bfd_elf32_powerpc_freebsd_vec bfd_elf32_powerpcle_vec rs6000coff_vec rs6000coff64_vec aix5coff64_vec"
|
|
want64=true
|
|
;;
|
|
powerpc64-*-elf* | powerpc-*-elf64* | powerpc64-*-linux* | \
|
|
powerpc64-*-*bsd*)
|
|
targ_defvec=bfd_elf64_powerpc_vec
|
|
targ_selvecs="bfd_elf64_powerpcle_vec bfd_elf32_powerpc_vec bfd_elf32_powerpcle_vec rs6000coff_vec rs6000coff64_vec aix5coff64_vec"
|
|
want64=true
|
|
;;
|
|
powerpc64le-*-elf* | powerpcle-*-elf64* | powerpc64le-*-linux* | \
|
|
powerpc64le-*-*bsd*)
|
|
targ_defvec=bfd_elf64_powerpcle_vec
|
|
targ_selvecs="bfd_elf64_powerpc_vec bfd_elf32_powerpcle_vec bfd_elf32_powerpc_vec rs6000coff_vec rs6000coff64_vec aix5coff64_vec"
|
|
want64=true
|
|
;;
|
|
#endif
|
|
powerpc-*-*freebsd*)
|
|
targ_defvec=bfd_elf32_powerpc_freebsd_vec
|
|
targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec bfd_elf32_powerpcle_vec ppcboot_vec"
|
|
targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_vec bfd_elf64_powerpc_freebsd_vec"
|
|
;;
|
|
powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \
|
|
powerpc-*-solaris2* | powerpc-*-linux-* | powerpc-*-rtems* | \
|
|
powerpc-*-chorus*)
|
|
targ_defvec=bfd_elf32_powerpc_vec
|
|
targ_selvecs="rs6000coff_vec bfd_elf32_powerpcle_vec ppcboot_vec"
|
|
targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_vec"
|
|
;;
|
|
powerpc-*-kaos*)
|
|
targ_defvec=bfd_elf32_powerpc_vec
|
|
targ_selvecs="bfd_elf32_powerpcle_vec ppcboot_vec"
|
|
targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_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=pmac_xcoff_vec
|
|
;;
|
|
powerpc-*-lynxos*)
|
|
targ_defvec=bfd_elf32_powerpc_vec
|
|
targ_selvecs="rs6000coff_vec"
|
|
targ_cflags=-DSMALL_ARCHIVE
|
|
;;
|
|
powerpc-*-netware*)
|
|
targ_defvec=bfd_elf32_powerpc_vec
|
|
targ_selvecs="nlm32_powerpc_vec rs6000coff_vec"
|
|
;;
|
|
powerpc-*-nto*)
|
|
targ_defvec=bfd_elf32_powerpc_vec
|
|
targ_selvecs="rs6000coff_vec bfd_elf32_powerpcle_vec ppcboot_vec"
|
|
;;
|
|
powerpc-*-vxworks* | powerpc-*-windiss*)
|
|
targ_defvec=bfd_elf32_powerpc_vxworks_vec
|
|
targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec bfd_elf32_powerpcle_vec ppcboot_vec"
|
|
targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_vec"
|
|
;;
|
|
powerpcle-*-nto*)
|
|
targ_defvec=bfd_elf32_powerpcle_vec
|
|
targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec"
|
|
;;
|
|
powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \
|
|
powerpcle-*-solaris2* | powerpcle-*-linux-* | powerpcle-*-vxworks*)
|
|
targ_defvec=bfd_elf32_powerpcle_vec
|
|
targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec"
|
|
targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_vec"
|
|
;;
|
|
powerpcle-*-pe | powerpcle-*-winnt* | powerpcle-*-cygwin*)
|
|
targ_defvec=bfd_powerpcle_pe_vec
|
|
targ_selvecs="bfd_powerpcle_pei_vec bfd_powerpc_pei_vec bfd_powerpcle_pe_vec bfd_powerpc_pe_vec"
|
|
;;
|
|
|
|
rl78-*-elf)
|
|
targ_defvec=bfd_elf32_rl78_vec
|
|
;;
|
|
|
|
rx-*-elf)
|
|
targ_defvec=bfd_elf32_rx_le_vec
|
|
targ_selvecs="bfd_elf32_rx_be_vec bfd_elf32_rx_le_vec bfd_elf32_rx_be_ns_vec"
|
|
;;
|
|
|
|
s390-*-linux*)
|
|
targ_defvec=bfd_elf32_s390_vec
|
|
targ64_selvecs=bfd_elf64_s390_vec
|
|
want64=true
|
|
;;
|
|
#ifdef BFD64
|
|
s390x-*-linux*)
|
|
targ_defvec=bfd_elf64_s390_vec
|
|
targ_selvecs=bfd_elf32_s390_vec
|
|
want64=true
|
|
;;
|
|
s390x-*-tpf*)
|
|
targ_defvec=bfd_elf64_s390_vec
|
|
want64=true
|
|
;;
|
|
|
|
score*-*-elf*)
|
|
targ_defvec=bfd_elf32_bigscore_vec
|
|
targ_selvecs=bfd_elf32_littlescore_vec
|
|
;;
|
|
|
|
sh64l*-*-elf*)
|
|
targ_defvec=bfd_elf32_sh64l_vec
|
|
targ_selvecs="bfd_elf32_sh64_vec bfd_elf64_sh64l_vec bfd_elf64_sh64_vec bfd_elf32_shl_vec bfd_elf32_sh_vec"
|
|
targ_underscore=yes
|
|
want64=true
|
|
;;
|
|
sh64-*-elf*)
|
|
targ_defvec=bfd_elf32_sh64_vec
|
|
targ_selvecs="bfd_elf32_sh64l_vec bfd_elf64_sh64_vec bfd_elf64_sh64l_vec bfd_elf32_sh_vec bfd_elf32_shl_vec"
|
|
targ_underscore=yes
|
|
want64=true
|
|
;;
|
|
sh64eb-*-linux*)
|
|
targ_defvec=bfd_elf32_sh64blin_vec
|
|
targ_selvecs="bfd_elf32_sh64lin_vec bfd_elf64_sh64blin_vec bfd_elf64_sh64lin_vec bfd_elf32_shblin_vec bfd_elf32_shlin_vec"
|
|
want64=true
|
|
;;
|
|
sh64-*-linux*)
|
|
targ_defvec=bfd_elf32_sh64lin_vec
|
|
targ_selvecs="bfd_elf32_sh64blin_vec bfd_elf64_sh64lin_vec bfd_elf64_sh64blin_vec bfd_elf32_shlin_vec bfd_elf32_shblin_vec"
|
|
want64=true
|
|
;;
|
|
sh-*-linux*)
|
|
targ_defvec=bfd_elf32_shblin_vec
|
|
targ_selvecs="bfd_elf32_shlin_vec bfd_elf32_sh64lin_vec bfd_elf32_sh64blin_vec bfd_elf64_sh64lin_vec bfd_elf64_sh64blin_vec"
|
|
want64=true
|
|
;;
|
|
#endif /* BFD64 */
|
|
|
|
sh*eb-*-linux*)
|
|
targ_defvec=bfd_elf32_shblin_vec
|
|
targ_selvecs=bfd_elf32_shlin_vec
|
|
;;
|
|
sh*-*-linux*)
|
|
targ_defvec=bfd_elf32_shlin_vec
|
|
targ_selvecs=bfd_elf32_shblin_vec
|
|
;;
|
|
|
|
sh-*-uclinux* | sh[12]-*-uclinux*)
|
|
targ_defvec=bfd_elf32_sh_vec
|
|
targ_selvecs="bfd_elf32_shl_vec bfd_elf32_shblin_vec bfd_elf32_shlin_vec bfd_elf32_shfd_vec bfd_elf32_shbfd_vec"
|
|
#ifdef BFD64
|
|
targ_selvecs="${targ_selvecs} bfd_elf32_sh64lin_vec bfd_elf32_sh64blin_vec bfd_elf64_sh64lin_vec bfd_elf64_sh64blin_vec"
|
|
#endif
|
|
;;
|
|
|
|
#ifdef BFD64
|
|
sh5le-*-netbsd*)
|
|
targ_defvec=bfd_elf32_sh64lnbsd_vec
|
|
targ_selvecs="bfd_elf32_sh64nbsd_vec bfd_elf64_sh64lnbsd_vec bfd_elf64_sh64nbsd_vec bfd_elf32_shnbsd_vec bfd_elf32_shlnbsd_vec"
|
|
want64=true
|
|
;;
|
|
sh5-*-netbsd*)
|
|
targ_defvec=bfd_elf32_sh64nbsd_vec
|
|
targ_selvecs="bfd_elf32_sh64lnbsd_vec bfd_elf64_sh64lnbsd_vec bfd_elf64_sh64nbsd_vec bfd_elf32_shnbsd_vec bfd_elf32_shlnbsd_vec"
|
|
want64=true
|
|
;;
|
|
|
|
sh64le-*-netbsd*)
|
|
targ_defvec=bfd_elf64_sh64lnbsd_vec
|
|
targ_selvecs="bfd_elf64_sh64nbsd_vec bfd_elf32_sh64lnbsd_vec bfd_elf32_sh64nbsd_vec bfd_elf32_shnbsd_vec bfd_elf32_shlnbsd_vec"
|
|
want64=true
|
|
;;
|
|
sh64-*-netbsd*)
|
|
targ_defvec=bfd_elf64_sh64nbsd_vec
|
|
targ_selvecs="bfd_elf64_sh64lnbsd_vec bfd_elf32_sh64lnbsd_vec bfd_elf32_sh64nbsd_vec bfd_elf32_shnbsd_vec bfd_elf32_shlnbsd_vec"
|
|
want64=true
|
|
;;
|
|
|
|
sh*l*-*-netbsdelf*)
|
|
targ_defvec=bfd_elf32_shlnbsd_vec
|
|
targ_selvecs="bfd_elf32_shnbsd_vec shcoff_vec shlcoff_vec bfd_elf32_sh64lnbsd_vec bfd_elf32_sh64nbsd_vec bfd_elf64_sh64lnbsd_vec bfd_elf64_sh64nbsd_vec"
|
|
want64=true
|
|
;;
|
|
sh-*-netbsdelf*)
|
|
targ_defvec=bfd_elf32_shnbsd_vec
|
|
targ_selvecs="bfd_elf32_shlnbsd_vec shcoff_vec shlcoff_vec bfd_elf32_sh64lnbsd_vec bfd_elf32_sh64nbsd_vec bfd_elf64_sh64lnbsd_vec bfd_elf64_sh64nbsd_vec"
|
|
want64=true
|
|
;;
|
|
#endif
|
|
|
|
sh*-*-netbsdelf*)
|
|
targ_defvec=bfd_elf32_shnbsd_vec
|
|
targ_selvecs="bfd_elf32_shlnbsd_vec shcoff_vec shlcoff_vec"
|
|
;;
|
|
sh*-*-symbianelf*)
|
|
targ_defvec=bfd_elf32_shl_symbian_vec
|
|
targ_selvecs="shlcoff_vec shlcoff_small_vec"
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
#ifdef BFD64
|
|
shl*-*-elf* | sh[1234]l*-*-elf* | sh3el*-*-elf* | shl*-*-kaos*)
|
|
targ_defvec=bfd_elf32_shl_vec
|
|
targ_selvecs="bfd_elf32_sh_vec shlcoff_vec shcoff_vec shlcoff_small_vec shcoff_small_vec bfd_elf32_sh64_vec bfd_elf32_sh64l_vec bfd_elf64_sh64_vec bfd_elf64_sh64l_vec"
|
|
targ_underscore=yes
|
|
want64=true
|
|
;;
|
|
#endif
|
|
|
|
sh-*-rtemscoff*)
|
|
targ_defvec=shcoff_vec
|
|
targ_selvecs="shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec"
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
#ifdef BFD64
|
|
sh-*-elf* | sh[1234]*-elf* | sh-*-rtems* | sh-*-kaos*)
|
|
targ_defvec=bfd_elf32_sh_vec
|
|
targ_selvecs="bfd_elf32_shl_vec shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec bfd_elf32_sh64_vec bfd_elf32_sh64l_vec bfd_elf64_sh64_vec bfd_elf64_sh64l_vec"
|
|
targ_underscore=yes
|
|
want64=true
|
|
;;
|
|
#endif
|
|
|
|
sh-*-nto*)
|
|
targ_defvec=bfd_elf32_sh_vec
|
|
targ_selvecs="bfd_elf32_shl_vec shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec"
|
|
targ_underscore=yes
|
|
;;
|
|
sh*-*-openbsd*)
|
|
targ_defvec=bfd_elf32_shlnbsd_vec
|
|
targ_selvecs="bfd_elf32_shnbsd_vec shcoff_vec shlcoff_vec"
|
|
;;
|
|
sh-*-pe)
|
|
targ_defvec=shlpe_vec
|
|
targ_selvecs="shlpe_vec shlpei_vec"
|
|
targ_underscore=yes
|
|
;;
|
|
sh-*-vxworks)
|
|
targ_defvec=bfd_elf32_shvxworks_vec
|
|
targ_selvecs="bfd_elf32_shlvxworks_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 shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec"
|
|
targ_underscore=yes
|
|
;;
|
|
sh-*-*)
|
|
targ_defvec=shcoff_vec
|
|
targ_selvecs="shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec"
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
sparclet-*-aout*)
|
|
targ_defvec=sunos_big_vec
|
|
targ_selvecs=sparcle_aout_vec
|
|
targ_underscore=yes
|
|
;;
|
|
sparc86x-*-aout*)
|
|
targ_defvec=sunos_big_vec
|
|
targ_underscore=yes
|
|
;;
|
|
sparclite-*-elf* | sparc86x-*-elf*)
|
|
targ_defvec=bfd_elf32_sparc_vec
|
|
;;
|
|
sparc*-*-chorus*)
|
|
targ_defvec=bfd_elf32_sparc_vec
|
|
;;
|
|
sparc-*-linux*aout*)
|
|
targ_defvec=sparclinux_vec
|
|
targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec"
|
|
targ_underscore=yes
|
|
;;
|
|
sparc-*-linux-* | sparcv*-*-linux-*)
|
|
targ_defvec=bfd_elf32_sparc_vec
|
|
targ_selvecs="sparclinux_vec bfd_elf64_sparc_vec sunos_big_vec"
|
|
;;
|
|
sparc-*-netbsdelf*)
|
|
targ_defvec=bfd_elf32_sparc_vec
|
|
targ_selvecs=sparcnetbsd_vec
|
|
;;
|
|
sparc-*-netbsdaout* | sparc-*-netbsd*)
|
|
targ_defvec=sparcnetbsd_vec
|
|
targ_selvecs=bfd_elf32_sparc_vec
|
|
targ_underscore=yes
|
|
;;
|
|
sparc-*-openbsd[0-2].* | sparc-*-openbsd3.[0-1])
|
|
targ_defvec=sparcnetbsd_vec
|
|
targ_underscore=yes
|
|
;;
|
|
sparc-*-openbsd*)
|
|
targ_defvec=bfd_elf32_sparc_vec
|
|
targ_selvecs=sparcnetbsd_vec
|
|
;;
|
|
sparc-*-elf*)
|
|
targ_defvec=bfd_elf32_sparc_vec
|
|
targ_selvecs=sunos_big_vec
|
|
;;
|
|
sparc-*-solaris2.[0-6] | sparc-*-solaris2.[0-6].*)
|
|
targ_defvec=bfd_elf32_sparc_sol2_vec
|
|
targ_selvecs=sunos_big_vec
|
|
;;
|
|
#ifdef BFD64
|
|
sparc-*-solaris2* | sparcv9-*-solaris2* | sparc64-*-solaris2*)
|
|
targ_defvec=bfd_elf32_sparc_sol2_vec
|
|
targ_selvecs="bfd_elf64_sparc_sol2_vec sunos_big_vec"
|
|
want64=true
|
|
;;
|
|
#endif
|
|
sparc-*-sysv4*)
|
|
targ_defvec=bfd_elf32_sparc_vec
|
|
;;
|
|
sparc-*-vxworks*)
|
|
targ_defvec=bfd_elf32_sparc_vxworks_vec
|
|
targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec"
|
|
;;
|
|
sparc-*-netware*)
|
|
targ_defvec=bfd_elf32_sparc_vec
|
|
targ_selvecs="nlm32_sparc_vec sunos_big_vec"
|
|
;;
|
|
#ifdef BFD64
|
|
sparc64-*-aout*)
|
|
targ_defvec=sunos_big_vec
|
|
targ_underscore=yes
|
|
want64=true
|
|
;;
|
|
sparc64*-*-linux-*)
|
|
targ_defvec=bfd_elf64_sparc_vec
|
|
targ_selvecs="bfd_elf32_sparc_vec sparclinux_vec sunos_big_vec"
|
|
want64=true
|
|
;;
|
|
sparc64-*-elf* | sparc64-*-rtems* )
|
|
targ_defvec=bfd_elf64_sparc_vec
|
|
targ_selvecs=bfd_elf32_sparc_vec
|
|
want64=true
|
|
;;
|
|
#endif /* BFD64 */
|
|
sparc*-*-coff*)
|
|
targ_defvec=sparccoff_vec
|
|
;;
|
|
sparc-*-rtems*)
|
|
targ_defvec=bfd_elf32_sparc_vec
|
|
targ_selvecs="sunos_big_vec sparccoff_vec"
|
|
;;
|
|
sparc*-*-*)
|
|
targ_defvec=sunos_big_vec
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
spu-*-elf)
|
|
targ_defvec=bfd_elf32_spu_vec
|
|
want64=true
|
|
;;
|
|
|
|
#if HAVE_host_aout_vec
|
|
tahoe-*-*)
|
|
targ_defvec=host_aout_vec
|
|
targ_underscore=yes
|
|
;;
|
|
#endif
|
|
|
|
tic6x-*-elf)
|
|
targ_defvec=bfd_elf32_tic6x_elf_le_vec
|
|
targ_selvecs="bfd_elf32_tic6x_elf_be_vec bfd_elf32_tic6x_le_vec bfd_elf32_tic6x_be_vec"
|
|
;;
|
|
|
|
tic6x-*-uclinux)
|
|
targ_defvec=bfd_elf32_tic6x_linux_le_vec
|
|
targ_selvecs="bfd_elf32_tic6x_linux_be_vec bfd_elf32_tic6x_le_vec bfd_elf32_tic6x_be_vec"
|
|
;;
|
|
|
|
tic80*-*-*)
|
|
targ_defvec=tic80coff_vec
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
#ifdef BFD64
|
|
tilegx-*-*)
|
|
targ_defvec=bfd_elf64_tilegx_le_vec
|
|
targ_selvecs="bfd_elf64_tilegx_be_vec bfd_elf32_tilegx_be_vec bfd_elf32_tilegx_le_vec"
|
|
;;
|
|
tilegxbe-*-*)
|
|
targ_defvec=bfd_elf64_tilegx_be_vec
|
|
targ_selvecs="bfd_elf64_tilegx_le_vec bfd_elf32_tilegx_be_vec bfd_elf32_tilegx_le_vec"
|
|
;;
|
|
#endif
|
|
|
|
tilepro-*-*)
|
|
targ_defvec=bfd_elf32_tilepro_vec
|
|
;;
|
|
|
|
v850*-*-*)
|
|
targ_defvec=bfd_elf32_v850_vec
|
|
targ_selvecs="bfd_elf32_v850_rh850_vec"
|
|
;;
|
|
|
|
vax-*-netbsdelf*)
|
|
targ_defvec=bfd_elf32_vax_vec
|
|
targ_selvecs="vaxnetbsd_vec vax1knetbsd_vec"
|
|
;;
|
|
|
|
vax-*-netbsdaout* | vax-*-netbsd*)
|
|
targ_defvec=vaxnetbsd_vec
|
|
targ_selvecs="bfd_elf32_vax_vec vax1knetbsd_vec"
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
vax-*-bsd* | vax-*-ultrix*)
|
|
targ_defvec=vaxbsd_vec
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
vax-*-openbsd*)
|
|
targ_defvec=vaxnetbsd_vec
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
vax-*-linux-*)
|
|
targ_defvec=bfd_elf32_vax_vec
|
|
;;
|
|
|
|
we32k-*-*)
|
|
targ_defvec=we32kcoff_vec
|
|
;;
|
|
|
|
w65-*-*)
|
|
targ_defvec=w65_vec
|
|
;;
|
|
|
|
xgate-*-*)
|
|
targ_defvec=bfd_elf32_xgate_vec
|
|
targ_selvecs="bfd_elf32_xgate_vec"
|
|
;;
|
|
|
|
xstormy16-*-elf)
|
|
targ_defvec=bfd_elf32_xstormy16_vec
|
|
;;
|
|
|
|
xtensa*-*-*)
|
|
targ_defvec=bfd_elf32_xtensa_le_vec
|
|
targ_selvecs=bfd_elf32_xtensa_be_vec
|
|
;;
|
|
xc16x-*-elf)
|
|
targ_defvec=bfd_elf32_xc16x_vec
|
|
;;
|
|
|
|
z80-*-*)
|
|
targ_defvec=z80coff_vec
|
|
targ_underscore=no
|
|
;;
|
|
|
|
z8k*-*-*)
|
|
targ_defvec=z8kcoff_vec
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
*-*-ieee*)
|
|
targ_defvec=ieee_vec
|
|
;;
|
|
|
|
*-adobe-*)
|
|
targ_defvec=a_out_adobe_vec
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
*-sony-*)
|
|
targ_defvec=newsos3_vec
|
|
targ_underscore=yes
|
|
;;
|
|
|
|
*-tandem-*)
|
|
targ_defvec=m68kcoff_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
|
|
|
|
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
|
|
*bfd_elf64* | *bfd_elf32_n*mips*)
|
|
targ_selvecs="${targ_selvecs} bfd_elf64_little_generic_vec bfd_elf64_big_generic_vec bfd_elf32_little_generic_vec bfd_elf32_big_generic_vec"
|
|
;;
|
|
*bfd_elf32*)
|
|
targ_selvecs="${targ_selvecs} bfd_elf32_little_generic_vec bfd_elf32_big_generic_vec"
|
|
;;
|
|
esac
|
|
|
|
# If we support Intel L1OM target, then add support for bfd_l1om_arch.
|
|
case "${targ_defvec} ${targ_selvecs}" in
|
|
*bfd_elf64_l1om_vec*)
|
|
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
|
|
*bfd_elf64_k1om_vec*)
|
|
targ_archs="$targ_archs bfd_k1om_arch"
|
|
;;
|
|
esac
|