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