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