]> git.ipfire.org Git - thirdparty/gcc.git/blame - config.sub
Configuration bits for ARC port:
[thirdparty/gcc.git] / config.sub
CommitLineData
6599da04 1#! /bin/sh
ae3ca0a9 2# Configuration validation subroutine script.
3cd87679 3# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
41446fec 4# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
6c9c2cf2 5# 2011, 2012, 2013 Free Software Foundation, Inc.
ef0b4ef8 6
969a00c7 7timestamp='2013-01-11'
ef0b4ef8 8
6c9c2cf2
BE
9# This file is free software; you can redistribute it and/or modify it
10# under the terms of the GNU General Public License as published by
11# the Free Software Foundation; either version 3 of the License, or
6599da04
JM
12# (at your option) any later version.
13#
6c9c2cf2
BE
14# This program is distributed in the hope that it will be useful, but
15# WITHOUT ANY WARRANTY; without even the implied warranty of
16# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17# General Public License for more details.
6599da04
JM
18#
19# You should have received a copy of the GNU General Public License
95e5b9a4 20# along with this program; if not, see <http://www.gnu.org/licenses/>.
0063a823 21#
6599da04
JM
22# As a special exception to the GNU General Public License, if you
23# distribute this file as part of a program that contains a
24# configuration script generated by Autoconf, you may include it under
6c9c2cf2
BE
25# the same distribution terms that you use for the rest of that
26# program. This Exception is an additional permission under section 7
27# of the GNU General Public License, version 3 ("GPLv3").
6599da04 28
0063a823 29
6c9c2cf2 30# Please send patches with a ChangeLog entry to config-patches@gnu.org.
7a15eef5 31#
6599da04
JM
32# Configuration subroutine to validate and canonicalize a configuration type.
33# Supply the specified configuration type as an argument.
34# If it is invalid, we print an error message on stderr and exit with code 1.
35# Otherwise, we print the canonical config type on stdout and succeed.
36
d4c74acc
NC
37# You can get the latest version of this script from:
38# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
39
6599da04
JM
40# This file is supposed to be the same for all GNU packages
41# and recognize all the CPU types, system types and aliases
42# that are meaningful with *any* GNU software.
43# Each package is responsible for reporting which valid configurations
44# it does not support. The user should be able to distinguish
45# a failure to support a valid configuration from a meaningless
46# configuration.
47
48# The goal of this file is to map all the various variations of a given
49# machine specification into a single specification in the form:
50# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
51# or in some cases, the newer four-part form:
52# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
53# It is wrong to echo any other type of specification.
54
ef0b4ef8 55me=`echo "$0" | sed -e 's,.*/,,'`
6599da04 56
ef0b4ef8
PT
57usage="\
58Usage: $0 [OPTION] CPU-MFR-OPSYS
59 $0 [OPTION] ALIAS
60
61Canonicalize a configuration name.
62
63Operation modes:
ae3ca0a9
PE
64 -h, --help print this help, then exit
65 -t, --time-stamp print date of last modification, then exit
66 -v, --version print version number, then exit
67
68Report bugs and patches to <config-patches@gnu.org>."
69
70version="\
71GNU config.sub ($timestamp)
72
0d1152b1 73Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
6c9c2cf2
BE
742001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011,
752012, 2013 Free Software Foundation, Inc.
ae3ca0a9
PE
76
77This is free software; see the source for copying conditions. There is NO
78warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
ef0b4ef8
PT
79
80help="
81Try \`$me --help' for more information."
82
83# Parse command line
84while test $# -gt 0 ; do
ae3ca0a9
PE
85 case $1 in
86 --time-stamp | --time* | -t )
0063a823 87 echo "$timestamp" ; exit ;;
ae3ca0a9 88 --version | -v )
0063a823 89 echo "$version" ; exit ;;
ef0b4ef8 90 --help | --h* | -h )
0063a823 91 echo "$usage"; exit ;;
ef0b4ef8
PT
92 -- ) # Stop option processing
93 shift; break ;;
94 - ) # Use stdin as input.
95 break ;;
96 -* )
ae3ca0a9 97 echo "$me: invalid option $1$help"
ef0b4ef8
PT
98 exit 1 ;;
99
100 *local*)
101 # First pass through any local machine types.
102 echo $1
0063a823 103 exit ;;
ef0b4ef8
PT
104
105 * )
106 break ;;
107 esac
108done
109
110case $# in
111 0) echo "$me: missing argument$help" >&2
112 exit 1;;
113 1) ;;
114 *) echo "$me: too many arguments$help" >&2
115 exit 1;;
6599da04
JM
116esac
117
118# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
119# Here we must recognize all the valid KERNEL-OS combinations.
120maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
121case $maybe_os in
1ab55d69 122 nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
f08bdd69 123 linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
1ab55d69 124 knetbsd*-gnu* | netbsd*-gnu* | \
070bdbd9 125 kopensolaris*-gnu* | \
8d1171cb 126 storm-chaos* | os2-emx* | rtmk-nova*)
6599da04
JM
127 os=-$maybe_os
128 basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
129 ;;
95e5b9a4
JB
130 android-linux)
131 os=-linux-android
132 basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
133 ;;
6599da04
JM
134 *)
135 basic_machine=`echo $1 | sed 's/-[^-]*$//'`
136 if [ $basic_machine != $1 ]
137 then os=`echo $1 | sed 's/.*-/-/'`
138 else os=; fi
139 ;;
140esac
141
142### Let's recognize common machines as not being operating systems so
143### that things like config.sub decstation-3100 work. We also
144### recognize some manufacturers as not being operating systems, so we
145### can provide default operating systems below.
146case $os in
147 -sun*os*)
148 # Prevent following clause from handling this invalid input.
149 ;;
150 -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
151 -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
152 -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
153 -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
154 -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
155 -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
f08bdd69 156 -apple | -axis | -knuth | -cray | -microblaze*)
6599da04
JM
157 os=
158 basic_machine=$1
159 ;;
41446fec
DE
160 -bluegene*)
161 os=-cnk
e9d9afef 162 ;;
b1345c72 163 -sim | -cisco | -oki | -wec | -winbond)
6599da04
JM
164 os=
165 basic_machine=$1
166 ;;
b1345c72 167 -scout)
6599da04 168 ;;
b1345c72 169 -wrs)
dbd83e11 170 os=-vxworks
6599da04
JM
171 basic_machine=$1
172 ;;
818f0c85
AO
173 -chorusos*)
174 os=-chorusos
175 basic_machine=$1
176 ;;
41446fec
DE
177 -chorusrdb)
178 os=-chorusrdb
818f0c85 179 basic_machine=$1
41446fec 180 ;;
6599da04
JM
181 -hiux*)
182 os=-hiuxwe2
183 ;;
b4623110
KJ
184 -sco6)
185 os=-sco5v6
186 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
187 ;;
6599da04 188 -sco5)
3e07bdbd 189 os=-sco3.2v5
6599da04
JM
190 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
191 ;;
192 -sco4)
193 os=-sco3.2v4
194 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
195 ;;
196 -sco3.2.[4-9]*)
197 os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
198 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
199 ;;
200 -sco3.2v[4-9]*)
201 # Don't forget version if it is 3.2v4 or newer.
202 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
203 ;;
b4623110
KJ
204 -sco5v6*)
205 # Don't forget version if it is 3.2v4 or newer.
206 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
207 ;;
6599da04
JM
208 -sco*)
209 os=-sco3.2v2
210 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
211 ;;
73a6d2e7
RL
212 -udk*)
213 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
214 ;;
6599da04
JM
215 -isc)
216 os=-isc2.2
217 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
218 ;;
219 -clix*)
220 basic_machine=clipper-intergraph
221 ;;
222 -isc*)
223 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
224 ;;
95e5b9a4
JB
225 -lynx*178)
226 os=-lynxos178
227 ;;
228 -lynx*5)
229 os=-lynxos5
230 ;;
6599da04
JM
231 -lynx*)
232 os=-lynxos
233 ;;
234 -ptx*)
235 basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
236 ;;
237 -windowsnt*)
238 os=`echo $os | sed -e 's/windowsnt/winnt/'`
239 ;;
240 -psos*)
241 os=-psos
242 ;;
eeda916a
AO
243 -mint | -mint[0-9]*)
244 basic_machine=m68k-atari
245 os=-mint
246 ;;
6599da04
JM
247esac
248
249# Decode aliases for certain CPU-COMPANY combinations.
250case $basic_machine in
251 # Recognize the basic CPU types without company name.
252 # Some are omitted here because they have special meanings below.
f6084f99
ZW
253 1750a | 580 \
254 | a29k \
95e5b9a4 255 | aarch64 | aarch64_be \
f6084f99 256 | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
3cd87679 257 | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
26db814a 258 | am33_2.0 \
f08bdd69
JBG
259 | arc \
260 | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
261 | avr | avr32 \
262 | be32 | be64 \
acb217cb 263 | bfin \
b951c91c 264 | c4x | clipper \
11d8b408 265 | d10v | d30v | dlx | dsp16xx \
e7a7929d 266 | epiphany \
9b6f37a0 267 | fido | fr30 | frv \
f6084f99 268 | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
e7a7929d 269 | hexagon \
f6084f99 270 | i370 | i860 | i960 | ia64 \
26db814a 271 | ip2k | iq2000 \
e7a7929d 272 | le32 | le64 \
18430d27 273 | lm32 \
8d1171cb 274 | m32c | m32r | m32rle | m68000 | m68k | m88k \
f08bdd69 275 | maxq | mb | microblaze | microblazeel | mcore | mep | metag \
e2d83b8c
CD
276 | mips | mipsbe | mipseb | mipsel | mipsle \
277 | mips16 \
278 | mips64 | mips64el \
954910ef 279 | mips64octeon | mips64octeonel \
e2d83b8c 280 | mips64orion | mips64orionel \
954910ef
BE
281 | mips64r5900 | mips64r5900el \
282 | mips64vr | mips64vrel \
e2d83b8c
CD
283 | mips64vr4100 | mips64vr4100el \
284 | mips64vr4300 | mips64vr4300el \
285 | mips64vr5000 | mips64vr5000el \
0063a823 286 | mips64vr5900 | mips64vr5900el \
e2d83b8c 287 | mipsisa32 | mipsisa32el \
66e2aa7d 288 | mipsisa32r2 | mipsisa32r2el \
e2d83b8c 289 | mipsisa64 | mipsisa64el \
26db814a 290 | mipsisa64r2 | mipsisa64r2el \
e2d83b8c 291 | mipsisa64sb1 | mipsisa64sb1el \
5ce6f47b 292 | mipsisa64sr71k | mipsisa64sr71kel \
969a00c7 293 | mipsr5900 | mipsr5900el \
e2d83b8c 294 | mipstx39 | mipstx39el \
f6084f99 295 | mn10200 | mn10300 \
070bdbd9 296 | moxie \
64f182bd 297 | mt \
66e2aa7d 298 | msp430 \
41446fec 299 | nds32 | nds32le | nds32be \
8d1171cb 300 | nios | nios2 \
f6084f99 301 | ns16k | ns32k \
32827f18 302 | open8 \
0063a823 303 | or32 \
f6084f99 304 | pdp10 | pdp11 | pj | pjl \
f3e8ab19 305 | powerpc | powerpc64 | powerpc64le | powerpcle \
f6084f99 306 | pyramid \
753a0ad8 307 | rl78 | rx \
f6a1687e 308 | score \
18430d27 309 | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
e2d83b8c 310 | sh64 | sh64le \
8d1171cb
PB
311 | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
312 | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
f3e8ab19
JM
313 | spu \
314 | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
f6c56be6 315 | ubicom32 \
9baa43b6 316 | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
f6084f99 317 | we32k \
f3e8ab19 318 | x86 | xc16x | xstormy16 | xtensa \
e03dd84a 319 | z8k | z80)
6599da04
JM
320 basic_machine=$basic_machine-unknown
321 ;;
0d1152b1
JM
322 c54x)
323 basic_machine=tic54x-unknown
324 ;;
325 c55x)
326 basic_machine=tic55x-unknown
327 ;;
328 c6x)
329 basic_machine=tic6x-unknown
330 ;;
95e5b9a4 331 m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
d207ebef
JM
332 basic_machine=$basic_machine-unknown
333 os=-none
334 ;;
ae3ca0a9 335 m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
eeda916a 336 ;;
8d1171cb
PB
337 ms1)
338 basic_machine=mt-unknown
339 ;;
eeda916a 340
f3e8ab19
JM
341 strongarm | thumb | xscale)
342 basic_machine=arm-unknown
343 ;;
95e5b9a4
JB
344 xgate)
345 basic_machine=$basic_machine-unknown
346 os=-none
347 ;;
f3e8ab19
JM
348 xscaleeb)
349 basic_machine=armeb-unknown
350 ;;
351
352 xscaleel)
353 basic_machine=armel-unknown
354 ;;
355
6599da04
JM
356 # We use `pc' rather than `unknown'
357 # because (1) that's what they normally are, and
358 # (2) the word "unknown" tends to confuse beginning users.
ae3ca0a9 359 i*86 | x86_64)
6599da04
JM
360 basic_machine=$basic_machine-pc
361 ;;
362 # Object if more than one company name word.
363 *-*-*)
364 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
365 exit 1
366 ;;
367 # Recognize the basic CPU types with company name.
f6084f99
ZW
368 580-* \
369 | a29k-* \
95e5b9a4 370 | aarch64-* | aarch64_be-* \
f6084f99 371 | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
3cd87679
L
372 | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
373 | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
ac30211c 374 | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
f6a1687e 375 | avr-* | avr32-* \
e7a7929d 376 | be32-* | be64-* \
acb217cb 377 | bfin-* | bs2000-* \
0d1152b1 378 | c[123]* | c30-* | [cjt]90-* | c4x-* \
fc4d0e82 379 | clipper-* | craynv-* | cydra-* \
11d8b408 380 | d10v-* | d30v-* | dlx-* \
f6084f99 381 | elxsi-* \
9b6f37a0 382 | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
f6084f99
ZW
383 | h8300-* | h8500-* \
384 | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
e7a7929d 385 | hexagon-* \
f6084f99 386 | i*86-* | i860-* | i960-* | ia64-* \
26db814a 387 | ip2k-* | iq2000-* \
e7a7929d 388 | le32-* | le64-* \
18430d27 389 | lm32-* \
8d1171cb 390 | m32c-* | m32r-* | m32rle-* \
4434687a 391 | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
f08bdd69
JBG
392 | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
393 | microblaze-* | microblazeel-* \
e2d83b8c
CD
394 | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
395 | mips16-* \
396 | mips64-* | mips64el-* \
954910ef 397 | mips64octeon-* | mips64octeonel-* \
e2d83b8c 398 | mips64orion-* | mips64orionel-* \
954910ef
BE
399 | mips64r5900-* | mips64r5900el-* \
400 | mips64vr-* | mips64vrel-* \
e2d83b8c
CD
401 | mips64vr4100-* | mips64vr4100el-* \
402 | mips64vr4300-* | mips64vr4300el-* \
403 | mips64vr5000-* | mips64vr5000el-* \
0063a823 404 | mips64vr5900-* | mips64vr5900el-* \
e2d83b8c 405 | mipsisa32-* | mipsisa32el-* \
66e2aa7d 406 | mipsisa32r2-* | mipsisa32r2el-* \
e2d83b8c 407 | mipsisa64-* | mipsisa64el-* \
26db814a 408 | mipsisa64r2-* | mipsisa64r2el-* \
e2d83b8c 409 | mipsisa64sb1-* | mipsisa64sb1el-* \
5ce6f47b 410 | mipsisa64sr71k-* | mipsisa64sr71kel-* \
969a00c7 411 | mipsr5900-* | mipsr5900el-* \
66e2aa7d 412 | mipstx39-* | mipstx39el-* \
fc4d0e82 413 | mmix-* \
64f182bd 414 | mt-* \
66e2aa7d 415 | msp430-* \
41446fec 416 | nds32-* | nds32le-* | nds32be-* \
8d1171cb 417 | nios-* | nios2-* \
fc4d0e82 418 | none-* | np1-* | ns16k-* | ns32k-* \
32827f18 419 | open8-* \
f6084f99
ZW
420 | orion-* \
421 | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
f3e8ab19 422 | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
f6084f99 423 | pyramid-* \
753a0ad8 424 | rl78-* | romp-* | rs6000-* | rx-* \
18430d27 425 | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
e2d83b8c 426 | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
8d1171cb 427 | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
acb217cb 428 | sparclite-* \
f3e8ab19
JM
429 | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
430 | tahoe-* \
0d1152b1 431 | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
9baa43b6 432 | tile*-* \
f7c50032 433 | tron-* \
f6c56be6 434 | ubicom32-* \
9baa43b6
NC
435 | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
436 | vax-* \
f6084f99 437 | we32k-* \
f3e8ab19 438 | x86-* | x86_64-* | xc16x-* | xps100-* \
c3220d4c 439 | xstormy16-* | xtensa*-* \
f6084f99 440 | ymp-* \
e03dd84a 441 | z8k-* | z80-*)
85ee6037 442 ;;
c3220d4c
BE
443 # Recognize the basic CPU types without company name, with glob match.
444 xtensa*)
445 basic_machine=$basic_machine-unknown
446 ;;
6599da04
JM
447 # Recognize the various machine names and aliases which stand
448 # for a CPU type and a company and sometimes even an OS.
b1345c72 449 386bsd)
6599da04
JM
450 basic_machine=i386-unknown
451 os=-bsd
452 ;;
453 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
454 basic_machine=m68000-att
455 ;;
456 3b*)
457 basic_machine=we32k-att
458 ;;
b1345c72 459 a29khif)
6599da04
JM
460 basic_machine=a29k-amd
461 os=-udi
462 ;;
41446fec 463 abacus)
a7ca14fc
AC
464 basic_machine=abacus-unknown
465 ;;
b1345c72 466 adobe68k)
6599da04
JM
467 basic_machine=m68010-adobe
468 os=-scout
469 ;;
470 alliant | fx80)
471 basic_machine=fx80-alliant
472 ;;
473 altos | altos3068)
474 basic_machine=m68k-altos
475 ;;
476 am29k)
477 basic_machine=a29k-none
478 os=-bsd
479 ;;
f7c50032
AJ
480 amd64)
481 basic_machine=x86_64-pc
482 ;;
a7ca14fc
AC
483 amd64-*)
484 basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
485 ;;
6599da04
JM
486 amdahl)
487 basic_machine=580-amdahl
488 os=-sysv
489 ;;
490 amiga | amiga-*)
cb011248 491 basic_machine=m68k-unknown
6599da04 492 ;;
becdcf6d 493 amigaos | amigados)
cb011248 494 basic_machine=m68k-unknown
0c82f6bf 495 os=-amigaos
6599da04
JM
496 ;;
497 amigaunix | amix)
cb011248 498 basic_machine=m68k-unknown
6599da04
JM
499 os=-sysv4
500 ;;
501 apollo68)
502 basic_machine=m68k-apollo
503 os=-sysv
504 ;;
b1345c72 505 apollo68bsd)
6599da04
JM
506 basic_machine=m68k-apollo
507 os=-bsd
508 ;;
070bdbd9
BE
509 aros)
510 basic_machine=i386-pc
511 os=-aros
512 ;;
6599da04
JM
513 aux)
514 basic_machine=m68k-apple
515 os=-aux
516 ;;
517 balance)
518 basic_machine=ns32k-sequent
519 os=-dynix
520 ;;
c3220d4c
BE
521 blackfin)
522 basic_machine=bfin-unknown
523 os=-linux
524 ;;
525 blackfin-*)
526 basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
527 os=-linux
528 ;;
e9d9afef
BE
529 bluegene*)
530 basic_machine=powerpc-ibm
531 os=-cnk
532 ;;
0d1152b1
JM
533 c54x-*)
534 basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
535 ;;
536 c55x-*)
537 basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
538 ;;
539 c6x-*)
540 basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
541 ;;
4434687a
MM
542 c90)
543 basic_machine=c90-cray
544 os=-unicos
545 ;;
41446fec 546 cegcc)
e03dd84a
BE
547 basic_machine=arm-unknown
548 os=-cegcc
549 ;;
6599da04
JM
550 convex-c1)
551 basic_machine=c1-convex
552 os=-bsd
553 ;;
554 convex-c2)
555 basic_machine=c2-convex
556 os=-bsd
557 ;;
558 convex-c32)
559 basic_machine=c32-convex
560 os=-bsd
561 ;;
562 convex-c34)
563 basic_machine=c34-convex
564 os=-bsd
565 ;;
566 convex-c38)
567 basic_machine=c38-convex
568 os=-bsd
569 ;;
4434687a
MM
570 cray | j90)
571 basic_machine=j90-cray
6599da04
JM
572 os=-unicos
573 ;;
fc4d0e82
NC
574 craynv)
575 basic_machine=craynv-cray
576 os=-unicosmp
577 ;;
41446fec 578 cr16 | cr16-*)
15098359
SR
579 basic_machine=cr16-unknown
580 os=-elf
581 ;;
6599da04
JM
582 crds | unos)
583 basic_machine=m68k-crds
584 ;;
fc4d0e82
NC
585 crisv32 | crisv32-* | etraxfs*)
586 basic_machine=crisv32-axis
587 ;;
d207ebef
JM
588 cris | cris-* | etrax*)
589 basic_machine=cris-axis
590 ;;
fc4d0e82
NC
591 crx)
592 basic_machine=crx-unknown
593 os=-elf
594 ;;
6599da04
JM
595 da30 | da30-*)
596 basic_machine=m68k-da30
597 ;;
598 decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
599 basic_machine=mips-dec
600 ;;
3cd87679
L
601 decsystem10* | dec10*)
602 basic_machine=pdp10-dec
603 os=-tops10
604 ;;
605 decsystem20* | dec20*)
606 basic_machine=pdp10-dec
607 os=-tops20
608 ;;
6599da04
JM
609 delta | 3300 | motorola-3300 | motorola-delta \
610 | 3300-motorola | delta-motorola)
611 basic_machine=m68k-motorola
612 ;;
613 delta88)
614 basic_machine=m88k-motorola
615 os=-sysv3
616 ;;
8479b1b1
BE
617 dicos)
618 basic_machine=i686-pc
619 os=-dicos
620 ;;
9587be8a
KC
621 djgpp)
622 basic_machine=i586-pc
623 os=-msdosdjgpp
624 ;;
6599da04
JM
625 dpx20 | dpx20-*)
626 basic_machine=rs6000-bull
627 os=-bosx
628 ;;
629 dpx2* | dpx2*-bull)
630 basic_machine=m68k-bull
631 os=-sysv3
632 ;;
633 ebmon29k)
634 basic_machine=a29k-amd
635 os=-ebmon
636 ;;
637 elxsi)
638 basic_machine=elxsi-elxsi
639 os=-bsd
640 ;;
641 encore | umax | mmax)
642 basic_machine=ns32k-encore
643 ;;
b1345c72 644 es1800 | OSE68k | ose68k | ose | OSE)
6599da04
JM
645 basic_machine=m68k-ericsson
646 os=-ose
647 ;;
648 fx2800)
649 basic_machine=i860-alliant
650 ;;
651 genix)
652 basic_machine=ns32k-ns
653 ;;
654 gmicro)
655 basic_machine=tron-gmicro
656 os=-sysv
657 ;;
ae3ca0a9
PE
658 go32)
659 basic_machine=i386-pc
660 os=-go32
661 ;;
6599da04
JM
662 h3050r* | hiux*)
663 basic_machine=hppa1.1-hitachi
664 os=-hiuxwe2
665 ;;
666 h8300hms)
667 basic_machine=h8300-hitachi
668 os=-hms
669 ;;
b1345c72 670 h8300xray)
6599da04
JM
671 basic_machine=h8300-hitachi
672 os=-xray
673 ;;
b1345c72 674 h8500hms)
6599da04
JM
675 basic_machine=h8500-hitachi
676 os=-hms
677 ;;
678 harris)
679 basic_machine=m88k-harris
680 os=-sysv3
681 ;;
682 hp300-*)
683 basic_machine=m68k-hp
684 ;;
685 hp300bsd)
686 basic_machine=m68k-hp
687 os=-bsd
688 ;;
689 hp300hpux)
690 basic_machine=m68k-hp
691 os=-hpux
692 ;;
85ee6037 693 hp3k9[0-9][0-9] | hp9[0-9][0-9])
c4acd909
MK
694 basic_machine=hppa1.0-hp
695 ;;
6599da04
JM
696 hp9k2[0-9][0-9] | hp9k31[0-9])
697 basic_machine=m68000-hp
698 ;;
699 hp9k3[2-9][0-9])
700 basic_machine=m68k-hp
701 ;;
b1345c72 702 hp9k6[0-9][0-9] | hp6[0-9][0-9])
228197ee
LT
703 basic_machine=hppa1.0-hp
704 ;;
b1345c72 705 hp9k7[0-79][0-9] | hp7[0-79][0-9])
228197ee
LT
706 basic_machine=hppa1.1-hp
707 ;;
b1345c72 708 hp9k78[0-9] | hp78[0-9])
228197ee
LT
709 # FIXME: really hppa2.0-hp
710 basic_machine=hppa1.1-hp
711 ;;
b1345c72 712 hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
228197ee
LT
713 # FIXME: really hppa2.0-hp
714 basic_machine=hppa1.1-hp
715 ;;
b1345c72 716 hp9k8[0-9][13679] | hp8[0-9][13679])
6599da04
JM
717 basic_machine=hppa1.1-hp
718 ;;
719 hp9k8[0-9][0-9] | hp8[0-9][0-9])
720 basic_machine=hppa1.0-hp
721 ;;
722 hppa-next)
723 os=-nextstep3
724 ;;
b1345c72 725 hppaosf)
6599da04
JM
726 basic_machine=hppa1.1-hp
727 os=-osf
728 ;;
b1345c72
BE
729 hppro)
730 basic_machine=hppa1.1-hp
731 os=-proelf
732 ;;
6599da04
JM
733 i370-ibm* | ibm*)
734 basic_machine=i370-ibm
6599da04 735 ;;
ae3ca0a9 736 i*86v32)
6599da04
JM
737 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
738 os=-sysv32
739 ;;
ae3ca0a9 740 i*86v4*)
6599da04
JM
741 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
742 os=-sysv4
743 ;;
ae3ca0a9 744 i*86v)
6599da04
JM
745 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
746 os=-sysv
747 ;;
ae3ca0a9 748 i*86sol2)
6599da04
JM
749 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
750 os=-solaris2
751 ;;
b1345c72 752 i386mach)
6599da04
JM
753 basic_machine=i386-mach
754 os=-mach
755 ;;
b1345c72 756 i386-vsta | vsta)
6599da04
JM
757 basic_machine=i386-unknown
758 os=-vsta
759 ;;
6599da04
JM
760 iris | iris4d)
761 basic_machine=mips-sgi
762 case $os in
763 -irix*)
764 ;;
765 *)
766 os=-irix4
767 ;;
768 esac
769 ;;
770 isi68 | isi)
771 basic_machine=m68k-isi
772 os=-sysv
773 ;;
c3220d4c
BE
774 m68knommu)
775 basic_machine=m68k-unknown
776 os=-linux
777 ;;
778 m68knommu-*)
779 basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
780 os=-linux
781 ;;
6599da04
JM
782 m88k-omron*)
783 basic_machine=m88k-omron
784 ;;
785 magnum | m3230)
786 basic_machine=mips-mips
787 os=-sysv
788 ;;
789 merlin)
790 basic_machine=ns32k-utek
791 os=-sysv
792 ;;
f08bdd69 793 microblaze*)
e9d9afef
BE
794 basic_machine=microblaze-xilinx
795 ;;
f08bdd69
JBG
796 mingw64)
797 basic_machine=x86_64-pc
798 os=-mingw64
799 ;;
ae3ca0a9
PE
800 mingw32)
801 basic_machine=i386-pc
802 os=-mingw32
803 ;;
a894d2c3
BE
804 mingw32ce)
805 basic_machine=arm-unknown
806 os=-mingw32ce
807 ;;
6599da04
JM
808 miniframe)
809 basic_machine=m68000-convergent
810 ;;
eeda916a 811 *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
b1345c72
BE
812 basic_machine=m68k-atari
813 os=-mint
814 ;;
6599da04
JM
815 mips3*-*)
816 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
817 ;;
818 mips3*)
819 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
820 ;;
b1345c72 821 monitor)
6599da04
JM
822 basic_machine=m68k-rom68k
823 os=-coff
824 ;;
3cd87679
L
825 morphos)
826 basic_machine=powerpc-unknown
827 os=-morphos
828 ;;
b1345c72 829 msdos)
ae3ca0a9 830 basic_machine=i386-pc
6599da04
JM
831 os=-msdos
832 ;;
64f182bd 833 ms1-*)
8d1171cb 834 basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
64f182bd 835 ;;
95e5b9a4
JB
836 msys)
837 basic_machine=i386-pc
838 os=-msys
839 ;;
0b77644a
LV
840 mvs)
841 basic_machine=i370-ibm
842 os=-mvs
843 ;;
e7a7929d
NC
844 nacl)
845 basic_machine=le32-unknown
846 os=-nacl
847 ;;
6599da04
JM
848 ncr3000)
849 basic_machine=i486-ncr
850 os=-sysv4
851 ;;
852 netbsd386)
b1345c72 853 basic_machine=i386-unknown
6599da04
JM
854 os=-netbsd
855 ;;
3b7265ff 856 netwinder)
eeda916a 857 basic_machine=armv4l-rebel
3b7265ff
NC
858 os=-linux
859 ;;
6599da04
JM
860 news | news700 | news800 | news900)
861 basic_machine=m68k-sony
862 os=-newsos
863 ;;
864 news1000)
865 basic_machine=m68030-sony
866 os=-newsos
867 ;;
868 news-3600 | risc-news)
869 basic_machine=mips-sony
870 os=-newsos
871 ;;
b1345c72 872 necv70)
6599da04
JM
873 basic_machine=v70-nec
874 os=-sysv
875 ;;
876 next | m*-next )
877 basic_machine=m68k-next
878 case $os in
879 -nextstep* )
880 ;;
881 -ns2*)
882 os=-nextstep2
883 ;;
884 *)
885 os=-nextstep3
886 ;;
887 esac
888 ;;
889 nh3000)
890 basic_machine=m68k-harris
891 os=-cxux
892 ;;
893 nh[45]000)
894 basic_machine=m88k-harris
895 os=-cxux
896 ;;
897 nindy960)
898 basic_machine=i960-intel
899 os=-nindy
900 ;;
b1345c72 901 mon960)
6599da04
JM
902 basic_machine=i960-intel
903 os=-mon960
904 ;;
ae3ca0a9
PE
905 nonstopux)
906 basic_machine=mips-compaq
907 os=-nonstopux
908 ;;
6599da04
JM
909 np1)
910 basic_machine=np1-gould
911 ;;
41446fec
DE
912 neo-tandem)
913 basic_machine=neo-tandem
914 ;;
915 nse-tandem)
916 basic_machine=nse-tandem
917 ;;
ef0b4ef8
PT
918 nsr-tandem)
919 basic_machine=nsr-tandem
920 ;;
b1345c72
BE
921 op50n-* | op60c-*)
922 basic_machine=hppa1.1-oki
923 os=-proelf
924 ;;
0063a823 925 openrisc | openrisc-*)
40fe0ec3 926 basic_machine=or32-unknown
40fe0ec3 927 ;;
507ec745
BI
928 os400)
929 basic_machine=powerpc-ibm
930 os=-os400
931 ;;
b1345c72 932 OSE68000 | ose68000)
6599da04
JM
933 basic_machine=m68000-ericsson
934 os=-ose
935 ;;
b1345c72 936 os68k)
6599da04
JM
937 basic_machine=m68k-none
938 os=-os68k
939 ;;
940 pa-hitachi)
941 basic_machine=hppa1.1-hitachi
942 os=-hiuxwe2
943 ;;
944 paragon)
945 basic_machine=i860-intel
946 os=-osf
947 ;;
c3220d4c
BE
948 parisc)
949 basic_machine=hppa-unknown
950 os=-linux
951 ;;
952 parisc-*)
953 basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
954 os=-linux
955 ;;
6599da04
JM
956 pbd)
957 basic_machine=sparc-tti
958 ;;
959 pbb)
960 basic_machine=m68k-tti
961 ;;
ab17919f 962 pc532 | pc532-*)
6599da04
JM
963 basic_machine=ns32k-pc532
964 ;;
8d1171cb
PB
965 pc98)
966 basic_machine=i386-pc
967 ;;
968 pc98-*)
969 basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
970 ;;
dd3a88c9 971 pentium | p5 | k5 | k6 | nexgen | viac3)
85ee6037
ILT
972 basic_machine=i586-pc
973 ;;
5ce6f47b 974 pentiumpro | p6 | 6x86 | athlon | athlon_*)
85ee6037 975 basic_machine=i686-pc
6599da04 976 ;;
0bb41a37 977 pentiumii | pentium2 | pentiumiii | pentium3)
ae3ca0a9 978 basic_machine=i686-pc
6599da04 979 ;;
0bb41a37
L
980 pentium4)
981 basic_machine=i786-pc
982 ;;
dd3a88c9 983 pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
6599da04
JM
984 basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
985 ;;
ef0b4ef8 986 pentiumpro-* | p6-* | 6x86-* | athlon-*)
6599da04
JM
987 basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
988 ;;
0bb41a37 989 pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
ae3ca0a9 990 basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
6599da04 991 ;;
0bb41a37
L
992 pentium4-*)
993 basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
994 ;;
6599da04
JM
995 pn)
996 basic_machine=pn-gould
997 ;;
ae3ca0a9 998 power) basic_machine=power-ibm
6599da04 999 ;;
f3e8ab19 1000 ppc | ppcbe) basic_machine=powerpc-unknown
ab17919f 1001 ;;
f3e8ab19
JM
1002 ppc-* | ppcbe-*)
1003 basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
6599da04
JM
1004 ;;
1005 ppcle | powerpclittle | ppc-le | powerpc-little)
1006 basic_machine=powerpcle-unknown
ab17919f 1007 ;;
6599da04
JM
1008 ppcle-* | powerpclittle-*)
1009 basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
1010 ;;
f6084f99 1011 ppc64) basic_machine=powerpc64-unknown
ab17919f 1012 ;;
f6084f99
ZW
1013 ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
1014 ;;
1015 ppc64le | powerpc64little | ppc64-le | powerpc64-little)
1016 basic_machine=powerpc64le-unknown
ab17919f 1017 ;;
f6084f99
ZW
1018 ppc64le-* | powerpc64little-*)
1019 basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
1020 ;;
6599da04
JM
1021 ps2)
1022 basic_machine=i386-ibm
1023 ;;
ae3ca0a9
PE
1024 pw32)
1025 basic_machine=i586-unknown
1026 os=-pw32
1027 ;;
f08bdd69
JBG
1028 rdos | rdos64)
1029 basic_machine=x86_64-pc
1030 os=-rdos
1031 ;;
1032 rdos32)
8d1171cb
PB
1033 basic_machine=i386-pc
1034 os=-rdos
1035 ;;
b1345c72 1036 rom68k)
6599da04
JM
1037 basic_machine=m68k-rom68k
1038 os=-coff
1039 ;;
1040 rm[46]00)
1041 basic_machine=mips-siemens
1042 ;;
1043 rtpc | rtpc-*)
1044 basic_machine=romp-ibm
1045 ;;
c6243b4c
GK
1046 s390 | s390-*)
1047 basic_machine=s390-ibm
1048 ;;
1049 s390x | s390x-*)
1050 basic_machine=s390x-ibm
1051 ;;
b1345c72 1052 sa29200)
6599da04
JM
1053 basic_machine=a29k-amd
1054 os=-udi
1055 ;;
5ce6f47b
EC
1056 sb1)
1057 basic_machine=mipsisa64sb1-unknown
1058 ;;
1059 sb1el)
1060 basic_machine=mipsisa64sb1el-unknown
1061 ;;
f6a1687e
BE
1062 sde)
1063 basic_machine=mipsisa32-sde
1064 os=-elf
1065 ;;
26db814a
BI
1066 sei)
1067 basic_machine=mips-sei
1068 os=-seiux
1069 ;;
6599da04
JM
1070 sequent)
1071 basic_machine=i386-sequent
1072 ;;
1073 sh)
1074 basic_machine=sh-hitachi
1075 os=-hms
1076 ;;
9b6f37a0
BE
1077 sh5el)
1078 basic_machine=sh5le-unknown
1079 ;;
26db814a
BI
1080 sh64)
1081 basic_machine=sh64-unknown
1082 ;;
dd3a88c9 1083 sparclite-wrs | simso-wrs)
6599da04
JM
1084 basic_machine=sparclite-wrs
1085 os=-vxworks
1086 ;;
1087 sps7)
1088 basic_machine=m68k-bull
1089 os=-sysv2
1090 ;;
1091 spur)
1092 basic_machine=spur-unknown
1093 ;;
b1345c72 1094 st2000)
6599da04
JM
1095 basic_machine=m68k-tandem
1096 ;;
b1345c72 1097 stratus)
6599da04
JM
1098 basic_machine=i860-stratus
1099 os=-sysv4
1100 ;;
f3e8ab19
JM
1101 strongarm-* | thumb-*)
1102 basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
1103 ;;
6599da04
JM
1104 sun2)
1105 basic_machine=m68000-sun
1106 ;;
1107 sun2os3)
1108 basic_machine=m68000-sun
1109 os=-sunos3
1110 ;;
1111 sun2os4)
1112 basic_machine=m68000-sun
1113 os=-sunos4
1114 ;;
1115 sun3os3)
1116 basic_machine=m68k-sun
1117 os=-sunos3
1118 ;;
1119 sun3os4)
1120 basic_machine=m68k-sun
1121 os=-sunos4
1122 ;;
1123 sun4os3)
1124 basic_machine=sparc-sun
1125 os=-sunos3
1126 ;;
1127 sun4os4)
1128 basic_machine=sparc-sun
1129 os=-sunos4
1130 ;;
1131 sun4sol2)
1132 basic_machine=sparc-sun
1133 os=-solaris2
1134 ;;
1135 sun3 | sun3-*)
1136 basic_machine=m68k-sun
1137 ;;
1138 sun4)
1139 basic_machine=sparc-sun
1140 ;;
1141 sun386 | sun386i | roadrunner)
1142 basic_machine=i386-sun
1143 ;;
ab17919f 1144 sv1)
7a15eef5
FS
1145 basic_machine=sv1-cray
1146 os=-unicos
1147 ;;
6599da04
JM
1148 symmetry)
1149 basic_machine=i386-sequent
1150 os=-dynix
1151 ;;
b1345c72 1152 t3e)
4434687a
MM
1153 basic_machine=alphaev5-cray
1154 os=-unicos
1155 ;;
1156 t90)
1157 basic_machine=t90-cray
b1345c72
BE
1158 os=-unicos
1159 ;;
3ca06a68 1160 tile*)
9baa43b6 1161 basic_machine=$basic_machine-unknown
3ca06a68
BE
1162 os=-linux-gnu
1163 ;;
6599da04
JM
1164 tx39)
1165 basic_machine=mipstx39-unknown
1166 ;;
1167 tx39el)
1168 basic_machine=mipstx39el-unknown
1169 ;;
3cd87679
L
1170 toad1)
1171 basic_machine=pdp10-xkl
1172 os=-tops20
1173 ;;
6599da04
JM
1174 tower | tower-32)
1175 basic_machine=m68k-ncr
1176 ;;
20af77cd
UW
1177 tpf)
1178 basic_machine=s390x-ibm
1179 os=-tpf
1180 ;;
6599da04
JM
1181 udi29k)
1182 basic_machine=a29k-amd
1183 os=-udi
1184 ;;
1185 ultra3)
1186 basic_machine=a29k-nyu
1187 os=-sym1
1188 ;;
b1345c72 1189 v810 | necv810)
6599da04
JM
1190 basic_machine=v810-nec
1191 os=-none
1192 ;;
1193 vaxv)
1194 basic_machine=vax-dec
1195 os=-sysv
1196 ;;
1197 vms)
1198 basic_machine=vax-dec
1199 os=-vms
1200 ;;
1201 vpp*|vx|vx-*)
ab17919f
SS
1202 basic_machine=f301-fujitsu
1203 ;;
6599da04
JM
1204 vxworks960)
1205 basic_machine=i960-wrs
1206 os=-vxworks
1207 ;;
1208 vxworks68)
1209 basic_machine=m68k-wrs
1210 os=-vxworks
1211 ;;
1212 vxworks29k)
1213 basic_machine=a29k-wrs
1214 os=-vxworks
1215 ;;
b1345c72
BE
1216 w65*)
1217 basic_machine=w65-wdc
1218 os=-none
1219 ;;
1220 w89k-*)
1221 basic_machine=hppa1.1-winbond
1222 os=-proelf
6599da04 1223 ;;
385870f5
KC
1224 xbox)
1225 basic_machine=i686-pc
1226 os=-mingw32
1227 ;;
ab17919f 1228 xps | xps100)
6599da04
JM
1229 basic_machine=xps100-honeywell
1230 ;;
f3e8ab19
JM
1231 xscale-* | xscalee[bl]-*)
1232 basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
1233 ;;
4434687a
MM
1234 ymp)
1235 basic_machine=ymp-cray
1236 os=-unicos
1237 ;;
b1345c72 1238 z8k-*-coff)
6599da04
JM
1239 basic_machine=z8k-unknown
1240 os=-sim
1241 ;;
e03dd84a
BE
1242 z80-*-coff)
1243 basic_machine=z80-unknown
1244 os=-sim
1245 ;;
6599da04
JM
1246 none)
1247 basic_machine=none-none
1248 os=-none
1249 ;;
1250
1251# Here we handle the default manufacturer of certain CPU types. It is in
1252# some cases the only manufacturer, in others, it is the most popular.
b1345c72 1253 w89k)
6599da04
JM
1254 basic_machine=hppa1.1-winbond
1255 ;;
b1345c72 1256 op50n)
6599da04
JM
1257 basic_machine=hppa1.1-oki
1258 ;;
b1345c72 1259 op60c)
6599da04
JM
1260 basic_machine=hppa1.1-oki
1261 ;;
6599da04
JM
1262 romp)
1263 basic_machine=romp-ibm
1264 ;;
fc4d0e82
NC
1265 mmix)
1266 basic_machine=mmix-knuth
1267 ;;
6599da04
JM
1268 rs6000)
1269 basic_machine=rs6000-ibm
1270 ;;
1271 vax)
1272 basic_machine=vax-dec
1273 ;;
ae3ca0a9
PE
1274 pdp10)
1275 # there are many clones, so DEC is not a safe bet
1276 basic_machine=pdp10-unknown
1277 ;;
6599da04
JM
1278 pdp11)
1279 basic_machine=pdp11-dec
1280 ;;
1281 we32k)
1282 basic_machine=we32k-att
1283 ;;
18430d27 1284 sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
c4880c99 1285 basic_machine=sh-unknown
d207ebef 1286 ;;
8d1171cb 1287 sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
6599da04
JM
1288 basic_machine=sparc-sun
1289 ;;
ab17919f 1290 cydra)
6599da04
JM
1291 basic_machine=cydra-cydrome
1292 ;;
1293 orion)
1294 basic_machine=orion-highlevel
1295 ;;
1296 orion105)
1297 basic_machine=clipper-highlevel
1298 ;;
b1345c72 1299 mac | mpw | mac-mpw)
6599da04
JM
1300 basic_machine=m68k-apple
1301 ;;
b1345c72 1302 pmac | pmac-mpw)
6599da04
JM
1303 basic_machine=powerpc-apple
1304 ;;
d2bc0628 1305 *-unknown)
ae3ca0a9
PE
1306 # Make sure to match an already-canonicalized machine name.
1307 ;;
6599da04
JM
1308 *)
1309 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
1310 exit 1
1311 ;;
1312esac
1313
1314# Here we canonicalize certain aliases for manufacturers.
1315case $basic_machine in
1316 *-digital*)
1317 basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
1318 ;;
1319 *-commodore*)
1320 basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
1321 ;;
1322 *)
1323 ;;
1324esac
1325
1326# Decode manufacturer-specific aliases for certain operating systems.
1327
1328if [ x"$os" != x"" ]
1329then
1330case $os in
41446fec
DE
1331 # First match some system type aliases
1332 # that might get confused with valid system types.
6599da04 1333 # -solaris* is a basic system type, with this one exception.
41446fec
DE
1334 -auroraux)
1335 os=-auroraux
4960e3f0 1336 ;;
6599da04
JM
1337 -solaris1 | -solaris1.*)
1338 os=`echo $os | sed -e 's|solaris1|sunos4|'`
1339 ;;
1340 -solaris)
1341 os=-solaris2
1342 ;;
85ee6037 1343 -svr4*)
6599da04
JM
1344 os=-sysv4
1345 ;;
85ee6037
ILT
1346 -unixware*)
1347 os=-sysv4.2uw
1348 ;;
6599da04
JM
1349 -gnu/linux*)
1350 os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
1351 ;;
1352 # First accept the basic system types.
1353 # The portable systems comes first.
1354 # Each alternative MUST END IN A *, to match a version number.
1355 # -sysv* is not here because it comes later, after sysvr4.
1356 -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
e9d9afef 1357 | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
4960e3f0 1358 | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
24c4a93e 1359 | -sym* | -kopensolaris* | -plan9* \
becdcf6d 1360 | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
070bdbd9 1361 | -aos* | -aros* \
6599da04
JM
1362 | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
1363 | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
8d1171cb 1364 | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
f08bdd69 1365 | -bitrig* | -openbsd* | -solidbsd* \
a7ca14fc
AC
1366 | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
1367 | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
6599da04
JM
1368 | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
1369 | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
e03dd84a 1370 | -chorusos* | -chorusrdb* | -cegcc* \
95e5b9a4 1371 | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
f08bdd69
JBG
1372 | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
1373 | -linux-newlib* | -linux-musl* | -linux-uclibc* \
8d1171cb 1374 | -uxpv* | -beos* | -mpeix* | -udk* \
ab17919f 1375 | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
ae3ca0a9 1376 | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
f6084f99 1377 | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
4434687a 1378 | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
ab17919f 1379 | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
0063a823 1380 | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
d2d9ce5e 1381 | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
6599da04
JM
1382 # Remember, each alternative MUST END IN *, to match a version number.
1383 ;;
ef0b4ef8
PT
1384 -qnx*)
1385 case $basic_machine in
ae3ca0a9 1386 x86-* | i*86-*)
ef0b4ef8
PT
1387 ;;
1388 *)
1389 os=-nto$os
1390 ;;
1391 esac
1392 ;;
ab17919f
SS
1393 -nto-qnx*)
1394 ;;
ef0b4ef8 1395 -nto*)
ab17919f 1396 os=`echo $os | sed -e 's|nto|nto-qnx|'`
ef0b4ef8 1397 ;;
6599da04 1398 -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
0063a823 1399 | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
784a3a80 1400 | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
6599da04
JM
1401 ;;
1402 -mac*)
1403 os=`echo $os | sed -e 's|mac|macos|'`
1404 ;;
26db814a
BI
1405 -linux-dietlibc)
1406 os=-linux-dietlibc
1407 ;;
6599da04
JM
1408 -linux*)
1409 os=`echo $os | sed -e 's|linux|linux-gnu|'`
1410 ;;
1411 -sunos5*)
1412 os=`echo $os | sed -e 's|sunos5|solaris2|'`
1413 ;;
1414 -sunos6*)
1415 os=`echo $os | sed -e 's|sunos6|solaris3|'`
1416 ;;
0b77644a
LV
1417 -opened*)
1418 os=-openedition
1419 ;;
41446fec 1420 -os400*)
507ec745
BI
1421 os=-os400
1422 ;;
521fe9d0
NC
1423 -wince*)
1424 os=-wince
1425 ;;
6599da04
JM
1426 -osfrose*)
1427 os=-osfrose
1428 ;;
1429 -osf*)
1430 os=-osf
1431 ;;
1432 -utek*)
1433 os=-bsd
1434 ;;
1435 -dynix*)
1436 os=-bsd
1437 ;;
1438 -acis*)
1439 os=-aos
1440 ;;
251931f3
LG
1441 -atheos*)
1442 os=-atheos
1443 ;;
a7ca14fc
AC
1444 -syllable*)
1445 os=-syllable
1446 ;;
b1345c72 1447 -386bsd)
6599da04
JM
1448 os=-bsd
1449 ;;
1450 -ctix* | -uts*)
1451 os=-sysv
1452 ;;
4434687a
MM
1453 -nova*)
1454 os=-rtmk-nova
1455 ;;
6599da04 1456 -ns2 )
ab17919f 1457 os=-nextstep2
6599da04 1458 ;;
61a77fea 1459 -nsk*)
ef0b4ef8
PT
1460 os=-nsk
1461 ;;
6599da04
JM
1462 # Preserve the version number of sinix5.
1463 -sinix5.*)
1464 os=`echo $os | sed -e 's|sinix|sysv|'`
1465 ;;
1466 -sinix*)
1467 os=-sysv4
1468 ;;
41446fec 1469 -tpf*)
20af77cd
UW
1470 os=-tpf
1471 ;;
6599da04
JM
1472 -triton*)
1473 os=-sysv3
1474 ;;
1475 -oss*)
1476 os=-sysv3
1477 ;;
1478 -svr4)
1479 os=-sysv4
1480 ;;
1481 -svr3)
1482 os=-sysv3
1483 ;;
1484 -sysvr4)
1485 os=-sysv4
1486 ;;
1487 # This must come after -sysvr4.
1488 -sysv*)
1489 ;;
b1345c72 1490 -ose*)
6599da04
JM
1491 os=-ose
1492 ;;
b1345c72 1493 -es1800*)
6599da04
JM
1494 os=-ose
1495 ;;
1496 -xenix)
1497 os=-xenix
1498 ;;
ab17919f
SS
1499 -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1500 os=-mint
b1345c72 1501 ;;
ccf9f10c
RS
1502 -aros*)
1503 os=-aros
1504 ;;
9587be8a
KC
1505 -zvmoe)
1506 os=-zvmoe
1507 ;;
8479b1b1
BE
1508 -dicos*)
1509 os=-dicos
1510 ;;
41446fec
DE
1511 -nacl*)
1512 ;;
6599da04
JM
1513 -none)
1514 ;;
1515 *)
1516 # Get rid of the `-' at the beginning of $os.
1517 os=`echo $os | sed 's/[^-]*-//'`
1518 echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
1519 exit 1
1520 ;;
1521esac
1522else
1523
1524# Here we handle the default operating systems that come with various machines.
1525# The value should be what the vendor currently ships out the door with their
1526# machine or put another way, the most popular os provided with the machine.
1527
1528# Note that if you're going to try to match "-MANUFACTURER" here (say,
1529# "-sun"), then you have to tell the case statement up towards the top
1530# that MANUFACTURER isn't an operating system. Otherwise, code above
1531# will signal an error saying that MANUFACTURER isn't an operating
1532# system, and we'll never get to this point.
1533
1534case $basic_machine in
41446fec 1535 score-*)
f6a1687e
BE
1536 os=-elf
1537 ;;
41446fec 1538 spu-*)
8d1171cb
PB
1539 os=-elf
1540 ;;
6599da04
JM
1541 *-acorn)
1542 os=-riscix1.2
1543 ;;
eeda916a 1544 arm*-rebel)
3b7265ff
NC
1545 os=-linux
1546 ;;
6599da04
JM
1547 arm*-semi)
1548 os=-aout
1549 ;;
41446fec
DE
1550 c4x-* | tic4x-*)
1551 os=-coff
8d1171cb 1552 ;;
f08bdd69
JBG
1553 hexagon-*)
1554 os=-elf
1555 ;;
0d1152b1
JM
1556 tic54x-*)
1557 os=-coff
1558 ;;
1559 tic55x-*)
1560 os=-coff
1561 ;;
1562 tic6x-*)
1563 os=-coff
1564 ;;
3cd87679 1565 # This must come before the *-dec entry.
ae3ca0a9
PE
1566 pdp10-*)
1567 os=-tops20
1568 ;;
ab17919f 1569 pdp11-*)
6599da04
JM
1570 os=-none
1571 ;;
1572 *-dec | vax-*)
1573 os=-ultrix4.2
1574 ;;
1575 m68*-apollo)
1576 os=-domain
1577 ;;
1578 i386-sun)
1579 os=-sunos4.0.2
1580 ;;
1581 m68000-sun)
1582 os=-sunos3
6599da04 1583 ;;
b1345c72 1584 m68*-cisco)
6599da04
JM
1585 os=-aout
1586 ;;
41446fec 1587 mep-*)
a894d2c3
BE
1588 os=-elf
1589 ;;
b1345c72
BE
1590 mips*-cisco)
1591 os=-elf
1592 ;;
1593 mips*-*)
6599da04
JM
1594 os=-elf
1595 ;;
40fe0ec3
AO
1596 or32-*)
1597 os=-coff
1598 ;;
6599da04
JM
1599 *-tti) # must be before sparc entry or we get the wrong os.
1600 os=-sysv3
1601 ;;
1602 sparc-* | *-sun)
1603 os=-sunos4.1.1
1604 ;;
85ee6037 1605 *-be)
6599da04
JM
1606 os=-beos
1607 ;;
0063a823
KC
1608 *-haiku)
1609 os=-haiku
1610 ;;
6599da04
JM
1611 *-ibm)
1612 os=-aix
1613 ;;
41446fec 1614 *-knuth)
fc4d0e82
NC
1615 os=-mmixware
1616 ;;
b1345c72 1617 *-wec)
6599da04
JM
1618 os=-proelf
1619 ;;
b1345c72 1620 *-winbond)
6599da04
JM
1621 os=-proelf
1622 ;;
b1345c72 1623 *-oki)
6599da04
JM
1624 os=-proelf
1625 ;;
1626 *-hp)
1627 os=-hpux
1628 ;;
1629 *-hitachi)
1630 os=-hiux
1631 ;;
1632 i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
1633 os=-sysv
1634 ;;
1635 *-cbm)
0c82f6bf 1636 os=-amigaos
6599da04
JM
1637 ;;
1638 *-dg)
1639 os=-dgux
1640 ;;
1641 *-dolphin)
1642 os=-sysv3
1643 ;;
1644 m68k-ccur)
1645 os=-rtu
1646 ;;
1647 m88k-omron*)
1648 os=-luna
1649 ;;
1650 *-next )
1651 os=-nextstep
1652 ;;
1653 *-sequent)
1654 os=-ptx
1655 ;;
1656 *-crds)
1657 os=-unos
1658 ;;
1659 *-ns)
1660 os=-genix
1661 ;;
1662 i370-*)
1663 os=-mvs
1664 ;;
1665 *-next)
1666 os=-nextstep3
1667 ;;
ab17919f 1668 *-gould)
6599da04
JM
1669 os=-sysv
1670 ;;
ab17919f 1671 *-highlevel)
6599da04
JM
1672 os=-bsd
1673 ;;
1674 *-encore)
1675 os=-bsd
1676 ;;
ab17919f 1677 *-sgi)
6599da04
JM
1678 os=-irix
1679 ;;
ab17919f 1680 *-siemens)
6599da04
JM
1681 os=-sysv4
1682 ;;
1683 *-masscomp)
1684 os=-rtu
1685 ;;
ae3ca0a9 1686 f30[01]-fujitsu | f700-fujitsu)
6599da04
JM
1687 os=-uxpv
1688 ;;
b1345c72 1689 *-rom68k)
6599da04
JM
1690 os=-coff
1691 ;;
b1345c72 1692 *-*bug)
6599da04
JM
1693 os=-coff
1694 ;;
b1345c72 1695 *-apple)
6599da04
JM
1696 os=-macos
1697 ;;
b1345c72
BE
1698 *-atari*)
1699 os=-mint
1700 ;;
6599da04
JM
1701 *)
1702 os=-none
1703 ;;
1704esac
1705fi
1706
1707# Here we handle the case where we know the os, and the CPU type, but not the
1708# manufacturer. We pick the logical manufacturer.
1709vendor=unknown
1710case $basic_machine in
1711 *-unknown)
1712 case $os in
1713 -riscix*)
1714 vendor=acorn
1715 ;;
1716 -sunos*)
1717 vendor=sun
1718 ;;
e9d9afef 1719 -cnk*|-aix*)
6599da04
JM
1720 vendor=ibm
1721 ;;
85ee6037 1722 -beos*)
6599da04
JM
1723 vendor=be
1724 ;;
1725 -hpux*)
85ee6037
ILT
1726 vendor=hp
1727 ;;
c4acd909 1728 -mpeix*)
85ee6037
ILT
1729 vendor=hp
1730 ;;
6599da04
JM
1731 -hiux*)
1732 vendor=hitachi
1733 ;;
1734 -unos*)
1735 vendor=crds
1736 ;;
1737 -dgux*)
1738 vendor=dg
1739 ;;
1740 -luna*)
1741 vendor=omron
1742 ;;
1743 -genix*)
1744 vendor=ns
1745 ;;
0b77644a 1746 -mvs* | -opened*)
6599da04
JM
1747 vendor=ibm
1748 ;;
507ec745
BI
1749 -os400*)
1750 vendor=ibm
1751 ;;
6599da04
JM
1752 -ptx*)
1753 vendor=sequent
1754 ;;
20af77cd
UW
1755 -tpf*)
1756 vendor=ibm
1757 ;;
4434687a 1758 -vxsim* | -vxworks* | -windiss*)
6599da04
JM
1759 vendor=wrs
1760 ;;
1761 -aux*)
1762 vendor=apple
1763 ;;
b1345c72 1764 -hms*)
6599da04
JM
1765 vendor=hitachi
1766 ;;
b1345c72 1767 -mpw* | -macos*)
6599da04
JM
1768 vendor=apple
1769 ;;
ae3ca0a9 1770 -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
b1345c72
BE
1771 vendor=atari
1772 ;;
f6084f99
ZW
1773 -vos*)
1774 vendor=stratus
1775 ;;
6599da04
JM
1776 esac
1777 basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
1778 ;;
1779esac
1780
1781echo $basic_machine$os
0063a823 1782exit
ef0b4ef8
PT
1783
1784# Local variables:
1785# eval: (add-hook 'write-file-hooks 'time-stamp)
ae3ca0a9 1786# time-stamp-start: "timestamp='"
ef0b4ef8
PT
1787# time-stamp-format: "%:y-%02m-%02d"
1788# time-stamp-end: "'"
1789# End: