config.guess revision ca08ab68
12c393a42Smrg#! /bin/sh
22c393a42Smrg# Attempt to guess a canonical system name.
32c393a42Smrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4ca08ab68Smrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
5ca08ab68Smrg#   2011, 2012 Free Software Foundation, Inc.
62c393a42Smrg
7ca08ab68Smrgtimestamp='2012-02-10'
82c393a42Smrg
92c393a42Smrg# This file is free software; you can redistribute it and/or modify it
102c393a42Smrg# under the terms of the GNU General Public License as published by
112c393a42Smrg# the Free Software Foundation; either version 2 of the License, or
122c393a42Smrg# (at your option) any later version.
132c393a42Smrg#
142c393a42Smrg# This program is distributed in the hope that it will be useful, but
152c393a42Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of
162c393a42Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
172c393a42Smrg# General Public License for more details.
182c393a42Smrg#
192c393a42Smrg# You should have received a copy of the GNU General Public License
20ca08ab68Smrg# along with this program; if not, see <http://www.gnu.org/licenses/>.
212c393a42Smrg#
222c393a42Smrg# As a special exception to the GNU General Public License, if you
232c393a42Smrg# distribute this file as part of a program that contains a
242c393a42Smrg# configuration script generated by Autoconf, you may include it under
252c393a42Smrg# the same distribution terms that you use for the rest of that program.
262c393a42Smrg
272c393a42Smrg
28ca08ab68Smrg# Originally written by Per Bothner.  Please send patches (context
29ca08ab68Smrg# diff format) to <config-patches@gnu.org> and include a ChangeLog
30ca08ab68Smrg# entry.
312c393a42Smrg#
322c393a42Smrg# This script attempts to guess a canonical system name similar to
332c393a42Smrg# config.sub.  If it succeeds, it prints the system name on stdout, and
342c393a42Smrg# exits with 0.  Otherwise, it exits with 1.
352c393a42Smrg#
36ca08ab68Smrg# You can get the latest version of this script from:
37ca08ab68Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
382c393a42Smrg
392c393a42Smrgme=`echo "$0" | sed -e 's,.*/,,'`
402c393a42Smrg
412c393a42Smrgusage="\
422c393a42SmrgUsage: $0 [OPTION]
432c393a42Smrg
442c393a42SmrgOutput the configuration name of the system \`$me' is run on.
452c393a42Smrg
462c393a42SmrgOperation modes:
472c393a42Smrg  -h, --help         print this help, then exit
482c393a42Smrg  -t, --time-stamp   print date of last modification, then exit
492c393a42Smrg  -v, --version      print version number, then exit
502c393a42Smrg
512c393a42SmrgReport bugs and patches to <config-patches@gnu.org>."
522c393a42Smrg
532c393a42Smrgversion="\
542c393a42SmrgGNU config.guess ($timestamp)
552c393a42Smrg
562c393a42SmrgOriginally written by Per Bothner.
57ca08ab68SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
58ca08ab68Smrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
59ca08ab68SmrgFree Software Foundation, Inc.
602c393a42Smrg
612c393a42SmrgThis is free software; see the source for copying conditions.  There is NO
622c393a42Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
632c393a42Smrg
642c393a42Smrghelp="
652c393a42SmrgTry \`$me --help' for more information."
662c393a42Smrg
672c393a42Smrg# Parse command line
682c393a42Smrgwhile test $# -gt 0 ; do
692c393a42Smrg  case $1 in
702c393a42Smrg    --time-stamp | --time* | -t )
712c393a42Smrg       echo "$timestamp" ; exit ;;
722c393a42Smrg    --version | -v )
732c393a42Smrg       echo "$version" ; exit ;;
742c393a42Smrg    --help | --h* | -h )
752c393a42Smrg       echo "$usage"; exit ;;
762c393a42Smrg    -- )     # Stop option processing
772c393a42Smrg       shift; break ;;
782c393a42Smrg    - )	# Use stdin as input.
792c393a42Smrg       break ;;
802c393a42Smrg    -* )
812c393a42Smrg       echo "$me: invalid option $1$help" >&2
822c393a42Smrg       exit 1 ;;
832c393a42Smrg    * )
842c393a42Smrg       break ;;
852c393a42Smrg  esac
862c393a42Smrgdone
872c393a42Smrg
882c393a42Smrgif test $# != 0; then
892c393a42Smrg  echo "$me: too many arguments$help" >&2
902c393a42Smrg  exit 1
912c393a42Smrgfi
922c393a42Smrg
932c393a42Smrgtrap 'exit 1' 1 2 15
942c393a42Smrg
952c393a42Smrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
962c393a42Smrg# compiler to aid in system detection is discouraged as it requires
972c393a42Smrg# temporary files to be created and, as you can see below, it is a
982c393a42Smrg# headache to deal with in a portable fashion.
992c393a42Smrg
1002c393a42Smrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
1012c393a42Smrg# use `HOST_CC' if defined, but it is deprecated.
1022c393a42Smrg
1032c393a42Smrg# Portable tmp directory creation inspired by the Autoconf team.
1042c393a42Smrg
1052c393a42Smrgset_cc_for_build='
1062c393a42Smrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
1072c393a42Smrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
1082c393a42Smrg: ${TMPDIR=/tmp} ;
1092c393a42Smrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
1102c393a42Smrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
1112c393a42Smrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
1122c393a42Smrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
1132c393a42Smrgdummy=$tmp/dummy ;
1142c393a42Smrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
1152c393a42Smrgcase $CC_FOR_BUILD,$HOST_CC,$CC in
1162c393a42Smrg ,,)    echo "int x;" > $dummy.c ;
1172c393a42Smrg	for c in cc gcc c89 c99 ; do
1182c393a42Smrg	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
1192c393a42Smrg	     CC_FOR_BUILD="$c"; break ;
1202c393a42Smrg	  fi ;
1212c393a42Smrg	done ;
1222c393a42Smrg	if test x"$CC_FOR_BUILD" = x ; then
1232c393a42Smrg	  CC_FOR_BUILD=no_compiler_found ;
1242c393a42Smrg	fi
1252c393a42Smrg	;;
1262c393a42Smrg ,,*)   CC_FOR_BUILD=$CC ;;
1272c393a42Smrg ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
1282c393a42Smrgesac ; set_cc_for_build= ;'
1292c393a42Smrg
1302c393a42Smrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
1312c393a42Smrg# (ghazi@noc.rutgers.edu 1994-08-24)
1322c393a42Smrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then
1332c393a42Smrg	PATH=$PATH:/.attbin ; export PATH
1342c393a42Smrgfi
1352c393a42Smrg
1362c393a42SmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
1372c393a42SmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
1382c393a42SmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
1392c393a42SmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
1402c393a42Smrg
1412c393a42Smrg# Note: order is significant - the case branches are not exclusive.
1422c393a42Smrg
1432c393a42Smrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
1442c393a42Smrg    *:NetBSD:*:*)
1452c393a42Smrg	# NetBSD (nbsd) targets should (where applicable) match one or
146ca08ab68Smrg	# more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
1472c393a42Smrg	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
1482c393a42Smrg	# switched to ELF, *-*-netbsd* would select the old
1492c393a42Smrg	# object file format.  This provides both forward
1502c393a42Smrg	# compatibility and a consistent mechanism for selecting the
1512c393a42Smrg	# object file format.
1522c393a42Smrg	#
1532c393a42Smrg	# Note: NetBSD doesn't particularly care about the vendor
1542c393a42Smrg	# portion of the name.  We always set it to "unknown".
1552c393a42Smrg	sysctl="sysctl -n hw.machine_arch"
1562c393a42Smrg	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
1572c393a42Smrg	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
1582c393a42Smrg	case "${UNAME_MACHINE_ARCH}" in
1592c393a42Smrg	    armeb) machine=armeb-unknown ;;
1602c393a42Smrg	    arm*) machine=arm-unknown ;;
1612c393a42Smrg	    sh3el) machine=shl-unknown ;;
1622c393a42Smrg	    sh3eb) machine=sh-unknown ;;
1632c393a42Smrg	    sh5el) machine=sh5le-unknown ;;
1642c393a42Smrg	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
1652c393a42Smrg	esac
1662c393a42Smrg	# The Operating System including object format, if it has switched
1672c393a42Smrg	# to ELF recently, or will in the future.
1682c393a42Smrg	case "${UNAME_MACHINE_ARCH}" in
1692c393a42Smrg	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
1702c393a42Smrg		eval $set_cc_for_build
1712c393a42Smrg		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
172ca08ab68Smrg			| grep -q __ELF__
1732c393a42Smrg		then
1742c393a42Smrg		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
1752c393a42Smrg		    # Return netbsd for either.  FIX?
1762c393a42Smrg		    os=netbsd
1772c393a42Smrg		else
1782c393a42Smrg		    os=netbsdelf
1792c393a42Smrg		fi
1802c393a42Smrg		;;
1812c393a42Smrg	    *)
182ca08ab68Smrg		os=netbsd
1832c393a42Smrg		;;
1842c393a42Smrg	esac
1852c393a42Smrg	# The OS release
1862c393a42Smrg	# Debian GNU/NetBSD machines have a different userland, and
1872c393a42Smrg	# thus, need a distinct triplet. However, they do not need
1882c393a42Smrg	# kernel version information, so it can be replaced with a
1892c393a42Smrg	# suitable tag, in the style of linux-gnu.
1902c393a42Smrg	case "${UNAME_VERSION}" in
1912c393a42Smrg	    Debian*)
1922c393a42Smrg		release='-gnu'
1932c393a42Smrg		;;
1942c393a42Smrg	    *)
1952c393a42Smrg		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
1962c393a42Smrg		;;
1972c393a42Smrg	esac
1982c393a42Smrg	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
1992c393a42Smrg	# contains redundant information, the shorter form:
2002c393a42Smrg	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
2012c393a42Smrg	echo "${machine}-${os}${release}"
2022c393a42Smrg	exit ;;
2032c393a42Smrg    *:OpenBSD:*:*)
2042c393a42Smrg	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
2052c393a42Smrg	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
2062c393a42Smrg	exit ;;
2072c393a42Smrg    *:ekkoBSD:*:*)
2082c393a42Smrg	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
2092c393a42Smrg	exit ;;
2102c393a42Smrg    *:SolidBSD:*:*)
2112c393a42Smrg	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
2122c393a42Smrg	exit ;;
2132c393a42Smrg    macppc:MirBSD:*:*)
2142c393a42Smrg	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
2152c393a42Smrg	exit ;;
2162c393a42Smrg    *:MirBSD:*:*)
2172c393a42Smrg	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
2182c393a42Smrg	exit ;;
2192c393a42Smrg    alpha:OSF1:*:*)
2202c393a42Smrg	case $UNAME_RELEASE in
2212c393a42Smrg	*4.0)
2222c393a42Smrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
2232c393a42Smrg		;;
2242c393a42Smrg	*5.*)
225ca08ab68Smrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
2262c393a42Smrg		;;
2272c393a42Smrg	esac
2282c393a42Smrg	# According to Compaq, /usr/sbin/psrinfo has been available on
2292c393a42Smrg	# OSF/1 and Tru64 systems produced since 1995.  I hope that
2302c393a42Smrg	# covers most systems running today.  This code pipes the CPU
2312c393a42Smrg	# types through head -n 1, so we only detect the type of CPU 0.
2322c393a42Smrg	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
2332c393a42Smrg	case "$ALPHA_CPU_TYPE" in
2342c393a42Smrg	    "EV4 (21064)")
2352c393a42Smrg		UNAME_MACHINE="alpha" ;;
2362c393a42Smrg	    "EV4.5 (21064)")
2372c393a42Smrg		UNAME_MACHINE="alpha" ;;
2382c393a42Smrg	    "LCA4 (21066/21068)")
2392c393a42Smrg		UNAME_MACHINE="alpha" ;;
2402c393a42Smrg	    "EV5 (21164)")
2412c393a42Smrg		UNAME_MACHINE="alphaev5" ;;
2422c393a42Smrg	    "EV5.6 (21164A)")
2432c393a42Smrg		UNAME_MACHINE="alphaev56" ;;
2442c393a42Smrg	    "EV5.6 (21164PC)")
2452c393a42Smrg		UNAME_MACHINE="alphapca56" ;;
2462c393a42Smrg	    "EV5.7 (21164PC)")
2472c393a42Smrg		UNAME_MACHINE="alphapca57" ;;
2482c393a42Smrg	    "EV6 (21264)")
2492c393a42Smrg		UNAME_MACHINE="alphaev6" ;;
2502c393a42Smrg	    "EV6.7 (21264A)")
2512c393a42Smrg		UNAME_MACHINE="alphaev67" ;;
2522c393a42Smrg	    "EV6.8CB (21264C)")
2532c393a42Smrg		UNAME_MACHINE="alphaev68" ;;
2542c393a42Smrg	    "EV6.8AL (21264B)")
2552c393a42Smrg		UNAME_MACHINE="alphaev68" ;;
2562c393a42Smrg	    "EV6.8CX (21264D)")
2572c393a42Smrg		UNAME_MACHINE="alphaev68" ;;
2582c393a42Smrg	    "EV6.9A (21264/EV69A)")
2592c393a42Smrg		UNAME_MACHINE="alphaev69" ;;
2602c393a42Smrg	    "EV7 (21364)")
2612c393a42Smrg		UNAME_MACHINE="alphaev7" ;;
2622c393a42Smrg	    "EV7.9 (21364A)")
2632c393a42Smrg		UNAME_MACHINE="alphaev79" ;;
2642c393a42Smrg	esac
2652c393a42Smrg	# A Pn.n version is a patched version.
2662c393a42Smrg	# A Vn.n version is a released version.
2672c393a42Smrg	# A Tn.n version is a released field test version.
2682c393a42Smrg	# A Xn.n version is an unreleased experimental baselevel.
2692c393a42Smrg	# 1.2 uses "1.2" for uname -r.
2702c393a42Smrg	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
271ca08ab68Smrg	# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
272ca08ab68Smrg	exitcode=$?
273ca08ab68Smrg	trap '' 0
274ca08ab68Smrg	exit $exitcode ;;
2752c393a42Smrg    Alpha\ *:Windows_NT*:*)
2762c393a42Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
2772c393a42Smrg	# Should we change UNAME_MACHINE based on the output of uname instead
2782c393a42Smrg	# of the specific Alpha model?
2792c393a42Smrg	echo alpha-pc-interix
2802c393a42Smrg	exit ;;
2812c393a42Smrg    21064:Windows_NT:50:3)
2822c393a42Smrg	echo alpha-dec-winnt3.5
2832c393a42Smrg	exit ;;
2842c393a42Smrg    Amiga*:UNIX_System_V:4.0:*)
2852c393a42Smrg	echo m68k-unknown-sysv4
2862c393a42Smrg	exit ;;
2872c393a42Smrg    *:[Aa]miga[Oo][Ss]:*:*)
2882c393a42Smrg	echo ${UNAME_MACHINE}-unknown-amigaos
2892c393a42Smrg	exit ;;
2902c393a42Smrg    *:[Mm]orph[Oo][Ss]:*:*)
2912c393a42Smrg	echo ${UNAME_MACHINE}-unknown-morphos
2922c393a42Smrg	exit ;;
2932c393a42Smrg    *:OS/390:*:*)
2942c393a42Smrg	echo i370-ibm-openedition
2952c393a42Smrg	exit ;;
2962c393a42Smrg    *:z/VM:*:*)
2972c393a42Smrg	echo s390-ibm-zvmoe
2982c393a42Smrg	exit ;;
2992c393a42Smrg    *:OS400:*:*)
300ca08ab68Smrg	echo powerpc-ibm-os400
3012c393a42Smrg	exit ;;
3022c393a42Smrg    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
3032c393a42Smrg	echo arm-acorn-riscix${UNAME_RELEASE}
3042c393a42Smrg	exit ;;
3052c393a42Smrg    arm:riscos:*:*|arm:RISCOS:*:*)
3062c393a42Smrg	echo arm-unknown-riscos
3072c393a42Smrg	exit ;;
3082c393a42Smrg    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
3092c393a42Smrg	echo hppa1.1-hitachi-hiuxmpp
3102c393a42Smrg	exit ;;
3112c393a42Smrg    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
3122c393a42Smrg	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
3132c393a42Smrg	if test "`(/bin/universe) 2>/dev/null`" = att ; then
3142c393a42Smrg		echo pyramid-pyramid-sysv3
3152c393a42Smrg	else
3162c393a42Smrg		echo pyramid-pyramid-bsd
3172c393a42Smrg	fi
3182c393a42Smrg	exit ;;
3192c393a42Smrg    NILE*:*:*:dcosx)
3202c393a42Smrg	echo pyramid-pyramid-svr4
3212c393a42Smrg	exit ;;
3222c393a42Smrg    DRS?6000:unix:4.0:6*)
3232c393a42Smrg	echo sparc-icl-nx6
3242c393a42Smrg	exit ;;
3252c393a42Smrg    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
3262c393a42Smrg	case `/usr/bin/uname -p` in
3272c393a42Smrg	    sparc) echo sparc-icl-nx7; exit ;;
3282c393a42Smrg	esac ;;
329ca08ab68Smrg    s390x:SunOS:*:*)
330ca08ab68Smrg	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
331ca08ab68Smrg	exit ;;
3322c393a42Smrg    sun4H:SunOS:5.*:*)
3332c393a42Smrg	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3342c393a42Smrg	exit ;;
3352c393a42Smrg    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
3362c393a42Smrg	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3372c393a42Smrg	exit ;;
338ca08ab68Smrg    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
339ca08ab68Smrg	echo i386-pc-auroraux${UNAME_RELEASE}
340ca08ab68Smrg	exit ;;
3412c393a42Smrg    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
342ca08ab68Smrg	eval $set_cc_for_build
343ca08ab68Smrg	SUN_ARCH="i386"
344ca08ab68Smrg	# If there is a compiler, see if it is configured for 64-bit objects.
345ca08ab68Smrg	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
346ca08ab68Smrg	# This test works for both compilers.
347ca08ab68Smrg	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
348ca08ab68Smrg	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
349ca08ab68Smrg		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
350ca08ab68Smrg		grep IS_64BIT_ARCH >/dev/null
351ca08ab68Smrg	    then
352ca08ab68Smrg		SUN_ARCH="x86_64"
353ca08ab68Smrg	    fi
354ca08ab68Smrg	fi
355ca08ab68Smrg	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3562c393a42Smrg	exit ;;
3572c393a42Smrg    sun4*:SunOS:6*:*)
3582c393a42Smrg	# According to config.sub, this is the proper way to canonicalize
3592c393a42Smrg	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
3602c393a42Smrg	# it's likely to be more like Solaris than SunOS4.
3612c393a42Smrg	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3622c393a42Smrg	exit ;;
3632c393a42Smrg    sun4*:SunOS:*:*)
3642c393a42Smrg	case "`/usr/bin/arch -k`" in
3652c393a42Smrg	    Series*|S4*)
3662c393a42Smrg		UNAME_RELEASE=`uname -v`
3672c393a42Smrg		;;
3682c393a42Smrg	esac
3692c393a42Smrg	# Japanese Language versions have a version number like `4.1.3-JL'.
3702c393a42Smrg	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
3712c393a42Smrg	exit ;;
3722c393a42Smrg    sun3*:SunOS:*:*)
3732c393a42Smrg	echo m68k-sun-sunos${UNAME_RELEASE}
3742c393a42Smrg	exit ;;
3752c393a42Smrg    sun*:*:4.2BSD:*)
3762c393a42Smrg	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
3772c393a42Smrg	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
3782c393a42Smrg	case "`/bin/arch`" in
3792c393a42Smrg	    sun3)
3802c393a42Smrg		echo m68k-sun-sunos${UNAME_RELEASE}
3812c393a42Smrg		;;
3822c393a42Smrg	    sun4)
3832c393a42Smrg		echo sparc-sun-sunos${UNAME_RELEASE}
3842c393a42Smrg		;;
3852c393a42Smrg	esac
3862c393a42Smrg	exit ;;
3872c393a42Smrg    aushp:SunOS:*:*)
3882c393a42Smrg	echo sparc-auspex-sunos${UNAME_RELEASE}
3892c393a42Smrg	exit ;;
3902c393a42Smrg    # The situation for MiNT is a little confusing.  The machine name
3912c393a42Smrg    # can be virtually everything (everything which is not
3922c393a42Smrg    # "atarist" or "atariste" at least should have a processor
3932c393a42Smrg    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
3942c393a42Smrg    # to the lowercase version "mint" (or "freemint").  Finally
3952c393a42Smrg    # the system name "TOS" denotes a system which is actually not
3962c393a42Smrg    # MiNT.  But MiNT is downward compatible to TOS, so this should
3972c393a42Smrg    # be no problem.
3982c393a42Smrg    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
399ca08ab68Smrg	echo m68k-atari-mint${UNAME_RELEASE}
4002c393a42Smrg	exit ;;
4012c393a42Smrg    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
4022c393a42Smrg	echo m68k-atari-mint${UNAME_RELEASE}
403ca08ab68Smrg	exit ;;
4042c393a42Smrg    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
405ca08ab68Smrg	echo m68k-atari-mint${UNAME_RELEASE}
4062c393a42Smrg	exit ;;
4072c393a42Smrg    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
408ca08ab68Smrg	echo m68k-milan-mint${UNAME_RELEASE}
409ca08ab68Smrg	exit ;;
4102c393a42Smrg    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
411ca08ab68Smrg	echo m68k-hades-mint${UNAME_RELEASE}
412ca08ab68Smrg	exit ;;
4132c393a42Smrg    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
414ca08ab68Smrg	echo m68k-unknown-mint${UNAME_RELEASE}
415ca08ab68Smrg	exit ;;
4162c393a42Smrg    m68k:machten:*:*)
4172c393a42Smrg	echo m68k-apple-machten${UNAME_RELEASE}
4182c393a42Smrg	exit ;;
4192c393a42Smrg    powerpc:machten:*:*)
4202c393a42Smrg	echo powerpc-apple-machten${UNAME_RELEASE}
4212c393a42Smrg	exit ;;
4222c393a42Smrg    RISC*:Mach:*:*)
4232c393a42Smrg	echo mips-dec-mach_bsd4.3
4242c393a42Smrg	exit ;;
4252c393a42Smrg    RISC*:ULTRIX:*:*)
4262c393a42Smrg	echo mips-dec-ultrix${UNAME_RELEASE}
4272c393a42Smrg	exit ;;
4282c393a42Smrg    VAX*:ULTRIX*:*:*)
4292c393a42Smrg	echo vax-dec-ultrix${UNAME_RELEASE}
4302c393a42Smrg	exit ;;
4312c393a42Smrg    2020:CLIX:*:* | 2430:CLIX:*:*)
4322c393a42Smrg	echo clipper-intergraph-clix${UNAME_RELEASE}
4332c393a42Smrg	exit ;;
4342c393a42Smrg    mips:*:*:UMIPS | mips:*:*:RISCos)
4352c393a42Smrg	eval $set_cc_for_build
4362c393a42Smrg	sed 's/^	//' << EOF >$dummy.c
4372c393a42Smrg#ifdef __cplusplus
4382c393a42Smrg#include <stdio.h>  /* for printf() prototype */
4392c393a42Smrg	int main (int argc, char *argv[]) {
4402c393a42Smrg#else
4412c393a42Smrg	int main (argc, argv) int argc; char *argv[]; {
4422c393a42Smrg#endif
4432c393a42Smrg	#if defined (host_mips) && defined (MIPSEB)
4442c393a42Smrg	#if defined (SYSTYPE_SYSV)
4452c393a42Smrg	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
4462c393a42Smrg	#endif
4472c393a42Smrg	#if defined (SYSTYPE_SVR4)
4482c393a42Smrg	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
4492c393a42Smrg	#endif
4502c393a42Smrg	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
4512c393a42Smrg	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
4522c393a42Smrg	#endif
4532c393a42Smrg	#endif
4542c393a42Smrg	  exit (-1);
4552c393a42Smrg	}
4562c393a42SmrgEOF
4572c393a42Smrg	$CC_FOR_BUILD -o $dummy $dummy.c &&
4582c393a42Smrg	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
4592c393a42Smrg	  SYSTEM_NAME=`$dummy $dummyarg` &&
4602c393a42Smrg	    { echo "$SYSTEM_NAME"; exit; }
4612c393a42Smrg	echo mips-mips-riscos${UNAME_RELEASE}
4622c393a42Smrg	exit ;;
4632c393a42Smrg    Motorola:PowerMAX_OS:*:*)
4642c393a42Smrg	echo powerpc-motorola-powermax
4652c393a42Smrg	exit ;;
4662c393a42Smrg    Motorola:*:4.3:PL8-*)
4672c393a42Smrg	echo powerpc-harris-powermax
4682c393a42Smrg	exit ;;
4692c393a42Smrg    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
4702c393a42Smrg	echo powerpc-harris-powermax
4712c393a42Smrg	exit ;;
4722c393a42Smrg    Night_Hawk:Power_UNIX:*:*)
4732c393a42Smrg	echo powerpc-harris-powerunix
4742c393a42Smrg	exit ;;
4752c393a42Smrg    m88k:CX/UX:7*:*)
4762c393a42Smrg	echo m88k-harris-cxux7
4772c393a42Smrg	exit ;;
4782c393a42Smrg    m88k:*:4*:R4*)
4792c393a42Smrg	echo m88k-motorola-sysv4
4802c393a42Smrg	exit ;;
4812c393a42Smrg    m88k:*:3*:R3*)
4822c393a42Smrg	echo m88k-motorola-sysv3
4832c393a42Smrg	exit ;;
4842c393a42Smrg    AViiON:dgux:*:*)
485ca08ab68Smrg	# DG/UX returns AViiON for all architectures
486ca08ab68Smrg	UNAME_PROCESSOR=`/usr/bin/uname -p`
4872c393a42Smrg	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
4882c393a42Smrg	then
4892c393a42Smrg	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
4902c393a42Smrg	       [ ${TARGET_BINARY_INTERFACE}x = x ]
4912c393a42Smrg	    then
4922c393a42Smrg		echo m88k-dg-dgux${UNAME_RELEASE}
4932c393a42Smrg	    else
4942c393a42Smrg		echo m88k-dg-dguxbcs${UNAME_RELEASE}
4952c393a42Smrg	    fi
4962c393a42Smrg	else
4972c393a42Smrg	    echo i586-dg-dgux${UNAME_RELEASE}
4982c393a42Smrg	fi
499ca08ab68Smrg	exit ;;
5002c393a42Smrg    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
5012c393a42Smrg	echo m88k-dolphin-sysv3
5022c393a42Smrg	exit ;;
5032c393a42Smrg    M88*:*:R3*:*)
5042c393a42Smrg	# Delta 88k system running SVR3
5052c393a42Smrg	echo m88k-motorola-sysv3
5062c393a42Smrg	exit ;;
5072c393a42Smrg    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
5082c393a42Smrg	echo m88k-tektronix-sysv3
5092c393a42Smrg	exit ;;
5102c393a42Smrg    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
5112c393a42Smrg	echo m68k-tektronix-bsd
5122c393a42Smrg	exit ;;
5132c393a42Smrg    *:IRIX*:*:*)
5142c393a42Smrg	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
5152c393a42Smrg	exit ;;
5162c393a42Smrg    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
5172c393a42Smrg	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
5182c393a42Smrg	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
5192c393a42Smrg    i*86:AIX:*:*)
5202c393a42Smrg	echo i386-ibm-aix
5212c393a42Smrg	exit ;;
5222c393a42Smrg    ia64:AIX:*:*)
5232c393a42Smrg	if [ -x /usr/bin/oslevel ] ; then
5242c393a42Smrg		IBM_REV=`/usr/bin/oslevel`
5252c393a42Smrg	else
5262c393a42Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
5272c393a42Smrg	fi
5282c393a42Smrg	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
5292c393a42Smrg	exit ;;
5302c393a42Smrg    *:AIX:2:3)
5312c393a42Smrg	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
5322c393a42Smrg		eval $set_cc_for_build
5332c393a42Smrg		sed 's/^		//' << EOF >$dummy.c
5342c393a42Smrg		#include <sys/systemcfg.h>
5352c393a42Smrg
5362c393a42Smrg		main()
5372c393a42Smrg			{
5382c393a42Smrg			if (!__power_pc())
5392c393a42Smrg				exit(1);
5402c393a42Smrg			puts("powerpc-ibm-aix3.2.5");
5412c393a42Smrg			exit(0);
5422c393a42Smrg			}
5432c393a42SmrgEOF
5442c393a42Smrg		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
5452c393a42Smrg		then
5462c393a42Smrg			echo "$SYSTEM_NAME"
5472c393a42Smrg		else
5482c393a42Smrg			echo rs6000-ibm-aix3.2.5
5492c393a42Smrg		fi
5502c393a42Smrg	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
5512c393a42Smrg		echo rs6000-ibm-aix3.2.4
5522c393a42Smrg	else
5532c393a42Smrg		echo rs6000-ibm-aix3.2
5542c393a42Smrg	fi
5552c393a42Smrg	exit ;;
556ca08ab68Smrg    *:AIX:*:[4567])
5572c393a42Smrg	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
5582c393a42Smrg	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
5592c393a42Smrg		IBM_ARCH=rs6000
5602c393a42Smrg	else
5612c393a42Smrg		IBM_ARCH=powerpc
5622c393a42Smrg	fi
5632c393a42Smrg	if [ -x /usr/bin/oslevel ] ; then
5642c393a42Smrg		IBM_REV=`/usr/bin/oslevel`
5652c393a42Smrg	else
5662c393a42Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
5672c393a42Smrg	fi
5682c393a42Smrg	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
5692c393a42Smrg	exit ;;
5702c393a42Smrg    *:AIX:*:*)
5712c393a42Smrg	echo rs6000-ibm-aix
5722c393a42Smrg	exit ;;
5732c393a42Smrg    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
5742c393a42Smrg	echo romp-ibm-bsd4.4
5752c393a42Smrg	exit ;;
5762c393a42Smrg    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
5772c393a42Smrg	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
5782c393a42Smrg	exit ;;                             # report: romp-ibm BSD 4.3
5792c393a42Smrg    *:BOSX:*:*)
5802c393a42Smrg	echo rs6000-bull-bosx
5812c393a42Smrg	exit ;;
5822c393a42Smrg    DPX/2?00:B.O.S.:*:*)
5832c393a42Smrg	echo m68k-bull-sysv3
5842c393a42Smrg	exit ;;
5852c393a42Smrg    9000/[34]??:4.3bsd:1.*:*)
5862c393a42Smrg	echo m68k-hp-bsd
5872c393a42Smrg	exit ;;
5882c393a42Smrg    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
5892c393a42Smrg	echo m68k-hp-bsd4.4
5902c393a42Smrg	exit ;;
5912c393a42Smrg    9000/[34678]??:HP-UX:*:*)
5922c393a42Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
5932c393a42Smrg	case "${UNAME_MACHINE}" in
5942c393a42Smrg	    9000/31? )            HP_ARCH=m68000 ;;
5952c393a42Smrg	    9000/[34]?? )         HP_ARCH=m68k ;;
5962c393a42Smrg	    9000/[678][0-9][0-9])
5972c393a42Smrg		if [ -x /usr/bin/getconf ]; then
5982c393a42Smrg		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
599ca08ab68Smrg		    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
600ca08ab68Smrg		    case "${sc_cpu_version}" in
601ca08ab68Smrg		      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
602ca08ab68Smrg		      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
603ca08ab68Smrg		      532)                      # CPU_PA_RISC2_0
604ca08ab68Smrg			case "${sc_kernel_bits}" in
605ca08ab68Smrg			  32) HP_ARCH="hppa2.0n" ;;
606ca08ab68Smrg			  64) HP_ARCH="hppa2.0w" ;;
6072c393a42Smrg			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
608ca08ab68Smrg			esac ;;
609ca08ab68Smrg		    esac
6102c393a42Smrg		fi
6112c393a42Smrg		if [ "${HP_ARCH}" = "" ]; then
6122c393a42Smrg		    eval $set_cc_for_build
613ca08ab68Smrg		    sed 's/^		//' << EOF >$dummy.c
6142c393a42Smrg
615ca08ab68Smrg		#define _HPUX_SOURCE
616ca08ab68Smrg		#include <stdlib.h>
617ca08ab68Smrg		#include <unistd.h>
6182c393a42Smrg
619ca08ab68Smrg		int main ()
620ca08ab68Smrg		{
621ca08ab68Smrg		#if defined(_SC_KERNEL_BITS)
622ca08ab68Smrg		    long bits = sysconf(_SC_KERNEL_BITS);
623ca08ab68Smrg		#endif
624ca08ab68Smrg		    long cpu  = sysconf (_SC_CPU_VERSION);
6252c393a42Smrg
626ca08ab68Smrg		    switch (cpu)
627ca08ab68Smrg			{
628ca08ab68Smrg			case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
629ca08ab68Smrg			case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
630ca08ab68Smrg			case CPU_PA_RISC2_0:
631ca08ab68Smrg		#if defined(_SC_KERNEL_BITS)
632ca08ab68Smrg			    switch (bits)
633ca08ab68Smrg				{
634ca08ab68Smrg				case 64: puts ("hppa2.0w"); break;
635ca08ab68Smrg				case 32: puts ("hppa2.0n"); break;
636ca08ab68Smrg				default: puts ("hppa2.0"); break;
637ca08ab68Smrg				} break;
638ca08ab68Smrg		#else  /* !defined(_SC_KERNEL_BITS) */
639ca08ab68Smrg			    puts ("hppa2.0"); break;
640ca08ab68Smrg		#endif
641ca08ab68Smrg			default: puts ("hppa1.0"); break;
642ca08ab68Smrg			}
643ca08ab68Smrg		    exit (0);
644ca08ab68Smrg		}
6452c393a42SmrgEOF
6462c393a42Smrg		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
6472c393a42Smrg		    test -z "$HP_ARCH" && HP_ARCH=hppa
6482c393a42Smrg		fi ;;
6492c393a42Smrg	esac
6502c393a42Smrg	if [ ${HP_ARCH} = "hppa2.0w" ]
6512c393a42Smrg	then
6522c393a42Smrg	    eval $set_cc_for_build
6532c393a42Smrg
6542c393a42Smrg	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
6552c393a42Smrg	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
6562c393a42Smrg	    # generating 64-bit code.  GNU and HP use different nomenclature:
6572c393a42Smrg	    #
6582c393a42Smrg	    # $ CC_FOR_BUILD=cc ./config.guess
6592c393a42Smrg	    # => hppa2.0w-hp-hpux11.23
6602c393a42Smrg	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
6612c393a42Smrg	    # => hppa64-hp-hpux11.23
6622c393a42Smrg
6632c393a42Smrg	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
664ca08ab68Smrg		grep -q __LP64__
6652c393a42Smrg	    then
6662c393a42Smrg		HP_ARCH="hppa2.0w"
6672c393a42Smrg	    else
6682c393a42Smrg		HP_ARCH="hppa64"
6692c393a42Smrg	    fi
6702c393a42Smrg	fi
6712c393a42Smrg	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
6722c393a42Smrg	exit ;;
6732c393a42Smrg    ia64:HP-UX:*:*)
6742c393a42Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
6752c393a42Smrg	echo ia64-hp-hpux${HPUX_REV}
6762c393a42Smrg	exit ;;
6772c393a42Smrg    3050*:HI-UX:*:*)
6782c393a42Smrg	eval $set_cc_for_build
6792c393a42Smrg	sed 's/^	//' << EOF >$dummy.c
6802c393a42Smrg	#include <unistd.h>
6812c393a42Smrg	int
6822c393a42Smrg	main ()
6832c393a42Smrg	{
6842c393a42Smrg	  long cpu = sysconf (_SC_CPU_VERSION);
6852c393a42Smrg	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
6862c393a42Smrg	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
6872c393a42Smrg	     results, however.  */
6882c393a42Smrg	  if (CPU_IS_PA_RISC (cpu))
6892c393a42Smrg	    {
6902c393a42Smrg	      switch (cpu)
6912c393a42Smrg		{
6922c393a42Smrg		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
6932c393a42Smrg		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
6942c393a42Smrg		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
6952c393a42Smrg		  default: puts ("hppa-hitachi-hiuxwe2"); break;
6962c393a42Smrg		}
6972c393a42Smrg	    }
6982c393a42Smrg	  else if (CPU_IS_HP_MC68K (cpu))
6992c393a42Smrg	    puts ("m68k-hitachi-hiuxwe2");
7002c393a42Smrg	  else puts ("unknown-hitachi-hiuxwe2");
7012c393a42Smrg	  exit (0);
7022c393a42Smrg	}
7032c393a42SmrgEOF
7042c393a42Smrg	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
7052c393a42Smrg		{ echo "$SYSTEM_NAME"; exit; }
7062c393a42Smrg	echo unknown-hitachi-hiuxwe2
7072c393a42Smrg	exit ;;
7082c393a42Smrg    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
7092c393a42Smrg	echo hppa1.1-hp-bsd
7102c393a42Smrg	exit ;;
7112c393a42Smrg    9000/8??:4.3bsd:*:*)
7122c393a42Smrg	echo hppa1.0-hp-bsd
7132c393a42Smrg	exit ;;
7142c393a42Smrg    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
7152c393a42Smrg	echo hppa1.0-hp-mpeix
7162c393a42Smrg	exit ;;
7172c393a42Smrg    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
7182c393a42Smrg	echo hppa1.1-hp-osf
7192c393a42Smrg	exit ;;
7202c393a42Smrg    hp8??:OSF1:*:*)
7212c393a42Smrg	echo hppa1.0-hp-osf
7222c393a42Smrg	exit ;;
7232c393a42Smrg    i*86:OSF1:*:*)
7242c393a42Smrg	if [ -x /usr/sbin/sysversion ] ; then
7252c393a42Smrg	    echo ${UNAME_MACHINE}-unknown-osf1mk
7262c393a42Smrg	else
7272c393a42Smrg	    echo ${UNAME_MACHINE}-unknown-osf1
7282c393a42Smrg	fi
7292c393a42Smrg	exit ;;
7302c393a42Smrg    parisc*:Lites*:*:*)
7312c393a42Smrg	echo hppa1.1-hp-lites
7322c393a42Smrg	exit ;;
7332c393a42Smrg    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
7342c393a42Smrg	echo c1-convex-bsd
735ca08ab68Smrg	exit ;;
7362c393a42Smrg    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
7372c393a42Smrg	if getsysinfo -f scalar_acc
7382c393a42Smrg	then echo c32-convex-bsd
7392c393a42Smrg	else echo c2-convex-bsd
7402c393a42Smrg	fi
741ca08ab68Smrg	exit ;;
7422c393a42Smrg    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
7432c393a42Smrg	echo c34-convex-bsd
744ca08ab68Smrg	exit ;;
7452c393a42Smrg    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
7462c393a42Smrg	echo c38-convex-bsd
747ca08ab68Smrg	exit ;;
7482c393a42Smrg    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
7492c393a42Smrg	echo c4-convex-bsd
750ca08ab68Smrg	exit ;;
7512c393a42Smrg    CRAY*Y-MP:*:*:*)
7522c393a42Smrg	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7532c393a42Smrg	exit ;;
7542c393a42Smrg    CRAY*[A-Z]90:*:*:*)
7552c393a42Smrg	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
7562c393a42Smrg	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
7572c393a42Smrg	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
7582c393a42Smrg	      -e 's/\.[^.]*$/.X/'
7592c393a42Smrg	exit ;;
7602c393a42Smrg    CRAY*TS:*:*:*)
7612c393a42Smrg	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7622c393a42Smrg	exit ;;
7632c393a42Smrg    CRAY*T3E:*:*:*)
7642c393a42Smrg	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7652c393a42Smrg	exit ;;
7662c393a42Smrg    CRAY*SV1:*:*:*)
7672c393a42Smrg	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7682c393a42Smrg	exit ;;
7692c393a42Smrg    *:UNICOS/mp:*:*)
7702c393a42Smrg	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7712c393a42Smrg	exit ;;
7722c393a42Smrg    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
7732c393a42Smrg	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
774ca08ab68Smrg	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
775ca08ab68Smrg	FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
776ca08ab68Smrg	echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
777ca08ab68Smrg	exit ;;
7782c393a42Smrg    5000:UNIX_System_V:4.*:*)
779ca08ab68Smrg	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
780ca08ab68Smrg	FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
781ca08ab68Smrg	echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
7822c393a42Smrg	exit ;;
7832c393a42Smrg    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
7842c393a42Smrg	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
7852c393a42Smrg	exit ;;
7862c393a42Smrg    sparc*:BSD/OS:*:*)
7872c393a42Smrg	echo sparc-unknown-bsdi${UNAME_RELEASE}
7882c393a42Smrg	exit ;;
7892c393a42Smrg    *:BSD/OS:*:*)
7902c393a42Smrg	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
7912c393a42Smrg	exit ;;
7922c393a42Smrg    *:FreeBSD:*:*)
793ca08ab68Smrg	UNAME_PROCESSOR=`/usr/bin/uname -p`
794ca08ab68Smrg	case ${UNAME_PROCESSOR} in
7952c393a42Smrg	    amd64)
7962c393a42Smrg		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7972c393a42Smrg	    *)
798ca08ab68Smrg		echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7992c393a42Smrg	esac
8002c393a42Smrg	exit ;;
8012c393a42Smrg    i*:CYGWIN*:*)
8022c393a42Smrg	echo ${UNAME_MACHINE}-pc-cygwin
8032c393a42Smrg	exit ;;
8042c393a42Smrg    *:MINGW*:*)
8052c393a42Smrg	echo ${UNAME_MACHINE}-pc-mingw32
8062c393a42Smrg	exit ;;
807ca08ab68Smrg    i*:MSYS*:*)
808ca08ab68Smrg	echo ${UNAME_MACHINE}-pc-msys
809ca08ab68Smrg	exit ;;
8102c393a42Smrg    i*:windows32*:*)
811ca08ab68Smrg	# uname -m includes "-pc" on this system.
812ca08ab68Smrg	echo ${UNAME_MACHINE}-mingw32
8132c393a42Smrg	exit ;;
8142c393a42Smrg    i*:PW*:*)
8152c393a42Smrg	echo ${UNAME_MACHINE}-pc-pw32
8162c393a42Smrg	exit ;;
817ca08ab68Smrg    *:Interix*:*)
818ca08ab68Smrg	case ${UNAME_MACHINE} in
8192c393a42Smrg	    x86)
8202c393a42Smrg		echo i586-pc-interix${UNAME_RELEASE}
8212c393a42Smrg		exit ;;
822ca08ab68Smrg	    authenticamd | genuineintel | EM64T)
8232c393a42Smrg		echo x86_64-unknown-interix${UNAME_RELEASE}
8242c393a42Smrg		exit ;;
8252c393a42Smrg	    IA64)
8262c393a42Smrg		echo ia64-unknown-interix${UNAME_RELEASE}
8272c393a42Smrg		exit ;;
8282c393a42Smrg	esac ;;
8292c393a42Smrg    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
8302c393a42Smrg	echo i${UNAME_MACHINE}-pc-mks
8312c393a42Smrg	exit ;;
832ca08ab68Smrg    8664:Windows_NT:*)
833ca08ab68Smrg	echo x86_64-pc-mks
834ca08ab68Smrg	exit ;;
8352c393a42Smrg    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
8362c393a42Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
8372c393a42Smrg	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
8382c393a42Smrg	# UNAME_MACHINE based on the output of uname instead of i386?
8392c393a42Smrg	echo i586-pc-interix
8402c393a42Smrg	exit ;;
8412c393a42Smrg    i*:UWIN*:*)
8422c393a42Smrg	echo ${UNAME_MACHINE}-pc-uwin
8432c393a42Smrg	exit ;;
8442c393a42Smrg    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
8452c393a42Smrg	echo x86_64-unknown-cygwin
8462c393a42Smrg	exit ;;
8472c393a42Smrg    p*:CYGWIN*:*)
8482c393a42Smrg	echo powerpcle-unknown-cygwin
8492c393a42Smrg	exit ;;
8502c393a42Smrg    prep*:SunOS:5.*:*)
8512c393a42Smrg	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
8522c393a42Smrg	exit ;;
8532c393a42Smrg    *:GNU:*:*)
8542c393a42Smrg	# the GNU system
8552c393a42Smrg	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
8562c393a42Smrg	exit ;;
8572c393a42Smrg    *:GNU/*:*:*)
8582c393a42Smrg	# other systems with GNU libc and userland
8592c393a42Smrg	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
8602c393a42Smrg	exit ;;
8612c393a42Smrg    i*86:Minix:*:*)
8622c393a42Smrg	echo ${UNAME_MACHINE}-pc-minix
8632c393a42Smrg	exit ;;
864ca08ab68Smrg    aarch64:Linux:*:*)
865ca08ab68Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
866ca08ab68Smrg	exit ;;
867ca08ab68Smrg    aarch64_be:Linux:*:*)
868ca08ab68Smrg	UNAME_MACHINE=aarch64_be
869ca08ab68Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
870ca08ab68Smrg	exit ;;
871ca08ab68Smrg    alpha:Linux:*:*)
872ca08ab68Smrg	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
873ca08ab68Smrg	  EV5)   UNAME_MACHINE=alphaev5 ;;
874ca08ab68Smrg	  EV56)  UNAME_MACHINE=alphaev56 ;;
875ca08ab68Smrg	  PCA56) UNAME_MACHINE=alphapca56 ;;
876ca08ab68Smrg	  PCA57) UNAME_MACHINE=alphapca56 ;;
877ca08ab68Smrg	  EV6)   UNAME_MACHINE=alphaev6 ;;
878ca08ab68Smrg	  EV67)  UNAME_MACHINE=alphaev67 ;;
879ca08ab68Smrg	  EV68*) UNAME_MACHINE=alphaev68 ;;
880ca08ab68Smrg	esac
881ca08ab68Smrg	objdump --private-headers /bin/sh | grep -q ld.so.1
882ca08ab68Smrg	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
883ca08ab68Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
884ca08ab68Smrg	exit ;;
8852c393a42Smrg    arm*:Linux:*:*)
8862c393a42Smrg	eval $set_cc_for_build
8872c393a42Smrg	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
8882c393a42Smrg	    | grep -q __ARM_EABI__
8892c393a42Smrg	then
8902c393a42Smrg	    echo ${UNAME_MACHINE}-unknown-linux-gnu
8912c393a42Smrg	else
892ca08ab68Smrg	    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
893ca08ab68Smrg		| grep -q __ARM_PCS_VFP
894ca08ab68Smrg	    then
895ca08ab68Smrg		echo ${UNAME_MACHINE}-unknown-linux-gnueabi
896ca08ab68Smrg	    else
897ca08ab68Smrg		echo ${UNAME_MACHINE}-unknown-linux-gnueabihf
898ca08ab68Smrg	    fi
8992c393a42Smrg	fi
9002c393a42Smrg	exit ;;
9012c393a42Smrg    avr32*:Linux:*:*)
9022c393a42Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9032c393a42Smrg	exit ;;
9042c393a42Smrg    cris:Linux:*:*)
905ca08ab68Smrg	echo ${UNAME_MACHINE}-axis-linux-gnu
9062c393a42Smrg	exit ;;
9072c393a42Smrg    crisv32:Linux:*:*)
908ca08ab68Smrg	echo ${UNAME_MACHINE}-axis-linux-gnu
9092c393a42Smrg	exit ;;
9102c393a42Smrg    frv:Linux:*:*)
911ca08ab68Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
912ca08ab68Smrg	exit ;;
913ca08ab68Smrg    hexagon:Linux:*:*)
914ca08ab68Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
915ca08ab68Smrg	exit ;;
916ca08ab68Smrg    i*86:Linux:*:*)
917ca08ab68Smrg	LIBC=gnu
918ca08ab68Smrg	eval $set_cc_for_build
919ca08ab68Smrg	sed 's/^	//' << EOF >$dummy.c
920ca08ab68Smrg	#ifdef __dietlibc__
921ca08ab68Smrg	LIBC=dietlibc
922ca08ab68Smrg	#endif
923ca08ab68SmrgEOF
924ca08ab68Smrg	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
925ca08ab68Smrg	echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
9262c393a42Smrg	exit ;;
9272c393a42Smrg    ia64:Linux:*:*)
9282c393a42Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9292c393a42Smrg	exit ;;
9302c393a42Smrg    m32r*:Linux:*:*)
9312c393a42Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9322c393a42Smrg	exit ;;
9332c393a42Smrg    m68*:Linux:*:*)
9342c393a42Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9352c393a42Smrg	exit ;;
936ca08ab68Smrg    mips:Linux:*:* | mips64:Linux:*:*)
9372c393a42Smrg	eval $set_cc_for_build
9382c393a42Smrg	sed 's/^	//' << EOF >$dummy.c
9392c393a42Smrg	#undef CPU
940ca08ab68Smrg	#undef ${UNAME_MACHINE}
941ca08ab68Smrg	#undef ${UNAME_MACHINE}el
9422c393a42Smrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
943ca08ab68Smrg	CPU=${UNAME_MACHINE}el
9442c393a42Smrg	#else
9452c393a42Smrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
946ca08ab68Smrg	CPU=${UNAME_MACHINE}
9472c393a42Smrg	#else
9482c393a42Smrg	CPU=
9492c393a42Smrg	#endif
9502c393a42Smrg	#endif
9512c393a42SmrgEOF
952ca08ab68Smrg	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
9532c393a42Smrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
9542c393a42Smrg	;;
9552c393a42Smrg    or32:Linux:*:*)
956ca08ab68Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9572c393a42Smrg	exit ;;
958ca08ab68Smrg    padre:Linux:*:*)
959ca08ab68Smrg	echo sparc-unknown-linux-gnu
9602c393a42Smrg	exit ;;
961ca08ab68Smrg    parisc64:Linux:*:* | hppa64:Linux:*:*)
962ca08ab68Smrg	echo hppa64-unknown-linux-gnu
9632c393a42Smrg	exit ;;
9642c393a42Smrg    parisc:Linux:*:* | hppa:Linux:*:*)
9652c393a42Smrg	# Look for CPU level
9662c393a42Smrg	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
9672c393a42Smrg	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
9682c393a42Smrg	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
9692c393a42Smrg	  *)    echo hppa-unknown-linux-gnu ;;
9702c393a42Smrg	esac
9712c393a42Smrg	exit ;;
972ca08ab68Smrg    ppc64:Linux:*:*)
973ca08ab68Smrg	echo powerpc64-unknown-linux-gnu
974ca08ab68Smrg	exit ;;
975ca08ab68Smrg    ppc:Linux:*:*)
976ca08ab68Smrg	echo powerpc-unknown-linux-gnu
9772c393a42Smrg	exit ;;
9782c393a42Smrg    s390:Linux:*:* | s390x:Linux:*:*)
9792c393a42Smrg	echo ${UNAME_MACHINE}-ibm-linux
9802c393a42Smrg	exit ;;
9812c393a42Smrg    sh64*:Linux:*:*)
982ca08ab68Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9832c393a42Smrg	exit ;;
9842c393a42Smrg    sh*:Linux:*:*)
9852c393a42Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9862c393a42Smrg	exit ;;
9872c393a42Smrg    sparc:Linux:*:* | sparc64:Linux:*:*)
9882c393a42Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9892c393a42Smrg	exit ;;
990ca08ab68Smrg    tile*:Linux:*:*)
991ca08ab68Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
992ca08ab68Smrg	exit ;;
9932c393a42Smrg    vax:Linux:*:*)
9942c393a42Smrg	echo ${UNAME_MACHINE}-dec-linux-gnu
9952c393a42Smrg	exit ;;
9962c393a42Smrg    x86_64:Linux:*:*)
997ca08ab68Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9982c393a42Smrg	exit ;;
9992c393a42Smrg    xtensa*:Linux:*:*)
1000ca08ab68Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
10012c393a42Smrg	exit ;;
10022c393a42Smrg    i*86:DYNIX/ptx:4*:*)
10032c393a42Smrg	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
10042c393a42Smrg	# earlier versions are messed up and put the nodename in both
10052c393a42Smrg	# sysname and nodename.
10062c393a42Smrg	echo i386-sequent-sysv4
10072c393a42Smrg	exit ;;
10082c393a42Smrg    i*86:UNIX_SV:4.2MP:2.*)
1009ca08ab68Smrg	# Unixware is an offshoot of SVR4, but it has its own version
1010ca08ab68Smrg	# number series starting with 2...
1011ca08ab68Smrg	# I am not positive that other SVR4 systems won't match this,
10122c393a42Smrg	# I just have to hope.  -- rms.
1013ca08ab68Smrg	# Use sysv4.2uw... so that sysv4* matches it.
10142c393a42Smrg	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
10152c393a42Smrg	exit ;;
10162c393a42Smrg    i*86:OS/2:*:*)
10172c393a42Smrg	# If we were able to find `uname', then EMX Unix compatibility
10182c393a42Smrg	# is probably installed.
10192c393a42Smrg	echo ${UNAME_MACHINE}-pc-os2-emx
10202c393a42Smrg	exit ;;
10212c393a42Smrg    i*86:XTS-300:*:STOP)
10222c393a42Smrg	echo ${UNAME_MACHINE}-unknown-stop
10232c393a42Smrg	exit ;;
10242c393a42Smrg    i*86:atheos:*:*)
10252c393a42Smrg	echo ${UNAME_MACHINE}-unknown-atheos
10262c393a42Smrg	exit ;;
10272c393a42Smrg    i*86:syllable:*:*)
10282c393a42Smrg	echo ${UNAME_MACHINE}-pc-syllable
10292c393a42Smrg	exit ;;
1030ca08ab68Smrg    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
10312c393a42Smrg	echo i386-unknown-lynxos${UNAME_RELEASE}
10322c393a42Smrg	exit ;;
10332c393a42Smrg    i*86:*DOS:*:*)
10342c393a42Smrg	echo ${UNAME_MACHINE}-pc-msdosdjgpp
10352c393a42Smrg	exit ;;
10362c393a42Smrg    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
10372c393a42Smrg	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
10382c393a42Smrg	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
10392c393a42Smrg		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
10402c393a42Smrg	else
10412c393a42Smrg		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
10422c393a42Smrg	fi
10432c393a42Smrg	exit ;;
10442c393a42Smrg    i*86:*:5:[678]*)
1045ca08ab68Smrg	# UnixWare 7.x, OpenUNIX and OpenServer 6.
10462c393a42Smrg	case `/bin/uname -X | grep "^Machine"` in
10472c393a42Smrg	    *486*)	     UNAME_MACHINE=i486 ;;
10482c393a42Smrg	    *Pentium)	     UNAME_MACHINE=i586 ;;
10492c393a42Smrg	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
10502c393a42Smrg	esac
10512c393a42Smrg	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
10522c393a42Smrg	exit ;;
10532c393a42Smrg    i*86:*:3.2:*)
10542c393a42Smrg	if test -f /usr/options/cb.name; then
10552c393a42Smrg		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
10562c393a42Smrg		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
10572c393a42Smrg	elif /bin/uname -X 2>/dev/null >/dev/null ; then
10582c393a42Smrg		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
10592c393a42Smrg		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
10602c393a42Smrg		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
10612c393a42Smrg			&& UNAME_MACHINE=i586
10622c393a42Smrg		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
10632c393a42Smrg			&& UNAME_MACHINE=i686
10642c393a42Smrg		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
10652c393a42Smrg			&& UNAME_MACHINE=i686
10662c393a42Smrg		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
10672c393a42Smrg	else
10682c393a42Smrg		echo ${UNAME_MACHINE}-pc-sysv32
10692c393a42Smrg	fi
10702c393a42Smrg	exit ;;
10712c393a42Smrg    pc:*:*:*)
10722c393a42Smrg	# Left here for compatibility:
1073ca08ab68Smrg	# uname -m prints for DJGPP always 'pc', but it prints nothing about
1074ca08ab68Smrg	# the processor, so we play safe by assuming i586.
1075ca08ab68Smrg	# Note: whatever this is, it MUST be the same as what config.sub
1076ca08ab68Smrg	# prints for the "djgpp" host, or else GDB configury will decide that
1077ca08ab68Smrg	# this is a cross-build.
1078ca08ab68Smrg	echo i586-pc-msdosdjgpp
1079ca08ab68Smrg	exit ;;
10802c393a42Smrg    Intel:Mach:3*:*)
10812c393a42Smrg	echo i386-pc-mach3
10822c393a42Smrg	exit ;;
10832c393a42Smrg    paragon:*:*:*)
10842c393a42Smrg	echo i860-intel-osf1
10852c393a42Smrg	exit ;;
10862c393a42Smrg    i860:*:4.*:*) # i860-SVR4
10872c393a42Smrg	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
10882c393a42Smrg	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
10892c393a42Smrg	else # Add other i860-SVR4 vendors below as they are discovered.
10902c393a42Smrg	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
10912c393a42Smrg	fi
10922c393a42Smrg	exit ;;
10932c393a42Smrg    mini*:CTIX:SYS*5:*)
10942c393a42Smrg	# "miniframe"
10952c393a42Smrg	echo m68010-convergent-sysv
10962c393a42Smrg	exit ;;
10972c393a42Smrg    mc68k:UNIX:SYSTEM5:3.51m)
10982c393a42Smrg	echo m68k-convergent-sysv
10992c393a42Smrg	exit ;;
11002c393a42Smrg    M680?0:D-NIX:5.3:*)
11012c393a42Smrg	echo m68k-diab-dnix
11022c393a42Smrg	exit ;;
11032c393a42Smrg    M68*:*:R3V[5678]*:*)
11042c393a42Smrg	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
11052c393a42Smrg    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)
11062c393a42Smrg	OS_REL=''
11072c393a42Smrg	test -r /etc/.relid \
11082c393a42Smrg	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
11092c393a42Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
11102c393a42Smrg	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
11112c393a42Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
11122c393a42Smrg	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
11132c393a42Smrg    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1114ca08ab68Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1115ca08ab68Smrg	  && { echo i486-ncr-sysv4; exit; } ;;
1116ca08ab68Smrg    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
1117ca08ab68Smrg	OS_REL='.3'
1118ca08ab68Smrg	test -r /etc/.relid \
1119ca08ab68Smrg	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1120ca08ab68Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1121ca08ab68Smrg	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1122ca08ab68Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1123ca08ab68Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
1124ca08ab68Smrg	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
1125ca08ab68Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
11262c393a42Smrg    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
11272c393a42Smrg	echo m68k-unknown-lynxos${UNAME_RELEASE}
11282c393a42Smrg	exit ;;
11292c393a42Smrg    mc68030:UNIX_System_V:4.*:*)
11302c393a42Smrg	echo m68k-atari-sysv4
11312c393a42Smrg	exit ;;
11322c393a42Smrg    TSUNAMI:LynxOS:2.*:*)
11332c393a42Smrg	echo sparc-unknown-lynxos${UNAME_RELEASE}
11342c393a42Smrg	exit ;;
11352c393a42Smrg    rs6000:LynxOS:2.*:*)
11362c393a42Smrg	echo rs6000-unknown-lynxos${UNAME_RELEASE}
11372c393a42Smrg	exit ;;
1138ca08ab68Smrg    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
11392c393a42Smrg	echo powerpc-unknown-lynxos${UNAME_RELEASE}
11402c393a42Smrg	exit ;;
11412c393a42Smrg    SM[BE]S:UNIX_SV:*:*)
11422c393a42Smrg	echo mips-dde-sysv${UNAME_RELEASE}
11432c393a42Smrg	exit ;;
11442c393a42Smrg    RM*:ReliantUNIX-*:*:*)
11452c393a42Smrg	echo mips-sni-sysv4
11462c393a42Smrg	exit ;;
11472c393a42Smrg    RM*:SINIX-*:*:*)
11482c393a42Smrg	echo mips-sni-sysv4
11492c393a42Smrg	exit ;;
11502c393a42Smrg    *:SINIX-*:*:*)
11512c393a42Smrg	if uname -p 2>/dev/null >/dev/null ; then
11522c393a42Smrg		UNAME_MACHINE=`(uname -p) 2>/dev/null`
11532c393a42Smrg		echo ${UNAME_MACHINE}-sni-sysv4
11542c393a42Smrg	else
11552c393a42Smrg		echo ns32k-sni-sysv
11562c393a42Smrg	fi
11572c393a42Smrg	exit ;;
1158ca08ab68Smrg    PENTIUM:*:4.0*:*)	# Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1159ca08ab68Smrg			# says <Richard.M.Bartel@ccMail.Census.GOV>
1160ca08ab68Smrg	echo i586-unisys-sysv4
1161ca08ab68Smrg	exit ;;
11622c393a42Smrg    *:UNIX_System_V:4*:FTX*)
11632c393a42Smrg	# From Gerald Hewes <hewes@openmarket.com>.
11642c393a42Smrg	# How about differentiating between stratus architectures? -djm
11652c393a42Smrg	echo hppa1.1-stratus-sysv4
11662c393a42Smrg	exit ;;
11672c393a42Smrg    *:*:*:FTX*)
11682c393a42Smrg	# From seanf@swdc.stratus.com.
11692c393a42Smrg	echo i860-stratus-sysv4
11702c393a42Smrg	exit ;;
11712c393a42Smrg    i*86:VOS:*:*)
11722c393a42Smrg	# From Paul.Green@stratus.com.
11732c393a42Smrg	echo ${UNAME_MACHINE}-stratus-vos
11742c393a42Smrg	exit ;;
11752c393a42Smrg    *:VOS:*:*)
11762c393a42Smrg	# From Paul.Green@stratus.com.
11772c393a42Smrg	echo hppa1.1-stratus-vos
11782c393a42Smrg	exit ;;
11792c393a42Smrg    mc68*:A/UX:*:*)
11802c393a42Smrg	echo m68k-apple-aux${UNAME_RELEASE}
11812c393a42Smrg	exit ;;
11822c393a42Smrg    news*:NEWS-OS:6*:*)
11832c393a42Smrg	echo mips-sony-newsos6
11842c393a42Smrg	exit ;;
11852c393a42Smrg    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
11862c393a42Smrg	if [ -d /usr/nec ]; then
1187ca08ab68Smrg		echo mips-nec-sysv${UNAME_RELEASE}
11882c393a42Smrg	else
1189ca08ab68Smrg		echo mips-unknown-sysv${UNAME_RELEASE}
11902c393a42Smrg	fi
1191ca08ab68Smrg	exit ;;
11922c393a42Smrg    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
11932c393a42Smrg	echo powerpc-be-beos
11942c393a42Smrg	exit ;;
11952c393a42Smrg    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
11962c393a42Smrg	echo powerpc-apple-beos
11972c393a42Smrg	exit ;;
11982c393a42Smrg    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
11992c393a42Smrg	echo i586-pc-beos
12002c393a42Smrg	exit ;;
1201ca08ab68Smrg    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
1202ca08ab68Smrg	echo i586-pc-haiku
1203ca08ab68Smrg	exit ;;
12042c393a42Smrg    SX-4:SUPER-UX:*:*)
12052c393a42Smrg	echo sx4-nec-superux${UNAME_RELEASE}
12062c393a42Smrg	exit ;;
12072c393a42Smrg    SX-5:SUPER-UX:*:*)
12082c393a42Smrg	echo sx5-nec-superux${UNAME_RELEASE}
12092c393a42Smrg	exit ;;
12102c393a42Smrg    SX-6:SUPER-UX:*:*)
12112c393a42Smrg	echo sx6-nec-superux${UNAME_RELEASE}
12122c393a42Smrg	exit ;;
12132c393a42Smrg    SX-7:SUPER-UX:*:*)
12142c393a42Smrg	echo sx7-nec-superux${UNAME_RELEASE}
12152c393a42Smrg	exit ;;
12162c393a42Smrg    SX-8:SUPER-UX:*:*)
12172c393a42Smrg	echo sx8-nec-superux${UNAME_RELEASE}
12182c393a42Smrg	exit ;;
12192c393a42Smrg    SX-8R:SUPER-UX:*:*)
12202c393a42Smrg	echo sx8r-nec-superux${UNAME_RELEASE}
12212c393a42Smrg	exit ;;
12222c393a42Smrg    Power*:Rhapsody:*:*)
12232c393a42Smrg	echo powerpc-apple-rhapsody${UNAME_RELEASE}
12242c393a42Smrg	exit ;;
12252c393a42Smrg    *:Rhapsody:*:*)
12262c393a42Smrg	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
12272c393a42Smrg	exit ;;
12282c393a42Smrg    *:Darwin:*:*)
12292c393a42Smrg	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
12302c393a42Smrg	case $UNAME_PROCESSOR in
1231ca08ab68Smrg	    i386)
1232ca08ab68Smrg		eval $set_cc_for_build
1233ca08ab68Smrg		if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
1234ca08ab68Smrg		  if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
1235ca08ab68Smrg		      (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
1236ca08ab68Smrg		      grep IS_64BIT_ARCH >/dev/null
1237ca08ab68Smrg		  then
1238ca08ab68Smrg		      UNAME_PROCESSOR="x86_64"
1239ca08ab68Smrg		  fi
1240ca08ab68Smrg		fi ;;
12412c393a42Smrg	    unknown) UNAME_PROCESSOR=powerpc ;;
12422c393a42Smrg	esac
12432c393a42Smrg	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
12442c393a42Smrg	exit ;;
12452c393a42Smrg    *:procnto*:*:* | *:QNX:[0123456789]*:*)
12462c393a42Smrg	UNAME_PROCESSOR=`uname -p`
12472c393a42Smrg	if test "$UNAME_PROCESSOR" = "x86"; then
12482c393a42Smrg		UNAME_PROCESSOR=i386
12492c393a42Smrg		UNAME_MACHINE=pc
12502c393a42Smrg	fi
12512c393a42Smrg	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
12522c393a42Smrg	exit ;;
12532c393a42Smrg    *:QNX:*:4*)
12542c393a42Smrg	echo i386-pc-qnx
12552c393a42Smrg	exit ;;
1256ca08ab68Smrg    NEO-?:NONSTOP_KERNEL:*:*)
1257ca08ab68Smrg	echo neo-tandem-nsk${UNAME_RELEASE}
1258ca08ab68Smrg	exit ;;
12592c393a42Smrg    NSE-?:NONSTOP_KERNEL:*:*)
12602c393a42Smrg	echo nse-tandem-nsk${UNAME_RELEASE}
12612c393a42Smrg	exit ;;
12622c393a42Smrg    NSR-?:NONSTOP_KERNEL:*:*)
12632c393a42Smrg	echo nsr-tandem-nsk${UNAME_RELEASE}
12642c393a42Smrg	exit ;;
12652c393a42Smrg    *:NonStop-UX:*:*)
12662c393a42Smrg	echo mips-compaq-nonstopux
12672c393a42Smrg	exit ;;
12682c393a42Smrg    BS2000:POSIX*:*:*)
12692c393a42Smrg	echo bs2000-siemens-sysv
12702c393a42Smrg	exit ;;
12712c393a42Smrg    DS/*:UNIX_System_V:*:*)
12722c393a42Smrg	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
12732c393a42Smrg	exit ;;
12742c393a42Smrg    *:Plan9:*:*)
12752c393a42Smrg	# "uname -m" is not consistent, so use $cputype instead. 386
12762c393a42Smrg	# is converted to i386 for consistency with other x86
12772c393a42Smrg	# operating systems.
12782c393a42Smrg	if test "$cputype" = "386"; then
12792c393a42Smrg	    UNAME_MACHINE=i386
12802c393a42Smrg	else
12812c393a42Smrg	    UNAME_MACHINE="$cputype"
12822c393a42Smrg	fi
12832c393a42Smrg	echo ${UNAME_MACHINE}-unknown-plan9
12842c393a42Smrg	exit ;;
12852c393a42Smrg    *:TOPS-10:*:*)
12862c393a42Smrg	echo pdp10-unknown-tops10
12872c393a42Smrg	exit ;;
12882c393a42Smrg    *:TENEX:*:*)
12892c393a42Smrg	echo pdp10-unknown-tenex
12902c393a42Smrg	exit ;;
12912c393a42Smrg    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
12922c393a42Smrg	echo pdp10-dec-tops20
12932c393a42Smrg	exit ;;
12942c393a42Smrg    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
12952c393a42Smrg	echo pdp10-xkl-tops20
12962c393a42Smrg	exit ;;
12972c393a42Smrg    *:TOPS-20:*:*)
12982c393a42Smrg	echo pdp10-unknown-tops20
12992c393a42Smrg	exit ;;
13002c393a42Smrg    *:ITS:*:*)
13012c393a42Smrg	echo pdp10-unknown-its
13022c393a42Smrg	exit ;;
13032c393a42Smrg    SEI:*:*:SEIUX)
1304ca08ab68Smrg	echo mips-sei-seiux${UNAME_RELEASE}
13052c393a42Smrg	exit ;;
13062c393a42Smrg    *:DragonFly:*:*)
13072c393a42Smrg	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
13082c393a42Smrg	exit ;;
13092c393a42Smrg    *:*VMS:*:*)
1310ca08ab68Smrg	UNAME_MACHINE=`(uname -p) 2>/dev/null`
13112c393a42Smrg	case "${UNAME_MACHINE}" in
13122c393a42Smrg	    A*) echo alpha-dec-vms ; exit ;;
13132c393a42Smrg	    I*) echo ia64-dec-vms ; exit ;;
13142c393a42Smrg	    V*) echo vax-dec-vms ; exit ;;
13152c393a42Smrg	esac ;;
13162c393a42Smrg    *:XENIX:*:SysV)
13172c393a42Smrg	echo i386-pc-xenix
13182c393a42Smrg	exit ;;
13192c393a42Smrg    i*86:skyos:*:*)
13202c393a42Smrg	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
13212c393a42Smrg	exit ;;
13222c393a42Smrg    i*86:rdos:*:*)
13232c393a42Smrg	echo ${UNAME_MACHINE}-pc-rdos
13242c393a42Smrg	exit ;;
1325ca08ab68Smrg    i*86:AROS:*:*)
1326ca08ab68Smrg	echo ${UNAME_MACHINE}-pc-aros
1327ca08ab68Smrg	exit ;;
1328ca08ab68Smrg    x86_64:VMkernel:*:*)
1329ca08ab68Smrg	echo ${UNAME_MACHINE}-unknown-esx
1330ca08ab68Smrg	exit ;;
13312c393a42Smrgesac
13322c393a42Smrg
13332c393a42Smrg#echo '(No uname command or uname output not recognized.)' 1>&2
13342c393a42Smrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
13352c393a42Smrg
13362c393a42Smrgeval $set_cc_for_build
13372c393a42Smrgcat >$dummy.c <<EOF
13382c393a42Smrg#ifdef _SEQUENT_
13392c393a42Smrg# include <sys/types.h>
13402c393a42Smrg# include <sys/utsname.h>
13412c393a42Smrg#endif
13422c393a42Smrgmain ()
13432c393a42Smrg{
13442c393a42Smrg#if defined (sony)
13452c393a42Smrg#if defined (MIPSEB)
13462c393a42Smrg  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
13472c393a42Smrg     I don't know....  */
13482c393a42Smrg  printf ("mips-sony-bsd\n"); exit (0);
13492c393a42Smrg#else
13502c393a42Smrg#include <sys/param.h>
13512c393a42Smrg  printf ("m68k-sony-newsos%s\n",
13522c393a42Smrg#ifdef NEWSOS4
1353ca08ab68Smrg	"4"
13542c393a42Smrg#else
1355ca08ab68Smrg	""
13562c393a42Smrg#endif
1357ca08ab68Smrg	); exit (0);
13582c393a42Smrg#endif
13592c393a42Smrg#endif
13602c393a42Smrg
13612c393a42Smrg#if defined (__arm) && defined (__acorn) && defined (__unix)
13622c393a42Smrg  printf ("arm-acorn-riscix\n"); exit (0);
13632c393a42Smrg#endif
13642c393a42Smrg
13652c393a42Smrg#if defined (hp300) && !defined (hpux)
13662c393a42Smrg  printf ("m68k-hp-bsd\n"); exit (0);
13672c393a42Smrg#endif
13682c393a42Smrg
13692c393a42Smrg#if defined (NeXT)
13702c393a42Smrg#if !defined (__ARCHITECTURE__)
13712c393a42Smrg#define __ARCHITECTURE__ "m68k"
13722c393a42Smrg#endif
13732c393a42Smrg  int version;
13742c393a42Smrg  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
13752c393a42Smrg  if (version < 4)
13762c393a42Smrg    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
13772c393a42Smrg  else
13782c393a42Smrg    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
13792c393a42Smrg  exit (0);
13802c393a42Smrg#endif
13812c393a42Smrg
13822c393a42Smrg#if defined (MULTIMAX) || defined (n16)
13832c393a42Smrg#if defined (UMAXV)
13842c393a42Smrg  printf ("ns32k-encore-sysv\n"); exit (0);
13852c393a42Smrg#else
13862c393a42Smrg#if defined (CMU)
13872c393a42Smrg  printf ("ns32k-encore-mach\n"); exit (0);
13882c393a42Smrg#else
13892c393a42Smrg  printf ("ns32k-encore-bsd\n"); exit (0);
13902c393a42Smrg#endif
13912c393a42Smrg#endif
13922c393a42Smrg#endif
13932c393a42Smrg
13942c393a42Smrg#if defined (__386BSD__)
13952c393a42Smrg  printf ("i386-pc-bsd\n"); exit (0);
13962c393a42Smrg#endif
13972c393a42Smrg
13982c393a42Smrg#if defined (sequent)
13992c393a42Smrg#if defined (i386)
14002c393a42Smrg  printf ("i386-sequent-dynix\n"); exit (0);
14012c393a42Smrg#endif
14022c393a42Smrg#if defined (ns32000)
14032c393a42Smrg  printf ("ns32k-sequent-dynix\n"); exit (0);
14042c393a42Smrg#endif
14052c393a42Smrg#endif
14062c393a42Smrg
14072c393a42Smrg#if defined (_SEQUENT_)
14082c393a42Smrg    struct utsname un;
14092c393a42Smrg
14102c393a42Smrg    uname(&un);
14112c393a42Smrg
14122c393a42Smrg    if (strncmp(un.version, "V2", 2) == 0) {
14132c393a42Smrg	printf ("i386-sequent-ptx2\n"); exit (0);
14142c393a42Smrg    }
14152c393a42Smrg    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
14162c393a42Smrg	printf ("i386-sequent-ptx1\n"); exit (0);
14172c393a42Smrg    }
14182c393a42Smrg    printf ("i386-sequent-ptx\n"); exit (0);
14192c393a42Smrg
14202c393a42Smrg#endif
14212c393a42Smrg
14222c393a42Smrg#if defined (vax)
14232c393a42Smrg# if !defined (ultrix)
14242c393a42Smrg#  include <sys/param.h>
14252c393a42Smrg#  if defined (BSD)
14262c393a42Smrg#   if BSD == 43
14272c393a42Smrg      printf ("vax-dec-bsd4.3\n"); exit (0);
14282c393a42Smrg#   else
14292c393a42Smrg#    if BSD == 199006
14302c393a42Smrg      printf ("vax-dec-bsd4.3reno\n"); exit (0);
14312c393a42Smrg#    else
14322c393a42Smrg      printf ("vax-dec-bsd\n"); exit (0);
14332c393a42Smrg#    endif
14342c393a42Smrg#   endif
14352c393a42Smrg#  else
14362c393a42Smrg    printf ("vax-dec-bsd\n"); exit (0);
14372c393a42Smrg#  endif
14382c393a42Smrg# else
14392c393a42Smrg    printf ("vax-dec-ultrix\n"); exit (0);
14402c393a42Smrg# endif
14412c393a42Smrg#endif
14422c393a42Smrg
14432c393a42Smrg#if defined (alliant) && defined (i860)
14442c393a42Smrg  printf ("i860-alliant-bsd\n"); exit (0);
14452c393a42Smrg#endif
14462c393a42Smrg
14472c393a42Smrg  exit (1);
14482c393a42Smrg}
14492c393a42SmrgEOF
14502c393a42Smrg
14512c393a42Smrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
14522c393a42Smrg	{ echo "$SYSTEM_NAME"; exit; }
14532c393a42Smrg
14542c393a42Smrg# Apollos put the system type in the environment.
14552c393a42Smrg
14562c393a42Smrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
14572c393a42Smrg
14582c393a42Smrg# Convex versions that predate uname can use getsysinfo(1)
14592c393a42Smrg
14602c393a42Smrgif [ -x /usr/convex/getsysinfo ]
14612c393a42Smrgthen
14622c393a42Smrg    case `getsysinfo -f cpu_type` in
14632c393a42Smrg    c1*)
14642c393a42Smrg	echo c1-convex-bsd
14652c393a42Smrg	exit ;;
14662c393a42Smrg    c2*)
14672c393a42Smrg	if getsysinfo -f scalar_acc
14682c393a42Smrg	then echo c32-convex-bsd
14692c393a42Smrg	else echo c2-convex-bsd
14702c393a42Smrg	fi
14712c393a42Smrg	exit ;;
14722c393a42Smrg    c34*)
14732c393a42Smrg	echo c34-convex-bsd
14742c393a42Smrg	exit ;;
14752c393a42Smrg    c38*)
14762c393a42Smrg	echo c38-convex-bsd
14772c393a42Smrg	exit ;;
14782c393a42Smrg    c4*)
14792c393a42Smrg	echo c4-convex-bsd
14802c393a42Smrg	exit ;;
14812c393a42Smrg    esac
14822c393a42Smrgfi
14832c393a42Smrg
14842c393a42Smrgcat >&2 <<EOF
14852c393a42Smrg$0: unable to guess system type
14862c393a42Smrg
14872c393a42SmrgThis script, last modified $timestamp, has failed to recognize
14882c393a42Smrgthe operating system you are using. It is advised that you
14892c393a42Smrgdownload the most up to date version of the config scripts from
14902c393a42Smrg
14912c393a42Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
14922c393a42Smrgand
14932c393a42Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
14942c393a42Smrg
14952c393a42SmrgIf the version you run ($0) is already up to date, please
14962c393a42Smrgsend the following data and any information you think might be
14972c393a42Smrgpertinent to <config-patches@gnu.org> in order to provide the needed
14982c393a42Smrginformation to handle your system.
14992c393a42Smrg
15002c393a42Smrgconfig.guess timestamp = $timestamp
15012c393a42Smrg
15022c393a42Smrguname -m = `(uname -m) 2>/dev/null || echo unknown`
15032c393a42Smrguname -r = `(uname -r) 2>/dev/null || echo unknown`
15042c393a42Smrguname -s = `(uname -s) 2>/dev/null || echo unknown`
15052c393a42Smrguname -v = `(uname -v) 2>/dev/null || echo unknown`
15062c393a42Smrg
15072c393a42Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
15082c393a42Smrg/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
15092c393a42Smrg
15102c393a42Smrghostinfo               = `(hostinfo) 2>/dev/null`
15112c393a42Smrg/bin/universe          = `(/bin/universe) 2>/dev/null`
15122c393a42Smrg/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
15132c393a42Smrg/bin/arch              = `(/bin/arch) 2>/dev/null`
15142c393a42Smrg/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
15152c393a42Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
15162c393a42Smrg
15172c393a42SmrgUNAME_MACHINE = ${UNAME_MACHINE}
15182c393a42SmrgUNAME_RELEASE = ${UNAME_RELEASE}
15192c393a42SmrgUNAME_SYSTEM  = ${UNAME_SYSTEM}
15202c393a42SmrgUNAME_VERSION = ${UNAME_VERSION}
15212c393a42SmrgEOF
15222c393a42Smrg
15232c393a42Smrgexit 1
15242c393a42Smrg
15252c393a42Smrg# Local variables:
15262c393a42Smrg# eval: (add-hook 'write-file-hooks 'time-stamp)
15272c393a42Smrg# time-stamp-start: "timestamp='"
15282c393a42Smrg# time-stamp-format: "%:y-%02m-%02d"
15292c393a42Smrg# time-stamp-end: "'"
15302c393a42Smrg# End:
1531