source: trunk/third/openssh/config.sub @ 18759

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