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