config.guess revision e39b573c
1d522f475Smrg#! /bin/sh 2d522f475Smrg# Attempt to guess a canonical system name. 3d522f475Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4e39b573cSmrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 5e39b573cSmrg# 2911 Free Software Foundation, Inc. 6d522f475Smrg 7e39b573cSmrgtimestamp='2011-01-01' 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, 60e39b573cSmrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 61e39b573cSmrgFree Software 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 95e39b573cSmrgtrap '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 ; 109e39b573cSmrgtrap "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 *) 184a1f3da82Smrg 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 223a1f3da82Smrg *4.0) 224d522f475Smrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 225d522f475Smrg ;; 226a1f3da82Smrg *5.*) 227a1f3da82Smrg 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'` 273e39b573cSmrg # Reset EXIT trap before exiting to avoid spurious non-zero exit code. 274e39b573cSmrg exitcode=$? 275e39b573cSmrg trap '' 0 276e39b573cSmrg exit $exitcode ;; 277d522f475Smrg Alpha\ *:Windows_NT*:*) 278d522f475Smrg # How do we know it's Interix rather than the generic POSIX subsystem? 279d522f475Smrg # Should we change UNAME_MACHINE based on the output of uname instead 280d522f475Smrg # of the specific Alpha model? 281d522f475Smrg echo alpha-pc-interix 282d522f475Smrg exit ;; 283d522f475Smrg 21064:Windows_NT:50:3) 284d522f475Smrg echo alpha-dec-winnt3.5 285d522f475Smrg exit ;; 286d522f475Smrg Amiga*:UNIX_System_V:4.0:*) 287d522f475Smrg echo m68k-unknown-sysv4 288d522f475Smrg exit ;; 289d522f475Smrg *:[Aa]miga[Oo][Ss]:*:*) 290d522f475Smrg echo ${UNAME_MACHINE}-unknown-amigaos 291d522f475Smrg exit ;; 292d522f475Smrg *:[Mm]orph[Oo][Ss]:*:*) 293d522f475Smrg echo ${UNAME_MACHINE}-unknown-morphos 294d522f475Smrg exit ;; 295d522f475Smrg *:OS/390:*:*) 296d522f475Smrg echo i370-ibm-openedition 297d522f475Smrg exit ;; 298d522f475Smrg *:z/VM:*:*) 299d522f475Smrg echo s390-ibm-zvmoe 300d522f475Smrg exit ;; 301d522f475Smrg *:OS400:*:*) 302a1f3da82Smrg echo powerpc-ibm-os400 303d522f475Smrg exit ;; 304d522f475Smrg arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 305d522f475Smrg echo arm-acorn-riscix${UNAME_RELEASE} 306d522f475Smrg exit ;; 307d522f475Smrg arm:riscos:*:*|arm:RISCOS:*:*) 308d522f475Smrg echo arm-unknown-riscos 309d522f475Smrg exit ;; 310d522f475Smrg SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 311d522f475Smrg echo hppa1.1-hitachi-hiuxmpp 312d522f475Smrg exit ;; 313d522f475Smrg Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 314d522f475Smrg # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 315d522f475Smrg if test "`(/bin/universe) 2>/dev/null`" = att ; then 316d522f475Smrg echo pyramid-pyramid-sysv3 317d522f475Smrg else 318d522f475Smrg echo pyramid-pyramid-bsd 319d522f475Smrg fi 320d522f475Smrg exit ;; 321d522f475Smrg NILE*:*:*:dcosx) 322d522f475Smrg echo pyramid-pyramid-svr4 323d522f475Smrg exit ;; 324d522f475Smrg DRS?6000:unix:4.0:6*) 325d522f475Smrg echo sparc-icl-nx6 326d522f475Smrg exit ;; 327d522f475Smrg DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 328d522f475Smrg case `/usr/bin/uname -p` in 329d522f475Smrg sparc) echo sparc-icl-nx7; exit ;; 330d522f475Smrg esac ;; 33120d2c4d2Smrg s390x:SunOS:*:*) 332e39b573cSmrg echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 333e39b573cSmrg exit ;; 334d522f475Smrg sun4H:SunOS:5.*:*) 335d522f475Smrg echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 336d522f475Smrg exit ;; 337d522f475Smrg sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 338d522f475Smrg echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 339d522f475Smrg exit ;; 34020d2c4d2Smrg i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) 34120d2c4d2Smrg echo i386-pc-auroraux${UNAME_RELEASE} 34220d2c4d2Smrg exit ;; 3432eaa94a1Schristos i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) 344956cc18dSsnj eval $set_cc_for_build 345956cc18dSsnj SUN_ARCH="i386" 346956cc18dSsnj # If there is a compiler, see if it is configured for 64-bit objects. 347956cc18dSsnj # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. 348956cc18dSsnj # This test works for both compilers. 349956cc18dSsnj if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 350956cc18dSsnj if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ 351956cc18dSsnj (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 352956cc18dSsnj grep IS_64BIT_ARCH >/dev/null 353956cc18dSsnj then 354956cc18dSsnj SUN_ARCH="x86_64" 355956cc18dSsnj fi 356956cc18dSsnj fi 357956cc18dSsnj echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 358d522f475Smrg exit ;; 359d522f475Smrg sun4*:SunOS:6*:*) 360d522f475Smrg # According to config.sub, this is the proper way to canonicalize 361d522f475Smrg # SunOS6. Hard to guess exactly what SunOS6 will be like, but 362d522f475Smrg # it's likely to be more like Solaris than SunOS4. 363d522f475Smrg echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 364d522f475Smrg exit ;; 365d522f475Smrg sun4*:SunOS:*:*) 366d522f475Smrg case "`/usr/bin/arch -k`" in 367d522f475Smrg Series*|S4*) 368d522f475Smrg UNAME_RELEASE=`uname -v` 369d522f475Smrg ;; 370d522f475Smrg esac 371d522f475Smrg # Japanese Language versions have a version number like `4.1.3-JL'. 372d522f475Smrg echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 373d522f475Smrg exit ;; 374d522f475Smrg sun3*:SunOS:*:*) 375d522f475Smrg echo m68k-sun-sunos${UNAME_RELEASE} 376d522f475Smrg exit ;; 377d522f475Smrg sun*:*:4.2BSD:*) 378d522f475Smrg UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 379d522f475Smrg test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 380d522f475Smrg case "`/bin/arch`" in 381d522f475Smrg sun3) 382d522f475Smrg echo m68k-sun-sunos${UNAME_RELEASE} 383d522f475Smrg ;; 384d522f475Smrg sun4) 385d522f475Smrg echo sparc-sun-sunos${UNAME_RELEASE} 386d522f475Smrg ;; 387d522f475Smrg esac 388d522f475Smrg exit ;; 389d522f475Smrg aushp:SunOS:*:*) 390d522f475Smrg echo sparc-auspex-sunos${UNAME_RELEASE} 391d522f475Smrg exit ;; 392d522f475Smrg # The situation for MiNT is a little confusing. The machine name 393d522f475Smrg # can be virtually everything (everything which is not 394d522f475Smrg # "atarist" or "atariste" at least should have a processor 395d522f475Smrg # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 396d522f475Smrg # to the lowercase version "mint" (or "freemint"). Finally 397d522f475Smrg # the system name "TOS" denotes a system which is actually not 398d522f475Smrg # MiNT. But MiNT is downward compatible to TOS, so this should 399d522f475Smrg # be no problem. 400d522f475Smrg atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 401a1f3da82Smrg echo m68k-atari-mint${UNAME_RELEASE} 402d522f475Smrg exit ;; 403d522f475Smrg atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 404d522f475Smrg echo m68k-atari-mint${UNAME_RELEASE} 405a1f3da82Smrg exit ;; 406d522f475Smrg *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 407a1f3da82Smrg echo m68k-atari-mint${UNAME_RELEASE} 408d522f475Smrg exit ;; 409d522f475Smrg milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 410a1f3da82Smrg echo m68k-milan-mint${UNAME_RELEASE} 411a1f3da82Smrg exit ;; 412d522f475Smrg hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 413a1f3da82Smrg echo m68k-hades-mint${UNAME_RELEASE} 414a1f3da82Smrg exit ;; 415d522f475Smrg *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 416a1f3da82Smrg echo m68k-unknown-mint${UNAME_RELEASE} 417a1f3da82Smrg exit ;; 418d522f475Smrg m68k:machten:*:*) 419d522f475Smrg echo m68k-apple-machten${UNAME_RELEASE} 420d522f475Smrg exit ;; 421d522f475Smrg powerpc:machten:*:*) 422d522f475Smrg echo powerpc-apple-machten${UNAME_RELEASE} 423d522f475Smrg exit ;; 424d522f475Smrg RISC*:Mach:*:*) 425d522f475Smrg echo mips-dec-mach_bsd4.3 426d522f475Smrg exit ;; 427d522f475Smrg RISC*:ULTRIX:*:*) 428d522f475Smrg echo mips-dec-ultrix${UNAME_RELEASE} 429d522f475Smrg exit ;; 430d522f475Smrg VAX*:ULTRIX*:*:*) 431d522f475Smrg echo vax-dec-ultrix${UNAME_RELEASE} 432d522f475Smrg exit ;; 433d522f475Smrg 2020:CLIX:*:* | 2430:CLIX:*:*) 434d522f475Smrg echo clipper-intergraph-clix${UNAME_RELEASE} 435d522f475Smrg exit ;; 436d522f475Smrg mips:*:*:UMIPS | mips:*:*:RISCos) 437d522f475Smrg eval $set_cc_for_build 438d522f475Smrg sed 's/^ //' << EOF >$dummy.c 439d522f475Smrg#ifdef __cplusplus 440d522f475Smrg#include <stdio.h> /* for printf() prototype */ 441d522f475Smrg int main (int argc, char *argv[]) { 442d522f475Smrg#else 443d522f475Smrg int main (argc, argv) int argc; char *argv[]; { 444d522f475Smrg#endif 445d522f475Smrg #if defined (host_mips) && defined (MIPSEB) 446d522f475Smrg #if defined (SYSTYPE_SYSV) 447d522f475Smrg printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 448d522f475Smrg #endif 449d522f475Smrg #if defined (SYSTYPE_SVR4) 450d522f475Smrg printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 451d522f475Smrg #endif 452d522f475Smrg #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 453d522f475Smrg printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 454d522f475Smrg #endif 455d522f475Smrg #endif 456d522f475Smrg exit (-1); 457d522f475Smrg } 458d522f475SmrgEOF 459d522f475Smrg $CC_FOR_BUILD -o $dummy $dummy.c && 460d522f475Smrg dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 461d522f475Smrg SYSTEM_NAME=`$dummy $dummyarg` && 462d522f475Smrg { echo "$SYSTEM_NAME"; exit; } 463d522f475Smrg echo mips-mips-riscos${UNAME_RELEASE} 464d522f475Smrg exit ;; 465d522f475Smrg Motorola:PowerMAX_OS:*:*) 466d522f475Smrg echo powerpc-motorola-powermax 467d522f475Smrg exit ;; 468d522f475Smrg Motorola:*:4.3:PL8-*) 469d522f475Smrg echo powerpc-harris-powermax 470d522f475Smrg exit ;; 471d522f475Smrg Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 472d522f475Smrg echo powerpc-harris-powermax 473d522f475Smrg exit ;; 474d522f475Smrg Night_Hawk:Power_UNIX:*:*) 475d522f475Smrg echo powerpc-harris-powerunix 476d522f475Smrg exit ;; 477d522f475Smrg m88k:CX/UX:7*:*) 478d522f475Smrg echo m88k-harris-cxux7 479d522f475Smrg exit ;; 480d522f475Smrg m88k:*:4*:R4*) 481d522f475Smrg echo m88k-motorola-sysv4 482d522f475Smrg exit ;; 483d522f475Smrg m88k:*:3*:R3*) 484d522f475Smrg echo m88k-motorola-sysv3 485d522f475Smrg exit ;; 486d522f475Smrg AViiON:dgux:*:*) 487a1f3da82Smrg # DG/UX returns AViiON for all architectures 488a1f3da82Smrg UNAME_PROCESSOR=`/usr/bin/uname -p` 489d522f475Smrg if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 490d522f475Smrg then 491d522f475Smrg if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 492d522f475Smrg [ ${TARGET_BINARY_INTERFACE}x = x ] 493d522f475Smrg then 494d522f475Smrg echo m88k-dg-dgux${UNAME_RELEASE} 495d522f475Smrg else 496d522f475Smrg echo m88k-dg-dguxbcs${UNAME_RELEASE} 497d522f475Smrg fi 498d522f475Smrg else 499d522f475Smrg echo i586-dg-dgux${UNAME_RELEASE} 500d522f475Smrg fi 501e39b573cSmrg exit ;; 502d522f475Smrg M88*:DolphinOS:*:*) # DolphinOS (SVR3) 503d522f475Smrg echo m88k-dolphin-sysv3 504d522f475Smrg exit ;; 505d522f475Smrg M88*:*:R3*:*) 506d522f475Smrg # Delta 88k system running SVR3 507d522f475Smrg echo m88k-motorola-sysv3 508d522f475Smrg exit ;; 509d522f475Smrg XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 510d522f475Smrg echo m88k-tektronix-sysv3 511d522f475Smrg exit ;; 512d522f475Smrg Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 513d522f475Smrg echo m68k-tektronix-bsd 514d522f475Smrg exit ;; 515d522f475Smrg *:IRIX*:*:*) 516d522f475Smrg echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 517d522f475Smrg exit ;; 518d522f475Smrg ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 519d522f475Smrg echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 520d522f475Smrg exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 521d522f475Smrg i*86:AIX:*:*) 522d522f475Smrg echo i386-ibm-aix 523d522f475Smrg exit ;; 524d522f475Smrg ia64:AIX:*:*) 525d522f475Smrg if [ -x /usr/bin/oslevel ] ; then 526d522f475Smrg IBM_REV=`/usr/bin/oslevel` 527d522f475Smrg else 528d522f475Smrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 529d522f475Smrg fi 530d522f475Smrg echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 531d522f475Smrg exit ;; 532d522f475Smrg *:AIX:2:3) 533d522f475Smrg if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 534d522f475Smrg eval $set_cc_for_build 535d522f475Smrg sed 's/^ //' << EOF >$dummy.c 536d522f475Smrg #include <sys/systemcfg.h> 537d522f475Smrg 538d522f475Smrg main() 539d522f475Smrg { 540d522f475Smrg if (!__power_pc()) 541d522f475Smrg exit(1); 542d522f475Smrg puts("powerpc-ibm-aix3.2.5"); 543d522f475Smrg exit(0); 544d522f475Smrg } 545d522f475SmrgEOF 546d522f475Smrg if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 547d522f475Smrg then 548d522f475Smrg echo "$SYSTEM_NAME" 549d522f475Smrg else 550d522f475Smrg echo rs6000-ibm-aix3.2.5 551d522f475Smrg fi 552d522f475Smrg elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 553d522f475Smrg echo rs6000-ibm-aix3.2.4 554d522f475Smrg else 555d522f475Smrg echo rs6000-ibm-aix3.2 556d522f475Smrg fi 557d522f475Smrg exit ;; 558a1f3da82Smrg *:AIX:*:[4567]) 559d522f475Smrg IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 560d522f475Smrg if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 561d522f475Smrg IBM_ARCH=rs6000 562d522f475Smrg else 563d522f475Smrg IBM_ARCH=powerpc 564d522f475Smrg fi 565d522f475Smrg if [ -x /usr/bin/oslevel ] ; then 566d522f475Smrg IBM_REV=`/usr/bin/oslevel` 567d522f475Smrg else 568d522f475Smrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 569d522f475Smrg fi 570d522f475Smrg echo ${IBM_ARCH}-ibm-aix${IBM_REV} 571d522f475Smrg exit ;; 572d522f475Smrg *:AIX:*:*) 573d522f475Smrg echo rs6000-ibm-aix 574d522f475Smrg exit ;; 575d522f475Smrg ibmrt:4.4BSD:*|romp-ibm:BSD:*) 576d522f475Smrg echo romp-ibm-bsd4.4 577d522f475Smrg exit ;; 578d522f475Smrg ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 579d522f475Smrg echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 580d522f475Smrg exit ;; # report: romp-ibm BSD 4.3 581d522f475Smrg *:BOSX:*:*) 582d522f475Smrg echo rs6000-bull-bosx 583d522f475Smrg exit ;; 584d522f475Smrg DPX/2?00:B.O.S.:*:*) 585d522f475Smrg echo m68k-bull-sysv3 586d522f475Smrg exit ;; 587d522f475Smrg 9000/[34]??:4.3bsd:1.*:*) 588d522f475Smrg echo m68k-hp-bsd 589d522f475Smrg exit ;; 590d522f475Smrg hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 591d522f475Smrg echo m68k-hp-bsd4.4 592d522f475Smrg exit ;; 593d522f475Smrg 9000/[34678]??:HP-UX:*:*) 594d522f475Smrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 595d522f475Smrg case "${UNAME_MACHINE}" in 596d522f475Smrg 9000/31? ) HP_ARCH=m68000 ;; 597d522f475Smrg 9000/[34]?? ) HP_ARCH=m68k ;; 598d522f475Smrg 9000/[678][0-9][0-9]) 599d522f475Smrg if [ -x /usr/bin/getconf ]; then 600d522f475Smrg sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 601a1f3da82Smrg sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 602a1f3da82Smrg case "${sc_cpu_version}" in 603d522f475Smrg 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 604d522f475Smrg 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 605d522f475Smrg 532) # CPU_PA_RISC2_0 606d522f475Smrg case "${sc_kernel_bits}" in 607d522f475Smrg 32) HP_ARCH="hppa2.0n" ;; 608d522f475Smrg 64) HP_ARCH="hppa2.0w" ;; 609d522f475Smrg '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 610d522f475Smrg esac ;; 611d522f475Smrg esac 612d522f475Smrg fi 613d522f475Smrg if [ "${HP_ARCH}" = "" ]; then 614d522f475Smrg eval $set_cc_for_build 615d522f475Smrg sed 's/^ //' << EOF >$dummy.c 616d522f475Smrg 617d522f475Smrg #define _HPUX_SOURCE 618d522f475Smrg #include <stdlib.h> 619d522f475Smrg #include <unistd.h> 620d522f475Smrg 621d522f475Smrg int main () 622d522f475Smrg { 623d522f475Smrg #if defined(_SC_KERNEL_BITS) 624d522f475Smrg long bits = sysconf(_SC_KERNEL_BITS); 625d522f475Smrg #endif 626d522f475Smrg long cpu = sysconf (_SC_CPU_VERSION); 627d522f475Smrg 628d522f475Smrg switch (cpu) 629d522f475Smrg { 630d522f475Smrg case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 631d522f475Smrg case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 632d522f475Smrg case CPU_PA_RISC2_0: 633d522f475Smrg #if defined(_SC_KERNEL_BITS) 634d522f475Smrg switch (bits) 635d522f475Smrg { 636d522f475Smrg case 64: puts ("hppa2.0w"); break; 637d522f475Smrg case 32: puts ("hppa2.0n"); break; 638d522f475Smrg default: puts ("hppa2.0"); break; 639d522f475Smrg } break; 640d522f475Smrg #else /* !defined(_SC_KERNEL_BITS) */ 641d522f475Smrg puts ("hppa2.0"); break; 642d522f475Smrg #endif 643d522f475Smrg default: puts ("hppa1.0"); break; 644d522f475Smrg } 645d522f475Smrg exit (0); 646d522f475Smrg } 647d522f475SmrgEOF 648d522f475Smrg (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 649d522f475Smrg test -z "$HP_ARCH" && HP_ARCH=hppa 650d522f475Smrg fi ;; 651d522f475Smrg esac 652d522f475Smrg if [ ${HP_ARCH} = "hppa2.0w" ] 653d522f475Smrg then 654d522f475Smrg eval $set_cc_for_build 655d522f475Smrg 656d522f475Smrg # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 657d522f475Smrg # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 658d522f475Smrg # generating 64-bit code. GNU and HP use different nomenclature: 659d522f475Smrg # 660d522f475Smrg # $ CC_FOR_BUILD=cc ./config.guess 661d522f475Smrg # => hppa2.0w-hp-hpux11.23 662d522f475Smrg # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 663d522f475Smrg # => hppa64-hp-hpux11.23 664d522f475Smrg 665d522f475Smrg if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | 66620d2c4d2Smrg grep -q __LP64__ 667d522f475Smrg then 668d522f475Smrg HP_ARCH="hppa2.0w" 669d522f475Smrg else 670d522f475Smrg HP_ARCH="hppa64" 671d522f475Smrg fi 672d522f475Smrg fi 673d522f475Smrg echo ${HP_ARCH}-hp-hpux${HPUX_REV} 674d522f475Smrg exit ;; 675d522f475Smrg ia64:HP-UX:*:*) 676d522f475Smrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 677d522f475Smrg echo ia64-hp-hpux${HPUX_REV} 678d522f475Smrg exit ;; 679d522f475Smrg 3050*:HI-UX:*:*) 680d522f475Smrg eval $set_cc_for_build 681d522f475Smrg sed 's/^ //' << EOF >$dummy.c 682d522f475Smrg #include <unistd.h> 683d522f475Smrg int 684d522f475Smrg main () 685d522f475Smrg { 686d522f475Smrg long cpu = sysconf (_SC_CPU_VERSION); 687d522f475Smrg /* The order matters, because CPU_IS_HP_MC68K erroneously returns 688d522f475Smrg true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 689d522f475Smrg results, however. */ 690d522f475Smrg if (CPU_IS_PA_RISC (cpu)) 691d522f475Smrg { 692d522f475Smrg switch (cpu) 693d522f475Smrg { 694d522f475Smrg case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 695d522f475Smrg case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 696d522f475Smrg case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 697d522f475Smrg default: puts ("hppa-hitachi-hiuxwe2"); break; 698d522f475Smrg } 699d522f475Smrg } 700d522f475Smrg else if (CPU_IS_HP_MC68K (cpu)) 701d522f475Smrg puts ("m68k-hitachi-hiuxwe2"); 702d522f475Smrg else puts ("unknown-hitachi-hiuxwe2"); 703d522f475Smrg exit (0); 704d522f475Smrg } 705d522f475SmrgEOF 706d522f475Smrg $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 707d522f475Smrg { echo "$SYSTEM_NAME"; exit; } 708d522f475Smrg echo unknown-hitachi-hiuxwe2 709d522f475Smrg exit ;; 710d522f475Smrg 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 711d522f475Smrg echo hppa1.1-hp-bsd 712d522f475Smrg exit ;; 713d522f475Smrg 9000/8??:4.3bsd:*:*) 714d522f475Smrg echo hppa1.0-hp-bsd 715d522f475Smrg exit ;; 716d522f475Smrg *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 717d522f475Smrg echo hppa1.0-hp-mpeix 718d522f475Smrg exit ;; 719d522f475Smrg hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 720d522f475Smrg echo hppa1.1-hp-osf 721d522f475Smrg exit ;; 722d522f475Smrg hp8??:OSF1:*:*) 723d522f475Smrg echo hppa1.0-hp-osf 724d522f475Smrg exit ;; 725d522f475Smrg i*86:OSF1:*:*) 726d522f475Smrg if [ -x /usr/sbin/sysversion ] ; then 727d522f475Smrg echo ${UNAME_MACHINE}-unknown-osf1mk 728d522f475Smrg else 729d522f475Smrg echo ${UNAME_MACHINE}-unknown-osf1 730d522f475Smrg fi 731d522f475Smrg exit ;; 732d522f475Smrg parisc*:Lites*:*:*) 733d522f475Smrg echo hppa1.1-hp-lites 734d522f475Smrg exit ;; 735d522f475Smrg C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 736d522f475Smrg echo c1-convex-bsd 737a1f3da82Smrg exit ;; 738d522f475Smrg C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 739d522f475Smrg if getsysinfo -f scalar_acc 740d522f475Smrg then echo c32-convex-bsd 741d522f475Smrg else echo c2-convex-bsd 742d522f475Smrg fi 743a1f3da82Smrg exit ;; 744d522f475Smrg C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 745d522f475Smrg echo c34-convex-bsd 746a1f3da82Smrg exit ;; 747d522f475Smrg C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 748d522f475Smrg echo c38-convex-bsd 749a1f3da82Smrg exit ;; 750d522f475Smrg C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 751d522f475Smrg echo c4-convex-bsd 752a1f3da82Smrg exit ;; 753d522f475Smrg CRAY*Y-MP:*:*:*) 754d522f475Smrg echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 755d522f475Smrg exit ;; 756d522f475Smrg CRAY*[A-Z]90:*:*:*) 757d522f475Smrg echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 758d522f475Smrg | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 759d522f475Smrg -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 760d522f475Smrg -e 's/\.[^.]*$/.X/' 761d522f475Smrg exit ;; 762d522f475Smrg CRAY*TS:*:*:*) 763d522f475Smrg echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 764d522f475Smrg exit ;; 765d522f475Smrg CRAY*T3E:*:*:*) 766d522f475Smrg echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 767d522f475Smrg exit ;; 768d522f475Smrg CRAY*SV1:*:*:*) 769d522f475Smrg echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 770d522f475Smrg exit ;; 771d522f475Smrg *:UNICOS/mp:*:*) 772d522f475Smrg echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 773d522f475Smrg exit ;; 774d522f475Smrg F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 775d522f475Smrg FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 776a1f3da82Smrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 777a1f3da82Smrg FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 778a1f3da82Smrg echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 779a1f3da82Smrg exit ;; 780d522f475Smrg 5000:UNIX_System_V:4.*:*) 781a1f3da82Smrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 782a1f3da82Smrg FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` 783a1f3da82Smrg echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 784d522f475Smrg exit ;; 785d522f475Smrg i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 786d522f475Smrg echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 787d522f475Smrg exit ;; 788d522f475Smrg sparc*:BSD/OS:*:*) 789d522f475Smrg echo sparc-unknown-bsdi${UNAME_RELEASE} 790d522f475Smrg exit ;; 791d522f475Smrg *:BSD/OS:*:*) 792d522f475Smrg echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 793d522f475Smrg exit ;; 794d522f475Smrg *:FreeBSD:*:*) 795d522f475Smrg case ${UNAME_MACHINE} in 796d522f475Smrg pc98) 797d522f475Smrg echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 798d522f475Smrg amd64) 799d522f475Smrg echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 800d522f475Smrg *) 801d522f475Smrg echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 802d522f475Smrg esac 803d522f475Smrg exit ;; 804d522f475Smrg i*:CYGWIN*:*) 805d522f475Smrg echo ${UNAME_MACHINE}-pc-cygwin 806d522f475Smrg exit ;; 807d522f475Smrg *:MINGW*:*) 808d522f475Smrg echo ${UNAME_MACHINE}-pc-mingw32 809d522f475Smrg exit ;; 810d522f475Smrg i*:windows32*:*) 811a1f3da82Smrg # uname -m includes "-pc" on this system. 812a1f3da82Smrg echo ${UNAME_MACHINE}-mingw32 813d522f475Smrg exit ;; 814d522f475Smrg i*:PW*:*) 815d522f475Smrg echo ${UNAME_MACHINE}-pc-pw32 816d522f475Smrg exit ;; 81720d2c4d2Smrg *:Interix*:*) 818a1f3da82Smrg case ${UNAME_MACHINE} in 8192eaa94a1Schristos x86) 820d522f475Smrg echo i586-pc-interix${UNAME_RELEASE} 821d522f475Smrg exit ;; 82220d2c4d2Smrg authenticamd | genuineintel | EM64T) 823d522f475Smrg echo x86_64-unknown-interix${UNAME_RELEASE} 824d522f475Smrg exit ;; 8252eaa94a1Schristos IA64) 826e39b573cSmrg echo ia64-unknown-interix${UNAME_RELEASE} 827e39b573cSmrg exit ;; 828d522f475Smrg esac ;; 829d522f475Smrg [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 830d522f475Smrg echo i${UNAME_MACHINE}-pc-mks 831d522f475Smrg exit ;; 83220d2c4d2Smrg 8664:Windows_NT:*) 83320d2c4d2Smrg echo x86_64-pc-mks 83420d2c4d2Smrg exit ;; 835d522f475Smrg i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 836d522f475Smrg # How do we know it's Interix rather than the generic POSIX subsystem? 837d522f475Smrg # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 838d522f475Smrg # UNAME_MACHINE based on the output of uname instead of i386? 839d522f475Smrg echo i586-pc-interix 840d522f475Smrg exit ;; 841d522f475Smrg i*:UWIN*:*) 842d522f475Smrg echo ${UNAME_MACHINE}-pc-uwin 843d522f475Smrg exit ;; 844d522f475Smrg amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 845d522f475Smrg echo x86_64-unknown-cygwin 846d522f475Smrg exit ;; 847d522f475Smrg p*:CYGWIN*:*) 848d522f475Smrg echo powerpcle-unknown-cygwin 849d522f475Smrg exit ;; 850d522f475Smrg prep*:SunOS:5.*:*) 851d522f475Smrg echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 852d522f475Smrg exit ;; 853d522f475Smrg *:GNU:*:*) 854d522f475Smrg # the GNU system 855d522f475Smrg echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 856d522f475Smrg exit ;; 857d522f475Smrg *:GNU/*:*:*) 858d522f475Smrg # other systems with GNU libc and userland 859d522f475Smrg echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu 860d522f475Smrg exit ;; 861d522f475Smrg i*86:Minix:*:*) 862d522f475Smrg echo ${UNAME_MACHINE}-pc-minix 863d522f475Smrg exit ;; 86420d2c4d2Smrg alpha:Linux:*:*) 86520d2c4d2Smrg case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 866a1f3da82Smrg EV5) UNAME_MACHINE=alphaev5 ;; 867a1f3da82Smrg EV56) UNAME_MACHINE=alphaev56 ;; 868a1f3da82Smrg PCA56) UNAME_MACHINE=alphapca56 ;; 869a1f3da82Smrg PCA57) UNAME_MACHINE=alphapca56 ;; 870a1f3da82Smrg EV6) UNAME_MACHINE=alphaev6 ;; 871a1f3da82Smrg EV67) UNAME_MACHINE=alphaev67 ;; 872a1f3da82Smrg EV68*) UNAME_MACHINE=alphaev68 ;; 873a1f3da82Smrg esac 87420d2c4d2Smrg objdump --private-headers /bin/sh | grep -q ld.so.1 87520d2c4d2Smrg if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi 87620d2c4d2Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 87720d2c4d2Smrg exit ;; 878d522f475Smrg arm*:Linux:*:*) 8792eaa94a1Schristos eval $set_cc_for_build 880a1f3da82Smrg if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null | \ 881a1f3da82Smrg grep -q __ARM_EABI__ 8822eaa94a1Schristos then 8832eaa94a1Schristos echo ${UNAME_MACHINE}-unknown-linux-gnu 8842eaa94a1Schristos else 8852eaa94a1Schristos echo ${UNAME_MACHINE}-unknown-linux-gnueabi 8862eaa94a1Schristos fi 887d522f475Smrg exit ;; 888d522f475Smrg avr32*:Linux:*:*) 889d522f475Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 890d522f475Smrg exit ;; 891d522f475Smrg cris:Linux:*:*) 892d522f475Smrg echo cris-axis-linux-gnu 893d522f475Smrg exit ;; 894d522f475Smrg crisv32:Linux:*:*) 895d522f475Smrg echo crisv32-axis-linux-gnu 896d522f475Smrg exit ;; 897d522f475Smrg frv:Linux:*:*) 898a1f3da82Smrg echo frv-unknown-linux-gnu 899d522f475Smrg exit ;; 90020d2c4d2Smrg i*86:Linux:*:*) 90120d2c4d2Smrg LIBC=gnu 90220d2c4d2Smrg eval $set_cc_for_build 903a1f3da82Smrg sed 's/^ //' << EOF >$dummy.c 90420d2c4d2Smrg #ifdef __dietlibc__ 90520d2c4d2Smrg LIBC=dietlibc 90620d2c4d2Smrg #endif 90720d2c4d2SmrgEOF 90820d2c4d2Smrg eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` 90920d2c4d2Smrg echo "${UNAME_MACHINE}-pc-linux-${LIBC}" 91020d2c4d2Smrg exit ;; 911d522f475Smrg ia64:Linux:*:*) 912d522f475Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 913d522f475Smrg exit ;; 914d522f475Smrg m32r*:Linux:*:*) 915d522f475Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 916d522f475Smrg exit ;; 917d522f475Smrg m68*:Linux:*:*) 918d522f475Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 919d522f475Smrg exit ;; 92020d2c4d2Smrg mips:Linux:*:* | mips64:Linux:*:*) 921d522f475Smrg eval $set_cc_for_build 922d522f475Smrg sed 's/^ //' << EOF >$dummy.c 923d522f475Smrg #undef CPU 92420d2c4d2Smrg #undef ${UNAME_MACHINE} 92520d2c4d2Smrg #undef ${UNAME_MACHINE}el 926d522f475Smrg #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 92720d2c4d2Smrg CPU=${UNAME_MACHINE}el 928d522f475Smrg #else 929d522f475Smrg #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 93020d2c4d2Smrg CPU=${UNAME_MACHINE} 931d522f475Smrg #else 932d522f475Smrg CPU= 933d522f475Smrg #endif 934d522f475Smrg #endif 935d522f475SmrgEOF 93620d2c4d2Smrg eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` 937d522f475Smrg test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 938d522f475Smrg ;; 939d522f475Smrg or32:Linux:*:*) 940e39b573cSmrg echo or32-unknown-linux-gnu 941e39b573cSmrg exit ;; 942956cc18dSsnj padre:Linux:*:*) 943956cc18dSsnj echo sparc-unknown-linux-gnu 944956cc18dSsnj exit ;; 94520d2c4d2Smrg parisc64:Linux:*:* | hppa64:Linux:*:*) 946e39b573cSmrg echo hppa64-unknown-linux-gnu 947e39b573cSmrg exit ;; 948d522f475Smrg parisc:Linux:*:* | hppa:Linux:*:*) 949d522f475Smrg # Look for CPU level 950d522f475Smrg case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 951d522f475Smrg PA7*) echo hppa1.1-unknown-linux-gnu ;; 952d522f475Smrg PA8*) echo hppa2.0-unknown-linux-gnu ;; 953d522f475Smrg *) echo hppa-unknown-linux-gnu ;; 954d522f475Smrg esac 955d522f475Smrg exit ;; 95620d2c4d2Smrg ppc64:Linux:*:*) 95720d2c4d2Smrg echo powerpc64-unknown-linux-gnu 95820d2c4d2Smrg exit ;; 95920d2c4d2Smrg ppc:Linux:*:*) 96020d2c4d2Smrg echo powerpc-unknown-linux-gnu 961d522f475Smrg exit ;; 962d522f475Smrg s390:Linux:*:* | s390x:Linux:*:*) 963d522f475Smrg echo ${UNAME_MACHINE}-ibm-linux 964d522f475Smrg exit ;; 965d522f475Smrg sh64*:Linux:*:*) 966a1f3da82Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 967d522f475Smrg exit ;; 968d522f475Smrg sh*:Linux:*:*) 969d522f475Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 970d522f475Smrg exit ;; 971d522f475Smrg sparc:Linux:*:* | sparc64:Linux:*:*) 972d522f475Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 973d522f475Smrg exit ;; 974a1f3da82Smrg tile*:Linux:*:*) 975a1f3da82Smrg echo ${UNAME_MACHINE}-tilera-linux-gnu 976a1f3da82Smrg exit ;; 977d522f475Smrg vax:Linux:*:*) 978d522f475Smrg echo ${UNAME_MACHINE}-dec-linux-gnu 979d522f475Smrg exit ;; 980d522f475Smrg x86_64:Linux:*:*) 981d522f475Smrg echo x86_64-unknown-linux-gnu 982d522f475Smrg exit ;; 9832eaa94a1Schristos xtensa*:Linux:*:*) 984a1f3da82Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 985d522f475Smrg exit ;; 986d522f475Smrg i*86:DYNIX/ptx:4*:*) 987d522f475Smrg # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 988d522f475Smrg # earlier versions are messed up and put the nodename in both 989d522f475Smrg # sysname and nodename. 990d522f475Smrg echo i386-sequent-sysv4 991d522f475Smrg exit ;; 992d522f475Smrg i*86:UNIX_SV:4.2MP:2.*) 993a1f3da82Smrg # Unixware is an offshoot of SVR4, but it has its own version 994a1f3da82Smrg # number series starting with 2... 995a1f3da82Smrg # I am not positive that other SVR4 systems won't match this, 996d522f475Smrg # I just have to hope. -- rms. 997a1f3da82Smrg # Use sysv4.2uw... so that sysv4* matches it. 998d522f475Smrg echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 999d522f475Smrg exit ;; 1000d522f475Smrg i*86:OS/2:*:*) 1001d522f475Smrg # If we were able to find `uname', then EMX Unix compatibility 1002d522f475Smrg # is probably installed. 1003d522f475Smrg echo ${UNAME_MACHINE}-pc-os2-emx 1004d522f475Smrg exit ;; 1005d522f475Smrg i*86:XTS-300:*:STOP) 1006d522f475Smrg echo ${UNAME_MACHINE}-unknown-stop 1007d522f475Smrg exit ;; 1008d522f475Smrg i*86:atheos:*:*) 1009d522f475Smrg echo ${UNAME_MACHINE}-unknown-atheos 1010d522f475Smrg exit ;; 1011d522f475Smrg i*86:syllable:*:*) 1012d522f475Smrg echo ${UNAME_MACHINE}-pc-syllable 1013d522f475Smrg exit ;; 101420d2c4d2Smrg i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) 1015d522f475Smrg echo i386-unknown-lynxos${UNAME_RELEASE} 1016d522f475Smrg exit ;; 1017d522f475Smrg i*86:*DOS:*:*) 1018d522f475Smrg echo ${UNAME_MACHINE}-pc-msdosdjgpp 1019d522f475Smrg exit ;; 1020d522f475Smrg i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 1021d522f475Smrg UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 1022d522f475Smrg if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 1023d522f475Smrg echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 1024d522f475Smrg else 1025d522f475Smrg echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 1026d522f475Smrg fi 1027d522f475Smrg exit ;; 1028d522f475Smrg i*86:*:5:[678]*) 1029a1f3da82Smrg # UnixWare 7.x, OpenUNIX and OpenServer 6. 1030d522f475Smrg case `/bin/uname -X | grep "^Machine"` in 1031d522f475Smrg *486*) UNAME_MACHINE=i486 ;; 1032d522f475Smrg *Pentium) UNAME_MACHINE=i586 ;; 1033d522f475Smrg *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 1034d522f475Smrg esac 1035d522f475Smrg echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 1036d522f475Smrg exit ;; 1037d522f475Smrg i*86:*:3.2:*) 1038d522f475Smrg if test -f /usr/options/cb.name; then 1039d522f475Smrg UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 1040d522f475Smrg echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 1041d522f475Smrg elif /bin/uname -X 2>/dev/null >/dev/null ; then 1042d522f475Smrg UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 1043d522f475Smrg (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 1044d522f475Smrg (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 1045d522f475Smrg && UNAME_MACHINE=i586 1046d522f475Smrg (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 1047d522f475Smrg && UNAME_MACHINE=i686 1048d522f475Smrg (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 1049d522f475Smrg && UNAME_MACHINE=i686 1050d522f475Smrg echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 1051d522f475Smrg else 1052d522f475Smrg echo ${UNAME_MACHINE}-pc-sysv32 1053d522f475Smrg fi 1054d522f475Smrg exit ;; 1055d522f475Smrg pc:*:*:*) 1056d522f475Smrg # Left here for compatibility: 1057a1f3da82Smrg # uname -m prints for DJGPP always 'pc', but it prints nothing about 1058a1f3da82Smrg # the processor, so we play safe by assuming i586. 105920d2c4d2Smrg # Note: whatever this is, it MUST be the same as what config.sub 106020d2c4d2Smrg # prints for the "djgpp" host, or else GDB configury will decide that 106120d2c4d2Smrg # this is a cross-build. 106220d2c4d2Smrg echo i586-pc-msdosdjgpp 1063a1f3da82Smrg exit ;; 1064d522f475Smrg Intel:Mach:3*:*) 1065d522f475Smrg echo i386-pc-mach3 1066d522f475Smrg exit ;; 1067d522f475Smrg paragon:*:*:*) 1068d522f475Smrg echo i860-intel-osf1 1069d522f475Smrg exit ;; 1070d522f475Smrg i860:*:4.*:*) # i860-SVR4 1071d522f475Smrg if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 1072d522f475Smrg echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 1073d522f475Smrg else # Add other i860-SVR4 vendors below as they are discovered. 1074d522f475Smrg echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 1075d522f475Smrg fi 1076d522f475Smrg exit ;; 1077d522f475Smrg mini*:CTIX:SYS*5:*) 1078d522f475Smrg # "miniframe" 1079d522f475Smrg echo m68010-convergent-sysv 1080d522f475Smrg exit ;; 1081d522f475Smrg mc68k:UNIX:SYSTEM5:3.51m) 1082d522f475Smrg echo m68k-convergent-sysv 1083d522f475Smrg exit ;; 1084d522f475Smrg M680?0:D-NIX:5.3:*) 1085d522f475Smrg echo m68k-diab-dnix 1086d522f475Smrg exit ;; 1087d522f475Smrg M68*:*:R3V[5678]*:*) 1088d522f475Smrg test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 1089d522f475Smrg 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) 1090d522f475Smrg OS_REL='' 1091d522f475Smrg test -r /etc/.relid \ 1092d522f475Smrg && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1093d522f475Smrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1094d522f475Smrg && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 1095d522f475Smrg /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1096d522f475Smrg && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1097d522f475Smrg 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 1098a1f3da82Smrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1099a1f3da82Smrg && { echo i486-ncr-sysv4; exit; } ;; 1100956cc18dSsnj NCR*:*:4.2:* | MPRAS*:*:4.2:*) 1101956cc18dSsnj OS_REL='.3' 1102956cc18dSsnj test -r /etc/.relid \ 1103956cc18dSsnj && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1104956cc18dSsnj /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1105956cc18dSsnj && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 1106956cc18dSsnj /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1107956cc18dSsnj && { echo i586-ncr-sysv4.3${OS_REL}; exit; } 1108956cc18dSsnj /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ 1109956cc18dSsnj && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1110d522f475Smrg m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 1111d522f475Smrg echo m68k-unknown-lynxos${UNAME_RELEASE} 1112d522f475Smrg exit ;; 1113d522f475Smrg mc68030:UNIX_System_V:4.*:*) 1114d522f475Smrg echo m68k-atari-sysv4 1115d522f475Smrg exit ;; 1116d522f475Smrg TSUNAMI:LynxOS:2.*:*) 1117d522f475Smrg echo sparc-unknown-lynxos${UNAME_RELEASE} 1118d522f475Smrg exit ;; 1119d522f475Smrg rs6000:LynxOS:2.*:*) 1120d522f475Smrg echo rs6000-unknown-lynxos${UNAME_RELEASE} 1121d522f475Smrg exit ;; 112220d2c4d2Smrg PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) 1123d522f475Smrg echo powerpc-unknown-lynxos${UNAME_RELEASE} 1124d522f475Smrg exit ;; 1125d522f475Smrg SM[BE]S:UNIX_SV:*:*) 1126d522f475Smrg echo mips-dde-sysv${UNAME_RELEASE} 1127d522f475Smrg exit ;; 1128d522f475Smrg RM*:ReliantUNIX-*:*:*) 1129d522f475Smrg echo mips-sni-sysv4 1130d522f475Smrg exit ;; 1131d522f475Smrg RM*:SINIX-*:*:*) 1132d522f475Smrg echo mips-sni-sysv4 1133d522f475Smrg exit ;; 1134d522f475Smrg *:SINIX-*:*:*) 1135d522f475Smrg if uname -p 2>/dev/null >/dev/null ; then 1136d522f475Smrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 1137d522f475Smrg echo ${UNAME_MACHINE}-sni-sysv4 1138d522f475Smrg else 1139d522f475Smrg echo ns32k-sni-sysv 1140d522f475Smrg fi 1141d522f475Smrg exit ;; 1142d522f475Smrg PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 1143a1f3da82Smrg # says <Richard.M.Bartel@ccMail.Census.GOV> 1144a1f3da82Smrg echo i586-unisys-sysv4 1145a1f3da82Smrg exit ;; 1146d522f475Smrg *:UNIX_System_V:4*:FTX*) 1147d522f475Smrg # From Gerald Hewes <hewes@openmarket.com>. 1148d522f475Smrg # How about differentiating between stratus architectures? -djm 1149d522f475Smrg echo hppa1.1-stratus-sysv4 1150d522f475Smrg exit ;; 1151d522f475Smrg *:*:*:FTX*) 1152d522f475Smrg # From seanf@swdc.stratus.com. 1153d522f475Smrg echo i860-stratus-sysv4 1154d522f475Smrg exit ;; 1155d522f475Smrg i*86:VOS:*:*) 1156d522f475Smrg # From Paul.Green@stratus.com. 1157d522f475Smrg echo ${UNAME_MACHINE}-stratus-vos 1158d522f475Smrg exit ;; 1159d522f475Smrg *:VOS:*:*) 1160d522f475Smrg # From Paul.Green@stratus.com. 1161d522f475Smrg echo hppa1.1-stratus-vos 1162d522f475Smrg exit ;; 1163d522f475Smrg mc68*:A/UX:*:*) 1164d522f475Smrg echo m68k-apple-aux${UNAME_RELEASE} 1165d522f475Smrg exit ;; 1166d522f475Smrg news*:NEWS-OS:6*:*) 1167d522f475Smrg echo mips-sony-newsos6 1168d522f475Smrg exit ;; 1169d522f475Smrg R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 1170d522f475Smrg if [ -d /usr/nec ]; then 1171d522f475Smrg echo mips-nec-sysv${UNAME_RELEASE} 1172d522f475Smrg else 1173d522f475Smrg echo mips-unknown-sysv${UNAME_RELEASE} 1174d522f475Smrg fi 1175a1f3da82Smrg exit ;; 1176d522f475Smrg BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 1177d522f475Smrg echo powerpc-be-beos 1178d522f475Smrg exit ;; 1179d522f475Smrg BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 1180d522f475Smrg echo powerpc-apple-beos 1181d522f475Smrg exit ;; 1182d522f475Smrg BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 1183d522f475Smrg echo i586-pc-beos 1184d522f475Smrg exit ;; 11852eaa94a1Schristos BePC:Haiku:*:*) # Haiku running on Intel PC compatible. 11862eaa94a1Schristos echo i586-pc-haiku 11872eaa94a1Schristos exit ;; 1188d522f475Smrg SX-4:SUPER-UX:*:*) 1189d522f475Smrg echo sx4-nec-superux${UNAME_RELEASE} 1190d522f475Smrg exit ;; 1191d522f475Smrg SX-5:SUPER-UX:*:*) 1192d522f475Smrg echo sx5-nec-superux${UNAME_RELEASE} 1193d522f475Smrg exit ;; 1194d522f475Smrg SX-6:SUPER-UX:*:*) 1195d522f475Smrg echo sx6-nec-superux${UNAME_RELEASE} 1196d522f475Smrg exit ;; 1197d522f475Smrg SX-7:SUPER-UX:*:*) 1198d522f475Smrg echo sx7-nec-superux${UNAME_RELEASE} 1199d522f475Smrg exit ;; 1200d522f475Smrg SX-8:SUPER-UX:*:*) 1201d522f475Smrg echo sx8-nec-superux${UNAME_RELEASE} 1202d522f475Smrg exit ;; 1203d522f475Smrg SX-8R:SUPER-UX:*:*) 1204d522f475Smrg echo sx8r-nec-superux${UNAME_RELEASE} 1205d522f475Smrg exit ;; 1206d522f475Smrg Power*:Rhapsody:*:*) 1207d522f475Smrg echo powerpc-apple-rhapsody${UNAME_RELEASE} 1208d522f475Smrg exit ;; 1209d522f475Smrg *:Rhapsody:*:*) 1210d522f475Smrg echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 1211d522f475Smrg exit ;; 1212d522f475Smrg *:Darwin:*:*) 1213d522f475Smrg UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 1214d522f475Smrg case $UNAME_PROCESSOR in 121520d2c4d2Smrg i386) 121620d2c4d2Smrg eval $set_cc_for_build 121720d2c4d2Smrg if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 1218a1f3da82Smrg if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ 1219a1f3da82Smrg (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 1220a1f3da82Smrg grep IS_64BIT_ARCH >/dev/null 1221a1f3da82Smrg then 1222a1f3da82Smrg UNAME_PROCESSOR="x86_64" 1223a1f3da82Smrg fi 122420d2c4d2Smrg fi ;; 1225d522f475Smrg unknown) UNAME_PROCESSOR=powerpc ;; 1226d522f475Smrg esac 1227d522f475Smrg echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 1228d522f475Smrg exit ;; 1229d522f475Smrg *:procnto*:*:* | *:QNX:[0123456789]*:*) 1230d522f475Smrg UNAME_PROCESSOR=`uname -p` 1231d522f475Smrg if test "$UNAME_PROCESSOR" = "x86"; then 1232a1f3da82Smrg UNAME_PROCESSOR=i386 1233a1f3da82Smrg UNAME_MACHINE=pc 1234d522f475Smrg fi 1235d522f475Smrg echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 1236d522f475Smrg exit ;; 1237d522f475Smrg *:QNX:*:4*) 1238d522f475Smrg echo i386-pc-qnx 1239d522f475Smrg exit ;; 1240a1f3da82Smrg NEO-?:NONSTOP_KERNEL:*:*) 1241a1f3da82Smrg echo neo-tandem-nsk${UNAME_RELEASE} 1242a1f3da82Smrg exit ;; 1243d522f475Smrg NSE-?:NONSTOP_KERNEL:*:*) 1244d522f475Smrg echo nse-tandem-nsk${UNAME_RELEASE} 1245d522f475Smrg exit ;; 1246d522f475Smrg NSR-?:NONSTOP_KERNEL:*:*) 1247d522f475Smrg echo nsr-tandem-nsk${UNAME_RELEASE} 1248d522f475Smrg exit ;; 1249d522f475Smrg *:NonStop-UX:*:*) 1250d522f475Smrg echo mips-compaq-nonstopux 1251d522f475Smrg exit ;; 1252d522f475Smrg BS2000:POSIX*:*:*) 1253d522f475Smrg echo bs2000-siemens-sysv 1254d522f475Smrg exit ;; 1255d522f475Smrg DS/*:UNIX_System_V:*:*) 1256d522f475Smrg echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 1257d522f475Smrg exit ;; 1258d522f475Smrg *:Plan9:*:*) 1259d522f475Smrg # "uname -m" is not consistent, so use $cputype instead. 386 1260d522f475Smrg # is converted to i386 for consistency with other x86 1261d522f475Smrg # operating systems. 1262d522f475Smrg if test "$cputype" = "386"; then 1263d522f475Smrg UNAME_MACHINE=i386 1264d522f475Smrg else 1265d522f475Smrg UNAME_MACHINE="$cputype" 1266d522f475Smrg fi 1267d522f475Smrg echo ${UNAME_MACHINE}-unknown-plan9 1268d522f475Smrg exit ;; 1269d522f475Smrg *:TOPS-10:*:*) 1270d522f475Smrg echo pdp10-unknown-tops10 1271d522f475Smrg exit ;; 1272d522f475Smrg *:TENEX:*:*) 1273d522f475Smrg echo pdp10-unknown-tenex 1274d522f475Smrg exit ;; 1275d522f475Smrg KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 1276d522f475Smrg echo pdp10-dec-tops20 1277d522f475Smrg exit ;; 1278d522f475Smrg XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 1279d522f475Smrg echo pdp10-xkl-tops20 1280d522f475Smrg exit ;; 1281d522f475Smrg *:TOPS-20:*:*) 1282d522f475Smrg echo pdp10-unknown-tops20 1283d522f475Smrg exit ;; 1284d522f475Smrg *:ITS:*:*) 1285d522f475Smrg echo pdp10-unknown-its 1286d522f475Smrg exit ;; 1287d522f475Smrg SEI:*:*:SEIUX) 1288a1f3da82Smrg echo mips-sei-seiux${UNAME_RELEASE} 1289d522f475Smrg exit ;; 1290d522f475Smrg *:DragonFly:*:*) 1291d522f475Smrg echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 1292d522f475Smrg exit ;; 1293d522f475Smrg *:*VMS:*:*) 1294a1f3da82Smrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 1295d522f475Smrg case "${UNAME_MACHINE}" in 1296d522f475Smrg A*) echo alpha-dec-vms ; exit ;; 1297d522f475Smrg I*) echo ia64-dec-vms ; exit ;; 1298d522f475Smrg V*) echo vax-dec-vms ; exit ;; 1299d522f475Smrg esac ;; 1300d522f475Smrg *:XENIX:*:SysV) 1301d522f475Smrg echo i386-pc-xenix 1302d522f475Smrg exit ;; 1303d522f475Smrg i*86:skyos:*:*) 1304d522f475Smrg echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' 1305d522f475Smrg exit ;; 1306d522f475Smrg i*86:rdos:*:*) 1307d522f475Smrg echo ${UNAME_MACHINE}-pc-rdos 1308d522f475Smrg exit ;; 130920d2c4d2Smrg i*86:AROS:*:*) 131020d2c4d2Smrg echo ${UNAME_MACHINE}-pc-aros 131120d2c4d2Smrg exit ;; 1312d522f475Smrgesac 1313d522f475Smrg 1314d522f475Smrg#echo '(No uname command or uname output not recognized.)' 1>&2 1315d522f475Smrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 1316d522f475Smrg 1317d522f475Smrgeval $set_cc_for_build 1318d522f475Smrgcat >$dummy.c <<EOF 1319d522f475Smrg#ifdef _SEQUENT_ 1320d522f475Smrg# include <sys/types.h> 1321d522f475Smrg# include <sys/utsname.h> 1322d522f475Smrg#endif 1323d522f475Smrgmain () 1324d522f475Smrg{ 1325d522f475Smrg#if defined (sony) 1326d522f475Smrg#if defined (MIPSEB) 1327d522f475Smrg /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, 1328d522f475Smrg I don't know.... */ 1329d522f475Smrg printf ("mips-sony-bsd\n"); exit (0); 1330d522f475Smrg#else 1331d522f475Smrg#include <sys/param.h> 1332d522f475Smrg printf ("m68k-sony-newsos%s\n", 1333d522f475Smrg#ifdef NEWSOS4 1334d522f475Smrg "4" 1335d522f475Smrg#else 1336d522f475Smrg "" 1337d522f475Smrg#endif 1338d522f475Smrg ); exit (0); 1339d522f475Smrg#endif 1340d522f475Smrg#endif 1341d522f475Smrg 1342d522f475Smrg#if defined (__arm) && defined (__acorn) && defined (__unix) 1343d522f475Smrg printf ("arm-acorn-riscix\n"); exit (0); 1344d522f475Smrg#endif 1345d522f475Smrg 1346d522f475Smrg#if defined (hp300) && !defined (hpux) 1347d522f475Smrg printf ("m68k-hp-bsd\n"); exit (0); 1348d522f475Smrg#endif 1349d522f475Smrg 1350d522f475Smrg#if defined (NeXT) 1351d522f475Smrg#if !defined (__ARCHITECTURE__) 1352d522f475Smrg#define __ARCHITECTURE__ "m68k" 1353d522f475Smrg#endif 1354d522f475Smrg int version; 1355d522f475Smrg version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; 1356d522f475Smrg if (version < 4) 1357d522f475Smrg printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); 1358d522f475Smrg else 1359d522f475Smrg printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); 1360d522f475Smrg exit (0); 1361d522f475Smrg#endif 1362d522f475Smrg 1363d522f475Smrg#if defined (MULTIMAX) || defined (n16) 1364d522f475Smrg#if defined (UMAXV) 1365d522f475Smrg printf ("ns32k-encore-sysv\n"); exit (0); 1366d522f475Smrg#else 1367d522f475Smrg#if defined (CMU) 1368d522f475Smrg printf ("ns32k-encore-mach\n"); exit (0); 1369d522f475Smrg#else 1370d522f475Smrg printf ("ns32k-encore-bsd\n"); exit (0); 1371d522f475Smrg#endif 1372d522f475Smrg#endif 1373d522f475Smrg#endif 1374d522f475Smrg 1375d522f475Smrg#if defined (__386BSD__) 1376d522f475Smrg printf ("i386-pc-bsd\n"); exit (0); 1377d522f475Smrg#endif 1378d522f475Smrg 1379d522f475Smrg#if defined (sequent) 1380d522f475Smrg#if defined (i386) 1381d522f475Smrg printf ("i386-sequent-dynix\n"); exit (0); 1382d522f475Smrg#endif 1383d522f475Smrg#if defined (ns32000) 1384d522f475Smrg printf ("ns32k-sequent-dynix\n"); exit (0); 1385d522f475Smrg#endif 1386d522f475Smrg#endif 1387d522f475Smrg 1388d522f475Smrg#if defined (_SEQUENT_) 1389d522f475Smrg struct utsname un; 1390d522f475Smrg 1391d522f475Smrg uname(&un); 1392d522f475Smrg 1393d522f475Smrg if (strncmp(un.version, "V2", 2) == 0) { 1394d522f475Smrg printf ("i386-sequent-ptx2\n"); exit (0); 1395d522f475Smrg } 1396d522f475Smrg if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ 1397d522f475Smrg printf ("i386-sequent-ptx1\n"); exit (0); 1398d522f475Smrg } 1399d522f475Smrg printf ("i386-sequent-ptx\n"); exit (0); 1400d522f475Smrg 1401d522f475Smrg#endif 1402d522f475Smrg 1403d522f475Smrg#if defined (vax) 1404d522f475Smrg# if !defined (ultrix) 1405d522f475Smrg# include <sys/param.h> 1406d522f475Smrg# if defined (BSD) 1407d522f475Smrg# if BSD == 43 1408d522f475Smrg printf ("vax-dec-bsd4.3\n"); exit (0); 1409d522f475Smrg# else 1410d522f475Smrg# if BSD == 199006 1411d522f475Smrg printf ("vax-dec-bsd4.3reno\n"); exit (0); 1412d522f475Smrg# else 1413d522f475Smrg printf ("vax-dec-bsd\n"); exit (0); 1414d522f475Smrg# endif 1415d522f475Smrg# endif 1416d522f475Smrg# else 1417d522f475Smrg printf ("vax-dec-bsd\n"); exit (0); 1418d522f475Smrg# endif 1419d522f475Smrg# else 1420d522f475Smrg printf ("vax-dec-ultrix\n"); exit (0); 1421d522f475Smrg# endif 1422d522f475Smrg#endif 1423d522f475Smrg 1424d522f475Smrg#if defined (alliant) && defined (i860) 1425d522f475Smrg printf ("i860-alliant-bsd\n"); exit (0); 1426d522f475Smrg#endif 1427d522f475Smrg 1428d522f475Smrg exit (1); 1429d522f475Smrg} 1430d522f475SmrgEOF 1431d522f475Smrg 1432d522f475Smrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && 1433d522f475Smrg { echo "$SYSTEM_NAME"; exit; } 1434d522f475Smrg 1435d522f475Smrg# Apollos put the system type in the environment. 1436d522f475Smrg 1437d522f475Smrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } 1438d522f475Smrg 1439d522f475Smrg# Convex versions that predate uname can use getsysinfo(1) 1440d522f475Smrg 1441d522f475Smrgif [ -x /usr/convex/getsysinfo ] 1442d522f475Smrgthen 1443d522f475Smrg case `getsysinfo -f cpu_type` in 1444d522f475Smrg c1*) 1445d522f475Smrg echo c1-convex-bsd 1446d522f475Smrg exit ;; 1447d522f475Smrg c2*) 1448d522f475Smrg if getsysinfo -f scalar_acc 1449d522f475Smrg then echo c32-convex-bsd 1450d522f475Smrg else echo c2-convex-bsd 1451d522f475Smrg fi 1452d522f475Smrg exit ;; 1453d522f475Smrg c34*) 1454d522f475Smrg echo c34-convex-bsd 1455d522f475Smrg exit ;; 1456d522f475Smrg c38*) 1457d522f475Smrg echo c38-convex-bsd 1458d522f475Smrg exit ;; 1459d522f475Smrg c4*) 1460d522f475Smrg echo c4-convex-bsd 1461d522f475Smrg exit ;; 1462d522f475Smrg esac 1463d522f475Smrgfi 1464d522f475Smrg 1465d522f475Smrgcat >&2 <<EOF 1466d522f475Smrg$0: unable to guess system type 1467d522f475Smrg 1468d522f475SmrgThis script, last modified $timestamp, has failed to recognize 1469d522f475Smrgthe operating system you are using. It is advised that you 1470d522f475Smrgdownload the most up to date version of the config scripts from 1471d522f475Smrg 14722eaa94a1Schristos http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 1473d522f475Smrgand 14742eaa94a1Schristos http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 1475d522f475Smrg 1476d522f475SmrgIf the version you run ($0) is already up to date, please 1477d522f475Smrgsend the following data and any information you think might be 1478d522f475Smrgpertinent to <config-patches@gnu.org> in order to provide the needed 1479d522f475Smrginformation to handle your system. 1480d522f475Smrg 1481d522f475Smrgconfig.guess timestamp = $timestamp 1482d522f475Smrg 1483d522f475Smrguname -m = `(uname -m) 2>/dev/null || echo unknown` 1484d522f475Smrguname -r = `(uname -r) 2>/dev/null || echo unknown` 1485d522f475Smrguname -s = `(uname -s) 2>/dev/null || echo unknown` 1486d522f475Smrguname -v = `(uname -v) 2>/dev/null || echo unknown` 1487d522f475Smrg 1488d522f475Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 1489d522f475Smrg/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 1490d522f475Smrg 1491d522f475Smrghostinfo = `(hostinfo) 2>/dev/null` 1492d522f475Smrg/bin/universe = `(/bin/universe) 2>/dev/null` 1493d522f475Smrg/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 1494d522f475Smrg/bin/arch = `(/bin/arch) 2>/dev/null` 1495d522f475Smrg/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 1496d522f475Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 1497d522f475Smrg 1498d522f475SmrgUNAME_MACHINE = ${UNAME_MACHINE} 1499d522f475SmrgUNAME_RELEASE = ${UNAME_RELEASE} 1500d522f475SmrgUNAME_SYSTEM = ${UNAME_SYSTEM} 1501d522f475SmrgUNAME_VERSION = ${UNAME_VERSION} 1502d522f475SmrgEOF 1503d522f475Smrg 1504d522f475Smrgexit 1 1505d522f475Smrg 1506d522f475Smrg# Local variables: 1507d522f475Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 1508d522f475Smrg# time-stamp-start: "timestamp='" 1509d522f475Smrg# time-stamp-format: "%:y-%02m-%02d" 1510d522f475Smrg# time-stamp-end: "'" 1511d522f475Smrg# End: 1512