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 \
286 | nds32 | nds32le | nds32be \
290 | pdp10 | pdp11 | pj | pjl \
291 | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
295 | sh | sh
[1234] | sh
[24]a | sh
[24]aeb | sh
[23]e | sh
[34]eb | sheb | shbe | shle | sh
[1234]le | sh3ele \
297 | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
298 | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
300 | tahoe | thumb | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
304 | x86 | xc16x | xscale | xscalee
[bl
] | xstormy16 | xtensa \
306 basic_machine
=$basic_machine-unknown
309 basic_machine
=tic54x-unknown
312 basic_machine
=tic55x-unknown
315 basic_machine
=tic6x-unknown
317 m6811 | m68hc11 | m6812 | m68hc12 | picochip
)
318 # Motorola 68HC11/12.
319 basic_machine
=$basic_machine-unknown
322 m88110 | m680
[12346]0 | m683?
2 | m68360 | m5200 | v70 | w65 | z8k
)
325 basic_machine
=mt-unknown
328 # We use `pc' rather than `unknown'
329 # because (1) that's what they normally are, and
330 # (2) the word "unknown" tends to confuse beginning users.
332 basic_machine
=$basic_machine-pc
334 # Object if more than one company name word.
336 echo Invalid configuration \
`$1\': machine \`$basic_machine\' not recognized
1>&2
339 # Recognize the basic CPU types with company name.
342 | alpha-
* | alphaev
[4-8]-* | alphaev56-
* | alphaev6
[78]-* \
343 | alpha64-
* | alpha64ev
[4-8]-* | alpha64ev56-
* | alpha64ev6
[78]-* \
344 | alphapca5
[67]-* | alpha64pca5
[67]-* | arc-
* \
345 | arm-
* | armbe-
* | armle-
* | armeb-
* | armv
*-* \
347 | bfin-
* | bs2000-
* \
348 | c
[123]* | c30-
* |
[cjt
]90-* | c4x-
* \
349 | clipper-
* | craynv-
* | cydra-
* \
350 | d10v-
* | d30v-
* | dlx-
* \
352 | f30
[01]-* | f700-
* | fido-
* | fr30-
* | frv-
* | fx80-
* \
353 | h8300-
* | h8500-
* \
354 | hppa-
* | hppa1.
[01]-* | hppa2.0
-* | hppa2.0
[nw
]-* | hppa64-
* \
355 | i
*86-* | i860-
* | i960-
* | ia64-
* \
356 | ip2k-
* | iq2000-
* \
358 | m32c-
* | m32r-
* | m32rle-
* \
359 | m68000-
* | m680
[012346]0-* | m68360-
* | m683?
2-* | m68k-
* \
360 | m88110-
* | m88k-
* | maxq-
* | mcore-
* | metag-
* | microblaze-
* \
361 | mips-
* | mipsbe-
* | mipseb-
* | mipsel-
* | mipsle-
* \
363 | mips64-
* | mips64el-
* \
364 | mips64octeon-
* | mips64octeonel-
* \
365 | mips64orion-
* | mips64orionel-
* \
366 | mips64r5900-
* | mips64r5900el-
* \
367 | mips64vr-
* | mips64vrel-
* \
368 | mips64vr4100-
* | mips64vr4100el-
* \
369 | mips64vr4300-
* | mips64vr4300el-
* \
370 | mips64vr5000-
* | mips64vr5000el-
* \
371 | mips64vr5900-
* | mips64vr5900el-
* \
372 | mipsisa32-
* | mipsisa32el-
* \
373 | mipsisa32r2-
* | mipsisa32r2el-
* \
374 | mipsisa64-
* | mipsisa64el-
* \
375 | mipsisa64r2-
* | mipsisa64r2el-
* \
376 | mipsisa64sb1-
* | mipsisa64sb1el-
* \
377 | mipsisa64sr71k-
* | mipsisa64sr71kel-
* \
378 | mipstx39-
* | mipstx39el-
* \
382 | nds32-
* | nds32le-
* | nds32be-
* \
384 | none-
* | np1-
* | ns16k-
* | ns32k-
* \
386 | pdp10-
* | pdp11-
* | pj-
* | pjl-
* | pn-
* | power-
* \
387 | powerpc-
* | powerpc64-
* | powerpc64le-
* | powerpcle-
* | ppcbe-
* \
389 | romp-
* | rs6000-
* | rx-
* \
390 | sh-
* | sh
[1234]-* | sh
[24]a-
* | sh
[24]aeb-
* | sh
[23]e-
* | sh
[34]eb-
* | sheb-
* | shbe-
* \
391 | shle-
* | sh
[1234]le-
* | sh3ele-
* | sh64-
* | sh64le-
* \
392 | sparc-
* | sparc64-
* | sparc64b-
* | sparc64v-
* | sparc86x-
* | sparclet-
* \
394 | sparcv8-
* | sparcv9-
* | sparcv9b-
* | sparcv9v-
* | strongarm-
* | sv1-
* | sx?
-* \
395 | tahoe-
* | thumb-
* \
396 | tic30-
* | tic4x-
* | tic54x-
* | tic55x-
* | tic6x-
* | tic80-
* \
397 | tile-
* | tilegx-
* \
400 | v850-
* | v850e-
* | vax-
* \
402 | x86-
* | x86_64-
* | xc16x-
* | xps100-
* | xscale-
* | xscalee
[bl
]-* \
403 | xstormy16-
* | xtensa
*-* \
407 # Recognize the basic CPU types without company name, with glob match.
409 basic_machine
=$basic_machine-unknown
411 # Recognize the various machine names and aliases which stand
412 # for a CPU type and a company and sometimes even an OS.
414 basic_machine
=i386-unknown
417 3b1 |
7300 |
7300-att | att-7300 | pc7300 | safari | unixpc
)
418 basic_machine
=m68000-att
421 basic_machine
=we32k-att
424 basic_machine
=a29k-amd
428 basic_machine
=abacus-unknown
431 basic_machine
=m68010-adobe
435 basic_machine
=fx80-alliant
438 basic_machine
=m68k-altos
441 basic_machine
=a29k-none
445 basic_machine
=x86_64-pc
448 basic_machine
=x86_64-
`echo $basic_machine | sed 's/^[^-]*-//'`
451 basic_machine
=580-amdahl
455 basic_machine
=m68k-unknown
458 basic_machine
=m68k-unknown
462 basic_machine
=m68k-unknown
466 basic_machine
=m68k-apollo
470 basic_machine
=m68k-apollo
474 basic_machine
=i386-pc
478 basic_machine
=m68k-apple
482 basic_machine
=ns32k-sequent
486 basic_machine
=bfin-unknown
490 basic_machine
=bfin-
`echo $basic_machine | sed 's/^[^-]*-//'`
494 basic_machine
=powerpc-ibm
498 basic_machine
=tic54x-
`echo $basic_machine | sed 's/^[^-]*-//'`
501 basic_machine
=tic55x-
`echo $basic_machine | sed 's/^[^-]*-//'`
504 basic_machine
=tic6x-
`echo $basic_machine | sed 's/^[^-]*-//'`
507 basic_machine
=c90-cray
511 basic_machine
=arm-unknown
515 basic_machine
=c1-convex
519 basic_machine
=c2-convex
523 basic_machine
=c32-convex
527 basic_machine
=c34-convex
531 basic_machine
=c38-convex
535 basic_machine
=j90-cray
539 basic_machine
=craynv-cray
543 basic_machine
=cr16-unknown
547 basic_machine
=m68k-crds
549 crisv32 | crisv32-
* | etraxfs
*)
550 basic_machine
=crisv32-axis
552 cris | cris-
* | etrax
*)
553 basic_machine
=cris-axis
556 basic_machine
=crx-unknown
560 basic_machine
=m68k-da30
562 decstation | decstation-3100 | pmax | pmax-
* | pmin | dec3100 | decstatn
)
563 basic_machine
=mips-dec
565 decsystem10
* | dec10
*)
566 basic_machine
=pdp10-dec
569 decsystem20
* | dec20
*)
570 basic_machine
=pdp10-dec
573 delta |
3300 | motorola-3300 | motorola-delta \
574 |
3300-motorola | delta-motorola
)
575 basic_machine
=m68k-motorola
578 basic_machine
=m88k-motorola
582 basic_machine
=i686-pc
586 basic_machine
=i586-pc
590 basic_machine
=rs6000-bull
594 basic_machine
=m68k-bull
598 basic_machine
=a29k-amd
602 basic_machine
=elxsi-elxsi
605 encore | umax | mmax
)
606 basic_machine
=ns32k-encore
608 es1800 | OSE68k | ose68k | ose | OSE
)
609 basic_machine
=m68k-ericsson
613 basic_machine
=i860-alliant
616 basic_machine
=ns32k-ns
619 basic_machine
=tron-gmicro
623 basic_machine
=i386-pc
627 basic_machine
=hppa1.1
-hitachi
631 basic_machine
=h8300-hitachi
635 basic_machine
=h8300-hitachi
639 basic_machine
=h8500-hitachi
643 basic_machine
=m88k-harris
647 basic_machine
=m68k-hp
650 basic_machine
=m68k-hp
654 basic_machine
=m68k-hp
657 hp3k9
[0-9][0-9] | hp9
[0-9][0-9])
658 basic_machine
=hppa1.0
-hp
660 hp9k2
[0-9][0-9] | hp9k31
[0-9])
661 basic_machine
=m68000-hp
664 basic_machine
=m68k-hp
666 hp9k6
[0-9][0-9] | hp6
[0-9][0-9])
667 basic_machine
=hppa1.0
-hp
669 hp9k7
[0-79][0-9] | hp7
[0-79][0-9])
670 basic_machine
=hppa1.1
-hp
672 hp9k78
[0-9] | hp78
[0-9])
673 # FIXME: really hppa2.0-hp
674 basic_machine
=hppa1.1
-hp
676 hp9k8
[67]1 | hp8
[67]1 | hp9k80
[24] | hp80
[24] | hp9k8
[78]9 | hp8
[78]9 | hp9k893 | hp893
)
677 # FIXME: really hppa2.0-hp
678 basic_machine
=hppa1.1
-hp
680 hp9k8
[0-9][13679] | hp8
[0-9][13679])
681 basic_machine
=hppa1.1
-hp
683 hp9k8
[0-9][0-9] | hp8
[0-9][0-9])
684 basic_machine
=hppa1.0
-hp
690 basic_machine
=hppa1.1
-hp
694 basic_machine
=hppa1.1
-hp
698 basic_machine
=i370-ibm
700 # I'm not sure what "Sysv32" means. Should this be sysv3.2?
702 basic_machine
=`echo $1 | sed -e 's/86.*/86-pc/'`
706 basic_machine
=`echo $1 | sed -e 's/86.*/86-pc/'`
710 basic_machine
=`echo $1 | sed -e 's/86.*/86-pc/'`
714 basic_machine
=`echo $1 | sed -e 's/86.*/86-pc/'`
718 basic_machine
=i386-mach
722 basic_machine
=i386-unknown
726 basic_machine
=mips-sgi
736 basic_machine
=m68k-isi
740 basic_machine
=m68k-unknown
744 basic_machine
=m68k-
`echo $basic_machine | sed 's/^[^-]*-//'`
748 basic_machine
=m88k-omron
751 basic_machine
=mips-mips
755 basic_machine
=ns32k-utek
759 basic_machine
=microblaze-xilinx
762 basic_machine
=i386-pc
766 basic_machine
=arm-unknown
770 basic_machine
=m68000-convergent
772 *mint |
-mint[0-9]* |
*MiNT |
*MiNT
[0-9]*)
773 basic_machine
=m68k-atari
777 basic_machine
=`echo $basic_machine | sed -e 's/mips3/mips64/'`
780 basic_machine
=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
783 basic_machine
=m68k-rom68k
787 basic_machine
=powerpc-unknown
791 basic_machine
=i386-pc
795 basic_machine
=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
798 basic_machine
=i370-ibm
802 basic_machine
=i386-pc
806 basic_machine
=i486-ncr
810 basic_machine
=i386-unknown
814 basic_machine
=armv4l-rebel
817 news | news700 | news800 | news900
)
818 basic_machine
=m68k-sony
822 basic_machine
=m68030-sony
825 news-3600 | risc-news
)
826 basic_machine
=mips-sony
830 basic_machine
=v70-nec
834 basic_machine
=m68k-next
847 basic_machine
=m68k-harris
851 basic_machine
=m88k-harris
855 basic_machine
=i960-intel
859 basic_machine
=i960-intel
863 basic_machine
=mips-compaq
867 basic_machine
=np1-gould
870 basic_machine
=neo-tandem
873 basic_machine
=nse-tandem
876 basic_machine
=nsr-tandem
879 basic_machine
=hppa1.1
-oki
882 openrisc | openrisc-
*)
883 basic_machine
=or32-unknown
886 basic_machine
=powerpc-ibm
890 basic_machine
=m68000-ericsson
894 basic_machine
=m68k-none
898 basic_machine
=hppa1.1
-hitachi
902 basic_machine
=i860-intel
906 basic_machine
=hppa-unknown
910 basic_machine
=hppa-
`echo $basic_machine | sed 's/^[^-]*-//'`
914 basic_machine
=sparc-tti
917 basic_machine
=m68k-tti
920 basic_machine
=ns32k-pc532
923 basic_machine
=i386-pc
926 basic_machine
=i386-
`echo $basic_machine | sed 's/^[^-]*-//'`
928 pentium | p5 | k5 | k6 | nexgen | viac3
)
929 basic_machine
=i586-pc
931 pentiumpro | p6 |
6x86 | athlon | athlon_
*)
932 basic_machine
=i686-pc
934 pentiumii | pentium2 | pentiumiii | pentium3
)
935 basic_machine
=i686-pc
938 basic_machine
=i786-pc
940 pentium-
* | p5-
* | k5-
* | k6-
* | nexgen-
* | viac3-
*)
941 basic_machine
=i586-
`echo $basic_machine | sed 's/^[^-]*-//'`
943 pentiumpro-
* | p6-
* |
6x86-
* | athlon-
*)
944 basic_machine
=i686-
`echo $basic_machine | sed 's/^[^-]*-//'`
946 pentiumii-
* | pentium2-
* | pentiumiii-
* | pentium3-
*)
947 basic_machine
=i686-
`echo $basic_machine | sed 's/^[^-]*-//'`
950 basic_machine
=i786-
`echo $basic_machine | sed 's/^[^-]*-//'`
953 basic_machine
=pn-gould
955 power
) basic_machine
=power-ibm
957 ppc
) basic_machine
=powerpc-unknown
959 ppc-
*) basic_machine
=powerpc-
`echo $basic_machine | sed 's/^[^-]*-//'`
961 ppcle | powerpclittle | ppc-le | powerpc-little
)
962 basic_machine
=powerpcle-unknown
964 ppcle-
* | powerpclittle-
*)
965 basic_machine
=powerpcle-
`echo $basic_machine | sed 's/^[^-]*-//'`
967 ppc64
) basic_machine
=powerpc64-unknown
969 ppc64-
*) basic_machine
=powerpc64-
`echo $basic_machine | sed 's/^[^-]*-//'`
971 ppc64le | powerpc64little | ppc64-le | powerpc64-little
)
972 basic_machine
=powerpc64le-unknown
974 ppc64le-
* | powerpc64little-
*)
975 basic_machine
=powerpc64le-
`echo $basic_machine | sed 's/^[^-]*-//'`
978 basic_machine
=i386-ibm
981 basic_machine
=i586-unknown
985 basic_machine
=i386-pc
989 basic_machine
=m68k-rom68k
993 basic_machine
=mips-siemens
996 basic_machine
=romp-ibm
999 basic_machine
=s390-ibm
1002 basic_machine
=s390x-ibm
1005 basic_machine
=a29k-amd
1009 basic_machine
=mipsisa64sb1-unknown
1012 basic_machine
=mipsisa64sb1el-unknown
1015 basic_machine
=mipsisa32-sde
1019 basic_machine
=mips-sei
1023 basic_machine
=i386-sequent
1026 basic_machine
=sh-hitachi
1030 basic_machine
=sh5le-unknown
1033 basic_machine
=sh64-unknown
1035 sparclite-wrs | simso-wrs
)
1036 basic_machine
=sparclite-wrs
1040 basic_machine
=m68k-bull
1044 basic_machine
=spur-unknown
1047 basic_machine
=m68k-tandem
1050 basic_machine
=i860-stratus
1054 basic_machine
=m68000-sun
1057 basic_machine
=m68000-sun
1061 basic_machine
=m68000-sun
1065 basic_machine
=m68k-sun
1069 basic_machine
=m68k-sun
1073 basic_machine
=sparc-sun
1077 basic_machine
=sparc-sun
1081 basic_machine
=sparc-sun
1085 basic_machine
=m68k-sun
1088 basic_machine
=sparc-sun
1090 sun386 | sun386i | roadrunner
)
1091 basic_machine
=i386-sun
1094 basic_machine
=sv1-cray
1098 basic_machine
=i386-sequent
1102 basic_machine
=alphaev5-cray
1106 basic_machine
=t90-cray
1109 # This must be matched before tile*.
1111 basic_machine
=tilegx-unknown
1115 basic_machine
=tile-unknown
1119 basic_machine
=mipstx39-unknown
1122 basic_machine
=mipstx39el-unknown
1125 basic_machine
=pdp10-xkl
1129 basic_machine
=m68k-ncr
1132 basic_machine
=s390x-ibm
1136 basic_machine
=a29k-amd
1140 basic_machine
=a29k-nyu
1144 basic_machine
=v810-nec
1148 basic_machine
=vax-dec
1152 basic_machine
=vax-dec
1156 basic_machine
=f301-fujitsu
1159 basic_machine
=i960-wrs
1163 basic_machine
=m68k-wrs
1167 basic_machine
=a29k-wrs
1171 basic_machine
=w65-wdc
1175 basic_machine
=hppa1.1
-winbond
1179 basic_machine
=i686-pc
1183 basic_machine
=xps100-honeywell
1186 basic_machine
=ymp-cray
1190 basic_machine
=z8k-unknown
1194 basic_machine
=z80-unknown
1198 basic_machine
=none-none
1202 # Here we handle the default manufacturer of certain CPU types. It is in
1203 # some cases the only manufacturer, in others, it is the most popular.
1205 basic_machine
=hppa1.1
-winbond
1208 basic_machine
=hppa1.1
-oki
1211 basic_machine
=hppa1.1
-oki
1214 basic_machine
=romp-ibm
1217 basic_machine
=mmix-knuth
1220 basic_machine
=rs6000-ibm
1223 basic_machine
=vax-dec
1226 # there are many clones, so DEC is not a safe bet
1227 basic_machine
=pdp10-unknown
1230 basic_machine
=pdp11-dec
1233 basic_machine
=we32k-att
1235 sh
[1234] | sh
[24]a | sh
[24]aeb | sh
[34]eb | sh
[1234]le | sh
[23]ele
)
1236 basic_machine
=sh-unknown
1238 sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v
)
1239 basic_machine
=sparc-sun
1242 basic_machine
=cydra-cydrome
1245 basic_machine
=orion-highlevel
1248 basic_machine
=clipper-highlevel
1250 mac | mpw | mac-mpw
)
1251 basic_machine
=m68k-apple
1254 basic_machine
=powerpc-apple
1257 # Make sure to match an already-canonicalized machine name.
1260 echo Invalid configuration \
`$1\': machine \`$basic_machine\' not recognized
1>&2
1265 # Here we canonicalize certain aliases for manufacturers.
1266 case $basic_machine in
1268 basic_machine
=`echo $basic_machine | sed 's/digital.*/dec/'`
1271 basic_machine
=`echo $basic_machine | sed 's/commodore.*/cbm/'`
1277 # Decode manufacturer-specific aliases for certain operating systems.
1279 if [ x
"$os" != x
"" ]
1282 # First match some system type aliases
1283 # that might get confused with valid system types.
1284 # -solaris* is a basic system type, with this one exception.
1288 -solaris1 |
-solaris1.
*)
1289 os
=`echo $os | sed -e 's|solaris1|sunos4|'`
1301 os
=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
1303 # First accept the basic system types.
1304 # The portable systems comes first.
1305 # Each alternative MUST END IN A *, to match a version number.
1306 # -sysv* is not here because it comes later, after sysvr4.
1307 -gnu* |
-bsd* |
-mach* |
-minix* |
-genix* |
-ultrix* |
-irix* \
1308 |
-*vms
* |
-sco* |
-esix* |
-isc* |
-aix* |
-cnk* |
-sunos |
-sunos[34]*\
1309 |
-hpux* |
-unos* |
-osf* |
-luna* |
-dgux* |
-auroraux* |
-solaris* \
1310 |
-sym* |
-kopensolaris* \
1311 |
-amigaos* |
-amigados* |
-msdos* |
-newsos* |
-unicos* |
-aof* \
1313 |
-nindy* |
-vxsim* |
-vxworks* |
-ebmon* |
-hms* |
-mvs* \
1314 |
-clix* |
-riscos* |
-uniplus* |
-iris* |
-rtu* |
-xenix* \
1315 |
-hiux* |
-386bsd* |
-knetbsd* |
-mirbsd* |
-netbsd* \
1316 |
-openbsd* |
-solidbsd* \
1317 |
-ekkobsd* |
-kfreebsd* |
-freebsd* |
-riscix* |
-lynxos* \
1318 |
-bosx* |
-nextstep* |
-cxux* |
-aout* |
-elf* |
-oabi* \
1319 |
-ptx* |
-coff* |
-ecoff* |
-winnt* |
-domain* |
-vsta* \
1320 |
-udi* |
-eabi* |
-lites* |
-ieee* |
-go32* |
-aux* \
1321 |
-chorusos* |
-chorusrdb* |
-cegcc* \
1322 |
-cygwin* |
-msys* |
-pe* |
-psos* |
-moss* |
-proelf* |
-rtems* \
1323 |
-mingw32* |
-linux-gnu* |
-linux-android* \
1324 |
-linux-newlib* |
-linux-uclibc* \
1325 |
-uxpv* |
-beos* |
-mpeix* |
-udk* \
1326 |
-interix* |
-uwin* |
-mks* |
-rhapsody* |
-darwin* |
-opened* \
1327 |
-openstep* |
-oskit* |
-conix* |
-pw32* |
-nonstopux* \
1328 |
-storm-chaos* |
-tops10* |
-tenex* |
-tops20* |
-its* \
1329 |
-os2* |
-vos* |
-palmos* |
-uclinux* |
-nucleus* \
1330 |
-morphos* |
-superux* |
-rtmk* |
-rtmk-nova* |
-windiss* \
1331 |
-powermax* |
-dnix* |
-nx6 |
-nx7 |
-sei* |
-dragonfly* \
1332 |
-skyos* |
-haiku* |
-rdos* |
-toppers* |
-drops* |
-es*)
1333 # Remember, each alternative MUST END IN *, to match a version number.
1336 case $basic_machine in
1347 os
=`echo $os | sed -e 's|nto|nto-qnx|'`
1349 -sim |
-es1800* |
-hms* |
-xray |
-os68k* |
-none* |
-v88r* \
1350 |
-windows* |
-osx |
-abug |
-netware* |
-os9* |
-beos* |
-haiku* \
1351 |
-macos* |
-mpw* |
-magic* |
-mmixware* |
-mon960* |
-lnews*)
1354 os
=`echo $os | sed -e 's|mac|macos|'`
1360 os
=`echo $os | sed -e 's|linux|linux-gnu|'`
1363 os
=`echo $os | sed -e 's|sunos5|solaris2|'`
1366 os
=`echo $os | sed -e 's|sunos6|solaris3|'`
1413 # Preserve the version number of sinix5.
1415 os
=`echo $os | sed -e 's|sinix|sysv|'`
1438 # This must come after -sysvr4.
1450 -*mint |
-mint[0-9]* |
-*MiNT |
-MiNT[0-9]*)
1470 # Get rid of the `-' at the beginning of $os.
1471 os
=`echo $os | sed 's/[^-]*-//'`
1472 echo Invalid configuration \
`$1\': system \`$os\' not recognized
1>&2
1478 # Here we handle the default operating systems that come with various machines.
1479 # The value should be what the vendor currently ships out the door with their
1480 # machine or put another way, the most popular os provided with the machine.
1482 # Note that if you're going to try to match "-MANUFACTURER" here (say,
1483 # "-sun"), then you have to tell the case statement up towards the top
1484 # that MANUFACTURER isn't an operating system. Otherwise, code above
1485 # will signal an error saying that MANUFACTURER isn't an operating
1486 # system, and we'll never get to this point.
1488 case $basic_machine in
1516 # This must come before the *-dec entry.
1534 # This also exists in the configure program, but was not the
1553 *-tti) # must be before sparc entry or we get the wrong os.
1586 i860-
* |
*-att |
*-ncr |
*-altos |
*-motorola |
*-convergent)
1640 f30
[01]-fujitsu | f700-fujitsu
)
1661 # Here we handle the case where we know the os, and the CPU type, but not the
1662 # manufacturer. We pick the logical manufacturer.
1664 case $basic_machine in
1712 -vxsim* |
-vxworks* |
-windiss*)
1724 -*mint |
-mint[0-9]* |
-*MiNT |
-MiNT[0-9]*)
1731 basic_machine
=`echo $basic_machine | sed "s/unknown/$vendor/"`
1735 echo $basic_machine$os
1739 # eval: (add-hook 'write-file-hooks 'time-stamp)
1740 # time-stamp-start: "timestamp='"
1741 # time-stamp-format: "%:y-%02m-%02d"
1742 # time-stamp-end: "'"