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