config.guess revision bda5b58f
17d5e3a19Smrg#! /bin/sh
27d5e3a19Smrg# Attempt to guess a canonical system name.
37d5e3a19Smrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4bda5b58fSmrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
51568b75bSmrg#   Free Software Foundation, Inc.
67d5e3a19Smrg
7bda5b58fSmrgtimestamp='2010-08-21'
87d5e3a19Smrg
97d5e3a19Smrg# This file is free software; you can redistribute it and/or modify it
107d5e3a19Smrg# under the terms of the GNU General Public License as published by
117d5e3a19Smrg# the Free Software Foundation; either version 2 of the License, or
127d5e3a19Smrg# (at your option) any later version.
137d5e3a19Smrg#
147d5e3a19Smrg# This program is distributed in the hope that it will be useful, but
157d5e3a19Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of
167d5e3a19Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
177d5e3a19Smrg# General Public License for more details.
187d5e3a19Smrg#
197d5e3a19Smrg# You should have received a copy of the GNU General Public License
207d5e3a19Smrg# along with this program; if not, write to the Free Software
217d5e3a19Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
227d5e3a19Smrg# 02110-1301, USA.
237d5e3a19Smrg#
247d5e3a19Smrg# As a special exception to the GNU General Public License, if you
257d5e3a19Smrg# distribute this file as part of a program that contains a
267d5e3a19Smrg# configuration script generated by Autoconf, you may include it under
277d5e3a19Smrg# the same distribution terms that you use for the rest of that program.
287d5e3a19Smrg
297d5e3a19Smrg
30765486e8Smrg# Originally written by Per Bothner.  Please send patches (context
31765486e8Smrg# diff format) to <config-patches@gnu.org> and include a ChangeLog
32765486e8Smrg# entry.
337d5e3a19Smrg#
347d5e3a19Smrg# This script attempts to guess a canonical system name similar to
357d5e3a19Smrg# config.sub.  If it succeeds, it prints the system name on stdout, and
367d5e3a19Smrg# exits with 0.  Otherwise, it exits with 1.
377d5e3a19Smrg#
38765486e8Smrg# You can get the latest version of this script from:
39765486e8Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
407d5e3a19Smrg
417d5e3a19Smrgme=`echo "$0" | sed -e 's,.*/,,'`
427d5e3a19Smrg
437d5e3a19Smrgusage="\
447d5e3a19SmrgUsage: $0 [OPTION]
457d5e3a19Smrg
467d5e3a19SmrgOutput the configuration name of the system \`$me' is run on.
477d5e3a19Smrg
487d5e3a19SmrgOperation modes:
497d5e3a19Smrg  -h, --help         print this help, then exit
507d5e3a19Smrg  -t, --time-stamp   print date of last modification, then exit
517d5e3a19Smrg  -v, --version      print version number, then exit
527d5e3a19Smrg
537d5e3a19SmrgReport bugs and patches to <config-patches@gnu.org>."
547d5e3a19Smrg
557d5e3a19Smrgversion="\
567d5e3a19SmrgGNU config.guess ($timestamp)
577d5e3a19Smrg
587d5e3a19SmrgOriginally written by Per Bothner.
59bda5b58fSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
60bda5b58fSmrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free
61bda5b58fSmrgSoftware Foundation, Inc.
627d5e3a19Smrg
637d5e3a19SmrgThis is free software; see the source for copying conditions.  There is NO
647d5e3a19Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
657d5e3a19Smrg
667d5e3a19Smrghelp="
677d5e3a19SmrgTry \`$me --help' for more information."
687d5e3a19Smrg
697d5e3a19Smrg# Parse command line
707d5e3a19Smrgwhile test $# -gt 0 ; do
717d5e3a19Smrg  case $1 in
727d5e3a19Smrg    --time-stamp | --time* | -t )
737d5e3a19Smrg       echo "$timestamp" ; exit ;;
747d5e3a19Smrg    --version | -v )
757d5e3a19Smrg       echo "$version" ; exit ;;
767d5e3a19Smrg    --help | --h* | -h )
777d5e3a19Smrg       echo "$usage"; exit ;;
787d5e3a19Smrg    -- )     # Stop option processing
797d5e3a19Smrg       shift; break ;;
807d5e3a19Smrg    - )	# Use stdin as input.
817d5e3a19Smrg       break ;;
827d5e3a19Smrg    -* )
837d5e3a19Smrg       echo "$me: invalid option $1$help" >&2
847d5e3a19Smrg       exit 1 ;;
857d5e3a19Smrg    * )
867d5e3a19Smrg       break ;;
877d5e3a19Smrg  esac
887d5e3a19Smrgdone
897d5e3a19Smrg
907d5e3a19Smrgif test $# != 0; then
917d5e3a19Smrg  echo "$me: too many arguments$help" >&2
927d5e3a19Smrg  exit 1
937d5e3a19Smrgfi
947d5e3a19Smrg
95bda5b58fSmrgtrap 'exit 1' HUP INT TERM
967d5e3a19Smrg
977d5e3a19Smrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
987d5e3a19Smrg# compiler to aid in system detection is discouraged as it requires
997d5e3a19Smrg# temporary files to be created and, as you can see below, it is a
1007d5e3a19Smrg# headache to deal with in a portable fashion.
1017d5e3a19Smrg
1027d5e3a19Smrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
1037d5e3a19Smrg# use `HOST_CC' if defined, but it is deprecated.
1047d5e3a19Smrg
1057d5e3a19Smrg# Portable tmp directory creation inspired by the Autoconf team.
1067d5e3a19Smrg
1077d5e3a19Smrgset_cc_for_build='
1087d5e3a19Smrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
109bda5b58fSmrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" HUP INT PIPE TERM ;
1107d5e3a19Smrg: ${TMPDIR=/tmp} ;
1117d5e3a19Smrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
1127d5e3a19Smrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
1137d5e3a19Smrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
1147d5e3a19Smrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
1157d5e3a19Smrgdummy=$tmp/dummy ;
1167d5e3a19Smrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
1177d5e3a19Smrgcase $CC_FOR_BUILD,$HOST_CC,$CC in
1187d5e3a19Smrg ,,)    echo "int x;" > $dummy.c ;
1197d5e3a19Smrg	for c in cc gcc c89 c99 ; do
1207d5e3a19Smrg	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
1217d5e3a19Smrg	     CC_FOR_BUILD="$c"; break ;
1227d5e3a19Smrg	  fi ;
1237d5e3a19Smrg	done ;
1247d5e3a19Smrg	if test x"$CC_FOR_BUILD" = x ; then
1257d5e3a19Smrg	  CC_FOR_BUILD=no_compiler_found ;
1267d5e3a19Smrg	fi
1277d5e3a19Smrg	;;
1287d5e3a19Smrg ,,*)   CC_FOR_BUILD=$CC ;;
1297d5e3a19Smrg ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
1307d5e3a19Smrgesac ; set_cc_for_build= ;'
1317d5e3a19Smrg
1327d5e3a19Smrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
1337d5e3a19Smrg# (ghazi@noc.rutgers.edu 1994-08-24)
1347d5e3a19Smrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then
1357d5e3a19Smrg	PATH=$PATH:/.attbin ; export PATH
1367d5e3a19Smrgfi
1377d5e3a19Smrg
1387d5e3a19SmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
1397d5e3a19SmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
1407d5e3a19SmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
1417d5e3a19SmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
1427d5e3a19Smrg
1437d5e3a19Smrg# Note: order is significant - the case branches are not exclusive.
1447d5e3a19Smrg
1457d5e3a19Smrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
1467d5e3a19Smrg    *:NetBSD:*:*)
1477d5e3a19Smrg	# NetBSD (nbsd) targets should (where applicable) match one or
1487d5e3a19Smrg	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
1497d5e3a19Smrg	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
1507d5e3a19Smrg	# switched to ELF, *-*-netbsd* would select the old
1517d5e3a19Smrg	# object file format.  This provides both forward
1527d5e3a19Smrg	# compatibility and a consistent mechanism for selecting the
1537d5e3a19Smrg	# object file format.
1547d5e3a19Smrg	#
1557d5e3a19Smrg	# Note: NetBSD doesn't particularly care about the vendor
1567d5e3a19Smrg	# portion of the name.  We always set it to "unknown".
1577d5e3a19Smrg	sysctl="sysctl -n hw.machine_arch"
1587d5e3a19Smrg	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
1597d5e3a19Smrg	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
1607d5e3a19Smrg	case "${UNAME_MACHINE_ARCH}" in
1617d5e3a19Smrg	    armeb) machine=armeb-unknown ;;
1627d5e3a19Smrg	    arm*) machine=arm-unknown ;;
1637d5e3a19Smrg	    sh3el) machine=shl-unknown ;;
1647d5e3a19Smrg	    sh3eb) machine=sh-unknown ;;
1651568b75bSmrg	    sh5el) machine=sh5le-unknown ;;
1667d5e3a19Smrg	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
1677d5e3a19Smrg	esac
1687d5e3a19Smrg	# The Operating System including object format, if it has switched
1697d5e3a19Smrg	# to ELF recently, or will in the future.
1707d5e3a19Smrg	case "${UNAME_MACHINE_ARCH}" in
1717d5e3a19Smrg	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
1727d5e3a19Smrg		eval $set_cc_for_build
1737d5e3a19Smrg		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
174765486e8Smrg			| grep -q __ELF__
1757d5e3a19Smrg		then
1767d5e3a19Smrg		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
1777d5e3a19Smrg		    # Return netbsd for either.  FIX?
1787d5e3a19Smrg		    os=netbsd
1797d5e3a19Smrg		else
1807d5e3a19Smrg		    os=netbsdelf
1817d5e3a19Smrg		fi
1827d5e3a19Smrg		;;
1837d5e3a19Smrg	    *)
1847d5e3a19Smrg	        os=netbsd
1857d5e3a19Smrg		;;
1867d5e3a19Smrg	esac
1877d5e3a19Smrg	# The OS release
1887d5e3a19Smrg	# Debian GNU/NetBSD machines have a different userland, and
1897d5e3a19Smrg	# thus, need a distinct triplet. However, they do not need
1907d5e3a19Smrg	# kernel version information, so it can be replaced with a
1917d5e3a19Smrg	# suitable tag, in the style of linux-gnu.
1927d5e3a19Smrg	case "${UNAME_VERSION}" in
1937d5e3a19Smrg	    Debian*)
1947d5e3a19Smrg		release='-gnu'
1957d5e3a19Smrg		;;
1967d5e3a19Smrg	    *)
1977d5e3a19Smrg		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
1987d5e3a19Smrg		;;
1997d5e3a19Smrg	esac
2007d5e3a19Smrg	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
2017d5e3a19Smrg	# contains redundant information, the shorter form:
2027d5e3a19Smrg	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
2037d5e3a19Smrg	echo "${machine}-${os}${release}"
2047d5e3a19Smrg	exit ;;
2057d5e3a19Smrg    *:OpenBSD:*:*)
2067d5e3a19Smrg	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
2077d5e3a19Smrg	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
2087d5e3a19Smrg	exit ;;
2097d5e3a19Smrg    *:ekkoBSD:*:*)
2107d5e3a19Smrg	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
2117d5e3a19Smrg	exit ;;
2127d5e3a19Smrg    *:SolidBSD:*:*)
2137d5e3a19Smrg	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
2147d5e3a19Smrg	exit ;;
2157d5e3a19Smrg    macppc:MirBSD:*:*)
2167d5e3a19Smrg	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
2177d5e3a19Smrg	exit ;;
2187d5e3a19Smrg    *:MirBSD:*:*)
2197d5e3a19Smrg	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
2207d5e3a19Smrg	exit ;;
2217d5e3a19Smrg    alpha:OSF1:*:*)
2227d5e3a19Smrg	case $UNAME_RELEASE in
2237d5e3a19Smrg	*4.0)
2247d5e3a19Smrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
2257d5e3a19Smrg		;;
2267d5e3a19Smrg	*5.*)
2277d5e3a19Smrg	        UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
2287d5e3a19Smrg		;;
2297d5e3a19Smrg	esac
2307d5e3a19Smrg	# According to Compaq, /usr/sbin/psrinfo has been available on
2317d5e3a19Smrg	# OSF/1 and Tru64 systems produced since 1995.  I hope that
2327d5e3a19Smrg	# covers most systems running today.  This code pipes the CPU
2337d5e3a19Smrg	# types through head -n 1, so we only detect the type of CPU 0.
2347d5e3a19Smrg	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
2357d5e3a19Smrg	case "$ALPHA_CPU_TYPE" in
2367d5e3a19Smrg	    "EV4 (21064)")
2377d5e3a19Smrg		UNAME_MACHINE="alpha" ;;
2387d5e3a19Smrg	    "EV4.5 (21064)")
2397d5e3a19Smrg		UNAME_MACHINE="alpha" ;;
2407d5e3a19Smrg	    "LCA4 (21066/21068)")
2417d5e3a19Smrg		UNAME_MACHINE="alpha" ;;
2427d5e3a19Smrg	    "EV5 (21164)")
2437d5e3a19Smrg		UNAME_MACHINE="alphaev5" ;;
2447d5e3a19Smrg	    "EV5.6 (21164A)")
2457d5e3a19Smrg		UNAME_MACHINE="alphaev56" ;;
2467d5e3a19Smrg	    "EV5.6 (21164PC)")
2477d5e3a19Smrg		UNAME_MACHINE="alphapca56" ;;
2487d5e3a19Smrg	    "EV5.7 (21164PC)")
2497d5e3a19Smrg		UNAME_MACHINE="alphapca57" ;;
2507d5e3a19Smrg	    "EV6 (21264)")
2517d5e3a19Smrg		UNAME_MACHINE="alphaev6" ;;
2527d5e3a19Smrg	    "EV6.7 (21264A)")
2537d5e3a19Smrg		UNAME_MACHINE="alphaev67" ;;
2547d5e3a19Smrg	    "EV6.8CB (21264C)")
2557d5e3a19Smrg		UNAME_MACHINE="alphaev68" ;;
2567d5e3a19Smrg	    "EV6.8AL (21264B)")
2577d5e3a19Smrg		UNAME_MACHINE="alphaev68" ;;
2587d5e3a19Smrg	    "EV6.8CX (21264D)")
2597d5e3a19Smrg		UNAME_MACHINE="alphaev68" ;;
2607d5e3a19Smrg	    "EV6.9A (21264/EV69A)")
2617d5e3a19Smrg		UNAME_MACHINE="alphaev69" ;;
2627d5e3a19Smrg	    "EV7 (21364)")
2637d5e3a19Smrg		UNAME_MACHINE="alphaev7" ;;
2647d5e3a19Smrg	    "EV7.9 (21364A)")
2657d5e3a19Smrg		UNAME_MACHINE="alphaev79" ;;
2667d5e3a19Smrg	esac
2677d5e3a19Smrg	# A Pn.n version is a patched version.
2687d5e3a19Smrg	# A Vn.n version is a released version.
2697d5e3a19Smrg	# A Tn.n version is a released field test version.
2707d5e3a19Smrg	# A Xn.n version is an unreleased experimental baselevel.
2717d5e3a19Smrg	# 1.2 uses "1.2" for uname -r.
2727d5e3a19Smrg	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
2737d5e3a19Smrg	exit ;;
2747d5e3a19Smrg    Alpha\ *:Windows_NT*:*)
2757d5e3a19Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
2767d5e3a19Smrg	# Should we change UNAME_MACHINE based on the output of uname instead
2777d5e3a19Smrg	# of the specific Alpha model?
2787d5e3a19Smrg	echo alpha-pc-interix
2797d5e3a19Smrg	exit ;;
2807d5e3a19Smrg    21064:Windows_NT:50:3)
2817d5e3a19Smrg	echo alpha-dec-winnt3.5
2827d5e3a19Smrg	exit ;;
2837d5e3a19Smrg    Amiga*:UNIX_System_V:4.0:*)
2847d5e3a19Smrg	echo m68k-unknown-sysv4
2857d5e3a19Smrg	exit ;;
2867d5e3a19Smrg    *:[Aa]miga[Oo][Ss]:*:*)
2877d5e3a19Smrg	echo ${UNAME_MACHINE}-unknown-amigaos
2887d5e3a19Smrg	exit ;;
2897d5e3a19Smrg    *:[Mm]orph[Oo][Ss]:*:*)
2907d5e3a19Smrg	echo ${UNAME_MACHINE}-unknown-morphos
2917d5e3a19Smrg	exit ;;
2927d5e3a19Smrg    *:OS/390:*:*)
2937d5e3a19Smrg	echo i370-ibm-openedition
2947d5e3a19Smrg	exit ;;
2957d5e3a19Smrg    *:z/VM:*:*)
2967d5e3a19Smrg	echo s390-ibm-zvmoe
2977d5e3a19Smrg	exit ;;
2987d5e3a19Smrg    *:OS400:*:*)
2997d5e3a19Smrg        echo powerpc-ibm-os400
3007d5e3a19Smrg	exit ;;
3017d5e3a19Smrg    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
3027d5e3a19Smrg	echo arm-acorn-riscix${UNAME_RELEASE}
3037d5e3a19Smrg	exit ;;
3047d5e3a19Smrg    arm:riscos:*:*|arm:RISCOS:*:*)
3057d5e3a19Smrg	echo arm-unknown-riscos
3067d5e3a19Smrg	exit ;;
3077d5e3a19Smrg    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
3087d5e3a19Smrg	echo hppa1.1-hitachi-hiuxmpp
3097d5e3a19Smrg	exit ;;
3107d5e3a19Smrg    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
3117d5e3a19Smrg	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
3127d5e3a19Smrg	if test "`(/bin/universe) 2>/dev/null`" = att ; then
3137d5e3a19Smrg		echo pyramid-pyramid-sysv3
3147d5e3a19Smrg	else
3157d5e3a19Smrg		echo pyramid-pyramid-bsd
3167d5e3a19Smrg	fi
3177d5e3a19Smrg	exit ;;
3187d5e3a19Smrg    NILE*:*:*:dcosx)
3197d5e3a19Smrg	echo pyramid-pyramid-svr4
3207d5e3a19Smrg	exit ;;
3217d5e3a19Smrg    DRS?6000:unix:4.0:6*)
3227d5e3a19Smrg	echo sparc-icl-nx6
3237d5e3a19Smrg	exit ;;
3247d5e3a19Smrg    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
3257d5e3a19Smrg	case `/usr/bin/uname -p` in
3267d5e3a19Smrg	    sparc) echo sparc-icl-nx7; exit ;;
3277d5e3a19Smrg	esac ;;
328765486e8Smrg    s390x:SunOS:*:*)
329765486e8Smrg	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
330765486e8Smrg	exit ;;
3317d5e3a19Smrg    sun4H:SunOS:5.*:*)
3327d5e3a19Smrg	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3337d5e3a19Smrg	exit ;;
3347d5e3a19Smrg    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
3357d5e3a19Smrg	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3367d5e3a19Smrg	exit ;;
337765486e8Smrg    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
338765486e8Smrg	echo i386-pc-auroraux${UNAME_RELEASE}
339765486e8Smrg	exit ;;
3401568b75bSmrg    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
341765486e8Smrg	eval $set_cc_for_build
342765486e8Smrg	SUN_ARCH="i386"
343765486e8Smrg	# If there is a compiler, see if it is configured for 64-bit objects.
344765486e8Smrg	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
345765486e8Smrg	# This test works for both compilers.
346765486e8Smrg	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
347765486e8Smrg	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
348765486e8Smrg		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
349765486e8Smrg		grep IS_64BIT_ARCH >/dev/null
350765486e8Smrg	    then
351765486e8Smrg		SUN_ARCH="x86_64"
352765486e8Smrg	    fi
353765486e8Smrg	fi
354765486e8Smrg	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3557d5e3a19Smrg	exit ;;
3567d5e3a19Smrg    sun4*:SunOS:6*:*)
3577d5e3a19Smrg	# According to config.sub, this is the proper way to canonicalize
3587d5e3a19Smrg	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
3597d5e3a19Smrg	# it's likely to be more like Solaris than SunOS4.
3607d5e3a19Smrg	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3617d5e3a19Smrg	exit ;;
3627d5e3a19Smrg    sun4*:SunOS:*:*)
3637d5e3a19Smrg	case "`/usr/bin/arch -k`" in
3647d5e3a19Smrg	    Series*|S4*)
3657d5e3a19Smrg		UNAME_RELEASE=`uname -v`
3667d5e3a19Smrg		;;
3677d5e3a19Smrg	esac
3687d5e3a19Smrg	# Japanese Language versions have a version number like `4.1.3-JL'.
3697d5e3a19Smrg	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
3707d5e3a19Smrg	exit ;;
3717d5e3a19Smrg    sun3*:SunOS:*:*)
3727d5e3a19Smrg	echo m68k-sun-sunos${UNAME_RELEASE}
3737d5e3a19Smrg	exit ;;
3747d5e3a19Smrg    sun*:*:4.2BSD:*)
3757d5e3a19Smrg	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
3767d5e3a19Smrg	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
3777d5e3a19Smrg	case "`/bin/arch`" in
3787d5e3a19Smrg	    sun3)
3797d5e3a19Smrg		echo m68k-sun-sunos${UNAME_RELEASE}
3807d5e3a19Smrg		;;
3817d5e3a19Smrg	    sun4)
3827d5e3a19Smrg		echo sparc-sun-sunos${UNAME_RELEASE}
3837d5e3a19Smrg		;;
3847d5e3a19Smrg	esac
3857d5e3a19Smrg	exit ;;
3867d5e3a19Smrg    aushp:SunOS:*:*)
3877d5e3a19Smrg	echo sparc-auspex-sunos${UNAME_RELEASE}
3887d5e3a19Smrg	exit ;;
3897d5e3a19Smrg    # The situation for MiNT is a little confusing.  The machine name
3907d5e3a19Smrg    # can be virtually everything (everything which is not
3917d5e3a19Smrg    # "atarist" or "atariste" at least should have a processor
3927d5e3a19Smrg    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
3937d5e3a19Smrg    # to the lowercase version "mint" (or "freemint").  Finally
3947d5e3a19Smrg    # the system name "TOS" denotes a system which is actually not
3957d5e3a19Smrg    # MiNT.  But MiNT is downward compatible to TOS, so this should
3967d5e3a19Smrg    # be no problem.
3977d5e3a19Smrg    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
3987d5e3a19Smrg        echo m68k-atari-mint${UNAME_RELEASE}
3997d5e3a19Smrg	exit ;;
4007d5e3a19Smrg    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
4017d5e3a19Smrg	echo m68k-atari-mint${UNAME_RELEASE}
4027d5e3a19Smrg        exit ;;
4037d5e3a19Smrg    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
4047d5e3a19Smrg        echo m68k-atari-mint${UNAME_RELEASE}
4057d5e3a19Smrg	exit ;;
4067d5e3a19Smrg    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
4077d5e3a19Smrg        echo m68k-milan-mint${UNAME_RELEASE}
4087d5e3a19Smrg        exit ;;
4097d5e3a19Smrg    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
4107d5e3a19Smrg        echo m68k-hades-mint${UNAME_RELEASE}
4117d5e3a19Smrg        exit ;;
4127d5e3a19Smrg    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
4137d5e3a19Smrg        echo m68k-unknown-mint${UNAME_RELEASE}
4147d5e3a19Smrg        exit ;;
4157d5e3a19Smrg    m68k:machten:*:*)
4167d5e3a19Smrg	echo m68k-apple-machten${UNAME_RELEASE}
4177d5e3a19Smrg	exit ;;
4187d5e3a19Smrg    powerpc:machten:*:*)
4197d5e3a19Smrg	echo powerpc-apple-machten${UNAME_RELEASE}
4207d5e3a19Smrg	exit ;;
4217d5e3a19Smrg    RISC*:Mach:*:*)
4227d5e3a19Smrg	echo mips-dec-mach_bsd4.3
4237d5e3a19Smrg	exit ;;
4247d5e3a19Smrg    RISC*:ULTRIX:*:*)
4257d5e3a19Smrg	echo mips-dec-ultrix${UNAME_RELEASE}
4267d5e3a19Smrg	exit ;;
4277d5e3a19Smrg    VAX*:ULTRIX*:*:*)
4287d5e3a19Smrg	echo vax-dec-ultrix${UNAME_RELEASE}
4297d5e3a19Smrg	exit ;;
4307d5e3a19Smrg    2020:CLIX:*:* | 2430:CLIX:*:*)
4317d5e3a19Smrg	echo clipper-intergraph-clix${UNAME_RELEASE}
4327d5e3a19Smrg	exit ;;
4337d5e3a19Smrg    mips:*:*:UMIPS | mips:*:*:RISCos)
4347d5e3a19Smrg	eval $set_cc_for_build
4357d5e3a19Smrg	sed 's/^	//' << EOF >$dummy.c
4367d5e3a19Smrg#ifdef __cplusplus
4377d5e3a19Smrg#include <stdio.h>  /* for printf() prototype */
4387d5e3a19Smrg	int main (int argc, char *argv[]) {
4397d5e3a19Smrg#else
4407d5e3a19Smrg	int main (argc, argv) int argc; char *argv[]; {
4417d5e3a19Smrg#endif
4427d5e3a19Smrg	#if defined (host_mips) && defined (MIPSEB)
4437d5e3a19Smrg	#if defined (SYSTYPE_SYSV)
4447d5e3a19Smrg	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
4457d5e3a19Smrg	#endif
4467d5e3a19Smrg	#if defined (SYSTYPE_SVR4)
4477d5e3a19Smrg	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
4487d5e3a19Smrg	#endif
4497d5e3a19Smrg	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
4507d5e3a19Smrg	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
4517d5e3a19Smrg	#endif
4527d5e3a19Smrg	#endif
4537d5e3a19Smrg	  exit (-1);
4547d5e3a19Smrg	}
4557d5e3a19SmrgEOF
4567d5e3a19Smrg	$CC_FOR_BUILD -o $dummy $dummy.c &&
4577d5e3a19Smrg	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
4587d5e3a19Smrg	  SYSTEM_NAME=`$dummy $dummyarg` &&
4597d5e3a19Smrg	    { echo "$SYSTEM_NAME"; exit; }
4607d5e3a19Smrg	echo mips-mips-riscos${UNAME_RELEASE}
4617d5e3a19Smrg	exit ;;
4627d5e3a19Smrg    Motorola:PowerMAX_OS:*:*)
4637d5e3a19Smrg	echo powerpc-motorola-powermax
4647d5e3a19Smrg	exit ;;
4657d5e3a19Smrg    Motorola:*:4.3:PL8-*)
4667d5e3a19Smrg	echo powerpc-harris-powermax
4677d5e3a19Smrg	exit ;;
4687d5e3a19Smrg    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
4697d5e3a19Smrg	echo powerpc-harris-powermax
4707d5e3a19Smrg	exit ;;
4717d5e3a19Smrg    Night_Hawk:Power_UNIX:*:*)
4727d5e3a19Smrg	echo powerpc-harris-powerunix
4737d5e3a19Smrg	exit ;;
4747d5e3a19Smrg    m88k:CX/UX:7*:*)
4757d5e3a19Smrg	echo m88k-harris-cxux7
4767d5e3a19Smrg	exit ;;
4777d5e3a19Smrg    m88k:*:4*:R4*)
4787d5e3a19Smrg	echo m88k-motorola-sysv4
4797d5e3a19Smrg	exit ;;
4807d5e3a19Smrg    m88k:*:3*:R3*)
4817d5e3a19Smrg	echo m88k-motorola-sysv3
4827d5e3a19Smrg	exit ;;
4837d5e3a19Smrg    AViiON:dgux:*:*)
4847d5e3a19Smrg        # DG/UX returns AViiON for all architectures
4857d5e3a19Smrg        UNAME_PROCESSOR=`/usr/bin/uname -p`
4867d5e3a19Smrg	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
4877d5e3a19Smrg	then
4887d5e3a19Smrg	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
4897d5e3a19Smrg	       [ ${TARGET_BINARY_INTERFACE}x = x ]
4907d5e3a19Smrg	    then
4917d5e3a19Smrg		echo m88k-dg-dgux${UNAME_RELEASE}
4927d5e3a19Smrg	    else
4937d5e3a19Smrg		echo m88k-dg-dguxbcs${UNAME_RELEASE}
4947d5e3a19Smrg	    fi
4957d5e3a19Smrg	else
4967d5e3a19Smrg	    echo i586-dg-dgux${UNAME_RELEASE}
4977d5e3a19Smrg	fi
4987d5e3a19Smrg 	exit ;;
4997d5e3a19Smrg    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
5007d5e3a19Smrg	echo m88k-dolphin-sysv3
5017d5e3a19Smrg	exit ;;
5027d5e3a19Smrg    M88*:*:R3*:*)
5037d5e3a19Smrg	# Delta 88k system running SVR3
5047d5e3a19Smrg	echo m88k-motorola-sysv3
5057d5e3a19Smrg	exit ;;
5067d5e3a19Smrg    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
5077d5e3a19Smrg	echo m88k-tektronix-sysv3
5087d5e3a19Smrg	exit ;;
5097d5e3a19Smrg    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
5107d5e3a19Smrg	echo m68k-tektronix-bsd
5117d5e3a19Smrg	exit ;;
5127d5e3a19Smrg    *:IRIX*:*:*)
5137d5e3a19Smrg	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
5147d5e3a19Smrg	exit ;;
5157d5e3a19Smrg    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
5167d5e3a19Smrg	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
5177d5e3a19Smrg	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
5187d5e3a19Smrg    i*86:AIX:*:*)
5197d5e3a19Smrg	echo i386-ibm-aix
5207d5e3a19Smrg	exit ;;
5217d5e3a19Smrg    ia64:AIX:*:*)
5227d5e3a19Smrg	if [ -x /usr/bin/oslevel ] ; then
5237d5e3a19Smrg		IBM_REV=`/usr/bin/oslevel`
5247d5e3a19Smrg	else
5257d5e3a19Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
5267d5e3a19Smrg	fi
5277d5e3a19Smrg	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
5287d5e3a19Smrg	exit ;;
5297d5e3a19Smrg    *:AIX:2:3)
5307d5e3a19Smrg	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
5317d5e3a19Smrg		eval $set_cc_for_build
5327d5e3a19Smrg		sed 's/^		//' << EOF >$dummy.c
5337d5e3a19Smrg		#include <sys/systemcfg.h>
5347d5e3a19Smrg
5357d5e3a19Smrg		main()
5367d5e3a19Smrg			{
5377d5e3a19Smrg			if (!__power_pc())
5387d5e3a19Smrg				exit(1);
5397d5e3a19Smrg			puts("powerpc-ibm-aix3.2.5");
5407d5e3a19Smrg			exit(0);
5417d5e3a19Smrg			}
5427d5e3a19SmrgEOF
5437d5e3a19Smrg		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
5447d5e3a19Smrg		then
5457d5e3a19Smrg			echo "$SYSTEM_NAME"
5467d5e3a19Smrg		else
5477d5e3a19Smrg			echo rs6000-ibm-aix3.2.5
5487d5e3a19Smrg		fi
5497d5e3a19Smrg	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
5507d5e3a19Smrg		echo rs6000-ibm-aix3.2.4
5517d5e3a19Smrg	else
5527d5e3a19Smrg		echo rs6000-ibm-aix3.2
5537d5e3a19Smrg	fi
5547d5e3a19Smrg	exit ;;
555bda5b58fSmrg    *:AIX:*:[4567])
5567d5e3a19Smrg	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
5577d5e3a19Smrg	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
5587d5e3a19Smrg		IBM_ARCH=rs6000
5597d5e3a19Smrg	else
5607d5e3a19Smrg		IBM_ARCH=powerpc
5617d5e3a19Smrg	fi
5627d5e3a19Smrg	if [ -x /usr/bin/oslevel ] ; then
5637d5e3a19Smrg		IBM_REV=`/usr/bin/oslevel`
5647d5e3a19Smrg	else
5657d5e3a19Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
5667d5e3a19Smrg	fi
5677d5e3a19Smrg	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
5687d5e3a19Smrg	exit ;;
5697d5e3a19Smrg    *:AIX:*:*)
5707d5e3a19Smrg	echo rs6000-ibm-aix
5717d5e3a19Smrg	exit ;;
5727d5e3a19Smrg    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
5737d5e3a19Smrg	echo romp-ibm-bsd4.4
5747d5e3a19Smrg	exit ;;
5757d5e3a19Smrg    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
5767d5e3a19Smrg	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
5777d5e3a19Smrg	exit ;;                             # report: romp-ibm BSD 4.3
5787d5e3a19Smrg    *:BOSX:*:*)
5797d5e3a19Smrg	echo rs6000-bull-bosx
5807d5e3a19Smrg	exit ;;
5817d5e3a19Smrg    DPX/2?00:B.O.S.:*:*)
5827d5e3a19Smrg	echo m68k-bull-sysv3
5837d5e3a19Smrg	exit ;;
5847d5e3a19Smrg    9000/[34]??:4.3bsd:1.*:*)
5857d5e3a19Smrg	echo m68k-hp-bsd
5867d5e3a19Smrg	exit ;;
5877d5e3a19Smrg    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
5887d5e3a19Smrg	echo m68k-hp-bsd4.4
5897d5e3a19Smrg	exit ;;
5907d5e3a19Smrg    9000/[34678]??:HP-UX:*:*)
5917d5e3a19Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
5927d5e3a19Smrg	case "${UNAME_MACHINE}" in
5937d5e3a19Smrg	    9000/31? )            HP_ARCH=m68000 ;;
5947d5e3a19Smrg	    9000/[34]?? )         HP_ARCH=m68k ;;
5957d5e3a19Smrg	    9000/[678][0-9][0-9])
5967d5e3a19Smrg		if [ -x /usr/bin/getconf ]; then
5977d5e3a19Smrg		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
5987d5e3a19Smrg                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
5997d5e3a19Smrg                    case "${sc_cpu_version}" in
6007d5e3a19Smrg                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
6017d5e3a19Smrg                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
6027d5e3a19Smrg                      532)                      # CPU_PA_RISC2_0
6037d5e3a19Smrg                        case "${sc_kernel_bits}" in
6047d5e3a19Smrg                          32) HP_ARCH="hppa2.0n" ;;
6057d5e3a19Smrg                          64) HP_ARCH="hppa2.0w" ;;
6067d5e3a19Smrg			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
6077d5e3a19Smrg                        esac ;;
6087d5e3a19Smrg                    esac
6097d5e3a19Smrg		fi
6107d5e3a19Smrg		if [ "${HP_ARCH}" = "" ]; then
6117d5e3a19Smrg		    eval $set_cc_for_build
6127d5e3a19Smrg		    sed 's/^              //' << EOF >$dummy.c
6137d5e3a19Smrg
6147d5e3a19Smrg              #define _HPUX_SOURCE
6157d5e3a19Smrg              #include <stdlib.h>
6167d5e3a19Smrg              #include <unistd.h>
6177d5e3a19Smrg
6187d5e3a19Smrg              int main ()
6197d5e3a19Smrg              {
6207d5e3a19Smrg              #if defined(_SC_KERNEL_BITS)
6217d5e3a19Smrg                  long bits = sysconf(_SC_KERNEL_BITS);
6227d5e3a19Smrg              #endif
6237d5e3a19Smrg                  long cpu  = sysconf (_SC_CPU_VERSION);
6247d5e3a19Smrg
6257d5e3a19Smrg                  switch (cpu)
6267d5e3a19Smrg              	{
6277d5e3a19Smrg              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
6287d5e3a19Smrg              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
6297d5e3a19Smrg              	case CPU_PA_RISC2_0:
6307d5e3a19Smrg              #if defined(_SC_KERNEL_BITS)
6317d5e3a19Smrg              	    switch (bits)
6327d5e3a19Smrg              		{
6337d5e3a19Smrg              		case 64: puts ("hppa2.0w"); break;
6347d5e3a19Smrg              		case 32: puts ("hppa2.0n"); break;
6357d5e3a19Smrg              		default: puts ("hppa2.0"); break;
6367d5e3a19Smrg              		} break;
6377d5e3a19Smrg              #else  /* !defined(_SC_KERNEL_BITS) */
6387d5e3a19Smrg              	    puts ("hppa2.0"); break;
6397d5e3a19Smrg              #endif
6407d5e3a19Smrg              	default: puts ("hppa1.0"); break;
6417d5e3a19Smrg              	}
6427d5e3a19Smrg                  exit (0);
6437d5e3a19Smrg              }
6447d5e3a19SmrgEOF
6457d5e3a19Smrg		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
6467d5e3a19Smrg		    test -z "$HP_ARCH" && HP_ARCH=hppa
6477d5e3a19Smrg		fi ;;
6487d5e3a19Smrg	esac
6497d5e3a19Smrg	if [ ${HP_ARCH} = "hppa2.0w" ]
6507d5e3a19Smrg	then
6517d5e3a19Smrg	    eval $set_cc_for_build
6527d5e3a19Smrg
6537d5e3a19Smrg	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
6547d5e3a19Smrg	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
6557d5e3a19Smrg	    # generating 64-bit code.  GNU and HP use different nomenclature:
6567d5e3a19Smrg	    #
6577d5e3a19Smrg	    # $ CC_FOR_BUILD=cc ./config.guess
6587d5e3a19Smrg	    # => hppa2.0w-hp-hpux11.23
6597d5e3a19Smrg	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
6607d5e3a19Smrg	    # => hppa64-hp-hpux11.23
6617d5e3a19Smrg
6627d5e3a19Smrg	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
663765486e8Smrg		grep -q __LP64__
6647d5e3a19Smrg	    then
6657d5e3a19Smrg		HP_ARCH="hppa2.0w"
6667d5e3a19Smrg	    else
6677d5e3a19Smrg		HP_ARCH="hppa64"
6687d5e3a19Smrg	    fi
6697d5e3a19Smrg	fi
6707d5e3a19Smrg	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
6717d5e3a19Smrg	exit ;;
6727d5e3a19Smrg    ia64:HP-UX:*:*)
6737d5e3a19Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
6747d5e3a19Smrg	echo ia64-hp-hpux${HPUX_REV}
6757d5e3a19Smrg	exit ;;
6767d5e3a19Smrg    3050*:HI-UX:*:*)
6777d5e3a19Smrg	eval $set_cc_for_build
6787d5e3a19Smrg	sed 's/^	//' << EOF >$dummy.c
6797d5e3a19Smrg	#include <unistd.h>
6807d5e3a19Smrg	int
6817d5e3a19Smrg	main ()
6827d5e3a19Smrg	{
6837d5e3a19Smrg	  long cpu = sysconf (_SC_CPU_VERSION);
6847d5e3a19Smrg	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
6857d5e3a19Smrg	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
6867d5e3a19Smrg	     results, however.  */
6877d5e3a19Smrg	  if (CPU_IS_PA_RISC (cpu))
6887d5e3a19Smrg	    {
6897d5e3a19Smrg	      switch (cpu)
6907d5e3a19Smrg		{
6917d5e3a19Smrg		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
6927d5e3a19Smrg		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
6937d5e3a19Smrg		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
6947d5e3a19Smrg		  default: puts ("hppa-hitachi-hiuxwe2"); break;
6957d5e3a19Smrg		}
6967d5e3a19Smrg	    }
6977d5e3a19Smrg	  else if (CPU_IS_HP_MC68K (cpu))
6987d5e3a19Smrg	    puts ("m68k-hitachi-hiuxwe2");
6997d5e3a19Smrg	  else puts ("unknown-hitachi-hiuxwe2");
7007d5e3a19Smrg	  exit (0);
7017d5e3a19Smrg	}
7027d5e3a19SmrgEOF
7037d5e3a19Smrg	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
7047d5e3a19Smrg		{ echo "$SYSTEM_NAME"; exit; }
7057d5e3a19Smrg	echo unknown-hitachi-hiuxwe2
7067d5e3a19Smrg	exit ;;
7077d5e3a19Smrg    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
7087d5e3a19Smrg	echo hppa1.1-hp-bsd
7097d5e3a19Smrg	exit ;;
7107d5e3a19Smrg    9000/8??:4.3bsd:*:*)
7117d5e3a19Smrg	echo hppa1.0-hp-bsd
7127d5e3a19Smrg	exit ;;
7137d5e3a19Smrg    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
7147d5e3a19Smrg	echo hppa1.0-hp-mpeix
7157d5e3a19Smrg	exit ;;
7167d5e3a19Smrg    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
7177d5e3a19Smrg	echo hppa1.1-hp-osf
7187d5e3a19Smrg	exit ;;
7197d5e3a19Smrg    hp8??:OSF1:*:*)
7207d5e3a19Smrg	echo hppa1.0-hp-osf
7217d5e3a19Smrg	exit ;;
7227d5e3a19Smrg    i*86:OSF1:*:*)
7237d5e3a19Smrg	if [ -x /usr/sbin/sysversion ] ; then
7247d5e3a19Smrg	    echo ${UNAME_MACHINE}-unknown-osf1mk
7257d5e3a19Smrg	else
7267d5e3a19Smrg	    echo ${UNAME_MACHINE}-unknown-osf1
7277d5e3a19Smrg	fi
7287d5e3a19Smrg	exit ;;
7297d5e3a19Smrg    parisc*:Lites*:*:*)
7307d5e3a19Smrg	echo hppa1.1-hp-lites
7317d5e3a19Smrg	exit ;;
7327d5e3a19Smrg    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
7337d5e3a19Smrg	echo c1-convex-bsd
7347d5e3a19Smrg        exit ;;
7357d5e3a19Smrg    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
7367d5e3a19Smrg	if getsysinfo -f scalar_acc
7377d5e3a19Smrg	then echo c32-convex-bsd
7387d5e3a19Smrg	else echo c2-convex-bsd
7397d5e3a19Smrg	fi
7407d5e3a19Smrg        exit ;;
7417d5e3a19Smrg    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
7427d5e3a19Smrg	echo c34-convex-bsd
7437d5e3a19Smrg        exit ;;
7447d5e3a19Smrg    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
7457d5e3a19Smrg	echo c38-convex-bsd
7467d5e3a19Smrg        exit ;;
7477d5e3a19Smrg    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
7487d5e3a19Smrg	echo c4-convex-bsd
7497d5e3a19Smrg        exit ;;
7507d5e3a19Smrg    CRAY*Y-MP:*:*:*)
7517d5e3a19Smrg	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7527d5e3a19Smrg	exit ;;
7537d5e3a19Smrg    CRAY*[A-Z]90:*:*:*)
7547d5e3a19Smrg	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
7557d5e3a19Smrg	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
7567d5e3a19Smrg	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
7577d5e3a19Smrg	      -e 's/\.[^.]*$/.X/'
7587d5e3a19Smrg	exit ;;
7597d5e3a19Smrg    CRAY*TS:*:*:*)
7607d5e3a19Smrg	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7617d5e3a19Smrg	exit ;;
7627d5e3a19Smrg    CRAY*T3E:*:*:*)
7637d5e3a19Smrg	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7647d5e3a19Smrg	exit ;;
7657d5e3a19Smrg    CRAY*SV1:*:*:*)
7667d5e3a19Smrg	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7677d5e3a19Smrg	exit ;;
7687d5e3a19Smrg    *:UNICOS/mp:*:*)
7697d5e3a19Smrg	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7707d5e3a19Smrg	exit ;;
7717d5e3a19Smrg    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
7727d5e3a19Smrg	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
7737d5e3a19Smrg        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
7747d5e3a19Smrg        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
7757d5e3a19Smrg        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
7767d5e3a19Smrg        exit ;;
7777d5e3a19Smrg    5000:UNIX_System_V:4.*:*)
7787d5e3a19Smrg        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
7797d5e3a19Smrg        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
7807d5e3a19Smrg        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
7817d5e3a19Smrg	exit ;;
7827d5e3a19Smrg    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
7837d5e3a19Smrg	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
7847d5e3a19Smrg	exit ;;
7857d5e3a19Smrg    sparc*:BSD/OS:*:*)
7867d5e3a19Smrg	echo sparc-unknown-bsdi${UNAME_RELEASE}
7877d5e3a19Smrg	exit ;;
7887d5e3a19Smrg    *:BSD/OS:*:*)
7897d5e3a19Smrg	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
7907d5e3a19Smrg	exit ;;
7917d5e3a19Smrg    *:FreeBSD:*:*)
7927d5e3a19Smrg	case ${UNAME_MACHINE} in
7937d5e3a19Smrg	    pc98)
7947d5e3a19Smrg		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7957d5e3a19Smrg	    amd64)
7967d5e3a19Smrg		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7977d5e3a19Smrg	    *)
7987d5e3a19Smrg		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7997d5e3a19Smrg	esac
8007d5e3a19Smrg	exit ;;
8017d5e3a19Smrg    i*:CYGWIN*:*)
8027d5e3a19Smrg	echo ${UNAME_MACHINE}-pc-cygwin
8037d5e3a19Smrg	exit ;;
8041568b75bSmrg    *:MINGW*:*)
8057d5e3a19Smrg	echo ${UNAME_MACHINE}-pc-mingw32
8067d5e3a19Smrg	exit ;;
8077d5e3a19Smrg    i*:windows32*:*)
8087d5e3a19Smrg    	# uname -m includes "-pc" on this system.
8097d5e3a19Smrg    	echo ${UNAME_MACHINE}-mingw32
8107d5e3a19Smrg	exit ;;
8117d5e3a19Smrg    i*:PW*:*)
8127d5e3a19Smrg	echo ${UNAME_MACHINE}-pc-pw32
8137d5e3a19Smrg	exit ;;
814765486e8Smrg    *:Interix*:*)
8151568b75bSmrg    	case ${UNAME_MACHINE} in
8161568b75bSmrg	    x86)
8171568b75bSmrg		echo i586-pc-interix${UNAME_RELEASE}
8181568b75bSmrg		exit ;;
819765486e8Smrg	    authenticamd | genuineintel | EM64T)
8201568b75bSmrg		echo x86_64-unknown-interix${UNAME_RELEASE}
8211568b75bSmrg		exit ;;
8221568b75bSmrg	    IA64)
8231568b75bSmrg		echo ia64-unknown-interix${UNAME_RELEASE}
8241568b75bSmrg		exit ;;
8251568b75bSmrg	esac ;;
8267d5e3a19Smrg    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
8277d5e3a19Smrg	echo i${UNAME_MACHINE}-pc-mks
8287d5e3a19Smrg	exit ;;
829765486e8Smrg    8664:Windows_NT:*)
830765486e8Smrg	echo x86_64-pc-mks
831765486e8Smrg	exit ;;
8327d5e3a19Smrg    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
8337d5e3a19Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
8347d5e3a19Smrg	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
8357d5e3a19Smrg	# UNAME_MACHINE based on the output of uname instead of i386?
8367d5e3a19Smrg	echo i586-pc-interix
8377d5e3a19Smrg	exit ;;
8387d5e3a19Smrg    i*:UWIN*:*)
8397d5e3a19Smrg	echo ${UNAME_MACHINE}-pc-uwin
8407d5e3a19Smrg	exit ;;
8417d5e3a19Smrg    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
8427d5e3a19Smrg	echo x86_64-unknown-cygwin
8437d5e3a19Smrg	exit ;;
8447d5e3a19Smrg    p*:CYGWIN*:*)
8457d5e3a19Smrg	echo powerpcle-unknown-cygwin
8467d5e3a19Smrg	exit ;;
8477d5e3a19Smrg    prep*:SunOS:5.*:*)
8487d5e3a19Smrg	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
8497d5e3a19Smrg	exit ;;
8507d5e3a19Smrg    *:GNU:*:*)
8517d5e3a19Smrg	# the GNU system
8527d5e3a19Smrg	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
8537d5e3a19Smrg	exit ;;
8547d5e3a19Smrg    *:GNU/*:*:*)
8557d5e3a19Smrg	# other systems with GNU libc and userland
8567d5e3a19Smrg	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
8577d5e3a19Smrg	exit ;;
8587d5e3a19Smrg    i*86:Minix:*:*)
8597d5e3a19Smrg	echo ${UNAME_MACHINE}-pc-minix
8607d5e3a19Smrg	exit ;;
861765486e8Smrg    alpha:Linux:*:*)
862765486e8Smrg	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
863765486e8Smrg	  EV5)   UNAME_MACHINE=alphaev5 ;;
864765486e8Smrg	  EV56)  UNAME_MACHINE=alphaev56 ;;
865765486e8Smrg	  PCA56) UNAME_MACHINE=alphapca56 ;;
866765486e8Smrg	  PCA57) UNAME_MACHINE=alphapca56 ;;
867765486e8Smrg	  EV6)   UNAME_MACHINE=alphaev6 ;;
868765486e8Smrg	  EV67)  UNAME_MACHINE=alphaev67 ;;
869765486e8Smrg	  EV68*) UNAME_MACHINE=alphaev68 ;;
870765486e8Smrg        esac
871765486e8Smrg	objdump --private-headers /bin/sh | grep -q ld.so.1
872765486e8Smrg	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
873765486e8Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
874765486e8Smrg	exit ;;
8757d5e3a19Smrg    arm*:Linux:*:*)
8761568b75bSmrg	eval $set_cc_for_build
8771568b75bSmrg	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
8781568b75bSmrg	    | grep -q __ARM_EABI__
8791568b75bSmrg	then
8801568b75bSmrg	    echo ${UNAME_MACHINE}-unknown-linux-gnu
8811568b75bSmrg	else
8821568b75bSmrg	    echo ${UNAME_MACHINE}-unknown-linux-gnueabi
8831568b75bSmrg	fi
8847d5e3a19Smrg	exit ;;
8857d5e3a19Smrg    avr32*:Linux:*:*)
8867d5e3a19Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
8877d5e3a19Smrg	exit ;;
8887d5e3a19Smrg    cris:Linux:*:*)
8897d5e3a19Smrg	echo cris-axis-linux-gnu
8907d5e3a19Smrg	exit ;;
8917d5e3a19Smrg    crisv32:Linux:*:*)
8927d5e3a19Smrg	echo crisv32-axis-linux-gnu
8937d5e3a19Smrg	exit ;;
8947d5e3a19Smrg    frv:Linux:*:*)
8957d5e3a19Smrg    	echo frv-unknown-linux-gnu
8967d5e3a19Smrg	exit ;;
897765486e8Smrg    i*86:Linux:*:*)
898765486e8Smrg	LIBC=gnu
899765486e8Smrg	eval $set_cc_for_build
900765486e8Smrg	sed 's/^	//' << EOF >$dummy.c
901765486e8Smrg	#ifdef __dietlibc__
902765486e8Smrg	LIBC=dietlibc
903765486e8Smrg	#endif
904765486e8SmrgEOF
905765486e8Smrg	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
906765486e8Smrg	echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
907765486e8Smrg	exit ;;
9087d5e3a19Smrg    ia64:Linux:*:*)
9097d5e3a19Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9107d5e3a19Smrg	exit ;;
9117d5e3a19Smrg    m32r*:Linux:*:*)
9127d5e3a19Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9137d5e3a19Smrg	exit ;;
9147d5e3a19Smrg    m68*:Linux:*:*)
9157d5e3a19Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9167d5e3a19Smrg	exit ;;
917765486e8Smrg    mips:Linux:*:* | mips64:Linux:*:*)
9187d5e3a19Smrg	eval $set_cc_for_build
9197d5e3a19Smrg	sed 's/^	//' << EOF >$dummy.c
9207d5e3a19Smrg	#undef CPU
921765486e8Smrg	#undef ${UNAME_MACHINE}
922765486e8Smrg	#undef ${UNAME_MACHINE}el
9237d5e3a19Smrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
924765486e8Smrg	CPU=${UNAME_MACHINE}el
9257d5e3a19Smrg	#else
9267d5e3a19Smrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
927765486e8Smrg	CPU=${UNAME_MACHINE}
9287d5e3a19Smrg	#else
9297d5e3a19Smrg	CPU=
9307d5e3a19Smrg	#endif
9317d5e3a19Smrg	#endif
9327d5e3a19SmrgEOF
933765486e8Smrg	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
9347d5e3a19Smrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
9357d5e3a19Smrg	;;
9367d5e3a19Smrg    or32:Linux:*:*)
9377d5e3a19Smrg	echo or32-unknown-linux-gnu
9387d5e3a19Smrg	exit ;;
939765486e8Smrg    padre:Linux:*:*)
940765486e8Smrg	echo sparc-unknown-linux-gnu
9417d5e3a19Smrg	exit ;;
942765486e8Smrg    parisc64:Linux:*:* | hppa64:Linux:*:*)
943765486e8Smrg	echo hppa64-unknown-linux-gnu
9447d5e3a19Smrg	exit ;;
9457d5e3a19Smrg    parisc:Linux:*:* | hppa:Linux:*:*)
9467d5e3a19Smrg	# Look for CPU level
9477d5e3a19Smrg	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
9487d5e3a19Smrg	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
9497d5e3a19Smrg	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
9507d5e3a19Smrg	  *)    echo hppa-unknown-linux-gnu ;;
9517d5e3a19Smrg	esac
9527d5e3a19Smrg	exit ;;
953765486e8Smrg    ppc64:Linux:*:*)
954765486e8Smrg	echo powerpc64-unknown-linux-gnu
955765486e8Smrg	exit ;;
956765486e8Smrg    ppc:Linux:*:*)
957765486e8Smrg	echo powerpc-unknown-linux-gnu
9587d5e3a19Smrg	exit ;;
9597d5e3a19Smrg    s390:Linux:*:* | s390x:Linux:*:*)
9607d5e3a19Smrg	echo ${UNAME_MACHINE}-ibm-linux
9617d5e3a19Smrg	exit ;;
9627d5e3a19Smrg    sh64*:Linux:*:*)
9637d5e3a19Smrg    	echo ${UNAME_MACHINE}-unknown-linux-gnu
9647d5e3a19Smrg	exit ;;
9657d5e3a19Smrg    sh*:Linux:*:*)
9667d5e3a19Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9677d5e3a19Smrg	exit ;;
9687d5e3a19Smrg    sparc:Linux:*:* | sparc64:Linux:*:*)
9697d5e3a19Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9707d5e3a19Smrg	exit ;;
971bda5b58fSmrg    tile*:Linux:*:*)
972bda5b58fSmrg	echo ${UNAME_MACHINE}-tilera-linux-gnu
973bda5b58fSmrg	exit ;;
9747d5e3a19Smrg    vax:Linux:*:*)
9757d5e3a19Smrg	echo ${UNAME_MACHINE}-dec-linux-gnu
9767d5e3a19Smrg	exit ;;
9777d5e3a19Smrg    x86_64:Linux:*:*)
9787d5e3a19Smrg	echo x86_64-unknown-linux-gnu
9797d5e3a19Smrg	exit ;;
9801568b75bSmrg    xtensa*:Linux:*:*)
9811568b75bSmrg    	echo ${UNAME_MACHINE}-unknown-linux-gnu
9821568b75bSmrg	exit ;;
9837d5e3a19Smrg    i*86:DYNIX/ptx:4*:*)
9847d5e3a19Smrg	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
9857d5e3a19Smrg	# earlier versions are messed up and put the nodename in both
9867d5e3a19Smrg	# sysname and nodename.
9877d5e3a19Smrg	echo i386-sequent-sysv4
9887d5e3a19Smrg	exit ;;
9897d5e3a19Smrg    i*86:UNIX_SV:4.2MP:2.*)
9907d5e3a19Smrg        # Unixware is an offshoot of SVR4, but it has its own version
9917d5e3a19Smrg        # number series starting with 2...
9927d5e3a19Smrg        # I am not positive that other SVR4 systems won't match this,
9937d5e3a19Smrg	# I just have to hope.  -- rms.
9947d5e3a19Smrg        # Use sysv4.2uw... so that sysv4* matches it.
9957d5e3a19Smrg	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
9967d5e3a19Smrg	exit ;;
9977d5e3a19Smrg    i*86:OS/2:*:*)
9987d5e3a19Smrg	# If we were able to find `uname', then EMX Unix compatibility
9997d5e3a19Smrg	# is probably installed.
10007d5e3a19Smrg	echo ${UNAME_MACHINE}-pc-os2-emx
10017d5e3a19Smrg	exit ;;
10027d5e3a19Smrg    i*86:XTS-300:*:STOP)
10037d5e3a19Smrg	echo ${UNAME_MACHINE}-unknown-stop
10047d5e3a19Smrg	exit ;;
10057d5e3a19Smrg    i*86:atheos:*:*)
10067d5e3a19Smrg	echo ${UNAME_MACHINE}-unknown-atheos
10077d5e3a19Smrg	exit ;;
10087d5e3a19Smrg    i*86:syllable:*:*)
10097d5e3a19Smrg	echo ${UNAME_MACHINE}-pc-syllable
10107d5e3a19Smrg	exit ;;
1011765486e8Smrg    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
10127d5e3a19Smrg	echo i386-unknown-lynxos${UNAME_RELEASE}
10137d5e3a19Smrg	exit ;;
10147d5e3a19Smrg    i*86:*DOS:*:*)
10157d5e3a19Smrg	echo ${UNAME_MACHINE}-pc-msdosdjgpp
10167d5e3a19Smrg	exit ;;
10177d5e3a19Smrg    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
10187d5e3a19Smrg	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
10197d5e3a19Smrg	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
10207d5e3a19Smrg		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
10217d5e3a19Smrg	else
10227d5e3a19Smrg		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
10237d5e3a19Smrg	fi
10247d5e3a19Smrg	exit ;;
10257d5e3a19Smrg    i*86:*:5:[678]*)
10267d5e3a19Smrg    	# UnixWare 7.x, OpenUNIX and OpenServer 6.
10277d5e3a19Smrg	case `/bin/uname -X | grep "^Machine"` in
10287d5e3a19Smrg	    *486*)	     UNAME_MACHINE=i486 ;;
10297d5e3a19Smrg	    *Pentium)	     UNAME_MACHINE=i586 ;;
10307d5e3a19Smrg	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
10317d5e3a19Smrg	esac
10327d5e3a19Smrg	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
10337d5e3a19Smrg	exit ;;
10347d5e3a19Smrg    i*86:*:3.2:*)
10357d5e3a19Smrg	if test -f /usr/options/cb.name; then
10367d5e3a19Smrg		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
10377d5e3a19Smrg		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
10387d5e3a19Smrg	elif /bin/uname -X 2>/dev/null >/dev/null ; then
10397d5e3a19Smrg		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
10407d5e3a19Smrg		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
10417d5e3a19Smrg		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
10427d5e3a19Smrg			&& UNAME_MACHINE=i586
10437d5e3a19Smrg		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
10447d5e3a19Smrg			&& UNAME_MACHINE=i686
10457d5e3a19Smrg		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
10467d5e3a19Smrg			&& UNAME_MACHINE=i686
10477d5e3a19Smrg		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
10487d5e3a19Smrg	else
10497d5e3a19Smrg		echo ${UNAME_MACHINE}-pc-sysv32
10507d5e3a19Smrg	fi
10517d5e3a19Smrg	exit ;;
10527d5e3a19Smrg    pc:*:*:*)
10537d5e3a19Smrg	# Left here for compatibility:
10547d5e3a19Smrg        # uname -m prints for DJGPP always 'pc', but it prints nothing about
1055765486e8Smrg        # the processor, so we play safe by assuming i586.
1056765486e8Smrg	# Note: whatever this is, it MUST be the same as what config.sub
1057765486e8Smrg	# prints for the "djgpp" host, or else GDB configury will decide that
1058765486e8Smrg	# this is a cross-build.
1059765486e8Smrg	echo i586-pc-msdosdjgpp
10607d5e3a19Smrg        exit ;;
10617d5e3a19Smrg    Intel:Mach:3*:*)
10627d5e3a19Smrg	echo i386-pc-mach3
10637d5e3a19Smrg	exit ;;
10647d5e3a19Smrg    paragon:*:*:*)
10657d5e3a19Smrg	echo i860-intel-osf1
10667d5e3a19Smrg	exit ;;
10677d5e3a19Smrg    i860:*:4.*:*) # i860-SVR4
10687d5e3a19Smrg	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
10697d5e3a19Smrg	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
10707d5e3a19Smrg	else # Add other i860-SVR4 vendors below as they are discovered.
10717d5e3a19Smrg	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
10727d5e3a19Smrg	fi
10737d5e3a19Smrg	exit ;;
10747d5e3a19Smrg    mini*:CTIX:SYS*5:*)
10757d5e3a19Smrg	# "miniframe"
10767d5e3a19Smrg	echo m68010-convergent-sysv
10777d5e3a19Smrg	exit ;;
10787d5e3a19Smrg    mc68k:UNIX:SYSTEM5:3.51m)
10797d5e3a19Smrg	echo m68k-convergent-sysv
10807d5e3a19Smrg	exit ;;
10817d5e3a19Smrg    M680?0:D-NIX:5.3:*)
10827d5e3a19Smrg	echo m68k-diab-dnix
10837d5e3a19Smrg	exit ;;
10847d5e3a19Smrg    M68*:*:R3V[5678]*:*)
10857d5e3a19Smrg	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
10867d5e3a19Smrg    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)
10877d5e3a19Smrg	OS_REL=''
10887d5e3a19Smrg	test -r /etc/.relid \
10897d5e3a19Smrg	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
10907d5e3a19Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
10917d5e3a19Smrg	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
10927d5e3a19Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
10937d5e3a19Smrg	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
10947d5e3a19Smrg    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
10957d5e3a19Smrg        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
10967d5e3a19Smrg          && { echo i486-ncr-sysv4; exit; } ;;
1097765486e8Smrg    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
1098765486e8Smrg	OS_REL='.3'
1099765486e8Smrg	test -r /etc/.relid \
1100765486e8Smrg	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1101765486e8Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1102765486e8Smrg	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1103765486e8Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1104765486e8Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
1105765486e8Smrg	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
1106765486e8Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
11077d5e3a19Smrg    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
11087d5e3a19Smrg	echo m68k-unknown-lynxos${UNAME_RELEASE}
11097d5e3a19Smrg	exit ;;
11107d5e3a19Smrg    mc68030:UNIX_System_V:4.*:*)
11117d5e3a19Smrg	echo m68k-atari-sysv4
11127d5e3a19Smrg	exit ;;
11137d5e3a19Smrg    TSUNAMI:LynxOS:2.*:*)
11147d5e3a19Smrg	echo sparc-unknown-lynxos${UNAME_RELEASE}
11157d5e3a19Smrg	exit ;;
11167d5e3a19Smrg    rs6000:LynxOS:2.*:*)
11177d5e3a19Smrg	echo rs6000-unknown-lynxos${UNAME_RELEASE}
11187d5e3a19Smrg	exit ;;
1119765486e8Smrg    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
11207d5e3a19Smrg	echo powerpc-unknown-lynxos${UNAME_RELEASE}
11217d5e3a19Smrg	exit ;;
11227d5e3a19Smrg    SM[BE]S:UNIX_SV:*:*)
11237d5e3a19Smrg	echo mips-dde-sysv${UNAME_RELEASE}
11247d5e3a19Smrg	exit ;;
11257d5e3a19Smrg    RM*:ReliantUNIX-*:*:*)
11267d5e3a19Smrg	echo mips-sni-sysv4
11277d5e3a19Smrg	exit ;;
11287d5e3a19Smrg    RM*:SINIX-*:*:*)
11297d5e3a19Smrg	echo mips-sni-sysv4
11307d5e3a19Smrg	exit ;;
11317d5e3a19Smrg    *:SINIX-*:*:*)
11327d5e3a19Smrg	if uname -p 2>/dev/null >/dev/null ; then
11337d5e3a19Smrg		UNAME_MACHINE=`(uname -p) 2>/dev/null`
11347d5e3a19Smrg		echo ${UNAME_MACHINE}-sni-sysv4
11357d5e3a19Smrg	else
11367d5e3a19Smrg		echo ns32k-sni-sysv
11377d5e3a19Smrg	fi
11387d5e3a19Smrg	exit ;;
11397d5e3a19Smrg    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
11407d5e3a19Smrg                      # says <Richard.M.Bartel@ccMail.Census.GOV>
11417d5e3a19Smrg        echo i586-unisys-sysv4
11427d5e3a19Smrg        exit ;;
11437d5e3a19Smrg    *:UNIX_System_V:4*:FTX*)
11447d5e3a19Smrg	# From Gerald Hewes <hewes@openmarket.com>.
11457d5e3a19Smrg	# How about differentiating between stratus architectures? -djm
11467d5e3a19Smrg	echo hppa1.1-stratus-sysv4
11477d5e3a19Smrg	exit ;;
11487d5e3a19Smrg    *:*:*:FTX*)
11497d5e3a19Smrg	# From seanf@swdc.stratus.com.
11507d5e3a19Smrg	echo i860-stratus-sysv4
11517d5e3a19Smrg	exit ;;
11527d5e3a19Smrg    i*86:VOS:*:*)
11537d5e3a19Smrg	# From Paul.Green@stratus.com.
11547d5e3a19Smrg	echo ${UNAME_MACHINE}-stratus-vos
11557d5e3a19Smrg	exit ;;
11567d5e3a19Smrg    *:VOS:*:*)
11577d5e3a19Smrg	# From Paul.Green@stratus.com.
11587d5e3a19Smrg	echo hppa1.1-stratus-vos
11597d5e3a19Smrg	exit ;;
11607d5e3a19Smrg    mc68*:A/UX:*:*)
11617d5e3a19Smrg	echo m68k-apple-aux${UNAME_RELEASE}
11627d5e3a19Smrg	exit ;;
11637d5e3a19Smrg    news*:NEWS-OS:6*:*)
11647d5e3a19Smrg	echo mips-sony-newsos6
11657d5e3a19Smrg	exit ;;
11667d5e3a19Smrg    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
11677d5e3a19Smrg	if [ -d /usr/nec ]; then
11687d5e3a19Smrg	        echo mips-nec-sysv${UNAME_RELEASE}
11697d5e3a19Smrg	else
11707d5e3a19Smrg	        echo mips-unknown-sysv${UNAME_RELEASE}
11717d5e3a19Smrg	fi
11727d5e3a19Smrg        exit ;;
11737d5e3a19Smrg    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
11747d5e3a19Smrg	echo powerpc-be-beos
11757d5e3a19Smrg	exit ;;
11767d5e3a19Smrg    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
11777d5e3a19Smrg	echo powerpc-apple-beos
11787d5e3a19Smrg	exit ;;
11797d5e3a19Smrg    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
11807d5e3a19Smrg	echo i586-pc-beos
11817d5e3a19Smrg	exit ;;
1182765486e8Smrg    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
1183765486e8Smrg	echo i586-pc-haiku
1184765486e8Smrg	exit ;;
11857d5e3a19Smrg    SX-4:SUPER-UX:*:*)
11867d5e3a19Smrg	echo sx4-nec-superux${UNAME_RELEASE}
11877d5e3a19Smrg	exit ;;
11887d5e3a19Smrg    SX-5:SUPER-UX:*:*)
11897d5e3a19Smrg	echo sx5-nec-superux${UNAME_RELEASE}
11907d5e3a19Smrg	exit ;;
11917d5e3a19Smrg    SX-6:SUPER-UX:*:*)
11927d5e3a19Smrg	echo sx6-nec-superux${UNAME_RELEASE}
11937d5e3a19Smrg	exit ;;
11941568b75bSmrg    SX-7:SUPER-UX:*:*)
11951568b75bSmrg	echo sx7-nec-superux${UNAME_RELEASE}
11961568b75bSmrg	exit ;;
11971568b75bSmrg    SX-8:SUPER-UX:*:*)
11981568b75bSmrg	echo sx8-nec-superux${UNAME_RELEASE}
11991568b75bSmrg	exit ;;
12001568b75bSmrg    SX-8R:SUPER-UX:*:*)
12011568b75bSmrg	echo sx8r-nec-superux${UNAME_RELEASE}
12021568b75bSmrg	exit ;;
12037d5e3a19Smrg    Power*:Rhapsody:*:*)
12047d5e3a19Smrg	echo powerpc-apple-rhapsody${UNAME_RELEASE}
12057d5e3a19Smrg	exit ;;
12067d5e3a19Smrg    *:Rhapsody:*:*)
12077d5e3a19Smrg	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
12087d5e3a19Smrg	exit ;;
12097d5e3a19Smrg    *:Darwin:*:*)
12107d5e3a19Smrg	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
12117d5e3a19Smrg	case $UNAME_PROCESSOR in
1212765486e8Smrg	    i386)
1213765486e8Smrg		eval $set_cc_for_build
1214765486e8Smrg		if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
1215765486e8Smrg		  if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
1216765486e8Smrg		      (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
1217765486e8Smrg		      grep IS_64BIT_ARCH >/dev/null
1218765486e8Smrg		  then
1219765486e8Smrg		      UNAME_PROCESSOR="x86_64"
1220765486e8Smrg		  fi
1221765486e8Smrg		fi ;;
12227d5e3a19Smrg	    unknown) UNAME_PROCESSOR=powerpc ;;
12237d5e3a19Smrg	esac
12247d5e3a19Smrg	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
12257d5e3a19Smrg	exit ;;
12267d5e3a19Smrg    *:procnto*:*:* | *:QNX:[0123456789]*:*)
12277d5e3a19Smrg	UNAME_PROCESSOR=`uname -p`
12287d5e3a19Smrg	if test "$UNAME_PROCESSOR" = "x86"; then
12297d5e3a19Smrg		UNAME_PROCESSOR=i386
12307d5e3a19Smrg		UNAME_MACHINE=pc
12317d5e3a19Smrg	fi
12327d5e3a19Smrg	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
12337d5e3a19Smrg	exit ;;
12347d5e3a19Smrg    *:QNX:*:4*)
12357d5e3a19Smrg	echo i386-pc-qnx
12367d5e3a19Smrg	exit ;;
12377d5e3a19Smrg    NSE-?:NONSTOP_KERNEL:*:*)
12387d5e3a19Smrg	echo nse-tandem-nsk${UNAME_RELEASE}
12397d5e3a19Smrg	exit ;;
12407d5e3a19Smrg    NSR-?:NONSTOP_KERNEL:*:*)
12417d5e3a19Smrg	echo nsr-tandem-nsk${UNAME_RELEASE}
12427d5e3a19Smrg	exit ;;
12437d5e3a19Smrg    *:NonStop-UX:*:*)
12447d5e3a19Smrg	echo mips-compaq-nonstopux
12457d5e3a19Smrg	exit ;;
12467d5e3a19Smrg    BS2000:POSIX*:*:*)
12477d5e3a19Smrg	echo bs2000-siemens-sysv
12487d5e3a19Smrg	exit ;;
12497d5e3a19Smrg    DS/*:UNIX_System_V:*:*)
12507d5e3a19Smrg	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
12517d5e3a19Smrg	exit ;;
12527d5e3a19Smrg    *:Plan9:*:*)
12537d5e3a19Smrg	# "uname -m" is not consistent, so use $cputype instead. 386
12547d5e3a19Smrg	# is converted to i386 for consistency with other x86
12557d5e3a19Smrg	# operating systems.
12567d5e3a19Smrg	if test "$cputype" = "386"; then
12577d5e3a19Smrg	    UNAME_MACHINE=i386
12587d5e3a19Smrg	else
12597d5e3a19Smrg	    UNAME_MACHINE="$cputype"
12607d5e3a19Smrg	fi
12617d5e3a19Smrg	echo ${UNAME_MACHINE}-unknown-plan9
12627d5e3a19Smrg	exit ;;
12637d5e3a19Smrg    *:TOPS-10:*:*)
12647d5e3a19Smrg	echo pdp10-unknown-tops10
12657d5e3a19Smrg	exit ;;
12667d5e3a19Smrg    *:TENEX:*:*)
12677d5e3a19Smrg	echo pdp10-unknown-tenex
12687d5e3a19Smrg	exit ;;
12697d5e3a19Smrg    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
12707d5e3a19Smrg	echo pdp10-dec-tops20
12717d5e3a19Smrg	exit ;;
12727d5e3a19Smrg    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
12737d5e3a19Smrg	echo pdp10-xkl-tops20
12747d5e3a19Smrg	exit ;;
12757d5e3a19Smrg    *:TOPS-20:*:*)
12767d5e3a19Smrg	echo pdp10-unknown-tops20
12777d5e3a19Smrg	exit ;;
12787d5e3a19Smrg    *:ITS:*:*)
12797d5e3a19Smrg	echo pdp10-unknown-its
12807d5e3a19Smrg	exit ;;
12817d5e3a19Smrg    SEI:*:*:SEIUX)
12827d5e3a19Smrg        echo mips-sei-seiux${UNAME_RELEASE}
12837d5e3a19Smrg	exit ;;
12847d5e3a19Smrg    *:DragonFly:*:*)
12857d5e3a19Smrg	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
12867d5e3a19Smrg	exit ;;
12877d5e3a19Smrg    *:*VMS:*:*)
12887d5e3a19Smrg    	UNAME_MACHINE=`(uname -p) 2>/dev/null`
12897d5e3a19Smrg	case "${UNAME_MACHINE}" in
12907d5e3a19Smrg	    A*) echo alpha-dec-vms ; exit ;;
12917d5e3a19Smrg	    I*) echo ia64-dec-vms ; exit ;;
12927d5e3a19Smrg	    V*) echo vax-dec-vms ; exit ;;
12937d5e3a19Smrg	esac ;;
12947d5e3a19Smrg    *:XENIX:*:SysV)
12957d5e3a19Smrg	echo i386-pc-xenix
12967d5e3a19Smrg	exit ;;
12977d5e3a19Smrg    i*86:skyos:*:*)
12987d5e3a19Smrg	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
12997d5e3a19Smrg	exit ;;
13007d5e3a19Smrg    i*86:rdos:*:*)
13017d5e3a19Smrg	echo ${UNAME_MACHINE}-pc-rdos
13027d5e3a19Smrg	exit ;;
1303765486e8Smrg    i*86:AROS:*:*)
1304765486e8Smrg	echo ${UNAME_MACHINE}-pc-aros
1305765486e8Smrg	exit ;;
13067d5e3a19Smrgesac
13077d5e3a19Smrg
13087d5e3a19Smrg#echo '(No uname command or uname output not recognized.)' 1>&2
13097d5e3a19Smrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
13107d5e3a19Smrg
13117d5e3a19Smrgeval $set_cc_for_build
13127d5e3a19Smrgcat >$dummy.c <<EOF
13137d5e3a19Smrg#ifdef _SEQUENT_
13147d5e3a19Smrg# include <sys/types.h>
13157d5e3a19Smrg# include <sys/utsname.h>
13167d5e3a19Smrg#endif
13177d5e3a19Smrgmain ()
13187d5e3a19Smrg{
13197d5e3a19Smrg#if defined (sony)
13207d5e3a19Smrg#if defined (MIPSEB)
13217d5e3a19Smrg  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
13227d5e3a19Smrg     I don't know....  */
13237d5e3a19Smrg  printf ("mips-sony-bsd\n"); exit (0);
13247d5e3a19Smrg#else
13257d5e3a19Smrg#include <sys/param.h>
13267d5e3a19Smrg  printf ("m68k-sony-newsos%s\n",
13277d5e3a19Smrg#ifdef NEWSOS4
13287d5e3a19Smrg          "4"
13297d5e3a19Smrg#else
13307d5e3a19Smrg	  ""
13317d5e3a19Smrg#endif
13327d5e3a19Smrg         ); exit (0);
13337d5e3a19Smrg#endif
13347d5e3a19Smrg#endif
13357d5e3a19Smrg
13367d5e3a19Smrg#if defined (__arm) && defined (__acorn) && defined (__unix)
13377d5e3a19Smrg  printf ("arm-acorn-riscix\n"); exit (0);
13387d5e3a19Smrg#endif
13397d5e3a19Smrg
13407d5e3a19Smrg#if defined (hp300) && !defined (hpux)
13417d5e3a19Smrg  printf ("m68k-hp-bsd\n"); exit (0);
13427d5e3a19Smrg#endif
13437d5e3a19Smrg
13447d5e3a19Smrg#if defined (NeXT)
13457d5e3a19Smrg#if !defined (__ARCHITECTURE__)
13467d5e3a19Smrg#define __ARCHITECTURE__ "m68k"
13477d5e3a19Smrg#endif
13487d5e3a19Smrg  int version;
13497d5e3a19Smrg  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
13507d5e3a19Smrg  if (version < 4)
13517d5e3a19Smrg    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
13527d5e3a19Smrg  else
13537d5e3a19Smrg    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
13547d5e3a19Smrg  exit (0);
13557d5e3a19Smrg#endif
13567d5e3a19Smrg
13577d5e3a19Smrg#if defined (MULTIMAX) || defined (n16)
13587d5e3a19Smrg#if defined (UMAXV)
13597d5e3a19Smrg  printf ("ns32k-encore-sysv\n"); exit (0);
13607d5e3a19Smrg#else
13617d5e3a19Smrg#if defined (CMU)
13627d5e3a19Smrg  printf ("ns32k-encore-mach\n"); exit (0);
13637d5e3a19Smrg#else
13647d5e3a19Smrg  printf ("ns32k-encore-bsd\n"); exit (0);
13657d5e3a19Smrg#endif
13667d5e3a19Smrg#endif
13677d5e3a19Smrg#endif
13687d5e3a19Smrg
13697d5e3a19Smrg#if defined (__386BSD__)
13707d5e3a19Smrg  printf ("i386-pc-bsd\n"); exit (0);
13717d5e3a19Smrg#endif
13727d5e3a19Smrg
13737d5e3a19Smrg#if defined (sequent)
13747d5e3a19Smrg#if defined (i386)
13757d5e3a19Smrg  printf ("i386-sequent-dynix\n"); exit (0);
13767d5e3a19Smrg#endif
13777d5e3a19Smrg#if defined (ns32000)
13787d5e3a19Smrg  printf ("ns32k-sequent-dynix\n"); exit (0);
13797d5e3a19Smrg#endif
13807d5e3a19Smrg#endif
13817d5e3a19Smrg
13827d5e3a19Smrg#if defined (_SEQUENT_)
13837d5e3a19Smrg    struct utsname un;
13847d5e3a19Smrg
13857d5e3a19Smrg    uname(&un);
13867d5e3a19Smrg
13877d5e3a19Smrg    if (strncmp(un.version, "V2", 2) == 0) {
13887d5e3a19Smrg	printf ("i386-sequent-ptx2\n"); exit (0);
13897d5e3a19Smrg    }
13907d5e3a19Smrg    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
13917d5e3a19Smrg	printf ("i386-sequent-ptx1\n"); exit (0);
13927d5e3a19Smrg    }
13937d5e3a19Smrg    printf ("i386-sequent-ptx\n"); exit (0);
13947d5e3a19Smrg
13957d5e3a19Smrg#endif
13967d5e3a19Smrg
13977d5e3a19Smrg#if defined (vax)
13987d5e3a19Smrg# if !defined (ultrix)
13997d5e3a19Smrg#  include <sys/param.h>
14007d5e3a19Smrg#  if defined (BSD)
14017d5e3a19Smrg#   if BSD == 43
14027d5e3a19Smrg      printf ("vax-dec-bsd4.3\n"); exit (0);
14037d5e3a19Smrg#   else
14047d5e3a19Smrg#    if BSD == 199006
14057d5e3a19Smrg      printf ("vax-dec-bsd4.3reno\n"); exit (0);
14067d5e3a19Smrg#    else
14077d5e3a19Smrg      printf ("vax-dec-bsd\n"); exit (0);
14087d5e3a19Smrg#    endif
14097d5e3a19Smrg#   endif
14107d5e3a19Smrg#  else
14117d5e3a19Smrg    printf ("vax-dec-bsd\n"); exit (0);
14127d5e3a19Smrg#  endif
14137d5e3a19Smrg# else
14147d5e3a19Smrg    printf ("vax-dec-ultrix\n"); exit (0);
14157d5e3a19Smrg# endif
14167d5e3a19Smrg#endif
14177d5e3a19Smrg
14187d5e3a19Smrg#if defined (alliant) && defined (i860)
14197d5e3a19Smrg  printf ("i860-alliant-bsd\n"); exit (0);
14207d5e3a19Smrg#endif
14217d5e3a19Smrg
14227d5e3a19Smrg  exit (1);
14237d5e3a19Smrg}
14247d5e3a19SmrgEOF
14257d5e3a19Smrg
14267d5e3a19Smrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
14277d5e3a19Smrg	{ echo "$SYSTEM_NAME"; exit; }
14287d5e3a19Smrg
14297d5e3a19Smrg# Apollos put the system type in the environment.
14307d5e3a19Smrg
14317d5e3a19Smrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
14327d5e3a19Smrg
14337d5e3a19Smrg# Convex versions that predate uname can use getsysinfo(1)
14347d5e3a19Smrg
14357d5e3a19Smrgif [ -x /usr/convex/getsysinfo ]
14367d5e3a19Smrgthen
14377d5e3a19Smrg    case `getsysinfo -f cpu_type` in
14387d5e3a19Smrg    c1*)
14397d5e3a19Smrg	echo c1-convex-bsd
14407d5e3a19Smrg	exit ;;
14417d5e3a19Smrg    c2*)
14427d5e3a19Smrg	if getsysinfo -f scalar_acc
14437d5e3a19Smrg	then echo c32-convex-bsd
14447d5e3a19Smrg	else echo c2-convex-bsd
14457d5e3a19Smrg	fi
14467d5e3a19Smrg	exit ;;
14477d5e3a19Smrg    c34*)
14487d5e3a19Smrg	echo c34-convex-bsd
14497d5e3a19Smrg	exit ;;
14507d5e3a19Smrg    c38*)
14517d5e3a19Smrg	echo c38-convex-bsd
14527d5e3a19Smrg	exit ;;
14537d5e3a19Smrg    c4*)
14547d5e3a19Smrg	echo c4-convex-bsd
14557d5e3a19Smrg	exit ;;
14567d5e3a19Smrg    esac
14577d5e3a19Smrgfi
14587d5e3a19Smrg
14597d5e3a19Smrgcat >&2 <<EOF
14607d5e3a19Smrg$0: unable to guess system type
14617d5e3a19Smrg
14627d5e3a19SmrgThis script, last modified $timestamp, has failed to recognize
14637d5e3a19Smrgthe operating system you are using. It is advised that you
14647d5e3a19Smrgdownload the most up to date version of the config scripts from
14657d5e3a19Smrg
1466765486e8Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
14677d5e3a19Smrgand
1468765486e8Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
14697d5e3a19Smrg
14707d5e3a19SmrgIf the version you run ($0) is already up to date, please
14717d5e3a19Smrgsend the following data and any information you think might be
14727d5e3a19Smrgpertinent to <config-patches@gnu.org> in order to provide the needed
14737d5e3a19Smrginformation to handle your system.
14747d5e3a19Smrg
14757d5e3a19Smrgconfig.guess timestamp = $timestamp
14767d5e3a19Smrg
14777d5e3a19Smrguname -m = `(uname -m) 2>/dev/null || echo unknown`
14787d5e3a19Smrguname -r = `(uname -r) 2>/dev/null || echo unknown`
14797d5e3a19Smrguname -s = `(uname -s) 2>/dev/null || echo unknown`
14807d5e3a19Smrguname -v = `(uname -v) 2>/dev/null || echo unknown`
14817d5e3a19Smrg
14827d5e3a19Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
14837d5e3a19Smrg/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
14847d5e3a19Smrg
14857d5e3a19Smrghostinfo               = `(hostinfo) 2>/dev/null`
14867d5e3a19Smrg/bin/universe          = `(/bin/universe) 2>/dev/null`
14877d5e3a19Smrg/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
14887d5e3a19Smrg/bin/arch              = `(/bin/arch) 2>/dev/null`
14897d5e3a19Smrg/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
14907d5e3a19Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
14917d5e3a19Smrg
14927d5e3a19SmrgUNAME_MACHINE = ${UNAME_MACHINE}
14937d5e3a19SmrgUNAME_RELEASE = ${UNAME_RELEASE}
14947d5e3a19SmrgUNAME_SYSTEM  = ${UNAME_SYSTEM}
14957d5e3a19SmrgUNAME_VERSION = ${UNAME_VERSION}
14967d5e3a19SmrgEOF
14977d5e3a19Smrg
14987d5e3a19Smrgexit 1
14997d5e3a19Smrg
15007d5e3a19Smrg# Local variables:
15017d5e3a19Smrg# eval: (add-hook 'write-file-hooks 'time-stamp)
15027d5e3a19Smrg# time-stamp-start: "timestamp='"
15037d5e3a19Smrg# time-stamp-format: "%:y-%02m-%02d"
15047d5e3a19Smrg# time-stamp-end: "'"
15057d5e3a19Smrg# End:
1506