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