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