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
# Free Software Foundation, Inc.
3
# Copyright 1992-2013 Free Software Foundation, Inc.
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
11
# the Free Software Foundation; either version 2 of the License, or
9
# the Free Software Foundation; either version 3 of the License, or
12
10
# (at your option) any later version.
14
12
# This program is distributed in the hope that it will be useful, but
17
15
# General Public License for more details.
19
17
# You should have received a copy of the GNU General Public License
20
# along with this program; if not, write to the Free Software
21
# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
18
# along with this program; if not, see <http://www.gnu.org/licenses/>.
24
20
# As a special exception to the GNU General Public License, if you
25
21
# distribute this file as part of a program that contains a
26
22
# configuration script generated by Autoconf, you may include it under
27
# the same distribution terms that you use for the rest of that program.
30
# Originally written by Per Bothner. Please send patches (context
31
# diff format) to <config-patches@gnu.org> and include a ChangeLog
23
# the same distribution terms that you use for the rest of that
24
# program. This Exception is an additional permission under section 7
25
# of the GNU General Public License, version 3 ("GPLv3").
34
# This script attempts to guess a canonical system name similar to
35
# config.sub. If it succeeds, it prints the system name on stdout, and
36
# exits with 0. Otherwise, it exits with 1.
27
# Originally written by Per Bothner.
38
29
# You can get the latest version of this script from:
39
30
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
32
# Please send patches with a ChangeLog entry to config-patches@gnu.org.
41
35
me=`echo "$0" | sed -e 's,.*/,,'`
56
50
GNU config.guess ($timestamp)
58
52
Originally written by Per Bothner.
59
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
60
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free
61
Software Foundation, Inc.
53
Copyright 1992-2013 Free Software Foundation, Inc.
63
55
This is free software; see the source for copying conditions. There is NO
64
56
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
107
99
set_cc_for_build='
108
100
trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
109
trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" HUP INT PIPE TERM ;
101
trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
110
102
: ${TMPDIR=/tmp} ;
111
103
{ tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
112
104
{ test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
145
137
case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
147
139
# NetBSD (nbsd) targets should (where applicable) match one or
148
# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
140
# more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
149
141
# *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
150
142
# switched to ELF, *-*-netbsd* would select the old
151
143
# object file format. This provides both forward
202
194
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
203
195
echo "${machine}-${os}${release}"
198
UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
199
echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
206
202
UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
207
203
echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
270
266
# A Xn.n version is an unreleased experimental baselevel.
271
267
# 1.2 uses "1.2" for uname -r.
272
268
echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
269
# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
274
273
Alpha\ *:Windows_NT*:*)
275
274
# How do we know it's Interix rather than the generic POSIX subsystem?
276
275
# Should we change UNAME_MACHINE based on the output of uname instead
395
394
# MiNT. But MiNT is downward compatible to TOS, so this should
397
396
atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
398
echo m68k-atari-mint${UNAME_RELEASE}
397
echo m68k-atari-mint${UNAME_RELEASE}
400
399
atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
401
400
echo m68k-atari-mint${UNAME_RELEASE}
403
402
*falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
404
echo m68k-atari-mint${UNAME_RELEASE}
403
echo m68k-atari-mint${UNAME_RELEASE}
406
405
milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
407
echo m68k-milan-mint${UNAME_RELEASE}
406
echo m68k-milan-mint${UNAME_RELEASE}
409
408
hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
410
echo m68k-hades-mint${UNAME_RELEASE}
409
echo m68k-hades-mint${UNAME_RELEASE}
412
411
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
413
echo m68k-unknown-mint${UNAME_RELEASE}
412
echo m68k-unknown-mint${UNAME_RELEASE}
415
414
m68k:machten:*:*)
416
415
echo m68k-apple-machten${UNAME_RELEASE}
481
480
echo m88k-motorola-sysv3
484
# DG/UX returns AViiON for all architectures
485
UNAME_PROCESSOR=`/usr/bin/uname -p`
483
# DG/UX returns AViiON for all architectures
484
UNAME_PROCESSOR=`/usr/bin/uname -p`
486
485
if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
488
487
if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
595
594
9000/[678][0-9][0-9])
596
595
if [ -x /usr/bin/getconf ]; then
597
596
sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
598
sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
599
case "${sc_cpu_version}" in
600
523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
601
528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
602
532) # CPU_PA_RISC2_0
603
case "${sc_kernel_bits}" in
604
32) HP_ARCH="hppa2.0n" ;;
605
64) HP_ARCH="hppa2.0w" ;;
597
sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
598
case "${sc_cpu_version}" in
599
523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
600
528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
601
532) # CPU_PA_RISC2_0
602
case "${sc_kernel_bits}" in
603
32) HP_ARCH="hppa2.0n" ;;
604
64) HP_ARCH="hppa2.0w" ;;
606
605
'') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
610
609
if [ "${HP_ARCH}" = "" ]; then
611
610
eval $set_cc_for_build
612
sed 's/^ //' << EOF >$dummy.c
620
#if defined(_SC_KERNEL_BITS)
621
long bits = sysconf(_SC_KERNEL_BITS);
623
long cpu = sysconf (_SC_CPU_VERSION);
627
case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
628
case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
630
#if defined(_SC_KERNEL_BITS)
633
case 64: puts ("hppa2.0w"); break;
634
case 32: puts ("hppa2.0n"); break;
635
default: puts ("hppa2.0"); break;
637
#else /* !defined(_SC_KERNEL_BITS) */
638
puts ("hppa2.0"); break;
640
default: puts ("hppa1.0"); break;
611
sed 's/^ //' << EOF >$dummy.c
619
#if defined(_SC_KERNEL_BITS)
620
long bits = sysconf(_SC_KERNEL_BITS);
622
long cpu = sysconf (_SC_CPU_VERSION);
626
case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
627
case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
629
#if defined(_SC_KERNEL_BITS)
632
case 64: puts ("hppa2.0w"); break;
633
case 32: puts ("hppa2.0n"); break;
634
default: puts ("hppa2.0"); break;
636
#else /* !defined(_SC_KERNEL_BITS) */
637
puts ("hppa2.0"); break;
639
default: puts ("hppa1.0"); break;
645
644
(CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
646
645
test -z "$HP_ARCH" && HP_ARCH=hppa
732
731
C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
733
732
echo c1-convex-bsd
735
734
C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
736
735
if getsysinfo -f scalar_acc
737
736
then echo c32-convex-bsd
738
737
else echo c2-convex-bsd
741
740
C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
742
741
echo c34-convex-bsd
744
743
C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
745
744
echo c38-convex-bsd
747
746
C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
748
747
echo c4-convex-bsd
751
750
echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
771
770
F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
772
771
FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
773
FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
774
FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
775
echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
772
FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
773
FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
774
echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
777
776
5000:UNIX_System_V:4.*:*)
778
FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
779
FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
780
echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
777
FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
778
FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
779
echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
782
781
i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
783
782
echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
789
788
echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
792
case ${UNAME_MACHINE} in
794
echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
791
UNAME_PROCESSOR=`/usr/bin/uname -p`
792
case ${UNAME_PROCESSOR} in
796
794
echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
798
echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
796
echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
802
800
echo ${UNAME_MACHINE}-pc-cygwin
803
echo ${UNAME_MACHINE}-pc-mingw64
805
806
echo ${UNAME_MACHINE}-pc-mingw32
809
echo ${UNAME_MACHINE}-pc-msys
808
# uname -m includes "-pc" on this system.
809
echo ${UNAME_MACHINE}-mingw32
812
# uname -m includes "-pc" on this system.
813
echo ${UNAME_MACHINE}-mingw32
812
816
echo ${UNAME_MACHINE}-pc-pw32
815
case ${UNAME_MACHINE} in
819
case ${UNAME_MACHINE} in
817
821
echo i586-pc-interix${UNAME_RELEASE}
867
878
EV6) UNAME_MACHINE=alphaev6 ;;
868
879
EV67) UNAME_MACHINE=alphaev67 ;;
869
880
EV68*) UNAME_MACHINE=alphaev68 ;;
871
882
objdump --private-headers /bin/sh | grep -q ld.so.1
872
883
if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
873
884
echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
886
arc:Linux:*:* | arceb:Linux:*:*)
887
echo ${UNAME_MACHINE}-unknown-linux-gnu
876
890
eval $set_cc_for_build
877
891
if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
880
894
echo ${UNAME_MACHINE}-unknown-linux-gnu
882
echo ${UNAME_MACHINE}-unknown-linux-gnueabi
896
if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
897
| grep -q __ARM_PCS_VFP
899
echo ${UNAME_MACHINE}-unknown-linux-gnueabi
901
echo ${UNAME_MACHINE}-unknown-linux-gnueabihf
885
905
avr32*:Linux:*:*)
886
906
echo ${UNAME_MACHINE}-unknown-linux-gnu
889
echo cris-axis-linux-gnu
909
echo ${UNAME_MACHINE}-axis-linux-gnu
891
911
crisv32:Linux:*:*)
892
echo crisv32-axis-linux-gnu
912
echo ${UNAME_MACHINE}-axis-linux-gnu
895
echo frv-unknown-linux-gnu
915
echo ${UNAME_MACHINE}-unknown-linux-gnu
918
echo ${UNAME_MACHINE}-unknown-linux-gnu
933
961
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
934
962
test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
965
echo ${UNAME_MACHINE}-unknown-linux-gnu
937
echo or32-unknown-linux-gnu
968
echo ${UNAME_MACHINE}-unknown-linux-gnu
940
971
echo sparc-unknown-linux-gnu
969
1000
echo ${UNAME_MACHINE}-unknown-linux-gnu
971
1002
tile*:Linux:*:*)
972
echo ${UNAME_MACHINE}-tilera-linux-gnu
1003
echo ${UNAME_MACHINE}-unknown-linux-gnu
975
1006
echo ${UNAME_MACHINE}-dec-linux-gnu
977
1008
x86_64:Linux:*:*)
978
echo x86_64-unknown-linux-gnu
1010
test -r /lib/libc.so && od -An -S13 /lib/libc.so | grep -q __uClibc_main && LIBC=uclibc
1011
echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
980
1013
xtensa*:Linux:*:*)
981
echo ${UNAME_MACHINE}-unknown-linux-gnu
1014
echo ${UNAME_MACHINE}-unknown-linux-gnu
983
1016
i*86:DYNIX/ptx:4*:*)
984
1017
# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
987
1020
echo i386-sequent-sysv4
989
1022
i*86:UNIX_SV:4.2MP:2.*)
990
# Unixware is an offshoot of SVR4, but it has its own version
991
# number series starting with 2...
992
# I am not positive that other SVR4 systems won't match this,
1023
# Unixware is an offshoot of SVR4, but it has its own version
1024
# number series starting with 2...
1025
# I am not positive that other SVR4 systems won't match this,
993
1026
# I just have to hope. -- rms.
994
# Use sysv4.2uw... so that sysv4* matches it.
1027
# Use sysv4.2uw... so that sysv4* matches it.
995
1028
echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
1025
1058
i*86:*:5:[678]*)
1026
# UnixWare 7.x, OpenUNIX and OpenServer 6.
1059
# UnixWare 7.x, OpenUNIX and OpenServer 6.
1027
1060
case `/bin/uname -X | grep "^Machine"` in
1028
1061
*486*) UNAME_MACHINE=i486 ;;
1029
1062
*Pentium) UNAME_MACHINE=i586 ;;
1053
1086
# Left here for compatibility:
1054
# uname -m prints for DJGPP always 'pc', but it prints nothing about
1055
# the processor, so we play safe by assuming i586.
1087
# uname -m prints for DJGPP always 'pc', but it prints nothing about
1088
# the processor, so we play safe by assuming i586.
1056
1089
# Note: whatever this is, it MUST be the same as what config.sub
1057
1090
# prints for the "djgpp" host, or else GDB configury will decide that
1058
1091
# this is a cross-build.
1059
1092
echo i586-pc-msdosdjgpp
1061
1094
Intel:Mach:3*:*)
1062
1095
echo i386-pc-mach3
1092
1125
/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1093
1126
&& { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1094
1127
3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1095
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1096
&& { echo i486-ncr-sysv4; exit; } ;;
1128
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1129
&& { echo i486-ncr-sysv4; exit; } ;;
1097
1130
NCR*:*:4.2:* | MPRAS*:*:4.2:*)
1099
1132
test -r /etc/.relid \
1136
1169
echo ns32k-sni-sysv
1139
PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1140
# says <Richard.M.Bartel@ccMail.Census.GOV>
1141
echo i586-unisys-sysv4
1172
PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1173
# says <Richard.M.Bartel@ccMail.Census.GOV>
1174
echo i586-unisys-sysv4
1143
1176
*:UNIX_System_V:4*:FTX*)
1144
1177
# From Gerald Hewes <hewes@openmarket.com>.
1145
1178
# How about differentiating between stratus architectures? -djm
1166
1199
R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1167
1200
if [ -d /usr/nec ]; then
1168
echo mips-nec-sysv${UNAME_RELEASE}
1201
echo mips-nec-sysv${UNAME_RELEASE}
1170
echo mips-unknown-sysv${UNAME_RELEASE}
1203
echo mips-unknown-sysv${UNAME_RELEASE}
1173
1206
BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
1174
1207
echo powerpc-be-beos
1235
1271
echo i386-pc-qnx
1237
NSE-?:NONSTOP_KERNEL:*:*)
1273
NEO-?:NONSTOP_KERNEL:*:*)
1274
echo neo-tandem-nsk${UNAME_RELEASE}
1276
NSE-*:NONSTOP_KERNEL:*:*)
1238
1277
echo nse-tandem-nsk${UNAME_RELEASE}
1240
1279
NSR-?:NONSTOP_KERNEL:*:*)
1279
1318
echo pdp10-unknown-its
1282
echo mips-sei-seiux${UNAME_RELEASE}
1321
echo mips-sei-seiux${UNAME_RELEASE}
1284
1323
*:DragonFly:*:*)
1285
1324
echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
1288
UNAME_MACHINE=`(uname -p) 2>/dev/null`
1327
UNAME_MACHINE=`(uname -p) 2>/dev/null`
1289
1328
case "${UNAME_MACHINE}" in
1290
1329
A*) echo alpha-dec-vms ; exit ;;
1291
1330
I*) echo ia64-dec-vms ; exit ;;