Commit | Line | Data |
---|---|---|
14ee9f48 | 1 | # gas target specific configuration file. This is a -*- sh -*- file. |
5bf135a7 | 2 | # |
250d07de | 3 | # Copyright (C) 2012-2021 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. | |
886a2506 | 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. | |
886a2506 | 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 | # | |
14ee9f48 ILT |
19 | |
20 | # This is invoked by configure. Putting it in a separate shell file | |
21 | # lets us skip running autoconf when modifying target specific | |
22 | # information. | |
23 | ||
24 | # Input shell variables: | |
25 | # targ a configuration target name, such as i686-pc-linux-gnu. | |
26 | ||
27 | # Output shell variables: | |
28 | # cpu_type canonical gas cpu type; identifies the config/tc-* files | |
29 | # fmt output format; identifies the config/obj-* files | |
30 | # em emulation; identifies the config/te-* files | |
14ee9f48 ILT |
31 | |
32 | # Optional output shell variables; these are not always set: | |
8d63c93e | 33 | # arch the default architecture; sets DEFAULT_ARCH on some systems |
14ee9f48 ILT |
34 | # endian "big" or "little"; used on bi-endian systems |
35 | ||
36 | cpu_type= | |
37 | fmt= | |
6f19c13c AM |
38 | em=generic |
39 | bfd_gas=no | |
14ee9f48 ILT |
40 | arch= |
41 | endian= | |
42 | ||
43 | eval `echo $targ | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/cpu=\1 vendor=\2 os=\3/'` | |
44 | ||
45 | # Check for architecture variants. Set cpu_type and, optionally, | |
46 | # endian and arch. | |
47 | # Note: This table is alpha-sorted, please try to keep it that way. | |
48 | case ${cpu} in | |
3c0367d0 JW |
49 | aarch64) cpu_type=aarch64 endian=little arch=aarch64;; |
50 | aarch64_be) cpu_type=aarch64 endian=big arch=aarch64;; | |
14ee9f48 | 51 | alpha*) cpu_type=alpha ;; |
e729279b | 52 | am33_2.0) cpu_type=mn10300 endian=little ;; |
886a2506 | 53 | arc*eb) cpu_type=arc endian=big ;; |
14ee9f48 ILT |
54 | arm*be|arm*b) cpu_type=arm endian=big ;; |
55 | arm*) cpu_type=arm endian=little ;; | |
07c1b327 | 56 | bfin*) cpu_type=bfin endian=little ;; |
14ee9f48 | 57 | c4x*) cpu_type=tic4x ;; |
3d3d428f | 58 | cr16*) cpu_type=cr16 endian=little ;; |
14ee9f48 ILT |
59 | crisv32) cpu_type=cris arch=crisv32 ;; |
60 | crx*) cpu_type=crx endian=little ;; | |
cfb8c092 | 61 | epiphany*) cpu_type=epiphany endian=little ;; |
ebff6cd5 | 62 | fido) cpu_type=m68k ;; |
14ee9f48 ILT |
63 | hppa*) cpu_type=hppa ;; |
64 | i[3-7]86) cpu_type=i386 arch=i386;; | |
2f5f29ca | 65 | ia16) cpu_type=i386 arch=i386;; |
14ee9f48 | 66 | ia64) cpu_type=ia64 ;; |
8d63c93e RM |
67 | ip2k) cpu_type=ip2k endian=big ;; |
68 | iq2000) cpu_type=iq2000 endian=big ;; | |
487565fe | 69 | lm32) cpu_type=lm32 ;; |
b96282be | 70 | m32c) cpu_type=m32c endian=little ;; |
14ee9f48 ILT |
71 | m32r) cpu_type=m32r endian=big ;; |
72 | m32rle) cpu_type=m32r endian=little ;; | |
e729279b | 73 | m5200) cpu_type=m68k ;; |
14ee9f48 | 74 | m68008) cpu_type=m68k ;; |
e729279b NC |
75 | m680[012346]0) cpu_type=m68k ;; |
76 | m6811|m6812|m68hc12) cpu_type=m68hc11 ;; | |
14ee9f48 | 77 | m683??) cpu_type=m68k ;; |
7b4ae824 | 78 | s12z) cpu_type=s12z ;; |
743d7f19 | 79 | mep) cpu_type=mep endian=little ;; |
f23200ad ME |
80 | microblazeel*) cpu_type=microblaze endian=little;; |
81 | microblaze*) cpu_type=microblaze endian=big;; | |
14ee9f48 ILT |
82 | mips*el) cpu_type=mips endian=little ;; |
83 | mips*) cpu_type=mips endian=big ;; | |
487565fe | 84 | mt) cpu_type=mt endian=big ;; |
35c08157 KLC |
85 | nds32be) cpu_type=nds32 endian=big ;; |
86 | nds32le) cpu_type=nds32 endian=little ;; | |
73589c9d | 87 | or1k* | or1knd*) cpu_type=or1k endian=big ;; |
14ee9f48 ILT |
88 | pjl*) cpu_type=pj endian=little ;; |
89 | pj*) cpu_type=pj endian=big ;; | |
90 | powerpc*le*) cpu_type=ppc endian=little ;; | |
91 | powerpc*) cpu_type=ppc endian=big ;; | |
fbc09e7a | 92 | riscv64be*) cpu_type=riscv endian=big arch=riscv64 ;; |
e23eba97 | 93 | riscv64*) cpu_type=riscv endian=little arch=riscv64 ;; |
fbc09e7a | 94 | riscv32be*|riscvbe*) cpu_type=riscv endian=big arch=riscv32 ;; |
d19969ff | 95 | riscv32* | riscv*) cpu_type=riscv endian=little arch=riscv32 ;; |
14ee9f48 | 96 | rs6000*) cpu_type=ppc ;; |
99c513f6 | 97 | rl78*) cpu_type=rl78 ;; |
c7927a3c | 98 | rx) cpu_type=rx ;; |
14ee9f48 ILT |
99 | s390x*) cpu_type=s390 arch=s390x ;; |
100 | s390*) cpu_type=s390 arch=s390 ;; | |
487565fe AM |
101 | score*l) cpu_type=score endian=little ;; |
102 | score*) cpu_type=score endian=big ;; | |
14ee9f48 ILT |
103 | sh*le) cpu_type=sh endian=little ;; |
104 | sh*) cpu_type=sh endian=big ;; | |
10ab38d9 | 105 | sparc64* | sparcv9*) cpu_type=sparc arch=v9-64 ;; |
14ee9f48 | 106 | sparc86x*) cpu_type=sparc arch=sparc86x ;; |
e729279b NC |
107 | sparclet*) cpu_type=sparc arch=sparclet ;; |
108 | sparclite*) cpu_type=sparc arch=sparclite ;; | |
14ee9f48 | 109 | sparc*) cpu_type=sparc arch=sparclite ;; # ??? See tc-sparc.c. |
fb6cedde WL |
110 | tilegx*be) cpu_type=tilegx endian=big ;; |
111 | tilegx*) cpu_type=tilegx endian=little ;; | |
14ee9f48 | 112 | v850*) cpu_type=v850 ;; |
b6605ddd | 113 | visium) cpu_type=visium endian=big ;; |
f96bd6c2 | 114 | wasm32) cpu_type=wasm32 endian=little ;; |
ade78dba | 115 | x86_64*) cpu_type=i386 arch=x86_64;; |
f6c1a2d5 | 116 | xgate) cpu_type=xgate ;; |
14ee9f48 ILT |
117 | xtensa*) cpu_type=xtensa arch=xtensa ;; |
118 | *) cpu_type=${cpu} ;; | |
119 | esac | |
120 | ||
121 | ||
122 | # Assign object format. Set fmt, em, and bfd_gas. | |
123 | generic_target=${cpu_type}-$vendor-$os | |
14ee9f48 ILT |
124 | # Note: This table is alpha-sorted, please try to keep it that way. |
125 | case ${generic_target} in | |
de514cf3 | 126 | aarch64*-*-elf*) fmt=elf;; |
d5451cd4 | 127 | aarch64*-*-fuchsia*) fmt=elf;; |
1f568f9a | 128 | aarch64*-*-genode*) fmt=elf;; |
3c0367d0 JW |
129 | aarch64*-*-linux*) fmt=elf em=linux |
130 | case ${cpu}-${os} in | |
131 | aarch64*-linux-gnu_ilp32) arch=aarch64:32 ;; | |
132 | esac ;; | |
cc8b27f8 | 133 | aarch64*-*-netbsd*) fmt=elf em=nbsd;; |
a06ea964 | 134 | |
14ee9f48 ILT |
135 | alpha-*-*vms*) fmt=evax ;; |
136 | alpha-*-osf*) fmt=ecoff ;; | |
df26367c | 137 | alpha-*-linux*ecoff*) fmt=ecoff ;; |
ed84e695 | 138 | alpha-*-linux-*) fmt=elf em=linux ;; |
5c0ff163 | 139 | alpha-*-netbsd* | alpha-*-openbsd*) fmt=elf em=nbsd ;; |
14ee9f48 ILT |
140 | |
141 | arc-*-elf*) fmt=elf ;; | |
4ad0bb5f | 142 | arc*-*-linux*) fmt=elf bfd_gas=yes ;; |
14ee9f48 | 143 | |
a2bea324 | 144 | arm-*-phoenix*) fmt=elf ;; |
8c5fc800 | 145 | arm-*-elf) fmt=elf ;; |
1f568f9a | 146 | arm-*-eabi* | arm-*-rtems* | arm-*-genode*) fmt=elf em=armeabi ;; |
14ee9f48 ILT |
147 | arm-*-kaos*) fmt=elf ;; |
148 | arm-*-conix*) fmt=elf ;; | |
f7f2534e NC |
149 | arm-*-freebsd[89].* | armeb-*-freebsd[89].*) |
150 | fmt=elf em=freebsd ;; | |
151 | arm-*-freebsd* | armeb-*-freebsd*) fmt=elf em=armfbsdeabi ;; | |
152 | arm*-*-freebsd*) fmt=elf em=armfbsdvfp ;; | |
94089a50 | 153 | arm-*-linux-*eabi*) fmt=elf em=armlinuxeabi ;; |
ed84e695 | 154 | arm-*-linux-*) fmt=elf em=linux ;; |
9fcfe2ed | 155 | arm-*-uclinux*eabi*) fmt=elf em=armlinuxeabi ;; |
14ee9f48 | 156 | arm-*-uclinux*) fmt=elf em=linux ;; |
b38cadfb | 157 | arm-*-nacl*) fmt=elf em=nacl ;; |
487565fe | 158 | arm-*-netbsdelf*) fmt=elf em=nbsd ;; |
14ee9f48 | 159 | arm-*-nto*) fmt=elf ;; |
361dff73 DK |
160 | arm-wince-pe | arm-*-wince | arm*-*-mingw32ce* | arm*-*-cegcc*) |
161 | fmt=coff em=wince-pe ;; | |
8c5fc800 | 162 | arm-*-pe) fmt=coff em=pe ;; |
d5451cd4 | 163 | arm-*-fuchsia*) fmt=elf ;; |
14ee9f48 | 164 | |
07c1b327 | 165 | avr-*-*) fmt=elf bfd_gas=yes ;; |
fe4fa32c MF |
166 | |
167 | bfin-*-linux-uclibc) fmt=fdpicelf em=linux ;; | |
168 | bfin-*-uclinux*) fmt=elf em=linux ;; | |
07c1b327 | 169 | bfin-*elf) fmt=elf ;; |
fe4fa32c | 170 | |
487565fe | 171 | cr16-*-elf*) fmt=elf ;; |
14ee9f48 | 172 | |
ed84e695 | 173 | cris-*-linux-* | crisv32-*-linux-*) |
6f19c13c AM |
174 | fmt=multi em=linux ;; |
175 | cris-*-* | crisv32-*-*) fmt=multi ;; | |
14ee9f48 | 176 | |
487565fe | 177 | crx-*-elf*) fmt=elf ;; |
14ee9f48 | 178 | |
b8891f8d AJ |
179 | csky-*-elf*abiv1) fmt=elf em=csky_abiv1 ;; |
180 | csky-*-elf*) fmt=elf em=csky_abiv2 ;; | |
181 | csky-*-linux*abiv1) fmt=elf em=csky_abiv1_linux ;; | |
182 | csky-*-linux*) fmt=elf em=csky_abiv2_linux ;; | |
183 | ||
14ee9f48 ILT |
184 | d10v-*-*) fmt=elf ;; |
185 | d30v-*-*) fmt=elf ;; | |
186 | dlx-*-*) fmt=elf ;; | |
187 | ||
f8861f5d | 188 | bpf-*-*) fmt=elf ;; |
cfb8c092 NC |
189 | epiphany-*-*) fmt=elf ;; |
190 | ||
14ee9f48 ILT |
191 | fr30-*-*) fmt=elf ;; |
192 | frv-*-*linux*) fmt=elf em=linux;; | |
193 | frv-*-*) fmt=elf ;; | |
194 | ||
3f8107ab AM |
195 | ft32-*-*) fmt=elf ;; |
196 | ||
14ee9f48 ILT |
197 | hppa-*-linux*) |
198 | case ${cpu} in | |
199 | hppa*64*) fmt=elf em=hppalinux64 ;; | |
200 | hppa*) fmt=elf em=linux ;; | |
201 | esac ;; | |
202 | hppa-*-*elf*) fmt=elf em=hppa ;; | |
203 | hppa-*-lites*) fmt=elf em=hppa ;; | |
204 | hppa-*-netbsd*) fmt=elf em=nbsd ;; | |
205 | hppa-*-openbsd*) fmt=elf em=hppa ;; | |
206 | hppa-*-osf*) fmt=som em=hppa ;; | |
14ee9f48 ILT |
207 | hppa-*-hpux11*) |
208 | case ${cpu} in | |
209 | hppa*64*) fmt=elf em=hppa64 ;; | |
210 | hppa*) fmt=som em=hppa ;; | |
211 | esac ;; | |
212 | hppa-*-hpux*) fmt=som em=hppa ;; | |
213 | hppa-*-mpeix*) fmt=som em=hppa ;; | |
214 | hppa-*-bsd*) fmt=som em=hppa ;; | |
215 | hppa-*-hiux*) fmt=som em=hppa ;; | |
216 | ||
de514cf3 | 217 | h8300-*-elf) fmt=elf ;; |
5518c738 | 218 | h8300-*-linux*) fmt=elf em=linux ;; |
14ee9f48 | 219 | |
14ee9f48 ILT |
220 | i386-*-beospe*) fmt=coff em=pe ;; |
221 | i386-*-beos*) fmt=elf ;; | |
5197d474 | 222 | i386-*-elfiamcu) fmt=elf arch=iamcu ;; |
b633b725 | 223 | i386-*-elf*) fmt=elf ;; |
d5451cd4 | 224 | i386-*-fuchsia*) fmt=elf ;; |
1f568f9a | 225 | i386-*-genode*) fmt=elf ;; |
14ee9f48 | 226 | i386-*-bsd*) fmt=aout em=386bsd ;; |
14ee9f48 ILT |
227 | i386-*-netbsdpe*) fmt=coff em=pe ;; |
228 | i386-*-netbsd*-gnu* | \ | |
229 | i386-*-knetbsd*-gnu | \ | |
c65c21e1 | 230 | i386-*-netbsd* | \ |
333f7af7 | 231 | i386-*-openbsd*) fmt=elf em=nbsd ;; |
3c995545 L |
232 | i386-*-linux-*) fmt=elf em=linux |
233 | case ${cpu}-${os} in | |
234 | x86_64*-linux-gnux32) arch=x86_64:32 ;; | |
235 | esac ;; | |
6f19c13c | 236 | i386-*-lynxos*) fmt=elf em=lynx ;; |
f2e2d2f5 | 237 | i386-*-redox*) fmt=elf ;; |
2774199c | 238 | i386-*-solaris*) fmt=elf em=solaris ;; |
5b806d27 NC |
239 | i386-*-freebsd* \ |
240 | | i386-*-kfreebsd*-gnu) fmt=elf em=freebsd ;; | |
14ee9f48 | 241 | i386-*-msdosdjgpp* \ |
14c194bb | 242 | | i386-*-go32*) fmt=coff em=go32 ;; |
3896cfd5 | 243 | i386-*-gnu*) fmt=elf em=gnu ;; |
14ee9f48 ILT |
244 | i386-*-msdos*) fmt=aout ;; |
245 | i386-*-moss*) fmt=elf ;; | |
246 | i386-*-pe) fmt=coff em=pe ;; | |
cb948fc0 KT |
247 | i386-*-cygwin*) |
248 | case ${cpu} in | |
249 | x86_64*) fmt=coff em=pep ;; | |
250 | i*) fmt=coff em=pe ;; | |
251 | esac ;; | |
14ee9f48 | 252 | i386-*-interix*) fmt=coff em=interix ;; |
42037fe5 NC |
253 | i386-*-mingw*) |
254 | case ${cpu} in | |
255 | x86_64*) fmt=coff em=pep ;; | |
256 | i*) fmt=coff em=pe ;; | |
257 | esac ;; | |
14ee9f48 ILT |
258 | i386-*-nto-qnx*) fmt=elf ;; |
259 | i386-*-*nt*) fmt=coff em=pe ;; | |
b59bea8a | 260 | i386-*-rdos*) fmt=elf ;; |
e57f8c65 | 261 | i386-*-darwin*) fmt=macho ;; |
14ee9f48 | 262 | |
2f5f29ca AJ |
263 | ia16-*-elf*) fmt=elf ;; |
264 | ||
14ee9f48 | 265 | ia64-*-elf*) fmt=elf ;; |
01e1a5bc | 266 | ia64-*-*vms*) fmt=elf em=vms ;; |
14ee9f48 | 267 | ia64-*-aix*) fmt=elf em=ia64aix ;; |
ed84e695 | 268 | ia64-*-linux-*) fmt=elf em=linux ;; |
14ee9f48 ILT |
269 | ia64-*-hpux*) fmt=elf em=hpux ;; |
270 | ia64-*-netbsd*) fmt=elf em=nbsd ;; | |
271 | ||
272 | ip2k-*-*) fmt=elf ;; | |
273 | ||
487565fe | 274 | iq2000-*-elf) fmt=elf ;; |
14ee9f48 | 275 | |
84e94c90 NC |
276 | lm32-*-*) fmt=elf ;; |
277 | ||
de514cf3 | 278 | m32c-*-elf) fmt=elf ;; |
d3bf77be | 279 | |
de514cf3 | 280 | m32r-*-elf*) fmt=elf ;; |
14ee9f48 ILT |
281 | m32r-*-linux*) fmt=elf em=linux;; |
282 | ||
283 | m68hc11-*-* | m6811-*-*) fmt=elf ;; | |
284 | m68hc12-*-* | m6812-*-*) fmt=elf ;; | |
285 | ||
14ee9f48 ILT |
286 | m68k-*-elf*) fmt=elf ;; |
287 | m68k-*-sysv4*) fmt=elf em=svr4 ;; | |
ed84e695 | 288 | m68k-*-linux-*) fmt=elf em=linux ;; |
2c678708 | 289 | m68k-*-uclinux*) fmt=elf em=uclinux ;; |
14ee9f48 | 290 | m68k-*-gnu*) fmt=elf ;; |
14ee9f48 | 291 | m68k-*-netbsdelf*) fmt=elf em=nbsd ;; |
14ee9f48 | 292 | |
7b4ae824 JD |
293 | s12z-*-*) fmt=elf ;; |
294 | ||
280d71bf DB |
295 | mep-*-elf) fmt=elf ;; |
296 | ||
a3c62988 NC |
297 | metag-*-elf) fmt=elf ;; |
298 | metag-*-linux*) fmt=elf em=linux ;; | |
299 | ||
14ee9f48 ILT |
300 | mcore-*-elf) fmt=elf ;; |
301 | mcore-*-pe) fmt=coff em=pe bfd_gas=yes ;; | |
302 | ||
7ba29e2a NC |
303 | microblaze-*-*) fmt=elf ;; |
304 | ||
14ee9f48 ILT |
305 | mips-*-irix6*) fmt=elf em=irix ;; |
306 | mips-*-irix5*) fmt=elf em=irix ;; | |
14ee9f48 | 307 | mips*-*-linux*) fmt=elf em=tmips ;; |
aeffff67 RS |
308 | mips*-*-freebsd* | mips*-*-kfreebsd*-gnu) |
309 | fmt=elf em=freebsd ;; | |
c00f0d7a | 310 | mips-*-sysv4* | mips-*-gnu*) fmt=elf em=tmips ;; |
a9d58c06 AB |
311 | mips*-sde-elf* | mips*-mti-elf* | mips*-img-elf*) |
312 | fmt=elf em=tmips ;; | |
de514cf3 | 313 | mips-*-elf*) fmt=elf ;; |
aaa2ab3d | 314 | mips-*-netbsd*) fmt=elf em=tmips ;; |
26eebcf5 | 315 | mips-*-openbsd*) fmt=elf em=tmips ;; |
1e3f5548 | 316 | mips-*-windiss) fmt=elf ;; |
14ee9f48 ILT |
317 | |
318 | mmix-*-*) fmt=elf ;; | |
319 | ||
320 | mn10200-*-*) fmt=elf ;; | |
321 | ||
322 | # cpu_type for am33_2.0 is set to mn10300 | |
6f19c13c | 323 | mn10300-*-linux*) fmt=elf em=linux ;; |
14ee9f48 ILT |
324 | mn10300-*-*) fmt=elf ;; |
325 | ||
48494700 AG |
326 | moxie-*-uclinux) fmt=elf em=linux ;; |
327 | moxie-*-moxiebox*) fmt=elf endian=little ;; | |
487565fe | 328 | moxie-*-*) fmt=elf ;; |
886a2506 | 329 | |
4970f871 | 330 | mt-*-elf) fmt=elf bfd_gas=yes ;; |
e729279b | 331 | |
14ee9f48 ILT |
332 | msp430-*-*) fmt=elf ;; |
333 | ||
35c08157 KLC |
334 | nds32-*-elf*) fmt=elf ;; |
335 | nds32-*-linux*) fmt=elf em=linux ;; | |
336 | ||
ea33f281 | 337 | nios2*-linux*) fmt=elf em=linux ;; |
36591ba1 | 338 | |
14ee9f48 ILT |
339 | ns32k-pc532-mach*) fmt=aout em=pc532mach ;; |
340 | ns32k-pc532-ux*) fmt=aout em=pc532mach ;; | |
341 | ns32k-pc532-lites*) fmt=aout em=nbsd532 ;; | |
342 | ns32k-*-*n*bsd*) fmt=aout em=nbsd532 ;; | |
343 | ||
8a196b99 JS |
344 | or1k*-*-elf | or1k*-*-rtems*) fmt=elf endian=big ;; |
345 | or1k*-*-linux*) fmt=elf em=linux endian=big ;; | |
14ee9f48 ILT |
346 | |
347 | pj*) fmt=elf ;; | |
348 | ||
14ee9f48 | 349 | ppc-*-aix5.[01]) fmt=coff em=aix5 ;; |
e5231592 | 350 | ppc-*-aix[5-9].*) fmt=coff em=aix5 ;; |
c322dea4 | 351 | ppc-*-aix*) fmt=coff em=aix ;; |
14ee9f48 ILT |
352 | ppc-*-beos*) fmt=coff ;; |
353 | ppc-*-*n*bsd* | ppc-*-elf*) fmt=elf ;; | |
354 | ppc-*-eabi* | ppc-*-sysv4*) fmt=elf ;; | |
ed84e695 | 355 | ppc-*-linux-*) fmt=elf em=linux ;; |
2774199c | 356 | ppc-*-solaris*) fmt=elf em=solaris ;; |
14ee9f48 ILT |
357 | ppc-*-macos*) fmt=coff em=macos ;; |
358 | ppc-*-nto*) fmt=elf ;; | |
359 | ppc-*-kaos*) fmt=elf ;; | |
14ee9f48 | 360 | |
93f11b16 DD |
361 | pru-*-*) fmt=elf ;; |
362 | ||
fbc09e7a | 363 | riscv*-*-*) fmt=elf ;; |
e23eba97 | 364 | |
8d3c78e4 YS |
365 | rx-*-linux*) fmt=elf em=linux ;; |
366 | ||
ed84e695 | 367 | s390-*-linux-*) fmt=elf em=linux ;; |
14ee9f48 ILT |
368 | s390-*-tpf*) fmt=elf ;; |
369 | ||
487565fe | 370 | score-*-elf) fmt=elf ;; |
1c0d3aa6 | 371 | |
14ee9f48 ILT |
372 | sh*-*-linux*) fmt=elf em=linux |
373 | case ${cpu} in | |
374 | sh*eb) endian=big ;; | |
375 | *) endian=little ;; | |
376 | esac ;; | |
7e127222 KK |
377 | sh*-*-netbsdelf*) fmt=elf em=nbsd |
378 | case ${cpu} in | |
379 | sh*l*) endian=little ;; | |
380 | *) endian=big ;; | |
381 | esac ;; | |
8e45593f NC |
382 | sh-*-elf*) fmt=elf ;; |
383 | sh-*-uclinux* | sh[12]-*-uclinux*) fmt=elf em=uclinux ;; | |
14ee9f48 ILT |
384 | sh-*-coff*) fmt=coff ;; |
385 | sh-*-nto*) fmt=elf ;; | |
e2201c2a | 386 | sh-*-pe*) fmt=coff em=pe endian=little ;; |
14ee9f48 ILT |
387 | sh-*-kaos*) fmt=elf ;; |
388 | shle*-*-kaos*) fmt=elf ;; | |
14ee9f48 | 389 | |
ed84e695 | 390 | sparc-*-linux-*) fmt=elf em=linux ;; |
2774199c | 391 | sparc-*-solaris*) fmt=elf em=solaris ;; |
c24d0e8d | 392 | sparc-*-freebsd*) fmt=elf em=freebsd ;; |
c9098af4 | 393 | sparc-*-*bsd*) fmt=elf em=nbsd ;; |
14ee9f48 | 394 | |
e9f53129 AM |
395 | spu-*-elf) fmt=elf ;; |
396 | ||
14ee9f48 ILT |
397 | tic30-*-*coff*) fmt=coff bfd_gas=yes ;; |
398 | tic4x-*-* | c4x-*-*) fmt=coff bfd_gas=yes ;; | |
399 | tic54x-*-* | c54x*-*-*) fmt=coff bfd_gas=yes need_libm=yes;; | |
40b36596 | 400 | tic6x-*-*) fmt=elf ;; |
14ee9f48 | 401 | |
fb6cedde | 402 | tilepro-*-* | tilegx*-*-*) fmt=elf ;; |
aa137e4d | 403 | |
1cd986c5 | 404 | v850*-*-*) fmt=elf ;; |
14ee9f48 ILT |
405 | |
406 | vax-*-netbsdelf*) fmt=elf em=nbsd ;; | |
ed84e695 | 407 | vax-*-linux-*) fmt=elf em=linux ;; |
14ee9f48 | 408 | |
b6605ddd EB |
409 | visium-*-elf) fmt=elf ;; |
410 | ||
f96bd6c2 PC |
411 | wasm32-*-*) fmt=elf ;; |
412 | ||
14ee9f48 | 413 | xstormy16-*-*) fmt=elf ;; |
886a2506 | 414 | |
f6c1a2d5 | 415 | xgate-*-*) fmt=elf ;; |
14ee9f48 | 416 | |
f8a52b59 | 417 | xtensa*-*-*) fmt=elf ;; |
14ee9f48 | 418 | |
3c9b82ba NC |
419 | z80-*-coff) fmt=coff ;; |
420 | ||
14ee9f48 ILT |
421 | z8k-*-coff | z8k-*-sim) fmt=coff ;; |
422 | ||
423 | *-*-aout | *-*-scout) fmt=aout ;; | |
12400dcc | 424 | *-*-cloudabi*) fmt=elf em=cloudabi ;; |
5b806d27 | 425 | *-*-dragonfly*) fmt=elf em=dragonfly ;; |
14ee9f48 | 426 | *-*-freebsd* | *-*-kfreebsd*-gnu) fmt=elf em=freebsd ;; |
14ee9f48 ILT |
427 | *-*-generic) fmt=generic ;; |
428 | *-*-xray | *-*-hms) fmt=coff ;; | |
429 | *-*-sim) fmt=coff ;; | |
de514cf3 | 430 | *-*-elf | *-*-rtems* | *-*-sysv4*) fmt=elf ;; |
2774199c | 431 | *-*-solaris*) fmt=elf em=solaris ;; |
6f19c13c | 432 | *-*-aros*) fmt=elf em=linux ;; |
478ec1e3 | 433 | *-*-vxworks* | *-*-windiss) fmt=elf em=vxworks ;; |
14ee9f48 ILT |
434 | esac |
435 | ||
436 | case ${cpu_type} in | |
e2201c2a AM |
437 | aarch64 | alpha | arm | csky | i386 | ia64 | microblaze | mips | ns32k | \ |
438 | or1k | or1knd | pdp11 | ppc | riscv | sh | sparc | z80 | z8k) | |
14ee9f48 ILT |
439 | bfd_gas=yes |
440 | ;; | |
441 | esac | |
442 | case ${fmt} in | |
fe4fa32c | 443 | elf | ecoff | fdpicelf | multi | som) |
14ee9f48 ILT |
444 | bfd_gas=yes |
445 | ;; | |
446 | esac | |
7be1c489 AM |
447 | |
448 | if test $bfd_gas != yes; then | |
449 | echo This target is no longer supported in gas | |
450 | exit 1 | |
451 | fi | |
4e3e1fdf L |
452 | |
453 | case ${cpu_type}-${fmt}-${os} in | |
454 | i386-elf-linux*) | |
455 | # Default to compress DWARF debug sections for Linux/x86. | |
456 | if test ${ac_default_compressed_debug_sections} = unset; then | |
457 | ac_default_compressed_debug_sections=yes | |
458 | fi | |
459 | ;; | |
460 | esac |