source: rtems/config.sub @ 6273201

4.115
Last change on this file since 6273201 was 0b61e27, checked in by Joel Sherrill <joel.sherrill@…>, on 04/26/12 at 13:38:06

Update config.guess and config.sub

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