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
|
---|
10 | # targ_extra_libpath additional linker emulations using LIB_PATH
|
---|
11 | # targ_extra_ofiles additional objects needed by the emulation
|
---|
12 | # NATIVE_LIB_DIRS library directories to search on this host
|
---|
13 | # (if we are a native or sysrooted linker)
|
---|
14 |
|
---|
15 | targ_extra_emuls=
|
---|
16 | targ_extra_ofiles=
|
---|
17 |
|
---|
18 | case "${targ}" in
|
---|
19 | arm-epoc-pe) targ_emul=arm_epoc_pe ;
|
---|
20 | targ_extra_ofiles="deffilep.o pe-dll.o" ;;
|
---|
21 | arm-*-wince) targ_emul=armpe ;
|
---|
22 | targ_extra_ofiles="deffilep.o pe-dll.o" ;;
|
---|
23 | arm-*-pe) targ_emul=armpe ;
|
---|
24 | targ_extra_ofiles="deffilep.o pe-dll.o" ;;
|
---|
25 | arc-*-elf*) targ_emul=arcelf ;;
|
---|
26 | avr-*-*) targ_emul=avr85xx
|
---|
27 | targ_extra_emuls="avr1200 avr23xx avr44x4 avr4433 avrmega603 avrmega103 avrmega161 avr1 avr2 avr3 avr4 avr5" ;;
|
---|
28 | cris-*-*aout*) targ_emul=crisaout
|
---|
29 | targ_extra_emuls="criself crislinux"
|
---|
30 | targ_extra_libpath=$targ_extra_emuls ;;
|
---|
31 | cris-*-*) targ_emul=criself
|
---|
32 | targ_extra_emuls="crisaout crislinux"
|
---|
33 | targ_extra_libpath=$targ_extra_emuls ;;
|
---|
34 | d10v-*-*) targ_emul=d10velf ;;
|
---|
35 | d30v-*-*ext*) targ_emul=d30v_e; targ_extra_emuls="d30velf d30v_o" ;;
|
---|
36 | d30v-*-*onchip*) targ_emul=d30v_o; targ_extra_emuls="d30velf d30v_e" ;;
|
---|
37 | d30v-*-*) targ_emul=d30velf; targ_extra_emuls="d30v_e d30v_o" ;;
|
---|
38 | dlx-*-elf*) targ_emul=elf32_dlx ;;
|
---|
39 | sparc64-*-aout*) targ_emul=sparcaout ;;
|
---|
40 | sparc64-*-elf*) targ_emul=elf64_sparc ;;
|
---|
41 | sparc-sun-sunos4*) targ_emul=sun4 ;;
|
---|
42 | sparclite*-*-elf) targ_emul=elf32_sparc ;;
|
---|
43 | sparclite*-*-coff) targ_emul=coff_sparc ;;
|
---|
44 | sparclite*-fujitsu-*) targ_emul=sparcaout ;;
|
---|
45 | sparc*-*-aout) targ_emul=sparcaout ;;
|
---|
46 | sparc*-*-coff) targ_emul=coff_sparc ;;
|
---|
47 | sparc*-*-elf) targ_emul=elf32_sparc ;;
|
---|
48 | sparc*-*-sysv4*) targ_emul=elf32_sparc ;;
|
---|
49 | sparc64-*-freebsd* | sparcv9-*-freebsd*)
|
---|
50 | targ_emul=elf64_sparc_fbsd
|
---|
51 | targ_extra_emuls="elf64_sparc elf32_sparc"
|
---|
52 | targ_extra_libpath=$targ_extra_emuls
|
---|
53 | tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/64//'`
|
---|
54 | ;;
|
---|
55 | sparc*-*-linux*aout*) targ_emul=sparclinux
|
---|
56 | targ_extra_emuls="elf32_sparc sun4"
|
---|
57 | tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/aout//'`
|
---|
58 | tdir_sun4=sparc-sun-sunos4
|
---|
59 | ;;
|
---|
60 | sparc64-*-linux-gnu*) targ_emul=elf64_sparc
|
---|
61 | targ_extra_emuls="elf32_sparc sparclinux sun4"
|
---|
62 | targ_extra_libpath=elf32_sparc
|
---|
63 | tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/64//'`
|
---|
64 | tdir_sparclinux=${tdir_elf32_sparc}aout
|
---|
65 | tdir_sun4=sparc-sun-sunos4
|
---|
66 | ;;
|
---|
67 | sparc*-*-linux-gnu*) targ_emul=elf32_sparc
|
---|
68 | targ_extra_emuls="sparclinux elf64_sparc sun4"
|
---|
69 | targ_extra_libpath=elf64_sparc
|
---|
70 | tdir_sparclinux=${targ_alias}aout
|
---|
71 | tdir_elf64_sparc=`echo ${targ_alias} | sed -e 's/32//'`
|
---|
72 | tdir_sun4=sparc-sun-sunos4
|
---|
73 | ;;
|
---|
74 | sparc*-*-lynxos*) targ_emul=sparclynx ;;
|
---|
75 | sparc64-*-netbsd* | sparc64-*-openbsd*)
|
---|
76 | targ_emul=elf64_sparc
|
---|
77 | targ_extra_emuls="elf32_sparc"
|
---|
78 | ;;
|
---|
79 | sparc*-*-netbsd*elf*) targ_emul=elf32_sparc ;;
|
---|
80 | sparc*-*-netbsd*) targ_emul=sparcnbsd ;;
|
---|
81 | sparc-*-solaris2.[0-6] | sparc-*-solaris2.[0-6].*)
|
---|
82 | targ_emul=elf32_sparc ;;
|
---|
83 | sparc-*-solaris2*) targ_emul=elf32_sparc
|
---|
84 | targ_extra_emuls="elf64_sparc"
|
---|
85 | targ_extra_libpath=$targ_extra_emuls
|
---|
86 | tdir_elf64_sparc=`echo ${targ_alias} | sed -e 's/32//'`
|
---|
87 | ;;
|
---|
88 | sparcv9-*-solaris2* | sparc64-*-solaris2*)
|
---|
89 | targ_emul=elf64_sparc
|
---|
90 | targ_extra_emuls="elf32_sparc"
|
---|
91 | targ_extra_libpath=$targ_extra_emuls
|
---|
92 | tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/64//'`
|
---|
93 | ;;
|
---|
94 | sparc*-*-solaris2*) targ_emul=elf32_sparc ;;
|
---|
95 | sparc*-wrs-vxworks*) targ_emul=sparcaout ;;
|
---|
96 | sparc*-*-rtemsaout*) targ_emul=sparcaout ;;
|
---|
97 | sparc*-*-rtemself*) targ_emul=elf32_sparc ;;
|
---|
98 | sparc*-*-rtems*) targ_emul=elf32_sparc ;;
|
---|
99 | i860-stardent-sysv4* | i860-stardent-elf*)
|
---|
100 | targ_emul=elf32_i860 ;;
|
---|
101 | i960-wrs-vxworks5.0*) targ_emul=gld960 ;;
|
---|
102 | i960-wrs-vxworks5*) targ_emul=gld960coff ;;
|
---|
103 | i960-wrs-vxworks*) targ_emul=gld960 ;;
|
---|
104 | i960-*-coff) targ_emul=gld960coff ;;
|
---|
105 | i960-intel-nindy) targ_emul=gld960 ;;
|
---|
106 | i960-*-rtems*) targ_emul=gld960coff ;;
|
---|
107 | i960-*-elf*) targ_emul=elf32_i960 ;;
|
---|
108 | ia64-*-elf*) targ_emul=elf64_ia64 ;;
|
---|
109 | ia64-*-freebsd*) targ_emul=elf64_ia64_fbsd
|
---|
110 | targ_extra_emuls="elf64_ia64" ;;
|
---|
111 | ia64-*-netbsd*) targ_emul=elf64_ia64 ;;
|
---|
112 | ia64-*-linux*) targ_emul=elf64_ia64 ;;
|
---|
113 | ia64-*-aix*) targ_emul=elf64_aix ;;
|
---|
114 | m32r-*-*) targ_emul=m32relf ;;
|
---|
115 | m68hc11-*-*|m6811-*-*) targ_emul=m68hc11elf
|
---|
116 | targ_extra_emuls="m68hc11elfb m68hc12elf m68hc12elfb" ;;
|
---|
117 | m68hc12-*-*|m6812-*-*) targ_emul=m68hc12elf
|
---|
118 | targ_extra_emuls="m68hc12elfb m68hc11elf m68hc11elfb" ;;
|
---|
119 | m68*-sun-sunos[34]*) targ_emul=sun3 ;;
|
---|
120 | m68*-wrs-vxworks*) targ_emul=sun3 ;;
|
---|
121 | m68*-ericsson-ose) targ_emul=sun3 ;;
|
---|
122 | m68*-apple-aux*) targ_emul=m68kaux ;;
|
---|
123 | *-tandem-none) targ_emul=st2000 ;;
|
---|
124 | i370-*-elf* | i370-*-linux-gnu*) targ_emul=elf32i370 ;;
|
---|
125 | i[3456]86-*-nto-qnx*) targ_emul=i386nto ;;
|
---|
126 | i[3456]86-*-vsta) targ_emul=vsta ;;
|
---|
127 | i[3456]86-go32-rtems*) targ_emul=i386go32 ;;
|
---|
128 | i[3456]86-*-go32) targ_emul=i386go32 ;;
|
---|
129 | i[3456]86-*-msdosdjgpp*) targ_emul=i386go32 ;;
|
---|
130 | i[3456]86-*-aix*) targ_emul=i386coff ;;
|
---|
131 | i[3456]86-*-sco*) targ_emul=i386coff ;;
|
---|
132 | i[3456]86-*-isc*) targ_emul=i386coff ;;
|
---|
133 | i[3456]86-*-lynxos*) targ_emul=i386lynx ;;
|
---|
134 | i[3456]86-*-coff) targ_emul=i386coff ;;
|
---|
135 | i[3456]86-*-rtemscoff*) targ_emul=i386coff ;;
|
---|
136 | i[3456]86-*-rtemself*) targ_emul=elf_i386 ;;
|
---|
137 | i[3456]86-*-rtems*) targ_emul=elf_i386 ;;
|
---|
138 | i[3456]86-*-aros*) targ_emul=elf_i386 ;;
|
---|
139 | i[3456]86-*-bsd) targ_emul=i386bsd ;;
|
---|
140 | i[3456]86-*-bsd386) targ_emul=i386bsd ;;
|
---|
141 | i[3456]86-*-bsdi*) targ_emul=i386bsd ;;
|
---|
142 | i[3456]86-*-aout) targ_emul=i386aout ;;
|
---|
143 | i[3456]86-*-linux*aout*) targ_emul=i386linux
|
---|
144 | targ_extra_emuls=elf_i386
|
---|
145 | tdir_elf_i386=`echo ${targ_alias} | sed -e 's/aout//'`
|
---|
146 | ;;
|
---|
147 | i[3456]86-*-linux*oldld) targ_emul=i386linux; targ_extra_emuls=elf_i386 ;;
|
---|
148 | i[3456]86-*-linux-gnu*) targ_emul=elf_i386
|
---|
149 | targ_extra_emuls=i386linux
|
---|
150 | if test x${want64} = xtrue; then
|
---|
151 | targ_extra_emuls="$targ_extra_emuls elf_x86_64"
|
---|
152 | fi
|
---|
153 | tdir_i386linux=${targ_alias}aout
|
---|
154 | ;;
|
---|
155 | x86_64-*-linux-gnu*) targ_emul=elf_x86_64
|
---|
156 | targ_extra_emuls="elf_i386 i386linux"
|
---|
157 | targ_extra_libpath=elf_i386
|
---|
158 | tdir_i386linux=`echo ${targ_alias}aout | sed -e 's/x86_64/i386/'`
|
---|
159 | tdir_elf_i386=`echo ${targ_alias} | sed -e 's/x86_64/i386/'`
|
---|
160 | ;;
|
---|
161 | i[3456]86-*-sysv[45]*) targ_emul=elf_i386 ;;
|
---|
162 | i[3456]86-*-solaris2*) targ_emul=elf_i386_ldso
|
---|
163 | targ_extra_emuls="elf_i386"
|
---|
164 | ;;
|
---|
165 | i[3456]86-*-unixware) targ_emul=elf_i386 ;;
|
---|
166 | i[3456]86-*-solaris*) targ_emul=elf_i386_ldso
|
---|
167 | targ_extra_emuls="elf_i386"
|
---|
168 | ;;
|
---|
169 | i[3456]86-*-netbsdelf*) targ_emul=elf_i386
|
---|
170 | targ_extra_emuls=i386nbsd
|
---|
171 | ;;
|
---|
172 | i[3456]86-*-netbsdpe*) targ_emul=i386pe
|
---|
173 | targ_extra_ofiles="deffilep.o pe-dll.o"
|
---|
174 | ;;
|
---|
175 | i[3456]86-*-netbsd*) targ_emul=i386nbsd
|
---|
176 | targ_extra_emuls=elf_i386
|
---|
177 | ;;
|
---|
178 | x86_64-*-netbsd*) targ_emul=elf_x86_64
|
---|
179 | targ_extra_emuls="elf_i386 i386nbsd"
|
---|
180 | tdir_elf_i386=`echo ${targ_alias} | \
|
---|
181 | sed -e 's/x86_64/i386/'`
|
---|
182 | case "${tdir_elf_i386}" in
|
---|
183 | *-netbsdelf*) ;;
|
---|
184 | *)
|
---|
185 | tdir_elf_i386=`echo ${tdir_elf_i386} | \
|
---|
186 | sed -e 's/netbsd/netbsdelf/'`
|
---|
187 | ;;
|
---|
188 | esac
|
---|
189 | ;;
|
---|
190 | i[3456]86-*-netware) targ_emul=i386nw ;;
|
---|
191 | i[3456]86-*-os2-elf) targ_emul=elf_i386;
|
---|
192 | targ_extra_emuls="i386aoutemx i386pe";
|
---|
193 | tdir_elf_i386=${targ_alias};
|
---|
194 | tdir_i386emx=${targ_alias}aout;
|
---|
195 | targ_extra_ofiles="deffilep.o pe-dll.o";
|
---|
196 | ;;
|
---|
197 | i[3456]86-*-os2 | i[3456]86-*-os2-emx) targ_emul=i386aoutemx;
|
---|
198 | targ_extra_emuls="elf_i386 i386pe";
|
---|
199 | tdir_i386emx=${targ_alias};
|
---|
200 | tdir_elf_i386=${targ_alias}elf;
|
---|
201 | targ_extra_ofiles="deffilep.o pe-dll.o";
|
---|
202 | ;;
|
---|
203 | i[3456]86-*-elf*) targ_emul=elf_i386 ;;
|
---|
204 | i[3456]86-*-kaos*) targ_emul=elf_i386 ;;
|
---|
205 | i[3456]86-*-freebsdaout* | i[3456]86-*-freebsd[12].* | i[3456]86-*-freebsd[12])
|
---|
206 | targ_emul=i386bsd ;;
|
---|
207 | i[3456]86-*-freebsd*) targ_emul=elf_i386_fbsd
|
---|
208 | targ_extra_emuls="elf_i386 i386bsd" ;;
|
---|
209 | x86_64-*-freebsd*) targ_emul=elf_x86_64_fbsd
|
---|
210 | targ_extra_emuls="elf_i386_fbsd elf_x86_64 elf_i386"
|
---|
211 | tdir_elf_i386=`echo ${targ_alias} \
|
---|
212 | | sed -e 's/x86_64/i386/'`
|
---|
213 | ;;
|
---|
214 | i[3456]86-*-sysv*) targ_emul=i386coff ;;
|
---|
215 | i[3456]86-*-ptx*) targ_emul=i386coff ;;
|
---|
216 | i[3456]86-*-mach*) targ_emul=i386mach ;;
|
---|
217 | i[3456]86-*-gnu*) targ_emul=elf_i386 ;;
|
---|
218 | i[3456]86-*-msdos*) targ_emul=i386msdos; targ_extra_emuls=i386aout ;;
|
---|
219 | i[3456]86-*-moss*) targ_emul=i386moss; targ_extra_emuls=i386msdos ;;
|
---|
220 | i[3456]86-*-winnt*) targ_emul=i386pe ;
|
---|
221 | targ_extra_ofiles="deffilep.o pe-dll.o" ;;
|
---|
222 | i[3456]86-*-pe) targ_emul=i386pe ;
|
---|
223 | targ_extra_ofiles="deffilep.o pe-dll.o" ;;
|
---|
224 | i[3456]86-*-cygwin*) targ_emul=i386pe ;
|
---|
225 | targ_extra_ofiles="deffilep.o pe-dll.o"
|
---|
226 | test "$targ" != "$host" && LIB_PATH='${tooldir}/lib/w32api' ;;
|
---|
227 | i[3456]86-*-mingw32*) targ_emul=i386pe ;
|
---|
228 | targ_extra_ofiles="deffilep.o pe-dll.o" ;;
|
---|
229 | i[3456]86-*-interix*) targ_emul=i386pe_posix;
|
---|
230 | targ_extra_ofiles="deffilep.o pe-dll.o" ;;
|
---|
231 | i[3456]86-*-beospe*) targ_emul=i386beos ;;
|
---|
232 | i[3456]86-*-beos*) targ_emul=elf_i386_be ;;
|
---|
233 | i[3456]86-*-vxworks*) targ_emul=i386aout ;;
|
---|
234 | i[3456]86-*-chaos) targ_emul=elf_i386_chaos ;;
|
---|
235 | m8*-*-*) targ_emul=m88kbcs ;;
|
---|
236 | a29k-*-udi) targ_emul=sa29200 ;;
|
---|
237 | a29k-*-ebmon) targ_emul=ebmon29k ;;
|
---|
238 | a29k-*-*) targ_emul=a29k ;;
|
---|
239 | # arm-*-riscix*) targ_emul=riscix ;;
|
---|
240 | arm-*-aout | armel-*-aout) targ_emul=armaoutl ;;
|
---|
241 | armeb-*-aout) targ_emul=armaoutb ;;
|
---|
242 | arm-*-coff) targ_emul=armcoff ;;
|
---|
243 | arm-*-vxworks) targ_emul=armcoff ;;
|
---|
244 | arm-*-freebsd*) targ_emul=armelf_fbsd
|
---|
245 | targ_extra_emuls="armelf" ;;
|
---|
246 | armeb-*-netbsdelf*) targ_emul=armelfb_nbsd;
|
---|
247 | targ_extra_emuls="armelf_nbsd armelf armnbsd" ;;
|
---|
248 | arm-*-netbsdelf*) targ_emul=armelf_nbsd;
|
---|
249 | targ_extra_emuls="armelfb_nbsd armelf armnbsd" ;;
|
---|
250 | arm-*-netbsd*) targ_emul=armnbsd;
|
---|
251 | targ_extra_emuls="armelf armelf_nbsd armelfb_nbsd" ;;
|
---|
252 | arm-*-nto*) targ_emul=armnto ;;
|
---|
253 | arm-*-openbsd*) targ_emul=armnbsd ;;
|
---|
254 | arm-*-rtems*) targ_emul=armelf ;;
|
---|
255 | arm-*-elf) targ_emul=armelf ;;
|
---|
256 | arm-*-kaos*) targ_emul=armelf ;;
|
---|
257 | arm9e-*-elf) targ_emul=armelf ;;
|
---|
258 | arm-*-oabi) targ_emul=armelf_oabi ;;
|
---|
259 | arm*-*-linux-gnu*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
|
---|
260 | arm*-*-uclinux*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
|
---|
261 | arm*-*-conix*) targ_emul=armelf ;;
|
---|
262 | thumb-*-linux-gnu* | thumb-*-uclinux*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
|
---|
263 | strongarm-*-coff) targ_emul=armcoff ;;
|
---|
264 | strongarm-*-elf) targ_emul=armelf ;;
|
---|
265 | strongarm-*-kaos*) targ_emul=armelf ;;
|
---|
266 | thumb-*-coff) targ_emul=armcoff ;;
|
---|
267 | thumb-*-elf) targ_emul=armelf ;;
|
---|
268 | thumb-*-oabi) targ_emul=armelf_oabi ;;
|
---|
269 | thumb-epoc-pe) targ_emul=arm_epoc_pe ;
|
---|
270 | targ_extra_ofiles="deffilep.o pe-dll.o" ;;
|
---|
271 | thumb-*-pe) targ_emul=armpe ;
|
---|
272 | targ_extra_ofiles="deffilep.o pe-dll.o" ;;
|
---|
273 | xscale-*-coff) targ_emul=armcoff ;;
|
---|
274 | xscale-*-elf) targ_emul=armelf ;;
|
---|
275 | h8300-*-hms* | h8300-*-coff* | h8300-*-rtems*)
|
---|
276 | targ_emul=h8300; targ_extra_emuls="h8300h h8300s h8300hn h8300sn"
|
---|
277 | ;;
|
---|
278 | h8300-*-elf*)
|
---|
279 | targ_emul=h8300elf;
|
---|
280 | targ_extra_emuls="h8300helf h8300self h8300hnelf h8300snelf"
|
---|
281 | ;;
|
---|
282 | h8500-*-hms* | h8500-*-coff* | h8500-*-rtems*)
|
---|
283 | targ_emul=h8500
|
---|
284 | targ_extra_emuls="h8500s h8500b h8500m h8500c"
|
---|
285 | ;;
|
---|
286 | sh-*-linux*)
|
---|
287 | targ_emul=shlelf_linux
|
---|
288 | targ_extra_emuls=shelf_linux
|
---|
289 | targ_extra_libpath=shelf_linux
|
---|
290 | ;;
|
---|
291 | sh64eb-*-linux*) targ_emul=shelf32_linux
|
---|
292 | targ_extra_emuls="shlelf32_linux"
|
---|
293 | ;;
|
---|
294 | sh64-*-linux*) targ_emul=shlelf32_linux
|
---|
295 | targ_extra_emuls="shelf32_linux"
|
---|
296 | targ_extra_libpath=shelf32_linux
|
---|
297 | ;;
|
---|
298 | sh*eb-*-linux*)
|
---|
299 | targ_emul=shelf_linux
|
---|
300 | ;;
|
---|
301 | sh*-*-linux*)
|
---|
302 | targ_emul=shlelf_linux
|
---|
303 | ;;
|
---|
304 | sh5le-*-netbsd*)
|
---|
305 | targ_emul=shlelf32_nbsd
|
---|
306 | targ_extra_emuls="shelf32_nbsd shelf64_nbsd shlelf64_nbsd shelf_nbsd shlelf_nbsd"
|
---|
307 | ;;
|
---|
308 | sh5-*-netbsd*)
|
---|
309 | targ_emul=shelf32_nbsd
|
---|
310 | targ_extra_emuls="shlelf32_nbsd shelf64_nbsd shlelf64_nbsd shelf_nbsd shlelf_nbsd"
|
---|
311 | ;;
|
---|
312 | sh64le-*-netbsd*)
|
---|
313 | targ_emul=shlelf64_nbsd
|
---|
314 | targ_extra_emuls="shelf64_nbsd shelf32_nbsd shlelf32_nbsd shelf_nbsd shlelf_nbsd"
|
---|
315 | ;;
|
---|
316 | sh64-*-netbsd*)
|
---|
317 | targ_emul=shelf64_nbsd
|
---|
318 | targ_extra_emuls="shlelf64_nbsd shelf32_nbsd shlelf32_nbsd shelf_nbsd shlelf_nbsd"
|
---|
319 | ;;
|
---|
320 | sh*le-*-netbsdelf*)
|
---|
321 | targ_emul=shlelf_nbsd
|
---|
322 | targ_extra_emuls=shelf_nbsd
|
---|
323 | ;;
|
---|
324 | sh*-*-netbsdelf*)
|
---|
325 | targ_emul=shelf_nbsd
|
---|
326 | targ_extra_emuls=shlelf_nbsd
|
---|
327 | ;;
|
---|
328 | shle*-*-elf* | sh[1234]*le*-*-elf | shle*-*-kaos*)
|
---|
329 | targ_emul=shlelf
|
---|
330 | targ_extra_emuls="shelf shl sh"
|
---|
331 | ;;
|
---|
332 | sh-*-elf* | sh[1234]*-*-elf | sh-*-rtemself* | sh-*-kaos*)
|
---|
333 | targ_emul=shelf
|
---|
334 | targ_extra_emuls="shlelf sh shl"
|
---|
335 | ;;
|
---|
336 | sh-*-nto*) targ_emul=shelf_nto
|
---|
337 | targ_extra_emuls=shlelf_nto
|
---|
338 | ;;
|
---|
339 | sh-*-pe) targ_emul=shpe ;
|
---|
340 | targ_extra_ofiles="deffilep.o pe-dll.o" ;;
|
---|
341 | sh-*-*|sh-*-rtems*) targ_emul=sh; targ_extra_emuls=shl ;;
|
---|
342 | sh64le-*-elf*)
|
---|
343 | targ_emul=shlelf
|
---|
344 | targ_extra_emuls="shelf shlelf32 shelf32 shlelf64 shelf64"
|
---|
345 | targ_extra_libpath=$targ_extra_emuls
|
---|
346 | ;;
|
---|
347 | sh64-*-elf*)
|
---|
348 | targ_emul=shelf
|
---|
349 | targ_extra_emuls="shlelf shelf32 shlelf32 shelf64 shlelf64"
|
---|
350 | targ_extra_libpath=$targ_extra_emuls
|
---|
351 | ;;
|
---|
352 | m68k-sony-*) targ_emul=news ;;
|
---|
353 | m68k-hp-bsd*) targ_emul=hp300bsd ;;
|
---|
354 | m68*-motorola-sysv*) targ_emul=delta68 ;;
|
---|
355 | m68*-*-aout) targ_emul=m68kaout ;;
|
---|
356 | m68*-*-coff) targ_emul=m68kcoff ;;
|
---|
357 | m68*-*-elf) targ_emul=m68kelf ;;
|
---|
358 | m68*-*-hpux*) targ_emul=hp3hpux ;;
|
---|
359 | m68k-*-linux*aout*) targ_emul=m68klinux
|
---|
360 | targ_extra_emuls=m68kelf
|
---|
361 | tdir_m68kelf=`echo ${targ_alias} | sed -e 's/aout//'`
|
---|
362 | ;;
|
---|
363 | m68k-*-linux-gnu*) targ_emul=m68kelf
|
---|
364 | targ_extra_emuls=m68klinux
|
---|
365 | tdir_m68klinux=`echo ${targ_alias} | sed -e 's/linux/linuxaout/'`
|
---|
366 | ;;
|
---|
367 | m68*-*-gnu*) targ_emul=m68kelf ;;
|
---|
368 | m68*-*-lynxos*) targ_emul=m68klynx ;;
|
---|
369 | m68*-*-netbsd*4k*) targ_emul=m68k4knbsd
|
---|
370 | targ_extra_emuls="m68knbsd m68kelfnbsd" ;;
|
---|
371 | m68*-*-netbsdelf*) targ_emul=m68kelfnbsd
|
---|
372 | targ_extra_emuls="m68knbsd m68k4knbsd" ;;
|
---|
373 | m68*-*-netbsdaout* | m68*-*-netbsd*)
|
---|
374 | targ_emul=m68knbsd
|
---|
375 | targ_extra_emuls="m68kelfnbsd m68k4knbsd" ;;
|
---|
376 | m68*-*-psos*) targ_emul=m68kpsos ;;
|
---|
377 | m68*-*-rtemscoff*) targ_emul=m68kcoff ;;
|
---|
378 | m68*-*-rtems*) targ_emul=m68kelf ;;
|
---|
379 | hppa*64*-*-linux-gnu*) targ_emul=hppa64linux ;;
|
---|
380 | hppa*64*-*) targ_emul=elf64hppa ;;
|
---|
381 | hppa*-*-linux-gnu*) targ_emul=hppalinux ;;
|
---|
382 | hppa*-*-*elf*) targ_emul=hppaelf ;;
|
---|
383 | hppa*-*-lites*) targ_emul=hppaelf ;;
|
---|
384 | hppa*-*-netbsd*) targ_emul=hppanbsd ;;
|
---|
385 | hppa*-*-openbsd*) targ_emul=hppaobsd ;;
|
---|
386 | hppa*-*-rtems*) targ_emul=hppaelf ;;
|
---|
387 | vax-dec-ultrix* | vax-dec-bsd*) targ_emul=vax ;;
|
---|
388 | vax-*-netbsdelf*) targ_emul=elf32vax
|
---|
389 | targ_extra_emuls=vaxnbsd ;;
|
---|
390 | vax-*-netbsdaout* | vax-*-netbsd*)
|
---|
391 | targ_emul=vaxnbsd
|
---|
392 | targ_extra_emuls=elf32vax ;;
|
---|
393 | mips*-*-pe) targ_emul=mipspe ;
|
---|
394 | targ_extra_ofiles="deffilep.o pe-dll.o" ;;
|
---|
395 | mips*-dec-ultrix*) targ_emul=mipslit ;;
|
---|
396 | mips*-dec-osf*) targ_emul=mipslit ;;
|
---|
397 | mips*-sgi-irix5*) targ_emul=elf32bsmip ;;
|
---|
398 | mips*-sgi-irix6*) targ_emul=elf32bmipn32
|
---|
399 | targ_extra_emuls="elf32bsmip elf64bmip"
|
---|
400 | targ_extra_libpath=$targ_extra_emuls
|
---|
401 | ;;
|
---|
402 | mips*-sgi-irix*) targ_emul=mipsbig ;;
|
---|
403 | mips*el-*-ecoff*) targ_emul=mipsidtl ;;
|
---|
404 | mips*-*-ecoff*) targ_emul=mipsidt ;;
|
---|
405 | mips*-dec-bsd*) targ_emul=mipsbsd ;;
|
---|
406 | mips*el-*-netbsd*) targ_emul=elf32lmip
|
---|
407 | targ_extra_emuls="elf32bmip"
|
---|
408 | ;;
|
---|
409 | mips*-*-netbsd*) targ_emul=elf32bmip
|
---|
410 | targ_extra_emuls="elf32lmip"
|
---|
411 | ;;
|
---|
412 | mips*-*-bsd*) targ_emul=mipsbig ;;
|
---|
413 | mips*vr4300el-*-elf*) targ_emul=elf32l4300 ;;
|
---|
414 | mips*vr4300-*-elf*) targ_emul=elf32b4300 ;;
|
---|
415 | mips*vr4100el-*-elf*) targ_emul=elf32l4300 ;;
|
---|
416 | mips*vr4100-*-elf*) targ_emul=elf32b4300 ;;
|
---|
417 | mips*vr5000el-*-elf*) targ_emul=elf32l4300 ;;
|
---|
418 | mips*vr5000-*-elf*) targ_emul=elf32b4300 ;;
|
---|
419 | mips*el-*-elf*) targ_emul=elf32elmip ;;
|
---|
420 | mips*-*-elf*) targ_emul=elf32ebmip ;;
|
---|
421 | mips*el-*-rtems*) targ_emul=elf32elmip ;;
|
---|
422 | mips*-*-rtems*) targ_emul=elf32ebmip ;;
|
---|
423 | mips*el-*-vxworks*) targ_emul=elf32elmip ;;
|
---|
424 | mips*-*-vxworks*) targ_emul=elf32ebmip ;;
|
---|
425 | mips64*el-*-linux-gnu*) targ_emul=elf32ltsmipn32
|
---|
426 | targ_extra_emuls="elf32btsmipn32 elf32ltsmip elf32btsmip elf64ltsmip elf64btsmip"
|
---|
427 | ;;
|
---|
428 | mips64*-*-linux-gnu*) targ_emul=elf32btsmipn32
|
---|
429 | targ_extra_emuls="elf32ltsmipn32 elf32btsmip elf32ltsmip elf64btsmip elf64ltsmip"
|
---|
430 | ;;
|
---|
431 | mips*el-*-linux-gnu*) targ_emul=elf32ltsmip
|
---|
432 | targ_extra_emuls="elf32btsmip elf32ltsmipn32 elf64ltsmip elf32btsmipn32 elf64btsmip"
|
---|
433 | ;;
|
---|
434 | mips*-*-linux-gnu*) targ_emul=elf32btsmip
|
---|
435 | targ_extra_emuls="elf32ltsmip elf32btsmipn32 elf64btsmip elf32ltsmipn32 elf64ltsmip"
|
---|
436 | ;;
|
---|
437 | mips*-*-lnews*) targ_emul=mipslnews ;;
|
---|
438 | mips*-*-sysv4*) targ_emul=elf32btsmip ;;
|
---|
439 | mmix-*-*) targ_emul=mmo
|
---|
440 | targ_extra_emuls=elf64mmix
|
---|
441 | ;;
|
---|
442 | mn10200-*-*) targ_emul=mn10200 ;;
|
---|
443 | mn10300-*-*) targ_emul=mn10300 ;;
|
---|
444 | msp430-*-*) targ_emul=msp430x149
|
---|
445 | targ_extra_emuls="msp430x148 msp430x147 msp430x133 msp430x135 msp430x110 msp430x112 msp430x122 msp430x123 msp430x412 msp430x413 msp430x311 msp430x312 msp430x313 msp430x314 msp430x315 msp430x323 msp430x325 msp430x336 msp430x337 msp430x1101 msp430x1111 msp430x1121 msp430x1331 msp430x1351 msp430x435 msp430x436 msp430x437 msp430x447 msp430x448 msp430x449 msp430x1222 msp430x1232 msp430x169 msp430x168 msp430x167 msp430x155 msp430x156 msp430x157 msp430x1122 msp430x1132" ;;
|
---|
446 | alpha*-*-freebsd*) targ_emul=elf64alpha_fbsd
|
---|
447 | targ_extra_emuls="elf64alpha alpha"
|
---|
448 | tdir_alpha=`echo ${targ_alias} | sed -e 's/freebsd/freebsdecoff/'`
|
---|
449 | ;;
|
---|
450 | alpha*-*-linuxecoff*) targ_emul=alpha targ_extra_emuls=elf64alpha
|
---|
451 | tdir_elf64alpha=`echo ${targ_alias} | sed -e 's/ecoff//'`
|
---|
452 | ;;
|
---|
453 | alpha*-*-linux-gnu*) targ_emul=elf64alpha targ_extra_emuls=alpha
|
---|
454 | tdir_alpha=`echo ${targ_alias} | sed -e 's/linux/linuxecoff/'`
|
---|
455 | ;;
|
---|
456 | alpha*-*-osf*) targ_emul=alpha ;;
|
---|
457 | alpha*-*-gnu*) targ_emul=elf64alpha ;;
|
---|
458 | alpha*-*-netware*) targ_emul=alpha ;;
|
---|
459 | alpha*-*-netbsd*) targ_emul=elf64alpha_nbsd ;;
|
---|
460 | alpha*-*-openbsd*) targ_emul=elf64alpha ;;
|
---|
461 | z8k-*-coff) targ_emul=z8002; targ_extra_emuls=z8001 ;;
|
---|
462 | ns32k-pc532-mach* | ns32k-pc532-ux*) targ_emul=pc532macha ;;
|
---|
463 | ns32k-*-netbsd* | ns32k-pc532-lites*) targ_emul=ns32knbsd ;;
|
---|
464 | openrisc-*-*) targ_emul=elf32openrisc ;;
|
---|
465 | or32-*-coff) targ_emul=or32 ;;
|
---|
466 | or32-*-elf) targ_emul=or32elf ;;
|
---|
467 | or32-*-rtems) targ_emul=or32 ;;
|
---|
468 | pdp11-*-*) targ_emul=pdp11 ;;
|
---|
469 | pjl*-*-*) targ_emul=pjlelf ; targ_extra_emuls="elf_i386" ;;
|
---|
470 | pj*-*-*) targ_emul=pjelf ;;
|
---|
471 | powerpc-*-freebsd*) targ_emul=elf32ppc_fbsd;
|
---|
472 | targ_extra_emuls="elf32ppc elf32ppcsim";
|
---|
473 | targ_extra_libpath=elf32ppc;
|
---|
474 | tdir_elf32ppcsim=`echo ${targ_alias} | sed -e 's/ppc/ppcsim/'`
|
---|
475 | ;;
|
---|
476 | powerpc*-*-linux*)
|
---|
477 | case "${targ}" in
|
---|
478 | *64*) targ_emul=elf64ppc
|
---|
479 | targ_extra_emuls="elf32ppclinux elf32ppc elf32ppcsim"
|
---|
480 | targ_extra_libpath="elf32ppclinux elf32ppc"
|
---|
481 | tdir_elf32ppc=`echo "${targ_alias}" | sed -e 's/64//'`
|
---|
482 | tdir_elf32ppclinux=$tdir_elf32ppc
|
---|
483 | tdir_elf32ppcsim=$tdir_elf32ppc ;;
|
---|
484 | *) targ_emul=elf32ppclinux
|
---|
485 | targ_extra_emuls="elf32ppc elf32ppcsim"
|
---|
486 | targ_extra_libpath=elf32ppc
|
---|
487 | if test "${want64}" = "true"; then
|
---|
488 | targ_extra_emuls="$targ_extra_emuls elf64ppc"
|
---|
489 | targ_extra_libpath="$targ_extra_libpath elf64ppc"
|
---|
490 | fi
|
---|
491 | ;;
|
---|
492 | esac ;;
|
---|
493 | powerpc*le-*-elf* | powerpc*le-*-eabi* | powerpc*le-*-solaris* \
|
---|
494 | | powerpc*le-*-sysv* | powerpc*le-*-vxworks*)
|
---|
495 | case "${targ}" in
|
---|
496 | *64*) targ_emul=elf64lppc
|
---|
497 | targ_extra_emuls="elf32lppc elf32lppcsim"
|
---|
498 | tdir_elf32lppc=`echo "${targ_alias}" | sed -e 's/64//'`
|
---|
499 | tdir_elf32lppcsim=$tdir_elf32lppc ;;
|
---|
500 | *) targ_emul=elf32lppc
|
---|
501 | targ_extra_emuls="elf32ppcsim" ;;
|
---|
502 | esac ;;
|
---|
503 | powerpc*-*-elf* | powerpc*-*-eabi* | powerpc*-*-sysv* \
|
---|
504 | | powerpc*-*-netbsd* | powerpc-*-openbsd* | powerpc*-*-vxworks* | powerpc*-*-kaos*)
|
---|
505 | case "${targ}" in
|
---|
506 | *64*) targ_emul=elf64ppc
|
---|
507 | targ_extra_emuls="elf32ppc elf32ppclinux elf32ppcsim"
|
---|
508 | tdir_elf32ppc=`echo "${targ_alias}" | sed -e 's/64//'`
|
---|
509 | tdir_elf32ppclinux=$tdir_elf32ppc
|
---|
510 | tdir_elf32ppcsim=$tdir_elf32ppc ;;
|
---|
511 | *) targ_emul=elf32ppc
|
---|
512 | targ_extra_emuls="elf32ppclinux elf32ppcsim" ;;
|
---|
513 | esac ;;
|
---|
514 | powerpc-*-nto*) targ_emul=elf32ppcnto ;;
|
---|
515 | powerpcle-*-nto*) targ_emul=elf32lppcnto ;;
|
---|
516 | powerpcle-*-rtems*) targ_emul=elf32leppc ;;
|
---|
517 | powerpc-*-rtems*) targ_emul=elf32ppc ;;
|
---|
518 | powerpc-*-macos*) targ_emul=ppcmacos ;;
|
---|
519 | powerpc-*-netware*) targ_emul=ppcnw ;;
|
---|
520 | powerpcle-*-pe) targ_emul=ppcpe ;;
|
---|
521 | powerpcle-*-winnt*) targ_emul=ppcpe ;;
|
---|
522 | powerpcle-*-cygwin*) targ_emul=ppcpe ;;
|
---|
523 | powerpc-*-aix5*) targ_emul=aix5ppc ;;
|
---|
524 | powerpc-*-aix*) targ_emul=aixppc ;;
|
---|
525 | powerpc-*-beos*) targ_emul=aixppc ;;
|
---|
526 | powerpc-*-windiss*) targ_emul=elf32ppcwindiss ;;
|
---|
527 | rs6000-*-aix5*) targ_emul=aix5rs6 ;;
|
---|
528 | rs6000-*-aix*) targ_emul=aixrs6 ;;
|
---|
529 | tic30-*-*aout*) targ_emul=tic30aout ;;
|
---|
530 | tic30-*-*coff*) targ_emul=tic30coff ;;
|
---|
531 | tic4x-*-* | c4x-*-*) targ_emul=tic4xcoff ; targ_extra_emuls="tic3xcoff tic3xcoff_onchip" ;;
|
---|
532 | tic54x-*-* | c54x*-*-*) targ_emul=tic54xcoff ;;
|
---|
533 | tic80-*-*) targ_emul=tic80coff ;;
|
---|
534 | v850-*-*) targ_emul=v850 ;;
|
---|
535 | v850e-*-*) targ_emul=v850 ;;
|
---|
536 | v850ea-*-*) targ_emul=v850 ;;
|
---|
537 | iq2000-*-elf) targ_emul=elf32iq2000 ; targ_extra_emuls="elf32iq10" ;;
|
---|
538 | frv-*-*) targ_emul=elf32frv ;;
|
---|
539 | w65-*-*) targ_emul=w65 ;;
|
---|
540 | xstormy16-*-*) targ_emul=elf32xstormy16 ;;
|
---|
541 | xtensa-*-*) targ_emul=elf32xtensa;;
|
---|
542 | fr30-*-*) targ_emul=elf32fr30 ;;
|
---|
543 | mcore-*-pe) targ_emul=mcorepe ;
|
---|
544 | targ_extra_ofiles="deffilep.o pe-dll.o" ;;
|
---|
545 | mcore-*-elf) targ_emul=elf32mcore ;;
|
---|
546 | s390x-*-linux*) targ_emul=elf64_s390
|
---|
547 | targ_extra_emuls=elf_s390
|
---|
548 | targ_extra_libpath=$targ_extra_emuls
|
---|
549 | tdir_elf_s390=`echo ${targ_alias} | sed -e 's/s390x/s390/'` ;;
|
---|
550 | s390-*-linux*) targ_emul=elf_s390
|
---|
551 | if test "${want64}" = "true"; then
|
---|
552 | targ_extra_emuls=elf64_s390
|
---|
553 | targ_extra_libpath=$targ_extra_emuls
|
---|
554 | tdir_elf64_s390=`echo ${targ_alias} | sed -e 's/s390/s390x/'`
|
---|
555 | fi ;;
|
---|
556 | *-*-ieee*) targ_emul=vanilla ;;
|
---|
557 | ip2k-*-elf) targ_emul=elf32ip2k ;;
|
---|
558 |
|
---|
559 | *)
|
---|
560 | echo 2>&1 "*** ld does not support target ${targ}"
|
---|
561 | echo 2>&1 "*** see ld/configure.tgt for supported targets"
|
---|
562 | exit 1
|
---|
563 |
|
---|
564 | esac
|
---|
565 |
|
---|
566 | NATIVE_LIB_DIRS='/usr/local/lib /lib /usr/lib'
|
---|
567 | case "${target}" in
|
---|
568 |
|
---|
569 | *-*-freebsd*)
|
---|
570 | NATIVE_LIB_DIRS='/lib /usr/lib /usr/local/lib'
|
---|
571 | ;;
|
---|
572 |
|
---|
573 | hppa*64*-*-hpux11*)
|
---|
574 | NATIVE_LIB_DIRS=/usr/lib/pa20_64
|
---|
575 | ;;
|
---|
576 |
|
---|
577 | i[3456]86-*-sysv4*)
|
---|
578 | NATIVE_LIB_DIRS='/usr/local/lib /usr/ccs/lib /lib /usr/lib'
|
---|
579 | ;;
|
---|
580 |
|
---|
581 | i[3456]86-*-solaris*)
|
---|
582 | NATIVE_LIB_DIRS='/usr/local/lib /usr/ccs/lib /lib /usr/lib'
|
---|
583 | ;;
|
---|
584 |
|
---|
585 | i[3456]86-pc-interix*)
|
---|
586 | NATIVE_LIB_DIRS='/usr/local/lib $$INTERIX_ROOT/usr/lib /lib /usr/lib'
|
---|
587 | ;;
|
---|
588 |
|
---|
589 | ia64-*-aix*)
|
---|
590 | NATIVE_LIB_DIRS='/usr/local/lib /usr/lib/ia64l64 /lib /usr/lib'
|
---|
591 | ;;
|
---|
592 |
|
---|
593 | sparc*-*-solaris2*)
|
---|
594 | NATIVE_LIB_DIRS='/usr/local/lib /usr/ccs/lib /lib /usr/lib'
|
---|
595 | ;;
|
---|
596 |
|
---|
597 | i[03-9x]86-*-cygwin*)
|
---|
598 | NATIVE_LIB_DIRS='/usr/lib /usr/lib/w32api'
|
---|
599 | ;;
|
---|
600 |
|
---|
601 | *-*-linux*)
|
---|
602 | ;;
|
---|
603 |
|
---|
604 | *-*-freebsd*)
|
---|
605 | ;;
|
---|
606 |
|
---|
607 | *-*-netbsd*)
|
---|
608 | ;;
|
---|
609 |
|
---|
610 | alpha*-*-*)
|
---|
611 | NATIVE_LIB_DIRS='/usr/local/lib /usr/ccs/lib /lib /usr/lib'
|
---|
612 | ;;
|
---|
613 |
|
---|
614 | esac
|
---|