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