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