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