Rev 8 | Details | Compare with Previous | 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 | ;; |
||
8 | pmbaty | 250 | # Pierre-Marie Baty -- added aarch64 QNX case. Reminder: |
251 | # targ_defvec Default vector for this target |
||
252 | # targ_selvecs Vectors to build for this target |
||
253 | # targ64_selvecs Vectors to build if --enable-64-bit-bfd is given or if host is 64 bit |
||
254 | # targ_archs Architectures for this target |
||
255 | # targ_cflags $(CFLAGS) for this target (FIXME: pretty bogus) |
||
256 | # targ_underscore Whether underscores are used: yes or no |
||
1 | pmbaty | 257 | aarch64-*-nto-qnx*) |
258 | targ_defvec=aarch64_elf64_le_vec |
||
259 | 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" |
||
260 | want64=true |
||
261 | ;; |
||
262 | aarch64-*-pe* | aarch64-*-mingw*) |
||
263 | targ_defvec=aarch64_pe_le_vec |
||
264 | 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" |
||
265 | want64=true |
||
266 | targ_underscore=no |
||
267 | ;; |
||
268 | aarch64_be-*-elf) |
||
269 | targ_defvec=aarch64_elf64_be_vec |
||
270 | targ_selvecs="aarch64_elf64_le_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_be_vec arm_elf32_le_vec" |
||
271 | want64=true |
||
272 | ;; |
||
273 | aarch64-*-freebsd*) |
||
274 | targ_defvec=aarch64_elf64_le_vec |
||
275 | targ_selvecs="aarch64_elf64_be_vec arm_elf32_le_vec arm_elf32_be_vec" |
||
276 | want64=true |
||
277 | ;; |
||
278 | aarch64-*-openbsd*) |
||
279 | targ_defvec=aarch64_elf64_le_vec |
||
280 | targ_selvecs="aarch64_elf64_be_vec arm_elf32_le_vec arm_elf32_be_vec" |
||
281 | want64=true |
||
282 | ;; |
||
283 | aarch64-*-fuchsia*) |
||
284 | targ_defvec=aarch64_elf64_le_vec |
||
285 | targ_selvecs="aarch64_elf64_be_vec arm_elf32_le_vec arm_elf32_be_vec" |
||
286 | want64=true |
||
287 | ;; |
||
288 | aarch64-*-cloudabi*) |
||
289 | targ_defvec=aarch64_elf64_le_cloudabi_vec |
||
290 | targ_selvecs=aarch64_elf64_be_cloudabi_vec |
||
291 | want64=true |
||
292 | ;; |
||
293 | aarch64-*-haiku*) |
||
294 | targ_defvec=aarch64_elf64_le_vec |
||
295 | targ_selvecs="aarch64_elf64_be_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_le_vec arm_elf32_be_vec" |
||
296 | want64=true |
||
297 | ;; |
||
298 | aarch64-*-linux* | aarch64-*-netbsd* | aarch64-*-nto*) |
||
299 | targ_defvec=aarch64_elf64_le_vec |
||
300 | 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" |
||
301 | want64=true |
||
302 | ;; |
||
303 | aarch64_be-*-linux* | aarch64_be-*-netbsd*) |
||
304 | targ_defvec=aarch64_elf64_be_vec |
||
305 | targ_selvecs="aarch64_elf64_le_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_be_vec arm_elf32_le_vec" |
||
306 | want64=true |
||
307 | ;; |
||
308 | alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu) |
||
309 | targ_defvec=alpha_elf64_fbsd_vec |
||
310 | targ_selvecs="alpha_elf64_vec alpha_ecoff_le_vec" |
||
311 | want64=true |
||
312 | # FreeBSD <= 4.0 supports only the old nonstandard way of ABI labelling. |
||
313 | case "${targ}" in |
||
314 | alpha*-*-freebsd3* | alpha*-*-freebsd4 | alpha*-*-freebsd4.0*) |
||
315 | targ_cflags=-DOLD_FREEBSD_ABI_LABEL ;; |
||
316 | esac |
||
317 | ;; |
||
318 | alpha*-*-netbsd* | alpha*-*-openbsd*) |
||
319 | targ_defvec=alpha_elf64_vec |
||
320 | targ_selvecs=alpha_ecoff_le_vec |
||
321 | want64=true |
||
322 | ;; |
||
323 | alpha*-*-linux*ecoff*) |
||
324 | targ_defvec=alpha_ecoff_le_vec |
||
325 | targ_selvecs=alpha_elf64_vec |
||
326 | want64=true |
||
327 | ;; |
||
328 | alpha*-*-linux-* | alpha*-*-elf*) |
||
329 | targ_defvec=alpha_elf64_vec |
||
330 | targ_selvecs=alpha_ecoff_le_vec |
||
331 | want64=true |
||
332 | ;; |
||
333 | alpha*-*-*vms*) |
||
334 | targ_defvec=alpha_vms_vec |
||
335 | targ_selvecs=alpha_vms_lib_txt_vec |
||
336 | want64=true |
||
337 | ;; |
||
338 | alpha*-*-*) |
||
339 | targ_defvec=alpha_ecoff_le_vec |
||
340 | want64=true |
||
341 | ;; |
||
342 | amdgcn-*-*) |
||
343 | targ_defvec=amdgcn_elf64_le_vec |
||
344 | want64=true |
||
345 | ;; |
||
346 | ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu) |
||
347 | targ_defvec=ia64_elf64_le_vec |
||
348 | targ_selvecs="ia64_elf64_be_vec ia64_pei_vec" |
||
349 | want64=true |
||
350 | ;; |
||
351 | ia64*-*-hpux*) |
||
352 | targ_defvec=ia64_elf32_hpux_be_vec |
||
353 | targ_selvecs="ia64_elf64_hpux_be_vec" |
||
354 | want64=true |
||
355 | ;; |
||
356 | ia64*-*-*vms*) |
||
357 | targ_defvec=ia64_elf64_vms_vec |
||
358 | targ_selvecs=alpha_vms_lib_txt_vec |
||
359 | want64=true |
||
360 | ;; |
||
361 | #endif /* BFD64 */ |
||
362 | |||
363 | am33_2.0-*-linux*) |
||
364 | targ_defvec=am33_elf32_linux_vec |
||
365 | ;; |
||
366 | |||
367 | arc*eb-*-elf* | arc*eb-*-linux*) |
||
368 | targ_defvec=arc_elf32_be_vec |
||
369 | targ_selvecs=arc_elf32_le_vec |
||
370 | ;; |
||
371 | |||
372 | arc*-*-elf* | arc*-*-linux*) |
||
373 | targ_defvec=arc_elf32_le_vec |
||
374 | targ_selvecs=arc_elf32_be_vec |
||
375 | ;; |
||
376 | |||
377 | arm-*-darwin*) |
||
378 | targ_defvec=arm_mach_o_vec |
||
379 | targ_selvecs="mach_o_le_vec mach_o_be_vec mach_o_fat_vec" |
||
380 | targ_archs="$targ_archs bfd_i386_arch bfd_powerpc_arch bfd_rs6000_arch" |
||
381 | ;; |
||
382 | arm-*-fuchsia*) |
||
383 | targ_defvec=arm_elf32_le_vec |
||
384 | targ_selvecs="arm_elf32_be_vec" |
||
385 | ;; |
||
386 | arm*-*-haiku*) |
||
387 | targ_defvec=arm_elf32_le_vec |
||
388 | 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" |
||
389 | ;; |
||
390 | arm-*-nacl*) |
||
391 | targ_defvec=arm_elf32_nacl_le_vec |
||
392 | targ_selvecs="arm_elf32_nacl_be_vec" |
||
393 | ;; |
||
394 | armeb-*-nacl*) |
||
395 | targ_defvec=arm_elf32_nacl_be_vec |
||
396 | targ_selvecs="arm_elf32_nacl_le_vec" |
||
397 | ;; |
||
398 | armeb-*-netbsd*) |
||
399 | targ_defvec=arm_elf32_be_vec |
||
400 | targ_selvecs="arm_elf32_le_vec" |
||
401 | ;; |
||
402 | arm-*-netbsd* | arm-*-openbsd*) |
||
403 | targ_defvec=arm_elf32_le_vec |
||
404 | targ_selvecs="arm_elf32_be_vec" |
||
405 | ;; |
||
406 | arm-*-nto* | nto*arm*) |
||
407 | targ_defvec=arm_elf32_le_vec |
||
408 | targ_selvecs=arm_elf32_be_vec |
||
409 | targ_cflags=-D__QNXTARGET__ |
||
410 | ;; |
||
411 | arm-wince-pe | arm-*-wince | arm*-*-mingw32ce* | arm*-*-cegcc*) |
||
412 | targ_defvec=arm_pe_wince_le_vec |
||
413 | targ_selvecs="arm_pe_wince_le_vec arm_pe_wince_be_vec arm_pei_wince_le_vec arm_pei_wince_be_vec" |
||
414 | targ_underscore=no |
||
415 | targ_cflags="-DARM_WINCE -DARM_COFF_BUGFIX" |
||
416 | ;; |
||
417 | arm-*-pe*) |
||
418 | targ_defvec=arm_pe_le_vec |
||
419 | targ_selvecs="arm_pe_le_vec arm_pe_be_vec arm_pei_le_vec arm_pei_be_vec" |
||
420 | targ_underscore=yes |
||
421 | ;; |
||
422 | arm-*-phoenix*) |
||
423 | targ_defvec=arm_elf32_le_vec |
||
424 | targ_selvecs=arm_elf32_be_vec |
||
425 | ;; |
||
426 | armeb-*-elf | arm*b-*-freebsd* | arm*b-*-linux-* | armeb-*-eabi*) |
||
427 | targ_defvec=arm_elf32_be_vec |
||
428 | targ_selvecs=arm_elf32_le_vec |
||
429 | ;; |
||
430 | arm-*-kaos*) |
||
431 | targ_defvec=arm_elf32_le_vec |
||
432 | targ_selvecs=arm_elf32_be_vec |
||
433 | ;; |
||
434 | arm-*-elf | arm*-*-freebsd* | arm*-*-linux-* | arm*-*-conix* | \ |
||
435 | arm*-*-uclinux* | arm-*-kfreebsd*-gnu | \ |
||
436 | arm*-*-eabi* | arm-*-rtems* | arm*-*-uclinuxfdpiceabi) |
||
437 | targ_defvec=arm_elf32_le_vec |
||
438 | targ_selvecs="arm_elf32_fdpic_le_vec arm_elf32_be_vec arm_elf32_fdpic_be_vec" |
||
439 | ;; |
||
440 | arm*-*-vxworks | arm*-*-windiss) |
||
441 | targ_defvec=arm_elf32_vxworks_le_vec |
||
442 | targ_selvecs=arm_elf32_vxworks_be_vec |
||
443 | ;; |
||
444 | arm9e-*-elf) |
||
445 | targ_defvec=arm_elf32_le_vec |
||
446 | targ_selvecs=arm_elf32_be_vec |
||
447 | ;; |
||
448 | |||
449 | avr-*-*) |
||
450 | targ_defvec=avr_elf32_vec |
||
451 | ;; |
||
452 | |||
453 | bfin-*-*) |
||
454 | targ_defvec=bfin_elf32_vec |
||
455 | targ_selvecs=bfin_elf32_fdpic_vec |
||
456 | targ_underscore=yes |
||
457 | ;; |
||
458 | |||
459 | c30-*-*coff* | tic30-*-*coff*) |
||
460 | targ_defvec=tic30_coff_vec |
||
461 | ;; |
||
462 | |||
463 | c4x-*-*coff* | tic4x-*-*coff*) |
||
464 | targ_defvec=tic4x_coff1_vec |
||
465 | targ_selvecs="tic4x_coff1_beh_vec tic4x_coff2_vec tic4x_coff2_beh_vec tic4x_coff0_vec tic4x_coff0_beh_vec" |
||
466 | targ_underscore=yes |
||
467 | ;; |
||
468 | |||
469 | c54x*-*-*coff* | tic54x-*-*coff*) |
||
470 | targ_defvec=tic54x_coff1_vec |
||
471 | targ_selvecs="tic54x_coff1_beh_vec tic54x_coff2_vec tic54x_coff2_beh_vec tic54x_coff0_vec tic54x_coff0_beh_vec" |
||
472 | targ_underscore=yes |
||
473 | ;; |
||
474 | |||
475 | cr16-*-elf* | cr16*-*-uclinux*) |
||
476 | targ_defvec=cr16_elf32_vec |
||
477 | targ_underscore=yes |
||
478 | ;; |
||
479 | |||
480 | cris-*-* | crisv32-*-*) |
||
481 | targ_defvec=cris_aout_vec |
||
482 | targ_selvecs="cris_elf32_us_vec cris_elf32_vec" |
||
483 | case "${targ}" in |
||
484 | *-*-linux*) ;; |
||
485 | *) targ_underscore=yes ;; |
||
486 | esac |
||
487 | want64=true |
||
488 | ;; |
||
489 | |||
490 | crx-*-elf*) |
||
491 | targ_defvec=crx_elf32_vec |
||
492 | targ_underscore=yes |
||
493 | ;; |
||
494 | |||
495 | csky-*-elf* | csky-*-linux* ) |
||
496 | targ_defvec=csky_elf32_le_vec |
||
497 | targ_selvecs="csky_elf32_be_vec csky_elf32_le_vec" |
||
498 | ;; |
||
499 | |||
500 | d10v-*-*) |
||
501 | targ_defvec=d10v_elf32_vec |
||
502 | ;; |
||
503 | |||
504 | dlx-*-elf*) |
||
505 | targ_defvec=dlx_elf32_be_vec |
||
506 | targ_selvecs="dlx_elf32_be_vec" |
||
507 | ;; |
||
508 | |||
509 | d30v-*-*) |
||
510 | targ_defvec=d30v_elf32_vec |
||
511 | ;; |
||
512 | |||
513 | #ifdef BFD64 |
||
514 | bpf-*-none) |
||
515 | targ_defvec=bpf_elf64_le_vec |
||
516 | targ_selvecs=bpf_elf64_be_vec |
||
517 | targ_underscore=yes |
||
518 | ;; |
||
519 | #endif |
||
520 | |||
521 | epiphany-*-*) |
||
522 | targ_defvec=epiphany_elf32_vec |
||
523 | targ_underscore=yes |
||
524 | ;; |
||
525 | |||
526 | fido-*-elf* ) |
||
527 | targ_defvec=m68k_elf32_vec |
||
528 | ;; |
||
529 | |||
530 | fr30-*-elf) |
||
531 | targ_defvec=fr30_elf32_vec |
||
532 | ;; |
||
533 | |||
534 | frv-*-elf) |
||
535 | targ_defvec=frv_elf32_vec |
||
536 | targ_selvecs=frv_elf32_fdpic_vec |
||
537 | ;; |
||
538 | |||
539 | frv-*-*linux*) |
||
540 | targ_defvec=frv_elf32_fdpic_vec |
||
541 | targ_selvecs=frv_elf32_vec |
||
542 | ;; |
||
543 | |||
544 | moxie-*-elf | moxie-*-rtems* | moxie-*-uclinux) |
||
545 | targ_defvec=moxie_elf32_be_vec |
||
546 | targ_selvecs=moxie_elf32_le_vec |
||
547 | ;; |
||
548 | |||
549 | moxie-*-moxiebox*) |
||
550 | targ_defvec=moxie_elf32_le_vec |
||
551 | ;; |
||
552 | |||
553 | h8300*-*-elf | h8300*-*-rtems*) |
||
554 | targ_defvec=h8300_elf32_vec |
||
555 | targ_underscore=yes |
||
556 | ;; |
||
557 | |||
558 | h8300*-*-linux*) |
||
559 | targ_defvec=h8300_elf32_linux_vec |
||
560 | ;; |
||
561 | |||
562 | #ifdef BFD64 |
||
563 | hppa*64*-*-linux-*) |
||
564 | targ_defvec=hppa_elf64_linux_vec |
||
565 | targ_selvecs=hppa_elf64_vec |
||
566 | want64=true |
||
567 | ;; |
||
568 | hppa*64*-*-hpux11*) |
||
569 | targ_defvec=hppa_elf64_vec |
||
570 | targ_selvecs=hppa_elf64_linux_vec |
||
571 | targ_cflags=-DHPUX_LARGE_AR_IDS |
||
572 | want64=true |
||
573 | ;; |
||
574 | #endif |
||
575 | |||
576 | hppa*-*-linux-*) |
||
577 | targ_defvec=hppa_elf32_linux_vec |
||
578 | targ_selvecs=hppa_elf32_vec |
||
579 | ;; |
||
580 | hppa*-*-netbsd*) |
||
581 | targ_defvec=hppa_elf32_nbsd_vec |
||
582 | targ_selvecs="hppa_elf32_vec hppa_elf32_linux_vec" |
||
583 | ;; |
||
584 | hppa*-*-*elf* | hppa*-*-lites* | hppa*-*-sysv4* | hppa*-*-openbsd*) |
||
585 | targ_defvec=hppa_elf32_vec |
||
586 | targ_selvecs=hppa_elf32_linux_vec |
||
587 | ;; |
||
588 | |||
589 | hppa*-*-bsd*) |
||
590 | targ_defvec=hppa_som_vec |
||
591 | targ_selvecs=hppa_elf32_vec |
||
592 | ;; |
||
593 | hppa*-*-hpux* | hppa*-*-hiux* | hppa*-*-mpeix*) |
||
594 | targ_defvec=hppa_som_vec |
||
595 | ;; |
||
596 | hppa*-*-osf*) |
||
597 | targ_defvec=hppa_som_vec |
||
598 | targ_selvecs=hppa_elf32_vec |
||
599 | ;; |
||
600 | |||
601 | i[3-7]86-*-elf* | i[3-7]86-*-rtems* | i[3-7]86-*-genode*) |
||
602 | targ_defvec=i386_elf32_vec |
||
603 | targ_selvecs="iamcu_elf32_vec i386_coff_vec" |
||
604 | ;; |
||
605 | i[3-7]86-*-solaris2*) |
||
606 | targ_defvec=i386_elf32_sol2_vec |
||
607 | targ_selvecs="iamcu_elf32_vec i386_coff_vec i386_pei_vec" |
||
608 | targ64_selvecs="x86_64_elf64_sol2_vec x86_64_pe_vec x86_64_pei_vec" |
||
609 | want64=true |
||
610 | ;; |
||
611 | #ifdef BFD64 |
||
612 | x86_64-*-solaris2*) |
||
613 | targ_defvec=i386_elf32_sol2_vec |
||
614 | targ_selvecs="x86_64_elf64_sol2_vec iamcu_elf32_vec i386_coff_vec i386_pei_vec x86_64_pe_vec x86_64_pei_vec" |
||
615 | want64=true |
||
616 | ;; |
||
617 | #endif |
||
618 | i[3-7]86-*-nto*) |
||
619 | targ_defvec=i386_elf32_vec |
||
620 | targ_selvecs="iamcu_elf32_vec i386_coff_vec" |
||
621 | ;; |
||
622 | i[3-7]86-*-aros*) |
||
623 | targ_defvec=i386_elf32_vec |
||
624 | targ_selvecs=iamcu_elf32_vec |
||
625 | ;; |
||
626 | i[3-7]86-*-dicos*) |
||
627 | targ_defvec=i386_elf32_vec |
||
628 | targ_selvecs=iamcu_elf32_vec |
||
629 | targ64_selvecs="x86_64_elf64_vec" |
||
630 | ;; |
||
631 | *-*-msdosdjgpp* | *-*-go32* ) |
||
632 | targ_defvec=i386_coff_go32_vec |
||
633 | targ_selvecs="i386_coff_go32stubbed_vec i386_aout_vec" |
||
634 | ;; |
||
635 | i[3-7]86-*-darwin* | i[3-7]86-*-macos10* | i[3-7]86-*-rhapsody*) |
||
636 | targ_defvec=i386_mach_o_vec |
||
637 | targ_selvecs="mach_o_le_vec mach_o_be_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec" |
||
638 | targ64_selvecs=x86_64_mach_o_vec |
||
639 | targ_archs="$targ_archs bfd_powerpc_arch bfd_rs6000_arch" |
||
640 | ;; |
||
641 | i[3-7]86-*-bsd*) |
||
642 | targ_defvec=i386_aout_bsd_vec |
||
643 | targ_underscore=yes |
||
644 | ;; |
||
645 | i[3-7]86-*-dragonfly*) |
||
646 | targ_defvec=i386_elf32_vec |
||
647 | targ_selvecs=iamcu_elf32_vec |
||
648 | targ64_selvecs="x86_64_elf64_vec" |
||
649 | ;; |
||
650 | i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu) |
||
651 | targ_defvec=i386_elf32_fbsd_vec |
||
652 | targ_selvecs="i386_elf32_vec iamcu_elf32_vec i386_pei_vec i386_coff_vec" |
||
653 | targ64_selvecs="x86_64_elf64_fbsd_vec x86_64_elf64_vec x86_64_pe_vec x86_64_pei_vec" |
||
654 | # FreeBSD <= 4.0 supports only the old nonstandard way of ABI labelling. |
||
655 | case "${targ}" in |
||
656 | i[3-7]86-*-freebsd3* | i[3-7]86-*-freebsd4 | i[3-7]86-*-freebsd4.0*) |
||
657 | targ_cflags=-DOLD_FREEBSD_ABI_LABEL ;; |
||
658 | esac |
||
659 | ;; |
||
660 | i[3-7]86-*-netbsd* | i[3-7]86-*-knetbsd*-gnu) |
||
661 | targ_defvec=i386_elf32_vec |
||
662 | targ_selvecs="iamcu_elf32_vec" |
||
663 | targ64_selvecs="x86_64_elf64_vec" |
||
664 | ;; |
||
665 | i[3-7]86-*-openbsd*) |
||
666 | targ_defvec=i386_elf32_vec |
||
667 | targ_selvecs="iamcu_elf32_vec" |
||
668 | ;; |
||
669 | i[3-7]86-*-linux-*) |
||
670 | targ_defvec=i386_elf32_vec |
||
671 | targ_selvecs="iamcu_elf32_vec i386_pei_vec" |
||
672 | targ64_selvecs="x86_64_elf64_vec x86_64_elf32_vec x86_64_pe_vec x86_64_pei_vec" |
||
673 | ;; |
||
674 | i[3-7]86-*-redox*) |
||
675 | targ_defvec=i386_elf32_vec |
||
676 | targ_selvecs= |
||
677 | targ64_selvecs=x86_64_elf64_vec |
||
678 | ;; |
||
679 | #ifdef BFD64 |
||
680 | x86_64-*-cloudabi*) |
||
681 | targ_defvec=x86_64_elf64_cloudabi_vec |
||
682 | want64=true |
||
683 | ;; |
||
684 | x86_64-*-darwin*) |
||
685 | targ_defvec=x86_64_mach_o_vec |
||
686 | 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" |
||
687 | targ_archs="$targ_archs bfd_powerpc_arch bfd_rs6000_arch" |
||
688 | want64=true |
||
689 | ;; |
||
690 | x86_64-*-dicos*) |
||
691 | targ_defvec=x86_64_elf64_vec |
||
692 | targ_selvecs="i386_elf32_vec iamcu_elf32_vec" |
||
693 | want64=true |
||
694 | ;; |
||
695 | x86_64-*-elf* | x86_64-*-rtems* | x86_64-*-fuchsia | x86_64-*-genode*) |
||
696 | targ_defvec=x86_64_elf64_vec |
||
697 | targ_selvecs="i386_elf32_vec iamcu_elf32_vec x86_64_elf32_vec" |
||
698 | case "${targ}" in |
||
699 | x86_64-*-rtems*) |
||
700 | targ_selvecs="${targ_selvecs} x86_64_pe_vec x86_64_pei_vec" |
||
701 | esac |
||
702 | want64=true |
||
703 | ;; |
||
8 | pmbaty | 704 | # Pierre-Marie Baty -- added x86_64 QNX case. Reminder: |
705 | # targ_defvec Default vector for this target |
||
706 | # targ_selvecs Vectors to build for this target |
||
707 | # targ64_selvecs Vectors to build if --enable-64-bit-bfd is given or if host is 64 bit |
||
708 | # targ_archs Architectures for this target |
||
709 | # targ_cflags $(CFLAGS) for this target (FIXME: pretty bogus) |
||
710 | # targ_underscore Whether underscores are used: yes or no |
||
1 | pmbaty | 711 | x86_64-*-nto-qnx*) |
712 | targ_defvec=x86_64_elf64_vec |
||
19 | pmbaty | 713 | targ_selvecs="i386_elf32_vec iamcu_elf32_vec x86_64_elf32_vec i386_pei_vec x86_64_pei_vec" |
1 | pmbaty | 714 | targ_cflags=-D__QNXTARGET__ |
715 | want64=true |
||
716 | ;; |
||
717 | x86_64-*-dragonfly*) |
||
718 | targ_defvec=x86_64_elf64_vec |
||
719 | targ_selvecs="i386_elf32_vec iamcu_elf32_vec" |
||
720 | want64=true |
||
721 | ;; |
||
722 | x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu) |
||
723 | targ_defvec=x86_64_elf64_fbsd_vec |
||
724 | 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" |
||
725 | want64=true |
||
726 | ;; |
||
727 | x86_64-*-haiku*) |
||
728 | targ_defvec=x86_64_elf64_vec |
||
729 | targ_selvecs="i386_elf32_vec" |
||
730 | want64=true |
||
731 | ;; |
||
732 | x86_64-*-netbsd* | x86_64-*-openbsd*) |
||
733 | targ_defvec=x86_64_elf64_vec |
||
734 | targ_selvecs="i386_elf32_vec iamcu_elf32_vec i386_coff_vec i386_pei_vec x86_64_pe_vec x86_64_pei_vec" |
||
735 | want64=true |
||
736 | ;; |
||
737 | x86_64-*-linux-*) |
||
738 | targ_defvec=x86_64_elf64_vec |
||
739 | targ_selvecs="i386_elf32_vec iamcu_elf32_vec x86_64_elf32_vec i386_pei_vec x86_64_pe_vec x86_64_pei_vec" |
||
740 | want64=true |
||
741 | ;; |
||
742 | x86_64-*-mingw* | x86_64-*-pe | x86_64-*-pep | x86_64-*-cygwin) |
||
743 | targ_defvec=x86_64_pe_vec |
||
744 | 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" |
||
745 | want64=true |
||
746 | targ_underscore=no |
||
747 | ;; |
||
748 | x86_64-*-rdos*) |
||
749 | targ_defvec=x86_64_elf64_vec |
||
750 | want64=true |
||
751 | ;; |
||
752 | x86_64-*-redox*) |
||
753 | targ_defvec=x86_64_elf64_vec |
||
754 | targ_selvecs=i386_elf32_vec |
||
755 | want64=true |
||
756 | ;; |
||
757 | x86_64-*-gnu*) |
||
758 | targ_defvec=x86_64_elf64_vec |
||
759 | targ_selvecs="i386_elf32_vec iamcu_elf32_vec x86_64_elf32_vec" |
||
760 | want64=true |
||
761 | ;; |
||
762 | #endif |
||
763 | i[3-7]86-*-lynxos*) |
||
764 | targ_defvec=i386_elf32_vec |
||
765 | targ_selvecs="iamcu_elf32_vec i386_coff_lynx_vec i386_aout_lynx_vec" |
||
766 | ;; |
||
767 | i[3-7]86-*-gnu*) |
||
768 | targ_defvec=i386_elf32_vec |
||
769 | targ_selvecs=iamcu_elf32_vec |
||
770 | ;; |
||
771 | i[3-7]86-*-msdos*) |
||
772 | targ_defvec=i386_aout_vec |
||
773 | targ_selvecs=i386_msdos_vec |
||
774 | ;; |
||
775 | i[3-7]86-*-moss*) |
||
776 | targ_defvec=i386_elf32_vec |
||
777 | targ_selvecs="iamcu_elf32_vec i386_msdos_vec i386_aout_vec" |
||
778 | ;; |
||
779 | i[3-7]86-*-beospe*) |
||
780 | targ_defvec=i386_pe_vec |
||
781 | targ_selvecs="i386_pe_vec i386_pei_vec" |
||
782 | ;; |
||
783 | i[3-7]86-*-beos*) |
||
784 | targ_defvec=i386_elf32_vec |
||
785 | targ_selvecs="iamcu_elf32_vec i386_pe_vec i386_pei_vec" |
||
786 | ;; |
||
787 | i[3-7]86-*-haiku*) |
||
788 | targ_defvec=i386_elf32_vec |
||
789 | targ_selvecs="i386_pei_vec" |
||
790 | ;; |
||
791 | i[3-7]86-*-interix*) |
||
792 | targ_defvec=i386_pei_vec |
||
793 | targ_selvecs="i386_pe_vec" |
||
794 | # FIXME: This should eventually be checked at runtime. |
||
795 | targ_cflags=-DSTRICT_PE_FORMAT |
||
796 | ;; |
||
797 | i[3-7]86-*-rdos*) |
||
798 | targ_defvec=i386_elf32_vec |
||
799 | targ_selvecs="iamcu_elf32_vec i386_coff_vec" |
||
800 | ;; |
||
801 | i[3-7]86-*-mingw32* | i[3-7]86-*-cygwin* | i[3-7]86-*-winnt | i[3-7]86-*-pe) |
||
802 | targ_defvec=i386_pe_vec |
||
803 | targ_selvecs="i386_pe_vec i386_pe_big_vec i386_pei_vec i386_elf32_vec iamcu_elf32_vec pdb_vec" |
||
804 | targ_underscore=yes |
||
805 | ;; |
||
806 | i[3-7]86-*-vxworks*) |
||
807 | targ_defvec=i386_elf32_vxworks_vec |
||
808 | targ_underscore=yes |
||
809 | ;; |
||
810 | |||
811 | ia16-*-elf) |
||
812 | targ_defvec=i386_elf32_vec |
||
813 | targ_selvecs="i386_msdos_vec i386_aout_vec" |
||
814 | ;; |
||
815 | |||
816 | ip2k-*-elf) |
||
817 | targ_defvec=ip2k_elf32_vec |
||
818 | targ_underscore=yes |
||
819 | ;; |
||
820 | |||
821 | iq2000-*-elf) |
||
822 | targ_defvec=iq2000_elf32_vec |
||
823 | ;; |
||
824 | |||
825 | lm32-*-elf | lm32-*-rtems*) |
||
826 | targ_defvec=lm32_elf32_vec |
||
827 | targ_selvecs=lm32_elf32_fdpic_vec |
||
828 | ;; |
||
829 | |||
830 | lm32-*-*linux*) |
||
831 | targ_defvec=lm32_elf32_fdpic_vec |
||
832 | targ_selvecs=lm32_elf32_vec |
||
833 | ;; |
||
834 | |||
835 | m32c-*-elf) |
||
836 | targ_defvec=m32c_elf32_vec |
||
837 | targ_underscore=yes |
||
838 | ;; |
||
839 | |||
840 | m32r*le-*-linux*) |
||
841 | targ_defvec=m32r_elf32_linux_le_vec |
||
842 | targ_selvecs="m32r_elf32_linux_vec m32r_elf32_linux_le_vec" |
||
843 | ;; |
||
844 | m32r*-*-linux*) |
||
845 | targ_defvec=m32r_elf32_linux_vec |
||
846 | targ_selvecs="m32r_elf32_linux_vec m32r_elf32_linux_le_vec" |
||
847 | ;; |
||
848 | m32r*le-*-*) |
||
849 | targ_defvec=m32r_elf32_le_vec |
||
850 | targ_selvecs="m32r_elf32_vec m32r_elf32_le_vec" |
||
851 | ;; |
||
852 | m32r-*-*) |
||
853 | targ_defvec=m32r_elf32_vec |
||
854 | ;; |
||
855 | |||
856 | m68*-*-haiku*) |
||
857 | targ_defvec=m68k_elf32_vec |
||
858 | ;; |
||
859 | m68hc11-*-* | m6811-*-*) |
||
860 | targ_defvec=m68hc11_elf32_vec |
||
861 | targ_selvecs="m68hc11_elf32_vec m68hc12_elf32_vec" |
||
862 | ;; |
||
863 | m68hc12-*-* | m6812-*-*) |
||
864 | targ_defvec=m68hc12_elf32_vec |
||
865 | targ_selvecs="m68hc11_elf32_vec m68hc12_elf32_vec" |
||
866 | ;; |
||
867 | |||
868 | m68*-*-*) |
||
869 | targ_defvec=m68k_elf32_vec |
||
870 | ;; |
||
871 | |||
872 | s12z-*-*) |
||
873 | targ_defvec=s12z_elf32_vec |
||
874 | ;; |
||
875 | mcore-*-elf) |
||
876 | targ_defvec=mcore_elf32_be_vec |
||
877 | targ_selvecs="mcore_elf32_be_vec mcore_elf32_le_vec" |
||
878 | ;; |
||
879 | mcore-*-pe) |
||
880 | targ_defvec=mcore_pe_be_vec |
||
881 | targ_selvecs="mcore_pe_be_vec mcore_pe_le_vec mcore_pei_be_vec mcore_pei_le_vec" |
||
882 | ;; |
||
883 | |||
884 | mep-*-elf) |
||
885 | targ_defvec=mep_elf32_vec |
||
886 | targ_selvecs=mep_elf32_le_vec |
||
887 | ;; |
||
888 | |||
889 | metag-*-*) |
||
890 | targ_defvec=metag_elf32_vec |
||
891 | targ_underscore=yes |
||
892 | ;; |
||
893 | |||
894 | microblazeel*-*) |
||
895 | targ_defvec=microblaze_elf32_le_vec |
||
896 | targ_selvecs=microblaze_elf32_vec |
||
897 | ;; |
||
898 | |||
899 | microblaze*-*) |
||
900 | targ_defvec=microblaze_elf32_vec |
||
901 | targ_selvecs=microblaze_elf32_le_vec |
||
902 | ;; |
||
903 | |||
904 | #ifdef BFD64 |
||
905 | mips*el-*-netbsd*) |
||
906 | targ_defvec=mips_elf32_trad_le_vec |
||
907 | 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" |
||
908 | ;; |
||
909 | mips*-*-netbsd*) |
||
910 | targ_defvec=mips_elf32_trad_be_vec |
||
911 | 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" |
||
912 | ;; |
||
913 | mips*el-*-haiku*) |
||
914 | targ_defvec=mips_elf32_le_vec |
||
915 | targ_selvecs="mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_le_vec mips_ecoff_be_vec" |
||
916 | ;; |
||
917 | mips*-*-irix6*) |
||
918 | targ_defvec=mips_elf32_n_be_vec |
||
919 | targ_selvecs="mips_elf32_n_le_vec mips_elf32_be_vec mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec" |
||
920 | ;; |
||
921 | mips64*-ps2-elf*) |
||
922 | targ_defvec=mips_elf32_n_le_vec |
||
923 | 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" |
||
924 | ;; |
||
925 | mips*-ps2-elf*) |
||
926 | targ_defvec=mips_elf32_le_vec |
||
927 | targ_selvecs="mips_elf32_be_vec mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec" |
||
928 | ;; |
||
929 | mips*-*-irix5*) |
||
930 | targ_defvec=mips_elf32_be_vec |
||
931 | targ_selvecs="mips_elf32_le_vec mips_ecoff_be_vec mips_ecoff_le_vec" |
||
932 | ;; |
||
933 | mips*el-*-vxworks*) |
||
934 | targ_defvec=mips_elf32_vxworks_le_vec |
||
935 | targ_selvecs="mips_elf32_le_vec mips_elf32_vxworks_be_vec mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec" |
||
936 | ;; |
||
937 | mips*-*-vxworks*) |
||
938 | targ_defvec=mips_elf32_vxworks_be_vec |
||
939 | targ_selvecs="mips_elf32_be_vec mips_elf32_vxworks_le_vec mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec" |
||
940 | ;; |
||
941 | mips*el-sde-elf*) |
||
942 | targ_defvec=mips_elf32_trad_le_vec |
||
943 | 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" |
||
944 | ;; |
||
945 | mips*-sde-elf* | mips*-mti-elf* | mips*-img-elf*) |
||
946 | targ_defvec=mips_elf32_trad_be_vec |
||
947 | 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" |
||
948 | ;; |
||
949 | mips*el-*-elf* | mips*-*-chorus*) |
||
950 | targ_defvec=mips_elf32_le_vec |
||
951 | targ_selvecs="mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec" |
||
952 | ;; |
||
953 | mips*-*-elf* | mips*-*-rtems* | mips*-*-windiss | mips*-*-none) |
||
954 | targ_defvec=mips_elf32_be_vec |
||
955 | targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec" |
||
956 | ;; |
||
957 | mips64*-*-openbsd*) |
||
958 | targ_defvec=mips_elf64_trad_be_vec |
||
959 | 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" |
||
960 | ;; |
||
961 | mips*el-*-openbsd*) |
||
962 | targ_defvec=mips_elf32_le_vec |
||
963 | targ_selvecs="mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_le_vec mips_ecoff_be_vec" |
||
964 | ;; |
||
965 | mips*-*-openbsd*) |
||
966 | targ_defvec=mips_elf32_be_vec |
||
967 | targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_be_vec mips_ecoff_le_vec" |
||
968 | ;; |
||
969 | mips64*el-*-linux*-gnuabi64) |
||
970 | targ_defvec=mips_elf64_trad_le_vec |
||
971 | 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" |
||
972 | want64=true |
||
973 | ;; |
||
974 | mips64*el-*-linux*) |
||
975 | targ_defvec=mips_elf32_ntrad_le_vec |
||
976 | 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" |
||
977 | ;; |
||
978 | mips64*-*-linux*-gnuabi64) |
||
979 | targ_defvec=mips_elf64_trad_be_vec |
||
980 | 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" |
||
981 | want64=true |
||
982 | ;; |
||
983 | mips64*-*-linux*) |
||
984 | targ_defvec=mips_elf32_ntrad_be_vec |
||
985 | 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" |
||
986 | ;; |
||
987 | mips*el-*-linux*) |
||
988 | targ_defvec=mips_elf32_trad_le_vec |
||
989 | 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" |
||
990 | ;; |
||
991 | mips*-*-linux*) |
||
992 | targ_defvec=mips_elf32_trad_be_vec |
||
993 | 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" |
||
994 | ;; |
||
995 | mips64*el-*-freebsd* | mips64*el-*-kfreebsd*-gnu) |
||
996 | # FreeBSD vectors |
||
997 | targ_defvec=mips_elf32_ntradfbsd_le_vec |
||
998 | 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" |
||
999 | # Generic vectors |
||
1000 | 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" |
||
1001 | ;; |
||
1002 | mips64*-*-freebsd* | mips64*-*-kfreebsd*-gnu) |
||
1003 | # FreeBSD vectors |
||
1004 | targ_defvec=mips_elf32_ntradfbsd_be_vec |
||
1005 | 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" |
||
1006 | # Generic vectors |
||
1007 | 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" |
||
1008 | ;; |
||
1009 | mips*el-*-freebsd* | mips*el-*-kfreebsd*-gnu) |
||
1010 | # FreeBSD vectors |
||
1011 | targ_defvec=mips_elf32_tradfbsd_le_vec |
||
1012 | 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" |
||
1013 | # Generic vectors |
||
1014 | 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" |
||
1015 | ;; |
||
1016 | mips*-*-freebsd* | mips*-*-kfreebsd*-gnu) |
||
1017 | # FreeBSD vectors |
||
1018 | targ_defvec=mips_elf32_tradfbsd_be_vec |
||
1019 | 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" |
||
1020 | # Generic vectors |
||
1021 | 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" |
||
1022 | ;; |
||
1023 | mmix-*-*) |
||
1024 | targ_defvec=mmix_elf64_vec |
||
1025 | targ_selvecs=mmix_mmo_vec |
||
1026 | want64=true |
||
1027 | ;; |
||
1028 | #endif |
||
1029 | mn10200-*-*) |
||
1030 | targ_defvec=mn10200_elf32_vec |
||
1031 | targ_underscore=yes |
||
1032 | ;; |
||
1033 | |||
1034 | mn10300-*-*) |
||
1035 | targ_defvec=mn10300_elf32_vec |
||
1036 | targ_underscore=yes |
||
1037 | ;; |
||
1038 | |||
1039 | mt-*-elf) |
||
1040 | targ_defvec=mt_elf32_vec |
||
1041 | ;; |
||
1042 | |||
1043 | msp430-*-*) |
||
1044 | targ_defvec=msp430_elf32_vec |
||
1045 | targ_selvecs=msp430_elf32_ti_vec |
||
1046 | ;; |
||
1047 | |||
1048 | nds32*le-*-linux*) |
||
1049 | targ_defvec=nds32_elf32_linux_le_vec |
||
1050 | targ_selvecs=nds32_elf32_linux_be_vec |
||
1051 | ;; |
||
1052 | |||
1053 | nds32*be-*-linux*) |
||
1054 | targ_defvec=nds32_elf32_linux_be_vec |
||
1055 | targ_selvecs=nds32_elf32_linux_le_vec |
||
1056 | ;; |
||
1057 | |||
1058 | nds32*le-*-*) |
||
1059 | targ_defvec=nds32_elf32_le_vec |
||
1060 | targ_selvecs=nds32_elf32_be_vec |
||
1061 | ;; |
||
1062 | |||
1063 | nds32*be-*-*) |
||
1064 | targ_defvec=nds32_elf32_be_vec |
||
1065 | targ_selvecs=nds32_elf32_le_vec |
||
1066 | ;; |
||
1067 | |||
1068 | #ifdef BFD64 |
||
1069 | nfp-*-*) |
||
1070 | targ_defvec=nfp_elf64_vec |
||
1071 | ;; |
||
1072 | #endif |
||
1073 | |||
1074 | ns32k-pc532-mach* | ns32k-pc532-ux*) |
||
1075 | targ_defvec=ns32k_aout_pc532mach_vec |
||
1076 | targ_underscore=yes |
||
1077 | ;; |
||
1078 | ns32k-*-lites* | ns32k-*-*bsd*) |
||
1079 | targ_defvec=ns32k_aout_pc532nbsd_vec |
||
1080 | targ_underscore=yes |
||
1081 | ;; |
||
1082 | |||
1083 | nios2eb-*-*) |
||
1084 | targ_defvec=nios2_elf32_be_vec |
||
1085 | targ_selvecs=nios2_elf32_le_vec |
||
1086 | ;; |
||
1087 | |||
1088 | nios2el-*-*) |
||
1089 | targ_defvec=nios2_elf32_le_vec |
||
1090 | targ_selvecs=nios2_elf32_be_vec |
||
1091 | ;; |
||
1092 | |||
1093 | nios2-*-*) |
||
1094 | targ_defvec=nios2_elf32_le_vec |
||
1095 | targ_selvecs=nios2_elf32_be_vec |
||
1096 | ;; |
||
1097 | |||
1098 | or1k-*-elf | or1k-*-linux* | or1k-*-rtems*) |
||
1099 | targ_defvec=or1k_elf32_vec |
||
1100 | ;; |
||
1101 | |||
1102 | or1knd-*-elf | or1knd-*-linux* | or1knd-*-rtems*) |
||
1103 | targ_defvec=or1k_elf32_vec |
||
1104 | ;; |
||
1105 | |||
1106 | pdp11-*-*) |
||
1107 | targ_defvec=pdp11_aout_vec |
||
1108 | targ_underscore=yes |
||
1109 | ;; |
||
1110 | |||
1111 | pj-*-*) |
||
1112 | targ_defvec=pj_elf32_vec |
||
1113 | targ_selvecs="pj_elf32_vec pj_elf32_le_vec" |
||
1114 | ;; |
||
1115 | |||
1116 | pjl-*-*) |
||
1117 | targ_defvec=pj_elf32_le_vec |
||
1118 | targ_selvecs="pj_elf32_le_vec pj_elf32_vec i386_elf32_vec iamcu_elf32_vec" |
||
1119 | ;; |
||
1120 | |||
1121 | powerpc-*-aix5.[01] | rs6000-*-aix5.[01]) |
||
1122 | targ_defvec=rs6000_xcoff_vec |
||
1123 | targ_selvecs="rs6000_xcoff64_aix_vec" |
||
1124 | want64=true |
||
1125 | ;; |
||
1126 | powerpc-*-haiku*) |
||
1127 | targ_defvec=powerpc_elf32_vec |
||
1128 | targ_selvecs="rs6000_xcoff_vec powerpc_elf32_le_vec pef_vec pef_xlib_vec powerpc_xcoff_vec powerpc_boot_vec" |
||
1129 | targ_cflags=-D__HAIKU_TARGET__ |
||
1130 | ;; |
||
1131 | #ifdef BFD64 |
||
1132 | powerpc64-*-aix5.[01]) |
||
1133 | targ_defvec=rs6000_xcoff64_aix_vec |
||
1134 | targ_selvecs="rs6000_xcoff_vec" |
||
1135 | want64=true |
||
1136 | ;; |
||
1137 | #endif |
||
1138 | powerpc-*-aix[5-9]* | rs6000-*-aix[5-9]*) |
||
1139 | targ_cflags=-DAIX_WEAK_SUPPORT |
||
1140 | targ_defvec=rs6000_xcoff_vec |
||
1141 | targ_selvecs="rs6000_xcoff64_aix_vec" |
||
1142 | want64=true |
||
1143 | ;; |
||
1144 | #ifdef BFD64 |
||
1145 | powerpc64-*-aix[5-9]*) |
||
1146 | targ_cflags=-DAIX_WEAK_SUPPORT |
||
1147 | targ_defvec=rs6000_xcoff64_aix_vec |
||
1148 | targ_selvecs="rs6000_xcoff_vec" |
||
1149 | want64=true |
||
1150 | ;; |
||
1151 | #endif |
||
1152 | |||
1153 | powerpc-*-aix* | powerpc-*-beos* | rs6000-*-*) |
||
1154 | targ_defvec=rs6000_xcoff_vec |
||
1155 | targ64_selvecs=rs6000_xcoff64_vec |
||
1156 | case "${targ}" in |
||
1157 | *-*-aix4.[3456789]* | *-*-aix[56789]*) |
||
1158 | want64=true;; |
||
1159 | *) |
||
1160 | targ_cflags=-DSMALL_ARCHIVE;; |
||
1161 | esac |
||
1162 | ;; |
||
1163 | #ifdef BFD64 |
||
1164 | powerpc64-*-aix*) |
||
1165 | targ_defvec=rs6000_xcoff64_vec |
||
1166 | targ_selvecs=rs6000_xcoff_vec |
||
1167 | want64=true |
||
1168 | ;; |
||
1169 | powerpc64-*-freebsd*) |
||
1170 | targ_defvec=powerpc_elf64_fbsd_vec |
||
1171 | 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" |
||
1172 | want64=true |
||
1173 | ;; |
||
1174 | powerpc64le-*-freebsd*) |
||
1175 | targ_defvec=powerpc_elf64_fbsd_le_vec |
||
1176 | 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" |
||
1177 | want64=true |
||
1178 | ;; |
||
1179 | powerpc64-*-elf* | powerpc-*-elf64* | powerpc64-*-linux* | \ |
||
1180 | powerpc64-*-*bsd*) |
||
1181 | targ_defvec=powerpc_elf64_vec |
||
1182 | targ_selvecs="powerpc_elf64_le_vec powerpc_elf32_vec powerpc_elf32_le_vec rs6000_xcoff_vec rs6000_xcoff64_vec rs6000_xcoff64_aix_vec" |
||
1183 | want64=true |
||
1184 | ;; |
||
1185 | powerpc64le-*-elf* | powerpcle-*-elf64* | powerpc64le-*-linux* | \ |
||
1186 | powerpc64le-*-*bsd*) |
||
1187 | targ_defvec=powerpc_elf64_le_vec |
||
1188 | targ_selvecs="powerpc_elf64_vec powerpc_elf32_le_vec powerpc_elf32_vec rs6000_xcoff_vec rs6000_xcoff64_vec rs6000_xcoff64_aix_vec" |
||
1189 | want64=true |
||
1190 | ;; |
||
1191 | #endif |
||
1192 | powerpc-*-*freebsd*) |
||
1193 | targ_defvec=powerpc_elf32_fbsd_vec |
||
1194 | targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_elf32_le_vec powerpc_boot_vec" |
||
1195 | targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec powerpc_elf64_fbsd_vec" |
||
1196 | ;; |
||
1197 | powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \ |
||
1198 | powerpc-*-solaris2* | powerpc-*-linux-* | powerpc-*-rtems* | \ |
||
1199 | powerpc-*-chorus*) |
||
1200 | targ_defvec=powerpc_elf32_vec |
||
1201 | targ_selvecs="rs6000_xcoff_vec powerpc_elf32_le_vec powerpc_boot_vec" |
||
1202 | targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec" |
||
1203 | ;; |
||
1204 | powerpc-*-kaos*) |
||
1205 | targ_defvec=powerpc_elf32_vec |
||
1206 | targ_selvecs="powerpc_elf32_le_vec powerpc_boot_vec" |
||
1207 | targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec" |
||
1208 | ;; |
||
1209 | powerpc-*-darwin* | powerpc-*-macos10* | powerpc-*-rhapsody*) |
||
1210 | targ_defvec=mach_o_be_vec |
||
1211 | targ_selvecs="mach_o_be_vec mach_o_le_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec" |
||
1212 | targ_archs="$targ_archs bfd_i386_arch" |
||
1213 | ;; |
||
1214 | powerpc-*-macos*) |
||
1215 | targ_defvec=powerpc_xcoff_vec |
||
1216 | ;; |
||
1217 | powerpc-*-nto*) |
||
1218 | targ_defvec=powerpc_elf32_vec |
||
1219 | targ_selvecs="rs6000_xcoff_vec powerpc_elf32_le_vec powerpc_boot_vec" |
||
1220 | ;; |
||
1221 | powerpc-*-vxworks*) |
||
1222 | targ_defvec=powerpc_elf32_vxworks_vec |
||
1223 | targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_elf32_le_vec powerpc_boot_vec" |
||
1224 | targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec" |
||
1225 | ;; |
||
1226 | powerpcle-*-nto*) |
||
1227 | targ_defvec=powerpc_elf32_le_vec |
||
1228 | targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_boot_vec" |
||
1229 | ;; |
||
1230 | powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \ |
||
1231 | powerpcle-*-solaris2* | powerpcle-*-linux-* | powerpcle-*-vxworks*) |
||
1232 | targ_defvec=powerpc_elf32_le_vec |
||
1233 | targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_boot_vec" |
||
1234 | targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec" |
||
1235 | ;; |
||
1236 | |||
1237 | pru-*-*) |
||
1238 | targ_defvec=pru_elf32_vec |
||
1239 | ;; |
||
1240 | |||
1241 | #ifdef BFD64 |
||
1242 | riscvbe-*-* | riscv32be*-*-*) |
||
1243 | targ_defvec=riscv_elf32_be_vec |
||
1244 | targ_selvecs="riscv_elf32_vec riscv_elf64_vec riscv_elf32_be_vec riscv_elf64_be_vec" |
||
1245 | want64=true |
||
1246 | ;; |
||
1247 | riscv-*-* | riscv32*-*-*) |
||
1248 | targ_defvec=riscv_elf32_vec |
||
1249 | targ_selvecs="riscv_elf32_vec riscv_elf64_vec riscv_elf32_be_vec riscv_elf64_be_vec" |
||
1250 | want64=true |
||
1251 | ;; |
||
1252 | riscv64be*-*-*) |
||
1253 | targ_defvec=riscv_elf64_be_vec |
||
1254 | targ_selvecs="riscv_elf32_vec riscv_elf64_vec riscv_elf32_be_vec riscv_elf64_be_vec" |
||
1255 | want64=true |
||
1256 | ;; |
||
1257 | riscv64*-*-*) |
||
1258 | targ_defvec=riscv_elf64_vec |
||
1259 | targ_selvecs="riscv_elf32_vec riscv_elf64_vec riscv_elf32_be_vec riscv_elf64_be_vec" |
||
1260 | want64=true |
||
1261 | ;; |
||
1262 | #endif |
||
1263 | |||
1264 | rl78-*-elf) |
||
1265 | targ_defvec=rl78_elf32_vec |
||
1266 | targ_underscore=yes |
||
1267 | ;; |
||
1268 | |||
1269 | rx-*-elf) |
||
1270 | targ_defvec=rx_elf32_le_vec |
||
1271 | targ_selvecs="rx_elf32_be_vec rx_elf32_le_vec rx_elf32_be_ns_vec" |
||
1272 | targ_underscore=yes |
||
1273 | ;; |
||
1274 | rx-*-linux*) |
||
1275 | targ_defvec=rx_elf32_linux_le_vec |
||
1276 | targ_selvecs="rx_elf32_linux_le_vec" |
||
1277 | ;; |
||
1278 | |||
1279 | s390-*-linux*) |
||
1280 | targ_defvec=s390_elf32_vec |
||
1281 | targ64_selvecs=s390_elf64_vec |
||
1282 | want64=true |
||
1283 | ;; |
||
1284 | #ifdef BFD64 |
||
1285 | s390x-*-linux*) |
||
1286 | targ_defvec=s390_elf64_vec |
||
1287 | targ_selvecs=s390_elf32_vec |
||
1288 | want64=true |
||
1289 | ;; |
||
1290 | s390x-*-tpf*) |
||
1291 | targ_defvec=s390_elf64_vec |
||
1292 | want64=true |
||
1293 | ;; |
||
1294 | |||
1295 | score*-*-elf*) |
||
1296 | targ_defvec=score_elf32_be_vec |
||
1297 | targ_selvecs=score_elf32_le_vec |
||
1298 | ;; |
||
1299 | #endif /* BFD64 */ |
||
1300 | |||
1301 | sh*eb-*-linux*) |
||
1302 | targ_defvec=sh_elf32_linux_be_vec |
||
1303 | targ_selvecs=sh_elf32_linux_vec |
||
1304 | targ_selvecs="${targ_selvecs} sh_elf32_fdpic_le_vec sh_elf32_fdpic_be_vec" |
||
1305 | ;; |
||
1306 | sh*-*-linux*) |
||
1307 | targ_defvec=sh_elf32_linux_vec |
||
1308 | targ_selvecs=sh_elf32_linux_be_vec |
||
1309 | targ_selvecs="${targ_selvecs} sh_elf32_fdpic_le_vec sh_elf32_fdpic_be_vec" |
||
1310 | ;; |
||
1311 | |||
1312 | sh-*-uclinux* | sh[12]-*-uclinux*) |
||
1313 | targ_defvec=sh_elf32_vec |
||
1314 | 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" |
||
1315 | ;; |
||
1316 | |||
1317 | sh*l*-*-netbsd*) |
||
1318 | targ_defvec=sh_elf32_nbsd_le_vec |
||
1319 | targ_selvecs="sh_elf32_nbsd_vec sh_coff_vec sh_coff_le_vec" |
||
1320 | ;; |
||
1321 | sh*-*-netbsd*) |
||
1322 | targ_defvec=sh_elf32_nbsd_vec |
||
1323 | targ_selvecs="sh_elf32_nbsd_le_vec sh_coff_vec sh_coff_le_vec" |
||
1324 | ;; |
||
1325 | |||
1326 | shl*-*-elf* | sh[1234]l*-*-elf* | sh3el*-*-elf* | shl*-*-kaos*) |
||
1327 | targ_defvec=sh_elf32_le_vec |
||
1328 | targ_selvecs="sh_elf32_vec sh_coff_le_vec sh_coff_vec sh_coff_small_le_vec sh_coff_small_vec" |
||
1329 | targ_underscore=yes |
||
1330 | ;; |
||
1331 | |||
1332 | sh-*-elf* | sh[1234]*-elf* | sh-*-rtems* | sh-*-kaos*) |
||
1333 | targ_defvec=sh_elf32_vec |
||
1334 | targ_selvecs="sh_elf32_le_vec sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec" |
||
1335 | targ_underscore=yes |
||
1336 | ;; |
||
1337 | |||
1338 | sh-*-nto*) |
||
1339 | targ_defvec=sh_elf32_vec |
||
1340 | targ_selvecs="sh_elf32_le_vec sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec" |
||
1341 | targ_underscore=yes |
||
1342 | ;; |
||
1343 | sh*-*-openbsd*) |
||
1344 | targ_defvec=sh_elf32_nbsd_le_vec |
||
1345 | targ_selvecs="sh_elf32_nbsd_vec sh_coff_vec sh_coff_le_vec" |
||
1346 | ;; |
||
1347 | sh-*-pe) |
||
1348 | targ_defvec=sh_pe_le_vec |
||
1349 | targ_selvecs="sh_pe_le_vec sh_pei_le_vec" |
||
1350 | targ_underscore=yes |
||
1351 | ;; |
||
1352 | sh-*-vxworks) |
||
1353 | targ_defvec=sh_elf32_vxworks_vec |
||
1354 | targ_selvecs="sh_elf32_vxworks_le_vec" |
||
1355 | # FIXME None of the following are actually used on this target, but |
||
1356 | # they're necessary for coff-sh.c (which is unconditionally used) to be |
||
1357 | # compiled correctly. |
||
1358 | targ_selvecs="$targ_selvecs sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec" |
||
1359 | targ_underscore=yes |
||
1360 | ;; |
||
1361 | sh-*-*) |
||
1362 | targ_defvec=sh_coff_vec |
||
1363 | targ_selvecs="sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec" |
||
1364 | targ_underscore=yes |
||
1365 | ;; |
||
1366 | |||
1367 | sparc-*-solaris2.[0-6] | sparc-*-solaris2.[0-6].*) |
||
1368 | # PR 27666: Do not include sparc_elf32_vec here. |
||
1369 | targ_defvec=sparc_elf32_sol2_vec |
||
1370 | ;; |
||
1371 | #ifdef BFD64 |
||
1372 | sparc-*-solaris2* | sparcv9-*-solaris2* | sparc64-*-solaris2*) |
||
1373 | # PR 27666: Do not include sparc_elf32_vec or sparc_elf64_vec here. |
||
1374 | targ_defvec=sparc_elf32_sol2_vec |
||
1375 | targ_selvecs="sparc_elf64_sol2_vec" |
||
1376 | want64=true |
||
1377 | ;; |
||
1378 | sparc64-*-haiku*) |
||
1379 | targ_defvec=sparc_elf64_vec |
||
1380 | targ_selvecs="sparc_elf64_vec sparc_elf32_vec" |
||
1381 | want64=true |
||
1382 | ;; |
||
1383 | sparc64-*-freebsd* | sparc64-*-kfreebsd*-gnu) |
||
1384 | targ_defvec=sparc_elf64_fbsd_vec |
||
1385 | targ_selvecs="sparc_elf64_vec sparc_elf32_vec" |
||
1386 | ;; |
||
1387 | sparc64*-*-*) |
||
1388 | targ_defvec=sparc_elf64_vec |
||
1389 | targ_selvecs="sparc_elf32_vec" |
||
1390 | want64=true |
||
1391 | ;; |
||
1392 | #endif |
||
1393 | sparc-*-linux-* | sparcv*-*-linux-*) |
||
1394 | targ_defvec=sparc_elf32_vec |
||
1395 | targ_selvecs="sparc_elf64_vec" |
||
1396 | ;; |
||
1397 | sparc-*-vxworks*) |
||
1398 | targ_defvec=sparc_elf32_vxworks_vec |
||
1399 | targ_selvecs="sparc_elf32_vec" |
||
1400 | ;; |
||
1401 | sparc*-*-*) |
||
1402 | targ_defvec=sparc_elf32_vec |
||
1403 | ;; |
||
1404 | |||
1405 | spu-*-elf) |
||
1406 | targ_defvec=spu_elf32_vec |
||
1407 | want64=true |
||
1408 | ;; |
||
1409 | |||
1410 | tic6x-*-elf) |
||
1411 | targ_defvec=tic6x_elf32_c6000_le_vec |
||
1412 | targ_selvecs="tic6x_elf32_c6000_be_vec tic6x_elf32_le_vec tic6x_elf32_be_vec" |
||
1413 | ;; |
||
1414 | |||
1415 | tic6x-*-uclinux) |
||
1416 | targ_defvec=tic6x_elf32_linux_le_vec |
||
1417 | targ_selvecs="tic6x_elf32_linux_be_vec tic6x_elf32_le_vec tic6x_elf32_be_vec" |
||
1418 | ;; |
||
1419 | |||
1420 | #ifdef BFD64 |
||
1421 | tilegx-*-*) |
||
1422 | targ_defvec=tilegx_elf64_le_vec |
||
1423 | targ_selvecs="tilegx_elf64_be_vec tilegx_elf32_be_vec tilegx_elf32_le_vec" |
||
1424 | ;; |
||
1425 | tilegxbe-*-*) |
||
1426 | targ_defvec=tilegx_elf64_be_vec |
||
1427 | targ_selvecs="tilegx_elf64_le_vec tilegx_elf32_be_vec tilegx_elf32_le_vec" |
||
1428 | ;; |
||
1429 | #endif |
||
1430 | |||
1431 | tilepro-*-*) |
||
1432 | targ_defvec=tilepro_elf32_vec |
||
1433 | ;; |
||
1434 | |||
1435 | ft32*-*-*) |
||
1436 | targ_defvec=ft32_elf32_vec |
||
1437 | ;; |
||
1438 | |||
1439 | v850*-*-*) |
||
1440 | targ_defvec=v850_elf32_vec |
||
1441 | targ_selvecs="v800_elf32_vec" |
||
1442 | targ_underscore=yes |
||
1443 | ;; |
||
1444 | |||
1445 | vax-*-netbsdaout*) |
||
1446 | targ_defvec=vax_aout_nbsd_vec |
||
1447 | targ_selvecs="vax_elf32_vec vax_aout_1knbsd_vec" |
||
1448 | targ_underscore=yes |
||
1449 | ;; |
||
1450 | |||
1451 | vax-*-netbsd*) |
||
1452 | targ_defvec=vax_elf32_vec |
||
1453 | targ_selvecs="vax_aout_nbsd_vec vax_aout_1knbsd_vec" |
||
1454 | ;; |
||
1455 | |||
1456 | vax-*-openbsd*) |
||
1457 | targ_defvec=vax_aout_nbsd_vec |
||
1458 | targ_underscore=yes |
||
1459 | ;; |
||
1460 | |||
1461 | vax-*-linux-*) |
||
1462 | targ_defvec=vax_elf32_vec |
||
1463 | ;; |
||
1464 | |||
1465 | visium-*-elf) |
||
1466 | targ_defvec=visium_elf32_vec |
||
1467 | ;; |
||
1468 | |||
1469 | wasm32-*-*) |
||
1470 | targ_defvec=wasm32_elf32_vec |
||
1471 | targ_selvecs="wasm_vec" |
||
1472 | ;; |
||
1473 | |||
1474 | xgate-*-*) |
||
1475 | targ_defvec=xgate_elf32_vec |
||
1476 | targ_selvecs="xgate_elf32_vec" |
||
1477 | ;; |
||
1478 | |||
1479 | xstormy16-*-elf) |
||
1480 | targ_defvec=xstormy16_elf32_vec |
||
1481 | ;; |
||
1482 | |||
1483 | xtensa*-*-*) |
||
1484 | targ_defvec=xtensa_elf32_le_vec |
||
1485 | targ_selvecs=xtensa_elf32_be_vec |
||
1486 | ;; |
||
1487 | |||
1488 | z80-*-coff) |
||
1489 | targ_defvec=z80_coff_vec |
||
1490 | targ_underscore=no |
||
1491 | ;; |
||
1492 | |||
1493 | z80-*-elf) |
||
1494 | targ_defvec=z80_elf32_vec |
||
1495 | targ_underscore=no |
||
1496 | ;; |
||
1497 | |||
1498 | z8k*-*-*) |
||
1499 | targ_defvec=z8k_coff_vec |
||
1500 | targ_underscore=yes |
||
1501 | ;; |
||
1502 | |||
1503 | #ifdef BFD64 |
||
1504 | loongarch32-*) |
||
1505 | targ_defvec=loongarch_elf32_vec |
||
1506 | targ_selvecs="loongarch_elf32_vec" |
||
1507 | want64=true |
||
1508 | ;; |
||
1509 | |||
1510 | loongarch64-*) |
||
1511 | targ_defvec=loongarch_elf64_vec |
||
1512 | targ_selvecs="loongarch_elf32_vec loongarch_elf64_vec loongarch64_pei_vec" |
||
1513 | want64=true |
||
1514 | ;; |
||
1515 | #endif |
||
1516 | |||
1517 | # END OF targmatch.h |
||
1518 | bpf-*-*) |
||
1519 | echo "*** Configuration $targ is not fully supported." >&2 |
||
1520 | echo "*** Use bpf or bpf-*-none as the target instead." >&2 |
||
1521 | exit 1 |
||
1522 | ;; |
||
1523 | |||
1524 | *) |
||
1525 | echo 1>&2 "*** BFD does not support target ${targ}." |
||
1526 | echo 1>&2 "*** Look in bfd/config.bfd for supported targets." |
||
1527 | exit 1 |
||
1528 | ;; |
||
1529 | esac |
||
1530 | |||
1531 | # All MIPS ELF targets need a 64-bit bfd_vma. |
||
1532 | case "${targ_defvec} ${targ_selvecs}" in |
||
1533 | *mips_elf*) |
||
1534 | want64=true |
||
1535 | ;; |
||
1536 | esac |
||
1537 | |||
1538 | case "${host64}${want64}" in |
||
1539 | *true*) |
||
1540 | targ_selvecs="${targ_selvecs} ${targ64_selvecs}" |
||
1541 | ;; |
||
1542 | esac |
||
1543 | |||
1544 | # If we support any ELF target, then automatically add support for the |
||
1545 | # generic ELF targets. This permits an objdump with some ELF support |
||
1546 | # to be used on an arbitrary ELF file for anything other than |
||
1547 | # relocation information. |
||
1548 | case "${targ_defvec} ${targ_selvecs}" in |
||
1549 | *elf64* | *mips_elf32_n*) |
||
1550 | targ_selvecs="${targ_selvecs} elf64_le_vec elf64_be_vec elf32_le_vec elf32_be_vec" |
||
1551 | ;; |
||
1552 | *elf32*) |
||
1553 | targ_selvecs="${targ_selvecs} elf32_le_vec elf32_be_vec" |
||
1554 | ;; |
||
1555 | esac |
||
1556 | |||
1557 | # If we support Intel MCU target, then add support for bfd_iamcu_arch. |
||
1558 | case "${targ_defvec} ${targ_selvecs}" in |
||
1559 | *iamcu_elf32*) |
||
1560 | targ_archs="$targ_archs bfd_iamcu_arch" |
||
1561 | ;; |
||
1562 | esac |
||
1563 | |||
1564 | case "${targ}" in |
||
1565 | mipsisa32r6* | mipsisa64r6*) |
||
1566 | targ_cflags="$targ_cflags -DMIPS_DEFAULT_R6=1" |
||
1567 | ;; |
||
1568 | esac |