targ64_extra_emuls=
targ64_extra_libpath=
-# Please try to keep this table in alphabetic order - it makes it
-# much easier to lookup a specific archictecture. Naturally any
-# architecture variants should be kept together even if their names
-# break the alpha sorting.
+# Please try to keep this table more or less in alphabetic order - it
+# makes it much easier to lookup a specific archictecture.
case "${targ}" in
aarch64_be-*-elf) targ_emul=aarch64elfb
targ_extra_emuls="aarch64elf aarch64elf32 aarch64elf32b armelfb armelf"
alpha*-*-*vms*) targ_emul=alphavms
targ_extra_ofiles=
;;
+am33_2.0-*-linux*) targ_emul=elf32am33lin # mn10300 variant
+ ;;
arc*-*-elf*) targ_emul=arcelf
targ_extra_emuls="arcelf_prof arclinux arclinux_nps arclinux_prof arcv2elf arcv2elfx"
;;
frv-*-*) targ_emul=elf32frv
targ_extra_emuls="elf32frvfd"
;;
-moxie-*-moxiebox*) targ_emul=moxiebox
- targ_extra_ofiles=ldelfgen.o
- ;;
-moxie-*-*) targ_emul=elf32moxie
+ft32-*-*) targ_emul=elf32ft32
targ_extra_ofiles=ldelfgen.o
;;
h8300-*-elf* | h8300-*-rtems*)
i[3-7]86-*-rdos*) targ_emul=elf_i386
targ_extra_emuls=elf_iamcu
;;
-x86_64-*-rdos*) targ_emul=elf64rdos
- ;;
-x86_64-*-cloudabi*) targ_emul=elf_x86_64_cloudabi
- ;;
i[3-7]86-*-bsd) targ_emul=i386bsd
targ_extra_ofiles=
;;
targ64_extra_emuls="elf_x86_64 elf32_x86_64 elf_l1om elf_k1om"
targ64_extra_libpath="elf_x86_64 elf32_x86_64"
;;
-x86_64-*-linux-gnux32) targ_emul=elf32_x86_64
- targ_extra_emuls="elf_x86_64 elf_i386 elf_iamcu elf_l1om elf_k1om"
- targ_extra_libpath="elf_i386 elf_iamcu elf_x86_64 elf_l1om elf_k1om"
- tdir_elf_iamcu=`echo ${targ_alias} | sed -e 's/x86_64/i386/' -e 's/-linux-gnux32/-linux-gnu/'`
- tdir_elf_i386=`echo ${targ_alias} | sed -e 's/x86_64/i386/' -e 's/-linux-gnux32/-linux-gnu/'`
- ;;
-x86_64-*-linux-*) targ_emul=elf_x86_64
- targ_extra_emuls="elf32_x86_64 elf_i386 elf_iamcu elf_l1om elf_k1om"
- targ_extra_libpath="elf_i386 elf32_x86_64 elf_l1om elf_k1om"
- tdir_elf_i386=`echo ${targ_alias} | sed -e 's/x86_64/i386/'`
- ;;
i[3-7]86-*-redox*) targ_emul=elf_i386
targ_extra_emuls=elf_x86_64
;;
-x86_64-*-redox*) targ_emul=elf_x86_64
- targ_extra_emuls=elf_i386
- ;;
i[3-7]86-*-sysv[45]*) targ_emul=elf_i386
targ_extra_emuls=elf_iamcu
;;
targ_extra_emuls="elf_i386_ldso elf_i386 elf_iamcu elf_x86_64_sol2 elf_x86_64 elf_l1om elf_k1om"
targ_extra_libpath=$targ_extra_emuls
;;
-x86_64-*-solaris2*)
- targ_emul=elf_x86_64_sol2
- targ_extra_emuls="elf_x86_64 elf_i386_sol2 elf_i386_ldso elf_i386 elf_iamcu elf_l1om elf_k1om"
- targ_extra_libpath=$targ_extra_emuls
- tdir_elf_i386=`echo ${targ_alias} | sed -e 's/x86_64/i386/'`
- ;;
i[3-7]86-*-unixware) targ_emul=elf_i386
targ_extra_emuls=elf_iamcu
;;
i[3-7]86-*-netbsdpe*) targ_emul=i386pe
targ_extra_ofiles="deffilep.o pe-dll.o"
;;
-x86_64-*-netbsd*) targ_emul=elf_x86_64
- targ_extra_emuls="elf_i386 elf_iamcu elf_l1om elf_k1om"
- tdir_elf_iamcu=`echo ${targ_alias} | \
- sed -e 's/x86_64/i386/'`
- case "${tdir_elf_iamcu}" in
- *-netbsdelf*) ;;
- *) tdir_elf_iamcu=`echo ${tdir_elf_iamcu} | \
- sed -e 's/netbsd/netbsdelf/'`;;
- esac
- tdir_elf_i386=`echo ${targ_alias} | \
- sed -e 's/x86_64/i386/'`
- case "${tdir_elf_i386}" in
- *-netbsdelf*) ;;
- *) tdir_elf_i386=`echo ${tdir_elf_i386} | \
- sed -e 's/netbsd/netbsdelf/'`;;
- esac
- ;;
i[3-7]86-*-elfiamcu) targ_emul=elf_iamcu
targ_extra_emuls=elf_i386
;;
targ_emul=elf_i386
targ_extra_emuls=elf_iamcu
;;
-x86_64-*-elf* | x86_64-*-rtems* | x86_64-*-fuchsia*)
- targ_emul=elf_x86_64
- targ_extra_emuls="elf_i386 elf_iamcu elf32_x86_64 elf_l1om elf_k1om"
- targ_extra_libpath="elf_i386 elf_iamcu elf32_x86_64 elf_l1om elf_k1om"
- tdir_elf_i386=`echo ${targ_alias} | sed -e 's/x86_64/i386/'`
- ;;
i[3-7]86-*-dragonfly*) targ_emul=elf_i386
targ_extra_emuls="elf_iamcu i386bsd"
;;
-x86_64-*-dragonfly*) targ_emul=elf_x86_64
- targ_extra_emuls="elf_i386 elf_iamcu elf_l1om elf_k1om"
- ;;
i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu)
targ_emul=elf_i386_fbsd
targ_extra_emuls="elf_i386 elf_iamcu i386bsd"
;;
-x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu)
- targ_emul=elf_x86_64_fbsd
- targ_extra_emuls="elf_i386_fbsd elf_x86_64 elf_i386 elf_iamcu elf_l1om elf_l1om_fbsd elf_k1om elf_k1om_fbsd"
- targ_extra_libpath="elf_i386_fbsd"
- tdir_elf_i386_fbsd=`echo ${targ_alias} \
- | sed -e 's/x86_64/i386/'`
- tdir_elf_iamcu=`echo ${targ_alias} \
- | sed -e 's/x86_64/i386/'`
- tdir_elf_i386=`echo ${targ_alias} \
- | sed -e 's/x86_64/i386/'`
- ;;
i[3-7]86-*-gnu*) targ_emul=elf_i386
targ_extra_emuls=elf_iamcu
;;
i[3-7]86-*-mingw32*) targ_emul=i386pe ;
targ_extra_ofiles="deffilep.o pe-dll.o"
;;
-x86_64-*-pe | x86_64-*-pep) targ_emul=i386pep ;
- targ_extra_emuls=i386pe ;
- targ_extra_ofiles="deffilep.o pep-dll.o pe-dll.o"
- ;;
-x86_64-*-cygwin) targ_emul=i386pep ;
- targ_extra_emuls=i386pe
- targ_extra_ofiles="deffilep.o pep-dll.o pe-dll.o"
- test "$targ" != "$host" && LIB_PATH='${tooldir}/lib/w32api'
- ;;
-x86_64-*-mingw*) targ_emul=i386pep ;
- targ_extra_emuls=i386pe
- targ_extra_ofiles="deffilep.o pep-dll.o pe-dll.o"
- ;;
i[3-7]86-*-interix*) targ_emul=i386pe_posix;
targ_extra_ofiles="deffilep.o pe-dll.o"
;;
targ64_extra_emuls="elf32_x86_64_nacl elf_x86_64_nacl"
targ64_extra_libpath=$targ64_extra_emuls
;;
-x86_64-*-nacl*) targ_emul=elf32_x86_64_nacl
- targ_extra_emuls="elf_i386_nacl elf_x86_64_nacl armelf_nacl armelfb_nacl"
- targ_extra_libpath=$targ_extra_emuls
- tdir_elf_i386_nacl=`echo ${targ_alias} | sed -e 's/x86_64/i386/'`
- ;;
ia16-*-elf*) targ_emul=elf_i386
targ_extra_emuls=i386msdos
;;
;;
m68*-*-*) targ_emul=m68kelf
;;
-s12z-*-*) targ_emul=m9s12zelf
- targ_extra_ofiles=ldelfgen.o
- ;;
mcore-*-pe) targ_emul=mcorepe ;
targ_extra_ofiles="deffilep.o pe-dll.o"
;;
mmix-*-*) targ_emul=mmo
targ_extra_emuls=elf64mmix
;;
-am33_2.0-*-linux*) targ_emul=elf32am33lin
- ;;
mn10200-*-*) targ_emul=mn10200
targ_extra_ofiles=ldelfgen.o
;;
mn10300-*-*) targ_emul=mn10300
;;
-mt-*elf) targ_emul=elf32mt
+moxie-*-moxiebox*) targ_emul=moxiebox
+ targ_extra_ofiles=ldelfgen.o
+ ;;
+moxie-*-*) targ_emul=elf32moxie
targ_extra_ofiles=ldelfgen.o
;;
msp430-*-*) targ_emul=msp430elf
targ_extra_emuls="msp430X"
targ_extra_ofiles=ldelfgen.o
;;
+mt-*elf) targ_emul=elf32mt
+ targ_extra_ofiles=ldelfgen.o
+ ;;
nds32*le-*-elf*) targ_emul=nds32elf
targ_extra_emuls="nds32elf16m nds32belf nds32belf16m"
;;
;;
rx-*-*) targ_emul=elf32rx
;;
+s12z-*-*) targ_emul=m9s12zelf
+ targ_extra_ofiles=ldelfgen.o
+ ;;
s390x-*-linux*) targ_emul=elf64_s390
targ_extra_emuls=elf_s390
targ_extra_libpath=$targ_extra_emuls
;;
tilepro-*-*) targ_emul=elf32tilepro
;;
-ft32-*-*) targ_emul=elf32ft32
- targ_extra_ofiles=ldelfgen.o
- ;;
v850*-*-*) targ_emul=v850_rh850
targ_extra_emuls=v850
;;
;;
visium-*-elf) targ_emul=elf32visium
;;
+x86_64-*-rdos*) targ_emul=elf64rdos
+ ;;
+x86_64-*-cloudabi*) targ_emul=elf_x86_64_cloudabi
+ ;;
+x86_64-*-linux-gnux32) targ_emul=elf32_x86_64
+ targ_extra_emuls="elf_x86_64 elf_i386 elf_iamcu elf_l1om elf_k1om"
+ targ_extra_libpath="elf_i386 elf_iamcu elf_x86_64 elf_l1om elf_k1om"
+ tdir_elf_iamcu=`echo ${targ_alias} | sed -e 's/x86_64/i386/' -e 's/-linux-gnux32/-linux-gnu/'`
+ tdir_elf_i386=`echo ${targ_alias} | sed -e 's/x86_64/i386/' -e 's/-linux-gnux32/-linux-gnu/'`
+ ;;
+x86_64-*-linux-*) targ_emul=elf_x86_64
+ targ_extra_emuls="elf32_x86_64 elf_i386 elf_iamcu elf_l1om elf_k1om"
+ targ_extra_libpath="elf_i386 elf32_x86_64 elf_l1om elf_k1om"
+ tdir_elf_i386=`echo ${targ_alias} | sed -e 's/x86_64/i386/'`
+ ;;
+x86_64-*-redox*) targ_emul=elf_x86_64
+ targ_extra_emuls=elf_i386
+ ;;
+x86_64-*-solaris2*) targ_emul=elf_x86_64_sol2
+ targ_extra_emuls="elf_x86_64 elf_i386_sol2 elf_i386_ldso elf_i386 elf_iamcu elf_l1om elf_k1om"
+ targ_extra_libpath=$targ_extra_emuls
+ tdir_elf_i386=`echo ${targ_alias} | sed -e 's/x86_64/i386/'`
+ ;;
+x86_64-*-netbsd*) targ_emul=elf_x86_64
+ targ_extra_emuls="elf_i386 elf_iamcu elf_l1om elf_k1om"
+ tdir_elf_iamcu=`echo ${targ_alias} | \
+ sed -e 's/x86_64/i386/'`
+ case "${tdir_elf_iamcu}" in
+ *-netbsdelf*) ;;
+ *) tdir_elf_iamcu=`echo ${tdir_elf_iamcu} | \
+ sed -e 's/netbsd/netbsdelf/'`;;
+ esac
+ tdir_elf_i386=`echo ${targ_alias} | \
+ sed -e 's/x86_64/i386/'`
+ case "${tdir_elf_i386}" in
+ *-netbsdelf*) ;;
+ *) tdir_elf_i386=`echo ${tdir_elf_i386} | \
+ sed -e 's/netbsd/netbsdelf/'`;;
+ esac
+ ;;
+x86_64-*-elf* | x86_64-*-rtems* | x86_64-*-fuchsia*)
+ targ_emul=elf_x86_64
+ targ_extra_emuls="elf_i386 elf_iamcu elf32_x86_64 elf_l1om elf_k1om"
+ targ_extra_libpath="elf_i386 elf_iamcu elf32_x86_64 elf_l1om elf_k1om"
+ tdir_elf_i386=`echo ${targ_alias} | sed -e 's/x86_64/i386/'`
+ ;;
+x86_64-*-dragonfly*) targ_emul=elf_x86_64
+ targ_extra_emuls="elf_i386 elf_iamcu elf_l1om elf_k1om"
+ ;;
+x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu)
+ targ_emul=elf_x86_64_fbsd
+ targ_extra_emuls="elf_i386_fbsd elf_x86_64 elf_i386 elf_iamcu elf_l1om elf_l1om_fbsd elf_k1om elf_k1om_fbsd"
+ targ_extra_libpath="elf_i386_fbsd"
+ tdir_elf_i386_fbsd=`echo ${targ_alias} \
+ | sed -e 's/x86_64/i386/'`
+ tdir_elf_iamcu=`echo ${targ_alias} \
+ | sed -e 's/x86_64/i386/'`
+ tdir_elf_i386=`echo ${targ_alias} \
+ | sed -e 's/x86_64/i386/'`
+ ;;
+x86_64-*-pe | x86_64-*-pep) targ_emul=i386pep ;
+ targ_extra_emuls=i386pe ;
+ targ_extra_ofiles="deffilep.o pep-dll.o pe-dll.o"
+ ;;
+x86_64-*-cygwin) targ_emul=i386pep ;
+ targ_extra_emuls=i386pe
+ targ_extra_ofiles="deffilep.o pep-dll.o pe-dll.o"
+ test "$targ" != "$host" && LIB_PATH='${tooldir}/lib/w32api'
+ ;;
+x86_64-*-mingw*) targ_emul=i386pep ;
+ targ_extra_emuls=i386pe
+ targ_extra_ofiles="deffilep.o pep-dll.o pe-dll.o"
+ ;;
+x86_64-*-nacl*) targ_emul=elf32_x86_64_nacl
+ targ_extra_emuls="elf_i386_nacl elf_x86_64_nacl armelf_nacl armelfb_nacl"
+ targ_extra_libpath=$targ_extra_emuls
+ tdir_elf_i386_nacl=`echo ${targ_alias} | sed -e 's/x86_64/i386/'`
+ ;;
xc16x-*-elf) targ_emul=elf32xc16x
targ_extra_emuls="elf32xc16xl elf32xc16xs"
;;
+xgate-*-*) targ_emul=xgateelf
+ targ_extra_ofiles=ldelfgen.o
+ ;;
xstormy16-*-*) targ_emul=elf32xstormy16
;;
xtensa*-*-*) targ_emul=elf32xtensa
;;
-xgate-*-*) targ_emul=xgateelf
- targ_extra_ofiles=ldelfgen.o
- ;;
z80-*-coff) targ_emul=z80
targ_extra_ofiles=
;;