version 1.1, 2011/06/08 07:09:12
|
version 1.1.1.2, 2012/02/17 12:50:02
|
Line 1
|
Line 1
|
#! /bin/sh |
#! /bin/sh |
# Configuration validation subroutine script. |
# Configuration validation subroutine script. |
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, |
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, |
# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 | # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 |
# Free Software Foundation, Inc. |
# Free Software Foundation, Inc. |
|
|
timestamp='2008-01-16' | timestamp='2010-01-22' |
|
|
# This file is (in principle) common to ALL GNU software. |
# This file is (in principle) common to ALL GNU software. |
# The presence of a machine in this file suggests that SOME GNU software |
# The presence of a machine in this file suggests that SOME GNU software |
Line 32 timestamp='2008-01-16'
|
Line 32 timestamp='2008-01-16'
|
|
|
|
|
# Please send patches to <config-patches@gnu.org>. Submit a context |
# Please send patches to <config-patches@gnu.org>. Submit a context |
# diff and a properly formatted ChangeLog entry. | # diff and a properly formatted GNU ChangeLog entry. |
# |
# |
# Configuration subroutine to validate and canonicalize a configuration type. |
# Configuration subroutine to validate and canonicalize a configuration type. |
# Supply the specified configuration type as an argument. |
# Supply the specified configuration type as an argument. |
# If it is invalid, we print an error message on stderr and exit with code 1. |
# If it is invalid, we print an error message on stderr and exit with code 1. |
# Otherwise, we print the canonical config type on stdout and succeed. |
# Otherwise, we print the canonical config type on stdout and succeed. |
|
|
|
# You can get the latest version of this script from: |
|
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD |
|
|
# This file is supposed to be the same for all GNU packages |
# This file is supposed to be the same for all GNU packages |
# and recognize all the CPU types, system types and aliases |
# and recognize all the CPU types, system types and aliases |
# that are meaningful with *any* GNU software. |
# that are meaningful with *any* GNU software. |
Line 72 Report bugs and patches to <config-patches@gnu.org>."
|
Line 75 Report bugs and patches to <config-patches@gnu.org>."
|
version="\ |
version="\ |
GNU config.sub ($timestamp) |
GNU config.sub ($timestamp) |
|
|
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, | Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, |
2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. | 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free |
| Software Foundation, Inc. |
|
|
This is free software; see the source for copying conditions. There is NO |
This is free software; see the source for copying conditions. There is NO |
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." |
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." |
Line 122 maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2
|
Line 126 maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2
|
case $maybe_os in |
case $maybe_os in |
nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ |
nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ |
uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ |
uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ |
|
kopensolaris*-gnu* | \ |
storm-chaos* | os2-emx* | rtmk-nova*) |
storm-chaos* | os2-emx* | rtmk-nova*) |
os=-$maybe_os |
os=-$maybe_os |
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` |
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` |
Line 148 case $os in
|
Line 153 case $os in
|
-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ |
-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ |
-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ |
-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ |
-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ |
-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ |
-apple | -axis | -knuth | -cray) | -apple | -axis | -knuth | -cray | -microblaze) |
os= |
os= |
basic_machine=$1 |
basic_machine=$1 |
;; |
;; |
|
-bluegene*) |
|
os=-cnk |
|
;; |
-sim | -cisco | -oki | -wec | -winbond) |
-sim | -cisco | -oki | -wec | -winbond) |
os= |
os= |
basic_machine=$1 |
basic_machine=$1 |
Line 249 case $basic_machine in
|
Line 257 case $basic_machine in
|
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ |
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ |
| i370 | i860 | i960 | ia64 \ |
| i370 | i860 | i960 | ia64 \ |
| ip2k | iq2000 \ |
| ip2k | iq2000 \ |
|
| lm32 \ |
| m32c | m32r | m32rle | m68000 | m68k | m88k \ |
| m32c | m32r | m32rle | m68000 | m68k | m88k \ |
| maxq | mb | microblaze | mcore | mep \ | | maxq | mb | microblaze | mcore | mep | metag \ |
| mips | mipsbe | mipseb | mipsel | mipsle \ |
| mips | mipsbe | mipseb | mipsel | mipsle \ |
| mips16 \ |
| mips16 \ |
| mips64 | mips64el \ |
| mips64 | mips64el \ |
| mips64vr | mips64vrel \ | | mips64octeon | mips64octeonel \ |
| mips64orion | mips64orionel \ |
| mips64orion | mips64orionel \ |
|
| mips64r5900 | mips64r5900el \ |
|
| mips64vr | mips64vrel \ |
| mips64vr4100 | mips64vr4100el \ |
| mips64vr4100 | mips64vr4100el \ |
| mips64vr4300 | mips64vr4300el \ |
| mips64vr4300 | mips64vr4300el \ |
| mips64vr5000 | mips64vr5000el \ |
| mips64vr5000 | mips64vr5000el \ |
Line 268 case $basic_machine in
|
Line 279 case $basic_machine in
|
| mipsisa64sr71k | mipsisa64sr71kel \ |
| mipsisa64sr71k | mipsisa64sr71kel \ |
| mipstx39 | mipstx39el \ |
| mipstx39 | mipstx39el \ |
| mn10200 | mn10300 \ |
| mn10200 | mn10300 \ |
|
| moxie \ |
| mt \ |
| mt \ |
| msp430 \ |
| msp430 \ |
| nios | nios2 \ |
| nios | nios2 \ |
Line 276 case $basic_machine in
|
Line 288 case $basic_machine in
|
| pdp10 | pdp11 | pj | pjl \ |
| pdp10 | pdp11 | pj | pjl \ |
| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ |
| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ |
| pyramid \ |
| pyramid \ |
|
| rx \ |
| score \ |
| score \ |
| sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ | | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ |
| sh64 | sh64le \ |
| sh64 | sh64le \ |
| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ |
| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ |
| sparcv8 | sparcv9 | sparcv9b | sparcv9v \ |
| sparcv8 | sparcv9 | sparcv9b | sparcv9v \ |
| spu | strongarm \ |
| spu | strongarm \ |
| tahoe | thumb | tic4x | tic80 | tron \ |
| tahoe | thumb | tic4x | tic80 | tron \ |
|
| ubicom32 \ |
| v850 | v850e \ |
| v850 | v850e \ |
| we32k \ |
| we32k \ |
| x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ |
| x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ |
| z8k) | | z8k | z80) |
basic_machine=$basic_machine-unknown |
basic_machine=$basic_machine-unknown |
;; |
;; |
m6811 | m68hc11 | m6812 | m68hc12) | m6811 | m68hc11 | m6812 | m68hc12 | picochip) |
# Motorola 68HC11/12. |
# Motorola 68HC11/12. |
basic_machine=$basic_machine-unknown |
basic_machine=$basic_machine-unknown |
os=-none |
os=-none |
Line 329 case $basic_machine in
|
Line 343 case $basic_machine in
|
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ |
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ |
| i*86-* | i860-* | i960-* | ia64-* \ |
| i*86-* | i860-* | i960-* | ia64-* \ |
| ip2k-* | iq2000-* \ |
| ip2k-* | iq2000-* \ |
|
| lm32-* \ |
| m32c-* | m32r-* | m32rle-* \ |
| m32c-* | m32r-* | m32rle-* \ |
| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ |
| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ |
| m88110-* | m88k-* | maxq-* | mcore-* \ | | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ |
| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ |
| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ |
| mips16-* \ |
| mips16-* \ |
| mips64-* | mips64el-* \ |
| mips64-* | mips64el-* \ |
| mips64vr-* | mips64vrel-* \ | | mips64octeon-* | mips64octeonel-* \ |
| mips64orion-* | mips64orionel-* \ |
| mips64orion-* | mips64orionel-* \ |
|
| mips64r5900-* | mips64r5900el-* \ |
|
| mips64vr-* | mips64vrel-* \ |
| mips64vr4100-* | mips64vr4100el-* \ |
| mips64vr4100-* | mips64vr4100el-* \ |
| mips64vr4300-* | mips64vr4300el-* \ |
| mips64vr4300-* | mips64vr4300el-* \ |
| mips64vr5000-* | mips64vr5000el-* \ |
| mips64vr5000-* | mips64vr5000el-* \ |
Line 357 case $basic_machine in
|
Line 374 case $basic_machine in
|
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ |
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ |
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ |
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ |
| pyramid-* \ |
| pyramid-* \ |
| romp-* | rs6000-* \ | | romp-* | rs6000-* | rx-* \ |
| sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ | | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ |
| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ |
| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ |
| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ |
| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ |
| sparclite-* \ |
| sparclite-* \ |
| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ |
| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ |
| tahoe-* | thumb-* \ |
| tahoe-* | thumb-* \ |
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ |
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ |
|
| tile-* | tilegx-* \ |
| tron-* \ |
| tron-* \ |
|
| ubicom32-* \ |
| v850-* | v850e-* | vax-* \ |
| v850-* | v850e-* | vax-* \ |
| we32k-* \ |
| we32k-* \ |
| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ |
| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ |
| xstormy16-* | xtensa*-* \ |
| xstormy16-* | xtensa*-* \ |
| ymp-* \ |
| ymp-* \ |
| z8k-*) | | z8k-* | z80-*) |
;; |
;; |
# Recognize the basic CPU types without company name, with glob match. |
# Recognize the basic CPU types without company name, with glob match. |
xtensa*) |
xtensa*) |
Line 439 case $basic_machine in
|
Line 458 case $basic_machine in
|
basic_machine=m68k-apollo |
basic_machine=m68k-apollo |
os=-bsd |
os=-bsd |
;; |
;; |
|
aros) |
|
basic_machine=i386-pc |
|
os=-aros |
|
;; |
aux) |
aux) |
basic_machine=m68k-apple |
basic_machine=m68k-apple |
os=-aux |
os=-aux |
Line 455 case $basic_machine in
|
Line 478 case $basic_machine in
|
basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` |
basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` |
os=-linux |
os=-linux |
;; |
;; |
|
bluegene*) |
|
basic_machine=powerpc-ibm |
|
os=-cnk |
|
;; |
c90) |
c90) |
basic_machine=c90-cray |
basic_machine=c90-cray |
os=-unicos |
os=-unicos |
;; |
;; |
|
cegcc) |
|
basic_machine=arm-unknown |
|
os=-cegcc |
|
;; |
convex-c1) |
convex-c1) |
basic_machine=c1-convex |
basic_machine=c1-convex |
os=-bsd |
os=-bsd |
Line 526 case $basic_machine in
|
Line 557 case $basic_machine in
|
basic_machine=m88k-motorola |
basic_machine=m88k-motorola |
os=-sysv3 |
os=-sysv3 |
;; |
;; |
|
dicos) |
|
basic_machine=i686-pc |
|
os=-dicos |
|
;; |
djgpp) |
djgpp) |
basic_machine=i586-pc |
basic_machine=i586-pc |
os=-msdosdjgpp |
os=-msdosdjgpp |
Line 699 case $basic_machine in
|
Line 734 case $basic_machine in
|
basic_machine=ns32k-utek |
basic_machine=ns32k-utek |
os=-sysv |
os=-sysv |
;; |
;; |
|
microblaze) |
|
basic_machine=microblaze-xilinx |
|
;; |
mingw32) |
mingw32) |
basic_machine=i386-pc |
basic_machine=i386-pc |
os=-mingw32 |
os=-mingw32 |
Line 1049 case $basic_machine in
|
Line 1087 case $basic_machine in
|
basic_machine=tic6x-unknown |
basic_machine=tic6x-unknown |
os=-coff |
os=-coff |
;; |
;; |
|
# This must be matched before tile*. |
|
tilegx*) |
|
basic_machine=tilegx-unknown |
|
os=-linux-gnu |
|
;; |
tile*) |
tile*) |
basic_machine=tile-unknown |
basic_machine=tile-unknown |
os=-linux-gnu |
os=-linux-gnu |
Line 1128 case $basic_machine in
|
Line 1171 case $basic_machine in
|
basic_machine=z8k-unknown |
basic_machine=z8k-unknown |
os=-sim |
os=-sim |
;; |
;; |
|
z80-*-coff) |
|
basic_machine=z80-unknown |
|
os=-sim |
|
;; |
none) |
none) |
basic_machine=none-none |
basic_machine=none-none |
os=-none |
os=-none |
Line 1166 case $basic_machine in
|
Line 1213 case $basic_machine in
|
we32k) |
we32k) |
basic_machine=we32k-att |
basic_machine=we32k-att |
;; |
;; |
sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele) | sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) |
basic_machine=sh-unknown |
basic_machine=sh-unknown |
;; |
;; |
sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) |
sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) |
Line 1216 case $os in
|
Line 1263 case $os in
|
# First match some system type aliases |
# First match some system type aliases |
# that might get confused with valid system types. |
# that might get confused with valid system types. |
# -solaris* is a basic system type, with this one exception. |
# -solaris* is a basic system type, with this one exception. |
|
-auroraux) |
|
os=-auroraux |
|
;; |
-solaris1 | -solaris1.*) |
-solaris1 | -solaris1.*) |
os=`echo $os | sed -e 's|solaris1|sunos4|'` |
os=`echo $os | sed -e 's|solaris1|sunos4|'` |
;; |
;; |
Line 1236 case $os in
|
Line 1286 case $os in
|
# Each alternative MUST END IN A *, to match a version number. |
# Each alternative MUST END IN A *, to match a version number. |
# -sysv* is not here because it comes later, after sysvr4. |
# -sysv* is not here because it comes later, after sysvr4. |
-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ |
-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ |
| -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ | | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ |
| -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ | | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ |
| | -sym* | -kopensolaris* \ |
| -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ |
| -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ |
| -aos* \ | | -aos* | -aros* \ |
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ |
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ |
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ |
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ |
| -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ |
| -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ |
Line 1248 case $os in
|
Line 1299 case $os in
|
| -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ |
| -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ |
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ |
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ |
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ |
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ |
| -chorusos* | -chorusrdb* \ | | -chorusos* | -chorusrdb* | -cegcc* \ |
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ |
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ |
| -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ |
| -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ |
| -uxpv* | -beos* | -mpeix* | -udk* \ |
| -uxpv* | -beos* | -mpeix* | -udk* \ |
Line 1258 case $os in
|
Line 1309 case $os in
|
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ |
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ |
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ |
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ |
| -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ |
| -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ |
| -skyos* | -haiku* | -rdos* | -toppers* | -drops*) | | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) |
# Remember, each alternative MUST END IN *, to match a version number. |
# Remember, each alternative MUST END IN *, to match a version number. |
;; |
;; |
-qnx*) |
-qnx*) |
Line 1388 case $os in
|
Line 1439 case $os in
|
-zvmoe) |
-zvmoe) |
os=-zvmoe |
os=-zvmoe |
;; |
;; |
|
-dicos*) |
|
os=-dicos |
|
;; |
|
-nacl*) |
|
;; |
-none) |
-none) |
;; |
;; |
*) |
*) |
Line 1585 case $basic_machine in
|
Line 1641 case $basic_machine in
|
-sunos*) |
-sunos*) |
vendor=sun |
vendor=sun |
;; |
;; |
-aix*) | -cnk*|-aix*) |
vendor=ibm |
vendor=ibm |
;; |
;; |
-beos*) |
-beos*) |