config.guess revision dd0822ca
13eed67faSmbalmer#! /bin/sh
23eed67faSmbalmer# Attempt to guess a canonical system name.
33eed67faSmbalmer#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4dd0822caSmrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
5dc407927Smrg#   Free Software Foundation, Inc.
63eed67faSmbalmer
7dd0822caSmrgtimestamp='2009-11-20'
83eed67faSmbalmer
93eed67faSmbalmer# This file is free software; you can redistribute it and/or modify it
103eed67faSmbalmer# under the terms of the GNU General Public License as published by
113eed67faSmbalmer# the Free Software Foundation; either version 2 of the License, or
123eed67faSmbalmer# (at your option) any later version.
133eed67faSmbalmer#
143eed67faSmbalmer# This program is distributed in the hope that it will be useful, but
153eed67faSmbalmer# WITHOUT ANY WARRANTY; without even the implied warranty of
163eed67faSmbalmer# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
173eed67faSmbalmer# General Public License for more details.
183eed67faSmbalmer#
193eed67faSmbalmer# You should have received a copy of the GNU General Public License
203eed67faSmbalmer# along with this program; if not, write to the Free Software
213eed67faSmbalmer# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
223eed67faSmbalmer# 02110-1301, USA.
233eed67faSmbalmer#
243eed67faSmbalmer# As a special exception to the GNU General Public License, if you
253eed67faSmbalmer# distribute this file as part of a program that contains a
263eed67faSmbalmer# configuration script generated by Autoconf, you may include it under
273eed67faSmbalmer# the same distribution terms that you use for the rest of that program.
283eed67faSmbalmer
293eed67faSmbalmer
30dd0822caSmrg# Originally written by Per Bothner.  Please send patches (context
31dd0822caSmrg# diff format) to <config-patches@gnu.org> and include a ChangeLog
32dd0822caSmrg# entry.
333eed67faSmbalmer#
343eed67faSmbalmer# This script attempts to guess a canonical system name similar to
353eed67faSmbalmer# config.sub.  If it succeeds, it prints the system name on stdout, and
363eed67faSmbalmer# exits with 0.  Otherwise, it exits with 1.
373eed67faSmbalmer#
38dd0822caSmrg# You can get the latest version of this script from:
39dd0822caSmrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
403eed67faSmbalmer
413eed67faSmbalmerme=`echo "$0" | sed -e 's,.*/,,'`
423eed67faSmbalmer
433eed67faSmbalmerusage="\
443eed67faSmbalmerUsage: $0 [OPTION]
453eed67faSmbalmer
463eed67faSmbalmerOutput the configuration name of the system \`$me' is run on.
473eed67faSmbalmer
483eed67faSmbalmerOperation modes:
493eed67faSmbalmer  -h, --help         print this help, then exit
503eed67faSmbalmer  -t, --time-stamp   print date of last modification, then exit
513eed67faSmbalmer  -v, --version      print version number, then exit
523eed67faSmbalmer
533eed67faSmbalmerReport bugs and patches to <config-patches@gnu.org>."
543eed67faSmbalmer
553eed67faSmbalmerversion="\
563eed67faSmbalmerGNU config.guess ($timestamp)
573eed67faSmbalmer
583eed67faSmbalmerOriginally written by Per Bothner.
59dc407927SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
60dc407927Smrg2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
613eed67faSmbalmer
623eed67faSmbalmerThis is free software; see the source for copying conditions.  There is NO
633eed67faSmbalmerwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
643eed67faSmbalmer
653eed67faSmbalmerhelp="
663eed67faSmbalmerTry \`$me --help' for more information."
673eed67faSmbalmer
683eed67faSmbalmer# Parse command line
693eed67faSmbalmerwhile test $# -gt 0 ; do
703eed67faSmbalmer  case $1 in
713eed67faSmbalmer    --time-stamp | --time* | -t )
723eed67faSmbalmer       echo "$timestamp" ; exit ;;
733eed67faSmbalmer    --version | -v )
743eed67faSmbalmer       echo "$version" ; exit ;;
753eed67faSmbalmer    --help | --h* | -h )
763eed67faSmbalmer       echo "$usage"; exit ;;
773eed67faSmbalmer    -- )     # Stop option processing
783eed67faSmbalmer       shift; break ;;
793eed67faSmbalmer    - )	# Use stdin as input.
803eed67faSmbalmer       break ;;
813eed67faSmbalmer    -* )
823eed67faSmbalmer       echo "$me: invalid option $1$help" >&2
833eed67faSmbalmer       exit 1 ;;
843eed67faSmbalmer    * )
853eed67faSmbalmer       break ;;
863eed67faSmbalmer  esac
873eed67faSmbalmerdone
883eed67faSmbalmer
893eed67faSmbalmerif test $# != 0; then
903eed67faSmbalmer  echo "$me: too many arguments$help" >&2
913eed67faSmbalmer  exit 1
923eed67faSmbalmerfi
933eed67faSmbalmer
943eed67faSmbalmertrap 'exit 1' 1 2 15
953eed67faSmbalmer
963eed67faSmbalmer# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
973eed67faSmbalmer# compiler to aid in system detection is discouraged as it requires
983eed67faSmbalmer# temporary files to be created and, as you can see below, it is a
993eed67faSmbalmer# headache to deal with in a portable fashion.
1003eed67faSmbalmer
1013eed67faSmbalmer# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
1023eed67faSmbalmer# use `HOST_CC' if defined, but it is deprecated.
1033eed67faSmbalmer
1043eed67faSmbalmer# Portable tmp directory creation inspired by the Autoconf team.
1053eed67faSmbalmer
1063eed67faSmbalmerset_cc_for_build='
1073eed67faSmbalmertrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
1083eed67faSmbalmertrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
1093eed67faSmbalmer: ${TMPDIR=/tmp} ;
110dc407927Smrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
1113eed67faSmbalmer { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
1123eed67faSmbalmer { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
1133eed67faSmbalmer { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
1143eed67faSmbalmerdummy=$tmp/dummy ;
1153eed67faSmbalmertmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
1163eed67faSmbalmercase $CC_FOR_BUILD,$HOST_CC,$CC in
1173eed67faSmbalmer ,,)    echo "int x;" > $dummy.c ;
1183eed67faSmbalmer	for c in cc gcc c89 c99 ; do
1193eed67faSmbalmer	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
1203eed67faSmbalmer	     CC_FOR_BUILD="$c"; break ;
1213eed67faSmbalmer	  fi ;
1223eed67faSmbalmer	done ;
1233eed67faSmbalmer	if test x"$CC_FOR_BUILD" = x ; then
1243eed67faSmbalmer	  CC_FOR_BUILD=no_compiler_found ;
1253eed67faSmbalmer	fi
1263eed67faSmbalmer	;;
1273eed67faSmbalmer ,,*)   CC_FOR_BUILD=$CC ;;
1283eed67faSmbalmer ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
1293eed67faSmbalmeresac ; set_cc_for_build= ;'
1303eed67faSmbalmer
1313eed67faSmbalmer# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
1323eed67faSmbalmer# (ghazi@noc.rutgers.edu 1994-08-24)
1333eed67faSmbalmerif (test -f /.attbin/uname) >/dev/null 2>&1 ; then
1343eed67faSmbalmer	PATH=$PATH:/.attbin ; export PATH
1353eed67faSmbalmerfi
1363eed67faSmbalmer
1373eed67faSmbalmerUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
1383eed67faSmbalmerUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
1393eed67faSmbalmerUNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
1403eed67faSmbalmerUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
1413eed67faSmbalmer
1423eed67faSmbalmer# Note: order is significant - the case branches are not exclusive.
1433eed67faSmbalmer
1443eed67faSmbalmercase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
1453eed67faSmbalmer    *:NetBSD:*:*)
1463eed67faSmbalmer	# NetBSD (nbsd) targets should (where applicable) match one or
1473eed67faSmbalmer	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
1483eed67faSmbalmer	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
1493eed67faSmbalmer	# switched to ELF, *-*-netbsd* would select the old
1503eed67faSmbalmer	# object file format.  This provides both forward
1513eed67faSmbalmer	# compatibility and a consistent mechanism for selecting the
1523eed67faSmbalmer	# object file format.
1533eed67faSmbalmer	#
1543eed67faSmbalmer	# Note: NetBSD doesn't particularly care about the vendor
1553eed67faSmbalmer	# portion of the name.  We always set it to "unknown".
1563eed67faSmbalmer	sysctl="sysctl -n hw.machine_arch"
1573eed67faSmbalmer	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
1583eed67faSmbalmer	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
1593eed67faSmbalmer	case "${UNAME_MACHINE_ARCH}" in
1603eed67faSmbalmer	    armeb) machine=armeb-unknown ;;
1613eed67faSmbalmer	    arm*) machine=arm-unknown ;;
1623eed67faSmbalmer	    sh3el) machine=shl-unknown ;;
1633eed67faSmbalmer	    sh3eb) machine=sh-unknown ;;
164dc407927Smrg	    sh5el) machine=sh5le-unknown ;;
1653eed67faSmbalmer	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
1663eed67faSmbalmer	esac
1673eed67faSmbalmer	# The Operating System including object format, if it has switched
1683eed67faSmbalmer	# to ELF recently, or will in the future.
1693eed67faSmbalmer	case "${UNAME_MACHINE_ARCH}" in
1703eed67faSmbalmer	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
1713eed67faSmbalmer		eval $set_cc_for_build
1723eed67faSmbalmer		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
173dd0822caSmrg			| grep -q __ELF__
1743eed67faSmbalmer		then
1753eed67faSmbalmer		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
1763eed67faSmbalmer		    # Return netbsd for either.  FIX?
1773eed67faSmbalmer		    os=netbsd
1783eed67faSmbalmer		else
1793eed67faSmbalmer		    os=netbsdelf
1803eed67faSmbalmer		fi
1813eed67faSmbalmer		;;
1823eed67faSmbalmer	    *)
1833eed67faSmbalmer	        os=netbsd
1843eed67faSmbalmer		;;
1853eed67faSmbalmer	esac
1863eed67faSmbalmer	# The OS release
1873eed67faSmbalmer	# Debian GNU/NetBSD machines have a different userland, and
1883eed67faSmbalmer	# thus, need a distinct triplet. However, they do not need
1893eed67faSmbalmer	# kernel version information, so it can be replaced with a
1903eed67faSmbalmer	# suitable tag, in the style of linux-gnu.
1913eed67faSmbalmer	case "${UNAME_VERSION}" in
1923eed67faSmbalmer	    Debian*)
1933eed67faSmbalmer		release='-gnu'
1943eed67faSmbalmer		;;
1953eed67faSmbalmer	    *)
1963eed67faSmbalmer		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
1973eed67faSmbalmer		;;
1983eed67faSmbalmer	esac
1993eed67faSmbalmer	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
2003eed67faSmbalmer	# contains redundant information, the shorter form:
2013eed67faSmbalmer	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
2023eed67faSmbalmer	echo "${machine}-${os}${release}"
2033eed67faSmbalmer	exit ;;
2043eed67faSmbalmer    *:OpenBSD:*:*)
2053eed67faSmbalmer	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
2063eed67faSmbalmer	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
2073eed67faSmbalmer	exit ;;
2083eed67faSmbalmer    *:ekkoBSD:*:*)
2093eed67faSmbalmer	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
2103eed67faSmbalmer	exit ;;
211dc407927Smrg    *:SolidBSD:*:*)
212dc407927Smrg	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
213dc407927Smrg	exit ;;
2143eed67faSmbalmer    macppc:MirBSD:*:*)
215dc407927Smrg	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
2163eed67faSmbalmer	exit ;;
2173eed67faSmbalmer    *:MirBSD:*:*)
2183eed67faSmbalmer	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
2193eed67faSmbalmer	exit ;;
2203eed67faSmbalmer    alpha:OSF1:*:*)
2213eed67faSmbalmer	case $UNAME_RELEASE in
2223eed67faSmbalmer	*4.0)
2233eed67faSmbalmer		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
2243eed67faSmbalmer		;;
2253eed67faSmbalmer	*5.*)
2263eed67faSmbalmer	        UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
2273eed67faSmbalmer		;;
2283eed67faSmbalmer	esac
2293eed67faSmbalmer	# According to Compaq, /usr/sbin/psrinfo has been available on
2303eed67faSmbalmer	# OSF/1 and Tru64 systems produced since 1995.  I hope that
2313eed67faSmbalmer	# covers most systems running today.  This code pipes the CPU
2323eed67faSmbalmer	# types through head -n 1, so we only detect the type of CPU 0.
2333eed67faSmbalmer	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
2343eed67faSmbalmer	case "$ALPHA_CPU_TYPE" in
2353eed67faSmbalmer	    "EV4 (21064)")
2363eed67faSmbalmer		UNAME_MACHINE="alpha" ;;
2373eed67faSmbalmer	    "EV4.5 (21064)")
2383eed67faSmbalmer		UNAME_MACHINE="alpha" ;;
2393eed67faSmbalmer	    "LCA4 (21066/21068)")
2403eed67faSmbalmer		UNAME_MACHINE="alpha" ;;
2413eed67faSmbalmer	    "EV5 (21164)")
2423eed67faSmbalmer		UNAME_MACHINE="alphaev5" ;;
2433eed67faSmbalmer	    "EV5.6 (21164A)")
2443eed67faSmbalmer		UNAME_MACHINE="alphaev56" ;;
2453eed67faSmbalmer	    "EV5.6 (21164PC)")
2463eed67faSmbalmer		UNAME_MACHINE="alphapca56" ;;
2473eed67faSmbalmer	    "EV5.7 (21164PC)")
2483eed67faSmbalmer		UNAME_MACHINE="alphapca57" ;;
2493eed67faSmbalmer	    "EV6 (21264)")
2503eed67faSmbalmer		UNAME_MACHINE="alphaev6" ;;
2513eed67faSmbalmer	    "EV6.7 (21264A)")
2523eed67faSmbalmer		UNAME_MACHINE="alphaev67" ;;
2533eed67faSmbalmer	    "EV6.8CB (21264C)")
2543eed67faSmbalmer		UNAME_MACHINE="alphaev68" ;;
2553eed67faSmbalmer	    "EV6.8AL (21264B)")
2563eed67faSmbalmer		UNAME_MACHINE="alphaev68" ;;
2573eed67faSmbalmer	    "EV6.8CX (21264D)")
2583eed67faSmbalmer		UNAME_MACHINE="alphaev68" ;;
2593eed67faSmbalmer	    "EV6.9A (21264/EV69A)")
2603eed67faSmbalmer		UNAME_MACHINE="alphaev69" ;;
2613eed67faSmbalmer	    "EV7 (21364)")
2623eed67faSmbalmer		UNAME_MACHINE="alphaev7" ;;
2633eed67faSmbalmer	    "EV7.9 (21364A)")
2643eed67faSmbalmer		UNAME_MACHINE="alphaev79" ;;
2653eed67faSmbalmer	esac
2663eed67faSmbalmer	# A Pn.n version is a patched version.
2673eed67faSmbalmer	# A Vn.n version is a released version.
2683eed67faSmbalmer	# A Tn.n version is a released field test version.
2693eed67faSmbalmer	# A Xn.n version is an unreleased experimental baselevel.
2703eed67faSmbalmer	# 1.2 uses "1.2" for uname -r.
2713eed67faSmbalmer	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
2723eed67faSmbalmer	exit ;;
2733eed67faSmbalmer    Alpha\ *:Windows_NT*:*)
2743eed67faSmbalmer	# How do we know it's Interix rather than the generic POSIX subsystem?
2753eed67faSmbalmer	# Should we change UNAME_MACHINE based on the output of uname instead
2763eed67faSmbalmer	# of the specific Alpha model?
2773eed67faSmbalmer	echo alpha-pc-interix
2783eed67faSmbalmer	exit ;;
2793eed67faSmbalmer    21064:Windows_NT:50:3)
2803eed67faSmbalmer	echo alpha-dec-winnt3.5
2813eed67faSmbalmer	exit ;;
2823eed67faSmbalmer    Amiga*:UNIX_System_V:4.0:*)
2833eed67faSmbalmer	echo m68k-unknown-sysv4
2843eed67faSmbalmer	exit ;;
2853eed67faSmbalmer    *:[Aa]miga[Oo][Ss]:*:*)
2863eed67faSmbalmer	echo ${UNAME_MACHINE}-unknown-amigaos
2873eed67faSmbalmer	exit ;;
2883eed67faSmbalmer    *:[Mm]orph[Oo][Ss]:*:*)
2893eed67faSmbalmer	echo ${UNAME_MACHINE}-unknown-morphos
2903eed67faSmbalmer	exit ;;
2913eed67faSmbalmer    *:OS/390:*:*)
2923eed67faSmbalmer	echo i370-ibm-openedition
2933eed67faSmbalmer	exit ;;
2943eed67faSmbalmer    *:z/VM:*:*)
2953eed67faSmbalmer	echo s390-ibm-zvmoe
2963eed67faSmbalmer	exit ;;
2973eed67faSmbalmer    *:OS400:*:*)
2983eed67faSmbalmer        echo powerpc-ibm-os400
2993eed67faSmbalmer	exit ;;
3003eed67faSmbalmer    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
3013eed67faSmbalmer	echo arm-acorn-riscix${UNAME_RELEASE}
3023eed67faSmbalmer	exit ;;
3033eed67faSmbalmer    arm:riscos:*:*|arm:RISCOS:*:*)
3043eed67faSmbalmer	echo arm-unknown-riscos
3053eed67faSmbalmer	exit ;;
3063eed67faSmbalmer    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
3073eed67faSmbalmer	echo hppa1.1-hitachi-hiuxmpp
3083eed67faSmbalmer	exit ;;
3093eed67faSmbalmer    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
3103eed67faSmbalmer	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
3113eed67faSmbalmer	if test "`(/bin/universe) 2>/dev/null`" = att ; then
3123eed67faSmbalmer		echo pyramid-pyramid-sysv3
3133eed67faSmbalmer	else
3143eed67faSmbalmer		echo pyramid-pyramid-bsd
3153eed67faSmbalmer	fi
3163eed67faSmbalmer	exit ;;
3173eed67faSmbalmer    NILE*:*:*:dcosx)
3183eed67faSmbalmer	echo pyramid-pyramid-svr4
3193eed67faSmbalmer	exit ;;
3203eed67faSmbalmer    DRS?6000:unix:4.0:6*)
3213eed67faSmbalmer	echo sparc-icl-nx6
3223eed67faSmbalmer	exit ;;
3233eed67faSmbalmer    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
3243eed67faSmbalmer	case `/usr/bin/uname -p` in
3253eed67faSmbalmer	    sparc) echo sparc-icl-nx7; exit ;;
3263eed67faSmbalmer	esac ;;
327dc407927Smrg    s390x:SunOS:*:*)
328dc407927Smrg	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
329dc407927Smrg	exit ;;
3303eed67faSmbalmer    sun4H:SunOS:5.*:*)
3313eed67faSmbalmer	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3323eed67faSmbalmer	exit ;;
3333eed67faSmbalmer    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
3343eed67faSmbalmer	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3353eed67faSmbalmer	exit ;;
336dd0822caSmrg    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
337dd0822caSmrg	echo i386-pc-auroraux${UNAME_RELEASE}
338dd0822caSmrg	exit ;;
339dc407927Smrg    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
340dc407927Smrg	eval $set_cc_for_build
341dc407927Smrg	SUN_ARCH="i386"
342dc407927Smrg	# If there is a compiler, see if it is configured for 64-bit objects.
343dc407927Smrg	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
344dc407927Smrg	# This test works for both compilers.
345dc407927Smrg	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
346dc407927Smrg	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
347dc407927Smrg		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
348dc407927Smrg		grep IS_64BIT_ARCH >/dev/null
349dc407927Smrg	    then
350dc407927Smrg		SUN_ARCH="x86_64"
351dc407927Smrg	    fi
352dc407927Smrg	fi
353dc407927Smrg	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3543eed67faSmbalmer	exit ;;
3553eed67faSmbalmer    sun4*:SunOS:6*:*)
3563eed67faSmbalmer	# According to config.sub, this is the proper way to canonicalize
3573eed67faSmbalmer	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
3583eed67faSmbalmer	# it's likely to be more like Solaris than SunOS4.
3593eed67faSmbalmer	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3603eed67faSmbalmer	exit ;;
3613eed67faSmbalmer    sun4*:SunOS:*:*)
3623eed67faSmbalmer	case "`/usr/bin/arch -k`" in
3633eed67faSmbalmer	    Series*|S4*)
3643eed67faSmbalmer		UNAME_RELEASE=`uname -v`
3653eed67faSmbalmer		;;
3663eed67faSmbalmer	esac
3673eed67faSmbalmer	# Japanese Language versions have a version number like `4.1.3-JL'.
3683eed67faSmbalmer	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
3693eed67faSmbalmer	exit ;;
3703eed67faSmbalmer    sun3*:SunOS:*:*)
3713eed67faSmbalmer	echo m68k-sun-sunos${UNAME_RELEASE}
3723eed67faSmbalmer	exit ;;
3733eed67faSmbalmer    sun*:*:4.2BSD:*)
3743eed67faSmbalmer	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
3753eed67faSmbalmer	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
3763eed67faSmbalmer	case "`/bin/arch`" in
3773eed67faSmbalmer	    sun3)
3783eed67faSmbalmer		echo m68k-sun-sunos${UNAME_RELEASE}
3793eed67faSmbalmer		;;
3803eed67faSmbalmer	    sun4)
3813eed67faSmbalmer		echo sparc-sun-sunos${UNAME_RELEASE}
3823eed67faSmbalmer		;;
3833eed67faSmbalmer	esac
3843eed67faSmbalmer	exit ;;
3853eed67faSmbalmer    aushp:SunOS:*:*)
3863eed67faSmbalmer	echo sparc-auspex-sunos${UNAME_RELEASE}
3873eed67faSmbalmer	exit ;;
3883eed67faSmbalmer    # The situation for MiNT is a little confusing.  The machine name
3893eed67faSmbalmer    # can be virtually everything (everything which is not
3903eed67faSmbalmer    # "atarist" or "atariste" at least should have a processor
3913eed67faSmbalmer    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
3923eed67faSmbalmer    # to the lowercase version "mint" (or "freemint").  Finally
3933eed67faSmbalmer    # the system name "TOS" denotes a system which is actually not
3943eed67faSmbalmer    # MiNT.  But MiNT is downward compatible to TOS, so this should
3953eed67faSmbalmer    # be no problem.
3963eed67faSmbalmer    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
3973eed67faSmbalmer        echo m68k-atari-mint${UNAME_RELEASE}
3983eed67faSmbalmer	exit ;;
3993eed67faSmbalmer    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
4003eed67faSmbalmer	echo m68k-atari-mint${UNAME_RELEASE}
4013eed67faSmbalmer        exit ;;
4023eed67faSmbalmer    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
4033eed67faSmbalmer        echo m68k-atari-mint${UNAME_RELEASE}
4043eed67faSmbalmer	exit ;;
4053eed67faSmbalmer    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
4063eed67faSmbalmer        echo m68k-milan-mint${UNAME_RELEASE}
4073eed67faSmbalmer        exit ;;
4083eed67faSmbalmer    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
4093eed67faSmbalmer        echo m68k-hades-mint${UNAME_RELEASE}
4103eed67faSmbalmer        exit ;;
4113eed67faSmbalmer    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
4123eed67faSmbalmer        echo m68k-unknown-mint${UNAME_RELEASE}
4133eed67faSmbalmer        exit ;;
4143eed67faSmbalmer    m68k:machten:*:*)
4153eed67faSmbalmer	echo m68k-apple-machten${UNAME_RELEASE}
4163eed67faSmbalmer	exit ;;
4173eed67faSmbalmer    powerpc:machten:*:*)
4183eed67faSmbalmer	echo powerpc-apple-machten${UNAME_RELEASE}
4193eed67faSmbalmer	exit ;;
4203eed67faSmbalmer    RISC*:Mach:*:*)
4213eed67faSmbalmer	echo mips-dec-mach_bsd4.3
4223eed67faSmbalmer	exit ;;
4233eed67faSmbalmer    RISC*:ULTRIX:*:*)
4243eed67faSmbalmer	echo mips-dec-ultrix${UNAME_RELEASE}
4253eed67faSmbalmer	exit ;;
4263eed67faSmbalmer    VAX*:ULTRIX*:*:*)
4273eed67faSmbalmer	echo vax-dec-ultrix${UNAME_RELEASE}
4283eed67faSmbalmer	exit ;;
4293eed67faSmbalmer    2020:CLIX:*:* | 2430:CLIX:*:*)
4303eed67faSmbalmer	echo clipper-intergraph-clix${UNAME_RELEASE}
4313eed67faSmbalmer	exit ;;
4323eed67faSmbalmer    mips:*:*:UMIPS | mips:*:*:RISCos)
4333eed67faSmbalmer	eval $set_cc_for_build
4343eed67faSmbalmer	sed 's/^	//' << EOF >$dummy.c
4353eed67faSmbalmer#ifdef __cplusplus
4363eed67faSmbalmer#include <stdio.h>  /* for printf() prototype */
4373eed67faSmbalmer	int main (int argc, char *argv[]) {
4383eed67faSmbalmer#else
4393eed67faSmbalmer	int main (argc, argv) int argc; char *argv[]; {
4403eed67faSmbalmer#endif
4413eed67faSmbalmer	#if defined (host_mips) && defined (MIPSEB)
4423eed67faSmbalmer	#if defined (SYSTYPE_SYSV)
4433eed67faSmbalmer	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
4443eed67faSmbalmer	#endif
4453eed67faSmbalmer	#if defined (SYSTYPE_SVR4)
4463eed67faSmbalmer	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
4473eed67faSmbalmer	#endif
4483eed67faSmbalmer	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
4493eed67faSmbalmer	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
4503eed67faSmbalmer	#endif
4513eed67faSmbalmer	#endif
4523eed67faSmbalmer	  exit (-1);
4533eed67faSmbalmer	}
4543eed67faSmbalmerEOF
4553eed67faSmbalmer	$CC_FOR_BUILD -o $dummy $dummy.c &&
4563eed67faSmbalmer	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
4573eed67faSmbalmer	  SYSTEM_NAME=`$dummy $dummyarg` &&
4583eed67faSmbalmer	    { echo "$SYSTEM_NAME"; exit; }
4593eed67faSmbalmer	echo mips-mips-riscos${UNAME_RELEASE}
4603eed67faSmbalmer	exit ;;
4613eed67faSmbalmer    Motorola:PowerMAX_OS:*:*)
4623eed67faSmbalmer	echo powerpc-motorola-powermax
4633eed67faSmbalmer	exit ;;
4643eed67faSmbalmer    Motorola:*:4.3:PL8-*)
4653eed67faSmbalmer	echo powerpc-harris-powermax
4663eed67faSmbalmer	exit ;;
4673eed67faSmbalmer    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
4683eed67faSmbalmer	echo powerpc-harris-powermax
4693eed67faSmbalmer	exit ;;
4703eed67faSmbalmer    Night_Hawk:Power_UNIX:*:*)
4713eed67faSmbalmer	echo powerpc-harris-powerunix
4723eed67faSmbalmer	exit ;;
4733eed67faSmbalmer    m88k:CX/UX:7*:*)
4743eed67faSmbalmer	echo m88k-harris-cxux7
4753eed67faSmbalmer	exit ;;
4763eed67faSmbalmer    m88k:*:4*:R4*)
4773eed67faSmbalmer	echo m88k-motorola-sysv4
4783eed67faSmbalmer	exit ;;
4793eed67faSmbalmer    m88k:*:3*:R3*)
4803eed67faSmbalmer	echo m88k-motorola-sysv3
4813eed67faSmbalmer	exit ;;
4823eed67faSmbalmer    AViiON:dgux:*:*)
4833eed67faSmbalmer        # DG/UX returns AViiON for all architectures
4843eed67faSmbalmer        UNAME_PROCESSOR=`/usr/bin/uname -p`
4853eed67faSmbalmer	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
4863eed67faSmbalmer	then
4873eed67faSmbalmer	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
4883eed67faSmbalmer	       [ ${TARGET_BINARY_INTERFACE}x = x ]
4893eed67faSmbalmer	    then
4903eed67faSmbalmer		echo m88k-dg-dgux${UNAME_RELEASE}
4913eed67faSmbalmer	    else
4923eed67faSmbalmer		echo m88k-dg-dguxbcs${UNAME_RELEASE}
4933eed67faSmbalmer	    fi
4943eed67faSmbalmer	else
4953eed67faSmbalmer	    echo i586-dg-dgux${UNAME_RELEASE}
4963eed67faSmbalmer	fi
4973eed67faSmbalmer 	exit ;;
4983eed67faSmbalmer    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
4993eed67faSmbalmer	echo m88k-dolphin-sysv3
5003eed67faSmbalmer	exit ;;
5013eed67faSmbalmer    M88*:*:R3*:*)
5023eed67faSmbalmer	# Delta 88k system running SVR3
5033eed67faSmbalmer	echo m88k-motorola-sysv3
5043eed67faSmbalmer	exit ;;
5053eed67faSmbalmer    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
5063eed67faSmbalmer	echo m88k-tektronix-sysv3
5073eed67faSmbalmer	exit ;;
5083eed67faSmbalmer    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
5093eed67faSmbalmer	echo m68k-tektronix-bsd
5103eed67faSmbalmer	exit ;;
5113eed67faSmbalmer    *:IRIX*:*:*)
5123eed67faSmbalmer	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
5133eed67faSmbalmer	exit ;;
5143eed67faSmbalmer    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
5153eed67faSmbalmer	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
5163eed67faSmbalmer	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
5173eed67faSmbalmer    i*86:AIX:*:*)
5183eed67faSmbalmer	echo i386-ibm-aix
5193eed67faSmbalmer	exit ;;
5203eed67faSmbalmer    ia64:AIX:*:*)
5213eed67faSmbalmer	if [ -x /usr/bin/oslevel ] ; then
5223eed67faSmbalmer		IBM_REV=`/usr/bin/oslevel`
5233eed67faSmbalmer	else
5243eed67faSmbalmer		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
5253eed67faSmbalmer	fi
5263eed67faSmbalmer	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
5273eed67faSmbalmer	exit ;;
5283eed67faSmbalmer    *:AIX:2:3)
5293eed67faSmbalmer	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
5303eed67faSmbalmer		eval $set_cc_for_build
5313eed67faSmbalmer		sed 's/^		//' << EOF >$dummy.c
5323eed67faSmbalmer		#include <sys/systemcfg.h>
5333eed67faSmbalmer
5343eed67faSmbalmer		main()
5353eed67faSmbalmer			{
5363eed67faSmbalmer			if (!__power_pc())
5373eed67faSmbalmer				exit(1);
5383eed67faSmbalmer			puts("powerpc-ibm-aix3.2.5");
5393eed67faSmbalmer			exit(0);
5403eed67faSmbalmer			}
5413eed67faSmbalmerEOF
5423eed67faSmbalmer		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
5433eed67faSmbalmer		then
5443eed67faSmbalmer			echo "$SYSTEM_NAME"
5453eed67faSmbalmer		else
5463eed67faSmbalmer			echo rs6000-ibm-aix3.2.5
5473eed67faSmbalmer		fi
5483eed67faSmbalmer	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
5493eed67faSmbalmer		echo rs6000-ibm-aix3.2.4
5503eed67faSmbalmer	else
5513eed67faSmbalmer		echo rs6000-ibm-aix3.2
5523eed67faSmbalmer	fi
5533eed67faSmbalmer	exit ;;
554dc407927Smrg    *:AIX:*:[456])
5553eed67faSmbalmer	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
5563eed67faSmbalmer	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
5573eed67faSmbalmer		IBM_ARCH=rs6000
5583eed67faSmbalmer	else
5593eed67faSmbalmer		IBM_ARCH=powerpc
5603eed67faSmbalmer	fi
5613eed67faSmbalmer	if [ -x /usr/bin/oslevel ] ; then
5623eed67faSmbalmer		IBM_REV=`/usr/bin/oslevel`
5633eed67faSmbalmer	else
5643eed67faSmbalmer		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
5653eed67faSmbalmer	fi
5663eed67faSmbalmer	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
5673eed67faSmbalmer	exit ;;
5683eed67faSmbalmer    *:AIX:*:*)
5693eed67faSmbalmer	echo rs6000-ibm-aix
5703eed67faSmbalmer	exit ;;
5713eed67faSmbalmer    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
5723eed67faSmbalmer	echo romp-ibm-bsd4.4
5733eed67faSmbalmer	exit ;;
5743eed67faSmbalmer    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
5753eed67faSmbalmer	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
5763eed67faSmbalmer	exit ;;                             # report: romp-ibm BSD 4.3
5773eed67faSmbalmer    *:BOSX:*:*)
5783eed67faSmbalmer	echo rs6000-bull-bosx
5793eed67faSmbalmer	exit ;;
5803eed67faSmbalmer    DPX/2?00:B.O.S.:*:*)
5813eed67faSmbalmer	echo m68k-bull-sysv3
5823eed67faSmbalmer	exit ;;
5833eed67faSmbalmer    9000/[34]??:4.3bsd:1.*:*)
5843eed67faSmbalmer	echo m68k-hp-bsd
5853eed67faSmbalmer	exit ;;
5863eed67faSmbalmer    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
5873eed67faSmbalmer	echo m68k-hp-bsd4.4
5883eed67faSmbalmer	exit ;;
5893eed67faSmbalmer    9000/[34678]??:HP-UX:*:*)
5903eed67faSmbalmer	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
5913eed67faSmbalmer	case "${UNAME_MACHINE}" in
5923eed67faSmbalmer	    9000/31? )            HP_ARCH=m68000 ;;
5933eed67faSmbalmer	    9000/[34]?? )         HP_ARCH=m68k ;;
5943eed67faSmbalmer	    9000/[678][0-9][0-9])
5953eed67faSmbalmer		if [ -x /usr/bin/getconf ]; then
5963eed67faSmbalmer		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
5973eed67faSmbalmer                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
5983eed67faSmbalmer                    case "${sc_cpu_version}" in
5993eed67faSmbalmer                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
6003eed67faSmbalmer                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
6013eed67faSmbalmer                      532)                      # CPU_PA_RISC2_0
6023eed67faSmbalmer                        case "${sc_kernel_bits}" in
6033eed67faSmbalmer                          32) HP_ARCH="hppa2.0n" ;;
6043eed67faSmbalmer                          64) HP_ARCH="hppa2.0w" ;;
6053eed67faSmbalmer			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
6063eed67faSmbalmer                        esac ;;
6073eed67faSmbalmer                    esac
6083eed67faSmbalmer		fi
6093eed67faSmbalmer		if [ "${HP_ARCH}" = "" ]; then
6103eed67faSmbalmer		    eval $set_cc_for_build
6113eed67faSmbalmer		    sed 's/^              //' << EOF >$dummy.c
6123eed67faSmbalmer
6133eed67faSmbalmer              #define _HPUX_SOURCE
6143eed67faSmbalmer              #include <stdlib.h>
6153eed67faSmbalmer              #include <unistd.h>
6163eed67faSmbalmer
6173eed67faSmbalmer              int main ()
6183eed67faSmbalmer              {
6193eed67faSmbalmer              #if defined(_SC_KERNEL_BITS)
6203eed67faSmbalmer                  long bits = sysconf(_SC_KERNEL_BITS);
6213eed67faSmbalmer              #endif
6223eed67faSmbalmer                  long cpu  = sysconf (_SC_CPU_VERSION);
6233eed67faSmbalmer
6243eed67faSmbalmer                  switch (cpu)
6253eed67faSmbalmer              	{
6263eed67faSmbalmer              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
6273eed67faSmbalmer              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
6283eed67faSmbalmer              	case CPU_PA_RISC2_0:
6293eed67faSmbalmer              #if defined(_SC_KERNEL_BITS)
6303eed67faSmbalmer              	    switch (bits)
6313eed67faSmbalmer              		{
6323eed67faSmbalmer              		case 64: puts ("hppa2.0w"); break;
6333eed67faSmbalmer              		case 32: puts ("hppa2.0n"); break;
6343eed67faSmbalmer              		default: puts ("hppa2.0"); break;
6353eed67faSmbalmer              		} break;
6363eed67faSmbalmer              #else  /* !defined(_SC_KERNEL_BITS) */
6373eed67faSmbalmer              	    puts ("hppa2.0"); break;
6383eed67faSmbalmer              #endif
6393eed67faSmbalmer              	default: puts ("hppa1.0"); break;
6403eed67faSmbalmer              	}
6413eed67faSmbalmer                  exit (0);
6423eed67faSmbalmer              }
6433eed67faSmbalmerEOF
6443eed67faSmbalmer		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
6453eed67faSmbalmer		    test -z "$HP_ARCH" && HP_ARCH=hppa
6463eed67faSmbalmer		fi ;;
6473eed67faSmbalmer	esac
6483eed67faSmbalmer	if [ ${HP_ARCH} = "hppa2.0w" ]
6493eed67faSmbalmer	then
6503eed67faSmbalmer	    eval $set_cc_for_build
6513eed67faSmbalmer
6523eed67faSmbalmer	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
6533eed67faSmbalmer	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
6543eed67faSmbalmer	    # generating 64-bit code.  GNU and HP use different nomenclature:
6553eed67faSmbalmer	    #
6563eed67faSmbalmer	    # $ CC_FOR_BUILD=cc ./config.guess
6573eed67faSmbalmer	    # => hppa2.0w-hp-hpux11.23
6583eed67faSmbalmer	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
6593eed67faSmbalmer	    # => hppa64-hp-hpux11.23
6603eed67faSmbalmer
6613eed67faSmbalmer	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
662dd0822caSmrg		grep -q __LP64__
6633eed67faSmbalmer	    then
6643eed67faSmbalmer		HP_ARCH="hppa2.0w"
6653eed67faSmbalmer	    else
6663eed67faSmbalmer		HP_ARCH="hppa64"
6673eed67faSmbalmer	    fi
6683eed67faSmbalmer	fi
6693eed67faSmbalmer	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
6703eed67faSmbalmer	exit ;;
6713eed67faSmbalmer    ia64:HP-UX:*:*)
6723eed67faSmbalmer	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
6733eed67faSmbalmer	echo ia64-hp-hpux${HPUX_REV}
6743eed67faSmbalmer	exit ;;
6753eed67faSmbalmer    3050*:HI-UX:*:*)
6763eed67faSmbalmer	eval $set_cc_for_build
6773eed67faSmbalmer	sed 's/^	//' << EOF >$dummy.c
6783eed67faSmbalmer	#include <unistd.h>
6793eed67faSmbalmer	int
6803eed67faSmbalmer	main ()
6813eed67faSmbalmer	{
6823eed67faSmbalmer	  long cpu = sysconf (_SC_CPU_VERSION);
6833eed67faSmbalmer	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
6843eed67faSmbalmer	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
6853eed67faSmbalmer	     results, however.  */
6863eed67faSmbalmer	  if (CPU_IS_PA_RISC (cpu))
6873eed67faSmbalmer	    {
6883eed67faSmbalmer	      switch (cpu)
6893eed67faSmbalmer		{
6903eed67faSmbalmer		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
6913eed67faSmbalmer		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
6923eed67faSmbalmer		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
6933eed67faSmbalmer		  default: puts ("hppa-hitachi-hiuxwe2"); break;
6943eed67faSmbalmer		}
6953eed67faSmbalmer	    }
6963eed67faSmbalmer	  else if (CPU_IS_HP_MC68K (cpu))
6973eed67faSmbalmer	    puts ("m68k-hitachi-hiuxwe2");
6983eed67faSmbalmer	  else puts ("unknown-hitachi-hiuxwe2");
6993eed67faSmbalmer	  exit (0);
7003eed67faSmbalmer	}
7013eed67faSmbalmerEOF
7023eed67faSmbalmer	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
7033eed67faSmbalmer		{ echo "$SYSTEM_NAME"; exit; }
7043eed67faSmbalmer	echo unknown-hitachi-hiuxwe2
7053eed67faSmbalmer	exit ;;
7063eed67faSmbalmer    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
7073eed67faSmbalmer	echo hppa1.1-hp-bsd
7083eed67faSmbalmer	exit ;;
7093eed67faSmbalmer    9000/8??:4.3bsd:*:*)
7103eed67faSmbalmer	echo hppa1.0-hp-bsd
7113eed67faSmbalmer	exit ;;
7123eed67faSmbalmer    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
7133eed67faSmbalmer	echo hppa1.0-hp-mpeix
7143eed67faSmbalmer	exit ;;
7153eed67faSmbalmer    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
7163eed67faSmbalmer	echo hppa1.1-hp-osf
7173eed67faSmbalmer	exit ;;
7183eed67faSmbalmer    hp8??:OSF1:*:*)
7193eed67faSmbalmer	echo hppa1.0-hp-osf
7203eed67faSmbalmer	exit ;;
7213eed67faSmbalmer    i*86:OSF1:*:*)
7223eed67faSmbalmer	if [ -x /usr/sbin/sysversion ] ; then
7233eed67faSmbalmer	    echo ${UNAME_MACHINE}-unknown-osf1mk
7243eed67faSmbalmer	else
7253eed67faSmbalmer	    echo ${UNAME_MACHINE}-unknown-osf1
7263eed67faSmbalmer	fi
7273eed67faSmbalmer	exit ;;
7283eed67faSmbalmer    parisc*:Lites*:*:*)
7293eed67faSmbalmer	echo hppa1.1-hp-lites
7303eed67faSmbalmer	exit ;;
7313eed67faSmbalmer    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
7323eed67faSmbalmer	echo c1-convex-bsd
7333eed67faSmbalmer        exit ;;
7343eed67faSmbalmer    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
7353eed67faSmbalmer	if getsysinfo -f scalar_acc
7363eed67faSmbalmer	then echo c32-convex-bsd
7373eed67faSmbalmer	else echo c2-convex-bsd
7383eed67faSmbalmer	fi
7393eed67faSmbalmer        exit ;;
7403eed67faSmbalmer    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
7413eed67faSmbalmer	echo c34-convex-bsd
7423eed67faSmbalmer        exit ;;
7433eed67faSmbalmer    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
7443eed67faSmbalmer	echo c38-convex-bsd
7453eed67faSmbalmer        exit ;;
7463eed67faSmbalmer    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
7473eed67faSmbalmer	echo c4-convex-bsd
7483eed67faSmbalmer        exit ;;
7493eed67faSmbalmer    CRAY*Y-MP:*:*:*)
7503eed67faSmbalmer	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7513eed67faSmbalmer	exit ;;
7523eed67faSmbalmer    CRAY*[A-Z]90:*:*:*)
7533eed67faSmbalmer	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
7543eed67faSmbalmer	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
7553eed67faSmbalmer	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
7563eed67faSmbalmer	      -e 's/\.[^.]*$/.X/'
7573eed67faSmbalmer	exit ;;
7583eed67faSmbalmer    CRAY*TS:*:*:*)
7593eed67faSmbalmer	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7603eed67faSmbalmer	exit ;;
7613eed67faSmbalmer    CRAY*T3E:*:*:*)
7623eed67faSmbalmer	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7633eed67faSmbalmer	exit ;;
7643eed67faSmbalmer    CRAY*SV1:*:*:*)
7653eed67faSmbalmer	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7663eed67faSmbalmer	exit ;;
7673eed67faSmbalmer    *:UNICOS/mp:*:*)
7683eed67faSmbalmer	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7693eed67faSmbalmer	exit ;;
7703eed67faSmbalmer    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
7713eed67faSmbalmer	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
7723eed67faSmbalmer        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
7733eed67faSmbalmer        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
7743eed67faSmbalmer        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
7753eed67faSmbalmer        exit ;;
7763eed67faSmbalmer    5000:UNIX_System_V:4.*:*)
7773eed67faSmbalmer        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
7783eed67faSmbalmer        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
7793eed67faSmbalmer        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
7803eed67faSmbalmer	exit ;;
7813eed67faSmbalmer    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
7823eed67faSmbalmer	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
7833eed67faSmbalmer	exit ;;
7843eed67faSmbalmer    sparc*:BSD/OS:*:*)
7853eed67faSmbalmer	echo sparc-unknown-bsdi${UNAME_RELEASE}
7863eed67faSmbalmer	exit ;;
7873eed67faSmbalmer    *:BSD/OS:*:*)
7883eed67faSmbalmer	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
7893eed67faSmbalmer	exit ;;
7903eed67faSmbalmer    *:FreeBSD:*:*)
791dc407927Smrg	case ${UNAME_MACHINE} in
792dc407927Smrg	    pc98)
793dc407927Smrg		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
794dc407927Smrg	    amd64)
795dc407927Smrg		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
796dc407927Smrg	    *)
797dc407927Smrg		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
798dc407927Smrg	esac
7993eed67faSmbalmer	exit ;;
8003eed67faSmbalmer    i*:CYGWIN*:*)
8013eed67faSmbalmer	echo ${UNAME_MACHINE}-pc-cygwin
8023eed67faSmbalmer	exit ;;
803dc407927Smrg    *:MINGW*:*)
8043eed67faSmbalmer	echo ${UNAME_MACHINE}-pc-mingw32
8053eed67faSmbalmer	exit ;;
8063eed67faSmbalmer    i*:windows32*:*)
8073eed67faSmbalmer    	# uname -m includes "-pc" on this system.
8083eed67faSmbalmer    	echo ${UNAME_MACHINE}-mingw32
8093eed67faSmbalmer	exit ;;
8103eed67faSmbalmer    i*:PW*:*)
8113eed67faSmbalmer	echo ${UNAME_MACHINE}-pc-pw32
8123eed67faSmbalmer	exit ;;
813dd0822caSmrg    *:Interix*:*)
814dc407927Smrg    	case ${UNAME_MACHINE} in
815dc407927Smrg	    x86)
816dc407927Smrg		echo i586-pc-interix${UNAME_RELEASE}
817dc407927Smrg		exit ;;
818dd0822caSmrg	    authenticamd | genuineintel | EM64T)
819dc407927Smrg		echo x86_64-unknown-interix${UNAME_RELEASE}
820dc407927Smrg		exit ;;
821dc407927Smrg	    IA64)
822dc407927Smrg		echo ia64-unknown-interix${UNAME_RELEASE}
823dc407927Smrg		exit ;;
824dc407927Smrg	esac ;;
8253eed67faSmbalmer    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
8263eed67faSmbalmer	echo i${UNAME_MACHINE}-pc-mks
8273eed67faSmbalmer	exit ;;
828dd0822caSmrg    8664:Windows_NT:*)
829dd0822caSmrg	echo x86_64-pc-mks
830dd0822caSmrg	exit ;;
8313eed67faSmbalmer    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
8323eed67faSmbalmer	# How do we know it's Interix rather than the generic POSIX subsystem?
8333eed67faSmbalmer	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
8343eed67faSmbalmer	# UNAME_MACHINE based on the output of uname instead of i386?
8353eed67faSmbalmer	echo i586-pc-interix
8363eed67faSmbalmer	exit ;;
8373eed67faSmbalmer    i*:UWIN*:*)
8383eed67faSmbalmer	echo ${UNAME_MACHINE}-pc-uwin
8393eed67faSmbalmer	exit ;;
840dc407927Smrg    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
8413eed67faSmbalmer	echo x86_64-unknown-cygwin
8423eed67faSmbalmer	exit ;;
8433eed67faSmbalmer    p*:CYGWIN*:*)
8443eed67faSmbalmer	echo powerpcle-unknown-cygwin
8453eed67faSmbalmer	exit ;;
8463eed67faSmbalmer    prep*:SunOS:5.*:*)
8473eed67faSmbalmer	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
8483eed67faSmbalmer	exit ;;
8493eed67faSmbalmer    *:GNU:*:*)
8503eed67faSmbalmer	# the GNU system
8513eed67faSmbalmer	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
8523eed67faSmbalmer	exit ;;
8533eed67faSmbalmer    *:GNU/*:*:*)
8543eed67faSmbalmer	# other systems with GNU libc and userland
8553eed67faSmbalmer	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
8563eed67faSmbalmer	exit ;;
8573eed67faSmbalmer    i*86:Minix:*:*)
8583eed67faSmbalmer	echo ${UNAME_MACHINE}-pc-minix
8593eed67faSmbalmer	exit ;;
860dd0822caSmrg    alpha:Linux:*:*)
861dd0822caSmrg	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
862dd0822caSmrg	  EV5)   UNAME_MACHINE=alphaev5 ;;
863dd0822caSmrg	  EV56)  UNAME_MACHINE=alphaev56 ;;
864dd0822caSmrg	  PCA56) UNAME_MACHINE=alphapca56 ;;
865dd0822caSmrg	  PCA57) UNAME_MACHINE=alphapca56 ;;
866dd0822caSmrg	  EV6)   UNAME_MACHINE=alphaev6 ;;
867dd0822caSmrg	  EV67)  UNAME_MACHINE=alphaev67 ;;
868dd0822caSmrg	  EV68*) UNAME_MACHINE=alphaev68 ;;
869dd0822caSmrg        esac
870dd0822caSmrg	objdump --private-headers /bin/sh | grep -q ld.so.1
871dd0822caSmrg	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
872dd0822caSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
873dd0822caSmrg	exit ;;
8743eed67faSmbalmer    arm*:Linux:*:*)
875dc407927Smrg	eval $set_cc_for_build
876dc407927Smrg	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
877dc407927Smrg	    | grep -q __ARM_EABI__
878dc407927Smrg	then
879dc407927Smrg	    echo ${UNAME_MACHINE}-unknown-linux-gnu
880dc407927Smrg	else
881dc407927Smrg	    echo ${UNAME_MACHINE}-unknown-linux-gnueabi
882dc407927Smrg	fi
883dc407927Smrg	exit ;;
884dc407927Smrg    avr32*:Linux:*:*)
8853eed67faSmbalmer	echo ${UNAME_MACHINE}-unknown-linux-gnu
8863eed67faSmbalmer	exit ;;
8873eed67faSmbalmer    cris:Linux:*:*)
8883eed67faSmbalmer	echo cris-axis-linux-gnu
8893eed67faSmbalmer	exit ;;
8903eed67faSmbalmer    crisv32:Linux:*:*)
8913eed67faSmbalmer	echo crisv32-axis-linux-gnu
8923eed67faSmbalmer	exit ;;
8933eed67faSmbalmer    frv:Linux:*:*)
8943eed67faSmbalmer    	echo frv-unknown-linux-gnu
8953eed67faSmbalmer	exit ;;
896dd0822caSmrg    i*86:Linux:*:*)
897dd0822caSmrg	LIBC=gnu
898dd0822caSmrg	eval $set_cc_for_build
899dd0822caSmrg	sed 's/^	//' << EOF >$dummy.c
900dd0822caSmrg	#ifdef __dietlibc__
901dd0822caSmrg	LIBC=dietlibc
902dd0822caSmrg	#endif
903dd0822caSmrgEOF
904dd0822caSmrg	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
905dd0822caSmrg	echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
906dd0822caSmrg	exit ;;
9073eed67faSmbalmer    ia64:Linux:*:*)
9083eed67faSmbalmer	echo ${UNAME_MACHINE}-unknown-linux-gnu
9093eed67faSmbalmer	exit ;;
9103eed67faSmbalmer    m32r*:Linux:*:*)
9113eed67faSmbalmer	echo ${UNAME_MACHINE}-unknown-linux-gnu
9123eed67faSmbalmer	exit ;;
9133eed67faSmbalmer    m68*:Linux:*:*)
9143eed67faSmbalmer	echo ${UNAME_MACHINE}-unknown-linux-gnu
9153eed67faSmbalmer	exit ;;
916dd0822caSmrg    mips:Linux:*:* | mips64:Linux:*:*)
9173eed67faSmbalmer	eval $set_cc_for_build
9183eed67faSmbalmer	sed 's/^	//' << EOF >$dummy.c
9193eed67faSmbalmer	#undef CPU
920dd0822caSmrg	#undef ${UNAME_MACHINE}
921dd0822caSmrg	#undef ${UNAME_MACHINE}el
9223eed67faSmbalmer	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
923dd0822caSmrg	CPU=${UNAME_MACHINE}el
9243eed67faSmbalmer	#else
9253eed67faSmbalmer	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
926dd0822caSmrg	CPU=${UNAME_MACHINE}
9273eed67faSmbalmer	#else
9283eed67faSmbalmer	CPU=
9293eed67faSmbalmer	#endif
9303eed67faSmbalmer	#endif
9313eed67faSmbalmerEOF
932dd0822caSmrg	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
9333eed67faSmbalmer	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
9343eed67faSmbalmer	;;
935dc407927Smrg    or32:Linux:*:*)
936dc407927Smrg	echo or32-unknown-linux-gnu
937dc407927Smrg	exit ;;
938dc407927Smrg    padre:Linux:*:*)
939dc407927Smrg	echo sparc-unknown-linux-gnu
940dc407927Smrg	exit ;;
941dd0822caSmrg    parisc64:Linux:*:* | hppa64:Linux:*:*)
942dd0822caSmrg	echo hppa64-unknown-linux-gnu
943dd0822caSmrg	exit ;;
9443eed67faSmbalmer    parisc:Linux:*:* | hppa:Linux:*:*)
9453eed67faSmbalmer	# Look for CPU level
9463eed67faSmbalmer	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
9473eed67faSmbalmer	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
9483eed67faSmbalmer	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
9493eed67faSmbalmer	  *)    echo hppa-unknown-linux-gnu ;;
9503eed67faSmbalmer	esac
9513eed67faSmbalmer	exit ;;
952dd0822caSmrg    ppc64:Linux:*:*)
953dd0822caSmrg	echo powerpc64-unknown-linux-gnu
954dd0822caSmrg	exit ;;
955dd0822caSmrg    ppc:Linux:*:*)
956dd0822caSmrg	echo powerpc-unknown-linux-gnu
9573eed67faSmbalmer	exit ;;
9583eed67faSmbalmer    s390:Linux:*:* | s390x:Linux:*:*)
9593eed67faSmbalmer	echo ${UNAME_MACHINE}-ibm-linux
9603eed67faSmbalmer	exit ;;
9613eed67faSmbalmer    sh64*:Linux:*:*)
9623eed67faSmbalmer    	echo ${UNAME_MACHINE}-unknown-linux-gnu
9633eed67faSmbalmer	exit ;;
9643eed67faSmbalmer    sh*:Linux:*:*)
9653eed67faSmbalmer	echo ${UNAME_MACHINE}-unknown-linux-gnu
9663eed67faSmbalmer	exit ;;
9673eed67faSmbalmer    sparc:Linux:*:* | sparc64:Linux:*:*)
9683eed67faSmbalmer	echo ${UNAME_MACHINE}-unknown-linux-gnu
9693eed67faSmbalmer	exit ;;
970dc407927Smrg    vax:Linux:*:*)
971dc407927Smrg	echo ${UNAME_MACHINE}-dec-linux-gnu
972dc407927Smrg	exit ;;
9733eed67faSmbalmer    x86_64:Linux:*:*)
9743eed67faSmbalmer	echo x86_64-unknown-linux-gnu
9753eed67faSmbalmer	exit ;;
976dc407927Smrg    xtensa*:Linux:*:*)
977dc407927Smrg    	echo ${UNAME_MACHINE}-unknown-linux-gnu
978dc407927Smrg	exit ;;
9793eed67faSmbalmer    i*86:DYNIX/ptx:4*:*)
9803eed67faSmbalmer	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
9813eed67faSmbalmer	# earlier versions are messed up and put the nodename in both
9823eed67faSmbalmer	# sysname and nodename.
9833eed67faSmbalmer	echo i386-sequent-sysv4
9843eed67faSmbalmer	exit ;;
9853eed67faSmbalmer    i*86:UNIX_SV:4.2MP:2.*)
9863eed67faSmbalmer        # Unixware is an offshoot of SVR4, but it has its own version
9873eed67faSmbalmer        # number series starting with 2...
9883eed67faSmbalmer        # I am not positive that other SVR4 systems won't match this,
9893eed67faSmbalmer	# I just have to hope.  -- rms.
9903eed67faSmbalmer        # Use sysv4.2uw... so that sysv4* matches it.
9913eed67faSmbalmer	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
9923eed67faSmbalmer	exit ;;
9933eed67faSmbalmer    i*86:OS/2:*:*)
9943eed67faSmbalmer	# If we were able to find `uname', then EMX Unix compatibility
9953eed67faSmbalmer	# is probably installed.
9963eed67faSmbalmer	echo ${UNAME_MACHINE}-pc-os2-emx
9973eed67faSmbalmer	exit ;;
9983eed67faSmbalmer    i*86:XTS-300:*:STOP)
9993eed67faSmbalmer	echo ${UNAME_MACHINE}-unknown-stop
10003eed67faSmbalmer	exit ;;
10013eed67faSmbalmer    i*86:atheos:*:*)
10023eed67faSmbalmer	echo ${UNAME_MACHINE}-unknown-atheos
10033eed67faSmbalmer	exit ;;
10043eed67faSmbalmer    i*86:syllable:*:*)
10053eed67faSmbalmer	echo ${UNAME_MACHINE}-pc-syllable
10063eed67faSmbalmer	exit ;;
1007dd0822caSmrg    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
10083eed67faSmbalmer	echo i386-unknown-lynxos${UNAME_RELEASE}
10093eed67faSmbalmer	exit ;;
10103eed67faSmbalmer    i*86:*DOS:*:*)
10113eed67faSmbalmer	echo ${UNAME_MACHINE}-pc-msdosdjgpp
10123eed67faSmbalmer	exit ;;
10133eed67faSmbalmer    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
10143eed67faSmbalmer	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
10153eed67faSmbalmer	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
10163eed67faSmbalmer		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
10173eed67faSmbalmer	else
10183eed67faSmbalmer		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
10193eed67faSmbalmer	fi
10203eed67faSmbalmer	exit ;;
10213eed67faSmbalmer    i*86:*:5:[678]*)
10223eed67faSmbalmer    	# UnixWare 7.x, OpenUNIX and OpenServer 6.
10233eed67faSmbalmer	case `/bin/uname -X | grep "^Machine"` in
10243eed67faSmbalmer	    *486*)	     UNAME_MACHINE=i486 ;;
10253eed67faSmbalmer	    *Pentium)	     UNAME_MACHINE=i586 ;;
10263eed67faSmbalmer	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
10273eed67faSmbalmer	esac
10283eed67faSmbalmer	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
10293eed67faSmbalmer	exit ;;
10303eed67faSmbalmer    i*86:*:3.2:*)
10313eed67faSmbalmer	if test -f /usr/options/cb.name; then
10323eed67faSmbalmer		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
10333eed67faSmbalmer		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
10343eed67faSmbalmer	elif /bin/uname -X 2>/dev/null >/dev/null ; then
10353eed67faSmbalmer		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
10363eed67faSmbalmer		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
10373eed67faSmbalmer		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
10383eed67faSmbalmer			&& UNAME_MACHINE=i586
10393eed67faSmbalmer		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
10403eed67faSmbalmer			&& UNAME_MACHINE=i686
10413eed67faSmbalmer		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
10423eed67faSmbalmer			&& UNAME_MACHINE=i686
10433eed67faSmbalmer		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
10443eed67faSmbalmer	else
10453eed67faSmbalmer		echo ${UNAME_MACHINE}-pc-sysv32
10463eed67faSmbalmer	fi
10473eed67faSmbalmer	exit ;;
10483eed67faSmbalmer    pc:*:*:*)
10493eed67faSmbalmer	# Left here for compatibility:
10503eed67faSmbalmer        # uname -m prints for DJGPP always 'pc', but it prints nothing about
1051dc407927Smrg        # the processor, so we play safe by assuming i586.
1052dc407927Smrg	# Note: whatever this is, it MUST be the same as what config.sub
1053dc407927Smrg	# prints for the "djgpp" host, or else GDB configury will decide that
1054dc407927Smrg	# this is a cross-build.
1055dc407927Smrg	echo i586-pc-msdosdjgpp
10563eed67faSmbalmer        exit ;;
10573eed67faSmbalmer    Intel:Mach:3*:*)
10583eed67faSmbalmer	echo i386-pc-mach3
10593eed67faSmbalmer	exit ;;
10603eed67faSmbalmer    paragon:*:*:*)
10613eed67faSmbalmer	echo i860-intel-osf1
10623eed67faSmbalmer	exit ;;
10633eed67faSmbalmer    i860:*:4.*:*) # i860-SVR4
10643eed67faSmbalmer	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
10653eed67faSmbalmer	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
10663eed67faSmbalmer	else # Add other i860-SVR4 vendors below as they are discovered.
10673eed67faSmbalmer	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
10683eed67faSmbalmer	fi
10693eed67faSmbalmer	exit ;;
10703eed67faSmbalmer    mini*:CTIX:SYS*5:*)
10713eed67faSmbalmer	# "miniframe"
10723eed67faSmbalmer	echo m68010-convergent-sysv
10733eed67faSmbalmer	exit ;;
10743eed67faSmbalmer    mc68k:UNIX:SYSTEM5:3.51m)
10753eed67faSmbalmer	echo m68k-convergent-sysv
10763eed67faSmbalmer	exit ;;
10773eed67faSmbalmer    M680?0:D-NIX:5.3:*)
10783eed67faSmbalmer	echo m68k-diab-dnix
10793eed67faSmbalmer	exit ;;
10803eed67faSmbalmer    M68*:*:R3V[5678]*:*)
10813eed67faSmbalmer	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
10823eed67faSmbalmer    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)
10833eed67faSmbalmer	OS_REL=''
10843eed67faSmbalmer	test -r /etc/.relid \
10853eed67faSmbalmer	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
10863eed67faSmbalmer	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
10873eed67faSmbalmer	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
10883eed67faSmbalmer	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
10893eed67faSmbalmer	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
10903eed67faSmbalmer    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
10913eed67faSmbalmer        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
10923eed67faSmbalmer          && { echo i486-ncr-sysv4; exit; } ;;
1093dc407927Smrg    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
1094dc407927Smrg	OS_REL='.3'
1095dc407927Smrg	test -r /etc/.relid \
1096dc407927Smrg	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1097dc407927Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1098dc407927Smrg	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1099dc407927Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1100dc407927Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
1101dc407927Smrg	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
1102dc407927Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
11033eed67faSmbalmer    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
11043eed67faSmbalmer	echo m68k-unknown-lynxos${UNAME_RELEASE}
11053eed67faSmbalmer	exit ;;
11063eed67faSmbalmer    mc68030:UNIX_System_V:4.*:*)
11073eed67faSmbalmer	echo m68k-atari-sysv4
11083eed67faSmbalmer	exit ;;
11093eed67faSmbalmer    TSUNAMI:LynxOS:2.*:*)
11103eed67faSmbalmer	echo sparc-unknown-lynxos${UNAME_RELEASE}
11113eed67faSmbalmer	exit ;;
11123eed67faSmbalmer    rs6000:LynxOS:2.*:*)
11133eed67faSmbalmer	echo rs6000-unknown-lynxos${UNAME_RELEASE}
11143eed67faSmbalmer	exit ;;
1115dd0822caSmrg    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
11163eed67faSmbalmer	echo powerpc-unknown-lynxos${UNAME_RELEASE}
11173eed67faSmbalmer	exit ;;
11183eed67faSmbalmer    SM[BE]S:UNIX_SV:*:*)
11193eed67faSmbalmer	echo mips-dde-sysv${UNAME_RELEASE}
11203eed67faSmbalmer	exit ;;
11213eed67faSmbalmer    RM*:ReliantUNIX-*:*:*)
11223eed67faSmbalmer	echo mips-sni-sysv4
11233eed67faSmbalmer	exit ;;
11243eed67faSmbalmer    RM*:SINIX-*:*:*)
11253eed67faSmbalmer	echo mips-sni-sysv4
11263eed67faSmbalmer	exit ;;
11273eed67faSmbalmer    *:SINIX-*:*:*)
11283eed67faSmbalmer	if uname -p 2>/dev/null >/dev/null ; then
11293eed67faSmbalmer		UNAME_MACHINE=`(uname -p) 2>/dev/null`
11303eed67faSmbalmer		echo ${UNAME_MACHINE}-sni-sysv4
11313eed67faSmbalmer	else
11323eed67faSmbalmer		echo ns32k-sni-sysv
11333eed67faSmbalmer	fi
11343eed67faSmbalmer	exit ;;
11353eed67faSmbalmer    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
11363eed67faSmbalmer                      # says <Richard.M.Bartel@ccMail.Census.GOV>
11373eed67faSmbalmer        echo i586-unisys-sysv4
11383eed67faSmbalmer        exit ;;
11393eed67faSmbalmer    *:UNIX_System_V:4*:FTX*)
11403eed67faSmbalmer	# From Gerald Hewes <hewes@openmarket.com>.
11413eed67faSmbalmer	# How about differentiating between stratus architectures? -djm
11423eed67faSmbalmer	echo hppa1.1-stratus-sysv4
11433eed67faSmbalmer	exit ;;
11443eed67faSmbalmer    *:*:*:FTX*)
11453eed67faSmbalmer	# From seanf@swdc.stratus.com.
11463eed67faSmbalmer	echo i860-stratus-sysv4
11473eed67faSmbalmer	exit ;;
11483eed67faSmbalmer    i*86:VOS:*:*)
11493eed67faSmbalmer	# From Paul.Green@stratus.com.
11503eed67faSmbalmer	echo ${UNAME_MACHINE}-stratus-vos
11513eed67faSmbalmer	exit ;;
11523eed67faSmbalmer    *:VOS:*:*)
11533eed67faSmbalmer	# From Paul.Green@stratus.com.
11543eed67faSmbalmer	echo hppa1.1-stratus-vos
11553eed67faSmbalmer	exit ;;
11563eed67faSmbalmer    mc68*:A/UX:*:*)
11573eed67faSmbalmer	echo m68k-apple-aux${UNAME_RELEASE}
11583eed67faSmbalmer	exit ;;
11593eed67faSmbalmer    news*:NEWS-OS:6*:*)
11603eed67faSmbalmer	echo mips-sony-newsos6
11613eed67faSmbalmer	exit ;;
11623eed67faSmbalmer    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
11633eed67faSmbalmer	if [ -d /usr/nec ]; then
11643eed67faSmbalmer	        echo mips-nec-sysv${UNAME_RELEASE}
11653eed67faSmbalmer	else
11663eed67faSmbalmer	        echo mips-unknown-sysv${UNAME_RELEASE}
11673eed67faSmbalmer	fi
11683eed67faSmbalmer        exit ;;
11693eed67faSmbalmer    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
11703eed67faSmbalmer	echo powerpc-be-beos
11713eed67faSmbalmer	exit ;;
11723eed67faSmbalmer    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
11733eed67faSmbalmer	echo powerpc-apple-beos
11743eed67faSmbalmer	exit ;;
11753eed67faSmbalmer    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
11763eed67faSmbalmer	echo i586-pc-beos
11773eed67faSmbalmer	exit ;;
1178dc407927Smrg    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
1179dc407927Smrg	echo i586-pc-haiku
1180dc407927Smrg	exit ;;
11813eed67faSmbalmer    SX-4:SUPER-UX:*:*)
11823eed67faSmbalmer	echo sx4-nec-superux${UNAME_RELEASE}
11833eed67faSmbalmer	exit ;;
11843eed67faSmbalmer    SX-5:SUPER-UX:*:*)
11853eed67faSmbalmer	echo sx5-nec-superux${UNAME_RELEASE}
11863eed67faSmbalmer	exit ;;
11873eed67faSmbalmer    SX-6:SUPER-UX:*:*)
11883eed67faSmbalmer	echo sx6-nec-superux${UNAME_RELEASE}
11893eed67faSmbalmer	exit ;;
1190dc407927Smrg    SX-7:SUPER-UX:*:*)
1191dc407927Smrg	echo sx7-nec-superux${UNAME_RELEASE}
1192dc407927Smrg	exit ;;
1193dc407927Smrg    SX-8:SUPER-UX:*:*)
1194dc407927Smrg	echo sx8-nec-superux${UNAME_RELEASE}
1195dc407927Smrg	exit ;;
1196dc407927Smrg    SX-8R:SUPER-UX:*:*)
1197dc407927Smrg	echo sx8r-nec-superux${UNAME_RELEASE}
1198dc407927Smrg	exit ;;
11993eed67faSmbalmer    Power*:Rhapsody:*:*)
12003eed67faSmbalmer	echo powerpc-apple-rhapsody${UNAME_RELEASE}
12013eed67faSmbalmer	exit ;;
12023eed67faSmbalmer    *:Rhapsody:*:*)
12033eed67faSmbalmer	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
12043eed67faSmbalmer	exit ;;
12053eed67faSmbalmer    *:Darwin:*:*)
12063eed67faSmbalmer	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
12073eed67faSmbalmer	case $UNAME_PROCESSOR in
1208dd0822caSmrg	    i386)
1209dd0822caSmrg		eval $set_cc_for_build
1210dd0822caSmrg		if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
1211dd0822caSmrg		  if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
1212dd0822caSmrg		      (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
1213dd0822caSmrg		      grep IS_64BIT_ARCH >/dev/null
1214dd0822caSmrg		  then
1215dd0822caSmrg		      UNAME_PROCESSOR="x86_64"
1216dd0822caSmrg		  fi
1217dd0822caSmrg		fi ;;
12183eed67faSmbalmer	    unknown) UNAME_PROCESSOR=powerpc ;;
12193eed67faSmbalmer	esac
12203eed67faSmbalmer	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
12213eed67faSmbalmer	exit ;;
12223eed67faSmbalmer    *:procnto*:*:* | *:QNX:[0123456789]*:*)
12233eed67faSmbalmer	UNAME_PROCESSOR=`uname -p`
12243eed67faSmbalmer	if test "$UNAME_PROCESSOR" = "x86"; then
12253eed67faSmbalmer		UNAME_PROCESSOR=i386
12263eed67faSmbalmer		UNAME_MACHINE=pc
12273eed67faSmbalmer	fi
12283eed67faSmbalmer	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
12293eed67faSmbalmer	exit ;;
12303eed67faSmbalmer    *:QNX:*:4*)
12313eed67faSmbalmer	echo i386-pc-qnx
12323eed67faSmbalmer	exit ;;
12333eed67faSmbalmer    NSE-?:NONSTOP_KERNEL:*:*)
12343eed67faSmbalmer	echo nse-tandem-nsk${UNAME_RELEASE}
12353eed67faSmbalmer	exit ;;
12363eed67faSmbalmer    NSR-?:NONSTOP_KERNEL:*:*)
12373eed67faSmbalmer	echo nsr-tandem-nsk${UNAME_RELEASE}
12383eed67faSmbalmer	exit ;;
12393eed67faSmbalmer    *:NonStop-UX:*:*)
12403eed67faSmbalmer	echo mips-compaq-nonstopux
12413eed67faSmbalmer	exit ;;
12423eed67faSmbalmer    BS2000:POSIX*:*:*)
12433eed67faSmbalmer	echo bs2000-siemens-sysv
12443eed67faSmbalmer	exit ;;
12453eed67faSmbalmer    DS/*:UNIX_System_V:*:*)
12463eed67faSmbalmer	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
12473eed67faSmbalmer	exit ;;
12483eed67faSmbalmer    *:Plan9:*:*)
12493eed67faSmbalmer	# "uname -m" is not consistent, so use $cputype instead. 386
12503eed67faSmbalmer	# is converted to i386 for consistency with other x86
12513eed67faSmbalmer	# operating systems.
12523eed67faSmbalmer	if test "$cputype" = "386"; then
12533eed67faSmbalmer	    UNAME_MACHINE=i386
12543eed67faSmbalmer	else
12553eed67faSmbalmer	    UNAME_MACHINE="$cputype"
12563eed67faSmbalmer	fi
12573eed67faSmbalmer	echo ${UNAME_MACHINE}-unknown-plan9
12583eed67faSmbalmer	exit ;;
12593eed67faSmbalmer    *:TOPS-10:*:*)
12603eed67faSmbalmer	echo pdp10-unknown-tops10
12613eed67faSmbalmer	exit ;;
12623eed67faSmbalmer    *:TENEX:*:*)
12633eed67faSmbalmer	echo pdp10-unknown-tenex
12643eed67faSmbalmer	exit ;;
12653eed67faSmbalmer    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
12663eed67faSmbalmer	echo pdp10-dec-tops20
12673eed67faSmbalmer	exit ;;
12683eed67faSmbalmer    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
12693eed67faSmbalmer	echo pdp10-xkl-tops20
12703eed67faSmbalmer	exit ;;
12713eed67faSmbalmer    *:TOPS-20:*:*)
12723eed67faSmbalmer	echo pdp10-unknown-tops20
12733eed67faSmbalmer	exit ;;
12743eed67faSmbalmer    *:ITS:*:*)
12753eed67faSmbalmer	echo pdp10-unknown-its
12763eed67faSmbalmer	exit ;;
12773eed67faSmbalmer    SEI:*:*:SEIUX)
12783eed67faSmbalmer        echo mips-sei-seiux${UNAME_RELEASE}
12793eed67faSmbalmer	exit ;;
12803eed67faSmbalmer    *:DragonFly:*:*)
12813eed67faSmbalmer	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
12823eed67faSmbalmer	exit ;;
12833eed67faSmbalmer    *:*VMS:*:*)
12843eed67faSmbalmer    	UNAME_MACHINE=`(uname -p) 2>/dev/null`
12853eed67faSmbalmer	case "${UNAME_MACHINE}" in
12863eed67faSmbalmer	    A*) echo alpha-dec-vms ; exit ;;
12873eed67faSmbalmer	    I*) echo ia64-dec-vms ; exit ;;
12883eed67faSmbalmer	    V*) echo vax-dec-vms ; exit ;;
12893eed67faSmbalmer	esac ;;
12903eed67faSmbalmer    *:XENIX:*:SysV)
12913eed67faSmbalmer	echo i386-pc-xenix
12923eed67faSmbalmer	exit ;;
12933eed67faSmbalmer    i*86:skyos:*:*)
12943eed67faSmbalmer	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
12953eed67faSmbalmer	exit ;;
1296dc407927Smrg    i*86:rdos:*:*)
1297dc407927Smrg	echo ${UNAME_MACHINE}-pc-rdos
1298dc407927Smrg	exit ;;
1299dc407927Smrg    i*86:AROS:*:*)
1300dc407927Smrg	echo ${UNAME_MACHINE}-pc-aros
1301dc407927Smrg	exit ;;
13023eed67faSmbalmeresac
13033eed67faSmbalmer
13043eed67faSmbalmer#echo '(No uname command or uname output not recognized.)' 1>&2
13053eed67faSmbalmer#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
13063eed67faSmbalmer
13073eed67faSmbalmereval $set_cc_for_build
13083eed67faSmbalmercat >$dummy.c <<EOF
13093eed67faSmbalmer#ifdef _SEQUENT_
13103eed67faSmbalmer# include <sys/types.h>
13113eed67faSmbalmer# include <sys/utsname.h>
13123eed67faSmbalmer#endif
13133eed67faSmbalmermain ()
13143eed67faSmbalmer{
13153eed67faSmbalmer#if defined (sony)
13163eed67faSmbalmer#if defined (MIPSEB)
13173eed67faSmbalmer  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
13183eed67faSmbalmer     I don't know....  */
13193eed67faSmbalmer  printf ("mips-sony-bsd\n"); exit (0);
13203eed67faSmbalmer#else
13213eed67faSmbalmer#include <sys/param.h>
13223eed67faSmbalmer  printf ("m68k-sony-newsos%s\n",
13233eed67faSmbalmer#ifdef NEWSOS4
13243eed67faSmbalmer          "4"
13253eed67faSmbalmer#else
13263eed67faSmbalmer	  ""
13273eed67faSmbalmer#endif
13283eed67faSmbalmer         ); exit (0);
13293eed67faSmbalmer#endif
13303eed67faSmbalmer#endif
13313eed67faSmbalmer
13323eed67faSmbalmer#if defined (__arm) && defined (__acorn) && defined (__unix)
13333eed67faSmbalmer  printf ("arm-acorn-riscix\n"); exit (0);
13343eed67faSmbalmer#endif
13353eed67faSmbalmer
13363eed67faSmbalmer#if defined (hp300) && !defined (hpux)
13373eed67faSmbalmer  printf ("m68k-hp-bsd\n"); exit (0);
13383eed67faSmbalmer#endif
13393eed67faSmbalmer
13403eed67faSmbalmer#if defined (NeXT)
13413eed67faSmbalmer#if !defined (__ARCHITECTURE__)
13423eed67faSmbalmer#define __ARCHITECTURE__ "m68k"
13433eed67faSmbalmer#endif
13443eed67faSmbalmer  int version;
13453eed67faSmbalmer  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
13463eed67faSmbalmer  if (version < 4)
13473eed67faSmbalmer    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
13483eed67faSmbalmer  else
13493eed67faSmbalmer    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
13503eed67faSmbalmer  exit (0);
13513eed67faSmbalmer#endif
13523eed67faSmbalmer
13533eed67faSmbalmer#if defined (MULTIMAX) || defined (n16)
13543eed67faSmbalmer#if defined (UMAXV)
13553eed67faSmbalmer  printf ("ns32k-encore-sysv\n"); exit (0);
13563eed67faSmbalmer#else
13573eed67faSmbalmer#if defined (CMU)
13583eed67faSmbalmer  printf ("ns32k-encore-mach\n"); exit (0);
13593eed67faSmbalmer#else
13603eed67faSmbalmer  printf ("ns32k-encore-bsd\n"); exit (0);
13613eed67faSmbalmer#endif
13623eed67faSmbalmer#endif
13633eed67faSmbalmer#endif
13643eed67faSmbalmer
13653eed67faSmbalmer#if defined (__386BSD__)
13663eed67faSmbalmer  printf ("i386-pc-bsd\n"); exit (0);
13673eed67faSmbalmer#endif
13683eed67faSmbalmer
13693eed67faSmbalmer#if defined (sequent)
13703eed67faSmbalmer#if defined (i386)
13713eed67faSmbalmer  printf ("i386-sequent-dynix\n"); exit (0);
13723eed67faSmbalmer#endif
13733eed67faSmbalmer#if defined (ns32000)
13743eed67faSmbalmer  printf ("ns32k-sequent-dynix\n"); exit (0);
13753eed67faSmbalmer#endif
13763eed67faSmbalmer#endif
13773eed67faSmbalmer
13783eed67faSmbalmer#if defined (_SEQUENT_)
13793eed67faSmbalmer    struct utsname un;
13803eed67faSmbalmer
13813eed67faSmbalmer    uname(&un);
13823eed67faSmbalmer
13833eed67faSmbalmer    if (strncmp(un.version, "V2", 2) == 0) {
13843eed67faSmbalmer	printf ("i386-sequent-ptx2\n"); exit (0);
13853eed67faSmbalmer    }
13863eed67faSmbalmer    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
13873eed67faSmbalmer	printf ("i386-sequent-ptx1\n"); exit (0);
13883eed67faSmbalmer    }
13893eed67faSmbalmer    printf ("i386-sequent-ptx\n"); exit (0);
13903eed67faSmbalmer
13913eed67faSmbalmer#endif
13923eed67faSmbalmer
13933eed67faSmbalmer#if defined (vax)
13943eed67faSmbalmer# if !defined (ultrix)
13953eed67faSmbalmer#  include <sys/param.h>
13963eed67faSmbalmer#  if defined (BSD)
13973eed67faSmbalmer#   if BSD == 43
13983eed67faSmbalmer      printf ("vax-dec-bsd4.3\n"); exit (0);
13993eed67faSmbalmer#   else
14003eed67faSmbalmer#    if BSD == 199006
14013eed67faSmbalmer      printf ("vax-dec-bsd4.3reno\n"); exit (0);
14023eed67faSmbalmer#    else
14033eed67faSmbalmer      printf ("vax-dec-bsd\n"); exit (0);
14043eed67faSmbalmer#    endif
14053eed67faSmbalmer#   endif
14063eed67faSmbalmer#  else
14073eed67faSmbalmer    printf ("vax-dec-bsd\n"); exit (0);
14083eed67faSmbalmer#  endif
14093eed67faSmbalmer# else
14103eed67faSmbalmer    printf ("vax-dec-ultrix\n"); exit (0);
14113eed67faSmbalmer# endif
14123eed67faSmbalmer#endif
14133eed67faSmbalmer
14143eed67faSmbalmer#if defined (alliant) && defined (i860)
14153eed67faSmbalmer  printf ("i860-alliant-bsd\n"); exit (0);
14163eed67faSmbalmer#endif
14173eed67faSmbalmer
14183eed67faSmbalmer  exit (1);
14193eed67faSmbalmer}
14203eed67faSmbalmerEOF
14213eed67faSmbalmer
14223eed67faSmbalmer$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
14233eed67faSmbalmer	{ echo "$SYSTEM_NAME"; exit; }
14243eed67faSmbalmer
14253eed67faSmbalmer# Apollos put the system type in the environment.
14263eed67faSmbalmer
14273eed67faSmbalmertest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
14283eed67faSmbalmer
14293eed67faSmbalmer# Convex versions that predate uname can use getsysinfo(1)
14303eed67faSmbalmer
14313eed67faSmbalmerif [ -x /usr/convex/getsysinfo ]
14323eed67faSmbalmerthen
14333eed67faSmbalmer    case `getsysinfo -f cpu_type` in
14343eed67faSmbalmer    c1*)
14353eed67faSmbalmer	echo c1-convex-bsd
14363eed67faSmbalmer	exit ;;
14373eed67faSmbalmer    c2*)
14383eed67faSmbalmer	if getsysinfo -f scalar_acc
14393eed67faSmbalmer	then echo c32-convex-bsd
14403eed67faSmbalmer	else echo c2-convex-bsd
14413eed67faSmbalmer	fi
14423eed67faSmbalmer	exit ;;
14433eed67faSmbalmer    c34*)
14443eed67faSmbalmer	echo c34-convex-bsd
14453eed67faSmbalmer	exit ;;
14463eed67faSmbalmer    c38*)
14473eed67faSmbalmer	echo c38-convex-bsd
14483eed67faSmbalmer	exit ;;
14493eed67faSmbalmer    c4*)
14503eed67faSmbalmer	echo c4-convex-bsd
14513eed67faSmbalmer	exit ;;
14523eed67faSmbalmer    esac
14533eed67faSmbalmerfi
14543eed67faSmbalmer
14553eed67faSmbalmercat >&2 <<EOF
14563eed67faSmbalmer$0: unable to guess system type
14573eed67faSmbalmer
14583eed67faSmbalmerThis script, last modified $timestamp, has failed to recognize
14593eed67faSmbalmerthe operating system you are using. It is advised that you
14603eed67faSmbalmerdownload the most up to date version of the config scripts from
14613eed67faSmbalmer
1462dc407927Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
14633eed67faSmbalmerand
1464dc407927Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
14653eed67faSmbalmer
14663eed67faSmbalmerIf the version you run ($0) is already up to date, please
14673eed67faSmbalmersend the following data and any information you think might be
14683eed67faSmbalmerpertinent to <config-patches@gnu.org> in order to provide the needed
14693eed67faSmbalmerinformation to handle your system.
14703eed67faSmbalmer
14713eed67faSmbalmerconfig.guess timestamp = $timestamp
14723eed67faSmbalmer
14733eed67faSmbalmeruname -m = `(uname -m) 2>/dev/null || echo unknown`
14743eed67faSmbalmeruname -r = `(uname -r) 2>/dev/null || echo unknown`
14753eed67faSmbalmeruname -s = `(uname -s) 2>/dev/null || echo unknown`
14763eed67faSmbalmeruname -v = `(uname -v) 2>/dev/null || echo unknown`
14773eed67faSmbalmer
14783eed67faSmbalmer/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
14793eed67faSmbalmer/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
14803eed67faSmbalmer
14813eed67faSmbalmerhostinfo               = `(hostinfo) 2>/dev/null`
14823eed67faSmbalmer/bin/universe          = `(/bin/universe) 2>/dev/null`
14833eed67faSmbalmer/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
14843eed67faSmbalmer/bin/arch              = `(/bin/arch) 2>/dev/null`
14853eed67faSmbalmer/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
14863eed67faSmbalmer/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
14873eed67faSmbalmer
14883eed67faSmbalmerUNAME_MACHINE = ${UNAME_MACHINE}
14893eed67faSmbalmerUNAME_RELEASE = ${UNAME_RELEASE}
14903eed67faSmbalmerUNAME_SYSTEM  = ${UNAME_SYSTEM}
14913eed67faSmbalmerUNAME_VERSION = ${UNAME_VERSION}
14923eed67faSmbalmerEOF
14933eed67faSmbalmer
14943eed67faSmbalmerexit 1
14953eed67faSmbalmer
14963eed67faSmbalmer# Local variables:
14973eed67faSmbalmer# eval: (add-hook 'write-file-hooks 'time-stamp)
14983eed67faSmbalmer# time-stamp-start: "timestamp='"
14993eed67faSmbalmer# time-stamp-format: "%:y-%02m-%02d"
15003eed67faSmbalmer# time-stamp-end: "'"
15013eed67faSmbalmer# End:
1502