Root/scripts/config.sub

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

Archive Download this file



interactive