# This is the linker target specific file.  This is invoked by the
# autoconf generated configure script.  Putting it in a separate shell
# file lets us skip running autoconf when modifying target specific
# information.

# This file switches on the shell variable ${targ}, and sets the
# following shell variables:
#  targ_emul		name of linker emulation to use
#  targ_extra_emuls	additional linker emulations to provide
#  targ_extra_libpath	additional linker emulations using LIB_PATH
#  targ_extra_ofiles	additional objects needed by the emulation

targ_extra_emuls=
targ_extra_ofiles=

case "${targ}" in
arm-epoc-pe)		targ_emul=arm_epoc_pe ;
			targ_extra_ofiles="deffilep.o pe-dll.o" ;;
arm-*-pe)		targ_emul=armpe ;
			targ_extra_ofiles="deffilep.o pe-dll.o" ;;
arc-*-elf*)		targ_emul=arcelf ;;
d10v-*-*)		targ_emul=d10velf ;;
d30v-*-*ext*)		targ_emul=d30v_e; targ_extra_emuls="d30velf d30v_o" ;;
d30v-*-*onchip*)	targ_emul=d30v_o; targ_extra_emuls="d30velf d30v_e" ;;
d30v-*-*)		targ_emul=d30velf; targ_extra_emuls="d30v_e d30v_o" ;;
sparc64-*-aout*)	targ_emul=sparcaout ;;
sparc64-*-elf*)		targ_emul=elf64_sparc ;;
sparc-sun-sunos4*) 	targ_emul=sun4 ;;
sparclite*-*-elf)	targ_emul=elf32_sparc ;;
sparclite*-*-coff)	targ_emul=coff_sparc ;;
sparclite*-fujitsu-*)	targ_emul=sparcaout ;;
sparc*-*-aout)		targ_emul=sparcaout ;;
sparc*-*-coff)		targ_emul=coff_sparc ;;
sparc*-*-elf)		targ_emul=elf32_sparc ;;
sparc*-*-sysv4*)	targ_emul=elf32_sparc ;;
sparc*-*-linux*aout*)	targ_emul=sparclinux
			targ_extra_emuls="elf32_sparc sun4"
			tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/aout//'`
			tdir_sun4=sparc-sun-sunos4
			;;
sparc64-*-linux-gnu*)	targ_emul=elf64_sparc
			targ_extra_emuls="elf32_sparc sparclinux sun4"
			tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/64//'`
			tdir_sparclinux=${tdir_elf32_sparc}aout
			tdir_sun4=sparc-sun-sunos4
			;;
sparc*-*-linux-gnu*)	targ_emul=elf32_sparc
			targ_extra_emuls="sparclinux sun4"
			tdir_sparclinux=${targ_alias}aout
			tdir_sun4=sparc-sun-sunos4
			;;
sparc*-*-lynxos*)	targ_emul=sparclynx ;;
sparc*-*-netbsd*)	targ_emul=sparcnbsd ;;
sparc*-*-solaris2*)	targ_emul=elf32_sparc ;;
sparc*-wrs-vxworks*)	targ_emul=sparcaout ;;
sparc*-*-rtems*)	targ_emul=sparcaout ;;
i960-wrs-vxworks5.0*)	targ_emul=gld960 ;;
i960-wrs-vxworks5*)	targ_emul=gld960coff ;;
i960-wrs-vxworks*)	targ_emul=gld960 ;;
i960-*-coff)		targ_emul=gld960coff ;;
i960-intel-nindy)	targ_emul=gld960 ;;
i960-*-rtems*)		targ_emul=gld960coff ;;
i960-*-elf*)		targ_emul=elf32_i960 ;;
m32r-*-*)		targ_emul=m32relf ;;
m68*-sun-sunos[34]*)	targ_emul=sun3 ;;
m68*-wrs-vxworks*)	targ_emul=sun3 ;;
m68*-ericsson-ose)	targ_emul=sun3 ;;
m68*-apple-aux*)	targ_emul=m68kaux ;;
*-tandem-none)		targ_emul=st2000 ;;
i[3456]86-*-vsta)	targ_emul=vsta ;;
i[3456]86-go32-rtems*)	targ_emul=i386go32 ;;
i[3456]86-*-go32)	targ_emul=i386go32 ;;
i[3456]86-*-msdosdjgpp*) targ_emul=i386go32 ;;
i[3456]86-*-aix*)	targ_emul=i386coff ;;
i[3456]86-*-sco*)	targ_emul=i386coff ;;
i[3456]86-*-isc*)	targ_emul=i386coff ;;
i[3456]86-*-lynxos*)	targ_emul=i386lynx ;;
i[3456]86-*-coff)	targ_emul=i386coff ;;
i[3456]86-*-rtemself*)  targ_emul=elf_i386 ;;
i[3456]86-*-rtems*)	targ_emul=i386coff ;;
i[3456]86-*-bsd)	targ_emul=i386bsd ;;
i[3456]86-*-bsd386)	targ_emul=i386bsd ;;
i[3456]86-*-bsdi*)	targ_emul=i386bsd ;;
i[3456]86-*-aout)	targ_emul=i386aout ;;
i[3456]86-*-linux*aout*)	targ_emul=i386linux
			targ_extra_emuls=elf_i386
			tdir_elf_i386=`echo ${targ_alias} | sed -e 's/aout//'`
			;;
i[3456]86-*-linuxoldld)	targ_emul=i386linux; targ_extra_emuls=elf_i386 ;;
i[3456]86-*-linux-gnu*)	targ_emul=elf_i386
			targ_extra_emuls=i386linux
			tdir_i386linux=${targ_alias}aout
			;;
i[3456]86-*-sysv4*)	targ_emul=elf_i386 ;;
i[3456]86-*-solaris2*)	targ_emul=elf_i386 ;;
i[3456]86-*-unixware)	targ_emul=elf_i386 ;;
i[3456]86-*-solaris*)	targ_emul=elf_i386 ;;
i[3456]86-*-netbsd*)	targ_emul=i386nbsd ;;
i[3456]86-*-netware)	targ_emul=i386nw ;;
i[3456]86-*-elf*)	targ_emul=elf_i386 ;;
i[3456]86-*-freebsdaout* | i[3456]86-*-freebsd[12].* | i[3456]86-*-freebsd[12])
			targ_emul=i386bsd ;;
i[3456]86-*-freebsd*)	targ_emul=elf_i386 ;;
i[3456]86-*-sysv*)	targ_emul=i386coff ;;
i[3456]86-*-ptx*)	targ_emul=i386coff ;;
i[3456]86-*-mach*)	targ_emul=i386mach ;;
i[3456]86-*-gnu*)	targ_emul=elf_i386 ;;
i[3456]86-*-msdos*)	targ_emul=i386msdos; targ_extra_emuls=i386aout ;;
i[3456]86-*-moss*)	targ_emul=i386moss; targ_extra_emuls=i386msdos ;;
i[3456]86-*-winnt*)	targ_emul=i386pe ;
			targ_extra_ofiles="deffilep.o pe-dll.o" ;;
i[3456]86-*-pe)		targ_emul=i386pe ;
			targ_extra_ofiles="deffilep.o pe-dll.o" ;;
i[3456]86-*-cygwin*)	targ_emul=i386pe ;
			targ_extra_ofiles="deffilep.o pe-dll.o" ;;
i[3456]86-*-mingw32*)	targ_emul=i386pe ;
			targ_extra_ofiles="deffilep.o pe-dll.o" ;;
i[3456]86-*-beospe*)    targ_emul=i386beos ;;
i[3456]86-*-beos*)	targ_emul=elf_i386_be ;;
m8*-*-*)		targ_emul=m88kbcs ;;
a29k-*-udi)		targ_emul=sa29200 ;;
a29k-*-ebmon)		targ_emul=ebmon29k ;;
a29k-*-*)		targ_emul=a29k ;;
#  arm-*-riscix*)		targ_emul=riscix ;;
arm-*-aout | armel-*-aout) targ_emul=armaoutl ;;
armeb-*-aout)		targ_emul=armaoutb ;;
arm-*-coff)		targ_emul=armcoff ;;
arm-*-elf)		targ_emul=armelf ;;
arm-*-oabi)             targ_emul=armelf_oabi ;;
arm*-*-linux-gnu*)	targ_emul=armelf_linux; targ_extra_emuls="armelf_linux26 armelf";;
strongarm-*-coff)	targ_emul=armcoff ;;
strongarm-*-elf)	targ_emul=armelf ;;
thumb-*-coff)		targ_emul=armcoff ;;
thumb-*-elf)		targ_emul=armelf ;;
thumb-*-oabi)           targ_emul=armelf_oabi ;;
thumb-epoc-pe)		targ_emul=arm_epoc_pe ;
			targ_extra_ofiles="deffilep.o pe-dll.o" ;;
thumb-*-pe)		targ_emul=armpe ;
			targ_extra_ofiles="deffilep.o pe-dll.o" ;;
h8300-*-hms* | h8300-*-coff*)
			targ_emul=h8300; targ_extra_emuls="h8300h h8300s"
			;;
h8500-*-hms* | h8500-*-coff*)
			targ_emul=h8500
			targ_extra_emuls="h8500s h8500b h8500m h8500c"
			;;
sh-*-elf* | sh-*-rtemself*)
			targ_emul=shelf
			targ_extra_emuls="shlelf sh shl"
			;;
sh-*-*|sh-*-rtems*)	targ_emul=sh; targ_extra_emuls=shl ;;
m68k-sony-*)		targ_emul=news ;;
m68k-hp-bsd*)		targ_emul=hp300bsd ;;
m68*-motorola-sysv*)	targ_emul=delta68 ;;
m68*-*-aout)		targ_emul=m68kaout ;;
m68*-*-coff)		targ_emul=m68kcoff ;;
m68*-*-elf)		targ_emul=m68kelf ;;
m68*-*-hpux*)		targ_emul=hp3hpux ;;
m68k-*-linux*aout*)	targ_emul=m68klinux
			targ_extra_emuls=m68kelf
			tdir_m68kelf=`echo ${targ_alias} | sed -e 's/aout//'`
			;;
m68k-*-linux-gnu*)	targ_emul=m68kelf
			targ_extra_emuls=m68klinux
			tdir_m68klinux=`echo ${targ_alias} | sed -e 's/linux/linuxaout/'`
			;;
m68*-*-gnu*)		targ_emul=m68kelf ;;
m68*-*-lynxos*)		targ_emul=m68klynx ;;
m68*-hp*-netbsd*)	targ_emul=m68k4knbsd ;;
m68*-*-netbsd*)		targ_emul=m68knbsd ;;
m68*-*-psos*)		targ_emul=m68kpsos ;;
m68*-*-rtems*)		targ_emul=m68kcoff ;;
hppa*-*-*elf*)		targ_emul=hppaelf ;;
hppa*-*-lites*)		targ_emul=hppaelf ;;
hppa*-*-rtems*)		targ_emul=hppaelf ;;
vax-dec-ultrix* | vax-dec-bsd*) targ_emul=vax ;;
mips*-dec-ultrix*)	targ_emul=mipslit ;;
mips*-dec-osf*)		targ_emul=mipslit ;;
mips*-sgi-irix[56]*)	targ_emul=elf32bsmip ;;
mips*-sgi-irix*)	targ_emul=mipsbig ;;
mips*el-*-ecoff*)	targ_emul=mipsidtl ;;
mips*-*-ecoff*)		targ_emul=mipsidt ;;
mips*-dec-bsd*)		targ_emul=mipsbsd ;;
mips*-dec-netbsd*)	targ_emul=elf32lmip ;;
mips*-*-bsd*)		targ_emul=mipsbig ;;
mips*vr4300el-*-elf*)	targ_emul=elf32l4300 ;;
mips*vr4300-*-elf*)	targ_emul=elf32b4300 ;;
mips*vr4100el-*-elf*)	targ_emul=elf32l4300 ;;
mips*vr4100-*-elf*)	targ_emul=elf32b4300 ;;
mips*vr5000el-*-elf*)	targ_emul=elf32l4300 ;;
mips*vr5000-*-elf*)	targ_emul=elf32b4300 ;;
mips*el-*-elf*)		targ_emul=elf32elmip ;;
mips*-*-elf*)		targ_emul=elf32ebmip ;;
mips*el-*-rtems*)	targ_emul=elf32elmip ;;
mips*-*-rtems*)		targ_emul=elf32ebmip ;;
mips*-*-vxworks*)	targ_emul=elf32ebmip ;;
mips*el-*-linux-gnu*)	targ_emul=elf32lsmip
			targ_extra_emuls="elf32bsmip mipslit mipsbig"
			;;
mips*-*-linux-gnu*)	targ_emul=elf32bsmip
			targ_extra_emuls="elf32lsmip mipsbig mipslit"
			;;
mips*-*-lnews*)		targ_emul=mipslnews ;;
mn10200-*-*)		targ_emul=mn10200 ;;
mn10300-*-*)		targ_emul=mn10300 ;;
alpha*-*-linuxecoff*)	targ_emul=alpha targ_extra_emuls=elf64alpha
			tdir_elf64alpha=`echo ${targ_alias} | sed -e 's/ecoff//'`
			;;
alpha*-*-linux-gnu*)	targ_emul=elf64alpha targ_extra_emuls=alpha
			tdir_alpha=`echo ${targ_alias} | sed -e 's/linux/linuxecoff/'`
			;;
alpha*-*-osf*)		targ_emul=alpha ;;
alpha*-*-gnu*)		targ_emul=elf64alpha ;;
alpha*-*-netware*)	targ_emul=alpha ;;
alpha*-*-netbsd*)	targ_emul=elf64alpha ;;
z8k-*-coff) 		targ_emul=z8002; targ_extra_emuls=z8001 ;;
ns32k-pc532-mach* | ns32k-pc532-ux*)	targ_emul=pc532macha ;;
ns32k-pc532-netbsd* | ns32k-pc532-lites*) targ_emul=ns32knbsd ;;
powerpc-*-linux-gnu*)	targ_emul=elf32ppclinux; targ_extra_emuls=elf32ppc;
			targ_extra_libpath=elf32ppc ;;
powerpc-*-elf* | powerpc-*-eabi* | powerpc-*-sysv* \
  | powerpc-*-netbsd* | powerpc-*-vxworks*)
	targ_emul=elf32ppc ;;
powerpcle-*-elf* | powerpcle-*-eabi* | powerpcle-*-solaris* \
  | powerpcle-*-sysv* | powerpcle-*-vxworks*)
	targ_emul=elf32lppc ;;
powerpcle-*-rtems*)	targ_emul=elf32leppc ;;
powerpc-*-rtems*)	targ_emul=elf32ppc ;;
powerpc-*-macos*)	targ_emul=ppcmacos ;;
powerpc-*-netware*)	targ_emul=ppcnw ;;
powerpcle-*-pe)         targ_emul=ppcpe ;;
powerpcle-*-winnt*)     targ_emul=ppcpe ;;
powerpcle-*-cygwin*)   targ_emul=ppcpe ;;
powerpc-*-aix*)		targ_emul=aixppc ;;
powerpc-*-beos*)	targ_emul=aixppc ;;
rs6000-*-aix*)		targ_emul=aixrs6 ;;
tic30-*-*aout*)		targ_emul=tic30aout ;;
tic30-*-*coff*)		targ_emul=tic30coff ;;
tic80-*-*)		targ_emul=tic80coff ;;
v850-*-*)		targ_emul=v850 ;;
v850e-*-*)		targ_emul=v850 ;;
v850ea-*-*)		targ_emul=v850 ;;
w65-*-*)		targ_emul=w65 ;;
fr30-*-*)		targ_emul=elf32fr30 ;;
mcore-*-pe)		targ_emul=mcorepe ;
			targ_extra_ofiles="deffilep.o pe-dll.o" ;;
mcore-*-elf)		targ_emul=elf32mcore ;;
*-*-aout)		targ_emul=${target_cpu}-${target_vendor} ;;
*-*-coff)		targ_emul=${target_cpu}-${target_vendor} ;;
*-*-netware)		targ_emul=${target_cpu}-nw ;;
*-*-ieee*)		targ_emul=vanilla ;;

*)
  echo 2>&1 "*** ld does not support target ${targ}"
  echo 2>&1 "*** see ld/configure.tgt for supported targets"
  exit 1

esac
