config.guess revision 20d2c4d2
1d522f475Smrg#! /bin/sh 2d522f475Smrg# Attempt to guess a canonical system name. 3d522f475Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 420d2c4d2Smrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 52eaa94a1Schristos# Free Software Foundation, Inc. 6d522f475Smrg 720d2c4d2Smrgtimestamp='2009-12-30' 8d522f475Smrg 9d522f475Smrg# This file is free software; you can redistribute it and/or modify it 10d522f475Smrg# under the terms of the GNU General Public License as published by 11d522f475Smrg# the Free Software Foundation; either version 2 of the License, or 12d522f475Smrg# (at your option) any later version. 13d522f475Smrg# 14d522f475Smrg# This program is distributed in the hope that it will be useful, but 15d522f475Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of 16d522f475Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 17d522f475Smrg# General Public License for more details. 18d522f475Smrg# 19d522f475Smrg# You should have received a copy of the GNU General Public License 20d522f475Smrg# along with this program; if not, write to the Free Software 21d522f475Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 22d522f475Smrg# 02110-1301, USA. 23d522f475Smrg# 24d522f475Smrg# As a special exception to the GNU General Public License, if you 25d522f475Smrg# distribute this file as part of a program that contains a 26d522f475Smrg# configuration script generated by Autoconf, you may include it under 27d522f475Smrg# the same distribution terms that you use for the rest of that program. 28d522f475Smrg 29d522f475Smrg 3020d2c4d2Smrg# Originally written by Per Bothner. Please send patches (context 3120d2c4d2Smrg# diff format) to <config-patches@gnu.org> and include a ChangeLog 3220d2c4d2Smrg# entry. 33d522f475Smrg# 34d522f475Smrg# This script attempts to guess a canonical system name similar to 35d522f475Smrg# config.sub. If it succeeds, it prints the system name on stdout, and 36d522f475Smrg# exits with 0. Otherwise, it exits with 1. 37d522f475Smrg# 3820d2c4d2Smrg# You can get the latest version of this script from: 3920d2c4d2Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 40d522f475Smrg 41d522f475Smrgme=`echo "$0" | sed -e 's,.*/,,'` 42d522f475Smrg 43d522f475Smrgusage="\ 44d522f475SmrgUsage: $0 [OPTION] 45d522f475Smrg 46d522f475SmrgOutput the configuration name of the system \`$me' is run on. 47d522f475Smrg 48d522f475SmrgOperation modes: 49d522f475Smrg -h, --help print this help, then exit 50d522f475Smrg -t, --time-stamp print date of last modification, then exit 51d522f475Smrg -v, --version print version number, then exit 52d522f475Smrg 53d522f475SmrgReport bugs and patches to <config-patches@gnu.org>." 54d522f475Smrg 55d522f475Smrgversion="\ 56d522f475SmrgGNU config.guess ($timestamp) 57d522f475Smrg 58d522f475SmrgOriginally written by Per Bothner. 5920d2c4d2SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 6020d2c4d2Smrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free 6120d2c4d2SmrgSoftware Foundation, Inc. 62d522f475Smrg 63d522f475SmrgThis is free software; see the source for copying conditions. There is NO 64d522f475Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 65d522f475Smrg 66d522f475Smrghelp=" 67d522f475SmrgTry \`$me --help' for more information." 68d522f475Smrg 69d522f475Smrg# Parse command line 70d522f475Smrgwhile test $# -gt 0 ; do 71d522f475Smrg case $1 in 72d522f475Smrg --time-stamp | --time* | -t ) 73d522f475Smrg echo "$timestamp" ; exit ;; 74d522f475Smrg --version | -v ) 75d522f475Smrg echo "$version" ; exit ;; 76d522f475Smrg --help | --h* | -h ) 77d522f475Smrg echo "$usage"; exit ;; 78d522f475Smrg -- ) # Stop option processing 79d522f475Smrg shift; break ;; 80d522f475Smrg - ) # Use stdin as input. 81d522f475Smrg break ;; 82d522f475Smrg -* ) 83d522f475Smrg echo "$me: invalid option $1$help" >&2 84d522f475Smrg exit 1 ;; 85d522f475Smrg * ) 86d522f475Smrg break ;; 87d522f475Smrg esac 88d522f475Smrgdone 89d522f475Smrg 90d522f475Smrgif test $# != 0; then 91d522f475Smrg echo "$me: too many arguments$help" >&2 92d522f475Smrg exit 1 93d522f475Smrgfi 94d522f475Smrg 95d522f475Smrgtrap 'exit 1' 1 2 15 96d522f475Smrg 97d522f475Smrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 98d522f475Smrg# compiler to aid in system detection is discouraged as it requires 99d522f475Smrg# temporary files to be created and, as you can see below, it is a 100d522f475Smrg# headache to deal with in a portable fashion. 101d522f475Smrg 102d522f475Smrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 103d522f475Smrg# use `HOST_CC' if defined, but it is deprecated. 104d522f475Smrg 105d522f475Smrg# Portable tmp directory creation inspired by the Autoconf team. 106d522f475Smrg 107d522f475Smrgset_cc_for_build=' 108d522f475Smrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; 109d522f475Smrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 110d522f475Smrg: ${TMPDIR=/tmp} ; 111d522f475Smrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 112d522f475Smrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 113d522f475Smrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || 114d522f475Smrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; 115d522f475Smrgdummy=$tmp/dummy ; 116d522f475Smrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; 117d522f475Smrgcase $CC_FOR_BUILD,$HOST_CC,$CC in 118d522f475Smrg ,,) echo "int x;" > $dummy.c ; 119d522f475Smrg for c in cc gcc c89 c99 ; do 120d522f475Smrg if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then 121d522f475Smrg CC_FOR_BUILD="$c"; break ; 122d522f475Smrg fi ; 123d522f475Smrg done ; 124d522f475Smrg if test x"$CC_FOR_BUILD" = x ; then 125d522f475Smrg CC_FOR_BUILD=no_compiler_found ; 126d522f475Smrg fi 127d522f475Smrg ;; 128d522f475Smrg ,,*) CC_FOR_BUILD=$CC ;; 129d522f475Smrg ,*,*) CC_FOR_BUILD=$HOST_CC ;; 130d522f475Smrgesac ; set_cc_for_build= ;' 131d522f475Smrg 132d522f475Smrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 133d522f475Smrg# (ghazi@noc.rutgers.edu 1994-08-24) 134d522f475Smrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then 135d522f475Smrg PATH=$PATH:/.attbin ; export PATH 136d522f475Smrgfi 137d522f475Smrg 138d522f475SmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 139d522f475SmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 140d522f475SmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 141d522f475SmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 142d522f475Smrg 143d522f475Smrg# Note: order is significant - the case branches are not exclusive. 144d522f475Smrg 145d522f475Smrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 146d522f475Smrg *:NetBSD:*:*) 147d522f475Smrg # NetBSD (nbsd) targets should (where applicable) match one or 148d522f475Smrg # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, 149d522f475Smrg # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 150d522f475Smrg # switched to ELF, *-*-netbsd* would select the old 151d522f475Smrg # object file format. This provides both forward 152d522f475Smrg # compatibility and a consistent mechanism for selecting the 153d522f475Smrg # object file format. 154d522f475Smrg # 155d522f475Smrg # Note: NetBSD doesn't particularly care about the vendor 156d522f475Smrg # portion of the name. We always set it to "unknown". 157d522f475Smrg sysctl="sysctl -n hw.machine_arch" 158d522f475Smrg UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ 159d522f475Smrg /usr/sbin/$sysctl 2>/dev/null || echo unknown)` 160d522f475Smrg case "${UNAME_MACHINE_ARCH}" in 161d522f475Smrg armeb) machine=armeb-unknown ;; 162d522f475Smrg arm*) machine=arm-unknown ;; 163d522f475Smrg sh3el) machine=shl-unknown ;; 164d522f475Smrg sh3eb) machine=sh-unknown ;; 165d522f475Smrg sh5el) machine=sh5le-unknown ;; 166d522f475Smrg *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 167d522f475Smrg esac 168d522f475Smrg # The Operating System including object format, if it has switched 169d522f475Smrg # to ELF recently, or will in the future. 170d522f475Smrg case "${UNAME_MACHINE_ARCH}" in 171d522f475Smrg arm*|i386|m68k|ns32k|sh3*|sparc|vax) 172d522f475Smrg eval $set_cc_for_build 173d522f475Smrg if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 17420d2c4d2Smrg | grep -q __ELF__ 175d522f475Smrg then 176d522f475Smrg # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 177d522f475Smrg # Return netbsd for either. FIX? 178d522f475Smrg os=netbsd 179d522f475Smrg else 180d522f475Smrg os=netbsdelf 181d522f475Smrg fi 182d522f475Smrg ;; 183d522f475Smrg *) 184d522f475Smrg os=netbsd 185d522f475Smrg ;; 186d522f475Smrg esac 187d522f475Smrg # The OS release 188d522f475Smrg # Debian GNU/NetBSD machines have a different userland, and 189d522f475Smrg # thus, need a distinct triplet. However, they do not need 190d522f475Smrg # kernel version information, so it can be replaced with a 191d522f475Smrg # suitable tag, in the style of linux-gnu. 192d522f475Smrg case "${UNAME_VERSION}" in 193d522f475Smrg Debian*) 194d522f475Smrg release='-gnu' 195d522f475Smrg ;; 196d522f475Smrg *) 197d522f475Smrg release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` 198d522f475Smrg ;; 199d522f475Smrg esac 200d522f475Smrg # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 201d522f475Smrg # contains redundant information, the shorter form: 202d522f475Smrg # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 203d522f475Smrg echo "${machine}-${os}${release}" 204d522f475Smrg exit ;; 205d522f475Smrg *:OpenBSD:*:*) 206d522f475Smrg UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 207d522f475Smrg echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 208d522f475Smrg exit ;; 209d522f475Smrg *:ekkoBSD:*:*) 210d522f475Smrg echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 211d522f475Smrg exit ;; 212d522f475Smrg *:SolidBSD:*:*) 213d522f475Smrg echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} 214d522f475Smrg exit ;; 215d522f475Smrg macppc:MirBSD:*:*) 216d522f475Smrg echo powerpc-unknown-mirbsd${UNAME_RELEASE} 217d522f475Smrg exit ;; 218d522f475Smrg *:MirBSD:*:*) 219d522f475Smrg echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 220d522f475Smrg exit ;; 221d522f475Smrg alpha:OSF1:*:*) 222d522f475Smrg case $UNAME_RELEASE in 223d522f475Smrg *4.0) 224d522f475Smrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 225d522f475Smrg ;; 226d522f475Smrg *5.*) 227d522f475Smrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 228d522f475Smrg ;; 229d522f475Smrg esac 230d522f475Smrg # According to Compaq, /usr/sbin/psrinfo has been available on 231d522f475Smrg # OSF/1 and Tru64 systems produced since 1995. I hope that 232d522f475Smrg # covers most systems running today. This code pipes the CPU 233d522f475Smrg # types through head -n 1, so we only detect the type of CPU 0. 234d522f475Smrg ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 235d522f475Smrg case "$ALPHA_CPU_TYPE" in 236d522f475Smrg "EV4 (21064)") 237d522f475Smrg UNAME_MACHINE="alpha" ;; 238d522f475Smrg "EV4.5 (21064)") 239d522f475Smrg UNAME_MACHINE="alpha" ;; 240d522f475Smrg "LCA4 (21066/21068)") 241d522f475Smrg UNAME_MACHINE="alpha" ;; 242d522f475Smrg "EV5 (21164)") 243d522f475Smrg UNAME_MACHINE="alphaev5" ;; 244d522f475Smrg "EV5.6 (21164A)") 245d522f475Smrg UNAME_MACHINE="alphaev56" ;; 246d522f475Smrg "EV5.6 (21164PC)") 247d522f475Smrg UNAME_MACHINE="alphapca56" ;; 248d522f475Smrg "EV5.7 (21164PC)") 249d522f475Smrg UNAME_MACHINE="alphapca57" ;; 250d522f475Smrg "EV6 (21264)") 251d522f475Smrg UNAME_MACHINE="alphaev6" ;; 252d522f475Smrg "EV6.7 (21264A)") 253d522f475Smrg UNAME_MACHINE="alphaev67" ;; 254d522f475Smrg "EV6.8CB (21264C)") 255d522f475Smrg UNAME_MACHINE="alphaev68" ;; 256d522f475Smrg "EV6.8AL (21264B)") 257d522f475Smrg UNAME_MACHINE="alphaev68" ;; 258d522f475Smrg "EV6.8CX (21264D)") 259d522f475Smrg UNAME_MACHINE="alphaev68" ;; 260d522f475Smrg "EV6.9A (21264/EV69A)") 261d522f475Smrg UNAME_MACHINE="alphaev69" ;; 262d522f475Smrg "EV7 (21364)") 263d522f475Smrg UNAME_MACHINE="alphaev7" ;; 264d522f475Smrg "EV7.9 (21364A)") 265d522f475Smrg UNAME_MACHINE="alphaev79" ;; 266d522f475Smrg esac 267d522f475Smrg # A Pn.n version is a patched version. 268d522f475Smrg # A Vn.n version is a released version. 269d522f475Smrg # A Tn.n version is a released field test version. 270d522f475Smrg # A Xn.n version is an unreleased experimental baselevel. 271d522f475Smrg # 1.2 uses "1.2" for uname -r. 272d522f475Smrg echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 273d522f475Smrg exit ;; 274d522f475Smrg Alpha\ *:Windows_NT*:*) 275d522f475Smrg # How do we know it's Interix rather than the generic POSIX subsystem? 276d522f475Smrg # Should we change UNAME_MACHINE based on the output of uname instead 277d522f475Smrg # of the specific Alpha model? 278d522f475Smrg echo alpha-pc-interix 279d522f475Smrg exit ;; 280d522f475Smrg 21064:Windows_NT:50:3) 281d522f475Smrg echo alpha-dec-winnt3.5 282d522f475Smrg exit ;; 283d522f475Smrg Amiga*:UNIX_System_V:4.0:*) 284d522f475Smrg echo m68k-unknown-sysv4 285d522f475Smrg exit ;; 286d522f475Smrg *:[Aa]miga[Oo][Ss]:*:*) 287d522f475Smrg echo ${UNAME_MACHINE}-unknown-amigaos 288d522f475Smrg exit ;; 289d522f475Smrg *:[Mm]orph[Oo][Ss]:*:*) 290d522f475Smrg echo ${UNAME_MACHINE}-unknown-morphos 291d522f475Smrg exit ;; 292d522f475Smrg *:OS/390:*:*) 293d522f475Smrg echo i370-ibm-openedition 294d522f475Smrg exit ;; 295d522f475Smrg *:z/VM:*:*) 296d522f475Smrg echo s390-ibm-zvmoe 297d522f475Smrg exit ;; 298d522f475Smrg *:OS400:*:*) 299d522f475Smrg echo powerpc-ibm-os400 300d522f475Smrg exit ;; 301d522f475Smrg arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 302d522f475Smrg echo arm-acorn-riscix${UNAME_RELEASE} 303d522f475Smrg exit ;; 304d522f475Smrg arm:riscos:*:*|arm:RISCOS:*:*) 305d522f475Smrg echo arm-unknown-riscos 306d522f475Smrg exit ;; 307d522f475Smrg SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 308d522f475Smrg echo hppa1.1-hitachi-hiuxmpp 309d522f475Smrg exit ;; 310d522f475Smrg Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 311d522f475Smrg # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 312d522f475Smrg if test "`(/bin/universe) 2>/dev/null`" = att ; then 313d522f475Smrg echo pyramid-pyramid-sysv3 314d522f475Smrg else 315d522f475Smrg echo pyramid-pyramid-bsd 316d522f475Smrg fi 317d522f475Smrg exit ;; 318d522f475Smrg NILE*:*:*:dcosx) 319d522f475Smrg echo pyramid-pyramid-svr4 320d522f475Smrg exit ;; 321d522f475Smrg DRS?6000:unix:4.0:6*) 322d522f475Smrg echo sparc-icl-nx6 323d522f475Smrg exit ;; 324d522f475Smrg DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 325d522f475Smrg case `/usr/bin/uname -p` in 326d522f475Smrg sparc) echo sparc-icl-nx7; exit ;; 327d522f475Smrg esac ;; 32820d2c4d2Smrg s390x:SunOS:*:*) 32920d2c4d2Smrg echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 33020d2c4d2Smrg exit ;; 331d522f475Smrg sun4H:SunOS:5.*:*) 332d522f475Smrg echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 333d522f475Smrg exit ;; 334d522f475Smrg sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 335d522f475Smrg echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 336d522f475Smrg exit ;; 33720d2c4d2Smrg i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) 33820d2c4d2Smrg echo i386-pc-auroraux${UNAME_RELEASE} 33920d2c4d2Smrg exit ;; 3402eaa94a1Schristos i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) 341956cc18dSsnj eval $set_cc_for_build 342956cc18dSsnj SUN_ARCH="i386" 343956cc18dSsnj # If there is a compiler, see if it is configured for 64-bit objects. 344956cc18dSsnj # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. 345956cc18dSsnj # This test works for both compilers. 346956cc18dSsnj if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 347956cc18dSsnj if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ 348956cc18dSsnj (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 349956cc18dSsnj grep IS_64BIT_ARCH >/dev/null 350956cc18dSsnj then 351956cc18dSsnj SUN_ARCH="x86_64" 352956cc18dSsnj fi 353956cc18dSsnj fi 354956cc18dSsnj echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 355d522f475Smrg exit ;; 356d522f475Smrg sun4*:SunOS:6*:*) 357d522f475Smrg # According to config.sub, this is the proper way to canonicalize 358d522f475Smrg # SunOS6. Hard to guess exactly what SunOS6 will be like, but 359d522f475Smrg # it's likely to be more like Solaris than SunOS4. 360d522f475Smrg echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 361d522f475Smrg exit ;; 362d522f475Smrg sun4*:SunOS:*:*) 363d522f475Smrg case "`/usr/bin/arch -k`" in 364d522f475Smrg Series*|S4*) 365d522f475Smrg UNAME_RELEASE=`uname -v` 366d522f475Smrg ;; 367d522f475Smrg esac 368d522f475Smrg # Japanese Language versions have a version number like `4.1.3-JL'. 369d522f475Smrg echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 370d522f475Smrg exit ;; 371d522f475Smrg sun3*:SunOS:*:*) 372d522f475Smrg echo m68k-sun-sunos${UNAME_RELEASE} 373d522f475Smrg exit ;; 374d522f475Smrg sun*:*:4.2BSD:*) 375d522f475Smrg UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 376d522f475Smrg test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 377d522f475Smrg case "`/bin/arch`" in 378d522f475Smrg sun3) 379d522f475Smrg echo m68k-sun-sunos${UNAME_RELEASE} 380d522f475Smrg ;; 381d522f475Smrg sun4) 382d522f475Smrg echo sparc-sun-sunos${UNAME_RELEASE} 383d522f475Smrg ;; 384d522f475Smrg esac 385d522f475Smrg exit ;; 386d522f475Smrg aushp:SunOS:*:*) 387d522f475Smrg echo sparc-auspex-sunos${UNAME_RELEASE} 388d522f475Smrg exit ;; 389d522f475Smrg # The situation for MiNT is a little confusing. The machine name 390d522f475Smrg # can be virtually everything (everything which is not 391d522f475Smrg # "atarist" or "atariste" at least should have a processor 392d522f475Smrg # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 393d522f475Smrg # to the lowercase version "mint" (or "freemint"). Finally 394d522f475Smrg # the system name "TOS" denotes a system which is actually not 395d522f475Smrg # MiNT. But MiNT is downward compatible to TOS, so this should 396d522f475Smrg # be no problem. 397d522f475Smrg atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 398d522f475Smrg echo m68k-atari-mint${UNAME_RELEASE} 399d522f475Smrg exit ;; 400d522f475Smrg atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 401d522f475Smrg echo m68k-atari-mint${UNAME_RELEASE} 402d522f475Smrg exit ;; 403d522f475Smrg *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 404d522f475Smrg echo m68k-atari-mint${UNAME_RELEASE} 405d522f475Smrg exit ;; 406d522f475Smrg milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 407d522f475Smrg echo m68k-milan-mint${UNAME_RELEASE} 408d522f475Smrg exit ;; 409d522f475Smrg hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 410d522f475Smrg echo m68k-hades-mint${UNAME_RELEASE} 411d522f475Smrg exit ;; 412d522f475Smrg *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 413d522f475Smrg echo m68k-unknown-mint${UNAME_RELEASE} 414d522f475Smrg exit ;; 415d522f475Smrg m68k:machten:*:*) 416d522f475Smrg echo m68k-apple-machten${UNAME_RELEASE} 417d522f475Smrg exit ;; 418d522f475Smrg powerpc:machten:*:*) 419d522f475Smrg echo powerpc-apple-machten${UNAME_RELEASE} 420d522f475Smrg exit ;; 421d522f475Smrg RISC*:Mach:*:*) 422d522f475Smrg echo mips-dec-mach_bsd4.3 423d522f475Smrg exit ;; 424d522f475Smrg RISC*:ULTRIX:*:*) 425d522f475Smrg echo mips-dec-ultrix${UNAME_RELEASE} 426d522f475Smrg exit ;; 427d522f475Smrg VAX*:ULTRIX*:*:*) 428d522f475Smrg echo vax-dec-ultrix${UNAME_RELEASE} 429d522f475Smrg exit ;; 430d522f475Smrg 2020:CLIX:*:* | 2430:CLIX:*:*) 431d522f475Smrg echo clipper-intergraph-clix${UNAME_RELEASE} 432d522f475Smrg exit ;; 433d522f475Smrg mips:*:*:UMIPS | mips:*:*:RISCos) 434d522f475Smrg eval $set_cc_for_build 435d522f475Smrg sed 's/^ //' << EOF >$dummy.c 436d522f475Smrg#ifdef __cplusplus 437d522f475Smrg#include <stdio.h> /* for printf() prototype */ 438d522f475Smrg int main (int argc, char *argv[]) { 439d522f475Smrg#else 440d522f475Smrg int main (argc, argv) int argc; char *argv[]; { 441d522f475Smrg#endif 442d522f475Smrg #if defined (host_mips) && defined (MIPSEB) 443d522f475Smrg #if defined (SYSTYPE_SYSV) 444d522f475Smrg printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 445d522f475Smrg #endif 446d522f475Smrg #if defined (SYSTYPE_SVR4) 447d522f475Smrg printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 448d522f475Smrg #endif 449d522f475Smrg #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 450d522f475Smrg printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 451d522f475Smrg #endif 452d522f475Smrg #endif 453d522f475Smrg exit (-1); 454d522f475Smrg } 455d522f475SmrgEOF 456d522f475Smrg $CC_FOR_BUILD -o $dummy $dummy.c && 457d522f475Smrg dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 458d522f475Smrg SYSTEM_NAME=`$dummy $dummyarg` && 459d522f475Smrg { echo "$SYSTEM_NAME"; exit; } 460d522f475Smrg echo mips-mips-riscos${UNAME_RELEASE} 461d522f475Smrg exit ;; 462d522f475Smrg Motorola:PowerMAX_OS:*:*) 463d522f475Smrg echo powerpc-motorola-powermax 464d522f475Smrg exit ;; 465d522f475Smrg Motorola:*:4.3:PL8-*) 466d522f475Smrg echo powerpc-harris-powermax 467d522f475Smrg exit ;; 468d522f475Smrg Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 469d522f475Smrg echo powerpc-harris-powermax 470d522f475Smrg exit ;; 471d522f475Smrg Night_Hawk:Power_UNIX:*:*) 472d522f475Smrg echo powerpc-harris-powerunix 473d522f475Smrg exit ;; 474d522f475Smrg m88k:CX/UX:7*:*) 475d522f475Smrg echo m88k-harris-cxux7 476d522f475Smrg exit ;; 477d522f475Smrg m88k:*:4*:R4*) 478d522f475Smrg echo m88k-motorola-sysv4 479d522f475Smrg exit ;; 480d522f475Smrg m88k:*:3*:R3*) 481d522f475Smrg echo m88k-motorola-sysv3 482d522f475Smrg exit ;; 483d522f475Smrg AViiON:dgux:*:*) 484d522f475Smrg # DG/UX returns AViiON for all architectures 485d522f475Smrg UNAME_PROCESSOR=`/usr/bin/uname -p` 486d522f475Smrg if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 487d522f475Smrg then 488d522f475Smrg if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 489d522f475Smrg [ ${TARGET_BINARY_INTERFACE}x = x ] 490d522f475Smrg then 491d522f475Smrg echo m88k-dg-dgux${UNAME_RELEASE} 492d522f475Smrg else 493d522f475Smrg echo m88k-dg-dguxbcs${UNAME_RELEASE} 494d522f475Smrg fi 495d522f475Smrg else 496d522f475Smrg echo i586-dg-dgux${UNAME_RELEASE} 497d522f475Smrg fi 498d522f475Smrg exit ;; 499d522f475Smrg M88*:DolphinOS:*:*) # DolphinOS (SVR3) 500d522f475Smrg echo m88k-dolphin-sysv3 501d522f475Smrg exit ;; 502d522f475Smrg M88*:*:R3*:*) 503d522f475Smrg # Delta 88k system running SVR3 504d522f475Smrg echo m88k-motorola-sysv3 505d522f475Smrg exit ;; 506d522f475Smrg XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 507d522f475Smrg echo m88k-tektronix-sysv3 508d522f475Smrg exit ;; 509d522f475Smrg Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 510d522f475Smrg echo m68k-tektronix-bsd 511d522f475Smrg exit ;; 512d522f475Smrg *:IRIX*:*:*) 513d522f475Smrg echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 514d522f475Smrg exit ;; 515d522f475Smrg ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 516d522f475Smrg echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 517d522f475Smrg exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 518d522f475Smrg i*86:AIX:*:*) 519d522f475Smrg echo i386-ibm-aix 520d522f475Smrg exit ;; 521d522f475Smrg ia64:AIX:*:*) 522d522f475Smrg if [ -x /usr/bin/oslevel ] ; then 523d522f475Smrg IBM_REV=`/usr/bin/oslevel` 524d522f475Smrg else 525d522f475Smrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 526d522f475Smrg fi 527d522f475Smrg echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 528d522f475Smrg exit ;; 529d522f475Smrg *:AIX:2:3) 530d522f475Smrg if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 531d522f475Smrg eval $set_cc_for_build 532d522f475Smrg sed 's/^ //' << EOF >$dummy.c 533d522f475Smrg #include <sys/systemcfg.h> 534d522f475Smrg 535d522f475Smrg main() 536d522f475Smrg { 537d522f475Smrg if (!__power_pc()) 538d522f475Smrg exit(1); 539d522f475Smrg puts("powerpc-ibm-aix3.2.5"); 540d522f475Smrg exit(0); 541d522f475Smrg } 542d522f475SmrgEOF 543d522f475Smrg if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 544d522f475Smrg then 545d522f475Smrg echo "$SYSTEM_NAME" 546d522f475Smrg else 547d522f475Smrg echo rs6000-ibm-aix3.2.5 548d522f475Smrg fi 549d522f475Smrg elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 550d522f475Smrg echo rs6000-ibm-aix3.2.4 551d522f475Smrg else 552d522f475Smrg echo rs6000-ibm-aix3.2 553d522f475Smrg fi 554d522f475Smrg exit ;; 5552eaa94a1Schristos *:AIX:*:[456]) 556d522f475Smrg IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 557d522f475Smrg if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 558d522f475Smrg IBM_ARCH=rs6000 559d522f475Smrg else 560d522f475Smrg IBM_ARCH=powerpc 561d522f475Smrg fi 562d522f475Smrg if [ -x /usr/bin/oslevel ] ; then 563d522f475Smrg IBM_REV=`/usr/bin/oslevel` 564d522f475Smrg else 565d522f475Smrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 566d522f475Smrg fi 567d522f475Smrg echo ${IBM_ARCH}-ibm-aix${IBM_REV} 568d522f475Smrg exit ;; 569d522f475Smrg *:AIX:*:*) 570d522f475Smrg echo rs6000-ibm-aix 571d522f475Smrg exit ;; 572d522f475Smrg ibmrt:4.4BSD:*|romp-ibm:BSD:*) 573d522f475Smrg echo romp-ibm-bsd4.4 574d522f475Smrg exit ;; 575d522f475Smrg ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 576d522f475Smrg echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 577d522f475Smrg exit ;; # report: romp-ibm BSD 4.3 578d522f475Smrg *:BOSX:*:*) 579d522f475Smrg echo rs6000-bull-bosx 580d522f475Smrg exit ;; 581d522f475Smrg DPX/2?00:B.O.S.:*:*) 582d522f475Smrg echo m68k-bull-sysv3 583d522f475Smrg exit ;; 584d522f475Smrg 9000/[34]??:4.3bsd:1.*:*) 585d522f475Smrg echo m68k-hp-bsd 586d522f475Smrg exit ;; 587d522f475Smrg hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 588d522f475Smrg echo m68k-hp-bsd4.4 589d522f475Smrg exit ;; 590d522f475Smrg 9000/[34678]??:HP-UX:*:*) 591d522f475Smrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 592d522f475Smrg case "${UNAME_MACHINE}" in 593d522f475Smrg 9000/31? ) HP_ARCH=m68000 ;; 594d522f475Smrg 9000/[34]?? ) HP_ARCH=m68k ;; 595d522f475Smrg 9000/[678][0-9][0-9]) 596d522f475Smrg if [ -x /usr/bin/getconf ]; then 597d522f475Smrg sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 598d522f475Smrg sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 599d522f475Smrg case "${sc_cpu_version}" in 600d522f475Smrg 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 601d522f475Smrg 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 602d522f475Smrg 532) # CPU_PA_RISC2_0 603d522f475Smrg case "${sc_kernel_bits}" in 604d522f475Smrg 32) HP_ARCH="hppa2.0n" ;; 605d522f475Smrg 64) HP_ARCH="hppa2.0w" ;; 606d522f475Smrg '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 607d522f475Smrg esac ;; 608d522f475Smrg esac 609d522f475Smrg fi 610d522f475Smrg if [ "${HP_ARCH}" = "" ]; then 611d522f475Smrg eval $set_cc_for_build 612d522f475Smrg sed 's/^ //' << EOF >$dummy.c 613d522f475Smrg 614d522f475Smrg #define _HPUX_SOURCE 615d522f475Smrg #include <stdlib.h> 616d522f475Smrg #include <unistd.h> 617d522f475Smrg 618d522f475Smrg int main () 619d522f475Smrg { 620d522f475Smrg #if defined(_SC_KERNEL_BITS) 621d522f475Smrg long bits = sysconf(_SC_KERNEL_BITS); 622d522f475Smrg #endif 623d522f475Smrg long cpu = sysconf (_SC_CPU_VERSION); 624d522f475Smrg 625d522f475Smrg switch (cpu) 626d522f475Smrg { 627d522f475Smrg case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 628d522f475Smrg case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 629d522f475Smrg case CPU_PA_RISC2_0: 630d522f475Smrg #if defined(_SC_KERNEL_BITS) 631d522f475Smrg switch (bits) 632d522f475Smrg { 633d522f475Smrg case 64: puts ("hppa2.0w"); break; 634d522f475Smrg case 32: puts ("hppa2.0n"); break; 635d522f475Smrg default: puts ("hppa2.0"); break; 636d522f475Smrg } break; 637d522f475Smrg #else /* !defined(_SC_KERNEL_BITS) */ 638d522f475Smrg puts ("hppa2.0"); break; 639d522f475Smrg #endif 640d522f475Smrg default: puts ("hppa1.0"); break; 641d522f475Smrg } 642d522f475Smrg exit (0); 643d522f475Smrg } 644d522f475SmrgEOF 645d522f475Smrg (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 646d522f475Smrg test -z "$HP_ARCH" && HP_ARCH=hppa 647d522f475Smrg fi ;; 648d522f475Smrg esac 649d522f475Smrg if [ ${HP_ARCH} = "hppa2.0w" ] 650d522f475Smrg then 651d522f475Smrg eval $set_cc_for_build 652d522f475Smrg 653d522f475Smrg # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 654d522f475Smrg # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 655d522f475Smrg # generating 64-bit code. GNU and HP use different nomenclature: 656d522f475Smrg # 657d522f475Smrg # $ CC_FOR_BUILD=cc ./config.guess 658d522f475Smrg # => hppa2.0w-hp-hpux11.23 659d522f475Smrg # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 660d522f475Smrg # => hppa64-hp-hpux11.23 661d522f475Smrg 662d522f475Smrg if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | 66320d2c4d2Smrg grep -q __LP64__ 664d522f475Smrg then 665d522f475Smrg HP_ARCH="hppa2.0w" 666d522f475Smrg else 667d522f475Smrg HP_ARCH="hppa64" 668d522f475Smrg fi 669d522f475Smrg fi 670d522f475Smrg echo ${HP_ARCH}-hp-hpux${HPUX_REV} 671d522f475Smrg exit ;; 672d522f475Smrg ia64:HP-UX:*:*) 673d522f475Smrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 674d522f475Smrg echo ia64-hp-hpux${HPUX_REV} 675d522f475Smrg exit ;; 676d522f475Smrg 3050*:HI-UX:*:*) 677d522f475Smrg eval $set_cc_for_build 678d522f475Smrg sed 's/^ //' << EOF >$dummy.c 679d522f475Smrg #include <unistd.h> 680d522f475Smrg int 681d522f475Smrg main () 682d522f475Smrg { 683d522f475Smrg long cpu = sysconf (_SC_CPU_VERSION); 684d522f475Smrg /* The order matters, because CPU_IS_HP_MC68K erroneously returns 685d522f475Smrg true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 686d522f475Smrg results, however. */ 687d522f475Smrg if (CPU_IS_PA_RISC (cpu)) 688d522f475Smrg { 689d522f475Smrg switch (cpu) 690d522f475Smrg { 691d522f475Smrg case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 692d522f475Smrg case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 693d522f475Smrg case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 694d522f475Smrg default: puts ("hppa-hitachi-hiuxwe2"); break; 695d522f475Smrg } 696d522f475Smrg } 697d522f475Smrg else if (CPU_IS_HP_MC68K (cpu)) 698d522f475Smrg puts ("m68k-hitachi-hiuxwe2"); 699d522f475Smrg else puts ("unknown-hitachi-hiuxwe2"); 700d522f475Smrg exit (0); 701d522f475Smrg } 702d522f475SmrgEOF 703d522f475Smrg $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 704d522f475Smrg { echo "$SYSTEM_NAME"; exit; } 705d522f475Smrg echo unknown-hitachi-hiuxwe2 706d522f475Smrg exit ;; 707d522f475Smrg 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 708d522f475Smrg echo hppa1.1-hp-bsd 709d522f475Smrg exit ;; 710d522f475Smrg 9000/8??:4.3bsd:*:*) 711d522f475Smrg echo hppa1.0-hp-bsd 712d522f475Smrg exit ;; 713d522f475Smrg *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 714d522f475Smrg echo hppa1.0-hp-mpeix 715d522f475Smrg exit ;; 716d522f475Smrg hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 717d522f475Smrg echo hppa1.1-hp-osf 718d522f475Smrg exit ;; 719d522f475Smrg hp8??:OSF1:*:*) 720d522f475Smrg echo hppa1.0-hp-osf 721d522f475Smrg exit ;; 722d522f475Smrg i*86:OSF1:*:*) 723d522f475Smrg if [ -x /usr/sbin/sysversion ] ; then 724d522f475Smrg echo ${UNAME_MACHINE}-unknown-osf1mk 725d522f475Smrg else 726d522f475Smrg echo ${UNAME_MACHINE}-unknown-osf1 727d522f475Smrg fi 728d522f475Smrg exit ;; 729d522f475Smrg parisc*:Lites*:*:*) 730d522f475Smrg echo hppa1.1-hp-lites 731d522f475Smrg exit ;; 732d522f475Smrg C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 733d522f475Smrg echo c1-convex-bsd 734d522f475Smrg exit ;; 735d522f475Smrg C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 736d522f475Smrg if getsysinfo -f scalar_acc 737d522f475Smrg then echo c32-convex-bsd 738d522f475Smrg else echo c2-convex-bsd 739d522f475Smrg fi 740d522f475Smrg exit ;; 741d522f475Smrg C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 742d522f475Smrg echo c34-convex-bsd 743d522f475Smrg exit ;; 744d522f475Smrg C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 745d522f475Smrg echo c38-convex-bsd 746d522f475Smrg exit ;; 747d522f475Smrg C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 748d522f475Smrg echo c4-convex-bsd 749d522f475Smrg exit ;; 750d522f475Smrg CRAY*Y-MP:*:*:*) 751d522f475Smrg echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 752d522f475Smrg exit ;; 753d522f475Smrg CRAY*[A-Z]90:*:*:*) 754d522f475Smrg echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 755d522f475Smrg | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 756d522f475Smrg -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 757d522f475Smrg -e 's/\.[^.]*$/.X/' 758d522f475Smrg exit ;; 759d522f475Smrg CRAY*TS:*:*:*) 760d522f475Smrg echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 761d522f475Smrg exit ;; 762d522f475Smrg CRAY*T3E:*:*:*) 763d522f475Smrg echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 764d522f475Smrg exit ;; 765d522f475Smrg CRAY*SV1:*:*:*) 766d522f475Smrg echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 767d522f475Smrg exit ;; 768d522f475Smrg *:UNICOS/mp:*:*) 769d522f475Smrg echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 770d522f475Smrg exit ;; 771d522f475Smrg F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 772d522f475Smrg FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 773d522f475Smrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 774d522f475Smrg FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 775d522f475Smrg echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 776d522f475Smrg exit ;; 777d522f475Smrg 5000:UNIX_System_V:4.*:*) 778d522f475Smrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 779d522f475Smrg FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` 780d522f475Smrg echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 781d522f475Smrg exit ;; 782d522f475Smrg i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 783d522f475Smrg echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 784d522f475Smrg exit ;; 785d522f475Smrg sparc*:BSD/OS:*:*) 786d522f475Smrg echo sparc-unknown-bsdi${UNAME_RELEASE} 787d522f475Smrg exit ;; 788d522f475Smrg *:BSD/OS:*:*) 789d522f475Smrg echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 790d522f475Smrg exit ;; 791d522f475Smrg *:FreeBSD:*:*) 792d522f475Smrg case ${UNAME_MACHINE} in 793d522f475Smrg pc98) 794d522f475Smrg echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 795d522f475Smrg amd64) 796d522f475Smrg echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 797d522f475Smrg *) 798d522f475Smrg echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 799d522f475Smrg esac 800d522f475Smrg exit ;; 801d522f475Smrg i*:CYGWIN*:*) 802d522f475Smrg echo ${UNAME_MACHINE}-pc-cygwin 803d522f475Smrg exit ;; 804d522f475Smrg *:MINGW*:*) 805d522f475Smrg echo ${UNAME_MACHINE}-pc-mingw32 806d522f475Smrg exit ;; 807d522f475Smrg i*:windows32*:*) 808d522f475Smrg # uname -m includes "-pc" on this system. 809d522f475Smrg echo ${UNAME_MACHINE}-mingw32 810d522f475Smrg exit ;; 811d522f475Smrg i*:PW*:*) 812d522f475Smrg echo ${UNAME_MACHINE}-pc-pw32 813d522f475Smrg exit ;; 81420d2c4d2Smrg *:Interix*:*) 815d522f475Smrg case ${UNAME_MACHINE} in 8162eaa94a1Schristos x86) 817d522f475Smrg echo i586-pc-interix${UNAME_RELEASE} 818d522f475Smrg exit ;; 81920d2c4d2Smrg authenticamd | genuineintel | EM64T) 820d522f475Smrg echo x86_64-unknown-interix${UNAME_RELEASE} 821d522f475Smrg exit ;; 8222eaa94a1Schristos IA64) 8232eaa94a1Schristos echo ia64-unknown-interix${UNAME_RELEASE} 8242eaa94a1Schristos exit ;; 825d522f475Smrg esac ;; 826d522f475Smrg [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 827d522f475Smrg echo i${UNAME_MACHINE}-pc-mks 828d522f475Smrg exit ;; 82920d2c4d2Smrg 8664:Windows_NT:*) 83020d2c4d2Smrg echo x86_64-pc-mks 83120d2c4d2Smrg exit ;; 832d522f475Smrg i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 833d522f475Smrg # How do we know it's Interix rather than the generic POSIX subsystem? 834d522f475Smrg # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 835d522f475Smrg # UNAME_MACHINE based on the output of uname instead of i386? 836d522f475Smrg echo i586-pc-interix 837d522f475Smrg exit ;; 838d522f475Smrg i*:UWIN*:*) 839d522f475Smrg echo ${UNAME_MACHINE}-pc-uwin 840d522f475Smrg exit ;; 841d522f475Smrg amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 842d522f475Smrg echo x86_64-unknown-cygwin 843d522f475Smrg exit ;; 844d522f475Smrg p*:CYGWIN*:*) 845d522f475Smrg echo powerpcle-unknown-cygwin 846d522f475Smrg exit ;; 847d522f475Smrg prep*:SunOS:5.*:*) 848d522f475Smrg echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 849d522f475Smrg exit ;; 850d522f475Smrg *:GNU:*:*) 851d522f475Smrg # the GNU system 852d522f475Smrg echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 853d522f475Smrg exit ;; 854d522f475Smrg *:GNU/*:*:*) 855d522f475Smrg # other systems with GNU libc and userland 856d522f475Smrg echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu 857d522f475Smrg exit ;; 858d522f475Smrg i*86:Minix:*:*) 859d522f475Smrg echo ${UNAME_MACHINE}-pc-minix 860d522f475Smrg exit ;; 86120d2c4d2Smrg alpha:Linux:*:*) 86220d2c4d2Smrg case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 86320d2c4d2Smrg EV5) UNAME_MACHINE=alphaev5 ;; 86420d2c4d2Smrg EV56) UNAME_MACHINE=alphaev56 ;; 86520d2c4d2Smrg PCA56) UNAME_MACHINE=alphapca56 ;; 86620d2c4d2Smrg PCA57) UNAME_MACHINE=alphapca56 ;; 86720d2c4d2Smrg EV6) UNAME_MACHINE=alphaev6 ;; 86820d2c4d2Smrg EV67) UNAME_MACHINE=alphaev67 ;; 86920d2c4d2Smrg EV68*) UNAME_MACHINE=alphaev68 ;; 87020d2c4d2Smrg esac 87120d2c4d2Smrg objdump --private-headers /bin/sh | grep -q ld.so.1 87220d2c4d2Smrg if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi 87320d2c4d2Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 87420d2c4d2Smrg exit ;; 875d522f475Smrg arm*:Linux:*:*) 8762eaa94a1Schristos eval $set_cc_for_build 8772eaa94a1Schristos if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ 8782eaa94a1Schristos | grep -q __ARM_EABI__ 8792eaa94a1Schristos then 8802eaa94a1Schristos echo ${UNAME_MACHINE}-unknown-linux-gnu 8812eaa94a1Schristos else 8822eaa94a1Schristos echo ${UNAME_MACHINE}-unknown-linux-gnueabi 8832eaa94a1Schristos fi 884d522f475Smrg exit ;; 885d522f475Smrg avr32*:Linux:*:*) 886d522f475Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 887d522f475Smrg exit ;; 888d522f475Smrg cris:Linux:*:*) 889d522f475Smrg echo cris-axis-linux-gnu 890d522f475Smrg exit ;; 891d522f475Smrg crisv32:Linux:*:*) 892d522f475Smrg echo crisv32-axis-linux-gnu 893d522f475Smrg exit ;; 894d522f475Smrg frv:Linux:*:*) 895d522f475Smrg echo frv-unknown-linux-gnu 896d522f475Smrg exit ;; 89720d2c4d2Smrg i*86:Linux:*:*) 89820d2c4d2Smrg LIBC=gnu 89920d2c4d2Smrg eval $set_cc_for_build 90020d2c4d2Smrg sed 's/^ //' << EOF >$dummy.c 90120d2c4d2Smrg #ifdef __dietlibc__ 90220d2c4d2Smrg LIBC=dietlibc 90320d2c4d2Smrg #endif 90420d2c4d2SmrgEOF 90520d2c4d2Smrg eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` 90620d2c4d2Smrg echo "${UNAME_MACHINE}-pc-linux-${LIBC}" 90720d2c4d2Smrg exit ;; 908d522f475Smrg ia64:Linux:*:*) 909d522f475Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 910d522f475Smrg exit ;; 911d522f475Smrg m32r*:Linux:*:*) 912d522f475Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 913d522f475Smrg exit ;; 914d522f475Smrg m68*:Linux:*:*) 915d522f475Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 916d522f475Smrg exit ;; 91720d2c4d2Smrg mips:Linux:*:* | mips64:Linux:*:*) 918d522f475Smrg eval $set_cc_for_build 919d522f475Smrg sed 's/^ //' << EOF >$dummy.c 920d522f475Smrg #undef CPU 92120d2c4d2Smrg #undef ${UNAME_MACHINE} 92220d2c4d2Smrg #undef ${UNAME_MACHINE}el 923d522f475Smrg #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 92420d2c4d2Smrg CPU=${UNAME_MACHINE}el 925d522f475Smrg #else 926d522f475Smrg #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 92720d2c4d2Smrg CPU=${UNAME_MACHINE} 928d522f475Smrg #else 929d522f475Smrg CPU= 930d522f475Smrg #endif 931d522f475Smrg #endif 932d522f475SmrgEOF 93320d2c4d2Smrg eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` 934d522f475Smrg test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 935d522f475Smrg ;; 936d522f475Smrg or32:Linux:*:*) 937d522f475Smrg echo or32-unknown-linux-gnu 938d522f475Smrg exit ;; 939956cc18dSsnj padre:Linux:*:*) 940956cc18dSsnj echo sparc-unknown-linux-gnu 941956cc18dSsnj exit ;; 94220d2c4d2Smrg parisc64:Linux:*:* | hppa64:Linux:*:*) 94320d2c4d2Smrg echo hppa64-unknown-linux-gnu 94420d2c4d2Smrg exit ;; 945d522f475Smrg parisc:Linux:*:* | hppa:Linux:*:*) 946d522f475Smrg # Look for CPU level 947d522f475Smrg case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 948d522f475Smrg PA7*) echo hppa1.1-unknown-linux-gnu ;; 949d522f475Smrg PA8*) echo hppa2.0-unknown-linux-gnu ;; 950d522f475Smrg *) echo hppa-unknown-linux-gnu ;; 951d522f475Smrg esac 952d522f475Smrg exit ;; 95320d2c4d2Smrg ppc64:Linux:*:*) 95420d2c4d2Smrg echo powerpc64-unknown-linux-gnu 95520d2c4d2Smrg exit ;; 95620d2c4d2Smrg ppc:Linux:*:*) 95720d2c4d2Smrg echo powerpc-unknown-linux-gnu 958d522f475Smrg exit ;; 959d522f475Smrg s390:Linux:*:* | s390x:Linux:*:*) 960d522f475Smrg echo ${UNAME_MACHINE}-ibm-linux 961d522f475Smrg exit ;; 962d522f475Smrg sh64*:Linux:*:*) 963d522f475Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 964d522f475Smrg exit ;; 965d522f475Smrg sh*:Linux:*:*) 966d522f475Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 967d522f475Smrg exit ;; 968d522f475Smrg sparc:Linux:*:* | sparc64:Linux:*:*) 969d522f475Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 970d522f475Smrg exit ;; 971d522f475Smrg vax:Linux:*:*) 972d522f475Smrg echo ${UNAME_MACHINE}-dec-linux-gnu 973d522f475Smrg exit ;; 974d522f475Smrg x86_64:Linux:*:*) 975d522f475Smrg echo x86_64-unknown-linux-gnu 976d522f475Smrg exit ;; 9772eaa94a1Schristos xtensa*:Linux:*:*) 9782eaa94a1Schristos echo ${UNAME_MACHINE}-unknown-linux-gnu 979d522f475Smrg exit ;; 980d522f475Smrg i*86:DYNIX/ptx:4*:*) 981d522f475Smrg # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 982d522f475Smrg # earlier versions are messed up and put the nodename in both 983d522f475Smrg # sysname and nodename. 984d522f475Smrg echo i386-sequent-sysv4 985d522f475Smrg exit ;; 986d522f475Smrg i*86:UNIX_SV:4.2MP:2.*) 987d522f475Smrg # Unixware is an offshoot of SVR4, but it has its own version 988d522f475Smrg # number series starting with 2... 989d522f475Smrg # I am not positive that other SVR4 systems won't match this, 990d522f475Smrg # I just have to hope. -- rms. 991d522f475Smrg # Use sysv4.2uw... so that sysv4* matches it. 992d522f475Smrg echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 993d522f475Smrg exit ;; 994d522f475Smrg i*86:OS/2:*:*) 995d522f475Smrg # If we were able to find `uname', then EMX Unix compatibility 996d522f475Smrg # is probably installed. 997d522f475Smrg echo ${UNAME_MACHINE}-pc-os2-emx 998d522f475Smrg exit ;; 999d522f475Smrg i*86:XTS-300:*:STOP) 1000d522f475Smrg echo ${UNAME_MACHINE}-unknown-stop 1001d522f475Smrg exit ;; 1002d522f475Smrg i*86:atheos:*:*) 1003d522f475Smrg echo ${UNAME_MACHINE}-unknown-atheos 1004d522f475Smrg exit ;; 1005d522f475Smrg i*86:syllable:*:*) 1006d522f475Smrg echo ${UNAME_MACHINE}-pc-syllable 1007d522f475Smrg exit ;; 100820d2c4d2Smrg i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) 1009d522f475Smrg echo i386-unknown-lynxos${UNAME_RELEASE} 1010d522f475Smrg exit ;; 1011d522f475Smrg i*86:*DOS:*:*) 1012d522f475Smrg echo ${UNAME_MACHINE}-pc-msdosdjgpp 1013d522f475Smrg exit ;; 1014d522f475Smrg i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 1015d522f475Smrg UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 1016d522f475Smrg if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 1017d522f475Smrg echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 1018d522f475Smrg else 1019d522f475Smrg echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 1020d522f475Smrg fi 1021d522f475Smrg exit ;; 1022d522f475Smrg i*86:*:5:[678]*) 1023d522f475Smrg # UnixWare 7.x, OpenUNIX and OpenServer 6. 1024d522f475Smrg case `/bin/uname -X | grep "^Machine"` in 1025d522f475Smrg *486*) UNAME_MACHINE=i486 ;; 1026d522f475Smrg *Pentium) UNAME_MACHINE=i586 ;; 1027d522f475Smrg *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 1028d522f475Smrg esac 1029d522f475Smrg echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 1030d522f475Smrg exit ;; 1031d522f475Smrg i*86:*:3.2:*) 1032d522f475Smrg if test -f /usr/options/cb.name; then 1033d522f475Smrg UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 1034d522f475Smrg echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 1035d522f475Smrg elif /bin/uname -X 2>/dev/null >/dev/null ; then 1036d522f475Smrg UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 1037d522f475Smrg (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 1038d522f475Smrg (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 1039d522f475Smrg && UNAME_MACHINE=i586 1040d522f475Smrg (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 1041d522f475Smrg && UNAME_MACHINE=i686 1042d522f475Smrg (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 1043d522f475Smrg && UNAME_MACHINE=i686 1044d522f475Smrg echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 1045d522f475Smrg else 1046d522f475Smrg echo ${UNAME_MACHINE}-pc-sysv32 1047d522f475Smrg fi 1048d522f475Smrg exit ;; 1049d522f475Smrg pc:*:*:*) 1050d522f475Smrg # Left here for compatibility: 1051d522f475Smrg # uname -m prints for DJGPP always 'pc', but it prints nothing about 105220d2c4d2Smrg # the processor, so we play safe by assuming i586. 105320d2c4d2Smrg # Note: whatever this is, it MUST be the same as what config.sub 105420d2c4d2Smrg # prints for the "djgpp" host, or else GDB configury will decide that 105520d2c4d2Smrg # this is a cross-build. 105620d2c4d2Smrg echo i586-pc-msdosdjgpp 1057d522f475Smrg exit ;; 1058d522f475Smrg Intel:Mach:3*:*) 1059d522f475Smrg echo i386-pc-mach3 1060d522f475Smrg exit ;; 1061d522f475Smrg paragon:*:*:*) 1062d522f475Smrg echo i860-intel-osf1 1063d522f475Smrg exit ;; 1064d522f475Smrg i860:*:4.*:*) # i860-SVR4 1065d522f475Smrg if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 1066d522f475Smrg echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 1067d522f475Smrg else # Add other i860-SVR4 vendors below as they are discovered. 1068d522f475Smrg echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 1069d522f475Smrg fi 1070d522f475Smrg exit ;; 1071d522f475Smrg mini*:CTIX:SYS*5:*) 1072d522f475Smrg # "miniframe" 1073d522f475Smrg echo m68010-convergent-sysv 1074d522f475Smrg exit ;; 1075d522f475Smrg mc68k:UNIX:SYSTEM5:3.51m) 1076d522f475Smrg echo m68k-convergent-sysv 1077d522f475Smrg exit ;; 1078d522f475Smrg M680?0:D-NIX:5.3:*) 1079d522f475Smrg echo m68k-diab-dnix 1080d522f475Smrg exit ;; 1081d522f475Smrg M68*:*:R3V[5678]*:*) 1082d522f475Smrg test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 1083d522f475Smrg 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) 1084d522f475Smrg OS_REL='' 1085d522f475Smrg test -r /etc/.relid \ 1086d522f475Smrg && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1087d522f475Smrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1088d522f475Smrg && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 1089d522f475Smrg /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1090d522f475Smrg && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1091d522f475Smrg 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 1092d522f475Smrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1093d522f475Smrg && { echo i486-ncr-sysv4; exit; } ;; 1094956cc18dSsnj NCR*:*:4.2:* | MPRAS*:*:4.2:*) 1095956cc18dSsnj OS_REL='.3' 1096956cc18dSsnj test -r /etc/.relid \ 1097956cc18dSsnj && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1098956cc18dSsnj /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1099956cc18dSsnj && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 1100956cc18dSsnj /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1101956cc18dSsnj && { echo i586-ncr-sysv4.3${OS_REL}; exit; } 1102956cc18dSsnj /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ 1103956cc18dSsnj && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1104d522f475Smrg m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 1105d522f475Smrg echo m68k-unknown-lynxos${UNAME_RELEASE} 1106d522f475Smrg exit ;; 1107d522f475Smrg mc68030:UNIX_System_V:4.*:*) 1108d522f475Smrg echo m68k-atari-sysv4 1109d522f475Smrg exit ;; 1110d522f475Smrg TSUNAMI:LynxOS:2.*:*) 1111d522f475Smrg echo sparc-unknown-lynxos${UNAME_RELEASE} 1112d522f475Smrg exit ;; 1113d522f475Smrg rs6000:LynxOS:2.*:*) 1114d522f475Smrg echo rs6000-unknown-lynxos${UNAME_RELEASE} 1115d522f475Smrg exit ;; 111620d2c4d2Smrg PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) 1117d522f475Smrg echo powerpc-unknown-lynxos${UNAME_RELEASE} 1118d522f475Smrg exit ;; 1119d522f475Smrg SM[BE]S:UNIX_SV:*:*) 1120d522f475Smrg echo mips-dde-sysv${UNAME_RELEASE} 1121d522f475Smrg exit ;; 1122d522f475Smrg RM*:ReliantUNIX-*:*:*) 1123d522f475Smrg echo mips-sni-sysv4 1124d522f475Smrg exit ;; 1125d522f475Smrg RM*:SINIX-*:*:*) 1126d522f475Smrg echo mips-sni-sysv4 1127d522f475Smrg exit ;; 1128d522f475Smrg *:SINIX-*:*:*) 1129d522f475Smrg if uname -p 2>/dev/null >/dev/null ; then 1130d522f475Smrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 1131d522f475Smrg echo ${UNAME_MACHINE}-sni-sysv4 1132d522f475Smrg else 1133d522f475Smrg echo ns32k-sni-sysv 1134d522f475Smrg fi 1135d522f475Smrg exit ;; 1136d522f475Smrg PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 1137d522f475Smrg # says <Richard.M.Bartel@ccMail.Census.GOV> 1138d522f475Smrg echo i586-unisys-sysv4 1139d522f475Smrg exit ;; 1140d522f475Smrg *:UNIX_System_V:4*:FTX*) 1141d522f475Smrg # From Gerald Hewes <hewes@openmarket.com>. 1142d522f475Smrg # How about differentiating between stratus architectures? -djm 1143d522f475Smrg echo hppa1.1-stratus-sysv4 1144d522f475Smrg exit ;; 1145d522f475Smrg *:*:*:FTX*) 1146d522f475Smrg # From seanf@swdc.stratus.com. 1147d522f475Smrg echo i860-stratus-sysv4 1148d522f475Smrg exit ;; 1149d522f475Smrg i*86:VOS:*:*) 1150d522f475Smrg # From Paul.Green@stratus.com. 1151d522f475Smrg echo ${UNAME_MACHINE}-stratus-vos 1152d522f475Smrg exit ;; 1153d522f475Smrg *:VOS:*:*) 1154d522f475Smrg # From Paul.Green@stratus.com. 1155d522f475Smrg echo hppa1.1-stratus-vos 1156d522f475Smrg exit ;; 1157d522f475Smrg mc68*:A/UX:*:*) 1158d522f475Smrg echo m68k-apple-aux${UNAME_RELEASE} 1159d522f475Smrg exit ;; 1160d522f475Smrg news*:NEWS-OS:6*:*) 1161d522f475Smrg echo mips-sony-newsos6 1162d522f475Smrg exit ;; 1163d522f475Smrg R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 1164d522f475Smrg if [ -d /usr/nec ]; then 1165d522f475Smrg echo mips-nec-sysv${UNAME_RELEASE} 1166d522f475Smrg else 1167d522f475Smrg echo mips-unknown-sysv${UNAME_RELEASE} 1168d522f475Smrg fi 1169d522f475Smrg exit ;; 1170d522f475Smrg BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 1171d522f475Smrg echo powerpc-be-beos 1172d522f475Smrg exit ;; 1173d522f475Smrg BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 1174d522f475Smrg echo powerpc-apple-beos 1175d522f475Smrg exit ;; 1176d522f475Smrg BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 1177d522f475Smrg echo i586-pc-beos 1178d522f475Smrg exit ;; 11792eaa94a1Schristos BePC:Haiku:*:*) # Haiku running on Intel PC compatible. 11802eaa94a1Schristos echo i586-pc-haiku 11812eaa94a1Schristos exit ;; 1182d522f475Smrg SX-4:SUPER-UX:*:*) 1183d522f475Smrg echo sx4-nec-superux${UNAME_RELEASE} 1184d522f475Smrg exit ;; 1185d522f475Smrg SX-5:SUPER-UX:*:*) 1186d522f475Smrg echo sx5-nec-superux${UNAME_RELEASE} 1187d522f475Smrg exit ;; 1188d522f475Smrg SX-6:SUPER-UX:*:*) 1189d522f475Smrg echo sx6-nec-superux${UNAME_RELEASE} 1190d522f475Smrg exit ;; 1191d522f475Smrg SX-7:SUPER-UX:*:*) 1192d522f475Smrg echo sx7-nec-superux${UNAME_RELEASE} 1193d522f475Smrg exit ;; 1194d522f475Smrg SX-8:SUPER-UX:*:*) 1195d522f475Smrg echo sx8-nec-superux${UNAME_RELEASE} 1196d522f475Smrg exit ;; 1197d522f475Smrg SX-8R:SUPER-UX:*:*) 1198d522f475Smrg echo sx8r-nec-superux${UNAME_RELEASE} 1199d522f475Smrg exit ;; 1200d522f475Smrg Power*:Rhapsody:*:*) 1201d522f475Smrg echo powerpc-apple-rhapsody${UNAME_RELEASE} 1202d522f475Smrg exit ;; 1203d522f475Smrg *:Rhapsody:*:*) 1204d522f475Smrg echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 1205d522f475Smrg exit ;; 1206d522f475Smrg *:Darwin:*:*) 1207d522f475Smrg UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 1208d522f475Smrg case $UNAME_PROCESSOR in 120920d2c4d2Smrg i386) 121020d2c4d2Smrg eval $set_cc_for_build 121120d2c4d2Smrg if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 121220d2c4d2Smrg if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ 121320d2c4d2Smrg (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 121420d2c4d2Smrg grep IS_64BIT_ARCH >/dev/null 121520d2c4d2Smrg then 121620d2c4d2Smrg UNAME_PROCESSOR="x86_64" 121720d2c4d2Smrg fi 121820d2c4d2Smrg fi ;; 1219d522f475Smrg unknown) UNAME_PROCESSOR=powerpc ;; 1220d522f475Smrg esac 1221d522f475Smrg echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 1222d522f475Smrg exit ;; 1223d522f475Smrg *:procnto*:*:* | *:QNX:[0123456789]*:*) 1224d522f475Smrg UNAME_PROCESSOR=`uname -p` 1225d522f475Smrg if test "$UNAME_PROCESSOR" = "x86"; then 1226d522f475Smrg UNAME_PROCESSOR=i386 1227d522f475Smrg UNAME_MACHINE=pc 1228d522f475Smrg fi 1229d522f475Smrg echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 1230d522f475Smrg exit ;; 1231d522f475Smrg *:QNX:*:4*) 1232d522f475Smrg echo i386-pc-qnx 1233d522f475Smrg exit ;; 1234d522f475Smrg NSE-?:NONSTOP_KERNEL:*:*) 1235d522f475Smrg echo nse-tandem-nsk${UNAME_RELEASE} 1236d522f475Smrg exit ;; 1237d522f475Smrg NSR-?:NONSTOP_KERNEL:*:*) 1238d522f475Smrg echo nsr-tandem-nsk${UNAME_RELEASE} 1239d522f475Smrg exit ;; 1240d522f475Smrg *:NonStop-UX:*:*) 1241d522f475Smrg echo mips-compaq-nonstopux 1242d522f475Smrg exit ;; 1243d522f475Smrg BS2000:POSIX*:*:*) 1244d522f475Smrg echo bs2000-siemens-sysv 1245d522f475Smrg exit ;; 1246d522f475Smrg DS/*:UNIX_System_V:*:*) 1247d522f475Smrg echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 1248d522f475Smrg exit ;; 1249d522f475Smrg *:Plan9:*:*) 1250d522f475Smrg # "uname -m" is not consistent, so use $cputype instead. 386 1251d522f475Smrg # is converted to i386 for consistency with other x86 1252d522f475Smrg # operating systems. 1253d522f475Smrg if test "$cputype" = "386"; then 1254d522f475Smrg UNAME_MACHINE=i386 1255d522f475Smrg else 1256d522f475Smrg UNAME_MACHINE="$cputype" 1257d522f475Smrg fi 1258d522f475Smrg echo ${UNAME_MACHINE}-unknown-plan9 1259d522f475Smrg exit ;; 1260d522f475Smrg *:TOPS-10:*:*) 1261d522f475Smrg echo pdp10-unknown-tops10 1262d522f475Smrg exit ;; 1263d522f475Smrg *:TENEX:*:*) 1264d522f475Smrg echo pdp10-unknown-tenex 1265d522f475Smrg exit ;; 1266d522f475Smrg KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 1267d522f475Smrg echo pdp10-dec-tops20 1268d522f475Smrg exit ;; 1269d522f475Smrg XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 1270d522f475Smrg echo pdp10-xkl-tops20 1271d522f475Smrg exit ;; 1272d522f475Smrg *:TOPS-20:*:*) 1273d522f475Smrg echo pdp10-unknown-tops20 1274d522f475Smrg exit ;; 1275d522f475Smrg *:ITS:*:*) 1276d522f475Smrg echo pdp10-unknown-its 1277d522f475Smrg exit ;; 1278d522f475Smrg SEI:*:*:SEIUX) 1279d522f475Smrg echo mips-sei-seiux${UNAME_RELEASE} 1280d522f475Smrg exit ;; 1281d522f475Smrg *:DragonFly:*:*) 1282d522f475Smrg echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 1283d522f475Smrg exit ;; 1284d522f475Smrg *:*VMS:*:*) 1285d522f475Smrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 1286d522f475Smrg case "${UNAME_MACHINE}" in 1287d522f475Smrg A*) echo alpha-dec-vms ; exit ;; 1288d522f475Smrg I*) echo ia64-dec-vms ; exit ;; 1289d522f475Smrg V*) echo vax-dec-vms ; exit ;; 1290d522f475Smrg esac ;; 1291d522f475Smrg *:XENIX:*:SysV) 1292d522f475Smrg echo i386-pc-xenix 1293d522f475Smrg exit ;; 1294d522f475Smrg i*86:skyos:*:*) 1295d522f475Smrg echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' 1296d522f475Smrg exit ;; 1297d522f475Smrg i*86:rdos:*:*) 1298d522f475Smrg echo ${UNAME_MACHINE}-pc-rdos 1299d522f475Smrg exit ;; 130020d2c4d2Smrg i*86:AROS:*:*) 130120d2c4d2Smrg echo ${UNAME_MACHINE}-pc-aros 130220d2c4d2Smrg exit ;; 1303d522f475Smrgesac 1304d522f475Smrg 1305d522f475Smrg#echo '(No uname command or uname output not recognized.)' 1>&2 1306d522f475Smrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 1307d522f475Smrg 1308d522f475Smrgeval $set_cc_for_build 1309d522f475Smrgcat >$dummy.c <<EOF 1310d522f475Smrg#ifdef _SEQUENT_ 1311d522f475Smrg# include <sys/types.h> 1312d522f475Smrg# include <sys/utsname.h> 1313d522f475Smrg#endif 1314d522f475Smrgmain () 1315d522f475Smrg{ 1316d522f475Smrg#if defined (sony) 1317d522f475Smrg#if defined (MIPSEB) 1318d522f475Smrg /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, 1319d522f475Smrg I don't know.... */ 1320d522f475Smrg printf ("mips-sony-bsd\n"); exit (0); 1321d522f475Smrg#else 1322d522f475Smrg#include <sys/param.h> 1323d522f475Smrg printf ("m68k-sony-newsos%s\n", 1324d522f475Smrg#ifdef NEWSOS4 1325d522f475Smrg "4" 1326d522f475Smrg#else 1327d522f475Smrg "" 1328d522f475Smrg#endif 1329d522f475Smrg ); exit (0); 1330d522f475Smrg#endif 1331d522f475Smrg#endif 1332d522f475Smrg 1333d522f475Smrg#if defined (__arm) && defined (__acorn) && defined (__unix) 1334d522f475Smrg printf ("arm-acorn-riscix\n"); exit (0); 1335d522f475Smrg#endif 1336d522f475Smrg 1337d522f475Smrg#if defined (hp300) && !defined (hpux) 1338d522f475Smrg printf ("m68k-hp-bsd\n"); exit (0); 1339d522f475Smrg#endif 1340d522f475Smrg 1341d522f475Smrg#if defined (NeXT) 1342d522f475Smrg#if !defined (__ARCHITECTURE__) 1343d522f475Smrg#define __ARCHITECTURE__ "m68k" 1344d522f475Smrg#endif 1345d522f475Smrg int version; 1346d522f475Smrg version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; 1347d522f475Smrg if (version < 4) 1348d522f475Smrg printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); 1349d522f475Smrg else 1350d522f475Smrg printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); 1351d522f475Smrg exit (0); 1352d522f475Smrg#endif 1353d522f475Smrg 1354d522f475Smrg#if defined (MULTIMAX) || defined (n16) 1355d522f475Smrg#if defined (UMAXV) 1356d522f475Smrg printf ("ns32k-encore-sysv\n"); exit (0); 1357d522f475Smrg#else 1358d522f475Smrg#if defined (CMU) 1359d522f475Smrg printf ("ns32k-encore-mach\n"); exit (0); 1360d522f475Smrg#else 1361d522f475Smrg printf ("ns32k-encore-bsd\n"); exit (0); 1362d522f475Smrg#endif 1363d522f475Smrg#endif 1364d522f475Smrg#endif 1365d522f475Smrg 1366d522f475Smrg#if defined (__386BSD__) 1367d522f475Smrg printf ("i386-pc-bsd\n"); exit (0); 1368d522f475Smrg#endif 1369d522f475Smrg 1370d522f475Smrg#if defined (sequent) 1371d522f475Smrg#if defined (i386) 1372d522f475Smrg printf ("i386-sequent-dynix\n"); exit (0); 1373d522f475Smrg#endif 1374d522f475Smrg#if defined (ns32000) 1375d522f475Smrg printf ("ns32k-sequent-dynix\n"); exit (0); 1376d522f475Smrg#endif 1377d522f475Smrg#endif 1378d522f475Smrg 1379d522f475Smrg#if defined (_SEQUENT_) 1380d522f475Smrg struct utsname un; 1381d522f475Smrg 1382d522f475Smrg uname(&un); 1383d522f475Smrg 1384d522f475Smrg if (strncmp(un.version, "V2", 2) == 0) { 1385d522f475Smrg printf ("i386-sequent-ptx2\n"); exit (0); 1386d522f475Smrg } 1387d522f475Smrg if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ 1388d522f475Smrg printf ("i386-sequent-ptx1\n"); exit (0); 1389d522f475Smrg } 1390d522f475Smrg printf ("i386-sequent-ptx\n"); exit (0); 1391d522f475Smrg 1392d522f475Smrg#endif 1393d522f475Smrg 1394d522f475Smrg#if defined (vax) 1395d522f475Smrg# if !defined (ultrix) 1396d522f475Smrg# include <sys/param.h> 1397d522f475Smrg# if defined (BSD) 1398d522f475Smrg# if BSD == 43 1399d522f475Smrg printf ("vax-dec-bsd4.3\n"); exit (0); 1400d522f475Smrg# else 1401d522f475Smrg# if BSD == 199006 1402d522f475Smrg printf ("vax-dec-bsd4.3reno\n"); exit (0); 1403d522f475Smrg# else 1404d522f475Smrg printf ("vax-dec-bsd\n"); exit (0); 1405d522f475Smrg# endif 1406d522f475Smrg# endif 1407d522f475Smrg# else 1408d522f475Smrg printf ("vax-dec-bsd\n"); exit (0); 1409d522f475Smrg# endif 1410d522f475Smrg# else 1411d522f475Smrg printf ("vax-dec-ultrix\n"); exit (0); 1412d522f475Smrg# endif 1413d522f475Smrg#endif 1414d522f475Smrg 1415d522f475Smrg#if defined (alliant) && defined (i860) 1416d522f475Smrg printf ("i860-alliant-bsd\n"); exit (0); 1417d522f475Smrg#endif 1418d522f475Smrg 1419d522f475Smrg exit (1); 1420d522f475Smrg} 1421d522f475SmrgEOF 1422d522f475Smrg 1423d522f475Smrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && 1424d522f475Smrg { echo "$SYSTEM_NAME"; exit; } 1425d522f475Smrg 1426d522f475Smrg# Apollos put the system type in the environment. 1427d522f475Smrg 1428d522f475Smrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } 1429d522f475Smrg 1430d522f475Smrg# Convex versions that predate uname can use getsysinfo(1) 1431d522f475Smrg 1432d522f475Smrgif [ -x /usr/convex/getsysinfo ] 1433d522f475Smrgthen 1434d522f475Smrg case `getsysinfo -f cpu_type` in 1435d522f475Smrg c1*) 1436d522f475Smrg echo c1-convex-bsd 1437d522f475Smrg exit ;; 1438d522f475Smrg c2*) 1439d522f475Smrg if getsysinfo -f scalar_acc 1440d522f475Smrg then echo c32-convex-bsd 1441d522f475Smrg else echo c2-convex-bsd 1442d522f475Smrg fi 1443d522f475Smrg exit ;; 1444d522f475Smrg c34*) 1445d522f475Smrg echo c34-convex-bsd 1446d522f475Smrg exit ;; 1447d522f475Smrg c38*) 1448d522f475Smrg echo c38-convex-bsd 1449d522f475Smrg exit ;; 1450d522f475Smrg c4*) 1451d522f475Smrg echo c4-convex-bsd 1452d522f475Smrg exit ;; 1453d522f475Smrg esac 1454d522f475Smrgfi 1455d522f475Smrg 1456d522f475Smrgcat >&2 <<EOF 1457d522f475Smrg$0: unable to guess system type 1458d522f475Smrg 1459d522f475SmrgThis script, last modified $timestamp, has failed to recognize 1460d522f475Smrgthe operating system you are using. It is advised that you 1461d522f475Smrgdownload the most up to date version of the config scripts from 1462d522f475Smrg 14632eaa94a1Schristos http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 1464d522f475Smrgand 14652eaa94a1Schristos http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 1466d522f475Smrg 1467d522f475SmrgIf the version you run ($0) is already up to date, please 1468d522f475Smrgsend the following data and any information you think might be 1469d522f475Smrgpertinent to <config-patches@gnu.org> in order to provide the needed 1470d522f475Smrginformation to handle your system. 1471d522f475Smrg 1472d522f475Smrgconfig.guess timestamp = $timestamp 1473d522f475Smrg 1474d522f475Smrguname -m = `(uname -m) 2>/dev/null || echo unknown` 1475d522f475Smrguname -r = `(uname -r) 2>/dev/null || echo unknown` 1476d522f475Smrguname -s = `(uname -s) 2>/dev/null || echo unknown` 1477d522f475Smrguname -v = `(uname -v) 2>/dev/null || echo unknown` 1478d522f475Smrg 1479d522f475Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 1480d522f475Smrg/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 1481d522f475Smrg 1482d522f475Smrghostinfo = `(hostinfo) 2>/dev/null` 1483d522f475Smrg/bin/universe = `(/bin/universe) 2>/dev/null` 1484d522f475Smrg/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 1485d522f475Smrg/bin/arch = `(/bin/arch) 2>/dev/null` 1486d522f475Smrg/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 1487d522f475Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 1488d522f475Smrg 1489d522f475SmrgUNAME_MACHINE = ${UNAME_MACHINE} 1490d522f475SmrgUNAME_RELEASE = ${UNAME_RELEASE} 1491d522f475SmrgUNAME_SYSTEM = ${UNAME_SYSTEM} 1492d522f475SmrgUNAME_VERSION = ${UNAME_VERSION} 1493d522f475SmrgEOF 1494d522f475Smrg 1495d522f475Smrgexit 1 1496d522f475Smrg 1497d522f475Smrg# Local variables: 1498d522f475Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 1499d522f475Smrg# time-stamp-start: "timestamp='" 1500d522f475Smrg# time-stamp-format: "%:y-%02m-%02d" 1501d522f475Smrg# time-stamp-end: "'" 1502d522f475Smrg# End: 1503