daily update
[deliverable/binutils-gdb.git] / ld / configure.tgt
CommitLineData
252b5132
RH
1# This is the linker target specific file. This is invoked by the
2# autoconf generated configure script. Putting it in a separate shell
3# file lets us skip running autoconf when modifying target specific
4# information.
5
6# This file switches on the shell variable ${targ}, and sets the
7# following shell variables:
8# targ_emul name of linker emulation to use
9# targ_extra_emuls additional linker emulations to provide
3336653a 10# targ_extra_libpath additional linker emulations using LIB_PATH
252b5132 11# targ_extra_ofiles additional objects needed by the emulation
534d3119
L
12# targ64_extra_emuls additional linker emulations to provide if
13# --enable-64-bit-bfd is given or if host is 64 bit.
14# targ64_extra_libpath additional linker emulations using LIB_PATH if
15# --enable-64-bit-bfd is given or if host is 64 bit.
9c8ebd6a
DJ
16# NATIVE_LIB_DIRS library directories to search on this host
17# (if we are a native or sysrooted linker)
252b5132
RH
18
19targ_extra_emuls=
534d3119 20targ_extra_libpath=
252b5132 21targ_extra_ofiles=
534d3119
L
22targ64_extra_emuls=
23targ64_extra_libpath=
252b5132 24
e729279b
NC
25# Please try to keep this table in alphabetic order - it makes it
26# much easier to lookup a specific archictecture. Naturally any
27# architecture variants should be kept together even if their names
28# break the alpha sorting.
252b5132 29case "${targ}" in
e729279b
NC
30alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu)
31 targ_emul=elf64alpha_fbsd
32 targ_extra_emuls="elf64alpha alpha"
33 tdir_alpha=`echo ${targ_alias} | sed -e 's/freebsd/freebsdecoff/'` ;;
34alpha*-*-linuxecoff*) targ_emul=alpha targ_extra_emuls=elf64alpha
35 tdir_elf64alpha=`echo ${targ_alias} | sed -e 's/ecoff//'` ;;
36alpha*-*-linux-*) targ_emul=elf64alpha targ_extra_emuls=alpha
37 tdir_alpha=`echo ${targ_alias} | sed -e 's/linux/linuxecoff/'` ;;
38alpha*-*-osf*) targ_emul=alpha ;;
39alpha*-*-gnu*) targ_emul=elf64alpha ;;
40alpha*-*-netware*) targ_emul=alpha ;;
41alpha*-*-netbsd*) targ_emul=elf64alpha_nbsd ;;
42alpha*-*-openbsd*) targ_emul=elf64alpha
43 ;;
44arc-*-elf*) targ_emul=arcelf
45 ;;
46arm-epoc-pe) targ_emul=arm_epoc_pe ; targ_extra_ofiles="deffilep.o pe-dll.o" ;;
57da97f5 47arm-wince-pe | arm-*-wince) targ_emul=arm_wince_pe ; targ_extra_ofiles="deffilep.o pe-dll.o" ;;
e729279b
NC
48arm-*-pe) targ_emul=armpe ; targ_extra_ofiles="deffilep.o pe-dll.o" ;;
49arm-*-aout | armel-*-aout) targ_emul=armaoutl ;;
50armeb-*-aout) targ_emul=armaoutb ;;
51arm-*-coff) targ_emul=armcoff ;;
52arm-*-freebsd* | arm-*-kfreebsd*-gnu)
53 targ_emul=armelf_fbsd
54 targ_extra_emuls="armelf" ;;
55armeb-*-netbsdelf*) targ_emul=armelfb_nbsd;
56 targ_extra_emuls="armelf_nbsd armelf armnbsd" ;;
57arm-*-netbsdelf*) targ_emul=armelf_nbsd;
58 targ_extra_emuls="armelfb_nbsd armelf armnbsd" ;;
59arm-*-netbsd*) targ_emul=armnbsd;
60 targ_extra_emuls="armelf armelf_nbsd armelfb_nbsd" ;;
61arm-*-nto*) targ_emul=armnto ;;
62arm-*-openbsd*) targ_emul=armnbsd ;;
63arm-*-rtems*) targ_emul=armelf ;;
64armeb-*-elf) targ_emul=armelfb ;;
65arm-*-elf | arm*-*-eabi*)
66 targ_emul=armelf ;;
67arm*-*-symbianelf*) targ_emul=armsymbian;;
68arm-*-kaos*) targ_emul=armelf ;;
69arm9e-*-elf) targ_emul=armelf ;;
fffbd2ef
JM
70arm*b-*-linux-*eabi) targ_emul=armelfb_linux_eabi
71 targ_extra_emuls=armelf_linux_eabi
72 targ_extra_libpath=$targ_extra_emuls
73 ;;
74arm*b-*-linux-*) targ_emul=armelfb_linux
75 targ_extra_emuls="armelfb armelf armelf_linux"
76 targ_extra_libpath="armelf_linux"
77 ;;
78arm*-*-linux-*eabi) targ_emul=armelf_linux_eabi
79 targ_extra_emuls=armelfb_linux_eabi
80 targ_extra_libpath=$targ_extra_emuls
81 ;;
82arm*-*-linux-*) targ_emul=armelf_linux
83 targ_extra_emuls="armelf armelfb armelfb_linux"
84 targ_extra_libpath="armelfb_linux"
85 ;;
7bd1c961
PB
86arm*-*-uclinux-*eabi) targ_emul=armelf_linux_eabi
87 targ_extra_emuls=armelfb_linux_eabi
88 targ_extra_libpath=$targ_extra_emuls
89 ;;
fffbd2ef
JM
90arm*-*-uclinux*) targ_emul=armelf_linux
91 targ_extra_emuls="armelf armelfb armelfb_linux"
92 targ_extra_libpath="armelfb_linux"
93 ;;
e729279b
NC
94arm-*-vxworks) targ_emul=armelf_vxworks ;;
95arm*-*-conix*) targ_emul=armelf ;;
96thumb-*-linux-* | thumb-*-uclinux*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
97strongarm-*-coff) targ_emul=armcoff ;;
98strongarm-*-elf) targ_emul=armelf ;;
99strongarm-*-kaos*) targ_emul=armelf ;;
100thumb-*-coff) targ_emul=armcoff ;;
101thumb-*-elf) targ_emul=armelf ;;
102thumb-epoc-pe) targ_emul=arm_epoc_pe ;
344a211f 103 targ_extra_ofiles="deffilep.o pe-dll.o" ;;
e729279b 104thumb-*-pe) targ_emul=armpe ;
252b5132 105 targ_extra_ofiles="deffilep.o pe-dll.o" ;;
e729279b
NC
106xscale-*-coff) targ_emul=armcoff ;;
107xscale-*-elf) targ_emul=armelf
108 ;;
75ca919a 109avr-*-*) targ_emul=avr2
28c9d252 110 targ_extra_emuls="avr1 avr3 avr4 avr5 avr6"
e729279b 111 ;;
3f2dad24
BS
112bfin-*-elf) targ_emul=elf32bfin;
113 targ_extra_emuls="elf32bfinfd"
114 targ_extra_libpath=$targ_extra_emuls
115 ;;
116bfin-*-uclinux*) targ_emul=elf32bfin;
117 targ_extra_emuls="elf32bfinfd"
118 targ_extra_libpath=$targ_extra_emuls
119 ;;
120bfin-*-linux-uclibc*) targ_emul=elf32bfin;
121 targ_extra_emuls="elf32bfinfd"
122 targ_extra_libpath=$targ_extra_emuls
123 ;;
e729279b
NC
124cr16c-*-elf*) targ_emul=elf32cr16c
125 ;;
1268a053 126cris-*-*aout*) targ_emul=crisaout
9d06555c
HPN
127 targ_extra_emuls="criself crislinux"
128 targ_extra_libpath=$targ_extra_emuls ;;
ed84e695 129cris-*-linux-* | crisv32-*-linux-*)
a0055007
HPN
130 targ_emul=crislinux ;;
131cris-*-* | crisv32-*-*) targ_emul=criself
1268a053 132 targ_extra_emuls="crisaout crislinux"
e729279b
NC
133 targ_extra_libpath=$targ_extra_emuls
134 ;;
135crx-*-elf*) targ_emul=elf32crx
136 ;;
252b5132
RH
137d10v-*-*) targ_emul=d10velf ;;
138d30v-*-*ext*) targ_emul=d30v_e; targ_extra_emuls="d30velf d30v_o" ;;
139d30v-*-*onchip*) targ_emul=d30v_o; targ_extra_emuls="d30velf d30v_e" ;;
e729279b 140d30v-*-*) targ_emul=d30velf; targ_extra_emuls="d30v_e d30v_o"
fb33b906 141 ;;
e729279b 142dlx-*-elf*) targ_emul=elf32_dlx
252b5132 143 ;;
ebff6cd5 144fido*-*-elf*) targ_emul=m68kelf ;;
e729279b 145fr30-*-*) targ_emul=elf32fr30
252b5132 146 ;;
e729279b
NC
147frv-*-*linux*) targ_emul=elf32frvfd ;;
148frv-*-*) targ_emul=elf32frv ; targ_extra_emuls="elf32frvfd"
252b5132 149 ;;
e729279b
NC
150h8300-*-hms* | h8300-*-coff* | h8300-*-rtemscoff*)
151 targ_emul=h8300; targ_extra_emuls="h8300h h8300s h8300hn h8300sn h8300sx h8300sxn" ;;
152h8300-*-elf* | h8300-*-rtems*)
153 targ_emul=h8300elf;
154 targ_extra_emuls="h8300helf h8300self h8300hnelf h8300snelf h8300sxelf h8300sxnelf" ;;
155h8500-*-hms* | h8500-*-coff* | h8500-*-rtems*)
156 targ_emul=h8500
157 targ_extra_emuls="h8500s h8500b h8500m h8500c"
cf86e6df 158 ;;
e729279b
NC
159hppa*64*-*-linux-*) targ_emul=hppa64linux ;;
160hppa*64*-*) targ_emul=elf64hppa ;;
161hppa*-*-linux-*) targ_emul=hppalinux ;;
162hppa*-*-*elf*) targ_emul=hppaelf ;;
163hppa*-*-lites*) targ_emul=hppaelf ;;
164hppa*-*-netbsd*) targ_emul=hppanbsd ;;
165hppa*-*-openbsd*) targ_emul=hppaobsd
a1836d49 166 ;;
e729279b 167i370-*-elf* | i370-*-linux-*) targ_emul=elf32i370
a1836d49 168 ;;
80c7c40a
NC
169i[3-7]86-*-nto-qnx*) targ_emul=i386nto ;;
170i[3-7]86-*-vsta) targ_emul=vsta ;;
80c7c40a
NC
171i[3-7]86-*-go32) targ_emul=i386go32 ;;
172i[3-7]86-*-msdosdjgpp*) targ_emul=i386go32 ;;
173i[3-7]86-*-aix*) targ_emul=i386coff ;;
174i[3-7]86-*-sco*) targ_emul=i386coff ;;
175i[3-7]86-*-isc*) targ_emul=i386coff ;;
176i[3-7]86-*-lynxos*) targ_emul=i386lynx ;;
177i[3-7]86-*-coff) targ_emul=i386coff ;;
80c7c40a
NC
178i[3-7]86-*-rtems*) targ_emul=elf_i386 ;;
179i[3-7]86-*-aros*) targ_emul=elf_i386 ;;
b59bea8a 180i[3-7]86-*-rdos*) targ_emul=elf_i386 ;;
80c7c40a
NC
181i[3-7]86-*-bsd) targ_emul=i386bsd ;;
182i[3-7]86-*-bsd386) targ_emul=i386bsd ;;
183i[3-7]86-*-bsdi*) targ_emul=i386bsd ;;
184i[3-7]86-*-aout) targ_emul=i386aout ;;
185i[3-7]86-*-linux*aout*) targ_emul=i386linux
252b5132 186 targ_extra_emuls=elf_i386
e729279b 187 tdir_elf_i386=`echo ${targ_alias} | sed -e 's/aout//'` ;;
80c7c40a 188i[3-7]86-*-linux*oldld) targ_emul=i386linux; targ_extra_emuls=elf_i386 ;;
ed84e695 189i[3-7]86-*-linux-*) targ_emul=elf_i386
252b5132 190 targ_extra_emuls=i386linux
534d3119
L
191 targ64_extra_emuls=elf_x86_64
192 targ64_extra_libpath=elf_x86_64
e729279b 193 tdir_i386linux=${targ_alias}aout ;;
ed84e695 194x86_64-*-linux-*) targ_emul=elf_x86_64
2be3aa03 195 targ_extra_emuls="elf_i386 i386linux"
beb43bb9
JH
196 targ_extra_libpath=elf_i386
197 tdir_i386linux=`echo ${targ_alias}aout | sed -e 's/x86_64/i386/'`
e729279b 198 tdir_elf_i386=`echo ${targ_alias} | sed -e 's/x86_64/i386/'` ;;
80c7c40a
NC
199i[3-7]86-*-sysv[45]*) targ_emul=elf_i386 ;;
200i[3-7]86-*-solaris2*) targ_emul=elf_i386_ldso
d2b2c203 201 targ_extra_emuls="elf_i386 elf_x86_64"
d19628a5 202 targ_extra_libpath=$targ_extra_emuls
506eee22 203 ;;
80c7c40a
NC
204i[3-7]86-*-unixware) targ_emul=elf_i386 ;;
205i[3-7]86-*-solaris*) targ_emul=elf_i386_ldso
506eee22 206 targ_extra_emuls="elf_i386"
d19628a5 207 targ_extra_libpath=$targ_extra_emuls
506eee22 208 ;;
4615568e
NC
209i[3-7]86-*-netbsdelf* | \
210i[3-7]86-*-netbsd*-gnu* | \
211i[3-7]86-*-knetbsd*-gnu)
a06a29f2 212 targ_emul=elf_i386
e729279b 213 targ_extra_emuls=i386nbsd ;;
80c7c40a 214i[3-7]86-*-netbsdpe*) targ_emul=i386pe
e729279b 215 targ_extra_ofiles="deffilep.o pe-dll.o" ;;
80c7c40a 216i[3-7]86-*-netbsd*) targ_emul=i386nbsd
e729279b 217 targ_extra_emuls=elf_i386 ;;
8a8b2d4b
AJ
218x86_64-*-netbsd*) targ_emul=elf_x86_64
219 targ_extra_emuls="elf_i386 i386nbsd"
220 tdir_elf_i386=`echo ${targ_alias} | \
221 sed -e 's/x86_64/i386/'`
222 case "${tdir_elf_i386}" in
e729279b
NC
223 *-netbsdelf*) ;;
224 *) tdir_elf_i386=`echo ${tdir_elf_i386} | \
225 sed -e 's/netbsd/netbsdelf/'`;;
226 esac ;;
80c7c40a
NC
227i[3-7]86-*-netware) targ_emul=i386nw ;;
228i[3-7]86-*-elf*) targ_emul=elf_i386 ;;
e729279b 229x86_64-*-elf*) targ_emul=elf_x86_64
34723071
NC
230 targ_extra_emuls=elf_i386
231 ;;
80c7c40a
NC
232i[3-7]86-*-kaos*) targ_emul=elf_i386 ;;
233i[3-7]86-*-freebsdaout* | i[3-7]86-*-freebsd[12].* | i[3-7]86-*-freebsd[12])
2641b0c9 234 targ_emul=i386bsd ;;
13dfd2d0
NC
235i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu)
236 targ_emul=elf_i386_fbsd
ac3e50bf 237 targ_extra_emuls="elf_i386 i386bsd" ;;
13dfd2d0
NC
238x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu)
239 targ_emul=elf_x86_64_fbsd
ac3e50bf 240 targ_extra_emuls="elf_i386_fbsd elf_x86_64 elf_i386"
916c46cb
NC
241 targ_extra_libpath="elf_i386_fbsd"
242 tdir_elf_i386_fbsd=`echo ${targ_alias} \
243 | sed -e 's/x86_64/i386/'`
ac3e50bf 244 tdir_elf_i386=`echo ${targ_alias} \
e729279b 245 | sed -e 's/x86_64/i386/'` ;;
80c7c40a
NC
246i[3-7]86-*-sysv*) targ_emul=i386coff ;;
247i[3-7]86-*-ptx*) targ_emul=i386coff ;;
248i[3-7]86-*-mach*) targ_emul=i386mach ;;
249i[3-7]86-*-gnu*) targ_emul=elf_i386 ;;
250i[3-7]86-*-msdos*) targ_emul=i386msdos; targ_extra_emuls=i386aout ;;
251i[3-7]86-*-moss*) targ_emul=i386moss; targ_extra_emuls=i386msdos ;;
252i[3-7]86-*-winnt*) targ_emul=i386pe ;
252b5132 253 targ_extra_ofiles="deffilep.o pe-dll.o" ;;
80c7c40a 254i[3-7]86-*-pe) targ_emul=i386pe ;
252b5132 255 targ_extra_ofiles="deffilep.o pe-dll.o" ;;
80c7c40a 256i[3-7]86-*-cygwin*) targ_emul=i386pe ;
f8b0dbb8
CF
257 targ_extra_ofiles="deffilep.o pe-dll.o"
258 test "$targ" != "$host" && LIB_PATH='${tooldir}/lib/w32api' ;;
80c7c40a 259i[3-7]86-*-mingw32*) targ_emul=i386pe ;
252b5132 260 targ_extra_ofiles="deffilep.o pe-dll.o" ;;
42037fe5 261x86_64-*-mingw*) targ_emul=i386pep ;
99ad8390 262 targ_extra_ofiles="deffilep.o pep-dll.o" ;;
80c7c40a 263i[3-7]86-*-interix*) targ_emul=i386pe_posix;
a7e78dae 264 targ_extra_ofiles="deffilep.o pe-dll.o" ;;
80c7c40a
NC
265i[3-7]86-*-beospe*) targ_emul=i386beos ;;
266i[3-7]86-*-beos*) targ_emul=elf_i386_be ;;
eac338cf 267i[3-7]86-*-vxworks*) targ_emul=elf_i386_vxworks ;;
e729279b 268i[3-7]86-*-chaos) targ_emul=elf_i386_chaos
8af6dd41 269 ;;
e729279b
NC
270i860-*-coff) targ_emul=coff_i860 ;;
271i860-stardent-sysv4* | i860-stardent-elf*)
272 targ_emul=elf32_i860
8d05742f 273 ;;
e729279b
NC
274i960-wrs-vxworks5.0*) targ_emul=gld960 ;;
275i960-wrs-vxworks5*) targ_emul=gld960coff ;;
276i960-wrs-vxworks*) targ_emul=gld960 ;;
277i960-*-coff) targ_emul=gld960coff ;;
278i960-intel-nindy) targ_emul=gld960 ;;
279i960-*-rtems*) targ_emul=gld960coff ;;
280i960-*-elf*) targ_emul=elf32_i960
85fbca6a 281 ;;
e729279b
NC
282ia64-*-elf*) targ_emul=elf64_ia64 ;;
283ia64-*-freebsd* | ia64-*-kfreebsd*-gnu)
284 targ_emul=elf64_ia64_fbsd
285 targ_extra_emuls="elf64_ia64" ;;
286ia64-*-netbsd*) targ_emul=elf64_ia64 ;;
287ia64-*-linux*) targ_emul=elf64_ia64 ;;
288ia64-*-aix*) targ_emul=elf64_aix
7a33bc10 289 ;;
e729279b 290ip2k-*-elf) targ_emul=elf32ip2k
252b5132 291 ;;
e729279b 292iq2000-*-elf) targ_emul=elf32iq2000 ; targ_extra_emuls="elf32iq10"
ed71e111 293 ;;
e729279b 294m32c-*-elf) targ_emul=elf32m32c
7a33bc10 295 ;;
e729279b
NC
296m32r*le-*-elf*) targ_emul=m32rlelf ;;
297m32r*-*-elf*) targ_emul=m32relf ;;
298m32r*le-*-linux-*) targ_emul=m32rlelf_linux ;;
299m32r*-*-linux-*) targ_emul=m32relf_linux
2d92cb7d 300 ;;
e729279b
NC
301m68hc11-*-*|m6811-*-*) targ_emul=m68hc11elf
302 targ_extra_emuls="m68hc11elfb m68hc12elf m68hc12elfb" ;;
303m68hc12-*-*|m6812-*-*) targ_emul=m68hc12elf
304 targ_extra_emuls="m68hc12elfb m68hc11elf m68hc11elfb" ;;
305m68*-sun-sunos[34]*) targ_emul=sun3 ;;
306m68*-wrs-vxworks*) targ_emul=sun3 ;;
307m68*-ericsson-ose) targ_emul=sun3 ;;
308m68*-apple-aux*) targ_emul=m68kaux ;;
252b5132
RH
309m68k-sony-*) targ_emul=news ;;
310m68k-hp-bsd*) targ_emul=hp300bsd ;;
311m68*-motorola-sysv*) targ_emul=delta68 ;;
312m68*-*-aout) targ_emul=m68kaout ;;
313m68*-*-coff) targ_emul=m68kcoff ;;
314m68*-*-elf) targ_emul=m68kelf ;;
315m68*-*-hpux*) targ_emul=hp3hpux ;;
316m68k-*-linux*aout*) targ_emul=m68klinux
317 targ_extra_emuls=m68kelf
e729279b 318 tdir_m68kelf=`echo ${targ_alias} | sed -e 's/aout//'` ;;
ed84e695 319m68k-*-linux-*) targ_emul=m68kelf
252b5132 320 targ_extra_emuls=m68klinux
e729279b 321 tdir_m68klinux=`echo ${targ_alias} | sed -e 's/linux/linuxaout/'` ;;
b50c15dc 322m68k-*-uclinux*) targ_emul=m68kelf ;;
252b5132 323m68*-*-gnu*) targ_emul=m68kelf ;;
0b69cd08
MG
324m68*-*-netbsd*4k*) targ_emul=m68k4knbsd
325 targ_extra_emuls="m68knbsd m68kelfnbsd" ;;
326m68*-*-netbsdelf*) targ_emul=m68kelfnbsd
327 targ_extra_emuls="m68knbsd m68k4knbsd" ;;
328m68*-*-netbsdaout* | m68*-*-netbsd*)
329 targ_emul=m68knbsd
330 targ_extra_emuls="m68kelfnbsd m68k4knbsd" ;;
252b5132 331m68*-*-psos*) targ_emul=m68kpsos ;;
d43ded80 332m68*-*-rtemscoff*) targ_emul=m68kcoff ;;
e729279b
NC
333m68*-*-rtems*) targ_emul=m68kelf
334 ;;
335m8*-*-*) targ_emul=m88kbcs
336 ;;
337maxq-*-coff) targ_emul=maxqcoff
338 ;;
339mcore-*-pe) targ_emul=mcorepe ;
340 targ_extra_ofiles="deffilep.o pe-dll.o" ;;
341mcore-*-elf) targ_emul=elf32mcore
342 ;;
19d9b7d3 343mep-*-elf) targ_emul=elf32mep ;;
344a211f
NC
344mips*-*-pe) targ_emul=mipspe ;
345 targ_extra_ofiles="deffilep.o pe-dll.o" ;;
252b5132
RH
346mips*-dec-ultrix*) targ_emul=mipslit ;;
347mips*-dec-osf*) targ_emul=mipslit ;;
dc831978
MM
348mips*-sgi-irix5*) targ_emul=elf32bsmip ;;
349mips*-sgi-irix6*) targ_emul=elf32bmipn32
22c675a7 350 targ_extra_emuls="elf32bsmip elf64bmip"
e729279b 351 targ_extra_libpath=$targ_extra_emuls ;;
252b5132
RH
352mips*-sgi-irix*) targ_emul=mipsbig ;;
353mips*el-*-ecoff*) targ_emul=mipsidtl ;;
354mips*-*-ecoff*) targ_emul=mipsidt ;;
aaa2ab3d
NH
355mips*el-*-netbsd*) targ_emul=elf32ltsmip
356 targ_extra_emuls="elf32btsmip elf64ltsmip elf64btsmip"
357 ;;
358mips*-*-netbsd*) targ_emul=elf32btsmip
359 targ_extra_emuls="elf32ltsmip elf64btsmip elf64ltsmip"
360 ;;
252b5132
RH
361mips*-*-bsd*) targ_emul=mipsbig ;;
362mips*vr4300el-*-elf*) targ_emul=elf32l4300 ;;
363mips*vr4300-*-elf*) targ_emul=elf32b4300 ;;
364mips*vr4100el-*-elf*) targ_emul=elf32l4300 ;;
365mips*vr4100-*-elf*) targ_emul=elf32b4300 ;;
366mips*vr5000el-*-elf*) targ_emul=elf32l4300 ;;
367mips*vr5000-*-elf*) targ_emul=elf32b4300 ;;
6f693073
TS
368mips*el-sde-elf*) targ_emul=elf32ltsmip
369 targ_extra_emuls="elf32btsmip elf32ltsmipn32 elf64ltsmip elf32btsmipn32 elf64btsmip" ;;
370mips*-sde-elf*) targ_emul=elf32btsmip
371 targ_extra_emuls="elf32ltsmip elf32btsmipn32 elf64btsmip elf32ltsmipn32 elf64ltsmip" ;;
252b5132
RH
372mips*el-*-elf*) targ_emul=elf32elmip ;;
373mips*-*-elf*) targ_emul=elf32ebmip ;;
374mips*-*-rtems*) targ_emul=elf32ebmip ;;
0a44bf69
RS
375mips*el-*-vxworks*) targ_emul=elf32elmipvxworks
376 targ_extra_emuls="elf32ebmipvxworks" ;;
377mips*-*-vxworks*) targ_emul=elf32ebmipvxworks
378 targ_extra_emuls="elf32elmipvxworks" ;;
325fab4e 379mips*-*-windiss) targ_emul=elf32mipswindiss ;;
ed84e695 380mips64*el-*-linux-*) targ_emul=elf32ltsmipn32
7808a785 381 targ_extra_emuls="elf32btsmipn32 elf32ltsmip elf32btsmip elf64ltsmip elf64btsmip"
919e35ed 382 targ_extra_libpath=$targ_extra_emuls ;;
ed84e695 383mips64*-*-linux-*) targ_emul=elf32btsmipn32
7808a785 384 targ_extra_emuls="elf32ltsmipn32 elf32btsmip elf32ltsmip elf64btsmip elf64ltsmip"
919e35ed 385 targ_extra_libpath=$targ_extra_emuls ;;
ed84e695 386mips*el-*-linux-*) targ_emul=elf32ltsmip
919e35ed
JM
387 targ_extra_emuls="elf32btsmip elf32ltsmipn32 elf64ltsmip elf32btsmipn32 elf64btsmip"
388 targ_extra_libpath=$targ_extra_emuls ;;
ed84e695 389mips*-*-linux-*) targ_emul=elf32btsmip
919e35ed
JM
390 targ_extra_emuls="elf32ltsmip elf32btsmipn32 elf64btsmip elf32ltsmipn32 elf64ltsmip"
391 targ_extra_libpath=$targ_extra_emuls ;;
252b5132 392mips*-*-lnews*) targ_emul=mipslnews ;;
e729279b
NC
393mips*-*-sysv4*) targ_emul=elf32btsmip
394 ;;
3c3bdf30
NC
395mmix-*-*) targ_emul=mmo
396 targ_extra_emuls=elf64mmix
397 ;;
e729279b 398am33_2.0-*-linux*) targ_emul=elf32am33lin ;;
252b5132 399mn10200-*-*) targ_emul=mn10200 ;;
e729279b 400mn10300-*-*) targ_emul=mn10300
fb33b906 401 ;;
4970f871 402mt-*elf) targ_emul=elf32mt
252b5132 403 ;;
e729279b 404msp430-*-*) targ_emul=msp430x110
44c86e8c 405 targ_extra_emuls="msp430x112 msp430x1101 msp430x1111 msp430x1121 msp430x1122 msp430x1132 msp430x122 msp430x123 msp430x1222 msp430x1232 msp430x133 msp430x135 msp430x1331 msp430x1351 msp430x147 msp430x148 msp430x149 msp430x155 msp430x156 msp430x157 msp430x167 msp430x168 msp430x169 msp430x1610 msp430x1611 msp430x1612 msp430x2101 msp430x2111 msp430x2121 msp430x2131 msp430x311 msp430x312 msp430x313 msp430x314 msp430x315 msp430x323 msp430x325 msp430x336 msp430x337 msp430x412 msp430x413 msp430x415 msp430x417 msp430xE423 msp430xE425 msp430xE427 msp430xW423 msp430xW425 msp430xW427 msp430xG437 msp430xG438 msp430xG439 msp430x435 msp430x436 msp430x437 msp430x447 msp430x448 msp430x449"
e729279b
NC
406 ;;
407ns32k-pc532-mach* | ns32k-pc532-ux*) targ_emul=pc532macha ;;
408ns32k-*-netbsd* | ns32k-pc532-lites*) targ_emul=ns32knbsd
252b5132 409 ;;
c7e40348 410openrisc-*-*) targ_emul=elf32openrisc ;;
3b16e843
NC
411or32-*-coff) targ_emul=or32 ;;
412or32-*-elf) targ_emul=or32elf ;;
e729279b
NC
413or32-*-rtems*) targ_emul=or32elf
414 ;;
415pdp11-*-*) targ_emul=pdp11
416 ;;
5c67d4bb 417pjl*-*-*) targ_emul=pjlelf ; targ_extra_emuls="elf_i386" ;;
e729279b
NC
418pj*-*-*) targ_emul=pjelf
419 ;;
13dfd2d0
NC
420powerpc-*-freebsd* | powerpc-*-kfreebsd*-gnu)
421 targ_emul=elf32ppc_fbsd;
ac3e50bf 422 targ_extra_emuls="elf32ppc elf32ppcsim";
fb33b906 423 targ_extra_libpath=elf32ppc;
e729279b
NC
424 tdir_elf32ppcsim=`echo ${targ_alias} | sed -e 's/ppc/ppcsim/'` ;;
425powerpc*-*-linux*) case "${targ}" in
426 *64*) targ_emul=elf64ppc
427 targ_extra_emuls="elf32ppclinux elf32ppc elf32ppcsim"
428 targ_extra_libpath="elf32ppclinux elf32ppc"
429 tdir_elf32ppc=`echo "${targ_alias}" | sed -e 's/64//'`
430 tdir_elf32ppclinux=$tdir_elf32ppc
431 tdir_elf32ppcsim=$tdir_elf32ppc
432 ;;
433 *) targ_emul=elf32ppclinux
434 targ_extra_emuls="elf32ppc elf32ppcsim"
435 targ_extra_libpath=elf32ppc
534d3119
L
436 targ64_extra_emuls=elf64ppc
437 targ64_extra_libpath=elf64ppc
438 ;;
e729279b 439 esac ;;
5c67d4bb
AM
440powerpc*le-*-elf* | powerpc*le-*-eabi* | powerpc*le-*-solaris* \
441 | powerpc*le-*-sysv* | powerpc*le-*-vxworks*)
e729279b
NC
442 case "${targ}" in
443 *64*) targ_emul=elf64lppc
444 targ_extra_emuls="elf32lppc elf32lppcsim"
445 tdir_elf32lppc=`echo "${targ_alias}" | sed -e 's/64//'`
446 tdir_elf32lppcsim=$tdir_elf32lppc
447 ;;
448 *) targ_emul=elf32lppc
449 targ_extra_emuls="elf32ppcsim" ;;
450 esac ;;
5c67d4bb 451powerpc*-*-elf* | powerpc*-*-eabi* | powerpc*-*-sysv* \
9d8504b1 452 | powerpc*-*-netbsd* | powerpc-*-openbsd* | powerpc*-*-kaos*)
e729279b
NC
453 case "${targ}" in
454 *64*) targ_emul=elf64ppc
455 targ_extra_emuls="elf32ppc elf32ppclinux elf32ppcsim"
456 tdir_elf32ppc=`echo "${targ_alias}" | sed -e 's/64//'`
457 tdir_elf32ppclinux=$tdir_elf32ppc
458 tdir_elf32ppcsim=$tdir_elf32ppc
459 ;;
460 *) targ_emul=elf32ppc
461 targ_extra_emuls="elf32ppclinux elf32ppcsim" ;;
462 esac ;;
9d8504b1 463powerpc-*-vxworks*)
e729279b
NC
464 targ_emul=elf32ppcvxworks
465 targ_extra_emuls="elf32ppc elf32ppclinux elf32ppcsim" ;;
59bc061d
NC
466powerpc-*-nto*) targ_emul=elf32ppcnto ;;
467powerpcle-*-nto*) targ_emul=elf32lppcnto ;;
252b5132
RH
468powerpc-*-rtems*) targ_emul=elf32ppc ;;
469powerpc-*-macos*) targ_emul=ppcmacos ;;
470powerpc-*-netware*) targ_emul=ppcnw ;;
471powerpcle-*-pe) targ_emul=ppcpe ;;
472powerpcle-*-winnt*) targ_emul=ppcpe ;;
3b1b01cf 473powerpcle-*-cygwin*) targ_emul=ppcpe ;;
eb1e0e80 474powerpc-*-aix5*) targ_emul=aix5ppc ;;
742aeb63 475powerpc-*-aix*) targ_emul=aixppc ;;
252b5132 476powerpc-*-beos*) targ_emul=aixppc ;;
94349e12 477powerpc-*-windiss*) targ_emul=elf32ppcwindiss ;;
b2d65c0b 478powerpc-*-lynxos*) targ_emul=ppclynx ;;
eb1e0e80 479rs6000-*-aix5*) targ_emul=aix5rs6 ;;
e729279b
NC
480rs6000-*-aix*) targ_emul=aixrs6
481 ;;
f52d1d64
JJ
482s390x-*-linux*) targ_emul=elf64_s390
483 targ_extra_emuls=elf_s390
484 targ_extra_libpath=$targ_extra_emuls
485 tdir_elf_s390=`echo ${targ_alias} | sed -e 's/s390x/s390/'` ;;
2fbd2a87
NC
486s390x-*-tpf*) targ_emul=elf64_s390
487 tdir_elf_s390=`echo ${targ_alias} | sed -e 's/s390x/s390/'` ;;
f52d1d64 488s390-*-linux*) targ_emul=elf_s390
534d3119
L
489 targ64_extra_emuls=elf64_s390
490 targ64_extra_libpath=elf64_s390
491 tdir_elf64_s390=`echo ${targ_alias} | sed -e 's/s390/s390x/'`
e729279b 492 ;;
1c0d3aa6 493score-*-elf) targ_emul=scoreelf ;;
e729279b
NC
494sh-*-linux*) targ_emul=shlelf_linux
495 targ_extra_emuls=shelf_linux
496 targ_extra_libpath=shelf_linux ;;
497sh64eb-*-linux*) targ_emul=shelf32_linux
498 targ_extra_emuls="shlelf32_linux" ;;
499sh64-*-linux*) targ_emul=shlelf32_linux
500 targ_extra_emuls="shelf32_linux"
501 targ_extra_libpath=shelf32_linux ;;
502sh*eb-*-linux*) targ_emul=shelf_linux ;;
503sh*-*-linux*) targ_emul=shlelf_linux ;;
504sh5le-*-netbsd*) targ_emul=shlelf32_nbsd
505 targ_extra_emuls="shelf32_nbsd shelf64_nbsd shlelf64_nbsd shelf_nbsd shlelf_nbsd" ;;
506sh5-*-netbsd*) targ_emul=shelf32_nbsd
507 targ_extra_emuls="shlelf32_nbsd shelf64_nbsd shlelf64_nbsd shelf_nbsd shlelf_nbsd" ;;
508sh64le-*-netbsd*) targ_emul=shlelf64_nbsd
509 targ_extra_emuls="shelf64_nbsd shelf32_nbsd shlelf32_nbsd shelf_nbsd shlelf_nbsd" ;;
510sh64-*-netbsd*) targ_emul=shelf64_nbsd
511 targ_extra_emuls="shlelf64_nbsd shelf32_nbsd shlelf32_nbsd shelf_nbsd shlelf_nbsd" ;;
512sh*l*-*-netbsdelf*) targ_emul=shlelf_nbsd
513 targ_extra_emuls=shelf_nbsd ;;
514sh*-*-netbsdelf*) targ_emul=shelf_nbsd
515 targ_extra_emuls=shlelf_nbsd ;;
516sh*-*-symbianelf*) targ_emul=shlsymbian ;;
517shle*-*-elf* | sh[1234]*le*-*-elf | shle*-*-kaos*)
518 targ_emul=shlelf
519 targ_extra_emuls="shelf shl sh" ;;
520sh-*-rtemscoff*) targ_emul=sh; targ_extra_emuls=shl ;;
55e6e397 521sh-*-elf* | sh[1234]*-*-elf | sh-*-rtems* | sh-*-kaos*)
e729279b
NC
522 targ_emul=shelf
523 targ_extra_emuls="shlelf sh shl" ;;
ed6ba298
NS
524sh-*-uclinux* | sh[12]-*-uclinux*)
525 targ_emul=shelf_uclinux
526 targ_extra_emuls="shelf shlelf sh shl" ;;
55e6e397
RS
527sh-*-vxworks) targ_emul=shelf_vxworks
528 targ_extra_emuls=shlelf_vxworks ;;
e729279b
NC
529sh-*-nto*) targ_emul=shelf_nto
530 targ_extra_emuls=shlelf_nto ;;
531sh-*-pe) targ_emul=shpe ;
532 targ_extra_ofiles="deffilep.o pe-dll.o" ;;
533sh-*-*) targ_emul=sh; targ_extra_emuls=shl ;;
534sh64le-*-elf*) targ_emul=shlelf
535 targ_extra_emuls="shelf shlelf32 shelf32 shlelf64 shelf64"
536 targ_extra_libpath=$targ_extra_emuls ;;
537sh64-*-elf*) targ_emul=shelf
538 targ_extra_emuls="shlelf shelf32 shlelf32 shelf64 shlelf64"
539 targ_extra_libpath=$targ_extra_emuls ;;
540sparc64-*-aout*) targ_emul=sparcaout ;;
541sparc64-*-elf*) targ_emul=elf64_sparc ;;
542sparc-sun-sunos4*) targ_emul=sun4 ;;
543sparclite*-*-elf) targ_emul=elf32_sparc ;;
544sparclite*-*-coff) targ_emul=coff_sparc ;;
545sparclite*-fujitsu-*) targ_emul=sparcaout ;;
546sparc*-*-aout) targ_emul=sparcaout ;;
547sparc*-*-coff) targ_emul=coff_sparc ;;
548sparc*-*-elf) targ_emul=elf32_sparc ;;
549sparc*-*-sysv4*) targ_emul=elf32_sparc ;;
910600e9 550sparc*-*-vxworks*) targ_emul=elf32_sparc_vxworks ;;
e729279b
NC
551sparc64-*-freebsd* | sparcv9-*-freebsd* | sparc64-*-kfreebsd*-gnu | sparcv9-*-kfreebsd*-gnu)
552 targ_emul=elf64_sparc_fbsd
553 targ_extra_emuls="elf64_sparc elf32_sparc"
554 targ_extra_libpath=$targ_extra_emuls
555 tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/64//'` ;;
556sparc*-*-linux*aout*) targ_emul=sparclinux
557 targ_extra_emuls="elf32_sparc sun4"
558 tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/aout//'`
559 tdir_sun4=sparc-sun-sunos4 ;;
560sparc64-*-linux-*) targ_emul=elf64_sparc
561 targ_extra_emuls="elf32_sparc sparclinux sun4"
562 targ_extra_libpath=elf32_sparc
563 tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/64//'`
564 tdir_sparclinux=${tdir_elf32_sparc}aout
565 tdir_sun4=sparc-sun-sunos4 ;;
566sparc*-*-linux-*) targ_emul=elf32_sparc
567 targ_extra_emuls="sparclinux elf64_sparc sun4"
568 targ_extra_libpath=elf64_sparc
569 tdir_sparclinux=${targ_alias}aout
570 tdir_elf64_sparc=`echo ${targ_alias} | sed -e 's/32//'`
571 tdir_sun4=sparc-sun-sunos4 ;;
572sparc64-*-netbsd* | sparc64-*-openbsd*)
573 targ_emul=elf64_sparc
574 targ_extra_emuls="elf32_sparc" ;;
575sparc*-*-netbsd*elf*) targ_emul=elf32_sparc ;;
576sparc*-*-netbsd*) targ_emul=sparcnbsd ;;
577sparc-*-solaris2.[0-6] | sparc-*-solaris2.[0-6].*)
578 targ_emul=elf32_sparc ;;
579sparc-*-solaris2*) targ_emul=elf32_sparc
580 targ_extra_emuls="elf64_sparc"
581 targ_extra_libpath=$targ_extra_emuls
582 tdir_elf64_sparc=`echo ${targ_alias} | sed -e 's/32//'` ;;
583sparcv9-*-solaris2* | sparc64-*-solaris2*)
584 targ_emul=elf64_sparc
585 targ_extra_emuls="elf32_sparc"
586 targ_extra_libpath=$targ_extra_emuls
587 tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/64//'` ;;
588sparc*-*-solaris2*) targ_emul=elf32_sparc ;;
589sparc*-wrs-vxworks*) targ_emul=sparcaout ;;
e729279b
NC
590sparc*-*-rtems*) targ_emul=elf32_sparc
591 ;;
46c3c201 592spu-*-elf*) targ_emul=elf32_spu ;;
e729279b
NC
593tic30-*-*aout*) targ_emul=tic30aout ;;
594tic30-*-*coff*) targ_emul=tic30coff ;;
595tic4x-*-* | c4x-*-*) targ_emul=tic4xcoff ; targ_extra_emuls="tic3xcoff tic3xcoff_onchip" ;;
596tic54x-*-* | c54x*-*-*) targ_emul=tic54xcoff ;;
597tic80-*-*) targ_emul=tic80coff
598 ;;
599v850-*-*) targ_emul=v850 ;;
600v850e-*-*) targ_emul=v850 ;;
601v850ea-*-*) targ_emul=v850
602 ;;
603vax-dec-ultrix* | vax-dec-bsd*) targ_emul=vax ;;
604vax-*-netbsdelf*) targ_emul=elf32vax
605 targ_extra_emuls=vaxnbsd ;;
606vax-*-netbsdaout* | vax-*-netbsd*)
607 targ_emul=vaxnbsd
608 targ_extra_emuls=elf32vax ;;
609vax-*-linux-*) targ_emul=elf32vax
610 ;;
611w65-*-*) targ_emul=w65
612 ;;
d70c5fc7
NC
613xc16x-*-elf) targ_emul=elf32xc16x
614 targ_extra_emuls="elf32xc16xl elf32xc16xs"
615 ;;
e729279b
NC
616xstormy16-*-*) targ_emul=elf32xstormy16
617 ;;
618xtensa-*-*) targ_emul=elf32xtensa
619 ;;
3c9b82ba
NC
620z80-*-coff) targ_emul=z80
621 ;;
e729279b
NC
622z8k-*-coff) targ_emul=z8002; targ_extra_emuls=z8001
623 ;;
624*-*-ieee*) targ_emul=vanilla
625 ;;
626*-tandem-none) targ_emul=st2000
627 ;;
252b5132
RH
628*)
629 echo 2>&1 "*** ld does not support target ${targ}"
630 echo 2>&1 "*** see ld/configure.tgt for supported targets"
631 exit 1
632
633esac
9c8ebd6a
DJ
634
635NATIVE_LIB_DIRS='/usr/local/lib /lib /usr/lib'
636case "${target}" in
637
638*-*-freebsd*)
639 NATIVE_LIB_DIRS='/lib /usr/lib /usr/local/lib'
640 ;;
641
642hppa*64*-*-hpux11*)
643 NATIVE_LIB_DIRS=/usr/lib/pa20_64
644 ;;
645
80c7c40a 646i[3-7]86-*-sysv4*)
9c8ebd6a
DJ
647 NATIVE_LIB_DIRS='/usr/local/lib /usr/ccs/lib /lib /usr/lib'
648 ;;
649
80c7c40a 650i[3-7]86-*-solaris*)
9c8ebd6a
DJ
651 NATIVE_LIB_DIRS='/usr/local/lib /usr/ccs/lib /lib /usr/lib'
652 ;;
653
80c7c40a 654i[3-7]86-pc-interix*)
9c8ebd6a
DJ
655 NATIVE_LIB_DIRS='/usr/local/lib $$INTERIX_ROOT/usr/lib /lib /usr/lib'
656 ;;
657
658ia64-*-aix*)
659 NATIVE_LIB_DIRS='/usr/local/lib /usr/lib/ia64l64 /lib /usr/lib'
660 ;;
661
662sparc*-*-solaris2*)
663 NATIVE_LIB_DIRS='/usr/local/lib /usr/ccs/lib /lib /usr/lib'
664 ;;
665
a6c73b34
BE
666spu-*-elf*)
667 # This allows to build a pair of PPU/SPU toolchains with common sysroot.
668 NATIVE_LIB_DIRS='/usr/spu/lib'
669 ;;
670
d55b850c
CF
671i[03-9x]86-*-cygwin*)
672 NATIVE_LIB_DIRS='/usr/lib /usr/lib/w32api'
673 ;;
674
9c8ebd6a
DJ
675*-*-linux*)
676 ;;
677
678*-*-freebsd*)
679 ;;
680
681*-*-netbsd*)
682 ;;
683
684alpha*-*-*)
685 NATIVE_LIB_DIRS='/usr/local/lib /usr/ccs/lib /lib /usr/lib'
686 ;;
687
688esac
This page took 0.384504 seconds and 4 git commands to generate.