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