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