1
1
#! /bin/sh
2
2
# Attempt to guess a canonical system name.
3
- # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4
- # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
5
- # 2011, 2012, 2013 Free Software Foundation, Inc.
3
+ # Copyright 1992-2013 Free Software Foundation, Inc.
6
4
7
- timestamp=' 2012-12 -29'
5
+ timestamp=' 2013-11 -29'
8
6
9
7
# This file is free software; you can redistribute it and/or modify it
10
8
# under the terms of the GNU General Public License as published by
@@ -26,7 +24,7 @@ timestamp='2012-12-29'
26
24
# program. This Exception is an additional permission under section 7
27
25
# of the GNU General Public License, version 3 ("GPLv3").
28
26
#
29
- # Originally written by Per Bothner.
27
+ # Originally written by Per Bothner.
30
28
#
31
29
# You can get the latest version of this script from:
32
30
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
@@ -52,9 +50,7 @@ version="\
52
50
GNU config.guess ($timestamp )
53
51
54
52
Originally written by Per Bothner.
55
- Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
56
- 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011,
57
- 2012, 2013 Free Software Foundation, Inc.
53
+ Copyright 1992-2013 Free Software Foundation, Inc.
58
54
59
55
This is free software; see the source for copying conditions. There is NO
60
56
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -136,6 +132,27 @@ UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
136
132
UNAME_SYSTEM=` (uname -s) 2> /dev/null` || UNAME_SYSTEM=unknown
137
133
UNAME_VERSION=` (uname -v) 2> /dev/null` || UNAME_VERSION=unknown
138
134
135
+ case " ${UNAME_SYSTEM} " in
136
+ Linux|GNU|GNU/* )
137
+ # If the system lacks a compiler, then just pick glibc.
138
+ # We could probably try harder.
139
+ LIBC=gnu
140
+
141
+ eval $set_cc_for_build
142
+ cat << -EOF > $dummy .c
143
+ #include <features.h>
144
+ #if defined(__UCLIBC__)
145
+ LIBC=uclibc
146
+ #elif defined(__dietlibc__)
147
+ LIBC=dietlibc
148
+ #else
149
+ LIBC=gnu
150
+ #endif
151
+ EOF
152
+ eval ` $CC_FOR_BUILD -E $dummy .c 2> /dev/null | grep ' ^LIBC' `
153
+ ;;
154
+ esac
155
+
139
156
# Note: order is significant - the case branches are not exclusive.
140
157
141
158
case " ${UNAME_MACHINE} :${UNAME_SYSTEM} :${UNAME_RELEASE} :${UNAME_VERSION} " in
@@ -857,21 +874,21 @@ EOF
857
874
exit ;;
858
875
* :GNU:* :* )
859
876
# the GNU system
860
- echo ` echo ${UNAME_MACHINE} | sed -e ' s,[-/].*$,,' ` -unknown-gnu ` echo ${UNAME_RELEASE} | sed -e ' s,/.*$,,' `
877
+ echo ` echo ${UNAME_MACHINE} | sed -e ' s,[-/].*$,,' ` -unknown-${LIBC} ` echo ${UNAME_RELEASE} | sed -e ' s,/.*$,,' `
861
878
exit ;;
862
879
* :GNU/* :* :* )
863
880
# other systems with GNU libc and userland
864
- echo ${UNAME_MACHINE} -unknown-` echo ${UNAME_SYSTEM} | sed ' s,^[^/]*/,,' | tr ' [A-Z]' ' [a-z]' ` ` echo ${UNAME_RELEASE} | sed -e ' s/[-(].*//' ` -gnu
881
+ echo ${UNAME_MACHINE} -unknown-` echo ${UNAME_SYSTEM} | sed ' s,^[^/]*/,,' | tr ' [A-Z]' ' [a-z]' ` ` echo ${UNAME_RELEASE} | sed -e ' s/[-(].*//' ` -${LIBC}
865
882
exit ;;
866
883
i* 86:Minix:* :* )
867
884
echo ${UNAME_MACHINE} -pc-minix
868
885
exit ;;
869
886
aarch64:Linux:* :* )
870
- echo ${UNAME_MACHINE} -unknown-linux-gnu
887
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
871
888
exit ;;
872
889
aarch64_be:Linux:* :* )
873
890
UNAME_MACHINE=aarch64_be
874
- echo ${UNAME_MACHINE} -unknown-linux-gnu
891
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
875
892
exit ;;
876
893
alpha:Linux:* :* )
877
894
case ` sed -n ' /^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
@@ -884,59 +901,54 @@ EOF
884
901
EV68* ) UNAME_MACHINE=alphaev68 ;;
885
902
esac
886
903
objdump --private-headers /bin/sh | grep -q ld.so.1
887
- if test " $? " = 0 ; then LIBC=" libc1" ; else LIBC=" " ; fi
888
- echo ${UNAME_MACHINE} -unknown-linux-gnu${LIBC}
904
+ if test " $? " = 0 ; then LIBC=" gnulibc1" ; fi
905
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
906
+ exit ;;
907
+ arc:Linux:* :* | arceb:Linux:* :* )
908
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
889
909
exit ;;
890
910
arm* :Linux:* :* )
891
911
eval $set_cc_for_build
892
912
if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2> /dev/null \
893
913
| grep -q __ARM_EABI__
894
914
then
895
- echo ${UNAME_MACHINE} -unknown-linux-gnu
915
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
896
916
else
897
917
if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2> /dev/null \
898
918
| grep -q __ARM_PCS_VFP
899
919
then
900
- echo ${UNAME_MACHINE} -unknown-linux-gnueabi
920
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC} eabi
901
921
else
902
- echo ${UNAME_MACHINE} -unknown-linux-gnueabihf
922
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC} eabihf
903
923
fi
904
924
fi
905
925
exit ;;
906
926
avr32* :Linux:* :* )
907
- echo ${UNAME_MACHINE} -unknown-linux-gnu
927
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
908
928
exit ;;
909
929
cris:Linux:* :* )
910
- echo ${UNAME_MACHINE} -axis-linux-gnu
930
+ echo ${UNAME_MACHINE} -axis-linux-${LIBC}
911
931
exit ;;
912
932
crisv32:Linux:* :* )
913
- echo ${UNAME_MACHINE} -axis-linux-gnu
933
+ echo ${UNAME_MACHINE} -axis-linux-${LIBC}
914
934
exit ;;
915
935
frv:Linux:* :* )
916
- echo ${UNAME_MACHINE} -unknown-linux-gnu
936
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
917
937
exit ;;
918
938
hexagon:Linux:* :* )
919
- echo ${UNAME_MACHINE} -unknown-linux-gnu
939
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
920
940
exit ;;
921
941
i* 86:Linux:* :* )
922
- LIBC=gnu
923
- eval $set_cc_for_build
924
- sed ' s/^ //' << EOF >$dummy .c
925
- #ifdef __dietlibc__
926
- LIBC=dietlibc
927
- #endif
928
- EOF
929
- eval ` $CC_FOR_BUILD -E $dummy .c 2> /dev/null | grep ' ^LIBC' `
930
- echo " ${UNAME_MACHINE} -pc-linux-${LIBC} "
942
+ echo ${UNAME_MACHINE} -pc-linux-${LIBC}
931
943
exit ;;
932
944
ia64:Linux:* :* )
933
- echo ${UNAME_MACHINE} -unknown-linux-gnu
945
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
934
946
exit ;;
935
947
m32r* :Linux:* :* )
936
- echo ${UNAME_MACHINE} -unknown-linux-gnu
948
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
937
949
exit ;;
938
950
m68* :Linux:* :* )
939
- echo ${UNAME_MACHINE} -unknown-linux-gnu
951
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
940
952
exit ;;
941
953
mips:Linux:* :* | mips64:Linux:* :* )
942
954
eval $set_cc_for_build
@@ -955,54 +967,63 @@ EOF
955
967
#endif
956
968
EOF
957
969
eval ` $CC_FOR_BUILD -E $dummy .c 2> /dev/null | grep ' ^CPU' `
958
- test x" ${CPU} " ! = x && { echo " ${CPU} -unknown-linux-gnu " ; exit ; }
970
+ test x" ${CPU} " ! = x && { echo " ${CPU} -unknown-linux-${LIBC} " ; exit ; }
959
971
;;
972
+ or1k:Linux:* :* )
973
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
974
+ exit ;;
960
975
or32:Linux:* :* )
961
- echo ${UNAME_MACHINE} -unknown-linux-gnu
976
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
962
977
exit ;;
963
978
padre:Linux:* :* )
964
- echo sparc-unknown-linux-gnu
979
+ echo sparc-unknown-linux-${LIBC}
965
980
exit ;;
966
981
parisc64:Linux:* :* | hppa64:Linux:* :* )
967
- echo hppa64-unknown-linux-gnu
982
+ echo hppa64-unknown-linux-${LIBC}
968
983
exit ;;
969
984
parisc:Linux:* :* | hppa:Linux:* :* )
970
985
# Look for CPU level
971
986
case ` grep ' ^cpu[^a-z]*:' /proc/cpuinfo 2> /dev/null | cut -d' ' -f2` in
972
- PA7* ) echo hppa1.1-unknown-linux-gnu ;;
973
- PA8* ) echo hppa2.0-unknown-linux-gnu ;;
974
- * ) echo hppa-unknown-linux-gnu ;;
987
+ PA7* ) echo hppa1.1-unknown-linux-${LIBC} ;;
988
+ PA8* ) echo hppa2.0-unknown-linux-${LIBC} ;;
989
+ * ) echo hppa-unknown-linux-${LIBC} ;;
975
990
esac
976
991
exit ;;
977
992
ppc64:Linux:* :* )
978
- echo powerpc64-unknown-linux-gnu
993
+ echo powerpc64-unknown-linux-${LIBC}
979
994
exit ;;
980
995
ppc:Linux:* :* )
981
- echo powerpc-unknown-linux-gnu
996
+ echo powerpc-unknown-linux-${LIBC}
997
+ exit ;;
998
+ ppc64le:Linux:* :* )
999
+ echo powerpc64le-unknown-linux-${LIBC}
1000
+ exit ;;
1001
+ ppcle:Linux:* :* )
1002
+ echo powerpcle-unknown-linux-${LIBC}
982
1003
exit ;;
983
1004
s390:Linux:* :* | s390x:Linux:* :* )
984
- echo ${UNAME_MACHINE} -ibm-linux
1005
+ echo ${UNAME_MACHINE} -ibm-linux- ${LIBC}
985
1006
exit ;;
986
1007
sh64* :Linux:* :* )
987
- echo ${UNAME_MACHINE} -unknown-linux-gnu
1008
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
988
1009
exit ;;
989
1010
sh* :Linux:* :* )
990
- echo ${UNAME_MACHINE} -unknown-linux-gnu
1011
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
991
1012
exit ;;
992
1013
sparc:Linux:* :* | sparc64:Linux:* :* )
993
- echo ${UNAME_MACHINE} -unknown-linux-gnu
1014
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
994
1015
exit ;;
995
1016
tile* :Linux:* :* )
996
- echo ${UNAME_MACHINE} -unknown-linux-gnu
1017
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
997
1018
exit ;;
998
1019
vax:Linux:* :* )
999
- echo ${UNAME_MACHINE} -dec-linux-gnu
1020
+ echo ${UNAME_MACHINE} -dec-linux-${LIBC}
1000
1021
exit ;;
1001
1022
x86_64:Linux:* :* )
1002
- echo ${UNAME_MACHINE} -unknown-linux-gnu
1023
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
1003
1024
exit ;;
1004
1025
xtensa* :Linux:* :* )
1005
- echo ${UNAME_MACHINE} -unknown-linux-gnu
1026
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
1006
1027
exit ;;
1007
1028
i* 86:DYNIX/ptx:4* :* )
1008
1029
# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
@@ -1235,19 +1256,31 @@ EOF
1235
1256
exit ;;
1236
1257
* :Darwin:* :* )
1237
1258
UNAME_PROCESSOR=` uname -p` || UNAME_PROCESSOR=unknown
1238
- case $UNAME_PROCESSOR in
1239
- i386)
1240
- eval $set_cc_for_build
1241
- if [ " $CC_FOR_BUILD " != ' no_compiler_found' ]; then
1242
- if (echo ' #ifdef __LP64__' ; echo IS_64BIT_ARCH; echo ' #endif' ) | \
1243
- (CCOPTS= $CC_FOR_BUILD -E - 2> /dev/null) | \
1244
- grep IS_64BIT_ARCH > /dev/null
1245
- then
1246
- UNAME_PROCESSOR=" x86_64"
1247
- fi
1248
- fi ;;
1249
- unknown) UNAME_PROCESSOR=powerpc ;;
1250
- esac
1259
+ eval $set_cc_for_build
1260
+ if test " $UNAME_PROCESSOR " = unknown ; then
1261
+ UNAME_PROCESSOR=powerpc
1262
+ fi
1263
+ if test ` echo " $UNAME_RELEASE " | sed -e ' s/\..*//' ` -le 10 ; then
1264
+ if [ " $CC_FOR_BUILD " != ' no_compiler_found' ]; then
1265
+ if (echo ' #ifdef __LP64__' ; echo IS_64BIT_ARCH; echo ' #endif' ) | \
1266
+ (CCOPTS= $CC_FOR_BUILD -E - 2> /dev/null) | \
1267
+ grep IS_64BIT_ARCH > /dev/null
1268
+ then
1269
+ case $UNAME_PROCESSOR in
1270
+ i386) UNAME_PROCESSOR=x86_64 ;;
1271
+ powerpc) UNAME_PROCESSOR=powerpc64 ;;
1272
+ esac
1273
+ fi
1274
+ fi
1275
+ elif test " $UNAME_PROCESSOR " = i386 ; then
1276
+ # Avoid executing cc on OS X 10.9, as it ships with a stub
1277
+ # that puts up a graphical alert prompting to install
1278
+ # developer tools. Any system running Mac OS X 10.7 or
1279
+ # later (Darwin 11 and later) is required to have a 64-bit
1280
+ # processor. This is not true of the ARM version of Darwin
1281
+ # that Apple uses in portable devices.
1282
+ UNAME_PROCESSOR=x86_64
1283
+ fi
1251
1284
echo ${UNAME_PROCESSOR} -apple-darwin${UNAME_RELEASE}
1252
1285
exit ;;
1253
1286
* :procnto* :* :* | * :QNX:[0123456789]* :* )
0 commit comments