source: rtems/config.sub @ 62181b21

4.115
Last change on this file since 62181b21 was d3b0fe08, checked in by Ralf Corsépius <ralf.corsepius@…>, on 11/21/12 at 03:23:42

Update from automake-1.12.5.

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