Commit | Line | Data |
---|---|---|
252b5132 | 1 | # config.bfd |
5bf135a7 | 2 | # |
219d1afa | 3 | # Copyright (C) 2012-2018 Free Software Foundation, Inc. |
5bf135a7 NC |
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. | |
1b786873 | 9 | # |
5bf135a7 NC |
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. | |
1b786873 | 14 | # |
5bf135a7 NC |
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 | # | |
252b5132 RH |
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 | |
e9e69f5a AM |
25 | # targ64_selvecs Vectors to build if --enable-64-bit-bfd is given |
26 | # or if host is 64 bit. | |
252b5132 RH |
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= | |
e9e69f5a | 45 | targ64_selvecs= |
252b5132 RH |
46 | targ_cflags= |
47 | targ_underscore=no | |
48 | ||
91fb2a9d NC |
49 | # Catch obsolete configurations. |
50 | case $targ in | |
73589c9d CS |
51 | openrisc-*-* | or32-*-*) |
52 | echo "*** Configuration $targ is obsolete." >&2 | |
53 | echo "*** Use or1k-*-elf or or1k-*-linux as the target instead" >&2 | |
54 | exit 1 | |
55 | ;; | |
24acfe5e | 56 | powerpc-*-lynxos* | powerpc-*-windiss* | \ |
b2d65c0b | 57 | null) |
91fb2a9d NC |
58 | if test "x$enable_obsolete" != xyes; then |
59 | echo "*** Configuration $targ is obsolete." >&2 | |
60 | echo "*** Specify --enable-obsolete to build it anyway." >&2 | |
61 | echo "*** Support will be REMOVED in the next major release of BINUTILS," >&2 | |
62 | echo "*** unless a maintainer comes forward." >&2 | |
63 | exit 1 | |
64 | fi;; | |
65 | esac | |
66 | ||
7f266840 | 67 | case $targ in |
3596d8ce AM |
68 | *-*-netbsdelf* | i[3-7]86-*-netbsd*-gnu* | i[3-7]86-*-knetbsd*-gnu | \ |
69 | mips*-*-irix5* | mips*-*-irix6*) | |
dc12032b AM |
70 | # Not obsolete |
71 | ;; | |
a8eb42a8 | 72 | *-adobe-* | \ |
73589c9d | 73 | *-go32-rtems* | \ |
5972ac73 | 74 | *-sony-* | \ |
de96689e | 75 | *-tandem-* | \ |
fdef3943 | 76 | *-*-ieee* | \ |
b4b594e3 | 77 | *-*-netware* | \ |
4a7324e1 | 78 | *-*-rtemsaout* | \ |
850d84f6 | 79 | *-*-rtemscoff* | \ |
c17ae8a2 | 80 | a29k-* | \ |
2ac93be7 AM |
81 | arm*-*-aout | \ |
82 | arm-*-coff | \ | |
83 | arm-*-netbsd* | \ | |
84 | arm-*-openbsd* | \ | |
73589c9d | 85 | arm-*-oabi | \ |
2ac93be7 | 86 | arm-*-riscix* | \ |
ddb00039 | 87 | arm-epoc-pe* | \ |
fe0bf0fd | 88 | h8300*-*-coff | \ |
e82aa794 | 89 | h8500*-*-coff | \ |
7e4e2059 | 90 | hppa*-*-rtems* | \ |
c65c21e1 AM |
91 | i[3-7]86-*-unixware* | \ |
92 | i[3-7]86-*-dgux* | \ | |
93 | i[3-7]86-*-chorus* | \ | |
94 | i[3-7]86-*-sysv* | \ | |
95 | i[3-7]86-*-isc* | \ | |
96 | i[3-7]86-*-sco* | \ | |
97 | i[3-7]86-*-coff | \ | |
98 | i[3-7]86-*-aix* | \ | |
99 | i[3-7]86-sequent-bsd* | \ | |
100 | i[3-7]86-*-freebsdaout* | i[3-7]86-*-freebsd[12].* | i[3-7]86-*-freebsd[12] | \ | |
101 | i[3-7]86-*-netbsdaout* | i[3-7]86-*-netbsd* | \ | |
102 | i[3-7]86-*-openbsd[0-2].* | i[3-7]86-*-openbsd3.[0-3] | \ | |
103 | i[3-7]86-*-linux*aout* | \ | |
104 | i[3-7]86-*-mach* | i[3-7]86-*-osf1mk* | \ | |
105 | i[3-7]86-*-os9k | \ | |
106 | i[3-7]86-none-* | \ | |
107 | i[3-7]86-*-aout* | i[3-7]86*-*-vsta* | \ | |
6793974d | 108 | i370-* | \ |
a8eb42a8 AM |
109 | i860-*-* | \ |
110 | i960-*-* | \ | |
dc12032b AM |
111 | m68*-*-*bsd* | \ |
112 | m68*-*-aout* | \ | |
113 | m68*-*-coff* | \ | |
114 | m68*-*-hpux* | \ | |
115 | m68*-*-linux*aout* | \ | |
73589c9d | 116 | m68*-*-lynxos* | \ |
dc12032b AM |
117 | m68*-*-os68k* | \ |
118 | m68*-*-psos* | \ | |
119 | m68*-*-sunos* | \ | |
120 | m68*-*-sysv* | \ | |
121 | m68*-*-vsta* | \ | |
122 | m68*-*-vxworks* | \ | |
73589c9d CS |
123 | m68*-apollo-* | \ |
124 | m68*-apple-aux* | \ | |
125 | m68*-bull-sysv* | \ | |
dc12032b AM |
126 | m68*-ericsson-* | \ |
127 | m68*-motorola-sysv* | \ | |
128 | m68*-netx-* | \ | |
c2bf1eec | 129 | m88*-*-* | \ |
73589c9d | 130 | maxq-*-coff | \ |
3596d8ce AM |
131 | mips*-*-bsd* | \ |
132 | mips*-*-ecoff* | \ | |
133 | mips*-*-lnews* | \ | |
134 | mips*-*-mach3* | \ | |
135 | mips*-*-pe* | \ | |
136 | mips*-*-riscos* | \ | |
137 | mips*-*-sysv* | \ | |
138 | mips*-big-* | \ | |
139 | mips*-dec-* | \ | |
140 | mips*-sgi-* | \ | |
7e4e2059 | 141 | mips*el-*-rtems* | \ |
211dc24b | 142 | sh*-*-symbianelf* | sh5*-*-* | sh64*-*-* | \ |
c9098af4 AM |
143 | sparc*-*-*aout* | \ |
144 | sparc*-*-chorus* | \ | |
145 | sparc*-*-coff* | \ | |
73589c9d | 146 | sparc-*-lynxos* | \ |
c9098af4 | 147 | sparc-*-openbsd[0-2].* | sparc-*-openbsd3.[0-1] | \ |
fceadf09 | 148 | tahoe-*-* | \ |
9f5d1593 | 149 | vax-*-bsd* | vax-*-ultrix* | vax-*-vms* | \ |
a9a4b302 | 150 | w65-*-* | \ |
04cb01fd | 151 | we32k-*-* | \ |
7f266840 DJ |
152 | null) |
153 | echo "*** Configuration $targ is obsolete." >&2 | |
154 | echo "*** Support has been REMOVED." >&2 | |
155 | exit 1 | |
156 | ;; | |
157 | esac | |
91fb2a9d | 158 | |
252b5132 RH |
159 | targ_cpu=`echo $targ | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` |
160 | case "${targ_cpu}" in | |
a06ea964 | 161 | aarch64*) targ_archs="bfd_aarch64_arch bfd_arm_arch";; |
7d3f158f | 162 | alpha*) targ_archs=bfd_alpha_arch ;; |
6b200de0 | 163 | am33_2.0*) targ_archs=bfd_mn10300_arch ;; |
886a2506 | 164 | arc*) targ_archs=bfd_arc_arch ;; |
7d3f158f | 165 | arm*) targ_archs=bfd_arm_arch ;; |
0f64bb02 | 166 | bfin*) targ_archs=bfd_bfin_arch ;; |
7d3f158f AM |
167 | c30*) targ_archs=bfd_tic30_arch ;; |
168 | c4x*) targ_archs=bfd_tic4x_arch ;; | |
169 | c54x*) targ_archs=bfd_tic54x_arch ;; | |
3d3d428f | 170 | cr16*) targ_archs=bfd_cr16_arch ;; |
bac23f82 | 171 | crisv32) targ_archs=bfd_cris_arch ;; |
7d3f158f | 172 | crx*) targ_archs=bfd_crx_arch ;; |
d172d4ba | 173 | dlx*) targ_archs=bfd_dlx_arch ;; |
ebff6cd5 | 174 | fido*) targ_archs=bfd_m68k_arch ;; |
7d3f158f AM |
175 | hppa*) targ_archs=bfd_hppa_arch ;; |
176 | i[3-7]86) targ_archs=bfd_i386_arch ;; | |
2f5f29ca | 177 | ia16) targ_archs=bfd_i386_arch ;; |
84e94c90 | 178 | lm32) targ_archs=bfd_lm32_arch ;; |
6927f982 NC |
179 | m6811*|m68hc11*) targ_archs="bfd_m68hc11_arch bfd_m68hc12_arch bfd_m9s12x_arch bfd_m9s12xg_arch" ;; |
180 | m6812*|m68hc12*) targ_archs="bfd_m68hc12_arch bfd_m68hc11_arch bfd_m9s12x_arch bfd_m9s12xg_arch" ;; | |
7d3f158f | 181 | m68*) targ_archs=bfd_m68k_arch ;; |
7ba29e2a | 182 | microblaze*) targ_archs=bfd_microblaze_arch ;; |
7d3f158f | 183 | mips*) targ_archs=bfd_mips_arch ;; |
35c08157 | 184 | nds32*) targ_archs=bfd_nds32_arch ;; |
fe944acf | 185 | nfp) targ_archs=bfd_nfp_arch ;; |
36591ba1 | 186 | nios2*) targ_archs=bfd_nios2_arch ;; |
73589c9d | 187 | or1k*|or1knd*) targ_archs=bfd_or1k_arch ;; |
7d3f158f AM |
188 | pdp11*) targ_archs=bfd_pdp11_arch ;; |
189 | pj*) targ_archs="bfd_pj_arch bfd_i386_arch";; | |
190 | powerpc*) targ_archs="bfd_rs6000_arch bfd_powerpc_arch" ;; | |
889294f6 | 191 | pru*) targ_archs=bfd_pru_arch ;; |
e23eba97 | 192 | riscv*) targ_archs=bfd_riscv_arch ;; |
7d3f158f AM |
193 | rs6000) targ_archs="bfd_rs6000_arch bfd_powerpc_arch" ;; |
194 | s390*) targ_archs=bfd_s390_arch ;; | |
195 | sh*) targ_archs=bfd_sh_arch ;; | |
196 | sparc*) targ_archs=bfd_sparc_arch ;; | |
e9f53129 | 197 | spu*) targ_archs=bfd_spu_arch ;; |
aa137e4d NC |
198 | tilegx*) targ_archs=bfd_tilegx_arch ;; |
199 | tilepro*) targ_archs=bfd_tilepro_arch ;; | |
de863c74 | 200 | v850*) targ_archs="bfd_v850_arch bfd_v850_rh850_arch" ;; |
d924db55 | 201 | visium*) targ_archs=bfd_visium_arch ;; |
8fb740dd | 202 | wasm32) targ_archs=bfd_wasm32_arch ;; |
99ad8390 | 203 | x86_64*) targ_archs=bfd_i386_arch ;; |
7d3f158f | 204 | xtensa*) targ_archs=bfd_xtensa_arch ;; |
f6c1a2d5 | 205 | xgate) targ_archs=bfd_xgate_arch ;; |
3c9b82ba | 206 | z80|r800) targ_archs=bfd_z80_arch ;; |
7d3f158f | 207 | z8k*) targ_archs=bfd_z8k_arch ;; |
7d3f158f | 208 | *) targ_archs=bfd_${targ_cpu}_arch ;; |
252b5132 RH |
209 | esac |
210 | ||
211 | ||
212 | # WHEN ADDING ENTRIES TO THIS MATRIX: | |
213 | # Make sure that the left side always has two dashes. Otherwise you | |
214 | # can get spurious matches. Even for unambiguous cases, do this as a | |
215 | # convention, else the table becomes a real mess to understand and maintain. | |
216 | ||
217 | case "${targ}" in | |
ce3c775b NC |
218 | plugin) |
219 | targ_defvec=plugin_vec | |
220 | targ_selvecs="plugin_vec" | |
221 | ;; | |
222 | ||
252b5132 RH |
223 | # START OF targmatch.h |
224 | #ifdef BFD64 | |
f075eb5e TG |
225 | aarch64-*-darwin*) |
226 | targ_defvec=aarch64_mach_o_vec | |
227 | targ_selvecs="arm_mach_o_vec mach_o_le_vec mach_o_be_vec mach_o_fat_vec" | |
228 | targ_archs="$targ_archs bfd_i386_arch bfd_powerpc_arch bfd_rs6000_arch" | |
229 | want64=true | |
230 | ;; | |
12a132db | 231 | aarch64-*-elf | aarch64-*-rtems*) |
6d00b590 AM |
232 | targ_defvec=aarch64_elf64_le_vec |
233 | targ_selvecs="aarch64_elf64_be_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_le_vec arm_elf32_be_vec" | |
a06ea964 NC |
234 | want64=true |
235 | ;; | |
236 | aarch64_be-*-elf) | |
6d00b590 AM |
237 | targ_defvec=aarch64_elf64_be_vec |
238 | targ_selvecs="aarch64_elf64_le_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_be_vec arm_elf32_le_vec" | |
a06ea964 NC |
239 | want64=true |
240 | ;; | |
15c7659f AT |
241 | aarch64-*-freebsd*) |
242 | targ_defvec=aarch64_elf64_le_vec | |
243 | targ_selvecs="aarch64_elf64_be_vec arm_elf32_le_vec arm_elf32_be_vec" | |
244 | want64=true | |
245 | ;; | |
d5451cd4 JC |
246 | aarch64-*-fuchsia*) |
247 | targ_defvec=aarch64_elf64_le_vec | |
248 | targ_selvecs="aarch64_elf64_be_vec arm_elf32_le_vec arm_elf32_be_vec" | |
249 | want64=true | |
250 | ;; | |
a75cf613 ES |
251 | aarch64-*-cloudabi*) |
252 | targ_defvec=aarch64_elf64_le_cloudabi_vec | |
253 | targ_selvecs=aarch64_elf64_be_cloudabi_vec | |
254 | want64=true | |
255 | ;; | |
a06ea964 | 256 | aarch64-*-linux*) |
6d00b590 AM |
257 | targ_defvec=aarch64_elf64_le_vec |
258 | targ_selvecs="aarch64_elf64_be_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_le_vec arm_elf32_be_vec" | |
a06ea964 NC |
259 | want64=true |
260 | ;; | |
261 | aarch64_be-*-linux*) | |
6d00b590 AM |
262 | targ_defvec=aarch64_elf64_be_vec |
263 | targ_selvecs="aarch64_elf64_le_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_be_vec arm_elf32_le_vec" | |
a06ea964 NC |
264 | want64=true |
265 | ;; | |
13dfd2d0 | 266 | alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu) |
6d00b590 AM |
267 | targ_defvec=alpha_elf64_fbsd_vec |
268 | targ_selvecs="alpha_elf64_vec alpha_ecoff_le_vec" | |
314e9a4e | 269 | want64=true |
4ada7262 DB |
270 | # FreeBSD <= 4.0 supports only the old nonstandard way of ABI labelling. |
271 | case "${targ}" in | |
272 | alpha*-*-freebsd3* | alpha*-*-freebsd4 | alpha*-*-freebsd4.0*) | |
273 | targ_cflags=-DOLD_FREEBSD_ABI_LABEL ;; | |
274 | esac | |
275 | ;; | |
276 | alpha*-*-netbsd* | alpha*-*-openbsd*) | |
6d00b590 AM |
277 | targ_defvec=alpha_elf64_vec |
278 | targ_selvecs=alpha_ecoff_le_vec | |
314e9a4e | 279 | want64=true |
252b5132 | 280 | ;; |
df26367c | 281 | alpha*-*-linux*ecoff*) |
6d00b590 AM |
282 | targ_defvec=alpha_ecoff_le_vec |
283 | targ_selvecs=alpha_elf64_vec | |
314e9a4e | 284 | want64=true |
252b5132 | 285 | ;; |
ed84e695 | 286 | alpha*-*-linux-* | alpha*-*-elf*) |
6d00b590 AM |
287 | targ_defvec=alpha_elf64_vec |
288 | targ_selvecs=alpha_ecoff_le_vec | |
314e9a4e | 289 | want64=true |
252b5132 RH |
290 | ;; |
291 | alpha*-*-*vms*) | |
6d00b590 AM |
292 | targ_defvec=alpha_vms_vec |
293 | targ_selvecs=alpha_vms_lib_txt_vec | |
314e9a4e | 294 | want64=true |
252b5132 RH |
295 | ;; |
296 | alpha*-*-*) | |
6d00b590 | 297 | targ_defvec=alpha_ecoff_le_vec |
314e9a4e | 298 | want64=true |
252b5132 | 299 | ;; |
ed84e695 | 300 | ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu) |
6d00b590 AM |
301 | targ_defvec=ia64_elf64_le_vec |
302 | targ_selvecs="ia64_elf64_be_vec ia64_pei_vec" | |
314e9a4e | 303 | want64=true |
800eeca4 | 304 | ;; |
bbe66d08 | 305 | ia64*-*-hpux*) |
6d00b590 AM |
306 | targ_defvec=ia64_elf32_hpux_be_vec |
307 | targ_selvecs="ia64_elf64_hpux_be_vec" | |
314e9a4e | 308 | want64=true |
bbe66d08 | 309 | ;; |
01e1a5bc | 310 | ia64*-*-*vms*) |
6d00b590 AM |
311 | targ_defvec=ia64_elf64_vms_vec |
312 | targ_selvecs=alpha_vms_lib_txt_vec | |
01e1a5bc NC |
313 | want64=true |
314 | ;; | |
252b5132 RH |
315 | #endif /* BFD64 */ |
316 | ||
6b200de0 | 317 | am33_2.0-*-linux*) |
6d00b590 | 318 | targ_defvec=am33_elf32_linux_vec |
73c3cd1c | 319 | ;; |
bfff1642 | 320 | |
f7e8b360 NC |
321 | arc*eb-*-elf* | arc*eb-*-linux*) |
322 | targ_defvec=arc_elf32_be_vec | |
323 | targ_selvecs=arc_elf32_le_vec | |
324 | ;; | |
325 | ||
4ad0bb5f | 326 | arc*-*-elf* | arc*-*-linux*) |
6d00b590 AM |
327 | targ_defvec=arc_elf32_le_vec |
328 | targ_selvecs=arc_elf32_be_vec | |
252b5132 RH |
329 | ;; |
330 | ||
f075eb5e TG |
331 | arm-*-darwin*) |
332 | targ_defvec=arm_mach_o_vec | |
333 | targ_selvecs="mach_o_le_vec mach_o_be_vec mach_o_fat_vec" | |
334 | targ_archs="$targ_archs bfd_i386_arch bfd_powerpc_arch bfd_rs6000_arch" | |
335 | ;; | |
d5451cd4 JC |
336 | arm-*-fuchsia*) |
337 | targ_defvec=arm_elf32_le_vec | |
338 | targ_selvecs="arm_elf32_be_vec" | |
339 | ;; | |
b38cadfb | 340 | arm-*-nacl*) |
6d00b590 AM |
341 | targ_defvec=arm_elf32_nacl_le_vec |
342 | targ_selvecs="arm_elf32_nacl_be_vec i386_elf32_nacl_vec" | |
343 | targ64_selvecs="x86_64_elf32_nacl_vec x86_64_elf64_nacl_vec" | |
b38cadfb NC |
344 | targ_archs="$targ_archs bfd_i386_arch" |
345 | ;; | |
346 | armeb-*-nacl*) | |
6d00b590 AM |
347 | targ_defvec=arm_elf32_nacl_be_vec |
348 | targ_selvecs="arm_elf32_nacl_le_vec i386_elf32_nacl_vec" | |
349 | targ64_selvecs="x86_64_elf32_nacl_vec x86_64_elf64_nacl_vec" | |
b38cadfb NC |
350 | targ_archs="$targ_archs bfd_i386_arch" |
351 | ;; | |
658f2588 | 352 | armeb-*-netbsdelf*) |
6d00b590 | 353 | targ_defvec=arm_elf32_be_vec |
2ac93be7 | 354 | targ_selvecs="arm_elf32_le_vec" |
658f2588 | 355 | ;; |
61d0bc33 | 356 | arm-*-netbsdelf*) |
6d00b590 | 357 | targ_defvec=arm_elf32_le_vec |
2ac93be7 | 358 | targ_selvecs="arm_elf32_be_vec" |
021e3cc0 | 359 | ;; |
7e392df6 | 360 | arm-*-nto* | nto*arm*) |
6d00b590 AM |
361 | targ_defvec=arm_elf32_le_vec |
362 | targ_selvecs=arm_elf32_be_vec | |
a7c7b2ba | 363 | targ_cflags=-D__QNXTARGET__ |
7e392df6 | 364 | ;; |
361dff73 | 365 | arm-wince-pe | arm-*-wince | arm*-*-mingw32ce* | arm*-*-cegcc*) |
6d00b590 AM |
366 | targ_defvec=arm_pe_wince_le_vec |
367 | targ_selvecs="arm_pe_wince_le_vec arm_pe_wince_be_vec arm_pei_wince_le_vec arm_pei_wince_be_vec" | |
17505c5c | 368 | targ_underscore=no |
ac4b3dd8 | 369 | targ_cflags="-DARM_WINCE -DARM_COFF_BUGFIX" |
17505c5c | 370 | ;; |
252b5132 | 371 | arm-*-pe*) |
6d00b590 AM |
372 | targ_defvec=arm_pe_le_vec |
373 | targ_selvecs="arm_pe_le_vec arm_pe_be_vec arm_pei_le_vec arm_pei_be_vec" | |
252b5132 RH |
374 | targ_underscore=yes |
375 | ;; | |
a2bea324 KS |
376 | arm-*-phoenix*) |
377 | targ_defvec=arm_elf32_le_vec | |
378 | targ_selvecs=arm_elf32_be_vec | |
379 | ;; | |
01e6c1a4 | 380 | armeb-*-elf | arm*b-*-freebsd* | arm*b-*-linux-* | armeb-*-eabi*) |
6d00b590 AM |
381 | targ_defvec=arm_elf32_be_vec |
382 | targ_selvecs=arm_elf32_le_vec | |
1bde2d57 | 383 | ;; |
8c5fc800 | 384 | arm-*-kaos*) |
6d00b590 AM |
385 | targ_defvec=arm_elf32_le_vec |
386 | targ_selvecs=arm_elf32_be_vec | |
42b5d0ea | 387 | ;; |
e59bc75b | 388 | arm-*-elf | arm*-*-freebsd* | arm*-*-linux-* | arm*-*-conix* | \ |
4e7fd91e | 389 | arm*-*-uclinux* | arm-*-kfreebsd*-gnu | \ |
617a5ada | 390 | arm*-*-eabi* | arm-*-rtems* | arm*-*-uclinuxfdpiceabi) |
6d00b590 | 391 | targ_defvec=arm_elf32_le_vec |
617a5ada | 392 | targ_selvecs="arm_elf32_fdpic_le_vec arm_elf32_be_vec arm_elf32_fdpic_be_vec" |
252b5132 | 393 | ;; |
4e7fd91e | 394 | arm*-*-vxworks | arm*-*-windiss) |
6d00b590 AM |
395 | targ_defvec=arm_elf32_vxworks_le_vec |
396 | targ_selvecs=arm_elf32_vxworks_be_vec | |
4e7fd91e | 397 | ;; |
e5a52504 | 398 | arm*-*-symbianelf*) |
6d00b590 AM |
399 | targ_defvec=arm_elf32_symbian_le_vec |
400 | targ_selvecs=arm_elf32_symbian_be_vec | |
e5a52504 | 401 | ;; |
24c603fa | 402 | arm9e-*-elf) |
6d00b590 AM |
403 | targ_defvec=arm_elf32_le_vec |
404 | targ_selvecs=arm_elf32_be_vec | |
24c603fa | 405 | ;; |
252b5132 | 406 | |
adde6300 | 407 | avr-*-*) |
6d00b590 | 408 | targ_defvec=avr_elf32_vec |
adde6300 AM |
409 | ;; |
410 | ||
0f64bb02 | 411 | bfin-*-*) |
6d00b590 AM |
412 | targ_defvec=bfin_elf32_vec |
413 | targ_selvecs=bfin_elf32_fdpic_vec | |
48d502e1 | 414 | targ_underscore=yes |
0f64bb02 CM |
415 | ;; |
416 | ||
252b5132 RH |
417 | c30-*-*aout* | tic30-*-*aout*) |
418 | targ_defvec=tic30_aout_vec | |
419 | ;; | |
420 | c30-*-*coff* | tic30-*-*coff*) | |
421 | targ_defvec=tic30_coff_vec | |
422 | ;; | |
423 | ||
850d84f6 | 424 | c4x-*-*coff* | tic4x-*-*coff*) |
026df7c5 NC |
425 | targ_defvec=tic4x_coff1_vec |
426 | targ_selvecs="tic4x_coff1_beh_vec tic4x_coff2_vec tic4x_coff2_beh_vec tic4x_coff0_vec tic4x_coff0_beh_vec" | |
427 | targ_underscore=yes | |
428 | ;; | |
429 | ||
81635ce4 TW |
430 | c54x*-*-*coff* | tic54x-*-*coff*) |
431 | targ_defvec=tic54x_coff1_vec | |
432 | targ_selvecs="tic54x_coff1_beh_vec tic54x_coff2_vec tic54x_coff2_beh_vec tic54x_coff0_vec tic54x_coff0_beh_vec" | |
433 | targ_underscore=yes | |
434 | ;; | |
435 | ||
bab4becb | 436 | cr16-*-elf* | cr16*-*-uclinux*) |
6d00b590 | 437 | targ_defvec=cr16_elf32_vec |
3d3d428f NC |
438 | targ_underscore=yes |
439 | ;; | |
440 | ||
0949843d | 441 | cr16c-*-elf*) |
6d00b590 | 442 | targ_defvec=cr16c_elf32_vec |
0949843d NC |
443 | targ_underscore=yes |
444 | ;; | |
445 | ||
56fbd041 | 446 | #ifdef BFD64 |
875ffa3e | 447 | cris-*-* | crisv32-*-*) |
06c15ad7 | 448 | targ_defvec=cris_aout_vec |
fdef3943 | 449 | targ_selvecs="cris_elf32_us_vec cris_elf32_vec" |
875ffa3e AM |
450 | case "${targ}" in |
451 | *-*-linux*) ;; | |
452 | *) targ_underscore=yes ;; | |
453 | esac | |
56fbd041 | 454 | want64=true |
06c15ad7 | 455 | ;; |
56fbd041 | 456 | #endif |
06c15ad7 | 457 | |
1fe1f39c | 458 | crx-*-elf*) |
6d00b590 | 459 | targ_defvec=crx_elf32_vec |
1fe1f39c NC |
460 | targ_underscore=yes |
461 | ;; | |
462 | ||
252b5132 | 463 | d10v-*-*) |
6d00b590 | 464 | targ_defvec=d10v_elf32_vec |
252b5132 RH |
465 | ;; |
466 | ||
d172d4ba | 467 | dlx-*-elf*) |
6d00b590 AM |
468 | targ_defvec=dlx_elf32_be_vec |
469 | targ_selvecs="dlx_elf32_be_vec" | |
d172d4ba NC |
470 | ;; |
471 | ||
252b5132 | 472 | d30v-*-*) |
6d00b590 | 473 | targ_defvec=d30v_elf32_vec |
252b5132 RH |
474 | ;; |
475 | ||
319c2dbe | 476 | epiphany-*-*) |
6d00b590 | 477 | targ_defvec=epiphany_elf32_vec |
bdd32e03 | 478 | targ_underscore=yes |
cfb8c092 NC |
479 | ;; |
480 | ||
ebff6cd5 | 481 | fido-*-elf* ) |
6d00b590 | 482 | targ_defvec=m68k_elf32_vec |
ebff6cd5 KH |
483 | ;; |
484 | ||
252b5132 | 485 | fr30-*-elf) |
6d00b590 | 486 | targ_defvec=fr30_elf32_vec |
252b5132 RH |
487 | ;; |
488 | ||
43850d5b | 489 | frv-*-elf) |
6d00b590 AM |
490 | targ_defvec=frv_elf32_vec |
491 | targ_selvecs=frv_elf32_fdpic_vec | |
4e5ba5b7 DB |
492 | ;; |
493 | ||
43850d5b | 494 | frv-*-*linux*) |
6d00b590 AM |
495 | targ_defvec=frv_elf32_fdpic_vec |
496 | targ_selvecs=frv_elf32_vec | |
43850d5b | 497 | ;; |
252b5132 | 498 | |
730fbaf8 | 499 | moxie-*-elf | moxie-*-rtems* | moxie-*-uclinux) |
6d00b590 AM |
500 | targ_defvec=moxie_elf32_be_vec |
501 | targ_selvecs=moxie_elf32_le_vec | |
20135e4c NC |
502 | ;; |
503 | ||
48494700 AG |
504 | moxie-*-moxiebox*) |
505 | targ_defvec=moxie_elf32_le_vec | |
506 | ;; | |
507 | ||
9a813b7a | 508 | h8300*-*-elf | h8300*-*-rtems*) |
6d00b590 | 509 | targ_defvec=h8300_elf32_vec |
e01b0e69 JR |
510 | targ_underscore=yes |
511 | ;; | |
512 | ||
5518c738 YS |
513 | h8300*-*-linux*) |
514 | targ_defvec=h8300_elf32_linux_vec | |
515 | ;; | |
516 | ||
60bcf0fa | 517 | #ifdef BFD64 |
ed84e695 | 518 | hppa*64*-*-linux-*) |
6d00b590 AM |
519 | targ_defvec=hppa_elf64_linux_vec |
520 | targ_selvecs=hppa_elf64_vec | |
314e9a4e | 521 | want64=true |
edd21aca | 522 | ;; |
d1dab720 | 523 | hppa*64*-*-hpux11*) |
6d00b590 AM |
524 | targ_defvec=hppa_elf64_vec |
525 | targ_selvecs=hppa_elf64_linux_vec | |
e59db122 | 526 | targ_cflags=-DHPUX_LARGE_AR_IDS |
314e9a4e | 527 | want64=true |
e59db122 JL |
528 | ;; |
529 | #endif | |
edd21aca | 530 | |
ed84e695 | 531 | hppa*-*-linux-*) |
6d00b590 AM |
532 | targ_defvec=hppa_elf32_linux_vec |
533 | targ_selvecs=hppa_elf32_vec | |
d952f17a | 534 | ;; |
e7fbc2bf | 535 | hppa*-*-netbsd*) |
6d00b590 AM |
536 | targ_defvec=hppa_elf32_nbsd_vec |
537 | targ_selvecs="hppa_elf32_vec hppa_elf32_linux_vec" | |
e7fbc2bf | 538 | ;; |
7e4e2059 | 539 | hppa*-*-*elf* | hppa*-*-lites* | hppa*-*-sysv4* | hppa*-*-openbsd*) |
6d00b590 AM |
540 | targ_defvec=hppa_elf32_vec |
541 | targ_selvecs=hppa_elf32_linux_vec | |
edd21aca AM |
542 | ;; |
543 | ||
252b5132 | 544 | hppa*-*-bsd*) |
6d00b590 AM |
545 | targ_defvec=hppa_som_vec |
546 | targ_selvecs=hppa_elf32_vec | |
e59db122 | 547 | ;; |
252b5132 | 548 | hppa*-*-hpux* | hppa*-*-hiux* | hppa*-*-mpeix*) |
6d00b590 | 549 | targ_defvec=hppa_som_vec |
252b5132 RH |
550 | ;; |
551 | hppa*-*-osf*) | |
6d00b590 AM |
552 | targ_defvec=hppa_som_vec |
553 | targ_selvecs=hppa_elf32_vec | |
e59db122 | 554 | ;; |
252b5132 | 555 | |
c65c21e1 | 556 | i[3-7]86-*-elf* | i[3-7]86-*-rtems*) |
6d00b590 | 557 | targ_defvec=i386_elf32_vec |
bf64a951 | 558 | targ_selvecs="iamcu_elf32_vec i386_coff_vec" |
252b5132 | 559 | ;; |
d2b2c203 | 560 | i[3-7]86-*-solaris2*) |
6d00b590 | 561 | targ_defvec=i386_elf32_sol2_vec |
d00c2bc9 L |
562 | targ_selvecs="iamcu_elf32_vec i386_coff_vec i386_pei_vec" |
563 | targ64_selvecs="x86_64_elf64_sol2_vec l1om_elf64_vec k1om_elf64_vec x86_64_pei_vec" | |
d2b2c203 DJ |
564 | want64=true |
565 | ;; | |
00b2bfc1 NC |
566 | #ifdef BFD64 |
567 | x86_64-*-solaris2*) | |
6d00b590 | 568 | targ_defvec=i386_elf32_sol2_vec |
d00c2bc9 | 569 | targ_selvecs="x86_64_elf64_sol2_vec l1om_elf64_vec k1om_elf64_vec iamcu_elf32_vec i386_coff_vec i386_pei_vec x86_64_pei_vec" |
00b2bfc1 NC |
570 | want64=true |
571 | ;; | |
572 | #endif | |
80c7c40a | 573 | i[3-7]86-*-kaos*) |
6d00b590 AM |
574 | targ_defvec=i386_elf32_vec |
575 | targ_selvecs=i386_elf32_vec | |
42b5d0ea | 576 | ;; |
80c7c40a | 577 | i[3-7]86-*-nto*) |
6d00b590 | 578 | targ_defvec=i386_elf32_vec |
bf64a951 | 579 | targ_selvecs="iamcu_elf32_vec i386_coff_vec" |
caf47ea6 | 580 | ;; |
80c7c40a | 581 | i[3-7]86-*-aros*) |
6d00b590 | 582 | targ_defvec=i386_elf32_vec |
bf64a951 | 583 | targ_selvecs=iamcu_elf32_vec |
da896d3f | 584 | ;; |
18c1668c | 585 | i[3-7]86-*-dicos*) |
6d00b590 | 586 | targ_defvec=i386_elf32_vec |
bf64a951 | 587 | targ_selvecs=iamcu_elf32_vec |
6d00b590 | 588 | targ64_selvecs="x86_64_elf64_vec l1om_elf64_vec k1om_elf64_vec" |
18c1668c | 589 | ;; |
7e4e2059 | 590 | *-*-msdosdjgpp* | *-*-go32* ) |
6d00b590 AM |
591 | targ_defvec=i386_coff_go32_vec |
592 | targ_selvecs="i386_coff_go32stubbed_vec i386_aout_vec" | |
252b5132 | 593 | ;; |
80c7c40a | 594 | i[3-7]86-*-darwin* | i[3-7]86-*-macos10* | i[3-7]86-*-rhapsody*) |
6d00b590 | 595 | targ_defvec=i386_mach_o_vec |
618b7301 | 596 | targ_selvecs="mach_o_le_vec mach_o_be_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec" |
6d00b590 | 597 | targ64_selvecs=x86_64_mach_o_vec |
618b7301 | 598 | targ_archs="$targ_archs bfd_powerpc_arch bfd_rs6000_arch" |
b1c58715 | 599 | ;; |
80c7c40a | 600 | i[3-7]86-*-bsd*) |
6d00b590 | 601 | targ_defvec=i386_aout_bsd_vec |
252b5132 RH |
602 | targ_underscore=yes |
603 | ;; | |
5b806d27 | 604 | i[3-7]86-*-dragonfly*) |
6d00b590 | 605 | targ_defvec=i386_elf32_vec |
bf64a951 | 606 | targ_selvecs=iamcu_elf32_vec |
6d00b590 | 607 | targ64_selvecs="x86_64_elf64_vec l1om_elf64_vec k1om_elf64_vec" |
5b806d27 | 608 | ;; |
5b806d27 | 609 | i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu) |
6d00b590 | 610 | targ_defvec=i386_elf32_fbsd_vec |
bf64a951 | 611 | targ_selvecs="i386_elf32_vec iamcu_elf32_vec i386_pei_vec i386_coff_vec" |
6d00b590 | 612 | targ64_selvecs="x86_64_elf64_fbsd_vec x86_64_elf64_vec x86_64_pei_vec l1om_elf64_vec l1om_elf64_fbsd_vec k1om_elf64_vec k1om_elf64_fbsd_vec" |
4ada7262 DB |
613 | # FreeBSD <= 4.0 supports only the old nonstandard way of ABI labelling. |
614 | case "${targ}" in | |
80c7c40a | 615 | i[3-7]86-*-freebsd3* | i[3-7]86-*-freebsd4 | i[3-7]86-*-freebsd4.0*) |
4ada7262 DB |
616 | targ_cflags=-DOLD_FREEBSD_ABI_LABEL ;; |
617 | esac | |
7a50d4ac | 618 | ;; |
4615568e | 619 | i[3-7]86-*-netbsdelf* | i[3-7]86-*-netbsd*-gnu* | i[3-7]86-*-knetbsd*-gnu) |
6d00b590 | 620 | targ_defvec=i386_elf32_vec |
c65c21e1 | 621 | targ_selvecs="iamcu_elf32_vec" |
6d00b590 | 622 | targ64_selvecs="x86_64_elf64_vec l1om_elf64_vec k1om_elf64_vec" |
0af288f3 | 623 | ;; |
80c7c40a | 624 | i[3-7]86-*-netbsdpe*) |
6d00b590 | 625 | targ_defvec=i386_pe_vec |
bf64a951 | 626 | targ_selvecs="i386_pe_vec i386_pei_vec i386_elf32_vec iamcu_elf32_vec" |
436e8db0 | 627 | ;; |
7d3f158f | 628 | i[3-7]86-*-openbsd*) |
6d00b590 | 629 | targ_defvec=i386_elf32_vec |
c65c21e1 | 630 | targ_selvecs="iamcu_elf32_vec" |
252b5132 | 631 | ;; |
ed84e695 | 632 | i[3-7]86-*-linux-*) |
6d00b590 | 633 | targ_defvec=i386_elf32_vec |
c65c21e1 | 634 | targ_selvecs="iamcu_elf32_vec i386_pei_vec" |
6d00b590 | 635 | targ64_selvecs="x86_64_elf64_vec x86_64_elf32_vec x86_64_pei_vec l1om_elf64_vec k1om_elf64_vec" |
252b5132 | 636 | ;; |
a27e4371 | 637 | i[3-7]86-*-nacl*) |
6d00b590 AM |
638 | targ_defvec=i386_elf32_nacl_vec |
639 | targ_selvecs="arm_elf32_nacl_be_vec arm_elf32_nacl_le_vec" | |
640 | targ64_selvecs="x86_64_elf64_nacl_vec x86_64_elf32_nacl_vec" | |
b38cadfb | 641 | targ_archs="$targ_archs bfd_arm_arch" |
a27e4371 | 642 | ;; |
f2e2d2f5 JS |
643 | i[3-7]86-*-redox*) |
644 | targ_defvec=i386_elf32_vec | |
645 | targ_selvecs= | |
646 | targ64_selvecs=x86_64_elf64_vec | |
647 | ;; | |
956cd1d6 | 648 | #ifdef BFD64 |
6036f486 ES |
649 | x86_64-*-cloudabi*) |
650 | targ_defvec=x86_64_elf64_cloudabi_vec | |
651 | want64=true | |
652 | ;; | |
f96fc22a | 653 | x86_64-*-darwin*) |
6d00b590 AM |
654 | targ_defvec=x86_64_mach_o_vec |
655 | 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" | |
618b7301 | 656 | targ_archs="$targ_archs bfd_powerpc_arch bfd_rs6000_arch" |
f96fc22a TG |
657 | want64=true |
658 | ;; | |
18c1668c | 659 | x86_64-*-dicos*) |
6d00b590 | 660 | targ_defvec=x86_64_elf64_vec |
bf64a951 | 661 | targ_selvecs="i386_elf32_vec iamcu_elf32_vec l1om_elf64_vec k1om_elf64_vec" |
18c1668c PA |
662 | want64=true |
663 | ;; | |
d5451cd4 | 664 | x86_64-*-elf* | x86_64-*-rtems* | x86_64-*-fuchsia) |
6d00b590 | 665 | targ_defvec=x86_64_elf64_vec |
bf64a951 | 666 | targ_selvecs="i386_elf32_vec iamcu_elf32_vec x86_64_elf32_vec l1om_elf64_vec k1om_elf64_vec" |
314e9a4e | 667 | want64=true |
34723071 | 668 | ;; |
5b806d27 | 669 | x86_64-*-dragonfly*) |
6d00b590 | 670 | targ_defvec=x86_64_elf64_vec |
bf64a951 | 671 | targ_selvecs="i386_elf32_vec iamcu_elf32_vec l1om_elf64_vec k1om_elf64_vec" |
5b806d27 NC |
672 | want64=true |
673 | ;; | |
13dfd2d0 | 674 | x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu) |
6d00b590 | 675 | targ_defvec=x86_64_elf64_fbsd_vec |
bf64a951 | 676 | targ_selvecs="i386_elf32_fbsd_vec iamcu_elf32_vec i386_coff_vec i386_pei_vec x86_64_pei_vec i386_elf32_vec x86_64_elf64_vec l1om_elf64_vec l1om_elf64_fbsd_vec k1om_elf64_vec k1om_elf64_fbsd_vec" |
314e9a4e | 677 | want64=true |
8a8b2d4b | 678 | ;; |
85cfd8d3 | 679 | x86_64-*-netbsd* | x86_64-*-openbsd*) |
6d00b590 | 680 | targ_defvec=x86_64_elf64_vec |
c65c21e1 | 681 | targ_selvecs="i386_elf32_vec iamcu_elf32_vec i386_coff_vec i386_pei_vec x86_64_pei_vec l1om_elf64_vec k1om_elf64_vec" |
314e9a4e | 682 | want64=true |
d4af9775 | 683 | ;; |
ed84e695 | 684 | x86_64-*-linux-*) |
6d00b590 | 685 | targ_defvec=x86_64_elf64_vec |
c65c21e1 | 686 | targ_selvecs="i386_elf32_vec iamcu_elf32_vec x86_64_elf32_vec i386_pei_vec x86_64_pei_vec l1om_elf64_vec k1om_elf64_vec" |
314e9a4e | 687 | want64=true |
8d88c4ca | 688 | ;; |
8059fb19 | 689 | x86_64-*-nacl*) |
6d00b590 AM |
690 | targ_defvec=x86_64_elf32_nacl_vec |
691 | targ_selvecs="i386_elf32_nacl_vec x86_64_elf64_nacl_vec arm_elf32_nacl_be_vec arm_elf32_nacl_le_vec" | |
b38cadfb | 692 | targ_archs="$targ_archs bfd_arm_arch" |
8059fb19 RM |
693 | want64=true |
694 | ;; | |
48385e38 | 695 | x86_64-*-mingw* | x86_64-*-pe | x86_64-*-pep | x86_64-*-cygwin) |
6d00b590 | 696 | targ_defvec=x86_64_pe_vec |
bf64a951 | 697 | targ_selvecs="x86_64_pe_vec x86_64_pei_vec x86_64_pe_be_vec x86_64_elf64_vec l1om_elf64_vec k1om_elf64_vec i386_pe_vec i386_pei_vec i386_elf32_vec iamcu_elf32_vec" |
99ad8390 | 698 | want64=true |
ef72a554 | 699 | targ_underscore=no |
99ad8390 | 700 | ;; |
79056107 | 701 | x86_64-*-rdos*) |
6d00b590 | 702 | targ_defvec=x86_64_elf64_vec |
79056107 AM |
703 | want64=true |
704 | ;; | |
f2e2d2f5 JS |
705 | x86_64-*-redox*) |
706 | targ_defvec=x86_64_elf64_vec | |
707 | targ_selvecs=i386_elf32_vec | |
708 | want64=true | |
709 | ;; | |
8d88c4ca | 710 | #endif |
80c7c40a | 711 | i[3-7]86-*-lynxos*) |
6d00b590 | 712 | targ_defvec=i386_elf32_vec |
bf64a951 | 713 | targ_selvecs="iamcu_elf32_vec i386_coff_lynx_vec i386_aout_lynx_vec" |
252b5132 | 714 | ;; |
80c7c40a | 715 | i[3-7]86-*-gnu*) |
6d00b590 | 716 | targ_defvec=i386_elf32_vec |
bf64a951 | 717 | targ_selvecs=iamcu_elf32_vec |
252b5132 | 718 | ;; |
80c7c40a | 719 | i[3-7]86-*-msdos*) |
6d00b590 AM |
720 | targ_defvec=i386_aout_vec |
721 | targ_selvecs=i386_msdos_vec | |
252b5132 | 722 | ;; |
80c7c40a | 723 | i[3-7]86-*-moss*) |
6d00b590 | 724 | targ_defvec=i386_elf32_vec |
bf64a951 | 725 | targ_selvecs="iamcu_elf32_vec i386_msdos_vec i386_aout_vec" |
252b5132 | 726 | ;; |
80c7c40a | 727 | i[3-7]86-*-beospe*) |
6d00b590 AM |
728 | targ_defvec=i386_pe_vec |
729 | targ_selvecs="i386_pe_vec i386_pei_vec" | |
252b5132 | 730 | ;; |
80c7c40a | 731 | i[3-7]86-*-beoself* | i[3-7]86-*-beos*) |
6d00b590 | 732 | targ_defvec=i386_elf32_vec |
bf64a951 | 733 | targ_selvecs="iamcu_elf32_vec i386_pe_vec i386_pei_vec" |
252b5132 | 734 | ;; |
80c7c40a | 735 | i[3-7]86-*-interix*) |
6d00b590 AM |
736 | targ_defvec=i386_pei_vec |
737 | targ_selvecs="i386_pe_vec" | |
0717ebb7 ILT |
738 | # FIXME: This should eventually be checked at runtime. |
739 | targ_cflags=-DSTRICT_PE_FORMAT | |
7d923127 | 740 | ;; |
b59bea8a | 741 | i[3-7]86-*-rdos*) |
6d00b590 | 742 | targ_defvec=i386_elf32_vec |
bf64a951 | 743 | targ_selvecs="iamcu_elf32_vec i386_coff_vec" |
b59bea8a | 744 | ;; |
80c7c40a | 745 | i[3-7]86-*-mingw32* | i[3-7]86-*-cygwin* | i[3-7]86-*-winnt | i[3-7]86-*-pe) |
6d00b590 | 746 | targ_defvec=i386_pe_vec |
bf64a951 | 747 | targ_selvecs="i386_pe_vec i386_pei_vec i386_elf32_vec iamcu_elf32_vec" |
db3d41a8 | 748 | targ_underscore=yes |
252b5132 | 749 | ;; |
e26f8bd9 | 750 | i[3-7]86-*-vxworks*) |
6d00b590 | 751 | targ_defvec=i386_elf32_vxworks_vec |
957ccf44 | 752 | targ_underscore=yes |
ac352105 | 753 | ;; |
80c7c40a | 754 | i[3-7]86-*-chaos) |
6d00b590 | 755 | targ_defvec=i386_elf32_vec |
bf64a951 | 756 | targ_selfvecs="iamcu_elf32_vec i386chaos_vec" |
59ff2774 | 757 | ;; |
252b5132 | 758 | |
2f5f29ca AJ |
759 | ia16-*-elf) |
760 | targ_defvec=i386_elf32_vec | |
761 | targ_selvecs="i386_msdos_vec i386_aout_vec" | |
762 | ;; | |
763 | ||
cf88bb9f | 764 | ip2k-*-elf) |
6d00b590 | 765 | targ_defvec=ip2k_elf32_vec |
bdd32e03 | 766 | targ_underscore=yes |
cf88bb9f NC |
767 | ;; |
768 | ||
a75473eb | 769 | iq2000-*-elf) |
6d00b590 | 770 | targ_defvec=iq2000_elf32_vec |
a75473eb SC |
771 | ;; |
772 | ||
3baa454d | 773 | lm32-*-elf | lm32-*-rtems*) |
6d00b590 AM |
774 | targ_defvec=lm32_elf32_vec |
775 | targ_selvecs=lm32_elf32_fdpic_vec | |
84e94c90 | 776 | ;; |
a27e4371 | 777 | |
84e94c90 | 778 | lm32-*-*linux*) |
6d00b590 AM |
779 | targ_defvec=lm32_elf32_fdpic_vec |
780 | targ_selvecs=lm32_elf32_vec | |
84e94c90 | 781 | ;; |
a27e4371 | 782 | |
8a2a2dbb | 783 | m32c-*-elf | m32c-*-rtems*) |
6d00b590 | 784 | targ_defvec=m32c_elf32_vec |
bdd32e03 | 785 | targ_underscore=yes |
e729279b NC |
786 | ;; |
787 | ||
6edf0760 | 788 | m32r*le-*-linux*) |
6d00b590 AM |
789 | targ_defvec=m32r_elf32_linux_le_vec |
790 | targ_selvecs="m32r_elf32_linux_vec m32r_elf32_linux_le_vec" | |
6edf0760 | 791 | ;; |
6edf0760 | 792 | m32r*-*-linux*) |
6d00b590 AM |
793 | targ_defvec=m32r_elf32_linux_vec |
794 | targ_selvecs="m32r_elf32_linux_vec m32r_elf32_linux_le_vec" | |
6edf0760 | 795 | ;; |
6edf0760 | 796 | m32r*le-*-*) |
6d00b590 AM |
797 | targ_defvec=m32r_elf32_le_vec |
798 | targ_selvecs="m32r_elf32_vec m32r_elf32_le_vec" | |
6edf0760 | 799 | ;; |
252b5132 | 800 | m32r-*-*) |
6d00b590 | 801 | targ_defvec=m32r_elf32_vec |
252b5132 RH |
802 | ;; |
803 | ||
60bcf0fa | 804 | m68hc11-*-* | m6811-*-*) |
6d00b590 AM |
805 | targ_defvec=m68hc11_elf32_vec |
806 | targ_selvecs="m68hc11_elf32_vec m68hc12_elf32_vec" | |
60bcf0fa NC |
807 | ;; |
808 | m68hc12-*-* | m6812-*-*) | |
6d00b590 AM |
809 | targ_defvec=m68hc12_elf32_vec |
810 | targ_selvecs="m68hc11_elf32_vec m68hc12_elf32_vec" | |
60bcf0fa NC |
811 | ;; |
812 | ||
dc12032b | 813 | m68*-*-*) |
6d00b590 | 814 | targ_defvec=m68k_elf32_vec |
252b5132 RH |
815 | ;; |
816 | ||
252b5132 | 817 | mcore-*-elf) |
6d00b590 AM |
818 | targ_defvec=mcore_elf32_be_vec |
819 | targ_selvecs="mcore_elf32_be_vec mcore_elf32_le_vec" | |
252b5132 RH |
820 | ;; |
821 | mcore-*-pe) | |
6d00b590 AM |
822 | targ_defvec=mcore_pe_be_vec |
823 | targ_selvecs="mcore_pe_be_vec mcore_pe_le_vec mcore_pei_be_vec mcore_pei_le_vec" | |
252b5132 RH |
824 | ;; |
825 | ||
d9352518 | 826 | mep-*-elf) |
6d00b590 AM |
827 | targ_defvec=mep_elf32_vec |
828 | targ_selvecs=mep_elf32_le_vec | |
d9352518 DB |
829 | ;; |
830 | ||
a3c62988 | 831 | metag-*-*) |
6d00b590 | 832 | targ_defvec=metag_elf32_vec |
a3c62988 NC |
833 | targ_underscore=yes |
834 | ;; | |
835 | ||
f23200ad | 836 | microblazeel*-*) |
6d00b590 AM |
837 | targ_defvec=microblaze_elf32_le_vec |
838 | targ_selvecs=microblaze_elf32_vec | |
f23200ad ME |
839 | ;; |
840 | ||
7ba29e2a | 841 | microblaze*-*) |
6d00b590 AM |
842 | targ_defvec=microblaze_elf32_vec |
843 | targ_selvecs=microblaze_elf32_le_vec | |
7ba29e2a NC |
844 | ;; |
845 | ||
42429eac | 846 | #ifdef BFD64 |
3cb60568 | 847 | mips*el-*-netbsd*) |
6d00b590 | 848 | targ_defvec=mips_elf32_trad_le_vec |
8e415ce8 | 849 | 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" |
252b5132 | 850 | ;; |
102ab332 | 851 | mips*-*-netbsd*) |
6d00b590 | 852 | targ_defvec=mips_elf32_trad_be_vec |
8e415ce8 | 853 | 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" |
252b5132 | 854 | ;; |
252b5132 | 855 | mips*-*-irix6*) |
6d00b590 AM |
856 | targ_defvec=mips_elf32_n_be_vec |
857 | targ_selvecs="mips_elf32_n_le_vec mips_elf32_be_vec mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec" | |
252b5132 | 858 | ;; |
e407c74b | 859 | mips64*-ps2-elf*) |
6d00b590 AM |
860 | targ_defvec=mips_elf32_n_le_vec |
861 | 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" | |
e407c74b | 862 | ;; |
e407c74b | 863 | mips*-ps2-elf*) |
6d00b590 AM |
864 | targ_defvec=mips_elf32_le_vec |
865 | targ_selvecs="mips_elf32_be_vec mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec" | |
e407c74b | 866 | ;; |
252b5132 | 867 | mips*-*-irix5*) |
6d00b590 | 868 | targ_defvec=mips_elf32_be_vec |
8e415ce8 | 869 | targ_selvecs="mips_elf32_le_vec mips_ecoff_be_vec mips_ecoff_le_vec" |
252b5132 | 870 | ;; |
0a44bf69 | 871 | mips*el-*-vxworks*) |
6d00b590 AM |
872 | targ_defvec=mips_elf32_vxworks_le_vec |
873 | targ_selvecs="mips_elf32_le_vec mips_elf32_vxworks_be_vec mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec" | |
0a44bf69 RS |
874 | ;; |
875 | mips*-*-vxworks*) | |
6d00b590 AM |
876 | targ_defvec=mips_elf32_vxworks_be_vec |
877 | targ_selvecs="mips_elf32_be_vec mips_elf32_vxworks_le_vec mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec" | |
0a44bf69 | 878 | ;; |
a27e4371 | 879 | mips*el-sde-elf*) |
6d00b590 AM |
880 | targ_defvec=mips_elf32_trad_le_vec |
881 | 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" | |
a27e4371 | 882 | ;; |
a9d58c06 | 883 | mips*-sde-elf* | mips*-mti-elf* | mips*-img-elf*) |
6d00b590 AM |
884 | targ_defvec=mips_elf32_trad_be_vec |
885 | 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" | |
4be041b2 | 886 | ;; |
9cc0123f | 887 | mips*el-*-elf* | mips*-*-chorus*) |
6d00b590 AM |
888 | targ_defvec=mips_elf32_le_vec |
889 | targ_selvecs="mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec" | |
252b5132 | 890 | ;; |
9cc0123f | 891 | mips*-*-elf* | mips*-*-rtems* | mips*-*-windiss | mips*-*-none) |
6d00b590 AM |
892 | targ_defvec=mips_elf32_be_vec |
893 | targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec" | |
252b5132 | 894 | ;; |
5f417ca3 | 895 | mips64*-*-openbsd*) |
6d00b590 AM |
896 | targ_defvec=mips_elf64_trad_be_vec |
897 | 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" | |
5f417ca3 | 898 | ;; |
4008bd9b | 899 | mips*el-*-openbsd*) |
6d00b590 | 900 | targ_defvec=mips_elf32_le_vec |
8e415ce8 | 901 | targ_selvecs="mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_le_vec mips_ecoff_be_vec" |
252b5132 | 902 | ;; |
fdbafa10 | 903 | mips*-*-openbsd*) |
6d00b590 | 904 | targ_defvec=mips_elf32_be_vec |
8e415ce8 | 905 | targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_be_vec mips_ecoff_le_vec" |
252b5132 | 906 | ;; |
4008bd9b | 907 | mips64*el-*-linux*) |
6d00b590 AM |
908 | targ_defvec=mips_elf32_ntrad_le_vec |
909 | 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" | |
4008bd9b | 910 | ;; |
4008bd9b | 911 | mips64*-*-linux*) |
6d00b590 AM |
912 | targ_defvec=mips_elf32_ntrad_be_vec |
913 | 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" | |
4008bd9b | 914 | ;; |
36b45482 | 915 | mips*el-*-linux*) |
6d00b590 | 916 | targ_defvec=mips_elf32_trad_le_vec |
8e415ce8 | 917 | 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" |
36b45482 | 918 | ;; |
4008bd9b | 919 | mips*-*-linux*) |
6d00b590 | 920 | targ_defvec=mips_elf32_trad_be_vec |
8e415ce8 | 921 | 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" |
fdbafa10 | 922 | ;; |
aeffff67 RS |
923 | mips64*el-*-freebsd* | mips64*el-*-kfreebsd*-gnu) |
924 | # FreeBSD vectors | |
6d00b590 AM |
925 | targ_defvec=mips_elf32_ntradfbsd_le_vec |
926 | 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" | |
aeffff67 | 927 | # Generic vectors |
6d00b590 | 928 | 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" |
aeffff67 RS |
929 | ;; |
930 | mips64*-*-freebsd* | mips64*-*-kfreebsd*-gnu) | |
931 | # FreeBSD vectors | |
6d00b590 AM |
932 | targ_defvec=mips_elf32_ntradfbsd_be_vec |
933 | 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" | |
aeffff67 | 934 | # Generic vectors |
6d00b590 | 935 | 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" |
aeffff67 | 936 | ;; |
aeffff67 RS |
937 | mips*el-*-freebsd* | mips*el-*-kfreebsd*-gnu) |
938 | # FreeBSD vectors | |
6d00b590 AM |
939 | targ_defvec=mips_elf32_tradfbsd_le_vec |
940 | 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" | |
aeffff67 | 941 | # Generic vectors |
6d00b590 | 942 | 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" |
aeffff67 RS |
943 | ;; |
944 | mips*-*-freebsd* | mips*-*-kfreebsd*-gnu) | |
945 | # FreeBSD vectors | |
6d00b590 AM |
946 | targ_defvec=mips_elf32_tradfbsd_be_vec |
947 | 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" | |
aeffff67 | 948 | # Generic vectors |
6d00b590 | 949 | 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" |
aeffff67 | 950 | ;; |
3c3bdf30 | 951 | mmix-*-*) |
6d00b590 AM |
952 | targ_defvec=mmix_elf64_vec |
953 | targ_selvecs=mmix_mmo_vec | |
314e9a4e | 954 | want64=true |
3c3bdf30 NC |
955 | ;; |
956 | #endif | |
252b5132 | 957 | mn10200-*-*) |
6d00b590 | 958 | targ_defvec=mn10200_elf32_vec |
bdd32e03 | 959 | targ_underscore=yes |
252b5132 RH |
960 | ;; |
961 | ||
962 | mn10300-*-*) | |
6d00b590 | 963 | targ_defvec=mn10300_elf32_vec |
73c3cd1c | 964 | targ_underscore=yes |
252b5132 RH |
965 | ;; |
966 | ||
4970f871 | 967 | mt-*-elf) |
6d00b590 | 968 | targ_defvec=mt_elf32_vec |
de33e640 AH |
969 | ;; |
970 | ||
2469cfa2 | 971 | msp430-*-*) |
6d00b590 AM |
972 | targ_defvec=msp430_elf32_vec |
973 | targ_selvecs=msp430_elf32_ti_vec | |
2469cfa2 NC |
974 | ;; |
975 | ||
35c08157 | 976 | nds32*le-*-linux*) |
6d00b590 AM |
977 | targ_defvec=nds32_elf32_linux_le_vec |
978 | targ_selvecs=nds32_elf32_linux_be_vec | |
35c08157 KLC |
979 | ;; |
980 | ||
981 | nds32*be-*-linux*) | |
6d00b590 AM |
982 | targ_defvec=nds32_elf32_linux_be_vec |
983 | targ_selvecs=nds32_elf32_linux_le_vec | |
35c08157 KLC |
984 | ;; |
985 | ||
986 | nds32*le-*-*) | |
6d00b590 AM |
987 | targ_defvec=nds32_elf32_le_vec |
988 | targ_selvecs=nds32_elf32_be_vec | |
35c08157 KLC |
989 | ;; |
990 | ||
991 | nds32*be-*-*) | |
6d00b590 AM |
992 | targ_defvec=nds32_elf32_be_vec |
993 | targ_selvecs=nds32_elf32_le_vec | |
35c08157 KLC |
994 | ;; |
995 | ||
fe944acf FT |
996 | #ifdef BFD64 |
997 | nfp-*-*) | |
998 | targ_defvec=nfp_elf64_vec | |
999 | ;; | |
1000 | #endif | |
1001 | ||
252b5132 | 1002 | ns32k-pc532-mach* | ns32k-pc532-ux*) |
6d00b590 | 1003 | targ_defvec=ns32k_aout_pc532mach_vec |
252b5132 RH |
1004 | targ_underscore=yes |
1005 | ;; | |
1006 | ns32k-*-netbsd* | ns32k-*-lites* | ns32k-*-openbsd*) | |
6d00b590 | 1007 | targ_defvec=ns32k_aout_pc532nbsd_vec |
252b5132 RH |
1008 | targ_underscore=yes |
1009 | ;; | |
1010 | ||
36591ba1 | 1011 | nios2eb-*-*) |
6d00b590 AM |
1012 | targ_defvec=nios2_elf32_be_vec |
1013 | targ_selvecs=nios2_elf32_le_vec | |
36591ba1 SL |
1014 | ;; |
1015 | ||
1016 | nios2el-*-*) | |
6d00b590 AM |
1017 | targ_defvec=nios2_elf32_le_vec |
1018 | targ_selvecs=nios2_elf32_be_vec | |
36591ba1 SL |
1019 | ;; |
1020 | ||
1021 | nios2-*-*) | |
6d00b590 AM |
1022 | targ_defvec=nios2_elf32_le_vec |
1023 | targ_selvecs=nios2_elf32_be_vec | |
36591ba1 SL |
1024 | ;; |
1025 | ||
3d52a869 | 1026 | or1k-*-elf | or1k-*-linux* | or1k-*-rtems*) |
6d00b590 | 1027 | targ_defvec=or1k_elf32_vec |
3b16e843 NC |
1028 | ;; |
1029 | ||
0d6d4c82 | 1030 | or1knd-*-elf | or1knd-*-linux* | or1knd-*-rtems*) |
6d00b590 | 1031 | targ_defvec=or1k_elf32_vec |
3b16e843 NC |
1032 | ;; |
1033 | ||
e135f41b NC |
1034 | pdp11-*-*) |
1035 | targ_defvec=pdp11_aout_vec | |
1036 | targ_underscore=yes | |
1037 | ;; | |
1038 | ||
0bcb993b | 1039 | pj-*-*) |
6d00b590 AM |
1040 | targ_defvec=pj_elf32_vec |
1041 | targ_selvecs="pj_elf32_vec pj_elf32_le_vec" | |
0bcb993b ILT |
1042 | ;; |
1043 | ||
1044 | pjl-*-*) | |
6d00b590 | 1045 | targ_defvec=pj_elf32_le_vec |
bf64a951 | 1046 | targ_selvecs="pj_elf32_le_vec pj_elf32_vec i386_elf32_vec iamcu_elf32_vec" |
0bcb993b ILT |
1047 | ;; |
1048 | ||
9a9e2ca3 | 1049 | powerpc-*-aix5.[01] | rs6000-*-aix5.[01]) |
6d00b590 AM |
1050 | targ_defvec=rs6000_xcoff_vec |
1051 | targ_selvecs="rs6000_xcoff64_aix_vec" | |
f8fc3443 NC |
1052 | want64=true |
1053 | ;; | |
1054 | #ifdef BFD64 | |
9a9e2ca3 | 1055 | powerpc64-*-aix5.[01] | rs6000-*-aix5.[01]) |
6d00b590 AM |
1056 | targ_defvec=rs6000_xcoff64_aix_vec |
1057 | targ_selvecs="rs6000_xcoff_vec" | |
f8fc3443 NC |
1058 | want64=true |
1059 | ;; | |
1060 | #endif | |
9a9e2ca3 | 1061 | powerpc-*-aix[5-9]* | rs6000-*-aix[5-9]*) |
f8fc3443 | 1062 | targ_cflags=-DAIX_WEAK_SUPPORT |
6d00b590 AM |
1063 | targ_defvec=rs6000_xcoff_vec |
1064 | targ_selvecs="rs6000_xcoff64_aix_vec" | |
eb1e0e80 NC |
1065 | want64=true |
1066 | ;; | |
8f28b845 | 1067 | #ifdef BFD64 |
9a9e2ca3 | 1068 | powerpc64-*-aix[5-9]* | rs6000-*-aix[5-9]*) |
f8fc3443 | 1069 | targ_cflags=-DAIX_WEAK_SUPPORT |
6d00b590 AM |
1070 | targ_defvec=rs6000_xcoff64_aix_vec |
1071 | targ_selvecs="rs6000_xcoff_vec" | |
eb1e0e80 NC |
1072 | want64=true |
1073 | ;; | |
680f9d5c | 1074 | #endif |
eb1e0e80 | 1075 | |
4603e845 | 1076 | powerpc-*-aix* | powerpc-*-beos* | rs6000-*-*) |
6d00b590 AM |
1077 | targ_defvec=rs6000_xcoff_vec |
1078 | targ64_selvecs=rs6000_xcoff64_vec | |
102ab332 | 1079 | case "${targ}" in |
7d3f158f | 1080 | *-*-aix4.[3456789]* | *-*-aix[56789]*) |
102ab332 | 1081 | want64=true;; |
3e36d993 TR |
1082 | *) |
1083 | targ_cflags=-DSMALL_ARCHIVE;; | |
102ab332 | 1084 | esac |
252b5132 | 1085 | ;; |
a5ac692b | 1086 | #ifdef BFD64 |
beb1bf64 | 1087 | powerpc64-*-aix*) |
6d00b590 AM |
1088 | targ_defvec=rs6000_xcoff64_vec |
1089 | targ_selvecs=rs6000_xcoff_vec | |
314e9a4e | 1090 | want64=true |
beb1bf64 | 1091 | ;; |
7b8e7dad | 1092 | powerpc64-*-freebsd*) |
6d00b590 AM |
1093 | targ_defvec=powerpc_elf64_fbsd_vec |
1094 | 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" | |
7b8e7dad AM |
1095 | want64=true |
1096 | ;; | |
db4ed121 NC |
1097 | powerpc64-*-elf* | powerpc-*-elf64* | powerpc64-*-linux* | \ |
1098 | powerpc64-*-*bsd*) | |
6d00b590 AM |
1099 | targ_defvec=powerpc_elf64_vec |
1100 | targ_selvecs="powerpc_elf64_le_vec powerpc_elf32_vec powerpc_elf32_le_vec rs6000_xcoff_vec rs6000_xcoff64_vec rs6000_xcoff64_aix_vec" | |
314e9a4e | 1101 | want64=true |
5bd4f169 | 1102 | ;; |
49926cd0 AM |
1103 | powerpc64le-*-elf* | powerpcle-*-elf64* | powerpc64le-*-linux* | \ |
1104 | powerpc64le-*-*bsd*) | |
6d00b590 AM |
1105 | targ_defvec=powerpc_elf64_le_vec |
1106 | targ_selvecs="powerpc_elf64_vec powerpc_elf32_le_vec powerpc_elf32_vec rs6000_xcoff_vec rs6000_xcoff64_vec rs6000_xcoff64_aix_vec" | |
314e9a4e | 1107 | want64=true |
5bd4f169 | 1108 | ;; |
a5ac692b | 1109 | #endif |
7b8e7dad | 1110 | powerpc-*-*freebsd*) |
6d00b590 AM |
1111 | targ_defvec=powerpc_elf32_fbsd_vec |
1112 | targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_elf32_le_vec powerpc_boot_vec" | |
1113 | targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec powerpc_elf64_fbsd_vec" | |
7b8e7dad | 1114 | ;; |
252b5132 | 1115 | powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \ |
ed84e695 | 1116 | powerpc-*-solaris2* | powerpc-*-linux-* | powerpc-*-rtems* | \ |
9d8504b1 | 1117 | powerpc-*-chorus*) |
6d00b590 AM |
1118 | targ_defvec=powerpc_elf32_vec |
1119 | targ_selvecs="rs6000_xcoff_vec powerpc_elf32_le_vec powerpc_boot_vec" | |
1120 | targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec" | |
252b5132 | 1121 | ;; |
42b5d0ea | 1122 | powerpc-*-kaos*) |
6d00b590 AM |
1123 | targ_defvec=powerpc_elf32_vec |
1124 | targ_selvecs="powerpc_elf32_le_vec powerpc_boot_vec" | |
1125 | targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec" | |
42b5d0ea | 1126 | ;; |
b1c58715 AM |
1127 | powerpc-*-darwin* | powerpc-*-macos10* | powerpc-*-rhapsody*) |
1128 | targ_defvec=mach_o_be_vec | |
1129 | targ_selvecs="mach_o_be_vec mach_o_le_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec" | |
618b7301 | 1130 | targ_archs="$targ_archs bfd_i386_arch" |
b1c58715 | 1131 | ;; |
14bde378 | 1132 | powerpc-*-macos*) |
6d00b590 | 1133 | targ_defvec=powerpc_xcoff_vec |
252b5132 | 1134 | ;; |
b2d65c0b | 1135 | powerpc-*-lynxos*) |
6d00b590 AM |
1136 | targ_defvec=powerpc_elf32_vec |
1137 | targ_selvecs="rs6000_xcoff_vec" | |
b2d65c0b | 1138 | targ_cflags=-DSMALL_ARCHIVE |
7d3f158f | 1139 | ;; |
59bc061d | 1140 | powerpc-*-nto*) |
6d00b590 AM |
1141 | targ_defvec=powerpc_elf32_vec |
1142 | targ_selvecs="rs6000_xcoff_vec powerpc_elf32_le_vec powerpc_boot_vec" | |
59bc061d | 1143 | ;; |
9d8504b1 | 1144 | powerpc-*-vxworks* | powerpc-*-windiss*) |
6d00b590 AM |
1145 | targ_defvec=powerpc_elf32_vxworks_vec |
1146 | targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_elf32_le_vec powerpc_boot_vec" | |
1147 | targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec" | |
9d8504b1 | 1148 | ;; |
59bc061d | 1149 | powerpcle-*-nto*) |
6d00b590 AM |
1150 | targ_defvec=powerpc_elf32_le_vec |
1151 | targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_boot_vec" | |
59bc061d | 1152 | ;; |
252b5132 | 1153 | powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \ |
7e4e2059 | 1154 | powerpcle-*-solaris2* | powerpcle-*-linux-* | powerpcle-*-vxworks*) |
6d00b590 AM |
1155 | targ_defvec=powerpc_elf32_le_vec |
1156 | targ_selvecs="rs6000_xcoff_vec powerpc_elf32_vec powerpc_boot_vec" | |
1157 | targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec" | |
252b5132 | 1158 | ;; |
252b5132 | 1159 | powerpcle-*-pe | powerpcle-*-winnt* | powerpcle-*-cygwin*) |
6d00b590 AM |
1160 | targ_defvec=powerpc_pe_le_vec |
1161 | targ_selvecs="powerpc_pei_le_vec powerpc_pei_vec powerpc_pe_le_vec powerpc_pe_vec" | |
252b5132 RH |
1162 | ;; |
1163 | ||
889294f6 DD |
1164 | pru-*-*) |
1165 | targ_defvec=pru_elf32_vec | |
889294f6 DD |
1166 | ;; |
1167 | ||
e23eba97 NC |
1168 | #ifdef BFD64 |
1169 | riscv32-*-*) | |
1170 | targ_defvec=riscv_elf32_vec | |
763a5fa4 | 1171 | targ_selvecs="riscv_elf32_vec riscv_elf64_vec" |
e23eba97 NC |
1172 | want64=true |
1173 | ;; | |
e23eba97 NC |
1174 | riscv64-*-*) |
1175 | targ_defvec=riscv_elf64_vec | |
1176 | targ_selvecs="riscv_elf32_vec riscv_elf64_vec" | |
1177 | want64=true | |
1178 | ;; | |
1179 | #endif | |
1180 | ||
99c513f6 | 1181 | rl78-*-elf) |
6d00b590 | 1182 | targ_defvec=rl78_elf32_vec |
bdd32e03 | 1183 | targ_underscore=yes |
99c513f6 DD |
1184 | ;; |
1185 | ||
c7927a3c | 1186 | rx-*-elf) |
6d00b590 AM |
1187 | targ_defvec=rx_elf32_le_vec |
1188 | targ_selvecs="rx_elf32_be_vec rx_elf32_le_vec rx_elf32_be_ns_vec" | |
bdd32e03 | 1189 | targ_underscore=yes |
c7927a3c NC |
1190 | ;; |
1191 | ||
a85d7ed0 | 1192 | s390-*-linux*) |
6d00b590 AM |
1193 | targ_defvec=s390_elf32_vec |
1194 | targ64_selvecs=s390_elf64_vec | |
06f2f6af | 1195 | want64=true |
a85d7ed0 NC |
1196 | ;; |
1197 | #ifdef BFD64 | |
1198 | s390x-*-linux*) | |
6d00b590 AM |
1199 | targ_defvec=s390_elf64_vec |
1200 | targ_selvecs=s390_elf32_vec | |
314e9a4e | 1201 | want64=true |
a85d7ed0 | 1202 | ;; |
2fbd2a87 | 1203 | s390x-*-tpf*) |
6d00b590 | 1204 | targ_defvec=s390_elf64_vec |
314e9a4e | 1205 | want64=true |
2fbd2a87 | 1206 | ;; |
a85d7ed0 | 1207 | |
1c0d3aa6 | 1208 | score*-*-elf*) |
6d00b590 AM |
1209 | targ_defvec=score_elf32_be_vec |
1210 | targ_selvecs=score_elf32_le_vec | |
1c0d3aa6 | 1211 | ;; |
6566b43c L |
1212 | #endif /* BFD64 */ |
1213 | ||
7649aa50 | 1214 | sh*eb-*-linux*) |
6d00b590 AM |
1215 | targ_defvec=sh_elf32_linux_be_vec |
1216 | targ_selvecs=sh_elf32_linux_vec | |
de48f481 | 1217 | targ_selvecs="${targ_selvecs} sh_elf32_fdpic_le_vec sh_elf32_fdpic_be_vec" |
7649aa50 NC |
1218 | ;; |
1219 | sh*-*-linux*) | |
6d00b590 AM |
1220 | targ_defvec=sh_elf32_linux_vec |
1221 | targ_selvecs=sh_elf32_linux_be_vec | |
de48f481 | 1222 | targ_selvecs="${targ_selvecs} sh_elf32_fdpic_le_vec sh_elf32_fdpic_be_vec" |
7649aa50 | 1223 | ;; |
b129bfef | 1224 | |
ed6ba298 | 1225 | sh-*-uclinux* | sh[12]-*-uclinux*) |
6d00b590 AM |
1226 | targ_defvec=sh_elf32_vec |
1227 | 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" | |
5b0e55b6 | 1228 | ;; |
5b0e55b6 | 1229 | |
cea3d58d | 1230 | sh*l*-*-netbsdelf*) |
6d00b590 | 1231 | targ_defvec=sh_elf32_nbsd_le_vec |
211dc24b | 1232 | targ_selvecs="sh_elf32_nbsd_vec sh_coff_vec sh_coff_le_vec" |
e58ee0cd | 1233 | ;; |
8d05742f | 1234 | sh*-*-netbsdelf*) |
6d00b590 AM |
1235 | targ_defvec=sh_elf32_nbsd_vec |
1236 | targ_selvecs="sh_elf32_nbsd_le_vec sh_coff_vec sh_coff_le_vec" | |
8d05742f | 1237 | ;; |
6566b43c | 1238 | |
42b5d0ea | 1239 | shl*-*-elf* | sh[1234]l*-*-elf* | sh3el*-*-elf* | shl*-*-kaos*) |
6d00b590 | 1240 | targ_defvec=sh_elf32_le_vec |
211dc24b | 1241 | targ_selvecs="sh_elf32_vec sh_coff_le_vec sh_coff_vec sh_coff_small_le_vec sh_coff_small_vec" |
7a33bc10 JR |
1242 | targ_underscore=yes |
1243 | ;; | |
6566b43c | 1244 | |
9183ed4b | 1245 | sh-*-elf* | sh[1234]*-elf* | sh-*-rtems* | sh-*-kaos*) |
6d00b590 | 1246 | targ_defvec=sh_elf32_vec |
211dc24b | 1247 | targ_selvecs="sh_elf32_le_vec sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec" |
252b5132 RH |
1248 | targ_underscore=yes |
1249 | ;; | |
6566b43c | 1250 | |
ed71e111 | 1251 | sh-*-nto*) |
6d00b590 AM |
1252 | targ_defvec=sh_elf32_vec |
1253 | targ_selvecs="sh_elf32_le_vec sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec" | |
ed71e111 NC |
1254 | targ_underscore=yes |
1255 | ;; | |
a38b2659 | 1256 | sh*-*-openbsd*) |
6d00b590 AM |
1257 | targ_defvec=sh_elf32_nbsd_le_vec |
1258 | targ_selvecs="sh_elf32_nbsd_vec sh_coff_vec sh_coff_le_vec" | |
a38b2659 | 1259 | ;; |
17505c5c | 1260 | sh-*-pe) |
6d00b590 AM |
1261 | targ_defvec=sh_pe_le_vec |
1262 | targ_selvecs="sh_pe_le_vec sh_pei_le_vec" | |
17505c5c NC |
1263 | targ_underscore=yes |
1264 | ;; | |
257e20bc | 1265 | sh-*-vxworks) |
6d00b590 AM |
1266 | targ_defvec=sh_elf32_vxworks_vec |
1267 | targ_selvecs="sh_elf32_vxworks_le_vec" | |
257e20bc NC |
1268 | # FIXME None of the following are actually used on this target, but |
1269 | # they're necessary for coff-sh.c (which is unconditionally used) to be | |
1270 | # compiled correctly. | |
6d00b590 | 1271 | targ_selvecs="$targ_selvecs sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec" |
2f964f43 | 1272 | targ_underscore=yes |
257e20bc | 1273 | ;; |
9183ed4b | 1274 | sh-*-*) |
6d00b590 AM |
1275 | targ_defvec=sh_coff_vec |
1276 | targ_selvecs="sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec" | |
252b5132 RH |
1277 | targ_underscore=yes |
1278 | ;; | |
1279 | ||
1360ba76 | 1280 | sparc-*-solaris2.[0-6] | sparc-*-solaris2.[0-6].*) |
6d00b590 | 1281 | targ_defvec=sparc_elf32_sol2_vec |
1360ba76 | 1282 | ;; |
246c6687 AO |
1283 | #ifdef BFD64 |
1284 | sparc-*-solaris2* | sparcv9-*-solaris2* | sparc64-*-solaris2*) | |
6d00b590 | 1285 | targ_defvec=sparc_elf32_sol2_vec |
c9098af4 | 1286 | targ_selvecs="sparc_elf64_sol2_vec" |
314e9a4e | 1287 | want64=true |
246c6687 | 1288 | ;; |
c9098af4 AM |
1289 | sparc64-*-freebsd* | sparc64-*-kfreebsd*-gnu) |
1290 | targ_defvec=sparc_elf64_fbsd_vec | |
1291 | targ_selvecs="sparc_elf64_vec sparc_elf32_vec" | |
252b5132 | 1292 | ;; |
c9098af4 | 1293 | sparc64*-*-*) |
6d00b590 | 1294 | targ_defvec=sparc_elf64_vec |
c9098af4 | 1295 | targ_selvecs="sparc_elf32_vec" |
314e9a4e | 1296 | want64=true |
60bcf0fa | 1297 | ;; |
c9098af4 AM |
1298 | #endif |
1299 | sparc-*-linux-* | sparcv*-*-linux-*) | |
6d00b590 | 1300 | targ_defvec=sparc_elf32_vec |
c9098af4 AM |
1301 | targ_selvecs="sparc_elf64_vec" |
1302 | ;; | |
1303 | sparc-*-vxworks*) | |
1304 | targ_defvec=sparc_elf32_vxworks_vec | |
1305 | targ_selvecs="sparc_elf32_vec" | |
ddcfc5fc | 1306 | ;; |
9f971fcb | 1307 | sparc*-*-*) |
c9098af4 | 1308 | targ_defvec=sparc_elf32_vec |
252b5132 RH |
1309 | ;; |
1310 | ||
e9f53129 | 1311 | spu-*-elf) |
6d00b590 | 1312 | targ_defvec=spu_elf32_vec |
78b8434d | 1313 | want64=true |
e9f53129 AM |
1314 | ;; |
1315 | ||
2a616379 | 1316 | tic6x-*-elf) |
6d00b590 AM |
1317 | targ_defvec=tic6x_elf32_c6000_le_vec |
1318 | targ_selvecs="tic6x_elf32_c6000_be_vec tic6x_elf32_le_vec tic6x_elf32_be_vec" | |
2a616379 BS |
1319 | ;; |
1320 | ||
1321 | tic6x-*-uclinux) | |
6d00b590 AM |
1322 | targ_defvec=tic6x_elf32_linux_le_vec |
1323 | targ_selvecs="tic6x_elf32_linux_be_vec tic6x_elf32_le_vec tic6x_elf32_be_vec" | |
40b36596 JM |
1324 | ;; |
1325 | ||
252b5132 | 1326 | tic80*-*-*) |
6d00b590 | 1327 | targ_defvec=tic80_coff_vec |
252b5132 RH |
1328 | targ_underscore=yes |
1329 | ;; | |
1330 | ||
aa137e4d NC |
1331 | #ifdef BFD64 |
1332 | tilegx-*-*) | |
6d00b590 AM |
1333 | targ_defvec=tilegx_elf64_le_vec |
1334 | targ_selvecs="tilegx_elf64_be_vec tilegx_elf32_be_vec tilegx_elf32_le_vec" | |
fb6cedde WL |
1335 | ;; |
1336 | tilegxbe-*-*) | |
6d00b590 AM |
1337 | targ_defvec=tilegx_elf64_be_vec |
1338 | targ_selvecs="tilegx_elf64_le_vec tilegx_elf32_be_vec tilegx_elf32_le_vec" | |
aa137e4d NC |
1339 | ;; |
1340 | #endif | |
1341 | ||
1342 | tilepro-*-*) | |
6d00b590 | 1343 | targ_defvec=tilepro_elf32_vec |
aa137e4d NC |
1344 | ;; |
1345 | ||
3f8107ab AM |
1346 | ft32*-*-*) |
1347 | targ_defvec=ft32_elf32_vec | |
1348 | ;; | |
1349 | ||
1cd986c5 | 1350 | v850*-*-*) |
6d00b590 AM |
1351 | targ_defvec=v850_elf32_vec |
1352 | targ_selvecs="v800_elf32_vec" | |
bdd32e03 | 1353 | targ_underscore=yes |
252b5132 | 1354 | ;; |
252b5132 | 1355 | |
90ace9e9 | 1356 | vax-*-netbsdelf*) |
6d00b590 AM |
1357 | targ_defvec=vax_elf32_vec |
1358 | targ_selvecs="vax_aout_nbsd_vec vax_aout_1knbsd_vec" | |
90ace9e9 JT |
1359 | ;; |
1360 | ||
1361 | vax-*-netbsdaout* | vax-*-netbsd*) | |
6d00b590 AM |
1362 | targ_defvec=vax_aout_nbsd_vec |
1363 | targ_selvecs="vax_elf32_vec vax_aout_1knbsd_vec" | |
90ace9e9 JT |
1364 | targ_underscore=yes |
1365 | ;; | |
1366 | ||
7d1ebfb2 | 1367 | vax-*-openbsd*) |
6d00b590 | 1368 | targ_defvec=vax_aout_nbsd_vec |
7d1ebfb2 NC |
1369 | targ_underscore=yes |
1370 | ;; | |
1371 | ||
ed84e695 | 1372 | vax-*-linux-*) |
6d00b590 | 1373 | targ_defvec=vax_elf32_vec |
f8fc3443 NC |
1374 | ;; |
1375 | ||
d924db55 EB |
1376 | visium-*-elf) |
1377 | targ_defvec=visium_elf32_vec | |
1378 | ;; | |
1b786873 | 1379 | |
8fb740dd PC |
1380 | wasm32-*-*) |
1381 | targ_defvec=wasm32_elf32_vec | |
a6be0538 | 1382 | targ_selvecs="wasm_vec" |
8fb740dd PC |
1383 | ;; |
1384 | ||
f6c1a2d5 | 1385 | xgate-*-*) |
6d00b590 AM |
1386 | targ_defvec=xgate_elf32_vec |
1387 | targ_selvecs="xgate_elf32_vec" | |
f6c1a2d5 | 1388 | ;; |
1b786873 | 1389 | |
93fbbb04 | 1390 | xstormy16-*-elf) |
6d00b590 | 1391 | targ_defvec=xstormy16_elf32_vec |
93fbbb04 GK |
1392 | ;; |
1393 | ||
f8a52b59 | 1394 | xtensa*-*-*) |
6d00b590 AM |
1395 | targ_defvec=xtensa_elf32_le_vec |
1396 | targ_selvecs=xtensa_elf32_be_vec | |
e0001a05 | 1397 | ;; |
d70c5fc7 | 1398 | xc16x-*-elf) |
6d00b590 | 1399 | targ_defvec=xc16x_elf32_vec |
d70c5fc7 | 1400 | ;; |
a27e4371 | 1401 | |
3c9b82ba | 1402 | z80-*-*) |
6d00b590 | 1403 | targ_defvec=z80_coff_vec |
3c9b82ba NC |
1404 | targ_underscore=no |
1405 | ;; | |
1406 | ||
252b5132 | 1407 | z8k*-*-*) |
6d00b590 | 1408 | targ_defvec=z8k_coff_vec |
252b5132 RH |
1409 | targ_underscore=yes |
1410 | ;; | |
1411 | ||
252b5132 RH |
1412 | # END OF targmatch.h |
1413 | *) | |
1414 | echo 1>&2 "*** BFD does not support target ${targ}." | |
1415 | echo 1>&2 "*** Look in bfd/config.bfd for supported targets." | |
1416 | exit 1 | |
1417 | ;; | |
1418 | esac | |
1419 | ||
42429eac RS |
1420 | # All MIPS ELF targets need a 64-bit bfd_vma. |
1421 | case "${targ_defvec} ${targ_selvecs}" in | |
6d00b590 | 1422 | *mips_elf*) |
42429eac RS |
1423 | want64=true |
1424 | ;; | |
1425 | esac | |
1426 | ||
e9e69f5a AM |
1427 | case "${host64}${want64}" in |
1428 | *true*) | |
1429 | targ_selvecs="${targ_selvecs} ${targ64_selvecs}" | |
1430 | ;; | |
1431 | esac | |
1432 | ||
252b5132 RH |
1433 | # If we support any ELF target, then automatically add support for the |
1434 | # generic ELF targets. This permits an objdump with some ELF support | |
1435 | # to be used on an arbitrary ELF file for anything other than | |
1436 | # relocation information. | |
1437 | case "${targ_defvec} ${targ_selvecs}" in | |
6d00b590 AM |
1438 | *elf64* | *mips_elf32_n*) |
1439 | targ_selvecs="${targ_selvecs} elf64_le_vec elf64_be_vec elf32_le_vec elf32_be_vec" | |
252b5132 | 1440 | ;; |
6d00b590 AM |
1441 | *elf32*) |
1442 | targ_selvecs="${targ_selvecs} elf32_le_vec elf32_be_vec" | |
252b5132 RH |
1443 | ;; |
1444 | esac | |
8a9036a4 | 1445 | |
bf64a951 L |
1446 | # If we support Intel MCU target, then add support for bfd_iamcu_arch. |
1447 | case "${targ_defvec} ${targ_selvecs}" in | |
1448 | *iamcu_elf32*) | |
1449 | targ_archs="$targ_archs bfd_iamcu_arch" | |
1450 | ;; | |
1451 | esac | |
1452 | ||
8a9036a4 L |
1453 | # If we support Intel L1OM target, then add support for bfd_l1om_arch. |
1454 | case "${targ_defvec} ${targ_selvecs}" in | |
6d00b590 | 1455 | *l1om_elf64*) |
8a9036a4 L |
1456 | targ_archs="$targ_archs bfd_l1om_arch" |
1457 | ;; | |
1458 | esac | |
7a9068fe L |
1459 | |
1460 | # If we support Intel K1OM target, then add support for bfd_k1om_arch. | |
1461 | case "${targ_defvec} ${targ_selvecs}" in | |
6d00b590 | 1462 | *k1om_elf64*) |
7a9068fe L |
1463 | targ_archs="$targ_archs bfd_k1om_arch" |
1464 | ;; | |
1465 | esac |