17706df26Smrg#! /bin/sh 27706df26Smrg# Attempt to guess a canonical system name. 37706df26Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4b92e825aSmrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 5b92e825aSmrg# 2011, 2012 Free Software Foundation, Inc. 67706df26Smrg 7b92e825aSmrgtimestamp='2012-01-01' 87706df26Smrg 97706df26Smrg# This file is free software; you can redistribute it and/or modify it 107706df26Smrg# under the terms of the GNU General Public License as published by 117706df26Smrg# the Free Software Foundation; either version 2 of the License, or 127706df26Smrg# (at your option) any later version. 137706df26Smrg# 147706df26Smrg# This program is distributed in the hope that it will be useful, but 157706df26Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of 167706df26Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 177706df26Smrg# General Public License for more details. 187706df26Smrg# 197706df26Smrg# You should have received a copy of the GNU General Public License 207706df26Smrg# along with this program; if not, write to the Free Software 21047944f3Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 22047944f3Smrg# 02110-1301, USA. 237706df26Smrg# 247706df26Smrg# As a special exception to the GNU General Public License, if you 257706df26Smrg# distribute this file as part of a program that contains a 267706df26Smrg# configuration script generated by Autoconf, you may include it under 277706df26Smrg# the same distribution terms that you use for the rest of that program. 287706df26Smrg 29047944f3Smrg 30b92e825aSmrg# Originally written by Per Bothner. Please send patches (context 31b92e825aSmrg# diff format) to <config-patches@gnu.org> and include a ChangeLog 32b92e825aSmrg# entry. 337706df26Smrg# 347706df26Smrg# This script attempts to guess a canonical system name similar to 357706df26Smrg# config.sub. If it succeeds, it prints the system name on stdout, and 367706df26Smrg# exits with 0. Otherwise, it exits with 1. 377706df26Smrg# 38b92e825aSmrg# You can get the latest version of this script from: 39b92e825aSmrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 407706df26Smrg 417706df26Smrgme=`echo "$0" | sed -e 's,.*/,,'` 427706df26Smrg 437706df26Smrgusage="\ 447706df26SmrgUsage: $0 [OPTION] 457706df26Smrg 467706df26SmrgOutput the configuration name of the system \`$me' is run on. 477706df26Smrg 487706df26SmrgOperation modes: 497706df26Smrg -h, --help print this help, then exit 507706df26Smrg -t, --time-stamp print date of last modification, then exit 517706df26Smrg -v, --version print version number, then exit 527706df26Smrg 537706df26SmrgReport bugs and patches to <config-patches@gnu.org>." 547706df26Smrg 557706df26Smrgversion="\ 567706df26SmrgGNU config.guess ($timestamp) 577706df26Smrg 587706df26SmrgOriginally written by Per Bothner. 59b92e825aSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 60b92e825aSmrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 61b92e825aSmrgFree Software Foundation, Inc. 627706df26Smrg 637706df26SmrgThis is free software; see the source for copying conditions. There is NO 647706df26Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 657706df26Smrg 667706df26Smrghelp=" 677706df26SmrgTry \`$me --help' for more information." 687706df26Smrg 697706df26Smrg# Parse command line 707706df26Smrgwhile test $# -gt 0 ; do 717706df26Smrg case $1 in 727706df26Smrg --time-stamp | --time* | -t ) 73047944f3Smrg echo "$timestamp" ; exit ;; 747706df26Smrg --version | -v ) 75047944f3Smrg echo "$version" ; exit ;; 767706df26Smrg --help | --h* | -h ) 77047944f3Smrg echo "$usage"; exit ;; 787706df26Smrg -- ) # Stop option processing 797706df26Smrg shift; break ;; 807706df26Smrg - ) # Use stdin as input. 817706df26Smrg break ;; 827706df26Smrg -* ) 837706df26Smrg echo "$me: invalid option $1$help" >&2 847706df26Smrg exit 1 ;; 857706df26Smrg * ) 867706df26Smrg break ;; 877706df26Smrg esac 887706df26Smrgdone 897706df26Smrg 907706df26Smrgif test $# != 0; then 917706df26Smrg echo "$me: too many arguments$help" >&2 927706df26Smrg exit 1 937706df26Smrgfi 947706df26Smrg 957706df26Smrgtrap 'exit 1' 1 2 15 967706df26Smrg 977706df26Smrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 987706df26Smrg# compiler to aid in system detection is discouraged as it requires 997706df26Smrg# temporary files to be created and, as you can see below, it is a 1007706df26Smrg# headache to deal with in a portable fashion. 1017706df26Smrg 1027706df26Smrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 1037706df26Smrg# use `HOST_CC' if defined, but it is deprecated. 1047706df26Smrg 1057706df26Smrg# Portable tmp directory creation inspired by the Autoconf team. 1067706df26Smrg 1077706df26Smrgset_cc_for_build=' 1087706df26Smrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; 1097706df26Smrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 1107706df26Smrg: ${TMPDIR=/tmp} ; 111047944f3Smrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 1127706df26Smrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 1137706df26Smrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || 1147706df26Smrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; 1157706df26Smrgdummy=$tmp/dummy ; 1167706df26Smrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; 1177706df26Smrgcase $CC_FOR_BUILD,$HOST_CC,$CC in 1187706df26Smrg ,,) echo "int x;" > $dummy.c ; 1197706df26Smrg for c in cc gcc c89 c99 ; do 1207706df26Smrg if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then 1217706df26Smrg CC_FOR_BUILD="$c"; break ; 1227706df26Smrg fi ; 1237706df26Smrg done ; 1247706df26Smrg if test x"$CC_FOR_BUILD" = x ; then 1257706df26Smrg CC_FOR_BUILD=no_compiler_found ; 1267706df26Smrg fi 1277706df26Smrg ;; 1287706df26Smrg ,,*) CC_FOR_BUILD=$CC ;; 1297706df26Smrg ,*,*) CC_FOR_BUILD=$HOST_CC ;; 130047944f3Smrgesac ; set_cc_for_build= ;' 1317706df26Smrg 1327706df26Smrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 1337706df26Smrg# (ghazi@noc.rutgers.edu 1994-08-24) 1347706df26Smrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then 1357706df26Smrg PATH=$PATH:/.attbin ; export PATH 1367706df26Smrgfi 1377706df26Smrg 1387706df26SmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 1397706df26SmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 1407706df26SmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 1417706df26SmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 1427706df26Smrg 1437706df26Smrg# Note: order is significant - the case branches are not exclusive. 1447706df26Smrg 1457706df26Smrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 1467706df26Smrg *:NetBSD:*:*) 1477706df26Smrg # NetBSD (nbsd) targets should (where applicable) match one or 148b92e825aSmrg # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, 1497706df26Smrg # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 1507706df26Smrg # switched to ELF, *-*-netbsd* would select the old 1517706df26Smrg # object file format. This provides both forward 1527706df26Smrg # compatibility and a consistent mechanism for selecting the 1537706df26Smrg # object file format. 1547706df26Smrg # 1557706df26Smrg # Note: NetBSD doesn't particularly care about the vendor 1567706df26Smrg # portion of the name. We always set it to "unknown". 1577706df26Smrg sysctl="sysctl -n hw.machine_arch" 1587706df26Smrg UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ 1597706df26Smrg /usr/sbin/$sysctl 2>/dev/null || echo unknown)` 1607706df26Smrg case "${UNAME_MACHINE_ARCH}" in 1617706df26Smrg armeb) machine=armeb-unknown ;; 1627706df26Smrg arm*) machine=arm-unknown ;; 1637706df26Smrg sh3el) machine=shl-unknown ;; 1647706df26Smrg sh3eb) machine=sh-unknown ;; 165047944f3Smrg sh5el) machine=sh5le-unknown ;; 1667706df26Smrg *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 1677706df26Smrg esac 1687706df26Smrg # The Operating System including object format, if it has switched 1697706df26Smrg # to ELF recently, or will in the future. 1707706df26Smrg case "${UNAME_MACHINE_ARCH}" in 1717706df26Smrg arm*|i386|m68k|ns32k|sh3*|sparc|vax) 1727706df26Smrg eval $set_cc_for_build 1737706df26Smrg if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 174b92e825aSmrg | grep -q __ELF__ 1757706df26Smrg then 1767706df26Smrg # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 1777706df26Smrg # Return netbsd for either. FIX? 1787706df26Smrg os=netbsd 1797706df26Smrg else 1807706df26Smrg os=netbsdelf 1817706df26Smrg fi 1827706df26Smrg ;; 1837706df26Smrg *) 184b92e825aSmrg os=netbsd 1857706df26Smrg ;; 1867706df26Smrg esac 1877706df26Smrg # The OS release 1887706df26Smrg # Debian GNU/NetBSD machines have a different userland, and 1897706df26Smrg # thus, need a distinct triplet. However, they do not need 1907706df26Smrg # kernel version information, so it can be replaced with a 1917706df26Smrg # suitable tag, in the style of linux-gnu. 1927706df26Smrg case "${UNAME_VERSION}" in 1937706df26Smrg Debian*) 1947706df26Smrg release='-gnu' 1957706df26Smrg ;; 1967706df26Smrg *) 1977706df26Smrg release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` 1987706df26Smrg ;; 1997706df26Smrg esac 2007706df26Smrg # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 2017706df26Smrg # contains redundant information, the shorter form: 2027706df26Smrg # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 2037706df26Smrg echo "${machine}-${os}${release}" 204047944f3Smrg exit ;; 2057706df26Smrg *:OpenBSD:*:*) 206047944f3Smrg UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 207047944f3Smrg echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 208047944f3Smrg exit ;; 209047944f3Smrg *:ekkoBSD:*:*) 210047944f3Smrg echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 211047944f3Smrg exit ;; 212047944f3Smrg *:SolidBSD:*:*) 213047944f3Smrg echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} 214047944f3Smrg exit ;; 215047944f3Smrg macppc:MirBSD:*:*) 216047944f3Smrg echo powerpc-unknown-mirbsd${UNAME_RELEASE} 217047944f3Smrg exit ;; 218047944f3Smrg *:MirBSD:*:*) 219047944f3Smrg echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 220047944f3Smrg exit ;; 2217706df26Smrg alpha:OSF1:*:*) 222047944f3Smrg case $UNAME_RELEASE in 223047944f3Smrg *4.0) 2247706df26Smrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 225047944f3Smrg ;; 226047944f3Smrg *5.*) 227b92e825aSmrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 228047944f3Smrg ;; 229047944f3Smrg esac 2307706df26Smrg # According to Compaq, /usr/sbin/psrinfo has been available on 2317706df26Smrg # OSF/1 and Tru64 systems produced since 1995. I hope that 2327706df26Smrg # covers most systems running today. This code pipes the CPU 2337706df26Smrg # types through head -n 1, so we only detect the type of CPU 0. 2347706df26Smrg ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 2357706df26Smrg case "$ALPHA_CPU_TYPE" in 2367706df26Smrg "EV4 (21064)") 2377706df26Smrg UNAME_MACHINE="alpha" ;; 2387706df26Smrg "EV4.5 (21064)") 2397706df26Smrg UNAME_MACHINE="alpha" ;; 2407706df26Smrg "LCA4 (21066/21068)") 2417706df26Smrg UNAME_MACHINE="alpha" ;; 2427706df26Smrg "EV5 (21164)") 2437706df26Smrg UNAME_MACHINE="alphaev5" ;; 2447706df26Smrg "EV5.6 (21164A)") 2457706df26Smrg UNAME_MACHINE="alphaev56" ;; 2467706df26Smrg "EV5.6 (21164PC)") 2477706df26Smrg UNAME_MACHINE="alphapca56" ;; 2487706df26Smrg "EV5.7 (21164PC)") 2497706df26Smrg UNAME_MACHINE="alphapca57" ;; 2507706df26Smrg "EV6 (21264)") 2517706df26Smrg UNAME_MACHINE="alphaev6" ;; 2527706df26Smrg "EV6.7 (21264A)") 2537706df26Smrg UNAME_MACHINE="alphaev67" ;; 2547706df26Smrg "EV6.8CB (21264C)") 2557706df26Smrg UNAME_MACHINE="alphaev68" ;; 2567706df26Smrg "EV6.8AL (21264B)") 2577706df26Smrg UNAME_MACHINE="alphaev68" ;; 2587706df26Smrg "EV6.8CX (21264D)") 2597706df26Smrg UNAME_MACHINE="alphaev68" ;; 2607706df26Smrg "EV6.9A (21264/EV69A)") 2617706df26Smrg UNAME_MACHINE="alphaev69" ;; 2627706df26Smrg "EV7 (21364)") 2637706df26Smrg UNAME_MACHINE="alphaev7" ;; 2647706df26Smrg "EV7.9 (21364A)") 2657706df26Smrg UNAME_MACHINE="alphaev79" ;; 2667706df26Smrg esac 267047944f3Smrg # A Pn.n version is a patched version. 2687706df26Smrg # A Vn.n version is a released version. 2697706df26Smrg # A Tn.n version is a released field test version. 2707706df26Smrg # A Xn.n version is an unreleased experimental baselevel. 2717706df26Smrg # 1.2 uses "1.2" for uname -r. 272047944f3Smrg echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 273b92e825aSmrg # Reset EXIT trap before exiting to avoid spurious non-zero exit code. 274b92e825aSmrg exitcode=$? 275b92e825aSmrg trap '' 0 276b92e825aSmrg exit $exitcode ;; 2777706df26Smrg Alpha\ *:Windows_NT*:*) 2787706df26Smrg # How do we know it's Interix rather than the generic POSIX subsystem? 2797706df26Smrg # Should we change UNAME_MACHINE based on the output of uname instead 2807706df26Smrg # of the specific Alpha model? 2817706df26Smrg echo alpha-pc-interix 282047944f3Smrg exit ;; 2837706df26Smrg 21064:Windows_NT:50:3) 2847706df26Smrg echo alpha-dec-winnt3.5 285047944f3Smrg exit ;; 2867706df26Smrg Amiga*:UNIX_System_V:4.0:*) 2877706df26Smrg echo m68k-unknown-sysv4 288047944f3Smrg exit ;; 2897706df26Smrg *:[Aa]miga[Oo][Ss]:*:*) 2907706df26Smrg echo ${UNAME_MACHINE}-unknown-amigaos 291047944f3Smrg exit ;; 2927706df26Smrg *:[Mm]orph[Oo][Ss]:*:*) 2937706df26Smrg echo ${UNAME_MACHINE}-unknown-morphos 294047944f3Smrg exit ;; 2957706df26Smrg *:OS/390:*:*) 2967706df26Smrg echo i370-ibm-openedition 297047944f3Smrg exit ;; 298047944f3Smrg *:z/VM:*:*) 299047944f3Smrg echo s390-ibm-zvmoe 300047944f3Smrg exit ;; 301047944f3Smrg *:OS400:*:*) 302b92e825aSmrg echo powerpc-ibm-os400 303047944f3Smrg exit ;; 3047706df26Smrg arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 3057706df26Smrg echo arm-acorn-riscix${UNAME_RELEASE} 306047944f3Smrg exit ;; 307047944f3Smrg arm:riscos:*:*|arm:RISCOS:*:*) 308047944f3Smrg echo arm-unknown-riscos 309047944f3Smrg exit ;; 3107706df26Smrg SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 3117706df26Smrg echo hppa1.1-hitachi-hiuxmpp 312047944f3Smrg exit ;; 3137706df26Smrg Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 3147706df26Smrg # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 3157706df26Smrg if test "`(/bin/universe) 2>/dev/null`" = att ; then 3167706df26Smrg echo pyramid-pyramid-sysv3 3177706df26Smrg else 3187706df26Smrg echo pyramid-pyramid-bsd 3197706df26Smrg fi 320047944f3Smrg exit ;; 3217706df26Smrg NILE*:*:*:dcosx) 3227706df26Smrg echo pyramid-pyramid-svr4 323047944f3Smrg exit ;; 3247706df26Smrg DRS?6000:unix:4.0:6*) 3257706df26Smrg echo sparc-icl-nx6 326047944f3Smrg exit ;; 327047944f3Smrg DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 3287706df26Smrg case `/usr/bin/uname -p` in 329047944f3Smrg sparc) echo sparc-icl-nx7; exit ;; 3307706df26Smrg esac ;; 331b92e825aSmrg s390x:SunOS:*:*) 332b92e825aSmrg echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 333b92e825aSmrg exit ;; 3347706df26Smrg sun4H:SunOS:5.*:*) 3357706df26Smrg echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 336047944f3Smrg exit ;; 3377706df26Smrg sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 3387706df26Smrg echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 339047944f3Smrg exit ;; 340b92e825aSmrg i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) 341b92e825aSmrg echo i386-pc-auroraux${UNAME_RELEASE} 342b92e825aSmrg exit ;; 343047944f3Smrg i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) 344b92e825aSmrg eval $set_cc_for_build 345b92e825aSmrg SUN_ARCH="i386" 346b92e825aSmrg # If there is a compiler, see if it is configured for 64-bit objects. 347b92e825aSmrg # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. 348b92e825aSmrg # This test works for both compilers. 349b92e825aSmrg if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 350b92e825aSmrg if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ 351b92e825aSmrg (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 352b92e825aSmrg grep IS_64BIT_ARCH >/dev/null 353b92e825aSmrg then 354b92e825aSmrg SUN_ARCH="x86_64" 355b92e825aSmrg fi 356b92e825aSmrg fi 357b92e825aSmrg echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 358047944f3Smrg exit ;; 3597706df26Smrg sun4*:SunOS:6*:*) 3607706df26Smrg # According to config.sub, this is the proper way to canonicalize 3617706df26Smrg # SunOS6. Hard to guess exactly what SunOS6 will be like, but 3627706df26Smrg # it's likely to be more like Solaris than SunOS4. 3637706df26Smrg echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 364047944f3Smrg exit ;; 3657706df26Smrg sun4*:SunOS:*:*) 3667706df26Smrg case "`/usr/bin/arch -k`" in 3677706df26Smrg Series*|S4*) 3687706df26Smrg UNAME_RELEASE=`uname -v` 3697706df26Smrg ;; 3707706df26Smrg esac 3717706df26Smrg # Japanese Language versions have a version number like `4.1.3-JL'. 3727706df26Smrg echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 373047944f3Smrg exit ;; 3747706df26Smrg sun3*:SunOS:*:*) 3757706df26Smrg echo m68k-sun-sunos${UNAME_RELEASE} 376047944f3Smrg exit ;; 3777706df26Smrg sun*:*:4.2BSD:*) 3787706df26Smrg UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 3797706df26Smrg test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 3807706df26Smrg case "`/bin/arch`" in 3817706df26Smrg sun3) 3827706df26Smrg echo m68k-sun-sunos${UNAME_RELEASE} 3837706df26Smrg ;; 3847706df26Smrg sun4) 3857706df26Smrg echo sparc-sun-sunos${UNAME_RELEASE} 3867706df26Smrg ;; 3877706df26Smrg esac 388047944f3Smrg exit ;; 3897706df26Smrg aushp:SunOS:*:*) 3907706df26Smrg echo sparc-auspex-sunos${UNAME_RELEASE} 391047944f3Smrg exit ;; 3927706df26Smrg # The situation for MiNT is a little confusing. The machine name 3937706df26Smrg # can be virtually everything (everything which is not 3947706df26Smrg # "atarist" or "atariste" at least should have a processor 3957706df26Smrg # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 3967706df26Smrg # to the lowercase version "mint" (or "freemint"). Finally 3977706df26Smrg # the system name "TOS" denotes a system which is actually not 3987706df26Smrg # MiNT. But MiNT is downward compatible to TOS, so this should 3997706df26Smrg # be no problem. 4007706df26Smrg atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 401b92e825aSmrg echo m68k-atari-mint${UNAME_RELEASE} 402047944f3Smrg exit ;; 4037706df26Smrg atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 4047706df26Smrg echo m68k-atari-mint${UNAME_RELEASE} 405b92e825aSmrg exit ;; 4067706df26Smrg *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 407b92e825aSmrg echo m68k-atari-mint${UNAME_RELEASE} 408047944f3Smrg exit ;; 4097706df26Smrg milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 410b92e825aSmrg echo m68k-milan-mint${UNAME_RELEASE} 411b92e825aSmrg exit ;; 4127706df26Smrg hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 413b92e825aSmrg echo m68k-hades-mint${UNAME_RELEASE} 414b92e825aSmrg exit ;; 4157706df26Smrg *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 416b92e825aSmrg echo m68k-unknown-mint${UNAME_RELEASE} 417b92e825aSmrg exit ;; 418047944f3Smrg m68k:machten:*:*) 419047944f3Smrg echo m68k-apple-machten${UNAME_RELEASE} 420047944f3Smrg exit ;; 4217706df26Smrg powerpc:machten:*:*) 4227706df26Smrg echo powerpc-apple-machten${UNAME_RELEASE} 423047944f3Smrg exit ;; 4247706df26Smrg RISC*:Mach:*:*) 4257706df26Smrg echo mips-dec-mach_bsd4.3 426047944f3Smrg exit ;; 4277706df26Smrg RISC*:ULTRIX:*:*) 4287706df26Smrg echo mips-dec-ultrix${UNAME_RELEASE} 429047944f3Smrg exit ;; 4307706df26Smrg VAX*:ULTRIX*:*:*) 4317706df26Smrg echo vax-dec-ultrix${UNAME_RELEASE} 432047944f3Smrg exit ;; 4337706df26Smrg 2020:CLIX:*:* | 2430:CLIX:*:*) 4347706df26Smrg echo clipper-intergraph-clix${UNAME_RELEASE} 435047944f3Smrg exit ;; 4367706df26Smrg mips:*:*:UMIPS | mips:*:*:RISCos) 4377706df26Smrg eval $set_cc_for_build 4387706df26Smrg sed 's/^ //' << EOF >$dummy.c 4397706df26Smrg#ifdef __cplusplus 4407706df26Smrg#include <stdio.h> /* for printf() prototype */ 4417706df26Smrg int main (int argc, char *argv[]) { 4427706df26Smrg#else 4437706df26Smrg int main (argc, argv) int argc; char *argv[]; { 4447706df26Smrg#endif 4457706df26Smrg #if defined (host_mips) && defined (MIPSEB) 4467706df26Smrg #if defined (SYSTYPE_SYSV) 4477706df26Smrg printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 4487706df26Smrg #endif 4497706df26Smrg #if defined (SYSTYPE_SVR4) 4507706df26Smrg printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 4517706df26Smrg #endif 4527706df26Smrg #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 4537706df26Smrg printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 4547706df26Smrg #endif 4557706df26Smrg #endif 4567706df26Smrg exit (-1); 4577706df26Smrg } 4587706df26SmrgEOF 459047944f3Smrg $CC_FOR_BUILD -o $dummy $dummy.c && 460047944f3Smrg dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 461047944f3Smrg SYSTEM_NAME=`$dummy $dummyarg` && 462047944f3Smrg { echo "$SYSTEM_NAME"; exit; } 4637706df26Smrg echo mips-mips-riscos${UNAME_RELEASE} 464047944f3Smrg exit ;; 4657706df26Smrg Motorola:PowerMAX_OS:*:*) 4667706df26Smrg echo powerpc-motorola-powermax 467047944f3Smrg exit ;; 4687706df26Smrg Motorola:*:4.3:PL8-*) 4697706df26Smrg echo powerpc-harris-powermax 470047944f3Smrg exit ;; 4717706df26Smrg Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 4727706df26Smrg echo powerpc-harris-powermax 473047944f3Smrg exit ;; 4747706df26Smrg Night_Hawk:Power_UNIX:*:*) 4757706df26Smrg echo powerpc-harris-powerunix 476047944f3Smrg exit ;; 4777706df26Smrg m88k:CX/UX:7*:*) 4787706df26Smrg echo m88k-harris-cxux7 479047944f3Smrg exit ;; 4807706df26Smrg m88k:*:4*:R4*) 4817706df26Smrg echo m88k-motorola-sysv4 482047944f3Smrg exit ;; 4837706df26Smrg m88k:*:3*:R3*) 4847706df26Smrg echo m88k-motorola-sysv3 485047944f3Smrg exit ;; 4867706df26Smrg AViiON:dgux:*:*) 487b92e825aSmrg # DG/UX returns AViiON for all architectures 488b92e825aSmrg UNAME_PROCESSOR=`/usr/bin/uname -p` 4897706df26Smrg if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 4907706df26Smrg then 4917706df26Smrg if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 4927706df26Smrg [ ${TARGET_BINARY_INTERFACE}x = x ] 4937706df26Smrg then 4947706df26Smrg echo m88k-dg-dgux${UNAME_RELEASE} 4957706df26Smrg else 4967706df26Smrg echo m88k-dg-dguxbcs${UNAME_RELEASE} 4977706df26Smrg fi 4987706df26Smrg else 4997706df26Smrg echo i586-dg-dgux${UNAME_RELEASE} 5007706df26Smrg fi 501b92e825aSmrg exit ;; 5027706df26Smrg M88*:DolphinOS:*:*) # DolphinOS (SVR3) 5037706df26Smrg echo m88k-dolphin-sysv3 504047944f3Smrg exit ;; 5057706df26Smrg M88*:*:R3*:*) 5067706df26Smrg # Delta 88k system running SVR3 5077706df26Smrg echo m88k-motorola-sysv3 508047944f3Smrg exit ;; 5097706df26Smrg XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 5107706df26Smrg echo m88k-tektronix-sysv3 511047944f3Smrg exit ;; 5127706df26Smrg Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 5137706df26Smrg echo m68k-tektronix-bsd 514047944f3Smrg exit ;; 5157706df26Smrg *:IRIX*:*:*) 5167706df26Smrg echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 517047944f3Smrg exit ;; 5187706df26Smrg ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 519047944f3Smrg echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 520047944f3Smrg exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 5217706df26Smrg i*86:AIX:*:*) 5227706df26Smrg echo i386-ibm-aix 523047944f3Smrg exit ;; 5247706df26Smrg ia64:AIX:*:*) 5257706df26Smrg if [ -x /usr/bin/oslevel ] ; then 5267706df26Smrg IBM_REV=`/usr/bin/oslevel` 5277706df26Smrg else 5287706df26Smrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 5297706df26Smrg fi 5307706df26Smrg echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 531047944f3Smrg exit ;; 5327706df26Smrg *:AIX:2:3) 5337706df26Smrg if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 5347706df26Smrg eval $set_cc_for_build 5357706df26Smrg sed 's/^ //' << EOF >$dummy.c 5367706df26Smrg #include <sys/systemcfg.h> 5377706df26Smrg 5387706df26Smrg main() 5397706df26Smrg { 5407706df26Smrg if (!__power_pc()) 5417706df26Smrg exit(1); 5427706df26Smrg puts("powerpc-ibm-aix3.2.5"); 5437706df26Smrg exit(0); 5447706df26Smrg } 5457706df26SmrgEOF 546047944f3Smrg if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 547047944f3Smrg then 548047944f3Smrg echo "$SYSTEM_NAME" 549047944f3Smrg else 550047944f3Smrg echo rs6000-ibm-aix3.2.5 551047944f3Smrg fi 5527706df26Smrg elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 5537706df26Smrg echo rs6000-ibm-aix3.2.4 5547706df26Smrg else 5557706df26Smrg echo rs6000-ibm-aix3.2 5567706df26Smrg fi 557047944f3Smrg exit ;; 558b92e825aSmrg *:AIX:*:[4567]) 5597706df26Smrg IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 5607706df26Smrg if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 5617706df26Smrg IBM_ARCH=rs6000 5627706df26Smrg else 5637706df26Smrg IBM_ARCH=powerpc 5647706df26Smrg fi 5657706df26Smrg if [ -x /usr/bin/oslevel ] ; then 5667706df26Smrg IBM_REV=`/usr/bin/oslevel` 5677706df26Smrg else 5687706df26Smrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 5697706df26Smrg fi 5707706df26Smrg echo ${IBM_ARCH}-ibm-aix${IBM_REV} 571047944f3Smrg exit ;; 5727706df26Smrg *:AIX:*:*) 5737706df26Smrg echo rs6000-ibm-aix 574047944f3Smrg exit ;; 5757706df26Smrg ibmrt:4.4BSD:*|romp-ibm:BSD:*) 5767706df26Smrg echo romp-ibm-bsd4.4 577047944f3Smrg exit ;; 5787706df26Smrg ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 5797706df26Smrg echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 580047944f3Smrg exit ;; # report: romp-ibm BSD 4.3 5817706df26Smrg *:BOSX:*:*) 5827706df26Smrg echo rs6000-bull-bosx 583047944f3Smrg exit ;; 5847706df26Smrg DPX/2?00:B.O.S.:*:*) 5857706df26Smrg echo m68k-bull-sysv3 586047944f3Smrg exit ;; 5877706df26Smrg 9000/[34]??:4.3bsd:1.*:*) 5887706df26Smrg echo m68k-hp-bsd 589047944f3Smrg exit ;; 5907706df26Smrg hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 5917706df26Smrg echo m68k-hp-bsd4.4 592047944f3Smrg exit ;; 5937706df26Smrg 9000/[34678]??:HP-UX:*:*) 5947706df26Smrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 5957706df26Smrg case "${UNAME_MACHINE}" in 5967706df26Smrg 9000/31? ) HP_ARCH=m68000 ;; 5977706df26Smrg 9000/[34]?? ) HP_ARCH=m68k ;; 5987706df26Smrg 9000/[678][0-9][0-9]) 5997706df26Smrg if [ -x /usr/bin/getconf ]; then 6007706df26Smrg sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 601b92e825aSmrg sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 602b92e825aSmrg case "${sc_cpu_version}" in 603b92e825aSmrg 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 604b92e825aSmrg 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 605b92e825aSmrg 532) # CPU_PA_RISC2_0 606b92e825aSmrg case "${sc_kernel_bits}" in 607b92e825aSmrg 32) HP_ARCH="hppa2.0n" ;; 608b92e825aSmrg 64) HP_ARCH="hppa2.0w" ;; 6097706df26Smrg '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 610b92e825aSmrg esac ;; 611b92e825aSmrg esac 6127706df26Smrg fi 6137706df26Smrg if [ "${HP_ARCH}" = "" ]; then 6147706df26Smrg eval $set_cc_for_build 615b92e825aSmrg sed 's/^ //' << EOF >$dummy.c 6167706df26Smrg 617b92e825aSmrg #define _HPUX_SOURCE 618b92e825aSmrg #include <stdlib.h> 619b92e825aSmrg #include <unistd.h> 6207706df26Smrg 621b92e825aSmrg int main () 622b92e825aSmrg { 623b92e825aSmrg #if defined(_SC_KERNEL_BITS) 624b92e825aSmrg long bits = sysconf(_SC_KERNEL_BITS); 625b92e825aSmrg #endif 626b92e825aSmrg long cpu = sysconf (_SC_CPU_VERSION); 6277706df26Smrg 628b92e825aSmrg switch (cpu) 629b92e825aSmrg { 630b92e825aSmrg case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 631b92e825aSmrg case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 632b92e825aSmrg case CPU_PA_RISC2_0: 633b92e825aSmrg #if defined(_SC_KERNEL_BITS) 634b92e825aSmrg switch (bits) 635b92e825aSmrg { 636b92e825aSmrg case 64: puts ("hppa2.0w"); break; 637b92e825aSmrg case 32: puts ("hppa2.0n"); break; 638b92e825aSmrg default: puts ("hppa2.0"); break; 639b92e825aSmrg } break; 640b92e825aSmrg #else /* !defined(_SC_KERNEL_BITS) */ 641b92e825aSmrg puts ("hppa2.0"); break; 642b92e825aSmrg #endif 643b92e825aSmrg default: puts ("hppa1.0"); break; 644b92e825aSmrg } 645b92e825aSmrg exit (0); 646b92e825aSmrg } 6477706df26SmrgEOF 6487706df26Smrg (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 6497706df26Smrg test -z "$HP_ARCH" && HP_ARCH=hppa 6507706df26Smrg fi ;; 6517706df26Smrg esac 6527706df26Smrg if [ ${HP_ARCH} = "hppa2.0w" ] 6537706df26Smrg then 654047944f3Smrg eval $set_cc_for_build 655047944f3Smrg 656047944f3Smrg # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 657047944f3Smrg # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 658047944f3Smrg # generating 64-bit code. GNU and HP use different nomenclature: 659047944f3Smrg # 660047944f3Smrg # $ CC_FOR_BUILD=cc ./config.guess 661047944f3Smrg # => hppa2.0w-hp-hpux11.23 662047944f3Smrg # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 663047944f3Smrg # => hppa64-hp-hpux11.23 664047944f3Smrg 665047944f3Smrg if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | 666b92e825aSmrg grep -q __LP64__ 6677706df26Smrg then 6687706df26Smrg HP_ARCH="hppa2.0w" 6697706df26Smrg else 6707706df26Smrg HP_ARCH="hppa64" 6717706df26Smrg fi 6727706df26Smrg fi 6737706df26Smrg echo ${HP_ARCH}-hp-hpux${HPUX_REV} 674047944f3Smrg exit ;; 6757706df26Smrg ia64:HP-UX:*:*) 6767706df26Smrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 6777706df26Smrg echo ia64-hp-hpux${HPUX_REV} 678047944f3Smrg exit ;; 6797706df26Smrg 3050*:HI-UX:*:*) 6807706df26Smrg eval $set_cc_for_build 6817706df26Smrg sed 's/^ //' << EOF >$dummy.c 6827706df26Smrg #include <unistd.h> 6837706df26Smrg int 6847706df26Smrg main () 6857706df26Smrg { 6867706df26Smrg long cpu = sysconf (_SC_CPU_VERSION); 6877706df26Smrg /* The order matters, because CPU_IS_HP_MC68K erroneously returns 6887706df26Smrg true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 6897706df26Smrg results, however. */ 6907706df26Smrg if (CPU_IS_PA_RISC (cpu)) 6917706df26Smrg { 6927706df26Smrg switch (cpu) 6937706df26Smrg { 6947706df26Smrg case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 6957706df26Smrg case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 6967706df26Smrg case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 6977706df26Smrg default: puts ("hppa-hitachi-hiuxwe2"); break; 6987706df26Smrg } 6997706df26Smrg } 7007706df26Smrg else if (CPU_IS_HP_MC68K (cpu)) 7017706df26Smrg puts ("m68k-hitachi-hiuxwe2"); 7027706df26Smrg else puts ("unknown-hitachi-hiuxwe2"); 7037706df26Smrg exit (0); 7047706df26Smrg } 7057706df26SmrgEOF 706047944f3Smrg $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 707047944f3Smrg { echo "$SYSTEM_NAME"; exit; } 7087706df26Smrg echo unknown-hitachi-hiuxwe2 709047944f3Smrg exit ;; 7107706df26Smrg 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 7117706df26Smrg echo hppa1.1-hp-bsd 712047944f3Smrg exit ;; 7137706df26Smrg 9000/8??:4.3bsd:*:*) 7147706df26Smrg echo hppa1.0-hp-bsd 715047944f3Smrg exit ;; 7167706df26Smrg *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 7177706df26Smrg echo hppa1.0-hp-mpeix 718047944f3Smrg exit ;; 7197706df26Smrg hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 7207706df26Smrg echo hppa1.1-hp-osf 721047944f3Smrg exit ;; 7227706df26Smrg hp8??:OSF1:*:*) 7237706df26Smrg echo hppa1.0-hp-osf 724047944f3Smrg exit ;; 7257706df26Smrg i*86:OSF1:*:*) 7267706df26Smrg if [ -x /usr/sbin/sysversion ] ; then 7277706df26Smrg echo ${UNAME_MACHINE}-unknown-osf1mk 7287706df26Smrg else 7297706df26Smrg echo ${UNAME_MACHINE}-unknown-osf1 7307706df26Smrg fi 731047944f3Smrg exit ;; 7327706df26Smrg parisc*:Lites*:*:*) 7337706df26Smrg echo hppa1.1-hp-lites 734047944f3Smrg exit ;; 7357706df26Smrg C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 7367706df26Smrg echo c1-convex-bsd 737b92e825aSmrg exit ;; 7387706df26Smrg C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 7397706df26Smrg if getsysinfo -f scalar_acc 7407706df26Smrg then echo c32-convex-bsd 7417706df26Smrg else echo c2-convex-bsd 7427706df26Smrg fi 743b92e825aSmrg exit ;; 7447706df26Smrg C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 7457706df26Smrg echo c34-convex-bsd 746b92e825aSmrg exit ;; 7477706df26Smrg C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 7487706df26Smrg echo c38-convex-bsd 749b92e825aSmrg exit ;; 7507706df26Smrg C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 7517706df26Smrg echo c4-convex-bsd 752b92e825aSmrg exit ;; 7537706df26Smrg CRAY*Y-MP:*:*:*) 7547706df26Smrg echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 755047944f3Smrg exit ;; 7567706df26Smrg CRAY*[A-Z]90:*:*:*) 7577706df26Smrg echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 7587706df26Smrg | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 7597706df26Smrg -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 7607706df26Smrg -e 's/\.[^.]*$/.X/' 761047944f3Smrg exit ;; 7627706df26Smrg CRAY*TS:*:*:*) 7637706df26Smrg echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 764047944f3Smrg exit ;; 7657706df26Smrg CRAY*T3E:*:*:*) 7667706df26Smrg echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 767047944f3Smrg exit ;; 7687706df26Smrg CRAY*SV1:*:*:*) 7697706df26Smrg echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 770047944f3Smrg exit ;; 7717706df26Smrg *:UNICOS/mp:*:*) 772047944f3Smrg echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 773047944f3Smrg exit ;; 7747706df26Smrg F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 7757706df26Smrg FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 776b92e825aSmrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 777b92e825aSmrg FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 778b92e825aSmrg echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 779b92e825aSmrg exit ;; 780047944f3Smrg 5000:UNIX_System_V:4.*:*) 781b92e825aSmrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 782b92e825aSmrg FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` 783b92e825aSmrg echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 784047944f3Smrg exit ;; 7857706df26Smrg i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 7867706df26Smrg echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 787047944f3Smrg exit ;; 7887706df26Smrg sparc*:BSD/OS:*:*) 7897706df26Smrg echo sparc-unknown-bsdi${UNAME_RELEASE} 790047944f3Smrg exit ;; 7917706df26Smrg *:BSD/OS:*:*) 7927706df26Smrg echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 793047944f3Smrg exit ;; 794047944f3Smrg *:FreeBSD:*:*) 795b92e825aSmrg UNAME_PROCESSOR=`/usr/bin/uname -p` 796b92e825aSmrg case ${UNAME_PROCESSOR} in 797047944f3Smrg amd64) 798047944f3Smrg echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 799047944f3Smrg *) 800b92e825aSmrg echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 801047944f3Smrg esac 802047944f3Smrg exit ;; 8037706df26Smrg i*:CYGWIN*:*) 8047706df26Smrg echo ${UNAME_MACHINE}-pc-cygwin 805047944f3Smrg exit ;; 806047944f3Smrg *:MINGW*:*) 8077706df26Smrg echo ${UNAME_MACHINE}-pc-mingw32 808047944f3Smrg exit ;; 809b92e825aSmrg i*:MSYS*:*) 810b92e825aSmrg echo ${UNAME_MACHINE}-pc-msys 811b92e825aSmrg exit ;; 812047944f3Smrg i*:windows32*:*) 813b92e825aSmrg # uname -m includes "-pc" on this system. 814b92e825aSmrg echo ${UNAME_MACHINE}-mingw32 815047944f3Smrg exit ;; 8167706df26Smrg i*:PW*:*) 8177706df26Smrg echo ${UNAME_MACHINE}-pc-pw32 818047944f3Smrg exit ;; 819b92e825aSmrg *:Interix*:*) 820b92e825aSmrg case ${UNAME_MACHINE} in 821047944f3Smrg x86) 822047944f3Smrg echo i586-pc-interix${UNAME_RELEASE} 823047944f3Smrg exit ;; 824b92e825aSmrg authenticamd | genuineintel | EM64T) 825047944f3Smrg echo x86_64-unknown-interix${UNAME_RELEASE} 826047944f3Smrg exit ;; 827047944f3Smrg IA64) 828047944f3Smrg echo ia64-unknown-interix${UNAME_RELEASE} 829047944f3Smrg exit ;; 830047944f3Smrg esac ;; 8317706df26Smrg [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 8327706df26Smrg echo i${UNAME_MACHINE}-pc-mks 833047944f3Smrg exit ;; 834b92e825aSmrg 8664:Windows_NT:*) 835b92e825aSmrg echo x86_64-pc-mks 836b92e825aSmrg exit ;; 8377706df26Smrg i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 8387706df26Smrg # How do we know it's Interix rather than the generic POSIX subsystem? 8397706df26Smrg # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 8407706df26Smrg # UNAME_MACHINE based on the output of uname instead of i386? 8417706df26Smrg echo i586-pc-interix 842047944f3Smrg exit ;; 8437706df26Smrg i*:UWIN*:*) 8447706df26Smrg echo ${UNAME_MACHINE}-pc-uwin 845047944f3Smrg exit ;; 846047944f3Smrg amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 847047944f3Smrg echo x86_64-unknown-cygwin 848047944f3Smrg exit ;; 8497706df26Smrg p*:CYGWIN*:*) 8507706df26Smrg echo powerpcle-unknown-cygwin 851047944f3Smrg exit ;; 8527706df26Smrg prep*:SunOS:5.*:*) 8537706df26Smrg echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 854047944f3Smrg exit ;; 8557706df26Smrg *:GNU:*:*) 856047944f3Smrg # the GNU system 8577706df26Smrg echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 858047944f3Smrg exit ;; 859047944f3Smrg *:GNU/*:*:*) 860047944f3Smrg # other systems with GNU libc and userland 861047944f3Smrg echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu 862047944f3Smrg exit ;; 8637706df26Smrg i*86:Minix:*:*) 8647706df26Smrg echo ${UNAME_MACHINE}-pc-minix 865047944f3Smrg exit ;; 866b92e825aSmrg alpha:Linux:*:*) 867b92e825aSmrg case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 868b92e825aSmrg EV5) UNAME_MACHINE=alphaev5 ;; 869b92e825aSmrg EV56) UNAME_MACHINE=alphaev56 ;; 870b92e825aSmrg PCA56) UNAME_MACHINE=alphapca56 ;; 871b92e825aSmrg PCA57) UNAME_MACHINE=alphapca56 ;; 872b92e825aSmrg EV6) UNAME_MACHINE=alphaev6 ;; 873b92e825aSmrg EV67) UNAME_MACHINE=alphaev67 ;; 874b92e825aSmrg EV68*) UNAME_MACHINE=alphaev68 ;; 875b92e825aSmrg esac 876b92e825aSmrg objdump --private-headers /bin/sh | grep -q ld.so.1 877b92e825aSmrg if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi 878b92e825aSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 879b92e825aSmrg exit ;; 8807706df26Smrg arm*:Linux:*:*) 881047944f3Smrg eval $set_cc_for_build 882047944f3Smrg if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ 883047944f3Smrg | grep -q __ARM_EABI__ 884047944f3Smrg then 885047944f3Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 886047944f3Smrg else 887b92e825aSmrg if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ 888b92e825aSmrg | grep -q __ARM_PCS_VFP 889b92e825aSmrg then 890b92e825aSmrg echo ${UNAME_MACHINE}-unknown-linux-gnueabi 891b92e825aSmrg else 892b92e825aSmrg echo ${UNAME_MACHINE}-unknown-linux-gnueabihf 893b92e825aSmrg fi 894047944f3Smrg fi 895047944f3Smrg exit ;; 896047944f3Smrg avr32*:Linux:*:*) 8977706df26Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 898047944f3Smrg exit ;; 8997706df26Smrg cris:Linux:*:*) 900b92e825aSmrg echo ${UNAME_MACHINE}-axis-linux-gnu 901047944f3Smrg exit ;; 902047944f3Smrg crisv32:Linux:*:*) 903b92e825aSmrg echo ${UNAME_MACHINE}-axis-linux-gnu 904047944f3Smrg exit ;; 905047944f3Smrg frv:Linux:*:*) 906b92e825aSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 907b92e825aSmrg exit ;; 908b92e825aSmrg hexagon:Linux:*:*) 909b92e825aSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 910b92e825aSmrg exit ;; 911b92e825aSmrg i*86:Linux:*:*) 912b92e825aSmrg LIBC=gnu 913b92e825aSmrg eval $set_cc_for_build 914b92e825aSmrg sed 's/^ //' << EOF >$dummy.c 915b92e825aSmrg #ifdef __dietlibc__ 916b92e825aSmrg LIBC=dietlibc 917b92e825aSmrg #endif 918b92e825aSmrgEOF 919b92e825aSmrg eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` 920b92e825aSmrg echo "${UNAME_MACHINE}-pc-linux-${LIBC}" 921047944f3Smrg exit ;; 9227706df26Smrg ia64:Linux:*:*) 923047944f3Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 924047944f3Smrg exit ;; 925047944f3Smrg m32r*:Linux:*:*) 926047944f3Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 927047944f3Smrg exit ;; 9287706df26Smrg m68*:Linux:*:*) 9297706df26Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 930047944f3Smrg exit ;; 931b92e825aSmrg mips:Linux:*:* | mips64:Linux:*:*) 9327706df26Smrg eval $set_cc_for_build 9337706df26Smrg sed 's/^ //' << EOF >$dummy.c 9347706df26Smrg #undef CPU 935b92e825aSmrg #undef ${UNAME_MACHINE} 936b92e825aSmrg #undef ${UNAME_MACHINE}el 9377706df26Smrg #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 938b92e825aSmrg CPU=${UNAME_MACHINE}el 9397706df26Smrg #else 9407706df26Smrg #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 941b92e825aSmrg CPU=${UNAME_MACHINE} 9427706df26Smrg #else 9437706df26Smrg CPU= 9447706df26Smrg #endif 9457706df26Smrg #endif 9467706df26SmrgEOF 947b92e825aSmrg eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` 948047944f3Smrg test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 9497706df26Smrg ;; 950047944f3Smrg or32:Linux:*:*) 951b92e825aSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 952047944f3Smrg exit ;; 953b92e825aSmrg padre:Linux:*:*) 954b92e825aSmrg echo sparc-unknown-linux-gnu 955047944f3Smrg exit ;; 956b92e825aSmrg parisc64:Linux:*:* | hppa64:Linux:*:*) 957b92e825aSmrg echo hppa64-unknown-linux-gnu 958047944f3Smrg exit ;; 9597706df26Smrg parisc:Linux:*:* | hppa:Linux:*:*) 9607706df26Smrg # Look for CPU level 9617706df26Smrg case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 9627706df26Smrg PA7*) echo hppa1.1-unknown-linux-gnu ;; 9637706df26Smrg PA8*) echo hppa2.0-unknown-linux-gnu ;; 9647706df26Smrg *) echo hppa-unknown-linux-gnu ;; 9657706df26Smrg esac 966047944f3Smrg exit ;; 967b92e825aSmrg ppc64:Linux:*:*) 968b92e825aSmrg echo powerpc64-unknown-linux-gnu 969b92e825aSmrg exit ;; 970b92e825aSmrg ppc:Linux:*:*) 971b92e825aSmrg echo powerpc-unknown-linux-gnu 972047944f3Smrg exit ;; 9737706df26Smrg s390:Linux:*:* | s390x:Linux:*:*) 974047944f3Smrg echo ${UNAME_MACHINE}-ibm-linux 975047944f3Smrg exit ;; 9767706df26Smrg sh64*:Linux:*:*) 977b92e825aSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 978047944f3Smrg exit ;; 9797706df26Smrg sh*:Linux:*:*) 9807706df26Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 981047944f3Smrg exit ;; 9827706df26Smrg sparc:Linux:*:* | sparc64:Linux:*:*) 9837706df26Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 984047944f3Smrg exit ;; 985b92e825aSmrg tile*:Linux:*:*) 986b92e825aSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 987b92e825aSmrg exit ;; 988047944f3Smrg vax:Linux:*:*) 989047944f3Smrg echo ${UNAME_MACHINE}-dec-linux-gnu 990047944f3Smrg exit ;; 9917706df26Smrg x86_64:Linux:*:*) 992b92e825aSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 993047944f3Smrg exit ;; 994047944f3Smrg xtensa*:Linux:*:*) 995b92e825aSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 996047944f3Smrg exit ;; 9977706df26Smrg i*86:DYNIX/ptx:4*:*) 9987706df26Smrg # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 9997706df26Smrg # earlier versions are messed up and put the nodename in both 10007706df26Smrg # sysname and nodename. 10017706df26Smrg echo i386-sequent-sysv4 1002047944f3Smrg exit ;; 10037706df26Smrg i*86:UNIX_SV:4.2MP:2.*) 1004b92e825aSmrg # Unixware is an offshoot of SVR4, but it has its own version 1005b92e825aSmrg # number series starting with 2... 1006b92e825aSmrg # I am not positive that other SVR4 systems won't match this, 10077706df26Smrg # I just have to hope. -- rms. 1008b92e825aSmrg # Use sysv4.2uw... so that sysv4* matches it. 10097706df26Smrg echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 1010047944f3Smrg exit ;; 10117706df26Smrg i*86:OS/2:*:*) 10127706df26Smrg # If we were able to find `uname', then EMX Unix compatibility 10137706df26Smrg # is probably installed. 10147706df26Smrg echo ${UNAME_MACHINE}-pc-os2-emx 1015047944f3Smrg exit ;; 10167706df26Smrg i*86:XTS-300:*:STOP) 10177706df26Smrg echo ${UNAME_MACHINE}-unknown-stop 1018047944f3Smrg exit ;; 10197706df26Smrg i*86:atheos:*:*) 10207706df26Smrg echo ${UNAME_MACHINE}-unknown-atheos 1021047944f3Smrg exit ;; 1022047944f3Smrg i*86:syllable:*:*) 1023047944f3Smrg echo ${UNAME_MACHINE}-pc-syllable 1024047944f3Smrg exit ;; 1025b92e825aSmrg i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) 10267706df26Smrg echo i386-unknown-lynxos${UNAME_RELEASE} 1027047944f3Smrg exit ;; 10287706df26Smrg i*86:*DOS:*:*) 10297706df26Smrg echo ${UNAME_MACHINE}-pc-msdosdjgpp 1030047944f3Smrg exit ;; 10317706df26Smrg i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 10327706df26Smrg UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 10337706df26Smrg if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 10347706df26Smrg echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 10357706df26Smrg else 10367706df26Smrg echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 10377706df26Smrg fi 1038047944f3Smrg exit ;; 1039047944f3Smrg i*86:*:5:[678]*) 1040b92e825aSmrg # UnixWare 7.x, OpenUNIX and OpenServer 6. 10417706df26Smrg case `/bin/uname -X | grep "^Machine"` in 10427706df26Smrg *486*) UNAME_MACHINE=i486 ;; 10437706df26Smrg *Pentium) UNAME_MACHINE=i586 ;; 10447706df26Smrg *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 10457706df26Smrg esac 10467706df26Smrg echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 1047047944f3Smrg exit ;; 10487706df26Smrg i*86:*:3.2:*) 10497706df26Smrg if test -f /usr/options/cb.name; then 10507706df26Smrg UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 10517706df26Smrg echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 10527706df26Smrg elif /bin/uname -X 2>/dev/null >/dev/null ; then 10537706df26Smrg UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 10547706df26Smrg (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 10557706df26Smrg (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 10567706df26Smrg && UNAME_MACHINE=i586 10577706df26Smrg (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 10587706df26Smrg && UNAME_MACHINE=i686 10597706df26Smrg (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 10607706df26Smrg && UNAME_MACHINE=i686 10617706df26Smrg echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 10627706df26Smrg else 10637706df26Smrg echo ${UNAME_MACHINE}-pc-sysv32 10647706df26Smrg fi 1065047944f3Smrg exit ;; 10667706df26Smrg pc:*:*:*) 10677706df26Smrg # Left here for compatibility: 1068b92e825aSmrg # uname -m prints for DJGPP always 'pc', but it prints nothing about 1069b92e825aSmrg # the processor, so we play safe by assuming i586. 1070b92e825aSmrg # Note: whatever this is, it MUST be the same as what config.sub 1071b92e825aSmrg # prints for the "djgpp" host, or else GDB configury will decide that 1072b92e825aSmrg # this is a cross-build. 1073b92e825aSmrg echo i586-pc-msdosdjgpp 1074b92e825aSmrg exit ;; 10757706df26Smrg Intel:Mach:3*:*) 10767706df26Smrg echo i386-pc-mach3 1077047944f3Smrg exit ;; 10787706df26Smrg paragon:*:*:*) 10797706df26Smrg echo i860-intel-osf1 1080047944f3Smrg exit ;; 10817706df26Smrg i860:*:4.*:*) # i860-SVR4 10827706df26Smrg if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 10837706df26Smrg echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 10847706df26Smrg else # Add other i860-SVR4 vendors below as they are discovered. 10857706df26Smrg echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 10867706df26Smrg fi 1087047944f3Smrg exit ;; 10887706df26Smrg mini*:CTIX:SYS*5:*) 10897706df26Smrg # "miniframe" 10907706df26Smrg echo m68010-convergent-sysv 1091047944f3Smrg exit ;; 10927706df26Smrg mc68k:UNIX:SYSTEM5:3.51m) 10937706df26Smrg echo m68k-convergent-sysv 1094047944f3Smrg exit ;; 10957706df26Smrg M680?0:D-NIX:5.3:*) 10967706df26Smrg echo m68k-diab-dnix 1097047944f3Smrg exit ;; 1098047944f3Smrg M68*:*:R3V[5678]*:*) 1099047944f3Smrg test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 1100047944f3Smrg 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) 11017706df26Smrg OS_REL='' 11027706df26Smrg test -r /etc/.relid \ 11037706df26Smrg && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 11047706df26Smrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1105047944f3Smrg && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 11067706df26Smrg /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1107047944f3Smrg && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 11087706df26Smrg 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 1109b92e825aSmrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1110b92e825aSmrg && { echo i486-ncr-sysv4; exit; } ;; 1111b92e825aSmrg NCR*:*:4.2:* | MPRAS*:*:4.2:*) 1112b92e825aSmrg OS_REL='.3' 1113b92e825aSmrg test -r /etc/.relid \ 1114b92e825aSmrg && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1115b92e825aSmrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1116b92e825aSmrg && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 1117b92e825aSmrg /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1118b92e825aSmrg && { echo i586-ncr-sysv4.3${OS_REL}; exit; } 1119b92e825aSmrg /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ 1120b92e825aSmrg && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 11217706df26Smrg m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 11227706df26Smrg echo m68k-unknown-lynxos${UNAME_RELEASE} 1123047944f3Smrg exit ;; 11247706df26Smrg mc68030:UNIX_System_V:4.*:*) 11257706df26Smrg echo m68k-atari-sysv4 1126047944f3Smrg exit ;; 11277706df26Smrg TSUNAMI:LynxOS:2.*:*) 11287706df26Smrg echo sparc-unknown-lynxos${UNAME_RELEASE} 1129047944f3Smrg exit ;; 11307706df26Smrg rs6000:LynxOS:2.*:*) 11317706df26Smrg echo rs6000-unknown-lynxos${UNAME_RELEASE} 1132047944f3Smrg exit ;; 1133b92e825aSmrg PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) 11347706df26Smrg echo powerpc-unknown-lynxos${UNAME_RELEASE} 1135047944f3Smrg exit ;; 11367706df26Smrg SM[BE]S:UNIX_SV:*:*) 11377706df26Smrg echo mips-dde-sysv${UNAME_RELEASE} 1138047944f3Smrg exit ;; 11397706df26Smrg RM*:ReliantUNIX-*:*:*) 11407706df26Smrg echo mips-sni-sysv4 1141047944f3Smrg exit ;; 11427706df26Smrg RM*:SINIX-*:*:*) 11437706df26Smrg echo mips-sni-sysv4 1144047944f3Smrg exit ;; 11457706df26Smrg *:SINIX-*:*:*) 11467706df26Smrg if uname -p 2>/dev/null >/dev/null ; then 11477706df26Smrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 11487706df26Smrg echo ${UNAME_MACHINE}-sni-sysv4 11497706df26Smrg else 11507706df26Smrg echo ns32k-sni-sysv 11517706df26Smrg fi 1152047944f3Smrg exit ;; 1153b92e825aSmrg PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 1154b92e825aSmrg # says <Richard.M.Bartel@ccMail.Census.GOV> 1155b92e825aSmrg echo i586-unisys-sysv4 1156b92e825aSmrg exit ;; 11577706df26Smrg *:UNIX_System_V:4*:FTX*) 11587706df26Smrg # From Gerald Hewes <hewes@openmarket.com>. 11597706df26Smrg # How about differentiating between stratus architectures? -djm 11607706df26Smrg echo hppa1.1-stratus-sysv4 1161047944f3Smrg exit ;; 11627706df26Smrg *:*:*:FTX*) 11637706df26Smrg # From seanf@swdc.stratus.com. 11647706df26Smrg echo i860-stratus-sysv4 1165047944f3Smrg exit ;; 1166047944f3Smrg i*86:VOS:*:*) 1167047944f3Smrg # From Paul.Green@stratus.com. 1168047944f3Smrg echo ${UNAME_MACHINE}-stratus-vos 1169047944f3Smrg exit ;; 11707706df26Smrg *:VOS:*:*) 11717706df26Smrg # From Paul.Green@stratus.com. 11727706df26Smrg echo hppa1.1-stratus-vos 1173047944f3Smrg exit ;; 11747706df26Smrg mc68*:A/UX:*:*) 11757706df26Smrg echo m68k-apple-aux${UNAME_RELEASE} 1176047944f3Smrg exit ;; 11777706df26Smrg news*:NEWS-OS:6*:*) 11787706df26Smrg echo mips-sony-newsos6 1179047944f3Smrg exit ;; 11807706df26Smrg R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 11817706df26Smrg if [ -d /usr/nec ]; then 1182b92e825aSmrg echo mips-nec-sysv${UNAME_RELEASE} 11837706df26Smrg else 1184b92e825aSmrg echo mips-unknown-sysv${UNAME_RELEASE} 11857706df26Smrg fi 1186b92e825aSmrg exit ;; 11877706df26Smrg BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 11887706df26Smrg echo powerpc-be-beos 1189047944f3Smrg exit ;; 11907706df26Smrg BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 11917706df26Smrg echo powerpc-apple-beos 1192047944f3Smrg exit ;; 11937706df26Smrg BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 11947706df26Smrg echo i586-pc-beos 1195047944f3Smrg exit ;; 1196b92e825aSmrg BePC:Haiku:*:*) # Haiku running on Intel PC compatible. 1197b92e825aSmrg echo i586-pc-haiku 1198b92e825aSmrg exit ;; 11997706df26Smrg SX-4:SUPER-UX:*:*) 12007706df26Smrg echo sx4-nec-superux${UNAME_RELEASE} 1201047944f3Smrg exit ;; 12027706df26Smrg SX-5:SUPER-UX:*:*) 12037706df26Smrg echo sx5-nec-superux${UNAME_RELEASE} 1204047944f3Smrg exit ;; 12057706df26Smrg SX-6:SUPER-UX:*:*) 12067706df26Smrg echo sx6-nec-superux${UNAME_RELEASE} 1207047944f3Smrg exit ;; 1208047944f3Smrg SX-7:SUPER-UX:*:*) 1209047944f3Smrg echo sx7-nec-superux${UNAME_RELEASE} 1210047944f3Smrg exit ;; 1211047944f3Smrg SX-8:SUPER-UX:*:*) 1212047944f3Smrg echo sx8-nec-superux${UNAME_RELEASE} 1213047944f3Smrg exit ;; 1214047944f3Smrg SX-8R:SUPER-UX:*:*) 1215047944f3Smrg echo sx8r-nec-superux${UNAME_RELEASE} 1216047944f3Smrg exit ;; 12177706df26Smrg Power*:Rhapsody:*:*) 12187706df26Smrg echo powerpc-apple-rhapsody${UNAME_RELEASE} 1219047944f3Smrg exit ;; 12207706df26Smrg *:Rhapsody:*:*) 12217706df26Smrg echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 1222047944f3Smrg exit ;; 12237706df26Smrg *:Darwin:*:*) 1224047944f3Smrg UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 1225047944f3Smrg case $UNAME_PROCESSOR in 1226b92e825aSmrg i386) 1227b92e825aSmrg eval $set_cc_for_build 1228b92e825aSmrg if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 1229b92e825aSmrg if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ 1230b92e825aSmrg (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 1231b92e825aSmrg grep IS_64BIT_ARCH >/dev/null 1232b92e825aSmrg then 1233b92e825aSmrg UNAME_PROCESSOR="x86_64" 1234b92e825aSmrg fi 1235b92e825aSmrg fi ;; 1236047944f3Smrg unknown) UNAME_PROCESSOR=powerpc ;; 12377706df26Smrg esac 12387706df26Smrg echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 1239047944f3Smrg exit ;; 12407706df26Smrg *:procnto*:*:* | *:QNX:[0123456789]*:*) 12417706df26Smrg UNAME_PROCESSOR=`uname -p` 12427706df26Smrg if test "$UNAME_PROCESSOR" = "x86"; then 12437706df26Smrg UNAME_PROCESSOR=i386 12447706df26Smrg UNAME_MACHINE=pc 12457706df26Smrg fi 12467706df26Smrg echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 1247047944f3Smrg exit ;; 12487706df26Smrg *:QNX:*:4*) 12497706df26Smrg echo i386-pc-qnx 1250047944f3Smrg exit ;; 1251b92e825aSmrg NEO-?:NONSTOP_KERNEL:*:*) 1252b92e825aSmrg echo neo-tandem-nsk${UNAME_RELEASE} 1253b92e825aSmrg exit ;; 1254047944f3Smrg NSE-?:NONSTOP_KERNEL:*:*) 1255047944f3Smrg echo nse-tandem-nsk${UNAME_RELEASE} 1256047944f3Smrg exit ;; 1257047944f3Smrg NSR-?:NONSTOP_KERNEL:*:*) 12587706df26Smrg echo nsr-tandem-nsk${UNAME_RELEASE} 1259047944f3Smrg exit ;; 12607706df26Smrg *:NonStop-UX:*:*) 12617706df26Smrg echo mips-compaq-nonstopux 1262047944f3Smrg exit ;; 12637706df26Smrg BS2000:POSIX*:*:*) 12647706df26Smrg echo bs2000-siemens-sysv 1265047944f3Smrg exit ;; 12667706df26Smrg DS/*:UNIX_System_V:*:*) 12677706df26Smrg echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 1268047944f3Smrg exit ;; 12697706df26Smrg *:Plan9:*:*) 12707706df26Smrg # "uname -m" is not consistent, so use $cputype instead. 386 12717706df26Smrg # is converted to i386 for consistency with other x86 12727706df26Smrg # operating systems. 12737706df26Smrg if test "$cputype" = "386"; then 12747706df26Smrg UNAME_MACHINE=i386 12757706df26Smrg else 12767706df26Smrg UNAME_MACHINE="$cputype" 12777706df26Smrg fi 12787706df26Smrg echo ${UNAME_MACHINE}-unknown-plan9 1279047944f3Smrg exit ;; 12807706df26Smrg *:TOPS-10:*:*) 12817706df26Smrg echo pdp10-unknown-tops10 1282047944f3Smrg exit ;; 12837706df26Smrg *:TENEX:*:*) 12847706df26Smrg echo pdp10-unknown-tenex 1285047944f3Smrg exit ;; 12867706df26Smrg KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 12877706df26Smrg echo pdp10-dec-tops20 1288047944f3Smrg exit ;; 12897706df26Smrg XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 12907706df26Smrg echo pdp10-xkl-tops20 1291047944f3Smrg exit ;; 12927706df26Smrg *:TOPS-20:*:*) 12937706df26Smrg echo pdp10-unknown-tops20 1294047944f3Smrg exit ;; 12957706df26Smrg *:ITS:*:*) 12967706df26Smrg echo pdp10-unknown-its 1297047944f3Smrg exit ;; 12987706df26Smrg SEI:*:*:SEIUX) 1299b92e825aSmrg echo mips-sei-seiux${UNAME_RELEASE} 1300047944f3Smrg exit ;; 1301047944f3Smrg *:DragonFly:*:*) 1302047944f3Smrg echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 1303047944f3Smrg exit ;; 1304047944f3Smrg *:*VMS:*:*) 1305b92e825aSmrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 1306047944f3Smrg case "${UNAME_MACHINE}" in 1307047944f3Smrg A*) echo alpha-dec-vms ; exit ;; 1308047944f3Smrg I*) echo ia64-dec-vms ; exit ;; 1309047944f3Smrg V*) echo vax-dec-vms ; exit ;; 1310047944f3Smrg esac ;; 1311047944f3Smrg *:XENIX:*:SysV) 1312047944f3Smrg echo i386-pc-xenix 1313047944f3Smrg exit ;; 1314047944f3Smrg i*86:skyos:*:*) 1315047944f3Smrg echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' 1316047944f3Smrg exit ;; 1317047944f3Smrg i*86:rdos:*:*) 1318047944f3Smrg echo ${UNAME_MACHINE}-pc-rdos 1319047944f3Smrg exit ;; 1320b92e825aSmrg i*86:AROS:*:*) 1321b92e825aSmrg echo ${UNAME_MACHINE}-pc-aros 1322b92e825aSmrg exit ;; 13237706df26Smrgesac 13247706df26Smrg 13257706df26Smrg#echo '(No uname command or uname output not recognized.)' 1>&2 13267706df26Smrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 13277706df26Smrg 13287706df26Smrgeval $set_cc_for_build 13297706df26Smrgcat >$dummy.c <<EOF 13307706df26Smrg#ifdef _SEQUENT_ 13317706df26Smrg# include <sys/types.h> 13327706df26Smrg# include <sys/utsname.h> 13337706df26Smrg#endif 13347706df26Smrgmain () 13357706df26Smrg{ 13367706df26Smrg#if defined (sony) 13377706df26Smrg#if defined (MIPSEB) 13387706df26Smrg /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, 13397706df26Smrg I don't know.... */ 13407706df26Smrg printf ("mips-sony-bsd\n"); exit (0); 13417706df26Smrg#else 13427706df26Smrg#include <sys/param.h> 13437706df26Smrg printf ("m68k-sony-newsos%s\n", 13447706df26Smrg#ifdef NEWSOS4 1345b92e825aSmrg "4" 13467706df26Smrg#else 1347b92e825aSmrg "" 13487706df26Smrg#endif 1349b92e825aSmrg ); exit (0); 13507706df26Smrg#endif 13517706df26Smrg#endif 13527706df26Smrg 13537706df26Smrg#if defined (__arm) && defined (__acorn) && defined (__unix) 1354047944f3Smrg printf ("arm-acorn-riscix\n"); exit (0); 13557706df26Smrg#endif 13567706df26Smrg 13577706df26Smrg#if defined (hp300) && !defined (hpux) 13587706df26Smrg printf ("m68k-hp-bsd\n"); exit (0); 13597706df26Smrg#endif 13607706df26Smrg 13617706df26Smrg#if defined (NeXT) 13627706df26Smrg#if !defined (__ARCHITECTURE__) 13637706df26Smrg#define __ARCHITECTURE__ "m68k" 13647706df26Smrg#endif 13657706df26Smrg int version; 13667706df26Smrg version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; 13677706df26Smrg if (version < 4) 13687706df26Smrg printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); 13697706df26Smrg else 13707706df26Smrg printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); 13717706df26Smrg exit (0); 13727706df26Smrg#endif 13737706df26Smrg 13747706df26Smrg#if defined (MULTIMAX) || defined (n16) 13757706df26Smrg#if defined (UMAXV) 13767706df26Smrg printf ("ns32k-encore-sysv\n"); exit (0); 13777706df26Smrg#else 13787706df26Smrg#if defined (CMU) 13797706df26Smrg printf ("ns32k-encore-mach\n"); exit (0); 13807706df26Smrg#else 13817706df26Smrg printf ("ns32k-encore-bsd\n"); exit (0); 13827706df26Smrg#endif 13837706df26Smrg#endif 13847706df26Smrg#endif 13857706df26Smrg 13867706df26Smrg#if defined (__386BSD__) 13877706df26Smrg printf ("i386-pc-bsd\n"); exit (0); 13887706df26Smrg#endif 13897706df26Smrg 13907706df26Smrg#if defined (sequent) 13917706df26Smrg#if defined (i386) 13927706df26Smrg printf ("i386-sequent-dynix\n"); exit (0); 13937706df26Smrg#endif 13947706df26Smrg#if defined (ns32000) 13957706df26Smrg printf ("ns32k-sequent-dynix\n"); exit (0); 13967706df26Smrg#endif 13977706df26Smrg#endif 13987706df26Smrg 13997706df26Smrg#if defined (_SEQUENT_) 14007706df26Smrg struct utsname un; 14017706df26Smrg 14027706df26Smrg uname(&un); 14037706df26Smrg 14047706df26Smrg if (strncmp(un.version, "V2", 2) == 0) { 14057706df26Smrg printf ("i386-sequent-ptx2\n"); exit (0); 14067706df26Smrg } 14077706df26Smrg if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ 14087706df26Smrg printf ("i386-sequent-ptx1\n"); exit (0); 14097706df26Smrg } 14107706df26Smrg printf ("i386-sequent-ptx\n"); exit (0); 14117706df26Smrg 14127706df26Smrg#endif 14137706df26Smrg 14147706df26Smrg#if defined (vax) 14157706df26Smrg# if !defined (ultrix) 14167706df26Smrg# include <sys/param.h> 14177706df26Smrg# if defined (BSD) 14187706df26Smrg# if BSD == 43 14197706df26Smrg printf ("vax-dec-bsd4.3\n"); exit (0); 14207706df26Smrg# else 14217706df26Smrg# if BSD == 199006 14227706df26Smrg printf ("vax-dec-bsd4.3reno\n"); exit (0); 14237706df26Smrg# else 14247706df26Smrg printf ("vax-dec-bsd\n"); exit (0); 14257706df26Smrg# endif 14267706df26Smrg# endif 14277706df26Smrg# else 14287706df26Smrg printf ("vax-dec-bsd\n"); exit (0); 14297706df26Smrg# endif 14307706df26Smrg# else 14317706df26Smrg printf ("vax-dec-ultrix\n"); exit (0); 14327706df26Smrg# endif 14337706df26Smrg#endif 14347706df26Smrg 14357706df26Smrg#if defined (alliant) && defined (i860) 14367706df26Smrg printf ("i860-alliant-bsd\n"); exit (0); 14377706df26Smrg#endif 14387706df26Smrg 14397706df26Smrg exit (1); 14407706df26Smrg} 14417706df26SmrgEOF 14427706df26Smrg 1443047944f3Smrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && 1444047944f3Smrg { echo "$SYSTEM_NAME"; exit; } 14457706df26Smrg 14467706df26Smrg# Apollos put the system type in the environment. 14477706df26Smrg 1448047944f3Smrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } 14497706df26Smrg 14507706df26Smrg# Convex versions that predate uname can use getsysinfo(1) 14517706df26Smrg 14527706df26Smrgif [ -x /usr/convex/getsysinfo ] 14537706df26Smrgthen 14547706df26Smrg case `getsysinfo -f cpu_type` in 14557706df26Smrg c1*) 14567706df26Smrg echo c1-convex-bsd 1457047944f3Smrg exit ;; 14587706df26Smrg c2*) 14597706df26Smrg if getsysinfo -f scalar_acc 14607706df26Smrg then echo c32-convex-bsd 14617706df26Smrg else echo c2-convex-bsd 14627706df26Smrg fi 1463047944f3Smrg exit ;; 14647706df26Smrg c34*) 14657706df26Smrg echo c34-convex-bsd 1466047944f3Smrg exit ;; 14677706df26Smrg c38*) 14687706df26Smrg echo c38-convex-bsd 1469047944f3Smrg exit ;; 14707706df26Smrg c4*) 14717706df26Smrg echo c4-convex-bsd 1472047944f3Smrg exit ;; 14737706df26Smrg esac 14747706df26Smrgfi 14757706df26Smrg 14767706df26Smrgcat >&2 <<EOF 14777706df26Smrg$0: unable to guess system type 14787706df26Smrg 14797706df26SmrgThis script, last modified $timestamp, has failed to recognize 14807706df26Smrgthe operating system you are using. It is advised that you 14817706df26Smrgdownload the most up to date version of the config scripts from 14827706df26Smrg 1483047944f3Smrg http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 1484047944f3Smrgand 1485047944f3Smrg http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 14867706df26Smrg 14877706df26SmrgIf the version you run ($0) is already up to date, please 14887706df26Smrgsend the following data and any information you think might be 14897706df26Smrgpertinent to <config-patches@gnu.org> in order to provide the needed 14907706df26Smrginformation to handle your system. 14917706df26Smrg 14927706df26Smrgconfig.guess timestamp = $timestamp 14937706df26Smrg 14947706df26Smrguname -m = `(uname -m) 2>/dev/null || echo unknown` 14957706df26Smrguname -r = `(uname -r) 2>/dev/null || echo unknown` 14967706df26Smrguname -s = `(uname -s) 2>/dev/null || echo unknown` 14977706df26Smrguname -v = `(uname -v) 2>/dev/null || echo unknown` 14987706df26Smrg 14997706df26Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 15007706df26Smrg/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 15017706df26Smrg 15027706df26Smrghostinfo = `(hostinfo) 2>/dev/null` 15037706df26Smrg/bin/universe = `(/bin/universe) 2>/dev/null` 15047706df26Smrg/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 15057706df26Smrg/bin/arch = `(/bin/arch) 2>/dev/null` 15067706df26Smrg/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 15077706df26Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 15087706df26Smrg 15097706df26SmrgUNAME_MACHINE = ${UNAME_MACHINE} 15107706df26SmrgUNAME_RELEASE = ${UNAME_RELEASE} 15117706df26SmrgUNAME_SYSTEM = ${UNAME_SYSTEM} 15127706df26SmrgUNAME_VERSION = ${UNAME_VERSION} 15137706df26SmrgEOF 15147706df26Smrg 15157706df26Smrgexit 1 15167706df26Smrg 15177706df26Smrg# Local variables: 15187706df26Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 15197706df26Smrg# time-stamp-start: "timestamp='" 15207706df26Smrg# time-stamp-format: "%:y-%02m-%02d" 15217706df26Smrg# time-stamp-end: "'" 15227706df26Smrg# End: 1523