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.
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 GNU 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 # 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
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
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.
60 me=`echo "$0" | sed -e 's,.*/,,'`
63 Usage: $0 [OPTION] CPU-MFR-OPSYS
66 Canonicalize a configuration name.
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
73 Report bugs and patches to <config-patches@gnu.org>."
76 GNU config.sub ($timestamp)
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.
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."
86 Try \`$me --help' for more information."
89 while test $# -gt 0 ; do
91 --time-stamp | --time* | -t )
92 echo "$timestamp" ; exit ;;
94 echo "$version" ; exit ;;
96 echo "$usage"; exit ;;
97 -- ) # Stop option processing
99 - ) # Use stdin as input.
102 echo "$me: invalid option $1$help"
106 # First pass through any local machine types.
116 0) echo "$me: missing argument$help" >&2
119 *) echo "$me: too many arguments$help" >&2
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/'`
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*)
133 basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
136 basic_machine=`echo $1 | sed 's/-[^-]*$//'`
137 if [ $basic_machine != $1 ]
138 then os=`echo $1 | sed 's/.*-/-/'`
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.
149 # Prevent following clause from handling this invalid input.
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)
164 -sim | -cisco | -oki | -wec | -winbond)
187 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
191 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
195 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
198 os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
199 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
202 # Don't forget version if it is 3.2v4 or newer.
203 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
206 # Don't forget version if it is 3.2v4 or newer.
207 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
211 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
214 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
218 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
221 basic_machine=clipper-intergraph
224 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
230 basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
233 os=`echo $os | sed -e 's/windowsnt/winnt/'`
239 basic_machine=m68k-atari
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.
250 | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
251 | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
253 | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
256 | d10v | d30v | dlx | dsp16xx \
257 | fido | fr30 | frv \
258 | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
259 | i370 | i860 | i960 | ia64 \
262 | m32c | m32r | m32rle | m68000 | m68k | m88k \
263 | maxq | mb | microblaze | mcore | mep | metag \
264 | mips | mipsbe | mipseb | mipsel | mipsle \
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 \
289 | pdp10 | pdp11 | pj | pjl \
290 | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
294 | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
296 | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
297 | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
299 | tahoe | thumb | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
303 | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
305 basic_machine=$basic_machine-unknown
308 basic_machine=tic54x-unknown
311 basic_machine=tic55x-unknown
314 basic_machine=tic6x-unknown
316 m6811 | m68hc11 | m6812 | m68hc12 | picochip)
317 # Motorola 68HC11/12.
318 basic_machine=$basic_machine-unknown
321 m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
324 basic_machine=mt-unknown
327 # We use `pc' rather than `unknown'
328 # because (1) that's what they normally are, and
329 # (2) the word "unknown" tends to confuse beginning users.
331 basic_machine=$basic_machine-pc
333 # Object if more than one company name word.
335 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
338 # Recognize the basic CPU types with company name.
341 | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
342 | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
343 | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
344 | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
346 | bfin-* | bs2000-* \
347 | c[123]* | c30-* | [cjt]90-* | c4x-* \
348 | clipper-* | craynv-* | cydra-* \
349 | d10v-* | d30v-* | dlx-* \
351 | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
352 | h8300-* | h8500-* \
353 | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
354 | i*86-* | i860-* | i960-* | ia64-* \
355 | ip2k-* | iq2000-* \
357 | m32c-* | m32r-* | m32rle-* \
358 | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
359 | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
360 | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
362 | mips64-* | mips64el-* \
363 | mips64octeon-* | mips64octeonel-* \
364 | mips64orion-* | mips64orionel-* \
365 | mips64r5900-* | mips64r5900el-* \
366 | mips64vr-* | mips64vrel-* \
367 | mips64vr4100-* | mips64vr4100el-* \
368 | mips64vr4300-* | mips64vr4300el-* \
369 | mips64vr5000-* | mips64vr5000el-* \
370 | mips64vr5900-* | mips64vr5900el-* \
371 | mipsisa32-* | mipsisa32el-* \
372 | mipsisa32r2-* | mipsisa32r2el-* \
373 | mipsisa64-* | mipsisa64el-* \
374 | mipsisa64r2-* | mipsisa64r2el-* \
375 | mipsisa64sb1-* | mipsisa64sb1el-* \
376 | mipsisa64sr71k-* | mipsisa64sr71kel-* \
377 | mipstx39-* | mipstx39el-* \
382 | none-* | np1-* | ns16k-* | ns32k-* \
384 | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
385 | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
387 | romp-* | rs6000-* | rx-* \
388 | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
389 | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
390 | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
392 | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
393 | tahoe-* | thumb-* \
394 | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
395 | tile-* | tilegx-* \
398 | v850-* | v850e-* | vax-* \
400 | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
401 | xstormy16-* | xtensa*-* \
405 # Recognize the basic CPU types without company name, with glob match.
407 basic_machine=$basic_machine-unknown
409 # Recognize the basic CPU types without company name, with glob match.
411 basic_machine=$basic_machine-unknown
413 # Recognize the various machine names and aliases which stand
414 # for a CPU type and a company and sometimes even an OS.
416 basic_machine=i386-unknown
419 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
420 basic_machine=m68000-att
423 basic_machine=we32k-att
426 basic_machine=a29k-amd
430 basic_machine=abacus-unknown
433 basic_machine=m68010-adobe
437 basic_machine=fx80-alliant
440 basic_machine=m68k-altos
443 basic_machine=a29k-none
447 basic_machine=x86_64-pc
450 basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
453 basic_machine=580-amdahl
457 basic_machine=m68k-unknown
460 basic_machine=m68k-unknown
464 basic_machine=m68k-unknown
468 basic_machine=m68k-apollo
472 basic_machine=m68k-apollo
476 basic_machine=i386-pc
480 basic_machine=m68k-apple
484 basic_machine=ns32k-sequent
488 basic_machine=bfin-unknown
492 basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
496 basic_machine=powerpc-ibm
500 basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
503 basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
506 basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
509 basic_machine=c90-cray
513 basic_machine=arm-unknown
517 basic_machine=c1-convex
521 basic_machine=c2-convex
525 basic_machine=c32-convex
529 basic_machine=c34-convex
533 basic_machine=c38-convex
537 basic_machine=j90-cray
541 basic_machine=craynv-cray
545 basic_machine=cr16-unknown
549 basic_machine=m68k-crds
551 crisv32 | crisv32-* | etraxfs*)
552 basic_machine=crisv32-axis
554 cris | cris-* | etrax*)
555 basic_machine=cris-axis
558 basic_machine=crx-unknown
562 basic_machine=m68k-da30
564 decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
565 basic_machine=mips-dec
567 decsystem10* | dec10*)
568 basic_machine=pdp10-dec
571 decsystem20* | dec20*)
572 basic_machine=pdp10-dec
575 delta | 3300 | motorola-3300 | motorola-delta \
576 | 3300-motorola | delta-motorola)
577 basic_machine=m68k-motorola
580 basic_machine=m88k-motorola
584 basic_machine=i686-pc
588 basic_machine=i586-pc
592 basic_machine=rs6000-bull
596 basic_machine=m68k-bull
600 basic_machine=a29k-amd
604 basic_machine=elxsi-elxsi
607 encore | umax | mmax)
608 basic_machine=ns32k-encore
610 es1800 | OSE68k | ose68k | ose | OSE)
611 basic_machine=m68k-ericsson
615 basic_machine=i860-alliant
618 basic_machine=ns32k-ns
621 basic_machine=tron-gmicro
625 basic_machine=i386-pc
629 basic_machine=hppa1.1-hitachi
633 basic_machine=h8300-hitachi
637 basic_machine=h8300-hitachi
641 basic_machine=h8500-hitachi
645 basic_machine=m88k-harris
649 basic_machine=m68k-hp
652 basic_machine=m68k-hp
656 basic_machine=m68k-hp
659 hp3k9[0-9][0-9] | hp9[0-9][0-9])
660 basic_machine=hppa1.0-hp
662 hp9k2[0-9][0-9] | hp9k31[0-9])
663 basic_machine=m68000-hp
666 basic_machine=m68k-hp
668 hp9k6[0-9][0-9] | hp6[0-9][0-9])
669 basic_machine=hppa1.0-hp
671 hp9k7[0-79][0-9] | hp7[0-79][0-9])
672 basic_machine=hppa1.1-hp
674 hp9k78[0-9] | hp78[0-9])
675 # FIXME: really hppa2.0-hp
676 basic_machine=hppa1.1-hp
678 hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
679 # FIXME: really hppa2.0-hp
680 basic_machine=hppa1.1-hp
682 hp9k8[0-9][13679] | hp8[0-9][13679])
683 basic_machine=hppa1.1-hp
685 hp9k8[0-9][0-9] | hp8[0-9][0-9])
686 basic_machine=hppa1.0-hp
692 basic_machine=hppa1.1-hp
696 basic_machine=hppa1.1-hp
700 basic_machine=i370-ibm
702 # I'm not sure what "Sysv32" means. Should this be sysv3.2?
704 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
708 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
712 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
716 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
720 basic_machine=i386-mach
724 basic_machine=i386-unknown
728 basic_machine=mips-sgi
738 basic_machine=m68k-isi
742 basic_machine=m68k-unknown
746 basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
750 basic_machine=m88k-omron
753 basic_machine=mips-mips
757 basic_machine=ns32k-utek
761 basic_machine=microblaze-xilinx
764 basic_machine=i386-pc
768 basic_machine=arm-unknown
772 basic_machine=m68000-convergent
774 *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
775 basic_machine=m68k-atari
779 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
782 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
785 basic_machine=m68k-rom68k
789 basic_machine=powerpc-unknown
793 basic_machine=i386-pc
797 basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
800 basic_machine=i370-ibm
804 basic_machine=i486-ncr
808 basic_machine=i386-unknown
812 basic_machine=armv4l-rebel
815 news | news700 | news800 | news900)
816 basic_machine=m68k-sony
820 basic_machine=m68030-sony
823 news-3600 | risc-news)
824 basic_machine=mips-sony
828 basic_machine=v70-nec
832 basic_machine=m68k-next
845 basic_machine=m68k-harris
849 basic_machine=m88k-harris
853 basic_machine=i960-intel
857 basic_machine=i960-intel
861 basic_machine=mips-compaq
865 basic_machine=np1-gould
868 basic_machine=nsr-tandem
871 basic_machine=hppa1.1-oki
874 openrisc | openrisc-*)
875 basic_machine=or32-unknown
878 basic_machine=powerpc-ibm
882 basic_machine=m68000-ericsson
886 basic_machine=m68k-none
890 basic_machine=hppa1.1-hitachi
894 basic_machine=i860-intel
898 basic_machine=hppa-unknown
902 basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
906 basic_machine=sparc-tti
909 basic_machine=m68k-tti
912 basic_machine=ns32k-pc532
915 basic_machine=i386-pc
918 basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
920 pentium | p5 | k5 | k6 | nexgen | viac3)
921 basic_machine=i586-pc
923 pentiumpro | p6 | 6x86 | athlon | athlon_*)
924 basic_machine=i686-pc
926 pentiumii | pentium2 | pentiumiii | pentium3)
927 basic_machine=i686-pc
930 basic_machine=i786-pc
932 pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
933 basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
935 pentiumpro-* | p6-* | 6x86-* | athlon-*)
936 basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
938 pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
939 basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
942 basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
945 basic_machine=pn-gould
947 power) basic_machine=power-ibm
949 ppc) basic_machine=powerpc-unknown
951 ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
953 ppcle | powerpclittle | ppc-le | powerpc-little)
954 basic_machine=powerpcle-unknown
956 ppcle-* | powerpclittle-*)
957 basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
959 ppc64) basic_machine=powerpc64-unknown
961 ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
963 ppc64le | powerpc64little | ppc64-le | powerpc64-little)
964 basic_machine=powerpc64le-unknown
966 ppc64le-* | powerpc64little-*)
967 basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
970 basic_machine=i386-ibm
973 basic_machine=i586-unknown
977 basic_machine=i386-pc
981 basic_machine=m68k-rom68k
985 basic_machine=mips-siemens
988 basic_machine=romp-ibm
991 basic_machine=s390-ibm
994 basic_machine=s390x-ibm
997 basic_machine=a29k-amd
1001 basic_machine=mipsisa64sb1-unknown
1004 basic_machine=mipsisa64sb1el-unknown
1007 basic_machine=mipsisa32-sde
1011 basic_machine=mips-sei
1015 basic_machine=i386-sequent
1018 basic_machine=sh-hitachi
1022 basic_machine=sh5le-unknown
1025 basic_machine=sh64-unknown
1027 sparclite-wrs | simso-wrs)
1028 basic_machine=sparclite-wrs
1032 basic_machine=m68k-bull
1036 basic_machine=spur-unknown
1039 basic_machine=m68k-tandem
1042 basic_machine=i860-stratus
1046 basic_machine=m68000-sun
1049 basic_machine=m68000-sun
1053 basic_machine=m68000-sun
1057 basic_machine=m68k-sun
1061 basic_machine=m68k-sun
1065 basic_machine=sparc-sun
1069 basic_machine=sparc-sun
1073 basic_machine=sparc-sun
1077 basic_machine=m68k-sun
1080 basic_machine=sparc-sun
1082 sun386 | sun386i | roadrunner)
1083 basic_machine=i386-sun
1086 basic_machine=sv1-cray
1090 basic_machine=i386-sequent
1094 basic_machine=alphaev5-cray
1098 basic_machine=t90-cray
1101 # This must be matched before tile*.
1103 basic_machine=tilegx-unknown
1107 basic_machine=tile-unknown
1111 basic_machine=tic55x-unknown
1115 basic_machine=tic6x-unknown
1119 basic_machine=tile-unknown
1123 basic_machine=mipstx39-unknown
1126 basic_machine=mipstx39el-unknown
1129 basic_machine=pdp10-xkl
1133 basic_machine=m68k-ncr
1136 basic_machine=s390x-ibm
1140 basic_machine=a29k-amd
1144 basic_machine=a29k-nyu
1148 basic_machine=v810-nec
1152 basic_machine=vax-dec
1156 basic_machine=vax-dec
1160 basic_machine=f301-fujitsu
1163 basic_machine=i960-wrs
1167 basic_machine=m68k-wrs
1171 basic_machine=a29k-wrs
1175 basic_machine=w65-wdc
1179 basic_machine=hppa1.1-winbond
1183 basic_machine=i686-pc
1187 basic_machine=xps100-honeywell
1190 basic_machine=ymp-cray
1194 basic_machine=z8k-unknown
1198 basic_machine=z80-unknown
1202 basic_machine=none-none
1206 # Here we handle the default manufacturer of certain CPU types. It is in
1207 # some cases the only manufacturer, in others, it is the most popular.
1209 basic_machine=hppa1.1-winbond
1212 basic_machine=hppa1.1-oki
1215 basic_machine=hppa1.1-oki
1218 basic_machine=romp-ibm
1221 basic_machine=mmix-knuth
1224 basic_machine=rs6000-ibm
1227 basic_machine=vax-dec
1230 # there are many clones, so DEC is not a safe bet
1231 basic_machine=pdp10-unknown
1234 basic_machine=pdp11-dec
1237 basic_machine=we32k-att
1239 sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
1240 basic_machine=sh-unknown
1242 sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
1243 basic_machine=sparc-sun
1246 basic_machine=cydra-cydrome
1249 basic_machine=orion-highlevel
1252 basic_machine=clipper-highlevel
1254 mac | mpw | mac-mpw)
1255 basic_machine=m68k-apple
1258 basic_machine=powerpc-apple
1261 # Make sure to match an already-canonicalized machine name.
1264 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
1269 # Here we canonicalize certain aliases for manufacturers.
1270 case $basic_machine in
1272 basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
1275 basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
1281 # Decode manufacturer-specific aliases for certain operating systems.
1283 if [ x"$os" != x"" ]
1286 # First match some system type aliases
1287 # that might get confused with valid system types.
1288 # -solaris* is a basic system type, with this one exception.
1292 -solaris1 | -solaris1.*)
1293 os=`echo $os | sed -e 's|solaris1|sunos4|'`
1305 os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
1307 # First accept the basic system types.
1308 # The portable systems comes first.
1309 # Each alternative MUST END IN A *, to match a version number.
1310 # -sysv* is not here because it comes later, after sysvr4.
1311 -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
1312 | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
1313 | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
1314 | -sym* | -kopensolaris* \
1315 | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
1317 | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
1318 | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
1319 | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
1320 | -openbsd* | -solidbsd* \
1321 | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
1322 | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
1323 | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
1324 | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
1325 | -chorusos* | -chorusrdb* | -cegcc* \
1326 | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
1327 | -mingw32* | -linux-gnu* | -linux-android* \
1328 | -linux-newlib* | -linux-uclibc* \
1329 | -uxpv* | -beos* | -mpeix* | -udk* \
1330 | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
1331 | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
1332 | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
1333 | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
1334 | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
1335 | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
1336 | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
1337 # Remember, each alternative MUST END IN *, to match a version number.
1340 case $basic_machine in
1351 os=`echo $os | sed -e 's|nto|nto-qnx|'`
1353 -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
1354 | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
1355 | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
1358 os=`echo $os | sed -e 's|mac|macos|'`
1364 os=`echo $os | sed -e 's|linux|linux-gnu|'`
1367 os=`echo $os | sed -e 's|sunos5|solaris2|'`
1370 os=`echo $os | sed -e 's|sunos6|solaris3|'`
1417 # Preserve the version number of sinix5.
1419 os=`echo $os | sed -e 's|sinix|sysv|'`
1442 # This must come after -sysvr4.
1454 -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1474 # Get rid of the `-' at the beginning of $os.
1475 os=`echo $os | sed 's/[^-]*-//'`
1476 echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
1482 # Here we handle the default operating systems that come with various machines.
1483 # The value should be what the vendor currently ships out the door with their
1484 # machine or put another way, the most popular os provided with the machine.
1486 # Note that if you're going to try to match "-MANUFACTURER" here (say,
1487 # "-sun"), then you have to tell the case statement up towards the top
1488 # that MANUFACTURER isn't an operating system. Otherwise, code above
1489 # will signal an error saying that MANUFACTURER isn't an operating
1490 # system, and we'll never get to this point.
1492 case $basic_machine in
1520 # This must come before the *-dec entry.
1538 # This also exists in the configure program, but was not the
1557 *-tti) # must be before sparc entry or we get the wrong os.
1590 i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
1644 f30[01]-fujitsu | f700-fujitsu)
1665 # Here we handle the case where we know the os, and the CPU type, but not the
1666 # manufacturer. We pick the logical manufacturer.
1668 case $basic_machine in
1716 -vxsim* | -vxworks* | -windiss*)
1728 -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1735 basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
1739 echo $basic_machine$os
1743 # eval: (add-hook 'write-file-hooks 'time-stamp)
1744 # time-stamp-start: "timestamp='"
1745 # time-stamp-format: "%:y-%02m-%02d"
1746 # time-stamp-end: "'"