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