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