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