Merge patches sent by Robert P. J. Day <rpjday@mindspring.com>.
Warning: the buildroot folks purposedly removed the skip-comment patch but didn't really said why. Keeping it for the sake of having it in svn just in case (removing it will be easier thant not having it at all).
2 # Configuration validation subroutine script.
3 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4 # 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
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.
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.
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.
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
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.
34 # Please send patches to <config-patches@gnu.org>. Submit a context
35 # diff and a properly formatted ChangeLog entry.
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.
42 # This file is supposed to be the same for all GNU packages
43 # and recognize all the CPU types, system types and aliases
44 # that are meaningful with *any* GNU software.
45 # Each package is responsible for reporting which valid configurations
46 # it does not support. The user should be able to distinguish
47 # a failure to support a valid configuration from a meaningless
50 # The goal of this file is to map all the various variations of a given
51 # machine specification into a single specification in the form:
52 # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
53 # or in some cases, the newer four-part form:
54 # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
55 # It is wrong to echo any other type of specification.
57 me=`echo "$0" | sed -e 's,.*/,,'`
60 Usage: $0 [OPTION] CPU-MFR-OPSYS
63 Canonicalize a configuration name.
66 -h, --help print this help, then exit
67 -t, --time-stamp print date of last modification, then exit
68 -v, --version print version number, then exit
70 Report bugs and patches to <config-patches@gnu.org>."
73 GNU config.sub ($timestamp)
75 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
76 Free Software Foundation, Inc.
78 This is free software; see the source for copying conditions. There is NO
79 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
82 Try \`$me --help' for more information."
85 while test $# -gt 0 ; do
87 --time-stamp | --time* | -t )
88 echo "$timestamp" ; exit ;;
90 echo "$version" ; exit ;;
92 echo "$usage"; exit ;;
93 -- ) # Stop option processing
95 - ) # Use stdin as input.
98 echo "$me: invalid option $1$help"
102 # First pass through any local machine types.
112 0) echo "$me: missing argument$help" >&2
115 *) echo "$me: too many arguments$help" >&2
119 # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
120 # Here we must recognize all the valid KERNEL-OS combinations.
121 maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
123 nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
124 uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
125 storm-chaos* | os2-emx* | rtmk-nova*)
127 basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
130 basic_machine=`echo $1 | sed 's/-[^-]*$//'`
131 if [ $basic_machine != $1 ]
132 then os=`echo $1 | sed 's/.*-/-/'`
137 ### Let's recognize common machines as not being operating systems so
138 ### that things like config.sub decstation-3100 work. We also
139 ### recognize some manufacturers as not being operating systems, so we
140 ### can provide default operating systems below.
143 # Prevent following clause from handling this invalid input.
145 -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
146 -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
147 -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
148 -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
149 -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
150 -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
151 -apple | -axis | -knuth | -cray)
155 -sim | -cisco | -oki | -wec | -winbond)
178 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
182 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
186 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
189 os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
190 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
193 # Don't forget version if it is 3.2v4 or newer.
194 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
197 # Don't forget version if it is 3.2v4 or newer.
198 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
202 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
205 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
209 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
212 basic_machine=clipper-intergraph
215 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
221 basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
224 os=`echo $os | sed -e 's/windowsnt/winnt/'`
230 basic_machine=m68k-atari
235 # Decode aliases for certain CPU-COMPANY combinations.
236 case $basic_machine in
237 # Recognize the basic CPU types without company name.
238 # Some are omitted here because they have special meanings below.
241 | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
242 | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
244 | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
247 | d10v | d30v | dlx | dsp16xx \
248 | fido | fr30 | frv \
249 | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
250 | i370 | i860 | i960 | ia64 \
252 | m32c | m32r | m32rle | m68000 | m68k | m88k \
253 | maxq | mb | microblaze | mcore | mep \
254 | mips | mipsbe | mipseb | mipsel | mipsle \
256 | mips64 | mips64el \
257 | mips64vr | mips64vrel \
258 | mips64orion | mips64orionel \
259 | mips64vr4100 | mips64vr4100el \
260 | mips64vr4300 | mips64vr4300el \
261 | mips64vr5000 | mips64vr5000el \
262 | mips64vr5900 | mips64vr5900el \
263 | mipsisa32 | mipsisa32el \
264 | mipsisa32r2 | mipsisa32r2el \
265 | mipsisa64 | mipsisa64el \
266 | mipsisa64r2 | mipsisa64r2el \
267 | mipsisa64sb1 | mipsisa64sb1el \
268 | mipsisa64sr71k | mipsisa64sr71kel \
269 | mipstx39 | mipstx39el \
270 | mn10200 | mn10300 \
276 | pdp10 | pdp11 | pj | pjl \
277 | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
280 | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
282 | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
283 | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
285 | tahoe | thumb | tic4x | tic80 | tron \
288 | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
290 basic_machine=$basic_machine-unknown
292 m6811 | m68hc11 | m6812 | m68hc12)
293 # Motorola 68HC11/12.
294 basic_machine=$basic_machine-unknown
297 m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
300 basic_machine=mt-unknown
303 # We use `pc' rather than `unknown'
304 # because (1) that's what they normally are, and
305 # (2) the word "unknown" tends to confuse beginning users.
307 basic_machine=$basic_machine-pc
309 # Object if more than one company name word.
311 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
314 # Recognize the basic CPU types with company name.
317 | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
318 | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
319 | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
320 | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
322 | bfin-* | bs2000-* \
323 | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
324 | clipper-* | craynv-* | cydra-* \
325 | d10v-* | d30v-* | dlx-* \
327 | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
328 | h8300-* | h8500-* \
329 | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
330 | i*86-* | i860-* | i960-* | ia64-* \
331 | ip2k-* | iq2000-* \
332 | m32c-* | m32r-* | m32rle-* \
333 | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
334 | m88110-* | m88k-* | maxq-* | mcore-* \
335 | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
337 | mips64-* | mips64el-* \
338 | mips64vr-* | mips64vrel-* \
339 | mips64orion-* | mips64orionel-* \
340 | mips64vr4100-* | mips64vr4100el-* \
341 | mips64vr4300-* | mips64vr4300el-* \
342 | mips64vr5000-* | mips64vr5000el-* \
343 | mips64vr5900-* | mips64vr5900el-* \
344 | mipsisa32-* | mipsisa32el-* \
345 | mipsisa32r2-* | mipsisa32r2el-* \
346 | mipsisa64-* | mipsisa64el-* \
347 | mipsisa64r2-* | mipsisa64r2el-* \
348 | mipsisa64sb1-* | mipsisa64sb1el-* \
349 | mipsisa64sr71k-* | mipsisa64sr71kel-* \
350 | mipstx39-* | mipstx39el-* \
355 | none-* | np1-* | ns16k-* | ns32k-* \
357 | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
358 | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
360 | romp-* | rs6000-* \
361 | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
362 | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
363 | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
365 | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
366 | tahoe-* | thumb-* \
367 | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
369 | v850-* | v850e-* | vax-* \
371 | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
372 | xstormy16-* | xtensa-* \
376 # Recognize the various machine names and aliases which stand
377 # for a CPU type and a company and sometimes even an OS.
379 basic_machine=i386-unknown
382 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
383 basic_machine=m68000-att
386 basic_machine=we32k-att
389 basic_machine=a29k-amd
393 basic_machine=abacus-unknown
396 basic_machine=m68010-adobe
400 basic_machine=fx80-alliant
403 basic_machine=m68k-altos
406 basic_machine=a29k-none
410 basic_machine=x86_64-pc
413 basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
416 basic_machine=580-amdahl
420 basic_machine=m68k-unknown
423 basic_machine=m68k-unknown
427 basic_machine=m68k-unknown
431 basic_machine=m68k-apollo
435 basic_machine=m68k-apollo
439 basic_machine=m68k-apple
443 basic_machine=ns32k-sequent
447 basic_machine=c90-cray
451 basic_machine=c1-convex
455 basic_machine=c2-convex
459 basic_machine=c32-convex
463 basic_machine=c34-convex
467 basic_machine=c38-convex
471 basic_machine=j90-cray
475 basic_machine=craynv-cray
479 basic_machine=cr16c-unknown
483 basic_machine=m68k-crds
485 crisv32 | crisv32-* | etraxfs*)
486 basic_machine=crisv32-axis
488 cris | cris-* | etrax*)
489 basic_machine=cris-axis
492 basic_machine=crx-unknown
496 basic_machine=m68k-da30
498 decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
499 basic_machine=mips-dec
501 decsystem10* | dec10*)
502 basic_machine=pdp10-dec
505 decsystem20* | dec20*)
506 basic_machine=pdp10-dec
509 delta | 3300 | motorola-3300 | motorola-delta \
510 | 3300-motorola | delta-motorola)
511 basic_machine=m68k-motorola
514 basic_machine=m88k-motorola
518 basic_machine=i586-pc
522 basic_machine=rs6000-bull
526 basic_machine=m68k-bull
530 basic_machine=a29k-amd
534 basic_machine=elxsi-elxsi
537 encore | umax | mmax)
538 basic_machine=ns32k-encore
540 es1800 | OSE68k | ose68k | ose | OSE)
541 basic_machine=m68k-ericsson
545 basic_machine=i860-alliant
548 basic_machine=ns32k-ns
551 basic_machine=tron-gmicro
555 basic_machine=i386-pc
559 basic_machine=hppa1.1-hitachi
563 basic_machine=h8300-hitachi
567 basic_machine=h8300-hitachi
571 basic_machine=h8500-hitachi
575 basic_machine=m88k-harris
579 basic_machine=m68k-hp
582 basic_machine=m68k-hp
586 basic_machine=m68k-hp
589 hp3k9[0-9][0-9] | hp9[0-9][0-9])
590 basic_machine=hppa1.0-hp
592 hp9k2[0-9][0-9] | hp9k31[0-9])
593 basic_machine=m68000-hp
596 basic_machine=m68k-hp
598 hp9k6[0-9][0-9] | hp6[0-9][0-9])
599 basic_machine=hppa1.0-hp
601 hp9k7[0-79][0-9] | hp7[0-79][0-9])
602 basic_machine=hppa1.1-hp
604 hp9k78[0-9] | hp78[0-9])
605 # FIXME: really hppa2.0-hp
606 basic_machine=hppa1.1-hp
608 hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
609 # FIXME: really hppa2.0-hp
610 basic_machine=hppa1.1-hp
612 hp9k8[0-9][13679] | hp8[0-9][13679])
613 basic_machine=hppa1.1-hp
615 hp9k8[0-9][0-9] | hp8[0-9][0-9])
616 basic_machine=hppa1.0-hp
622 basic_machine=hppa1.1-hp
626 basic_machine=hppa1.1-hp
630 basic_machine=i370-ibm
632 # I'm not sure what "Sysv32" means. Should this be sysv3.2?
634 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
638 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
642 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
646 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
650 basic_machine=i386-mach
654 basic_machine=i386-unknown
658 basic_machine=mips-sgi
668 basic_machine=m68k-isi
672 basic_machine=m88k-omron
675 basic_machine=mips-mips
679 basic_machine=ns32k-utek
683 basic_machine=i386-pc
687 basic_machine=arm-unknown
691 basic_machine=m68000-convergent
693 *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
694 basic_machine=m68k-atari
698 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
701 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
704 basic_machine=m68k-rom68k
708 basic_machine=powerpc-unknown
712 basic_machine=i386-pc
716 basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
719 basic_machine=i370-ibm
723 basic_machine=i486-ncr
727 basic_machine=i386-unknown
731 basic_machine=armv4l-rebel
734 news | news700 | news800 | news900)
735 basic_machine=m68k-sony
739 basic_machine=m68030-sony
742 news-3600 | risc-news)
743 basic_machine=mips-sony
747 basic_machine=v70-nec
751 basic_machine=m68k-next
764 basic_machine=m68k-harris
768 basic_machine=m88k-harris
772 basic_machine=i960-intel
776 basic_machine=i960-intel
780 basic_machine=mips-compaq
784 basic_machine=np1-gould
787 basic_machine=nsr-tandem
790 basic_machine=hppa1.1-oki
793 openrisc | openrisc-*)
794 basic_machine=or32-unknown
797 basic_machine=powerpc-ibm
801 basic_machine=m68000-ericsson
805 basic_machine=m68k-none
809 basic_machine=hppa1.1-hitachi
813 basic_machine=i860-intel
817 basic_machine=sparc-tti
820 basic_machine=m68k-tti
823 basic_machine=ns32k-pc532
826 basic_machine=i386-pc
829 basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
831 pentium | p5 | k5 | k6 | nexgen | viac3)
832 basic_machine=i586-pc
834 pentiumpro | p6 | 6x86 | athlon | athlon_*)
835 basic_machine=i686-pc
837 pentiumii | pentium2 | pentiumiii | pentium3)
838 basic_machine=i686-pc
841 basic_machine=i786-pc
843 pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
844 basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
846 pentiumpro-* | p6-* | 6x86-* | athlon-*)
847 basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
849 pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
850 basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
853 basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
856 basic_machine=pn-gould
858 power) basic_machine=power-ibm
860 ppc) basic_machine=powerpc-unknown
862 ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
864 ppcle | powerpclittle | ppc-le | powerpc-little)
865 basic_machine=powerpcle-unknown
867 ppcle-* | powerpclittle-*)
868 basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
870 ppc64) basic_machine=powerpc64-unknown
872 ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
874 ppc64le | powerpc64little | ppc64-le | powerpc64-little)
875 basic_machine=powerpc64le-unknown
877 ppc64le-* | powerpc64little-*)
878 basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
881 basic_machine=i386-ibm
884 basic_machine=i586-unknown
888 basic_machine=i386-pc
892 basic_machine=m68k-rom68k
896 basic_machine=mips-siemens
899 basic_machine=romp-ibm
902 basic_machine=s390-ibm
905 basic_machine=s390x-ibm
908 basic_machine=a29k-amd
912 basic_machine=mipsisa64sb1-unknown
915 basic_machine=mipsisa64sb1el-unknown
918 basic_machine=mipsisa32-sde
922 basic_machine=mips-sei
926 basic_machine=i386-sequent
929 basic_machine=sh-hitachi
933 basic_machine=sh5le-unknown
936 basic_machine=sh64-unknown
938 sparclite-wrs | simso-wrs)
939 basic_machine=sparclite-wrs
943 basic_machine=m68k-bull
947 basic_machine=spur-unknown
950 basic_machine=m68k-tandem
953 basic_machine=i860-stratus
957 basic_machine=m68000-sun
960 basic_machine=m68000-sun
964 basic_machine=m68000-sun
968 basic_machine=m68k-sun
972 basic_machine=m68k-sun
976 basic_machine=sparc-sun
980 basic_machine=sparc-sun
984 basic_machine=sparc-sun
988 basic_machine=m68k-sun
991 basic_machine=sparc-sun
993 sun386 | sun386i | roadrunner)
994 basic_machine=i386-sun
997 basic_machine=sv1-cray
1001 basic_machine=i386-sequent
1005 basic_machine=alphaev5-cray
1009 basic_machine=t90-cray
1013 basic_machine=tic54x-unknown
1017 basic_machine=tic55x-unknown
1021 basic_machine=tic6x-unknown
1025 basic_machine=mipstx39-unknown
1028 basic_machine=mipstx39el-unknown
1031 basic_machine=pdp10-xkl
1035 basic_machine=m68k-ncr
1038 basic_machine=s390x-ibm
1042 basic_machine=a29k-amd
1046 basic_machine=a29k-nyu
1050 basic_machine=v810-nec
1054 basic_machine=vax-dec
1058 basic_machine=vax-dec
1062 basic_machine=f301-fujitsu
1065 basic_machine=i960-wrs
1069 basic_machine=m68k-wrs
1073 basic_machine=a29k-wrs
1077 basic_machine=w65-wdc
1081 basic_machine=hppa1.1-winbond
1085 basic_machine=i686-pc
1089 basic_machine=xps100-honeywell
1092 basic_machine=ymp-cray
1096 basic_machine=z8k-unknown
1100 basic_machine=none-none
1104 # Here we handle the default manufacturer of certain CPU types. It is in
1105 # some cases the only manufacturer, in others, it is the most popular.
1107 basic_machine=hppa1.1-winbond
1110 basic_machine=hppa1.1-oki
1113 basic_machine=hppa1.1-oki
1116 basic_machine=romp-ibm
1119 basic_machine=mmix-knuth
1122 basic_machine=rs6000-ibm
1125 basic_machine=vax-dec
1128 # there are many clones, so DEC is not a safe bet
1129 basic_machine=pdp10-unknown
1132 basic_machine=pdp11-dec
1135 basic_machine=we32k-att
1137 sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
1138 basic_machine=sh-unknown
1140 sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
1141 basic_machine=sparc-sun
1144 basic_machine=cydra-cydrome
1147 basic_machine=orion-highlevel
1150 basic_machine=clipper-highlevel
1152 mac | mpw | mac-mpw)
1153 basic_machine=m68k-apple
1156 basic_machine=powerpc-apple
1159 # Make sure to match an already-canonicalized machine name.
1162 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
1167 # Here we canonicalize certain aliases for manufacturers.
1168 case $basic_machine in
1170 basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
1173 basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
1179 # Decode manufacturer-specific aliases for certain operating systems.
1181 if [ x"$os" != x"" ]
1184 # First match some system type aliases
1185 # that might get confused with valid system types.
1186 # -solaris* is a basic system type, with this one exception.
1187 -solaris1 | -solaris1.*)
1188 os=`echo $os | sed -e 's|solaris1|sunos4|'`
1200 os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
1202 # First accept the basic system types.
1203 # The portable systems comes first.
1204 # Each alternative MUST END IN A *, to match a version number.
1205 # -sysv* is not here because it comes later, after sysvr4.
1206 -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
1207 | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
1208 | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
1209 | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
1211 | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
1212 | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
1213 | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
1214 | -openbsd* | -solidbsd* \
1215 | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
1216 | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
1217 | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
1218 | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
1219 | -chorusos* | -chorusrdb* \
1220 | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
1221 | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
1222 | -uxpv* | -beos* | -mpeix* | -udk* \
1223 | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
1224 | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
1225 | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
1226 | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
1227 | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
1228 | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
1229 | -skyos* | -haiku* | -rdos* | -toppers* | -drops*)
1230 # Remember, each alternative MUST END IN *, to match a version number.
1233 case $basic_machine in
1244 os=`echo $os | sed -e 's|nto|nto-qnx|'`
1246 -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
1247 | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
1248 | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
1251 os=`echo $os | sed -e 's|mac|macos|'`
1257 os=`echo $os | sed -e 's|linux|linux-gnu|'`
1260 os=`echo $os | sed -e 's|sunos5|solaris2|'`
1263 os=`echo $os | sed -e 's|sunos6|solaris3|'`
1310 # Preserve the version number of sinix5.
1312 os=`echo $os | sed -e 's|sinix|sysv|'`
1335 # This must come after -sysvr4.
1347 -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1362 # Get rid of the `-' at the beginning of $os.
1363 os=`echo $os | sed 's/[^-]*-//'`
1364 echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
1370 # Here we handle the default operating systems that come with various machines.
1371 # The value should be what the vendor currently ships out the door with their
1372 # machine or put another way, the most popular os provided with the machine.
1374 # Note that if you're going to try to match "-MANUFACTURER" here (say,
1375 # "-sun"), then you have to tell the case statement up towards the top
1376 # that MANUFACTURER isn't an operating system. Otherwise, code above
1377 # will signal an error saying that MANUFACTURER isn't an operating
1378 # system, and we'll never get to this point.
1380 case $basic_machine in
1399 # This must come before the *-dec entry.
1417 # This also exists in the configure program, but was not the
1436 *-tti) # must be before sparc entry or we get the wrong os.
1469 i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
1523 f30[01]-fujitsu | f700-fujitsu)
1544 # Here we handle the case where we know the os, and the CPU type, but not the
1545 # manufacturer. We pick the logical manufacturer.
1547 case $basic_machine in
1595 -vxsim* | -vxworks* | -windiss*)
1607 -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1614 basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
1618 echo $basic_machine$os
1622 # eval: (add-hook 'write-file-hooks 'time-stamp)
1623 # time-stamp-start: "timestamp='"
1624 # time-stamp-format: "%:y-%02m-%02d"
1625 # time-stamp-end: "'"