2
2
# Attempt to guess a canonical system name.
3
3
# Copyright 1992-2013 Free Software Foundation, Inc.
4
4
5
- timestamp=' 2013-04-24 '
5
+ timestamp=' 2013-06-10 '
6
6
7
7
# This file is free software; you can redistribute it and/or modify it
8
8
# under the terms of the GNU General Public License as published by
@@ -132,6 +132,27 @@ UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
132
132
UNAME_SYSTEM=` (uname -s) 2> /dev/null` || UNAME_SYSTEM=unknown
133
133
UNAME_VERSION=` (uname -v) 2> /dev/null` || UNAME_VERSION=unknown
134
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
+
135
156
# Note: order is significant - the case branches are not exclusive.
136
157
137
158
case " ${UNAME_MACHINE} :${UNAME_SYSTEM} :${UNAME_RELEASE} :${UNAME_VERSION} " in
@@ -853,21 +874,21 @@ EOF
853
874
exit ;;
854
875
* :GNU:* :* )
855
876
# the GNU system
856
- 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,/.*$,,' `
857
878
exit ;;
858
879
* :GNU/* :* :* )
859
880
# other systems with GNU libc and userland
860
- 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}
861
882
exit ;;
862
883
i* 86:Minix:* :* )
863
884
echo ${UNAME_MACHINE} -pc-minix
864
885
exit ;;
865
886
aarch64:Linux:* :* )
866
- echo ${UNAME_MACHINE} -unknown-linux-gnu
887
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
867
888
exit ;;
868
889
aarch64_be:Linux:* :* )
869
890
UNAME_MACHINE=aarch64_be
870
- echo ${UNAME_MACHINE} -unknown-linux-gnu
891
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
871
892
exit ;;
872
893
alpha:Linux:* :* )
873
894
case ` sed -n ' /^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
@@ -880,67 +901,54 @@ EOF
880
901
EV68* ) UNAME_MACHINE=alphaev68 ;;
881
902
esac
882
903
objdump --private-headers /bin/sh | grep -q ld.so.1
883
- if test " $? " = 0 ; then LIBC=" libc1 " ; else LIBC= " " ; fi
884
- echo ${UNAME_MACHINE} -unknown-linux-gnu ${LIBC}
904
+ if test " $? " = 0 ; then LIBC=" gnulibc1 " ; fi
905
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
885
906
exit ;;
886
907
arc:Linux:* :* | arceb:Linux:* :* )
887
- echo ${UNAME_MACHINE} -unknown-linux-gnu
908
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
888
909
exit ;;
889
910
arm* :Linux:* :* )
890
911
eval $set_cc_for_build
891
912
if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2> /dev/null \
892
913
| grep -q __ARM_EABI__
893
914
then
894
- echo ${UNAME_MACHINE} -unknown-linux-gnu
915
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
895
916
else
896
917
if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2> /dev/null \
897
918
| grep -q __ARM_PCS_VFP
898
919
then
899
- echo ${UNAME_MACHINE} -unknown-linux-gnueabi
920
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC} eabi
900
921
else
901
- echo ${UNAME_MACHINE} -unknown-linux-gnueabihf
922
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC} eabihf
902
923
fi
903
924
fi
904
925
exit ;;
905
926
avr32* :Linux:* :* )
906
- echo ${UNAME_MACHINE} -unknown-linux-gnu
927
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
907
928
exit ;;
908
929
cris:Linux:* :* )
909
- echo ${UNAME_MACHINE} -axis-linux-gnu
930
+ echo ${UNAME_MACHINE} -axis-linux-${LIBC}
910
931
exit ;;
911
932
crisv32:Linux:* :* )
912
- echo ${UNAME_MACHINE} -axis-linux-gnu
933
+ echo ${UNAME_MACHINE} -axis-linux-${LIBC}
913
934
exit ;;
914
935
frv:Linux:* :* )
915
- echo ${UNAME_MACHINE} -unknown-linux-gnu
936
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
916
937
exit ;;
917
938
hexagon:Linux:* :* )
918
- echo ${UNAME_MACHINE} -unknown-linux-gnu
939
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
919
940
exit ;;
920
941
i* 86:Linux:* :* )
921
- LIBC=gnu
922
- eval $set_cc_for_build
923
- sed ' s/^ //' << EOF >$dummy .c
924
- #ifdef __dietlibc__
925
- LIBC=dietlibc
926
- #endif
927
- #else
928
- #include <features.h>
929
- #ifdef __UCLIBC__
930
- LIBC=uclibc
931
- #endif
932
- EOF
933
- eval ` $CC_FOR_BUILD -E $dummy .c 2> /dev/null | grep ' ^LIBC' `
934
- echo " ${UNAME_MACHINE} -pc-linux-${LIBC} "
942
+ echo ${UNAME_MACHINE} -pc-linux-${LIBC}
935
943
exit ;;
936
944
ia64:Linux:* :* )
937
- echo ${UNAME_MACHINE} -unknown-linux-gnu
945
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
938
946
exit ;;
939
947
m32r* :Linux:* :* )
940
- echo ${UNAME_MACHINE} -unknown-linux-gnu
948
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
941
949
exit ;;
942
950
m68* :Linux:* :* )
943
- echo ${UNAME_MACHINE} -unknown-linux-gnu
951
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
944
952
exit ;;
945
953
mips:Linux:* :* | mips64:Linux:* :* )
946
954
eval $set_cc_for_build
@@ -959,59 +967,63 @@ EOF
959
967
#endif
960
968
EOF
961
969
eval ` $CC_FOR_BUILD -E $dummy .c 2> /dev/null | grep ' ^CPU' `
962
- test x" ${CPU} " ! = x && { echo " ${CPU} -unknown-linux-gnu " ; exit ; }
970
+ test x" ${CPU} " ! = x && { echo " ${CPU} -unknown-linux-${LIBC} " ; exit ; }
963
971
;;
964
972
or1k:Linux:* :* )
965
- echo ${UNAME_MACHINE} -unknown-linux-gnu
973
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
966
974
exit ;;
967
975
or32:Linux:* :* )
968
- echo ${UNAME_MACHINE} -unknown-linux-gnu
976
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
969
977
exit ;;
970
978
padre:Linux:* :* )
971
- echo sparc-unknown-linux-gnu
979
+ echo sparc-unknown-linux-${LIBC}
972
980
exit ;;
973
981
parisc64:Linux:* :* | hppa64:Linux:* :* )
974
- echo hppa64-unknown-linux-gnu
982
+ echo hppa64-unknown-linux-${LIBC}
975
983
exit ;;
976
984
parisc:Linux:* :* | hppa:Linux:* :* )
977
985
# Look for CPU level
978
986
case ` grep ' ^cpu[^a-z]*:' /proc/cpuinfo 2> /dev/null | cut -d' ' -f2` in
979
- PA7* ) echo hppa1.1-unknown-linux-gnu ;;
980
- PA8* ) echo hppa2.0-unknown-linux-gnu ;;
981
- * ) 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} ;;
982
990
esac
983
991
exit ;;
984
992
ppc64:Linux:* :* )
985
- echo powerpc64-unknown-linux-gnu
993
+ echo powerpc64-unknown-linux-${LIBC}
986
994
exit ;;
987
995
ppc:Linux:* :* )
988
- 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}
989
1003
exit ;;
990
1004
s390:Linux:* :* | s390x:Linux:* :* )
991
- echo ${UNAME_MACHINE} -ibm-linux
1005
+ echo ${UNAME_MACHINE} -ibm-linux- ${LIBC}
992
1006
exit ;;
993
1007
sh64* :Linux:* :* )
994
- echo ${UNAME_MACHINE} -unknown-linux-gnu
1008
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
995
1009
exit ;;
996
1010
sh* :Linux:* :* )
997
- echo ${UNAME_MACHINE} -unknown-linux-gnu
1011
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
998
1012
exit ;;
999
1013
sparc:Linux:* :* | sparc64:Linux:* :* )
1000
- echo ${UNAME_MACHINE} -unknown-linux-gnu
1014
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
1001
1015
exit ;;
1002
1016
tile* :Linux:* :* )
1003
- echo ${UNAME_MACHINE} -unknown-linux-gnu
1017
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
1004
1018
exit ;;
1005
1019
vax:Linux:* :* )
1006
- echo ${UNAME_MACHINE} -dec-linux-gnu
1020
+ echo ${UNAME_MACHINE} -dec-linux-${LIBC}
1007
1021
exit ;;
1008
1022
x86_64:Linux:* :* )
1009
- LIBC=gnu
1010
- test -r /lib/libc.so && od -An -S13 /lib/libc.so | grep -q __uClibc_main && LIBC=uclibc
1011
1023
echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
1012
1024
exit ;;
1013
1025
xtensa* :Linux:* :* )
1014
- echo ${UNAME_MACHINE} -unknown-linux-gnu
1026
+ echo ${UNAME_MACHINE} -unknown-linux-${LIBC}
1015
1027
exit ;;
1016
1028
i* 86:DYNIX/ptx:4* :* )
1017
1029
# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
@@ -1244,19 +1256,21 @@ EOF
1244
1256
exit ;;
1245
1257
* :Darwin:* :* )
1246
1258
UNAME_PROCESSOR=` uname -p` || UNAME_PROCESSOR=unknown
1247
- case $UNAME_PROCESSOR in
1248
- i386)
1249
- eval $set_cc_for_build
1250
- if [ " $CC_FOR_BUILD " != ' no_compiler_found' ]; then
1251
- if (echo ' #ifdef __LP64__' ; echo IS_64BIT_ARCH; echo ' #endif' ) | \
1252
- (CCOPTS= $CC_FOR_BUILD -E - 2> /dev/null) | \
1253
- grep IS_64BIT_ARCH > /dev/null
1254
- then
1255
- UNAME_PROCESSOR=" x86_64"
1256
- fi
1257
- fi ;;
1258
- unknown) UNAME_PROCESSOR=powerpc ;;
1259
- esac
1259
+ eval $set_cc_for_build
1260
+ if test " $UNAME_PROCESSOR " = unknown ; then
1261
+ UNAME_PROCESSOR=powerpc
1262
+ fi
1263
+ if [ " $CC_FOR_BUILD " != ' no_compiler_found' ]; then
1264
+ if (echo ' #ifdef __LP64__' ; echo IS_64BIT_ARCH; echo ' #endif' ) | \
1265
+ (CCOPTS= $CC_FOR_BUILD -E - 2> /dev/null) | \
1266
+ grep IS_64BIT_ARCH > /dev/null
1267
+ then
1268
+ case $UNAME_PROCESSOR in
1269
+ i386) UNAME_PROCESSOR=x86_64 ;;
1270
+ powerpc) UNAME_PROCESSOR=powerpc64 ;;
1271
+ esac
1272
+ fi
1273
+ fi
1260
1274
echo ${UNAME_PROCESSOR} -apple-darwin${UNAME_RELEASE}
1261
1275
exit ;;
1262
1276
* :procnto* :* :* | * :QNX:[0123456789]* :* )
0 commit comments