source: rtems/config.sub @ c0456d7f

4.115
Last change on this file since c0456d7f was c0456d7f, checked in by Ralf Corsépius <ralf.corsepius@…>, on 07/19/12 at 13:24:36

Update from automake-1.12.2.

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