Rev 8 | Go to most recent revision | Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
1 | pmbaty | 1 | # config.bfd |
2 | # |
||
3 | # Copyright (C) 2012-2023 Free Software Foundation, Inc. |
||
4 | # |
||
5 | # This file is free software; you can redistribute it and/or modify |
||
6 | # it under the terms of the GNU General Public License as published by |
||
7 | # the Free Software Foundation; either version 3 of the License, or |
||
8 | # (at your option) any later version. |
||
9 | # |
||
10 | # This program is distributed in the hope that it will be useful, |
||
11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of |
||
12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||
13 | # GNU General Public License for more details. |
||
14 | # |
||
15 | # You should have received a copy of the GNU General Public License |
||
16 | # along with this program; see the file COPYING3. If not see |
||
17 | # <http://www.gnu.org/licenses/>. |
||
18 | # |
||
19 | # Convert a canonical host type into a BFD host type. |
||
20 | # Set shell variable targ to canonical target name, and run |
||
21 | # using ``. config.bfd''. |
||
22 | # Sets the following shell variables: |
||
23 | # targ_defvec Default vector for this target |
||
24 | # targ_selvecs Vectors to build for this target |
||
25 | # targ64_selvecs Vectors to build if --enable-64-bit-bfd is given |
||
26 | # or if host is 64 bit. |
||
27 | # targ_archs Architectures for this target |
||
28 | # targ_cflags $(CFLAGS) for this target (FIXME: pretty bogus) |
||
29 | # targ_underscore Whether underscores are used: yes or no |
||
30 | |||
31 | # Part of this file is processed by targmatch.sed to generate the |
||
32 | # targmatch.h file. The #ifdef and #endif lines that appear below are |
||
33 | # copied directly into targmatch.h. |
||
34 | |||
35 | # The binutils c++filt program wants to know whether underscores are |
||
36 | # stripped or not. That is why we set targ_underscore. c++filt uses |
||
37 | # this information to choose a default. This information is |
||
38 | # duplicated in the symbol_leading_char field of the BFD target |
||
39 | # vector, but c++filt does not deal with object files and is not |
||
40 | # linked against libbfd.a. It is not terribly important that c++filt |
||
41 | # get this right; it is just convenient. |
||
42 | |||
43 | targ_defvec= |
||
44 | targ_selvecs= |
||
45 | targ64_selvecs= |
||
46 | targ_cflags= |
||
47 | targ_underscore=no |
||
48 | |||
49 | # Catch obsolete configurations. |
||
50 | case $targ in |
||
51 | *-*-beos* | \ |
||
52 | null) |
||
53 | if test "x$enable_obsolete" != xyes; then |
||
54 | echo "*** Configuration $targ is obsolete." >&2 |
||
55 | echo "*** Specify --enable-obsolete to build it anyway." >&2 |
||
56 | echo "*** Support will be REMOVED in the next major release of BINUTILS," >&2 |
||
57 | echo "*** unless a maintainer comes forward." >&2 |
||
58 | exit 1 |
||
59 | fi;; |
||
60 | esac |
||
61 | |||
62 | # Warn on changed defaulting |
||
63 | case $targ in |
||
64 | *-*-netbsdelf* | *-*-netbsdaout* | *-*-netbsdpe*) |
||
65 | # Explicit, no defaulting |
||
66 | ;; |
||
67 | ns32k-*-netbsd*) |
||
68 | # The obsolete warning below is enough, and ns32k does not have ELF support |
||
69 | ;; |
||
70 | *-*-netbsd* ) |
||
71 | targ_migrated=`echo "$targ" | sed 's/netbsd/netbsdaout/'` |
||
72 | echo "*** WARNING: $targ is now defaults to meaning ELF not a.out." >&2 |
||
73 | echo "*** Use $targ_migrated instead to explicitly specify a.out." >&2 |
||
74 | ;; |
||
75 | esac |
||
76 | |||
77 | case $targ in |
||
78 | mips*-*-irix5* | mips*-*-irix6*) |
||
79 | # Not obsolete |
||
80 | ;; |
||
81 | *-adobe-* | \ |
||
82 | *-go32-rtems* | \ |
||
83 | *-sony-* | \ |
||
84 | *-tandem-* | \ |
||
85 | *-*-ieee* | \ |
||
86 | *-*-netbsdpe* | \ |
||
87 | *-*-netware* | \ |
||
88 | *-*-rtemsaout* | \ |
||
89 | *-*-rtemscoff* | \ |
||
90 | a29k-* | \ |
||
91 | arm*-*-aout | \ |
||
92 | arm-*-coff | \ |
||
93 | arm*-*-netbsdaout* | \ |
||
94 | arm-*-oabi | \ |
||
95 | arm-*-riscix* | \ |
||
96 | arm*-*-symbianelf* | \ |
||
97 | arm-epoc-pe* | \ |
||
98 | c30-*-*aout* | tic30-*-*aout* | \ |
||
99 | cr16c-*-* | \ |
||
100 | h8300*-*-coff | \ |
||
101 | h8500*-*-coff | \ |
||
102 | hppa*-*-rtems* | \ |
||
103 | i[3-7]86-*-unixware* | \ |
||
104 | i[3-7]86-*-dgux* | \ |
||
105 | i[3-7]86-*-chorus* | \ |
||
106 | i[3-7]86-*-sysv* | \ |
||
107 | i[3-7]86-*-isc* | \ |
||
108 | i[3-7]86-*-sco* | \ |
||
109 | i[3-7]86-*-coff | \ |
||
110 | i[3-7]86-*-aix* | \ |
||
111 | i[3-7]86-sequent-bsd* | \ |
||
112 | i[3-7]86-*-freebsdaout* | i[3-7]86-*-freebsd[12].* | i[3-7]86-*-freebsd[12] | \ |
||
113 | i[3-7]86-*-netbsdaout* | \ |
||
114 | i[3-7]86-*-openbsd[0-2].* | i[3-7]86-*-openbsd3.[0-3] | \ |
||
115 | i[3-7]86-*-linux*aout* | \ |
||
116 | i[3-7]86-*-mach* | i[3-7]86-*-osf1mk* | \ |
||
117 | i[3-7]86-*-os9k | \ |
||
118 | i[3-7]86-none-* | \ |
||
119 | i[3-7]86-*-aout* | i[3-7]86*-*-vsta* | \ |
||
120 | i370-* | \ |
||
121 | i860-*-* | \ |
||
122 | i960-*-* | \ |
||
123 | m68*-*-bsd* | \ |
||
124 | m68*-*-aout* | \ |
||
125 | m68*-*-coff* | \ |
||
126 | m68*-*-hpux* | \ |
||
127 | m68*-*-linux*aout* | \ |
||
128 | m68*-*-lynxos* | \ |
||
129 | m68*-*-openbsd* | \ |
||
130 | m68*-*-os68k* | \ |
||
131 | m68*-*-psos* | \ |
||
132 | m68*-*-sunos* | \ |
||
133 | m68*-*-sysv* | \ |
||
134 | m68*-*-vsta* | \ |
||
135 | m68*-*-vxworks* | \ |
||
136 | m68*-apollo-* | \ |
||
137 | m68*-apple-aux* | \ |
||
138 | m68*-ericsson-* | \ |
||
139 | m68*-netx-* | \ |
||
140 | m88*-*-* | \ |
||
141 | maxq-*-coff | \ |
||
142 | mips*-*-bsd* | \ |
||
143 | mips*-*-ecoff* | \ |
||
144 | mips*-*-lnews* | \ |
||
145 | mips*-*-mach3* | \ |
||
146 | mips*-*-pe* | \ |
||
147 | mips*-*-riscos* | \ |
||
148 | mips*-*-sysv* | \ |
||
149 | mips*-big-* | \ |
||
150 | mips*-dec-* | \ |
||
151 | mips*-sgi-* | \ |
||
152 | mips*el-*-rtems* | \ |
||
153 | m32c-*-rtems* | \ |
||
154 | ns32k-*-netbsd* | \ |
||
155 | openrisc-*-* | \ |
||
156 | or32-*-* | \ |
||
157 | powerpc-*-lynxos* | powerpc-*-windiss* | \ |
||
158 | powerpcle-*-pe | powerpcle-*-winnt* | powerpcle-*-cygwin* | \ |
||
159 | sh*-*-netbsdaout* | \ |
||
160 | sh*-*-symbianelf* | sh5*-*-* | sh64*-*-* | \ |
||
161 | sparc*-*-*aout* | \ |
||
162 | sparc*-*-chorus* | \ |
||
163 | sparc*-*-coff* | \ |
||
164 | sparc-*-lynxos* | \ |
||
165 | sparc-*-openbsd[0-2].* | sparc-*-openbsd3.[0-1] | \ |
||
166 | tahoe-*-* | \ |
||
167 | vax-*-bsd* | vax-*-ultrix* | vax-*-vms* | \ |
||
168 | w65-*-* | \ |
||
169 | we32k-*-* | \ |
||
170 | xc16x-*-* | \ |
||
171 | null) |
||
172 | echo "*** Configuration $targ is now obsolete" >&2 |
||
173 | echo "*** and so support for it has been REMOVED." >&2 |
||
174 | exit 1 |
||
175 | ;; |
||
176 | esac |
||
177 | |||
178 | targ_cpu=`echo $targ | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` |
||
179 | case "${targ_cpu}" in |
||
180 | aarch64*) targ_archs="bfd_aarch64_arch bfd_arm_arch";; |
||
181 | alpha*) targ_archs=bfd_alpha_arch ;; |
||
182 | am33_2.0*) targ_archs=bfd_mn10300_arch ;; |
||
183 | arc*) targ_archs=bfd_arc_arch ;; |
||
184 | arm*) targ_archs=bfd_arm_arch ;; |
||
185 | amdgcn*) targ_archs=bfd_amdgcn_arch ;; |
||
186 | bfin*) targ_archs=bfd_bfin_arch ;; |
||
187 | c30*) targ_archs=bfd_tic30_arch ;; |
||
188 | c4x*) targ_archs=bfd_tic4x_arch ;; |
||
189 | c54x*) targ_archs=bfd_tic54x_arch ;; |
||
190 | cr16*) targ_archs=bfd_cr16_arch ;; |
||
191 | crisv32) targ_archs=bfd_cris_arch ;; |
||
192 | crx*) targ_archs=bfd_crx_arch ;; |
||
193 | csky*) targ_archs=bfd_csky_arch ;; |
||
194 | dlx*) targ_archs=bfd_dlx_arch ;; |
||
195 | fido*) targ_archs=bfd_m68k_arch ;; |
||
196 | hppa*) targ_archs=bfd_hppa_arch ;; |
||
197 | i[3-7]86) targ_archs=bfd_i386_arch ;; |
||
198 | ia16) targ_archs=bfd_i386_arch ;; |
||
199 | loongarch*) targ_archs=bfd_loongarch_arch ;; |
||
200 | m6811*|m68hc11*) targ_archs="bfd_m68hc11_arch bfd_m68hc12_arch bfd_m9s12x_arch bfd_m9s12xg_arch" ;; |
||
201 | m6812*|m68hc12*) targ_archs="bfd_m68hc12_arch bfd_m68hc11_arch bfd_m9s12x_arch bfd_m9s12xg_arch" ;; |
||
202 | m68*) targ_archs=bfd_m68k_arch ;; |
||
203 | microblaze*) targ_archs=bfd_microblaze_arch ;; |
||
204 | mips*) targ_archs=bfd_mips_arch ;; |
||
205 | nds32*) targ_archs=bfd_nds32_arch ;; |
||
206 | nios2*) targ_archs=bfd_nios2_arch ;; |
||
207 | or1k*|or1knd*) targ_archs=bfd_or1k_arch ;; |
||
208 | pdp11*) targ_archs=bfd_pdp11_arch ;; |
||
209 | pj*) targ_archs="bfd_pj_arch bfd_i386_arch";; |
||
210 | powerpc*) targ_archs="bfd_rs6000_arch bfd_powerpc_arch" ;; |
||
211 | pru*) targ_archs=bfd_pru_arch ;; |
||
212 | riscv*) targ_archs=bfd_riscv_arch ;; |
||
213 | rs6000) targ_archs="bfd_rs6000_arch bfd_powerpc_arch" ;; |
||
214 | s12z*) targ_archs=bfd_s12z_arch ;; |
||
215 | s390*) targ_archs=bfd_s390_arch ;; |
||
216 | sh*) targ_archs=bfd_sh_arch ;; |
||
217 | sparc*) targ_archs=bfd_sparc_arch ;; |
||
218 | spu*) targ_archs=bfd_spu_arch ;; |
||
219 | tilegx*) targ_archs=bfd_tilegx_arch ;; |
||
220 | tilepro*) targ_archs=bfd_tilepro_arch ;; |
||
221 | v850*) targ_archs="bfd_v850_arch bfd_v850_rh850_arch" ;; |
||
222 | visium*) targ_archs=bfd_visium_arch ;; |
||
223 | x86_64*) targ_archs=bfd_i386_arch ;; |
||
224 | xtensa*) targ_archs=bfd_xtensa_arch ;; |
||
225 | z80*|r800|z180|gbz80|ez80*) targ_archs=bfd_z80_arch ;; |
||
226 | z8k*) targ_archs=bfd_z8k_arch ;; |
||
227 | *) targ_archs=bfd_${targ_cpu}_arch ;; |
||
228 | esac |
||
229 | |||
230 | |||
231 | # WHEN ADDING ENTRIES TO THIS MATRIX: |
||
232 | # Make sure that the left side always has two dashes. Otherwise you |
||
233 | # can get spurious matches. Even for unambiguous cases, do this as a |
||
234 | # convention, else the table becomes a real mess to understand and maintain. |
||
235 | |||
236 | case "${targ}" in |
||
237 | # START OF targmatch.h |
||
238 | #ifdef BFD64 |
||
239 | aarch64-*-darwin*) |
||
240 | targ_defvec=aarch64_mach_o_vec |
||
241 | targ_selvecs="arm_mach_o_vec mach_o_le_vec mach_o_be_vec mach_o_fat_vec" |
||
242 | targ_archs="$targ_archs bfd_i386_arch bfd_powerpc_arch bfd_rs6000_arch" |
||
243 | want64=true |
||
244 | ;; |
||
245 | aarch64-*-elf | aarch64-*-rtems* | aarch64-*-genode*) |
||
246 | targ_defvec=aarch64_elf64_le_vec |
||
247 | targ_selvecs="aarch64_elf64_be_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_le_vec arm_elf32_be_vec aarch64_pei_le_vec aarch64_pe_le_vec" |
||
248 | want64=true |
||
249 | ;; |
||
250 | # Pierre-Marie Baty -- added aarch64 QNX case |
||
251 | aarch64-*-nto-qnx*) |
||
252 | targ_defvec=aarch64_elf64_le_vec |
||
253 | targ_selvecs="aarch64_elf64_be_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_le_vec arm_elf32_be_vec aarch64_pei_le_vec aarch64_pe_le_vec" |
||
254 | want64=true |
||
255 | ;; |
||
256 | aarch64-*-pe* | aarch64-*-mingw*) |
||
257 | targ_defvec=aarch64_pe_le_vec |
||
258 | targ_selvecs="aarch64_pe_le_vec aarch64_pei_le_vec aarch64_elf64_le_vec aarch64_elf64_be_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_le_vec arm_elf32_be_vec pdb_vec" |
||
259 | want64=true |
||
260 | targ_underscore=no |
||
261 | ;; |
||
262 | aarch64_be-*-elf) |
||
263 | targ_defvec=aarch64_elf64_be_vec |
||
264 | targ_selvecs="aarch64_elf64_le_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_be_vec arm_elf32_le_vec" |
||
265 | want64=true |
||
266 | ;; |
||
267 | aarch64-*-freebsd*) |
||
268 | targ_defvec=aarch64_elf64_le_vec |
||
269 | targ_selvecs="aarch64_elf64_be_vec arm_elf32_le_vec arm_elf32_be_vec" |
||
270 | want64=true |
||
271 | ;; |
||
272 | aarch64-*-openbsd*) |
||
273 | targ_defvec=aarch64_elf64_le_vec |
||
274 | targ_selvecs="aarch64_elf64_be_vec arm_elf32_le_vec arm_elf32_be_vec" |
||
275 | want64=true |
||
276 | ;; |
||
277 | aarch64-*-fuchsia*) |
||
278 | targ_defvec=aarch64_elf64_le_vec |
||
279 | targ_selvecs="aarch64_elf64_be_vec arm_elf32_le_vec arm_elf32_be_vec" |
||
280 | want64=true |
||
281 | ;; |
||
282 | aarch64-*-cloudabi*) |
||
283 | targ_defvec=aarch64_elf64_le_cloudabi_vec |
||
284 | targ_selvecs=aarch64_elf64_be_cloudabi_vec |
||
285 | want64=true |
||
286 | ;; |
||
287 | aarch64-*-haiku*) |
||
288 | targ_defvec=aarch64_elf64_le_vec |
||
289 | targ_selvecs="aarch64_elf64_be_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_le_vec arm_elf32_be_vec" |
||
290 | want64=true |
||
291 | ;; |
||
292 | aarch64-*-linux* | aarch64-*-netbsd* | aarch64-*-nto*) |
||
293 | targ_defvec=aarch64_elf64_le_vec |
||
294 | targ_selvecs="aarch64_elf64_be_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_le_vec arm_elf32_be_vec aarch64_pei_le_vec aarch64_pe_le_vec" |
||
295 | want64=true |
||
296 | ;; |
||
297 | aarch64_be-*-linux* | aarch64_be-*-netbsd*) |
||
298 | targ_defvec=aarch64_elf64_be_vec |
||
299 | targ_selvecs="aarch64_elf64_le_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_be_vec arm_elf32_le_vec" |
||
300 | want64=true |
||
301 | ;; |
||
302 | alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu) |
||
303 | targ_defvec=alpha_elf64_fbsd_vec |
||
304 | targ_selvecs="alpha_elf64_vec alpha_ecoff_le_vec" |
||
305 | want64=true |
||
306 | # FreeBSD <= 4.0 supports only the old nonstandard way of ABI labelling. |
||
307 | case "${targ}" in |
||
308 | alpha*-*-freebsd3* | alpha*-*-freebsd4 | alpha*-*-freebsd4.0*) |
||
309 | targ_cflags=-DOLD_FREEBSD_ABI_LABEL ;; |
||
310 | esac |
||
311 | ;; |
||
312 | alpha*-*-netbsd* | alpha*-*-openbsd*) |
||
313 | targ_defvec=alpha_elf64_vec |
||
314 | targ_selvecs=alpha_ecoff_le_vec |
||
315 | want64=true |
||
316 | ;; |
||
317 | alpha*-*-linux*ecoff*) |
||
318 | targ_defvec=alpha_ecoff_le_vec |
||
319 | targ_selvecs=alpha_elf64_vec |
||
320 | want64=true |
||
321 | ;; |
||
322 | alpha*-*-linux-* | alpha*-*-elf*) |
||
323 | targ_defvec=alpha_elf64_vec |
||
324 | targ_selvecs=alpha_ecoff_le_vec |
||
325 | want64=true |
||
326 | ;; |
||
327 | alpha*-*-*vms*) |
||
328 | targ_defvec=alpha_vms_vec |
||
329 | targ_selvecs=alpha_vms_lib_txt_vec |
||
330 | want64=true |
||
331 | ;; |
||
332 | alpha*-*-*) |
||
333 | targ_defvec=alpha_ecoff_le_vec |
||
334 | want64=true |
||
335 | ;; |
||
336 | amdgcn-*-*) |
||
337 | targ_defvec=amdgcn_elf64_le_vec |
||
338 | want64=true |
||
339 | ;; |
||
340 | ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu) |
||
341 | targ_defvec=ia64_elf64_le_vec |
||
342 | targ_selvecs="ia64_elf64_be_vec ia64_pei_vec" |
||
343 | want64=true |
||
344 | ;; |
||
345 | ia64*-*-hpux*) |
||
346 | targ_defvec=ia64_elf32_hpux_be_vec |
||
347 | targ_selvecs="ia64_elf64_hpux_be_vec" |
||
348 | want64=true |
||
349 | ;; |
||
350 | ia64*-*-*vms*) |
||
351 | targ_defvec=ia64_elf64_vms_vec |
||
352 | targ_selvecs=alpha_vms_lib_txt_vec |
||
353 | want64=true |
||
354 | ;; |
||
355 | #endif /* BFD64 */ |
||
356 | |||
357 | am33_2.0-*-linux*) |
||
358 | targ_defvec=am33_elf32_linux_vec |
||
359 | ;; |
||
360 | |||
361 | arc*eb-*-elf* | arc*eb-*-linux*) |
||
362 | targ_defvec=arc_elf32_be_vec |
||
363 | targ_selvecs=arc_elf32_le_vec |
||
364 | ;; |
||
365 | |||
366 | arc*-*-elf* | arc*-*-linux*) |
||
367 | targ_defvec=arc_elf32_le_vec |
||
368 | targ_selvecs=arc_elf32_be_vec |
||
369 | ;; |
||
370 | |||
371 | arm-*-darwin*) |
||
372 | targ_defvec=arm_mach_o_vec |
||
373 | targ_selvecs="mach_o_le_vec mach_o_be_vec mach_o_fat_vec" |
||
374 | targ_archs="$targ_archs bfd_i386_arch bfd_powerpc_arch bfd_rs6000_arch" |
||
375 | ;; |
||
376 | arm-*-fuchsia*) |
||
377 | targ_defvec=arm_elf32_le_vec |
||
378 | targ_selvecs="arm_elf32_be_vec" |
||
379 | ;; |
||
380 | arm*-*-haiku*) |
||
381 | targ_defvec=arm_elf32_le_vec |
||
382 | targ_selvecs="arm_elf32_fdpic_le_vec arm_elf32_be_vec arm_elf32_fdpic_be_vec arm_pe_le_vec arm_pe_be_vec arm_pei_le_vec arm_pei_be_vec" |
||
383 | ;; |
||
384 | arm-*-nacl*) |
||
385 | targ_defvec=arm_elf32_nacl_le_vec |
||
386 | targ_selvecs="arm_elf32_nacl_be_vec" |
||
387 | ;; |
||
388 | armeb-*-nacl*) |
||
389 | targ_defvec=arm_elf32_nacl_be_vec |
||
390 | targ_selvecs="arm_elf32_nacl_le_vec" |
||
391 | ;; |
||
392 | armeb-*-netbsd*) |
||
393 | targ_defvec=arm_elf32_be_vec |
||
394 | targ_selvecs="arm_elf32_le_vec" |
||
395 | ;; |
||
396 | arm-*-netbsd* | arm-*-openbsd*) |
||
397 | targ_defvec=arm_elf32_le_vec |
||
398 | targ_selvecs="arm_elf32_be_vec" |
||
399 | ;; |
||
400 | arm-*-nto* | nto*arm*) |
||
401 | targ_defvec=arm_elf32_le_vec |
||
402 | targ_selvecs=arm_elf32_be_vec |
||
403 | targ_cflags=-D__QNXTARGET__ |
||
404 | ;; |
||
405 | arm-wince-pe | arm-*-wince | arm*-*-mingw32ce* | arm*-*-cegcc*) |
||
406 | targ_defvec=arm_pe_wince_le_vec |
||
407 | targ_selvecs="arm_pe_wince_le_vec arm_pe_wince_be_vec arm_pei_wince_le_vec arm_pei_wince_be_vec" |
||
408 | targ_underscore=no |
||
409 | targ_cflags="-DARM_WINCE -DARM_COFF_BUGFIX" |
||
410 | ;; |
||
411 | arm-*-pe*) |
||
412 | targ_defvec=arm_pe_le_vec |
||
413 | targ_selvecs="arm_pe_le_vec arm_pe_be_vec arm_pei_le_vec arm_pei_be_vec" |
||
414 | targ_underscore=yes |
||
415 | ;; |
||
416 | arm-*-phoenix*) |
||
417 | targ_defvec=arm_elf32_le_vec |
||
418 | targ_selvecs=arm_elf32_be_vec |
||
419 | ;; |
||
420 | armeb-*-elf | arm*b-*-freebsd* | arm*b-*-linux-* | armeb-*-eabi*) |
||
421 | targ_defvec=arm_elf32_be_vec |
||
422 | targ_selvecs=arm_elf32_le_vec |
||
423 | ;; |
||
424 | arm-*-kaos*) |
||
425 | targ_defvec=arm_elf32_le_vec |
||
426 | targ_selvecs=arm_elf32_be_vec |
||
427 | ;; |
||
428 | arm-*-elf | arm*-*-freebsd* | arm*-*-linux-* | arm*-*-conix* | \ |
||
429 | arm*-*-uclinux* | arm-*-kfreebsd*-gnu | \ |
||
430 | arm*-*-eabi* | arm-*-rtems* | arm*-*-uclinuxfdpiceabi) |
||
431 | targ_defvec=arm_elf32_le_vec |
||
432 | targ_selvecs="arm_elf32_fdpic_le_vec arm_elf32_be_vec arm_elf32_fdpic_be_vec" |
||
433 | ;; |
||
434 | arm*-*-vxworks | arm*-*-windiss) |
||
435 | targ_defvec=arm_elf32_vxworks_le_vec |
||
436 | targ_selvecs=arm_elf32_vxworks_be_vec |
||
437 | ;; |
||
438 | arm9e-*-elf) |
||
439 | targ_defvec=arm_elf32_le_vec |
||
440 | targ_selvecs=arm_elf32_be_vec |
||
441 | ;; |
||
442 | |||
443 | avr-*-*) |
||
444 | targ_defvec=avr_elf32_vec |
||
445 | ;; |
||
446 | |||
447 | bfin-*-*) |
||
448 | targ_defvec=bfin_elf32_vec |
||
449 | targ_selvecs=bfin_elf32_fdpic_vec |
||
450 | targ_underscore=yes |
||
451 | ;; |
||
452 | |||
453 | c30-*-*coff* | tic30-*-*coff*) |
||
454 | targ_defvec=tic30_coff_vec |
||
455 | ;; |
||
456 | |||
457 | c4x-*-*coff* | tic4x-*-*coff*) |
||
458 | targ_defvec=tic4x_coff1_vec |
||
459 | targ_selvecs="tic4x_coff1_beh_vec tic4x_coff2_vec tic4x_coff2_beh_vec tic4x_coff0_vec tic4x_coff0_beh_vec" |
||
460 | targ_underscore=yes |
||
461 | ;; |
||
462 | |||
463 | c54x*-*-*coff* | tic54x-*-*coff*) |
||
464 | targ_defvec=tic54x_coff1_vec |
||
465 | targ_selvecs="tic54x_coff1_beh_vec tic54x_coff2_vec tic54x_coff2_beh_vec tic54x_coff0_vec tic54x_coff0_beh_vec" |
||
466 | targ_underscore=yes |
||
467 | ;; |
||
468 | |||
469 | cr16-*-elf* | cr16*-*-uclinux*) |
||
470 | targ_defvec=cr16_elf32_vec |
||
471 | targ_underscore=yes |
||
472 | ;; |
||
473 | |||
474 | cris-*-* | crisv32-*-*) |
||
475 | targ_defvec=cris_aout_vec |
||
476 | targ_selvecs="cris_elf32_us_vec cris_elf32_vec" |
||
477 | case "${targ}" in |
||
478 | *-*-linux*) ;; |
||
479 | *) targ_underscore=yes ;; |
||
480 | esac |
||
481 | want64=true |
||
482 | ;; |
||
483 | |||
484 | crx-*-elf*) |
||
485 | targ_defvec=crx_elf32_vec |
||
486 | targ_underscore=yes |
||
487 | ;; |
||
488 | |||
489 | csky-*-elf* | csky-*-linux* ) |
||
490 | targ_defvec=csky_elf32_le_vec |
||
491 | targ_selvecs="csky_elf32_be_vec csky_elf32_le_vec" |
||
492 | ;; |
||
493 | |||
494 | d10v-*-*) |
||
495 | targ_defvec=d10v_elf32_vec |
||
496 | ;; |
||
497 | |||
498 | dlx-*-elf*) |
||
499 | targ_defvec=dlx_elf32_be_vec |
||
500 | targ_selvecs="dlx_elf32_be_vec" |
||
501 | ;; |
||
502 | |||
503 | d30v-*-*) |
||
504 | targ_defvec=d30v_elf32_vec |
||
505 | ;; |
||
506 | |||
507 | #ifdef BFD64 |
||
508 | bpf-*-none) |
||
509 | targ_defvec=bpf_elf64_le_vec |
||
510 | targ_selvecs=bpf_elf64_be_vec |
||
511 | targ_underscore=yes |
||
512 | ;; |
||
513 | #endif |
||
514 | |||
515 | epiphany-*-*) |
||
516 | targ_defvec=epiphany_elf32_vec |
||
517 | targ_underscore=yes |
||
518 | ;; |
||
519 | |||
520 | fido-*-elf* ) |
||
521 | targ_defvec=m68k_elf32_vec |
||
522 | ;; |
||
523 | |||
524 | fr30-*-elf) |
||
525 | targ_defvec=fr30_elf32_vec |
||
526 | ;; |
||
527 | |||
528 | frv-*-elf) |
||
529 | targ_defvec=frv_elf32_vec |
||
530 | targ_selvecs=frv_elf32_fdpic_vec |
||
531 | ;; |
||
532 | |||
533 | frv-*-*linux*) |
||
534 | targ_defvec=frv_elf32_fdpic_vec |
||
535 | targ_selvecs=frv_elf32_vec |
||
536 | ;; |
||
537 | |||
538 | moxie-*-elf | moxie-*-rtems* | moxie-*-uclinux) |
||
539 | targ_defvec=moxie_elf32_be_vec |
||
540 | targ_selvecs=moxie_elf32_le_vec |
||
541 | ;; |
||
542 | |||
543 | moxie-*-moxiebox*) |
||
544 | targ_defvec=moxie_elf32_le_vec |
||
545 | ;; |
||
546 | |||
547 | h8300*-*-elf | h8300*-*-rtems*) |
||
548 | targ_defvec=h8300_elf32_vec |
||
549 | targ_underscore=yes |
||
550 | ;; |
||
551 | |||
552 | h8300*-*-linux*) |
||
553 | targ_defvec=h8300_elf32_linux_vec |
||
554 | ;; |
||
555 | |||
556 | #ifdef BFD64 |
||
557 | hppa*64*-*-linux-*) |
||
558 | targ_defvec=hppa_elf64_linux_vec |
||
559 | targ_selvecs=hppa_elf64_vec |
||
560 | want64=true |
||
561 | ;; |
||
562 | hppa*64*-*-hpux11*) |
||
563 | targ_defvec=hppa_elf64_vec |
||
564 | targ_selvecs=hppa_elf64_linux_vec |
||
565 | targ_cflags=-DHPUX_LARGE_AR_IDS |
||
566 | want64=true |
||
567 | ;; |
||
568 | #endif |
||
569 | |||
570 | hppa*-*-linux-*) |
||
571 | targ_defvec=hppa_elf32_linux_vec |
||
572 | targ_selvecs=hppa_elf32_vec |
||
573 | ;; |
||
574 | hppa*-*-netbsd*) |
||
575 | targ_defvec=hppa_elf32_nbsd_vec |
||
576 | targ_selvecs="hppa_elf32_vec hppa_elf32_linux_vec" |
||
577 | ;; |
||
578 | hppa*-*-*elf* | hppa*-*-lites* | hppa*-*-sysv4* | hppa*-*-openbsd*) |
||
579 | targ_defvec=hppa_elf32_vec |
||
580 | targ_selvecs=hppa_elf32_linux_vec |
||
581 | ;; |
||
582 | |||
583 | hppa*-*-bsd*) |
||
584 | targ_defvec=hppa_som_vec |
||
585 | targ_selvecs=hppa_elf32_vec |
||
586 | ;; |
||
587 | hppa*-*-hpux* | hppa*-*-hiux* | hppa*-*-mpeix*) |
||
588 | targ_defvec=hppa_som_vec |
||
589 | ;; |
||
590 | hppa*-*-osf*) |
||
591 | targ_defvec=hppa_som_vec |
||
592 | targ_selvecs=hppa_elf32_vec |
||
593 | ;; |
||
594 | |||
595 | i[3-7]86-*-elf* | i[3-7]86-*-rtems* | i[3-7]86-*-genode*) |
||
596 | targ_defvec=i386_elf32_vec |
||
597 | targ_selvecs="iamcu_elf32_vec i386_coff_vec" |
||
598 | ;; |
||
599 | i[3-7]86-*-solaris2*) |
||
600 | targ_defvec=i386_elf32_sol2_vec |
||
601 | targ_selvecs="iamcu_elf32_vec i386_coff_vec i386_pei_vec" |
||
602 | targ64_selvecs="x86_64_elf64_sol2_vec x86_64_pe_vec x86_64_pei_vec" |
||
603 | want64=true |
||
604 | ;; |
||
605 | #ifdef BFD64 |
||
606 | x86_64-*-solaris2*) |
||
607 | targ_defvec=i386_elf32_sol2_vec |
||
608 | targ_selvecs="x86_64_elf64_sol2_vec iamcu_elf32_vec i386_coff_vec i386_pei_vec x86_64_pe_vec x86_64_pei_vec" |
||
609 | want64=true |
||
610 | ;; |
||
611 | #endif |
||
612 | i[3-7]86-*-nto*) |
||
613 | targ_defvec=i386_elf32_vec |
||
614 | targ_selvecs="iamcu_elf32_vec i386_coff_vec" |
||
615 | ;; |
||
616 | i[3-7]86-*-aros*) |
||
617 | targ_defvec=i386_elf32_vec |
||
618 | targ_selvecs=iamcu_elf32_vec |
||
619 | ;; |
||
620 | i[3-7]86-*-dicos*) |
||
621 | targ_defvec=i386_elf32_vec |
||
622 | targ_selvecs=iamcu_elf32_vec |
||
623 | targ64_selvecs="x86_64_elf64_vec" |
||
624 | ;; |
||
625 | *-*-msdosdjgpp* | *-*-go32* ) |
||
626 | targ_defvec=i386_coff_go32_vec |
||
627 | targ_selvecs="i386_coff_go32stubbed_vec i386_aout_vec" |
||
628 | ;; |
||
629 | i[3-7]86-*-darwin* | i[3-7]86-*-macos10* | i[3-7]86-*-rhapsody*) |
||
630 | targ_defvec=i386_mach_o_vec |
||
631 | targ_selvecs="mach_o_le_vec mach_o_be_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec" |
||
632 | targ64_selvecs=x86_64_mach_o_vec |
||
633 | targ_archs="$targ_archs bfd_powerpc_arch bfd_rs6000_arch" |
||
634 | ;; |
||
635 | i[3-7]86-*-bsd*) |
||
636 | targ_defvec=i386_aout_bsd_vec |
||
637 | targ_underscore=yes |
||
638 | ;; |
||
639 | i[3-7]86-*-dragonfly*) |
||
640 | targ_defvec=i386_elf32_vec |
||
641 | targ_selvecs=iamcu_elf32_vec |
||
642 | targ64_selvecs="x86_64_elf64_vec" |
||
643 | ;; |
||
644 | i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu) |
||
645 | targ_defvec=i386_elf32_fbsd_vec |
||
646 | targ_selvecs="i386_elf32_vec iamcu_elf32_vec i386_pei_vec i386_coff_vec" |
||
647 | targ64_selvecs="x86_64_elf64_fbsd_vec x86_64_elf64_vec x86_64_pe_vec x86_64_pei_vec" |
||
648 | # FreeBSD <= 4.0 supports only the old nonstandard way of ABI labelling. |
||
649 | case "${targ}" in |
||
650 | i[3-7]86-*-freebsd3* | i[3-7]86-*-freebsd4 | i[3-7]86-*-freebsd4.0*) |
||
651 | targ_cflags=-DOLD_FREEBSD_ABI_LABEL ;; |
||
652 | esac |
||
653 | ;; |
||
654 | i[3-7]86-*-netbsd* | i[3-7]86-*-knetbsd*-gnu) |
||
655 | targ_defvec=i386_elf32_vec |
||
656 | targ_selvecs="iamcu_elf32_vec" |
||
657 | targ64_selvecs="x86_64_elf64_vec" |
||
658 | ;; |
||
659 | i[3-7]86-*-openbsd*) |
||
660 | targ_defvec=i386_elf32_vec |
||
661 | targ_selvecs="iamcu_elf32_vec" |
||
662 | ;; |
||
663 | i[3-7]86-*-linux-*) |
||
664 | targ_defvec=i386_elf32_vec |
||
665 | targ_selvecs="iamcu_elf32_vec i386_pei_vec" |
||
666 | targ64_selvecs="x86_64_elf64_vec x86_64_elf32_vec x86_64_pe_vec x86_64_pei_vec" |
||
667 | ;; |
||
668 | i[3-7]86-*-redox*) |
||
669 | targ_defvec=i386_elf32_vec |
||
670 | targ_selvecs= |
||
671 | targ64_selvecs=x86_64_elf64_vec |
||
672 | ;; |
||
673 | #ifdef BFD64 |
||
674 | x86_64-*-cloudabi*) |
||
675 | targ_defvec=x86_64_elf64_cloudabi_vec |
||
676 | want64=true |
||
677 | ;; |
||
678 | x86_64-*-darwin*) |
||
679 | targ_defvec=x86_64_mach_o_vec |
||
680 | targ_selvecs="i386_mach_o_vec mach_o_le_vec mach_o_be_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec" |
||
681 | targ_archs="$targ_archs bfd_powerpc_arch bfd_rs6000_arch" |
||
682 | want64=true |
||
683 | ;; |
||
684 | x86_64-*-dicos*) |
||
685 | targ_defvec=x86_64_elf64_vec |
||
686 | targ_selvecs="i386_elf32_vec iamcu_elf32_vec" |
||
687 | want64=true |
||
688 | ;; |
||
689 | x86_64-*-elf* | x86_64-*-rtems* | x86_64-*-fuchsia | x86_64-*-genode*) |
||
690 | targ_defvec=x86_64_elf64_vec |
||
691 | targ_selvecs="i386_elf32_vec iamcu_elf32_vec x86_64_elf32_vec" |
||
692 | case "${targ}" in |
||
693 | x86_64-*-rtems*) |
||
694 | targ_selvecs="${targ_selvecs} x86_64_pe_vec x86_64_pei_vec" |
||
695 | esac |
||
696 | want64=true |
||
697 | ;; |
||
698 | # Pierre-Marie Baty -- added x86_64 QNX case |
||
699 | x86_64-*-nto-qnx*) |
||
700 | targ_defvec=x86_64_elf64_vec |
||
701 | targ_selvecs="i386_elf32_vec iamcu_elf32_vec x86_64_elf32_vec" |
||
702 | targ_cflags=-D__QNXTARGET__ |
||
703 | want64=true |
||
704 | ;; |
||
705 | x86_64-*-dragonfly*) |
||
706 | targ_defvec=x86_64_elf64_vec |
||
707 | targ_selvecs="i386_elf32_vec iamcu_elf32_vec" |
||
708 | want64=true |
||
709 | ;; |
||
710 | x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu) |
||
711 | targ_defvec=x86_64_elf64_fbsd_vec |
||
712 | targ_selvecs="i386_elf32_fbsd_vec iamcu_elf32_vec i386_coff_vec i386_pei_vec x86_64_pe_vec x86_64_pei_vec i386_elf32_vec x86_64_elf64_vec" |
||
713 | want64=true |
||
714 | ;; |
||
715 | x86_64-*-haiku*) |
||
716 | targ_defvec=x86_64_elf64_vec |
||
717 | targ_selvecs="i386_elf32_vec" |
||
718 | want64=true |
||
719 | ;; |
||
720 | x86_64-*-netbsd* | x86_64-*-openbsd*) |
||
721 | targ_defvec=x86_64_elf64_vec |
||
722 | targ_selvecs="i386_elf32_vec iamcu_elf32_vec i386_coff_vec i386_pei_vec x86_64_pe_vec x86_64_pei_vec" |
||
723 | want64=true |
||
724 | ;; |
||
725 | x86_64-*-linux-*) |
||
726 | targ_defvec=x86_64_elf64_vec |
||
727 | targ_selvecs="i386_elf32_vec iamcu_elf32_vec x86_64_elf32_vec i386_pei_vec x86_64_pe_vec x86_64_pei_vec" |
||
728 | want64=true |
||
729 | ;; |
||
730 | x86_64-*-mingw* | x86_64-*-pe | x86_64-*-pep | x86_64-*-cygwin) |
||
731 | targ_defvec=x86_64_pe_vec |
||
732 | targ_selvecs="x86_64_pe_vec x86_64_pei_vec x86_64_pe_big_vec x86_64_elf64_vec i386_pe_vec i386_pei_vec i386_elf32_vec iamcu_elf32_vec pdb_vec" |
||
733 | want64=true |
||
734 | targ_underscore=no |
||
735 | ;; |
||
736 | x86_64-*-rdos*) |
||
737 | targ_defvec=x86_64_elf64_vec |
||
738 | want64=true |
||
739 | ;; |
||
740 | x86_64-*-redox*) |
||
741 | targ_defvec=x86_64_elf64_vec |
||
742 | targ_selvecs=i386_elf32_vec |
||
743 | want64=true |
||
744 | ;; |
||
745 | x86_64-*-gnu*) |
||
746 | targ_defvec=x86_64_elf64_vec |
||
747 | targ_selvecs="i386_elf32_vec iamcu_elf32_vec x86_64_elf32_vec" |
||
748 | want64=true |
||
749 | ;; |
||
750 | #endif |
||
751 | i[3-7]86-*-lynxos*) |
||
752 | targ_defvec=i386_elf32_vec |
||
753 | targ_selvecs="iamcu_elf32_vec i386_coff_lynx_vec i386_aout_lynx_vec" |
||
754 | ;; |
||
755 | i[3-7]86-*-gnu*) |
||
756 | targ_defvec=i386_elf32_vec |
||
757 | targ_selvecs=iamcu_elf32_vec |
||
758 | ;; |
||
759 | i[3-7]86-*-msdos*) |
||
760 | targ_defvec=i386_aout_vec |
||
761 | targ_selvecs=i386_msdos_vec |
||
762 | ;; |
||
763 | i[3-7]86-*-moss*) |
||
764 | targ_defvec=i386_elf32_vec |
||
765 | targ_selvecs="iamcu_elf32_vec i386_msdos_vec i386_aout_vec" |
||
766 | ;; |
||
767 | i[3-7]86-*-beospe*) |
||
768 | targ_defvec=i386_pe_vec |
||
769 | targ_selvecs="i386_pe_vec i386_pei_vec" |
||
770 | ;; |
||
771 | i[3-7]86-*-beos*) |
||
772 | targ_defvec=i386_elf32_vec |
||
773 | targ_selvecs="iamcu_elf32_vec i386_pe_vec i386_pei_vec" |
||
774 | ;; |
||
775 | i[3-7]86-*-haiku*) |
||
776 | targ_defvec=i386_elf32_vec |
||
777 | targ_selvecs="i386_pei_vec" |
||
778 | ;; |
||
779 | i[3-7]86-*-interix*) |
||
780 | targ_defvec=i386_pei_vec |
||
781 | targ_selvecs="i386_pe_vec" |
||
782 | # FIXME: This should eventually be checked at runtime. |
||
783 | targ_cflags=-DSTRICT_PE_FORMAT |
||
784 | ;; |
||
785 | i[3-7]86-*-rdos*) |
||
786 | targ_defvec=i386_elf32_vec |
||
787 | targ_selvecs="iamcu_elf32_vec i386_coff_vec" |
||
788 | ;; |
||
789 | i[3-7]86-*-mingw32* | i[3-7]86-*-cygwin* | i[3-7]86-*-winnt | i[3-7]86-*-pe) |
||
790 | targ_defvec=i386_pe_vec |
||
791 | targ_selvecs="i386_pe_vec i386_pe_big_vec i386_pei_vec i386_elf32_vec iamcu_elf32_vec pdb_vec" |
||
792 | targ_underscore=yes |
||
793 | ;; |
||
794 | i[3-7]86-*-vxworks*) |
||
795 | targ_defvec=i386_elf32_vxworks_vec |
||
796 | targ_underscore=yes |
||
797 | ;; |
||
798 | |||
799 | ia16-*-elf) |
||
800 | targ_defvec=i386_elf32_vec |
||
801 | targ_selvecs="i386_msdos_vec i386_aout_vec" |
||
802 | ;; |
||
803 | |||
804 | ip2k-*-elf) |
||
805 | targ_defvec=ip2k_elf32_vec |
||
806 | targ_underscore=yes |
||
807 | ;; |
||
808 | |||
809 | iq2000-*-elf) |
||
810 | targ_defvec=iq2000_elf32_vec |
||
811 | ;; |
||
812 | |||
813 | lm32-*-elf | lm32-*-rtems*) |
||
814 | targ_defvec=lm32_elf32_vec |
||
815 | targ_selvecs=lm32_elf32_fdpic_vec |
||
816 | ;; |
||
817 | |||
818 | lm32-*-*linux*) |
||
819 | targ_defvec=lm32_elf32_fdpic_vec |
||
820 | targ_selvecs=lm32_elf32_vec |
||
821 | ;; |
||
822 | |||
823 | m32c-*-elf) |
||
824 | targ_defvec=m32c_elf32_vec |
||
825 | targ_underscore=yes |
||
826 | ;; |
||
827 | |||
828 | m32r*le-*-linux*) |
||
829 | targ_defvec=m32r_elf32_linux_le_vec |
||
830 | targ_selvecs="m32r_elf32_linux_vec m32r_elf32_linux_le_vec" |
||
831 | ;; |
||
832 | m32r*-*-linux*) |
||
833 | targ_defvec=m32r_elf32_linux_vec |
||
834 | targ_selvecs="m32r_elf32_linux_vec m32r_elf32_linux_le_vec" |
||
835 | ;; |
||
836 | m32r*le-*-*) |
||
837 | targ_defvec=m32r_elf32_le_vec |
||
838 | targ_selvecs="m32r_elf32_vec m32r_elf32_le_vec" |
||
839 | ;; |
||
840 | m32r-*-*) |
||
841 | targ_defvec=m32r_elf32_vec |
||
842 | ;; |
||
843 | |||
844 | m68*-*-haiku*) |
||
845 | targ_defvec=m68k_elf32_vec |
||
846 | ;; |
||
847 | m68hc11-*-* | m6811-*-*) |
||
848 | targ_defvec=m68hc11_elf32_vec |
||
849 | targ_selvecs="m68hc11_elf32_vec m68hc12_elf32_vec" |
||
850 | ;; |
||
851 | m68hc12-*-* | m6812-*-*) |
||
852 | targ_defvec=m68hc12_elf32_vec |
||
853 | targ_selvecs="m68hc11_elf32_vec m68hc12_elf32_vec" |
||
854 | ;; |
||
855 | |||
856 | m68*-*-*) |
||
857 | targ_defvec=m68k_elf32_vec |
||
858 | ;; |
||
859 | |||
860 | s12z-*-*) |
||
861 | targ_defvec=s12z_elf32_vec |
||
862 | ;; |
||
863 | mcore-*-elf) |
||
864 | targ_defvec=mcore_elf32_be_vec |
||
865 | targ_selvecs="mcore_elf32_be_vec mcore_elf32_le_vec" |
||
866 | ;; |
||
867 | mcore-*-pe) |
||
868 | targ_defvec=mcore_pe_be_vec |
||
869 | targ_selvecs="mcore_pe_be_vec mcore_pe_le_vec mcore_pei_be_vec mcore_pei_le_vec" |
||
870 | ;; |
||
871 | |||
872 | mep-*-elf) |
||
873 | targ_defvec=mep_elf32_vec |
||
874 | targ_selvecs=mep_elf32_le_vec |
||
875 | ;; |
||
876 | |||
877 | metag-*-*) |
||
878 | targ_defvec=metag_elf32_vec |
||
879 | targ_underscore=yes |
||
880 | ;; |
||
881 | |||
882 | microblazeel*-*) |
||
883 | targ_defvec=microblaze_elf32_le_vec |
||
884 | targ_selvecs=microblaze_elf32_vec |
||
885 | ;; |
||
886 | |||
887 | microblaze*-*) |
||
888 | targ_defvec=microblaze_elf32_vec |
||
889 | targ_selvecs=microblaze_elf32_le_vec |
||
890 | ;; |
||
891 | |||
892 | #ifdef BFD64 |
||
893 | mips*el-*-netbsd*) |
||
894 | targ_defvec=mips_elf32_trad_le_vec |
||
895 | targ_selvecs="mips_elf32_trad_be_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec mips_ecoff_le_vec mips_ecoff_be_vec" |
||
896 | ;; |
||
897 | mips*-*-netbsd*) |
||
898 | targ_defvec=mips_elf32_trad_be_vec |
||
899 | targ_selvecs="mips_elf32_trad_le_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec mips_ecoff_be_vec mips_ecoff_le_vec" |
||
900 | ;; |
||
901 | mips*el-*-haiku*) |
||
902 | targ_defvec=mips_elf32_le_vec |
||
903 | targ_selvecs="mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_le_vec mips_ecoff_be_vec" |
||
904 | ;; |
||
905 | mips*-*-irix6*) |
||
906 | targ_defvec=mips_elf32_n_be_vec |
||
907 | targ_selvecs="mips_elf32_n_le_vec mips_elf32_be_vec mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec" |
||
908 | ;; |
||
909 | mips64*-ps2-elf*) |
||
910 | targ_defvec=mips_elf32_n_le_vec |
||
911 | targ_selvecs="mips_elf32_n_le_vec mips_elf32_n_be_vec mips_elf32_be_vec mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec" |
||
912 | ;; |
||
913 | mips*-ps2-elf*) |
||
914 | targ_defvec=mips_elf32_le_vec |
||
915 | targ_selvecs="mips_elf32_be_vec mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec" |
||
916 | ;; |
||
917 | mips*-*-irix5*) |
||
918 | targ_defvec=mips_elf32_be_vec |
||
919 | targ_selvecs="mips_elf32_le_vec mips_ecoff_be_vec mips_ecoff_le_vec" |
||
920 | ;; |
||
921 | mips*el-*-vxworks*) |
||
922 | targ_defvec=mips_elf32_vxworks_le_vec |
||
923 | targ_selvecs="mips_elf32_le_vec mips_elf32_vxworks_be_vec mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec" |
||
924 | ;; |
||
925 | mips*-*-vxworks*) |
||
926 | targ_defvec=mips_elf32_vxworks_be_vec |
||
927 | targ_selvecs="mips_elf32_be_vec mips_elf32_vxworks_le_vec mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec" |
||
928 | ;; |
||
929 | mips*el-sde-elf*) |
||
930 | targ_defvec=mips_elf32_trad_le_vec |
||
931 | targ_selvecs="mips_elf32_trad_be_vec mips_elf32_ntrad_be_vec mips_elf32_ntrad_le_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec" |
||
932 | ;; |
||
933 | mips*-sde-elf* | mips*-mti-elf* | mips*-img-elf*) |
||
934 | targ_defvec=mips_elf32_trad_be_vec |
||
935 | targ_selvecs="mips_elf32_trad_le_vec mips_elf32_ntrad_be_vec mips_elf32_ntrad_le_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec" |
||
936 | ;; |
||
937 | mips*el-*-elf* | mips*-*-chorus*) |
||
938 | targ_defvec=mips_elf32_le_vec |
||
939 | targ_selvecs="mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec" |
||
940 | ;; |
||
941 | mips*-*-elf* | mips*-*-rtems* | mips*-*-windiss | mips*-*-none) |
||
942 | targ_defvec=mips_elf32_be_vec |
||
943 | targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec" |
||
944 | ;; |
||
945 | mips64*-*-openbsd*) |
||
946 | targ_defvec=mips_elf64_trad_be_vec |
||
947 | targ_selvecs="mips_elf32_ntrad_le_vec mips_elf32_ntrad_be_vec mips_elf32_trad_le_vec mips_elf32_trad_be_vec mips_elf64_trad_le_vec" |
||
948 | ;; |
||
949 | mips*el-*-openbsd*) |
||
950 | targ_defvec=mips_elf32_le_vec |
||
951 | targ_selvecs="mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_le_vec mips_ecoff_be_vec" |
||
952 | ;; |
||
953 | mips*-*-openbsd*) |
||
954 | targ_defvec=mips_elf32_be_vec |
||
955 | targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_be_vec mips_ecoff_le_vec" |
||
956 | ;; |
||
957 | mips64*el-*-linux*-gnuabi64) |
||
958 | targ_defvec=mips_elf64_trad_le_vec |
||
959 | targ_selvecs="mips_elf64_trad_be_vec mips_elf32_ntrad_le_vec mips_elf32_ntrad_be_vec mips_elf32_trad_le_vec mips_elf32_trad_be_vec" |
||
960 | want64=true |
||
961 | ;; |
||
962 | mips64*el-*-linux*) |
||
963 | targ_defvec=mips_elf32_ntrad_le_vec |
||
964 | targ_selvecs="mips_elf32_ntrad_be_vec mips_elf32_trad_le_vec mips_elf32_trad_be_vec mips_elf64_trad_le_vec mips_elf64_trad_be_vec" |
||
965 | ;; |
||
966 | mips64*-*-linux*-gnuabi64) |
||
967 | targ_defvec=mips_elf64_trad_be_vec |
||
968 | targ_selvecs="mips_elf64_trad_le_vec mips_elf32_ntrad_be_vec mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec" |
||
969 | want64=true |
||
970 | ;; |
||
971 | mips64*-*-linux*) |
||
972 | targ_defvec=mips_elf32_ntrad_be_vec |
||
973 | targ_selvecs="mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec" |
||
974 | ;; |
||
975 | mips*el-*-linux*) |
||
976 | targ_defvec=mips_elf32_trad_le_vec |
||
977 | targ_selvecs="mips_elf32_trad_be_vec mips_ecoff_le_vec mips_ecoff_be_vec mips_elf32_ntrad_le_vec mips_elf64_trad_le_vec mips_elf32_ntrad_be_vec mips_elf64_trad_be_vec" |
||
978 | ;; |
||
979 | mips*-*-linux*) |
||
980 | targ_defvec=mips_elf32_trad_be_vec |
||
981 | targ_selvecs="mips_elf32_trad_le_vec mips_ecoff_be_vec mips_ecoff_le_vec mips_elf32_ntrad_be_vec mips_elf64_trad_be_vec mips_elf32_ntrad_le_vec mips_elf64_trad_le_vec" |
||
982 | ;; |
||
983 | mips64*el-*-freebsd* | mips64*el-*-kfreebsd*-gnu) |
||
984 | # FreeBSD vectors |
||
985 | targ_defvec=mips_elf32_ntradfbsd_le_vec |
||
986 | targ_selvecs="mips_elf32_ntradfbsd_be_vec mips_elf32_tradfbsd_le_vec mips_elf32_tradfbsd_be_vec mips_elf64_tradfbsd_le_vec mips_elf64_tradfbsd_be_vec" |
||
987 | # Generic vectors |
||
988 | targ_selvecs="${targ_selvecs} mips_elf32_ntrad_le_vec mips_elf32_ntrad_be_vec mips_elf32_trad_le_vec mips_elf32_trad_be_vec mips_elf64_trad_le_vec mips_elf64_trad_be_vec" |
||
989 | ;; |
||
990 | mips64*-*-freebsd* | mips64*-*-kfreebsd*-gnu) |
||
991 | # FreeBSD vectors |
||
992 | targ_defvec=mips_elf32_ntradfbsd_be_vec |
||
993 | targ_selvecs="mips_elf32_ntradfbsd_le_vec mips_elf32_tradfbsd_be_vec mips_elf32_tradfbsd_le_vec mips_elf64_tradfbsd_be_vec mips_elf64_tradfbsd_le_vec" |
||
994 | # Generic vectors |
||
995 | targ_selvecs="${targ_selvecs} mips_elf32_ntrad_be_vec mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec" |
||
996 | ;; |
||
997 | mips*el-*-freebsd* | mips*el-*-kfreebsd*-gnu) |
||
998 | # FreeBSD vectors |
||
999 | targ_defvec=mips_elf32_tradfbsd_le_vec |
||
1000 | targ_selvecs="mips_elf32_tradfbsd_be_vec mips_elf32_ntradfbsd_le_vec mips_elf64_tradfbsd_le_vec mips_elf32_ntradfbsd_be_vec mips_elf64_tradfbsd_be_vec" |
||
1001 | # Generic vectors |
||
1002 | targ_selvecs="${targ_selvecs} mips_elf32_trad_le_vec mips_elf32_trad_be_vec mips_elf32_ntrad_le_vec mips_elf64_trad_le_vec mips_elf32_ntrad_be_vec mips_elf64_trad_be_vec" |
||
1003 | ;; |
||
1004 | mips*-*-freebsd* | mips*-*-kfreebsd*-gnu) |
||
1005 | # FreeBSD vectors |
||
1006 | targ_defvec=mips_elf32_tradfbsd_be_vec |
||
1007 | targ_selvecs="mips_elf32_tradfbsd_le_vec mips_elf32_ntradfbsd_be_vec mips_elf64_tradfbsd_be_vec mips_elf32_ntradfbsd_le_vec mips_elf64_tradfbsd_le_vec" |
||
1008 | # Generic vectors |
||
1009 | targ_selvecs="${targ_selvecs} mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf32_ntrad_be_vec mips_elf64_trad_be_vec mips_elf32_ntrad_le_vec mips_elf64_trad_le_vec" |
||
1010 | ;; |
||
1011 | mmix-*-*) |
||
1012 | targ_defvec=mmix_elf64_vec |
||
1013 | targ_selvecs=mmix_mmo_vec |
||
1014 | want64=true |
||
1015 | ;; |
||
1016 | #endif |
||
1017 | mn10200-*-*) |
||
1018 | targ_defvec=mn10200_elf32_vec |
||
1019 | targ_underscore=yes |
||
1020 | ;; |
||
1021 | |||
1022 | mn10300-*-*) |
||
1023 | targ_defvec=mn10300_elf32_vec |
||
1024 | targ_underscore=yes |
||
1025 | ;; |
||
1026 | |||
1027 | mt-*-elf) |
||
1028 | targ_defvec=mt_elf32_vec |
||
1029 | ;; |
||
1030 | |||
1031 | msp430-*-*) |
||
1032 | targ_defvec=msp430_elf32_vec |
||
1033 | targ_selvecs=msp430_elf32_ti_vec |
||
1034 | ;; |
||
1035 | |||
1036 | nds32*le-*-linux*) |
||
1037 | targ_defvec=nds32_elf32_linux_le_vec |
||
1038 | targ_selvecs=nds32_elf32_linux_be_vec |
||
1039 | ;; |
||
1040 | |||
1041 | nds32*be-*-linux*) |
||
1042 | targ_defvec=nds32_elf32_linux_be_vec |
||
1043 | targ_selvecs=nds32_elf32_linux_le_vec |
||
1044 | ;; |
||
1045 | |||
1046 | nds32*le-*-*) |
||
1047 | targ_defvec=nds32_elf32_le_vec |
||
1048 | targ_selvecs=nds32_elf32_be_vec |
||
1049 | ;; |
||
1050 | |||
1051 | nds32*be-*-*) |
||
1052 | targ_defvec=nds32_elf32_be_vec |
||
1053 | targ_selvecs=nds32_elf32_le_vec |
||
1054 | ;; |
||
1055 | |||
1056 | #ifdef BFD64 |
||
1057 | nfp-*-*) |
||
1058 | targ_defvec=nfp_elf64_vec |
||
1059 | ;; |
||
1060 | #endif |
||
1061 | |||
1062 | ns32k-pc532-mach* | ns32k-pc532-ux*) |
||
1063 | targ_defvec=ns32k_aout_pc532mach_vec |
||
1064 | targ_underscore=yes |
||
1065 | ;; |
||
1066 | ns32k-*-lites* | ns32k-*-*bsd*) |
||
1067 | targ_defvec=ns32k_aout_pc532nbsd_vec |
||
1068 | targ_underscore=yes |
||
1069 | ;; |
||
1070 | |||
1071 | nios2eb-*-*) |
||
1072 | targ_defvec=nios2_elf32_be_vec |
||
1073 | targ_selvecs=nios2_elf32_le_vec |
||
1074 | ;; |
||
1075 | |||
1076 | nios2el-*-*) |
||
1077 | targ_defvec=nios2_elf32_le_vec |
||
1078 | targ_selvecs=nios2_elf32_be_vec |
||
1079 | ;; |
||
1080 | |||
1081 | nios2-*-*) |
||
1082 | targ_defvec=nios2_elf32_le_vec |
||
1083 | targ_selvecs=nios2_elf32_be_vec |
||
1084 | ;; |
||
1085 | |||
1086 | or1k-*-elf | or1k-*-linux* | or1k-*-rtems*) |
||
1087 | targ_defvec=or1k_elf32_vec |
||
1088 | ;; |
||
1089 | |||
1090 | or1knd-*-elf | or1knd-*-linux* | or1knd-*-rtems*) |
||
1091 | targ_defvec=or1k_elf32_vec |
||
1092 | ;; |
||
1093 | |||
1094 | pdp11-*-*) |
||
1095 | targ_defvec=pdp11_aout_vec |
||
1096 | targ_underscore=yes |
||
1097 | ;; |
||
1098 | |||
1099 | pj-*-*) |
||
1100 | targ_defvec=pj_elf32_vec |
||
1101 | targ_selvecs="pj_elf32_vec pj_elf32_le_vec" |
||
1102 | ;; |
||
1103 | |||
1104 | pjl-*-*) |
||
1105 | targ_defvec=pj_elf32_le_vec |
||
1106 | targ_selvecs="pj_elf32_le_vec pj_elf32_vec i386_elf32_vec iamcu_elf32_vec" |
||
1107 | ;; |
||
1108 | |||
1109 | powerpc-*-aix5.[01] | rs6000-*-aix5.[01]) |
||
1110 | targ_defvec=rs6000_xcoff_vec |
||
1111 | targ_selvecs="rs6000_xcoff64_aix_vec" |
||
1112 | want64=true |
||
1113 | ;; |
||
1114 | powerpc-*-haiku*) |
||
1115 | targ_defvec=powerpc_elf32_vec |
||
1116 | targ_selvecs="rs6000_xcoff_vec powerpc_elf32_le_vec pef_vec pef_xlib_vec powerpc_xcoff_vec powerpc_boot_vec" |
||
1117 | targ_cflags=-D__HAIKU_TARGET__ |
||
1118 | ;; |
||
1119 | #ifdef BFD64 |
||
1120 | powerpc64-*-aix5.[01]) |
||
1121 | targ_defvec=rs6000_xcoff64_aix_vec |
||
1122 | targ_selvecs="rs6000_xcoff_vec" |
||
1123 | want64=true |
||
1124 | ;; |
||
1125 | #endif |
||
1126 | powerpc-*-aix[5-9]* | rs6000-*-aix[5-9]*) |
||
1127 | targ_cflags=-DAIX_WEAK_SUPPORT |
||
1128 | targ_defvec=rs6000_xcoff_vec |
||
1129 | targ_selvecs="rs6000_xcoff64_aix_vec" |
||
1130 | want64=true |
||
1131 | ;; |
||
1132 | #ifdef BFD64 |
||
1133 | powerpc64-*-aix[5-9]*) |
||
1134 | targ_cflags=-DAIX_WEAK_SUPPORT |
||
1135 | targ_defvec=rs6000_xcoff64_aix_vec |
||
1136 | targ_selvecs="rs6000_xcoff_vec" |
||
1137 | want64=true |
||
1138 | ;; |
||
1139 | #endif |
||
1140 | |||
1141 | powerpc-*-aix* | powerpc-*-beos* | rs6000-*-*) |
||
1142 | targ_defvec=rs6000_xcoff_vec |
||
1143 | targ64_selvecs=rs6000_xcoff64_vec |
||
1144 | case "${targ}" in |
||
1145 | *-*-aix4.[3456789]* | *-*-aix[56789]*) |
||
1146 | want64=true;; |
||
1147 | *) |
||
1148 | targ_cflags=-DSMALL_ARCHIVE;; |
||
1149 | esac |
||
1150 | ;; |
||
1151 | #ifdef BFD64 |
||
1152 | powerpc64-*-aix*) |
||
1153 | targ_defvec=rs6000_xcoff64_vec |
||
1154 | targ_selvecs=rs6000_xcoff_vec |
||
1155 | want64=true |
||
1156 | ;; |
||
1157 | powerpc64-*-freebsd*) |
||
1158 | targ_defvec=powerpc_elf64_fbsd_vec |
||
1159 | targ_selvecs="powerpc_elf64_vec powerpc_elf32_vec powerpc_elf32_fbsd_vec powerpc_elf32_le_vec rs6000_xcoff_vec rs6000_xcoff64_vec rs6000_xcoff64_aix_vec" |
||
1160 | want64=true |
||
1161 | ;; |
||
1162 | powerpc64le-*-freebsd*) |
||
1163 | targ_defvec=powerpc_elf64_fbsd_le_vec |
||
1164 | targ_selvecs="powerpc_elf64_vec powerpc_elf32_vec powerpc_elf32_fbsd_vec powerpc_elf32_le_vec rs6000_xcoff_vec rs6000_xcoff64_vec rs6000_xcoff64_aix_vec" |
||
1165 | want64=true |
||
1166 | ;; |
||
1167 | powerpc64-*-elf* | powerpc-*-elf64* | powerpc64-*-linux* | \ |
||
1168 | powerpc64-*-*bsd*) |
||
1169 | targ_defvec=powerpc_elf64_vec |
||
1170 | targ_selvecs="powerpc_elf64_le_vec powerpc_elf32_vec powerpc_elf32_le_vec rs6000_xcoff_vec rs6000_xcoff64_vec rs6000_xcoff64_aix_vec" |
||
1171 | want64=true |
||
1172 | ;; |
||
1173 | powerpc64le-*-elf* | powerpcle-*-elf64* | powerpc64le-*-linux* | \ |
||
1174 | powerpc64le-*-*bsd*) |
||
1175 | targ_defvec=powerpc_elf64_le_vec |
||
1176 | targ_selvecs="powerpc_elf64_vec powerpc_elf32_le_vec powerpc_elf32_vec rs6000_xcoff_vec rs6000_xcoff64_vec rs6000_xcoff64_aix_vec" |
||
1177 | want64=true |
||
1178 | ;; |
||
1179 | #endif |
||
1180 | powerpc-*-*freebsd*) |
||
1181 | targ_defvec=powerpc_elf32_fbsd_vec |
||
1182 | targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_elf32_le_vec powerpc_boot_vec" |
||
1183 | targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec powerpc_elf64_fbsd_vec" |
||
1184 | ;; |
||
1185 | powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \ |
||
1186 | powerpc-*-solaris2* | powerpc-*-linux-* | powerpc-*-rtems* | \ |
||
1187 | powerpc-*-chorus*) |
||
1188 | targ_defvec=powerpc_elf32_vec |
||
1189 | targ_selvecs="rs6000_xcoff_vec powerpc_elf32_le_vec powerpc_boot_vec" |
||
1190 | targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec" |
||
1191 | ;; |
||
1192 | powerpc-*-kaos*) |
||
1193 | targ_defvec=powerpc_elf32_vec |
||
1194 | targ_selvecs="powerpc_elf32_le_vec powerpc_boot_vec" |
||
1195 | targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec" |
||
1196 | ;; |
||
1197 | powerpc-*-darwin* | powerpc-*-macos10* | powerpc-*-rhapsody*) |
||
1198 | targ_defvec=mach_o_be_vec |
||
1199 | targ_selvecs="mach_o_be_vec mach_o_le_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec" |
||
1200 | targ_archs="$targ_archs bfd_i386_arch" |
||
1201 | ;; |
||
1202 | powerpc-*-macos*) |
||
1203 | targ_defvec=powerpc_xcoff_vec |
||
1204 | ;; |
||
1205 | powerpc-*-nto*) |
||
1206 | targ_defvec=powerpc_elf32_vec |
||
1207 | targ_selvecs="rs6000_xcoff_vec powerpc_elf32_le_vec powerpc_boot_vec" |
||
1208 | ;; |
||
1209 | powerpc-*-vxworks*) |
||
1210 | targ_defvec=powerpc_elf32_vxworks_vec |
||
1211 | targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_elf32_le_vec powerpc_boot_vec" |
||
1212 | targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec" |
||
1213 | ;; |
||
1214 | powerpcle-*-nto*) |
||
1215 | targ_defvec=powerpc_elf32_le_vec |
||
1216 | targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_boot_vec" |
||
1217 | ;; |
||
1218 | powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \ |
||
1219 | powerpcle-*-solaris2* | powerpcle-*-linux-* | powerpcle-*-vxworks*) |
||
1220 | targ_defvec=powerpc_elf32_le_vec |
||
1221 | targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_boot_vec" |
||
1222 | targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec" |
||
1223 | ;; |
||
1224 | |||
1225 | pru-*-*) |
||
1226 | targ_defvec=pru_elf32_vec |
||
1227 | ;; |
||
1228 | |||
1229 | #ifdef BFD64 |
||
1230 | riscvbe-*-* | riscv32be*-*-*) |
||
1231 | targ_defvec=riscv_elf32_be_vec |
||
1232 | targ_selvecs="riscv_elf32_vec riscv_elf64_vec riscv_elf32_be_vec riscv_elf64_be_vec" |
||
1233 | want64=true |
||
1234 | ;; |
||
1235 | riscv-*-* | riscv32*-*-*) |
||
1236 | targ_defvec=riscv_elf32_vec |
||
1237 | targ_selvecs="riscv_elf32_vec riscv_elf64_vec riscv_elf32_be_vec riscv_elf64_be_vec" |
||
1238 | want64=true |
||
1239 | ;; |
||
1240 | riscv64be*-*-*) |
||
1241 | targ_defvec=riscv_elf64_be_vec |
||
1242 | targ_selvecs="riscv_elf32_vec riscv_elf64_vec riscv_elf32_be_vec riscv_elf64_be_vec" |
||
1243 | want64=true |
||
1244 | ;; |
||
1245 | riscv64*-*-*) |
||
1246 | targ_defvec=riscv_elf64_vec |
||
1247 | targ_selvecs="riscv_elf32_vec riscv_elf64_vec riscv_elf32_be_vec riscv_elf64_be_vec" |
||
1248 | want64=true |
||
1249 | ;; |
||
1250 | #endif |
||
1251 | |||
1252 | rl78-*-elf) |
||
1253 | targ_defvec=rl78_elf32_vec |
||
1254 | targ_underscore=yes |
||
1255 | ;; |
||
1256 | |||
1257 | rx-*-elf) |
||
1258 | targ_defvec=rx_elf32_le_vec |
||
1259 | targ_selvecs="rx_elf32_be_vec rx_elf32_le_vec rx_elf32_be_ns_vec" |
||
1260 | targ_underscore=yes |
||
1261 | ;; |
||
1262 | rx-*-linux*) |
||
1263 | targ_defvec=rx_elf32_linux_le_vec |
||
1264 | targ_selvecs="rx_elf32_linux_le_vec" |
||
1265 | ;; |
||
1266 | |||
1267 | s390-*-linux*) |
||
1268 | targ_defvec=s390_elf32_vec |
||
1269 | targ64_selvecs=s390_elf64_vec |
||
1270 | want64=true |
||
1271 | ;; |
||
1272 | #ifdef BFD64 |
||
1273 | s390x-*-linux*) |
||
1274 | targ_defvec=s390_elf64_vec |
||
1275 | targ_selvecs=s390_elf32_vec |
||
1276 | want64=true |
||
1277 | ;; |
||
1278 | s390x-*-tpf*) |
||
1279 | targ_defvec=s390_elf64_vec |
||
1280 | want64=true |
||
1281 | ;; |
||
1282 | |||
1283 | score*-*-elf*) |
||
1284 | targ_defvec=score_elf32_be_vec |
||
1285 | targ_selvecs=score_elf32_le_vec |
||
1286 | ;; |
||
1287 | #endif /* BFD64 */ |
||
1288 | |||
1289 | sh*eb-*-linux*) |
||
1290 | targ_defvec=sh_elf32_linux_be_vec |
||
1291 | targ_selvecs=sh_elf32_linux_vec |
||
1292 | targ_selvecs="${targ_selvecs} sh_elf32_fdpic_le_vec sh_elf32_fdpic_be_vec" |
||
1293 | ;; |
||
1294 | sh*-*-linux*) |
||
1295 | targ_defvec=sh_elf32_linux_vec |
||
1296 | targ_selvecs=sh_elf32_linux_be_vec |
||
1297 | targ_selvecs="${targ_selvecs} sh_elf32_fdpic_le_vec sh_elf32_fdpic_be_vec" |
||
1298 | ;; |
||
1299 | |||
1300 | sh-*-uclinux* | sh[12]-*-uclinux*) |
||
1301 | targ_defvec=sh_elf32_vec |
||
1302 | targ_selvecs="sh_elf32_le_vec sh_elf32_linux_be_vec sh_elf32_linux_vec sh_elf32_fdpic_le_vec sh_elf32_fdpic_be_vec" |
||
1303 | ;; |
||
1304 | |||
1305 | sh*l*-*-netbsd*) |
||
1306 | targ_defvec=sh_elf32_nbsd_le_vec |
||
1307 | targ_selvecs="sh_elf32_nbsd_vec sh_coff_vec sh_coff_le_vec" |
||
1308 | ;; |
||
1309 | sh*-*-netbsd*) |
||
1310 | targ_defvec=sh_elf32_nbsd_vec |
||
1311 | targ_selvecs="sh_elf32_nbsd_le_vec sh_coff_vec sh_coff_le_vec" |
||
1312 | ;; |
||
1313 | |||
1314 | shl*-*-elf* | sh[1234]l*-*-elf* | sh3el*-*-elf* | shl*-*-kaos*) |
||
1315 | targ_defvec=sh_elf32_le_vec |
||
1316 | targ_selvecs="sh_elf32_vec sh_coff_le_vec sh_coff_vec sh_coff_small_le_vec sh_coff_small_vec" |
||
1317 | targ_underscore=yes |
||
1318 | ;; |
||
1319 | |||
1320 | sh-*-elf* | sh[1234]*-elf* | sh-*-rtems* | sh-*-kaos*) |
||
1321 | targ_defvec=sh_elf32_vec |
||
1322 | targ_selvecs="sh_elf32_le_vec sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec" |
||
1323 | targ_underscore=yes |
||
1324 | ;; |
||
1325 | |||
1326 | sh-*-nto*) |
||
1327 | targ_defvec=sh_elf32_vec |
||
1328 | targ_selvecs="sh_elf32_le_vec sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec" |
||
1329 | targ_underscore=yes |
||
1330 | ;; |
||
1331 | sh*-*-openbsd*) |
||
1332 | targ_defvec=sh_elf32_nbsd_le_vec |
||
1333 | targ_selvecs="sh_elf32_nbsd_vec sh_coff_vec sh_coff_le_vec" |
||
1334 | ;; |
||
1335 | sh-*-pe) |
||
1336 | targ_defvec=sh_pe_le_vec |
||
1337 | targ_selvecs="sh_pe_le_vec sh_pei_le_vec" |
||
1338 | targ_underscore=yes |
||
1339 | ;; |
||
1340 | sh-*-vxworks) |
||
1341 | targ_defvec=sh_elf32_vxworks_vec |
||
1342 | targ_selvecs="sh_elf32_vxworks_le_vec" |
||
1343 | # FIXME None of the following are actually used on this target, but |
||
1344 | # they're necessary for coff-sh.c (which is unconditionally used) to be |
||
1345 | # compiled correctly. |
||
1346 | targ_selvecs="$targ_selvecs sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec" |
||
1347 | targ_underscore=yes |
||
1348 | ;; |
||
1349 | sh-*-*) |
||
1350 | targ_defvec=sh_coff_vec |
||
1351 | targ_selvecs="sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec" |
||
1352 | targ_underscore=yes |
||
1353 | ;; |
||
1354 | |||
1355 | sparc-*-solaris2.[0-6] | sparc-*-solaris2.[0-6].*) |
||
1356 | # PR 27666: Do not include sparc_elf32_vec here. |
||
1357 | targ_defvec=sparc_elf32_sol2_vec |
||
1358 | ;; |
||
1359 | #ifdef BFD64 |
||
1360 | sparc-*-solaris2* | sparcv9-*-solaris2* | sparc64-*-solaris2*) |
||
1361 | # PR 27666: Do not include sparc_elf32_vec or sparc_elf64_vec here. |
||
1362 | targ_defvec=sparc_elf32_sol2_vec |
||
1363 | targ_selvecs="sparc_elf64_sol2_vec" |
||
1364 | want64=true |
||
1365 | ;; |
||
1366 | sparc64-*-haiku*) |
||
1367 | targ_defvec=sparc_elf64_vec |
||
1368 | targ_selvecs="sparc_elf64_vec sparc_elf32_vec" |
||
1369 | want64=true |
||
1370 | ;; |
||
1371 | sparc64-*-freebsd* | sparc64-*-kfreebsd*-gnu) |
||
1372 | targ_defvec=sparc_elf64_fbsd_vec |
||
1373 | targ_selvecs="sparc_elf64_vec sparc_elf32_vec" |
||
1374 | ;; |
||
1375 | sparc64*-*-*) |
||
1376 | targ_defvec=sparc_elf64_vec |
||
1377 | targ_selvecs="sparc_elf32_vec" |
||
1378 | want64=true |
||
1379 | ;; |
||
1380 | #endif |
||
1381 | sparc-*-linux-* | sparcv*-*-linux-*) |
||
1382 | targ_defvec=sparc_elf32_vec |
||
1383 | targ_selvecs="sparc_elf64_vec" |
||
1384 | ;; |
||
1385 | sparc-*-vxworks*) |
||
1386 | targ_defvec=sparc_elf32_vxworks_vec |
||
1387 | targ_selvecs="sparc_elf32_vec" |
||
1388 | ;; |
||
1389 | sparc*-*-*) |
||
1390 | targ_defvec=sparc_elf32_vec |
||
1391 | ;; |
||
1392 | |||
1393 | spu-*-elf) |
||
1394 | targ_defvec=spu_elf32_vec |
||
1395 | want64=true |
||
1396 | ;; |
||
1397 | |||
1398 | tic6x-*-elf) |
||
1399 | targ_defvec=tic6x_elf32_c6000_le_vec |
||
1400 | targ_selvecs="tic6x_elf32_c6000_be_vec tic6x_elf32_le_vec tic6x_elf32_be_vec" |
||
1401 | ;; |
||
1402 | |||
1403 | tic6x-*-uclinux) |
||
1404 | targ_defvec=tic6x_elf32_linux_le_vec |
||
1405 | targ_selvecs="tic6x_elf32_linux_be_vec tic6x_elf32_le_vec tic6x_elf32_be_vec" |
||
1406 | ;; |
||
1407 | |||
1408 | #ifdef BFD64 |
||
1409 | tilegx-*-*) |
||
1410 | targ_defvec=tilegx_elf64_le_vec |
||
1411 | targ_selvecs="tilegx_elf64_be_vec tilegx_elf32_be_vec tilegx_elf32_le_vec" |
||
1412 | ;; |
||
1413 | tilegxbe-*-*) |
||
1414 | targ_defvec=tilegx_elf64_be_vec |
||
1415 | targ_selvecs="tilegx_elf64_le_vec tilegx_elf32_be_vec tilegx_elf32_le_vec" |
||
1416 | ;; |
||
1417 | #endif |
||
1418 | |||
1419 | tilepro-*-*) |
||
1420 | targ_defvec=tilepro_elf32_vec |
||
1421 | ;; |
||
1422 | |||
1423 | ft32*-*-*) |
||
1424 | targ_defvec=ft32_elf32_vec |
||
1425 | ;; |
||
1426 | |||
1427 | v850*-*-*) |
||
1428 | targ_defvec=v850_elf32_vec |
||
1429 | targ_selvecs="v800_elf32_vec" |
||
1430 | targ_underscore=yes |
||
1431 | ;; |
||
1432 | |||
1433 | vax-*-netbsdaout*) |
||
1434 | targ_defvec=vax_aout_nbsd_vec |
||
1435 | targ_selvecs="vax_elf32_vec vax_aout_1knbsd_vec" |
||
1436 | targ_underscore=yes |
||
1437 | ;; |
||
1438 | |||
1439 | vax-*-netbsd*) |
||
1440 | targ_defvec=vax_elf32_vec |
||
1441 | targ_selvecs="vax_aout_nbsd_vec vax_aout_1knbsd_vec" |
||
1442 | ;; |
||
1443 | |||
1444 | vax-*-openbsd*) |
||
1445 | targ_defvec=vax_aout_nbsd_vec |
||
1446 | targ_underscore=yes |
||
1447 | ;; |
||
1448 | |||
1449 | vax-*-linux-*) |
||
1450 | targ_defvec=vax_elf32_vec |
||
1451 | ;; |
||
1452 | |||
1453 | visium-*-elf) |
||
1454 | targ_defvec=visium_elf32_vec |
||
1455 | ;; |
||
1456 | |||
1457 | wasm32-*-*) |
||
1458 | targ_defvec=wasm32_elf32_vec |
||
1459 | targ_selvecs="wasm_vec" |
||
1460 | ;; |
||
1461 | |||
1462 | xgate-*-*) |
||
1463 | targ_defvec=xgate_elf32_vec |
||
1464 | targ_selvecs="xgate_elf32_vec" |
||
1465 | ;; |
||
1466 | |||
1467 | xstormy16-*-elf) |
||
1468 | targ_defvec=xstormy16_elf32_vec |
||
1469 | ;; |
||
1470 | |||
1471 | xtensa*-*-*) |
||
1472 | targ_defvec=xtensa_elf32_le_vec |
||
1473 | targ_selvecs=xtensa_elf32_be_vec |
||
1474 | ;; |
||
1475 | |||
1476 | z80-*-coff) |
||
1477 | targ_defvec=z80_coff_vec |
||
1478 | targ_underscore=no |
||
1479 | ;; |
||
1480 | |||
1481 | z80-*-elf) |
||
1482 | targ_defvec=z80_elf32_vec |
||
1483 | targ_underscore=no |
||
1484 | ;; |
||
1485 | |||
1486 | z8k*-*-*) |
||
1487 | targ_defvec=z8k_coff_vec |
||
1488 | targ_underscore=yes |
||
1489 | ;; |
||
1490 | |||
1491 | #ifdef BFD64 |
||
1492 | loongarch32-*) |
||
1493 | targ_defvec=loongarch_elf32_vec |
||
1494 | targ_selvecs="loongarch_elf32_vec" |
||
1495 | want64=true |
||
1496 | ;; |
||
1497 | |||
1498 | loongarch64-*) |
||
1499 | targ_defvec=loongarch_elf64_vec |
||
1500 | targ_selvecs="loongarch_elf32_vec loongarch_elf64_vec loongarch64_pei_vec" |
||
1501 | want64=true |
||
1502 | ;; |
||
1503 | #endif |
||
1504 | |||
1505 | # END OF targmatch.h |
||
1506 | bpf-*-*) |
||
1507 | echo "*** Configuration $targ is not fully supported." >&2 |
||
1508 | echo "*** Use bpf or bpf-*-none as the target instead." >&2 |
||
1509 | exit 1 |
||
1510 | ;; |
||
1511 | |||
1512 | *) |
||
1513 | echo 1>&2 "*** BFD does not support target ${targ}." |
||
1514 | echo 1>&2 "*** Look in bfd/config.bfd for supported targets." |
||
1515 | exit 1 |
||
1516 | ;; |
||
1517 | esac |
||
1518 | |||
1519 | # All MIPS ELF targets need a 64-bit bfd_vma. |
||
1520 | case "${targ_defvec} ${targ_selvecs}" in |
||
1521 | *mips_elf*) |
||
1522 | want64=true |
||
1523 | ;; |
||
1524 | esac |
||
1525 | |||
1526 | case "${host64}${want64}" in |
||
1527 | *true*) |
||
1528 | targ_selvecs="${targ_selvecs} ${targ64_selvecs}" |
||
1529 | ;; |
||
1530 | esac |
||
1531 | |||
1532 | # If we support any ELF target, then automatically add support for the |
||
1533 | # generic ELF targets. This permits an objdump with some ELF support |
||
1534 | # to be used on an arbitrary ELF file for anything other than |
||
1535 | # relocation information. |
||
1536 | case "${targ_defvec} ${targ_selvecs}" in |
||
1537 | *elf64* | *mips_elf32_n*) |
||
1538 | targ_selvecs="${targ_selvecs} elf64_le_vec elf64_be_vec elf32_le_vec elf32_be_vec" |
||
1539 | ;; |
||
1540 | *elf32*) |
||
1541 | targ_selvecs="${targ_selvecs} elf32_le_vec elf32_be_vec" |
||
1542 | ;; |
||
1543 | esac |
||
1544 | |||
1545 | # If we support Intel MCU target, then add support for bfd_iamcu_arch. |
||
1546 | case "${targ_defvec} ${targ_selvecs}" in |
||
1547 | *iamcu_elf32*) |
||
1548 | targ_archs="$targ_archs bfd_iamcu_arch" |
||
1549 | ;; |
||
1550 | esac |
||
1551 | |||
1552 | case "${targ}" in |
||
1553 | mipsisa32r6* | mipsisa64r6*) |
||
1554 | targ_cflags="$targ_cflags -DMIPS_DEFAULT_R6=1" |
||
1555 | ;; |
||
1556 | esac |