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