config.guess revision dc99b369
15eefee25Smacallan#! /bin/sh
25eefee25Smacallan# Attempt to guess a canonical system name.
35eefee25Smacallan#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4dc99b369Smrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
5dc99b369Smrg#   2011, 2012 Free Software Foundation, Inc.
65eefee25Smacallan
7dc99b369Smrgtimestamp='2012-08-14'
85eefee25Smacallan
95eefee25Smacallan# This file is free software; you can redistribute it and/or modify it
105eefee25Smacallan# under the terms of the GNU General Public License as published by
115eefee25Smacallan# the Free Software Foundation; either version 2 of the License, or
125eefee25Smacallan# (at your option) any later version.
135eefee25Smacallan#
145eefee25Smacallan# This program is distributed in the hope that it will be useful, but
155eefee25Smacallan# WITHOUT ANY WARRANTY; without even the implied warranty of
165eefee25Smacallan# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
175eefee25Smacallan# General Public License for more details.
185eefee25Smacallan#
195eefee25Smacallan# You should have received a copy of the GNU General Public License
20dc99b369Smrg# along with this program; if not, see <http://www.gnu.org/licenses/>.
215eefee25Smacallan#
225eefee25Smacallan# As a special exception to the GNU General Public License, if you
235eefee25Smacallan# distribute this file as part of a program that contains a
245eefee25Smacallan# configuration script generated by Autoconf, you may include it under
255eefee25Smacallan# the same distribution terms that you use for the rest of that program.
265eefee25Smacallan
2762ab96baSmrg
28dc99b369Smrg# Originally written by Per Bothner.  Please send patches (context
29dc99b369Smrg# diff format) to <config-patches@gnu.org> and include a ChangeLog
30dc99b369Smrg# entry.
315eefee25Smacallan#
325eefee25Smacallan# This script attempts to guess a canonical system name similar to
335eefee25Smacallan# config.sub.  If it succeeds, it prints the system name on stdout, and
345eefee25Smacallan# exits with 0.  Otherwise, it exits with 1.
355eefee25Smacallan#
36dc99b369Smrg# You can get the latest version of this script from:
37dc99b369Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
385eefee25Smacallan
395eefee25Smacallanme=`echo "$0" | sed -e 's,.*/,,'`
405eefee25Smacallan
415eefee25Smacallanusage="\
425eefee25SmacallanUsage: $0 [OPTION]
435eefee25Smacallan
445eefee25SmacallanOutput the configuration name of the system \`$me' is run on.
455eefee25Smacallan
465eefee25SmacallanOperation modes:
475eefee25Smacallan  -h, --help         print this help, then exit
485eefee25Smacallan  -t, --time-stamp   print date of last modification, then exit
495eefee25Smacallan  -v, --version      print version number, then exit
505eefee25Smacallan
515eefee25SmacallanReport bugs and patches to <config-patches@gnu.org>."
525eefee25Smacallan
535eefee25Smacallanversion="\
545eefee25SmacallanGNU config.guess ($timestamp)
555eefee25Smacallan
565eefee25SmacallanOriginally written by Per Bothner.
57dc99b369SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
58dc99b369Smrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
59dc99b369SmrgFree Software Foundation, Inc.
605eefee25Smacallan
615eefee25SmacallanThis is free software; see the source for copying conditions.  There is NO
625eefee25Smacallanwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
635eefee25Smacallan
645eefee25Smacallanhelp="
655eefee25SmacallanTry \`$me --help' for more information."
665eefee25Smacallan
675eefee25Smacallan# Parse command line
685eefee25Smacallanwhile test $# -gt 0 ; do
695eefee25Smacallan  case $1 in
705eefee25Smacallan    --time-stamp | --time* | -t )
7162ab96baSmrg       echo "$timestamp" ; exit ;;
725eefee25Smacallan    --version | -v )
7362ab96baSmrg       echo "$version" ; exit ;;
745eefee25Smacallan    --help | --h* | -h )
7562ab96baSmrg       echo "$usage"; exit ;;
765eefee25Smacallan    -- )     # Stop option processing
775eefee25Smacallan       shift; break ;;
785eefee25Smacallan    - )	# Use stdin as input.
795eefee25Smacallan       break ;;
805eefee25Smacallan    -* )
815eefee25Smacallan       echo "$me: invalid option $1$help" >&2
825eefee25Smacallan       exit 1 ;;
835eefee25Smacallan    * )
845eefee25Smacallan       break ;;
855eefee25Smacallan  esac
865eefee25Smacallandone
875eefee25Smacallan
885eefee25Smacallanif test $# != 0; then
895eefee25Smacallan  echo "$me: too many arguments$help" >&2
905eefee25Smacallan  exit 1
915eefee25Smacallanfi
925eefee25Smacallan
935eefee25Smacallantrap 'exit 1' 1 2 15
945eefee25Smacallan
955eefee25Smacallan# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
965eefee25Smacallan# compiler to aid in system detection is discouraged as it requires
975eefee25Smacallan# temporary files to be created and, as you can see below, it is a
985eefee25Smacallan# headache to deal with in a portable fashion.
995eefee25Smacallan
1005eefee25Smacallan# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
1015eefee25Smacallan# use `HOST_CC' if defined, but it is deprecated.
1025eefee25Smacallan
1035eefee25Smacallan# Portable tmp directory creation inspired by the Autoconf team.
1045eefee25Smacallan
1055eefee25Smacallanset_cc_for_build='
1065eefee25Smacallantrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
1075eefee25Smacallantrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
1085eefee25Smacallan: ${TMPDIR=/tmp} ;
10962ab96baSmrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
1105eefee25Smacallan { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
1115eefee25Smacallan { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
1125eefee25Smacallan { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
1135eefee25Smacallandummy=$tmp/dummy ;
1145eefee25Smacallantmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
1155eefee25Smacallancase $CC_FOR_BUILD,$HOST_CC,$CC in
1165eefee25Smacallan ,,)    echo "int x;" > $dummy.c ;
1175eefee25Smacallan	for c in cc gcc c89 c99 ; do
1185eefee25Smacallan	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
1195eefee25Smacallan	     CC_FOR_BUILD="$c"; break ;
1205eefee25Smacallan	  fi ;
1215eefee25Smacallan	done ;
1225eefee25Smacallan	if test x"$CC_FOR_BUILD" = x ; then
1235eefee25Smacallan	  CC_FOR_BUILD=no_compiler_found ;
1245eefee25Smacallan	fi
1255eefee25Smacallan	;;
1265eefee25Smacallan ,,*)   CC_FOR_BUILD=$CC ;;
1275eefee25Smacallan ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
12862ab96baSmrgesac ; set_cc_for_build= ;'
1295eefee25Smacallan
1305eefee25Smacallan# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
1315eefee25Smacallan# (ghazi@noc.rutgers.edu 1994-08-24)
1325eefee25Smacallanif (test -f /.attbin/uname) >/dev/null 2>&1 ; then
1335eefee25Smacallan	PATH=$PATH:/.attbin ; export PATH
1345eefee25Smacallanfi
1355eefee25Smacallan
1365eefee25SmacallanUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
1375eefee25SmacallanUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
1385eefee25SmacallanUNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
1395eefee25SmacallanUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
1405eefee25Smacallan
141dc99b369Smrgcase "${UNAME_SYSTEM}" in
142dc99b369SmrgLinux|GNU/*)
143dc99b369Smrg	eval $set_cc_for_build
144dc99b369Smrg	cat <<-EOF > $dummy.c
145dc99b369Smrg	#include <features.h>
146dc99b369Smrg	#ifdef __UCLIBC__
147dc99b369Smrg	# ifdef __UCLIBC_CONFIG_VERSION__
148dc99b369Smrg	LIBC=uclibc __UCLIBC_CONFIG_VERSION__
149dc99b369Smrg	# else
150dc99b369Smrg	LIBC=uclibc
151dc99b369Smrg	# endif
152dc99b369Smrg	#else
153dc99b369Smrg	# ifdef __dietlibc__
154dc99b369Smrg	LIBC=dietlibc
155dc99b369Smrg	# else
156dc99b369Smrg	LIBC=gnu
157dc99b369Smrg	# endif
158dc99b369Smrg	#endif
159dc99b369Smrg	EOF
160dc99b369Smrg	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
161dc99b369Smrg	;;
162dc99b369Smrgesac
163dc99b369Smrg
1645eefee25Smacallan# Note: order is significant - the case branches are not exclusive.
1655eefee25Smacallan
1665eefee25Smacallancase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
1675eefee25Smacallan    *:NetBSD:*:*)
1685eefee25Smacallan	# NetBSD (nbsd) targets should (where applicable) match one or
169dc99b369Smrg	# more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
1705eefee25Smacallan	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
1715eefee25Smacallan	# switched to ELF, *-*-netbsd* would select the old
1725eefee25Smacallan	# object file format.  This provides both forward
1735eefee25Smacallan	# compatibility and a consistent mechanism for selecting the
1745eefee25Smacallan	# object file format.
1755eefee25Smacallan	#
1765eefee25Smacallan	# Note: NetBSD doesn't particularly care about the vendor
1775eefee25Smacallan	# portion of the name.  We always set it to "unknown".
1785eefee25Smacallan	sysctl="sysctl -n hw.machine_arch"
1795eefee25Smacallan	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
1805eefee25Smacallan	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
1815eefee25Smacallan	case "${UNAME_MACHINE_ARCH}" in
1825eefee25Smacallan	    armeb) machine=armeb-unknown ;;
1835eefee25Smacallan	    arm*) machine=arm-unknown ;;
1845eefee25Smacallan	    sh3el) machine=shl-unknown ;;
1855eefee25Smacallan	    sh3eb) machine=sh-unknown ;;
18662ab96baSmrg	    sh5el) machine=sh5le-unknown ;;
1875eefee25Smacallan	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
1885eefee25Smacallan	esac
1895eefee25Smacallan	# The Operating System including object format, if it has switched
1905eefee25Smacallan	# to ELF recently, or will in the future.
1915eefee25Smacallan	case "${UNAME_MACHINE_ARCH}" in
1925eefee25Smacallan	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
1935eefee25Smacallan		eval $set_cc_for_build
1945eefee25Smacallan		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
195dc99b369Smrg			| grep -q __ELF__
1965eefee25Smacallan		then
1975eefee25Smacallan		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
1985eefee25Smacallan		    # Return netbsd for either.  FIX?
1995eefee25Smacallan		    os=netbsd
2005eefee25Smacallan		else
2015eefee25Smacallan		    os=netbsdelf
2025eefee25Smacallan		fi
2035eefee25Smacallan		;;
2045eefee25Smacallan	    *)
205dc99b369Smrg		os=netbsd
2065eefee25Smacallan		;;
2075eefee25Smacallan	esac
2085eefee25Smacallan	# The OS release
2095eefee25Smacallan	# Debian GNU/NetBSD machines have a different userland, and
2105eefee25Smacallan	# thus, need a distinct triplet. However, they do not need
2115eefee25Smacallan	# kernel version information, so it can be replaced with a
2125eefee25Smacallan	# suitable tag, in the style of linux-gnu.
2135eefee25Smacallan	case "${UNAME_VERSION}" in
2145eefee25Smacallan	    Debian*)
2155eefee25Smacallan		release='-gnu'
2165eefee25Smacallan		;;
2175eefee25Smacallan	    *)
2185eefee25Smacallan		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
2195eefee25Smacallan		;;
2205eefee25Smacallan	esac
2215eefee25Smacallan	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
2225eefee25Smacallan	# contains redundant information, the shorter form:
2235eefee25Smacallan	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
2245eefee25Smacallan	echo "${machine}-${os}${release}"
22562ab96baSmrg	exit ;;
226dc99b369Smrg    *:Bitrig:*:*)
227dc99b369Smrg	UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
228dc99b369Smrg	echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
229dc99b369Smrg	exit ;;
2305eefee25Smacallan    *:OpenBSD:*:*)
23162ab96baSmrg	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
23262ab96baSmrg	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
23362ab96baSmrg	exit ;;
23462ab96baSmrg    *:ekkoBSD:*:*)
23562ab96baSmrg	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
23662ab96baSmrg	exit ;;
23762ab96baSmrg    *:SolidBSD:*:*)
23862ab96baSmrg	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
23962ab96baSmrg	exit ;;
24062ab96baSmrg    macppc:MirBSD:*:*)
24162ab96baSmrg	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
24262ab96baSmrg	exit ;;
24362ab96baSmrg    *:MirBSD:*:*)
24462ab96baSmrg	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
24562ab96baSmrg	exit ;;
2465eefee25Smacallan    alpha:OSF1:*:*)
24762ab96baSmrg	case $UNAME_RELEASE in
24862ab96baSmrg	*4.0)
2495eefee25Smacallan		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
25062ab96baSmrg		;;
25162ab96baSmrg	*5.*)
252dc99b369Smrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
25362ab96baSmrg		;;
25462ab96baSmrg	esac
2555eefee25Smacallan	# According to Compaq, /usr/sbin/psrinfo has been available on
2565eefee25Smacallan	# OSF/1 and Tru64 systems produced since 1995.  I hope that
2575eefee25Smacallan	# covers most systems running today.  This code pipes the CPU
2585eefee25Smacallan	# types through head -n 1, so we only detect the type of CPU 0.
2595eefee25Smacallan	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
2605eefee25Smacallan	case "$ALPHA_CPU_TYPE" in
2615eefee25Smacallan	    "EV4 (21064)")
2625eefee25Smacallan		UNAME_MACHINE="alpha" ;;
2635eefee25Smacallan	    "EV4.5 (21064)")
2645eefee25Smacallan		UNAME_MACHINE="alpha" ;;
2655eefee25Smacallan	    "LCA4 (21066/21068)")
2665eefee25Smacallan		UNAME_MACHINE="alpha" ;;
2675eefee25Smacallan	    "EV5 (21164)")
2685eefee25Smacallan		UNAME_MACHINE="alphaev5" ;;
2695eefee25Smacallan	    "EV5.6 (21164A)")
2705eefee25Smacallan		UNAME_MACHINE="alphaev56" ;;
2715eefee25Smacallan	    "EV5.6 (21164PC)")
2725eefee25Smacallan		UNAME_MACHINE="alphapca56" ;;
2735eefee25Smacallan	    "EV5.7 (21164PC)")
2745eefee25Smacallan		UNAME_MACHINE="alphapca57" ;;
2755eefee25Smacallan	    "EV6 (21264)")
2765eefee25Smacallan		UNAME_MACHINE="alphaev6" ;;
2775eefee25Smacallan	    "EV6.7 (21264A)")
2785eefee25Smacallan		UNAME_MACHINE="alphaev67" ;;
2795eefee25Smacallan	    "EV6.8CB (21264C)")
2805eefee25Smacallan		UNAME_MACHINE="alphaev68" ;;
2815eefee25Smacallan	    "EV6.8AL (21264B)")
2825eefee25Smacallan		UNAME_MACHINE="alphaev68" ;;
2835eefee25Smacallan	    "EV6.8CX (21264D)")
2845eefee25Smacallan		UNAME_MACHINE="alphaev68" ;;
2855eefee25Smacallan	    "EV6.9A (21264/EV69A)")
2865eefee25Smacallan		UNAME_MACHINE="alphaev69" ;;
2875eefee25Smacallan	    "EV7 (21364)")
2885eefee25Smacallan		UNAME_MACHINE="alphaev7" ;;
2895eefee25Smacallan	    "EV7.9 (21364A)")
2905eefee25Smacallan		UNAME_MACHINE="alphaev79" ;;
2915eefee25Smacallan	esac
29262ab96baSmrg	# A Pn.n version is a patched version.
2935eefee25Smacallan	# A Vn.n version is a released version.
2945eefee25Smacallan	# A Tn.n version is a released field test version.
2955eefee25Smacallan	# A Xn.n version is an unreleased experimental baselevel.
2965eefee25Smacallan	# 1.2 uses "1.2" for uname -r.
29762ab96baSmrg	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
298dc99b369Smrg	# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
299dc99b369Smrg	exitcode=$?
300dc99b369Smrg	trap '' 0
301dc99b369Smrg	exit $exitcode ;;
3025eefee25Smacallan    Alpha\ *:Windows_NT*:*)
3035eefee25Smacallan	# How do we know it's Interix rather than the generic POSIX subsystem?
3045eefee25Smacallan	# Should we change UNAME_MACHINE based on the output of uname instead
3055eefee25Smacallan	# of the specific Alpha model?
3065eefee25Smacallan	echo alpha-pc-interix
30762ab96baSmrg	exit ;;
3085eefee25Smacallan    21064:Windows_NT:50:3)
3095eefee25Smacallan	echo alpha-dec-winnt3.5
31062ab96baSmrg	exit ;;
3115eefee25Smacallan    Amiga*:UNIX_System_V:4.0:*)
3125eefee25Smacallan	echo m68k-unknown-sysv4
31362ab96baSmrg	exit ;;
3145eefee25Smacallan    *:[Aa]miga[Oo][Ss]:*:*)
3155eefee25Smacallan	echo ${UNAME_MACHINE}-unknown-amigaos
31662ab96baSmrg	exit ;;
3175eefee25Smacallan    *:[Mm]orph[Oo][Ss]:*:*)
3185eefee25Smacallan	echo ${UNAME_MACHINE}-unknown-morphos
31962ab96baSmrg	exit ;;
3205eefee25Smacallan    *:OS/390:*:*)
3215eefee25Smacallan	echo i370-ibm-openedition
32262ab96baSmrg	exit ;;
32362ab96baSmrg    *:z/VM:*:*)
32462ab96baSmrg	echo s390-ibm-zvmoe
32562ab96baSmrg	exit ;;
32662ab96baSmrg    *:OS400:*:*)
327dc99b369Smrg	echo powerpc-ibm-os400
32862ab96baSmrg	exit ;;
3295eefee25Smacallan    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
3305eefee25Smacallan	echo arm-acorn-riscix${UNAME_RELEASE}
33162ab96baSmrg	exit ;;
33262ab96baSmrg    arm:riscos:*:*|arm:RISCOS:*:*)
33362ab96baSmrg	echo arm-unknown-riscos
33462ab96baSmrg	exit ;;
3355eefee25Smacallan    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
3365eefee25Smacallan	echo hppa1.1-hitachi-hiuxmpp
33762ab96baSmrg	exit ;;
3385eefee25Smacallan    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
3395eefee25Smacallan	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
3405eefee25Smacallan	if test "`(/bin/universe) 2>/dev/null`" = att ; then
3415eefee25Smacallan		echo pyramid-pyramid-sysv3
3425eefee25Smacallan	else
3435eefee25Smacallan		echo pyramid-pyramid-bsd
3445eefee25Smacallan	fi
34562ab96baSmrg	exit ;;
3465eefee25Smacallan    NILE*:*:*:dcosx)
3475eefee25Smacallan	echo pyramid-pyramid-svr4
34862ab96baSmrg	exit ;;
3495eefee25Smacallan    DRS?6000:unix:4.0:6*)
3505eefee25Smacallan	echo sparc-icl-nx6
35162ab96baSmrg	exit ;;
35262ab96baSmrg    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
3535eefee25Smacallan	case `/usr/bin/uname -p` in
35462ab96baSmrg	    sparc) echo sparc-icl-nx7; exit ;;
3555eefee25Smacallan	esac ;;
356dc99b369Smrg    s390x:SunOS:*:*)
357dc99b369Smrg	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
358dc99b369Smrg	exit ;;
3595eefee25Smacallan    sun4H:SunOS:5.*:*)
3605eefee25Smacallan	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
36162ab96baSmrg	exit ;;
3625eefee25Smacallan    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
3635eefee25Smacallan	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
36462ab96baSmrg	exit ;;
365dc99b369Smrg    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
366dc99b369Smrg	echo i386-pc-auroraux${UNAME_RELEASE}
367dc99b369Smrg	exit ;;
36862ab96baSmrg    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
369dc99b369Smrg	eval $set_cc_for_build
370dc99b369Smrg	SUN_ARCH="i386"
371dc99b369Smrg	# If there is a compiler, see if it is configured for 64-bit objects.
372dc99b369Smrg	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
373dc99b369Smrg	# This test works for both compilers.
374dc99b369Smrg	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
375dc99b369Smrg	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
376dc99b369Smrg		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
377dc99b369Smrg		grep IS_64BIT_ARCH >/dev/null
378dc99b369Smrg	    then
379dc99b369Smrg		SUN_ARCH="x86_64"
380dc99b369Smrg	    fi
381dc99b369Smrg	fi
382dc99b369Smrg	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
38362ab96baSmrg	exit ;;
3845eefee25Smacallan    sun4*:SunOS:6*:*)
3855eefee25Smacallan	# According to config.sub, this is the proper way to canonicalize
3865eefee25Smacallan	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
3875eefee25Smacallan	# it's likely to be more like Solaris than SunOS4.
3885eefee25Smacallan	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
38962ab96baSmrg	exit ;;
3905eefee25Smacallan    sun4*:SunOS:*:*)
3915eefee25Smacallan	case "`/usr/bin/arch -k`" in
3925eefee25Smacallan	    Series*|S4*)
3935eefee25Smacallan		UNAME_RELEASE=`uname -v`
3945eefee25Smacallan		;;
3955eefee25Smacallan	esac
3965eefee25Smacallan	# Japanese Language versions have a version number like `4.1.3-JL'.
3975eefee25Smacallan	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
39862ab96baSmrg	exit ;;
3995eefee25Smacallan    sun3*:SunOS:*:*)
4005eefee25Smacallan	echo m68k-sun-sunos${UNAME_RELEASE}
40162ab96baSmrg	exit ;;
4025eefee25Smacallan    sun*:*:4.2BSD:*)
4035eefee25Smacallan	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
4045eefee25Smacallan	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
4055eefee25Smacallan	case "`/bin/arch`" in
4065eefee25Smacallan	    sun3)
4075eefee25Smacallan		echo m68k-sun-sunos${UNAME_RELEASE}
4085eefee25Smacallan		;;
4095eefee25Smacallan	    sun4)
4105eefee25Smacallan		echo sparc-sun-sunos${UNAME_RELEASE}
4115eefee25Smacallan		;;
4125eefee25Smacallan	esac
41362ab96baSmrg	exit ;;
4145eefee25Smacallan    aushp:SunOS:*:*)
4155eefee25Smacallan	echo sparc-auspex-sunos${UNAME_RELEASE}
41662ab96baSmrg	exit ;;
4175eefee25Smacallan    # The situation for MiNT is a little confusing.  The machine name
4185eefee25Smacallan    # can be virtually everything (everything which is not
4195eefee25Smacallan    # "atarist" or "atariste" at least should have a processor
4205eefee25Smacallan    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
4215eefee25Smacallan    # to the lowercase version "mint" (or "freemint").  Finally
4225eefee25Smacallan    # the system name "TOS" denotes a system which is actually not
4235eefee25Smacallan    # MiNT.  But MiNT is downward compatible to TOS, so this should
4245eefee25Smacallan    # be no problem.
4255eefee25Smacallan    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
426dc99b369Smrg	echo m68k-atari-mint${UNAME_RELEASE}
42762ab96baSmrg	exit ;;
4285eefee25Smacallan    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
4295eefee25Smacallan	echo m68k-atari-mint${UNAME_RELEASE}
430dc99b369Smrg	exit ;;
4315eefee25Smacallan    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
432dc99b369Smrg	echo m68k-atari-mint${UNAME_RELEASE}
43362ab96baSmrg	exit ;;
4345eefee25Smacallan    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
435dc99b369Smrg	echo m68k-milan-mint${UNAME_RELEASE}
436dc99b369Smrg	exit ;;
4375eefee25Smacallan    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
438dc99b369Smrg	echo m68k-hades-mint${UNAME_RELEASE}
439dc99b369Smrg	exit ;;
4405eefee25Smacallan    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
441dc99b369Smrg	echo m68k-unknown-mint${UNAME_RELEASE}
442dc99b369Smrg	exit ;;
44362ab96baSmrg    m68k:machten:*:*)
44462ab96baSmrg	echo m68k-apple-machten${UNAME_RELEASE}
44562ab96baSmrg	exit ;;
4465eefee25Smacallan    powerpc:machten:*:*)
4475eefee25Smacallan	echo powerpc-apple-machten${UNAME_RELEASE}
44862ab96baSmrg	exit ;;
4495eefee25Smacallan    RISC*:Mach:*:*)
4505eefee25Smacallan	echo mips-dec-mach_bsd4.3
45162ab96baSmrg	exit ;;
4525eefee25Smacallan    RISC*:ULTRIX:*:*)
4535eefee25Smacallan	echo mips-dec-ultrix${UNAME_RELEASE}
45462ab96baSmrg	exit ;;
4555eefee25Smacallan    VAX*:ULTRIX*:*:*)
4565eefee25Smacallan	echo vax-dec-ultrix${UNAME_RELEASE}
45762ab96baSmrg	exit ;;
4585eefee25Smacallan    2020:CLIX:*:* | 2430:CLIX:*:*)
4595eefee25Smacallan	echo clipper-intergraph-clix${UNAME_RELEASE}
46062ab96baSmrg	exit ;;
4615eefee25Smacallan    mips:*:*:UMIPS | mips:*:*:RISCos)
4625eefee25Smacallan	eval $set_cc_for_build
4635eefee25Smacallan	sed 's/^	//' << EOF >$dummy.c
4645eefee25Smacallan#ifdef __cplusplus
4655eefee25Smacallan#include <stdio.h>  /* for printf() prototype */
4665eefee25Smacallan	int main (int argc, char *argv[]) {
4675eefee25Smacallan#else
4685eefee25Smacallan	int main (argc, argv) int argc; char *argv[]; {
4695eefee25Smacallan#endif
4705eefee25Smacallan	#if defined (host_mips) && defined (MIPSEB)
4715eefee25Smacallan	#if defined (SYSTYPE_SYSV)
4725eefee25Smacallan	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
4735eefee25Smacallan	#endif
4745eefee25Smacallan	#if defined (SYSTYPE_SVR4)
4755eefee25Smacallan	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
4765eefee25Smacallan	#endif
4775eefee25Smacallan	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
4785eefee25Smacallan	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
4795eefee25Smacallan	#endif
4805eefee25Smacallan	#endif
4815eefee25Smacallan	  exit (-1);
4825eefee25Smacallan	}
4835eefee25SmacallanEOF
48462ab96baSmrg	$CC_FOR_BUILD -o $dummy $dummy.c &&
48562ab96baSmrg	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
48662ab96baSmrg	  SYSTEM_NAME=`$dummy $dummyarg` &&
48762ab96baSmrg	    { echo "$SYSTEM_NAME"; exit; }
4885eefee25Smacallan	echo mips-mips-riscos${UNAME_RELEASE}
48962ab96baSmrg	exit ;;
4905eefee25Smacallan    Motorola:PowerMAX_OS:*:*)
4915eefee25Smacallan	echo powerpc-motorola-powermax
49262ab96baSmrg	exit ;;
4935eefee25Smacallan    Motorola:*:4.3:PL8-*)
4945eefee25Smacallan	echo powerpc-harris-powermax
49562ab96baSmrg	exit ;;
4965eefee25Smacallan    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
4975eefee25Smacallan	echo powerpc-harris-powermax
49862ab96baSmrg	exit ;;
4995eefee25Smacallan    Night_Hawk:Power_UNIX:*:*)
5005eefee25Smacallan	echo powerpc-harris-powerunix
50162ab96baSmrg	exit ;;
5025eefee25Smacallan    m88k:CX/UX:7*:*)
5035eefee25Smacallan	echo m88k-harris-cxux7
50462ab96baSmrg	exit ;;
5055eefee25Smacallan    m88k:*:4*:R4*)
5065eefee25Smacallan	echo m88k-motorola-sysv4
50762ab96baSmrg	exit ;;
5085eefee25Smacallan    m88k:*:3*:R3*)
5095eefee25Smacallan	echo m88k-motorola-sysv3
51062ab96baSmrg	exit ;;
5115eefee25Smacallan    AViiON:dgux:*:*)
512dc99b369Smrg	# DG/UX returns AViiON for all architectures
513dc99b369Smrg	UNAME_PROCESSOR=`/usr/bin/uname -p`
5145eefee25Smacallan	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
5155eefee25Smacallan	then
5165eefee25Smacallan	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
5175eefee25Smacallan	       [ ${TARGET_BINARY_INTERFACE}x = x ]
5185eefee25Smacallan	    then
5195eefee25Smacallan		echo m88k-dg-dgux${UNAME_RELEASE}
5205eefee25Smacallan	    else
5215eefee25Smacallan		echo m88k-dg-dguxbcs${UNAME_RELEASE}
5225eefee25Smacallan	    fi
5235eefee25Smacallan	else
5245eefee25Smacallan	    echo i586-dg-dgux${UNAME_RELEASE}
5255eefee25Smacallan	fi
526dc99b369Smrg	exit ;;
5275eefee25Smacallan    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
5285eefee25Smacallan	echo m88k-dolphin-sysv3
52962ab96baSmrg	exit ;;
5305eefee25Smacallan    M88*:*:R3*:*)
5315eefee25Smacallan	# Delta 88k system running SVR3
5325eefee25Smacallan	echo m88k-motorola-sysv3
53362ab96baSmrg	exit ;;
5345eefee25Smacallan    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
5355eefee25Smacallan	echo m88k-tektronix-sysv3
53662ab96baSmrg	exit ;;
5375eefee25Smacallan    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
5385eefee25Smacallan	echo m68k-tektronix-bsd
53962ab96baSmrg	exit ;;
5405eefee25Smacallan    *:IRIX*:*:*)
5415eefee25Smacallan	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
54262ab96baSmrg	exit ;;
5435eefee25Smacallan    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
54462ab96baSmrg	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
54562ab96baSmrg	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
5465eefee25Smacallan    i*86:AIX:*:*)
5475eefee25Smacallan	echo i386-ibm-aix
54862ab96baSmrg	exit ;;
5495eefee25Smacallan    ia64:AIX:*:*)
5505eefee25Smacallan	if [ -x /usr/bin/oslevel ] ; then
5515eefee25Smacallan		IBM_REV=`/usr/bin/oslevel`
5525eefee25Smacallan	else
5535eefee25Smacallan		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
5545eefee25Smacallan	fi
5555eefee25Smacallan	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
55662ab96baSmrg	exit ;;
5575eefee25Smacallan    *:AIX:2:3)
5585eefee25Smacallan	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
5595eefee25Smacallan		eval $set_cc_for_build
5605eefee25Smacallan		sed 's/^		//' << EOF >$dummy.c
5615eefee25Smacallan		#include <sys/systemcfg.h>
5625eefee25Smacallan
5635eefee25Smacallan		main()
5645eefee25Smacallan			{
5655eefee25Smacallan			if (!__power_pc())
5665eefee25Smacallan				exit(1);
5675eefee25Smacallan			puts("powerpc-ibm-aix3.2.5");
5685eefee25Smacallan			exit(0);
5695eefee25Smacallan			}
5705eefee25SmacallanEOF
57162ab96baSmrg		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
57262ab96baSmrg		then
57362ab96baSmrg			echo "$SYSTEM_NAME"
57462ab96baSmrg		else
57562ab96baSmrg			echo rs6000-ibm-aix3.2.5
57662ab96baSmrg		fi
5775eefee25Smacallan	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
5785eefee25Smacallan		echo rs6000-ibm-aix3.2.4
5795eefee25Smacallan	else
5805eefee25Smacallan		echo rs6000-ibm-aix3.2
5815eefee25Smacallan	fi
58262ab96baSmrg	exit ;;
583dc99b369Smrg    *:AIX:*:[4567])
5845eefee25Smacallan	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
5855eefee25Smacallan	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
5865eefee25Smacallan		IBM_ARCH=rs6000
5875eefee25Smacallan	else
5885eefee25Smacallan		IBM_ARCH=powerpc
5895eefee25Smacallan	fi
5905eefee25Smacallan	if [ -x /usr/bin/oslevel ] ; then
5915eefee25Smacallan		IBM_REV=`/usr/bin/oslevel`
5925eefee25Smacallan	else
5935eefee25Smacallan		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
5945eefee25Smacallan	fi
5955eefee25Smacallan	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
59662ab96baSmrg	exit ;;
5975eefee25Smacallan    *:AIX:*:*)
5985eefee25Smacallan	echo rs6000-ibm-aix
59962ab96baSmrg	exit ;;
6005eefee25Smacallan    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
6015eefee25Smacallan	echo romp-ibm-bsd4.4
60262ab96baSmrg	exit ;;
6035eefee25Smacallan    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
6045eefee25Smacallan	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
60562ab96baSmrg	exit ;;                             # report: romp-ibm BSD 4.3
6065eefee25Smacallan    *:BOSX:*:*)
6075eefee25Smacallan	echo rs6000-bull-bosx
60862ab96baSmrg	exit ;;
6095eefee25Smacallan    DPX/2?00:B.O.S.:*:*)
6105eefee25Smacallan	echo m68k-bull-sysv3
61162ab96baSmrg	exit ;;
6125eefee25Smacallan    9000/[34]??:4.3bsd:1.*:*)
6135eefee25Smacallan	echo m68k-hp-bsd
61462ab96baSmrg	exit ;;
6155eefee25Smacallan    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
6165eefee25Smacallan	echo m68k-hp-bsd4.4
61762ab96baSmrg	exit ;;
6185eefee25Smacallan    9000/[34678]??:HP-UX:*:*)
6195eefee25Smacallan	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
6205eefee25Smacallan	case "${UNAME_MACHINE}" in
6215eefee25Smacallan	    9000/31? )            HP_ARCH=m68000 ;;
6225eefee25Smacallan	    9000/[34]?? )         HP_ARCH=m68k ;;
6235eefee25Smacallan	    9000/[678][0-9][0-9])
6245eefee25Smacallan		if [ -x /usr/bin/getconf ]; then
6255eefee25Smacallan		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
626dc99b369Smrg		    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
627dc99b369Smrg		    case "${sc_cpu_version}" in
628dc99b369Smrg		      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
629dc99b369Smrg		      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
630dc99b369Smrg		      532)                      # CPU_PA_RISC2_0
631dc99b369Smrg			case "${sc_kernel_bits}" in
632dc99b369Smrg			  32) HP_ARCH="hppa2.0n" ;;
633dc99b369Smrg			  64) HP_ARCH="hppa2.0w" ;;
6345eefee25Smacallan			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
635dc99b369Smrg			esac ;;
636dc99b369Smrg		    esac
6375eefee25Smacallan		fi
6385eefee25Smacallan		if [ "${HP_ARCH}" = "" ]; then
6395eefee25Smacallan		    eval $set_cc_for_build
640dc99b369Smrg		    sed 's/^		//' << EOF >$dummy.c
6415eefee25Smacallan
642dc99b369Smrg		#define _HPUX_SOURCE
643dc99b369Smrg		#include <stdlib.h>
644dc99b369Smrg		#include <unistd.h>
6455eefee25Smacallan
646dc99b369Smrg		int main ()
647dc99b369Smrg		{
648dc99b369Smrg		#if defined(_SC_KERNEL_BITS)
649dc99b369Smrg		    long bits = sysconf(_SC_KERNEL_BITS);
650dc99b369Smrg		#endif
651dc99b369Smrg		    long cpu  = sysconf (_SC_CPU_VERSION);
6525eefee25Smacallan
653dc99b369Smrg		    switch (cpu)
654dc99b369Smrg			{
655dc99b369Smrg			case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
656dc99b369Smrg			case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
657dc99b369Smrg			case CPU_PA_RISC2_0:
658dc99b369Smrg		#if defined(_SC_KERNEL_BITS)
659dc99b369Smrg			    switch (bits)
660dc99b369Smrg				{
661dc99b369Smrg				case 64: puts ("hppa2.0w"); break;
662dc99b369Smrg				case 32: puts ("hppa2.0n"); break;
663dc99b369Smrg				default: puts ("hppa2.0"); break;
664dc99b369Smrg				} break;
665dc99b369Smrg		#else  /* !defined(_SC_KERNEL_BITS) */
666dc99b369Smrg			    puts ("hppa2.0"); break;
667dc99b369Smrg		#endif
668dc99b369Smrg			default: puts ("hppa1.0"); break;
669dc99b369Smrg			}
670dc99b369Smrg		    exit (0);
671dc99b369Smrg		}
6725eefee25SmacallanEOF
6735eefee25Smacallan		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
6745eefee25Smacallan		    test -z "$HP_ARCH" && HP_ARCH=hppa
6755eefee25Smacallan		fi ;;
6765eefee25Smacallan	esac
6775eefee25Smacallan	if [ ${HP_ARCH} = "hppa2.0w" ]
6785eefee25Smacallan	then
67962ab96baSmrg	    eval $set_cc_for_build
68062ab96baSmrg
68162ab96baSmrg	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
68262ab96baSmrg	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
68362ab96baSmrg	    # generating 64-bit code.  GNU and HP use different nomenclature:
68462ab96baSmrg	    #
68562ab96baSmrg	    # $ CC_FOR_BUILD=cc ./config.guess
68662ab96baSmrg	    # => hppa2.0w-hp-hpux11.23
68762ab96baSmrg	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
68862ab96baSmrg	    # => hppa64-hp-hpux11.23
68962ab96baSmrg
69062ab96baSmrg	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
691dc99b369Smrg		grep -q __LP64__
6925eefee25Smacallan	    then
6935eefee25Smacallan		HP_ARCH="hppa2.0w"
6945eefee25Smacallan	    else
6955eefee25Smacallan		HP_ARCH="hppa64"
6965eefee25Smacallan	    fi
6975eefee25Smacallan	fi
6985eefee25Smacallan	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
69962ab96baSmrg	exit ;;
7005eefee25Smacallan    ia64:HP-UX:*:*)
7015eefee25Smacallan	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
7025eefee25Smacallan	echo ia64-hp-hpux${HPUX_REV}
70362ab96baSmrg	exit ;;
7045eefee25Smacallan    3050*:HI-UX:*:*)
7055eefee25Smacallan	eval $set_cc_for_build
7065eefee25Smacallan	sed 's/^	//' << EOF >$dummy.c
7075eefee25Smacallan	#include <unistd.h>
7085eefee25Smacallan	int
7095eefee25Smacallan	main ()
7105eefee25Smacallan	{
7115eefee25Smacallan	  long cpu = sysconf (_SC_CPU_VERSION);
7125eefee25Smacallan	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
7135eefee25Smacallan	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
7145eefee25Smacallan	     results, however.  */
7155eefee25Smacallan	  if (CPU_IS_PA_RISC (cpu))
7165eefee25Smacallan	    {
7175eefee25Smacallan	      switch (cpu)
7185eefee25Smacallan		{
7195eefee25Smacallan		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
7205eefee25Smacallan		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
7215eefee25Smacallan		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
7225eefee25Smacallan		  default: puts ("hppa-hitachi-hiuxwe2"); break;
7235eefee25Smacallan		}
7245eefee25Smacallan	    }
7255eefee25Smacallan	  else if (CPU_IS_HP_MC68K (cpu))
7265eefee25Smacallan	    puts ("m68k-hitachi-hiuxwe2");
7275eefee25Smacallan	  else puts ("unknown-hitachi-hiuxwe2");
7285eefee25Smacallan	  exit (0);
7295eefee25Smacallan	}
7305eefee25SmacallanEOF
73162ab96baSmrg	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
73262ab96baSmrg		{ echo "$SYSTEM_NAME"; exit; }
7335eefee25Smacallan	echo unknown-hitachi-hiuxwe2
73462ab96baSmrg	exit ;;
7355eefee25Smacallan    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
7365eefee25Smacallan	echo hppa1.1-hp-bsd
73762ab96baSmrg	exit ;;
7385eefee25Smacallan    9000/8??:4.3bsd:*:*)
7395eefee25Smacallan	echo hppa1.0-hp-bsd
74062ab96baSmrg	exit ;;
7415eefee25Smacallan    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
7425eefee25Smacallan	echo hppa1.0-hp-mpeix
74362ab96baSmrg	exit ;;
7445eefee25Smacallan    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
7455eefee25Smacallan	echo hppa1.1-hp-osf
74662ab96baSmrg	exit ;;
7475eefee25Smacallan    hp8??:OSF1:*:*)
7485eefee25Smacallan	echo hppa1.0-hp-osf
74962ab96baSmrg	exit ;;
7505eefee25Smacallan    i*86:OSF1:*:*)
7515eefee25Smacallan	if [ -x /usr/sbin/sysversion ] ; then
7525eefee25Smacallan	    echo ${UNAME_MACHINE}-unknown-osf1mk
7535eefee25Smacallan	else
7545eefee25Smacallan	    echo ${UNAME_MACHINE}-unknown-osf1
7555eefee25Smacallan	fi
75662ab96baSmrg	exit ;;
7575eefee25Smacallan    parisc*:Lites*:*:*)
7585eefee25Smacallan	echo hppa1.1-hp-lites
75962ab96baSmrg	exit ;;
7605eefee25Smacallan    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
7615eefee25Smacallan	echo c1-convex-bsd
762dc99b369Smrg	exit ;;
7635eefee25Smacallan    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
7645eefee25Smacallan	if getsysinfo -f scalar_acc
7655eefee25Smacallan	then echo c32-convex-bsd
7665eefee25Smacallan	else echo c2-convex-bsd
7675eefee25Smacallan	fi
768dc99b369Smrg	exit ;;
7695eefee25Smacallan    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
7705eefee25Smacallan	echo c34-convex-bsd
771dc99b369Smrg	exit ;;
7725eefee25Smacallan    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
7735eefee25Smacallan	echo c38-convex-bsd
774dc99b369Smrg	exit ;;
7755eefee25Smacallan    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
7765eefee25Smacallan	echo c4-convex-bsd
777dc99b369Smrg	exit ;;
7785eefee25Smacallan    CRAY*Y-MP:*:*:*)
7795eefee25Smacallan	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
78062ab96baSmrg	exit ;;
7815eefee25Smacallan    CRAY*[A-Z]90:*:*:*)
7825eefee25Smacallan	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
7835eefee25Smacallan	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
7845eefee25Smacallan	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
7855eefee25Smacallan	      -e 's/\.[^.]*$/.X/'
78662ab96baSmrg	exit ;;
7875eefee25Smacallan    CRAY*TS:*:*:*)
7885eefee25Smacallan	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
78962ab96baSmrg	exit ;;
7905eefee25Smacallan    CRAY*T3E:*:*:*)
7915eefee25Smacallan	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
79262ab96baSmrg	exit ;;
7935eefee25Smacallan    CRAY*SV1:*:*:*)
7945eefee25Smacallan	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
79562ab96baSmrg	exit ;;
7965eefee25Smacallan    *:UNICOS/mp:*:*)
79762ab96baSmrg	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
79862ab96baSmrg	exit ;;
7995eefee25Smacallan    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
8005eefee25Smacallan	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
801dc99b369Smrg	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
802dc99b369Smrg	FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
803dc99b369Smrg	echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
804dc99b369Smrg	exit ;;
80562ab96baSmrg    5000:UNIX_System_V:4.*:*)
806dc99b369Smrg	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
807dc99b369Smrg	FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
808dc99b369Smrg	echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
80962ab96baSmrg	exit ;;
8105eefee25Smacallan    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
8115eefee25Smacallan	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
81262ab96baSmrg	exit ;;
8135eefee25Smacallan    sparc*:BSD/OS:*:*)
8145eefee25Smacallan	echo sparc-unknown-bsdi${UNAME_RELEASE}
81562ab96baSmrg	exit ;;
8165eefee25Smacallan    *:BSD/OS:*:*)
8175eefee25Smacallan	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
81862ab96baSmrg	exit ;;
81962ab96baSmrg    *:FreeBSD:*:*)
820dc99b369Smrg	UNAME_PROCESSOR=`/usr/bin/uname -p`
821dc99b369Smrg	case ${UNAME_PROCESSOR} in
82262ab96baSmrg	    amd64)
82362ab96baSmrg		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
82462ab96baSmrg	    *)
825dc99b369Smrg		echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
82662ab96baSmrg	esac
82762ab96baSmrg	exit ;;
8285eefee25Smacallan    i*:CYGWIN*:*)
8295eefee25Smacallan	echo ${UNAME_MACHINE}-pc-cygwin
83062ab96baSmrg	exit ;;
831dc99b369Smrg    *:MINGW64*:*)
832dc99b369Smrg	echo ${UNAME_MACHINE}-pc-mingw64
833dc99b369Smrg	exit ;;
83462ab96baSmrg    *:MINGW*:*)
8355eefee25Smacallan	echo ${UNAME_MACHINE}-pc-mingw32
83662ab96baSmrg	exit ;;
837dc99b369Smrg    i*:MSYS*:*)
838dc99b369Smrg	echo ${UNAME_MACHINE}-pc-msys
839dc99b369Smrg	exit ;;
84062ab96baSmrg    i*:windows32*:*)
841dc99b369Smrg	# uname -m includes "-pc" on this system.
842dc99b369Smrg	echo ${UNAME_MACHINE}-mingw32
84362ab96baSmrg	exit ;;
8445eefee25Smacallan    i*:PW*:*)
8455eefee25Smacallan	echo ${UNAME_MACHINE}-pc-pw32
84662ab96baSmrg	exit ;;
847dc99b369Smrg    *:Interix*:*)
848dc99b369Smrg	case ${UNAME_MACHINE} in
84962ab96baSmrg	    x86)
85062ab96baSmrg		echo i586-pc-interix${UNAME_RELEASE}
85162ab96baSmrg		exit ;;
852dc99b369Smrg	    authenticamd | genuineintel | EM64T)
85362ab96baSmrg		echo x86_64-unknown-interix${UNAME_RELEASE}
85462ab96baSmrg		exit ;;
85562ab96baSmrg	    IA64)
85662ab96baSmrg		echo ia64-unknown-interix${UNAME_RELEASE}
85762ab96baSmrg		exit ;;
85862ab96baSmrg	esac ;;
8595eefee25Smacallan    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
8605eefee25Smacallan	echo i${UNAME_MACHINE}-pc-mks
86162ab96baSmrg	exit ;;
862dc99b369Smrg    8664:Windows_NT:*)
863dc99b369Smrg	echo x86_64-pc-mks
864dc99b369Smrg	exit ;;
8655eefee25Smacallan    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
8665eefee25Smacallan	# How do we know it's Interix rather than the generic POSIX subsystem?
8675eefee25Smacallan	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
8685eefee25Smacallan	# UNAME_MACHINE based on the output of uname instead of i386?
8695eefee25Smacallan	echo i586-pc-interix
87062ab96baSmrg	exit ;;
8715eefee25Smacallan    i*:UWIN*:*)
8725eefee25Smacallan	echo ${UNAME_MACHINE}-pc-uwin
87362ab96baSmrg	exit ;;
87462ab96baSmrg    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
87562ab96baSmrg	echo x86_64-unknown-cygwin
87662ab96baSmrg	exit ;;
8775eefee25Smacallan    p*:CYGWIN*:*)
8785eefee25Smacallan	echo powerpcle-unknown-cygwin
87962ab96baSmrg	exit ;;
8805eefee25Smacallan    prep*:SunOS:5.*:*)
8815eefee25Smacallan	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
88262ab96baSmrg	exit ;;
8835eefee25Smacallan    *:GNU:*:*)
88462ab96baSmrg	# the GNU system
885dc99b369Smrg	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
88662ab96baSmrg	exit ;;
88762ab96baSmrg    *:GNU/*:*:*)
88862ab96baSmrg	# other systems with GNU libc and userland
889dc99b369Smrg	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
89062ab96baSmrg	exit ;;
8915eefee25Smacallan    i*86:Minix:*:*)
8925eefee25Smacallan	echo ${UNAME_MACHINE}-pc-minix
89362ab96baSmrg	exit ;;
894dc99b369Smrg    aarch64:Linux:*:*)
895dc99b369Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
896dc99b369Smrg	exit ;;
897dc99b369Smrg    aarch64_be:Linux:*:*)
898dc99b369Smrg	UNAME_MACHINE=aarch64_be
899dc99b369Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
900dc99b369Smrg	exit ;;
901dc99b369Smrg    alpha:Linux:*:*)
902dc99b369Smrg	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
903dc99b369Smrg	  EV5)   UNAME_MACHINE=alphaev5 ;;
904dc99b369Smrg	  EV56)  UNAME_MACHINE=alphaev56 ;;
905dc99b369Smrg	  PCA56) UNAME_MACHINE=alphapca56 ;;
906dc99b369Smrg	  PCA57) UNAME_MACHINE=alphapca56 ;;
907dc99b369Smrg	  EV6)   UNAME_MACHINE=alphaev6 ;;
908dc99b369Smrg	  EV67)  UNAME_MACHINE=alphaev67 ;;
909dc99b369Smrg	  EV68*) UNAME_MACHINE=alphaev68 ;;
910dc99b369Smrg	esac
911dc99b369Smrg	objdump --private-headers /bin/sh | grep -q ld.so.1
912dc99b369Smrg	if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
913dc99b369Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
914dc99b369Smrg	exit ;;
9155eefee25Smacallan    arm*:Linux:*:*)
91662ab96baSmrg	eval $set_cc_for_build
91762ab96baSmrg	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
91862ab96baSmrg	    | grep -q __ARM_EABI__
91962ab96baSmrg	then
920dc99b369Smrg	    echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
92162ab96baSmrg	else
922dc99b369Smrg	    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
923dc99b369Smrg		| grep -q __ARM_PCS_VFP
924dc99b369Smrg	    then
925dc99b369Smrg		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
926dc99b369Smrg	    else
927dc99b369Smrg		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
928dc99b369Smrg	    fi
92962ab96baSmrg	fi
93062ab96baSmrg	exit ;;
93162ab96baSmrg    avr32*:Linux:*:*)
932dc99b369Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
93362ab96baSmrg	exit ;;
9345eefee25Smacallan    cris:Linux:*:*)
935dc99b369Smrg	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
93662ab96baSmrg	exit ;;
93762ab96baSmrg    crisv32:Linux:*:*)
938dc99b369Smrg	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
93962ab96baSmrg	exit ;;
94062ab96baSmrg    frv:Linux:*:*)
941dc99b369Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
942dc99b369Smrg	exit ;;
943dc99b369Smrg    hexagon:Linux:*:*)
944dc99b369Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
945dc99b369Smrg	exit ;;
946dc99b369Smrg    i*86:Linux:*:*)
947dc99b369Smrg	echo ${UNAME_MACHINE}-pc-linux-${LIBC}
94862ab96baSmrg	exit ;;
9495eefee25Smacallan    ia64:Linux:*:*)
950dc99b369Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
95162ab96baSmrg	exit ;;
95262ab96baSmrg    m32r*:Linux:*:*)
953dc99b369Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
95462ab96baSmrg	exit ;;
9555eefee25Smacallan    m68*:Linux:*:*)
956dc99b369Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
95762ab96baSmrg	exit ;;
958dc99b369Smrg    mips:Linux:*:* | mips64:Linux:*:*)
9595eefee25Smacallan	eval $set_cc_for_build
9605eefee25Smacallan	sed 's/^	//' << EOF >$dummy.c
9615eefee25Smacallan	#undef CPU
962dc99b369Smrg	#undef ${UNAME_MACHINE}
963dc99b369Smrg	#undef ${UNAME_MACHINE}el
9645eefee25Smacallan	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
965dc99b369Smrg	CPU=${UNAME_MACHINE}el
9665eefee25Smacallan	#else
9675eefee25Smacallan	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
968dc99b369Smrg	CPU=${UNAME_MACHINE}
9695eefee25Smacallan	#else
9705eefee25Smacallan	CPU=
9715eefee25Smacallan	#endif
9725eefee25Smacallan	#endif
9735eefee25SmacallanEOF
974dc99b369Smrg	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
975dc99b369Smrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
9765eefee25Smacallan	;;
97762ab96baSmrg    or32:Linux:*:*)
978dc99b369Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
97962ab96baSmrg	exit ;;
980dc99b369Smrg    padre:Linux:*:*)
981dc99b369Smrg	echo sparc-unknown-linux-${LIBC}
98262ab96baSmrg	exit ;;
983dc99b369Smrg    parisc64:Linux:*:* | hppa64:Linux:*:*)
984dc99b369Smrg	echo hppa64-unknown-linux-${LIBC}
98562ab96baSmrg	exit ;;
9865eefee25Smacallan    parisc:Linux:*:* | hppa:Linux:*:*)
9875eefee25Smacallan	# Look for CPU level
9885eefee25Smacallan	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
989dc99b369Smrg	  PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
990dc99b369Smrg	  PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
991dc99b369Smrg	  *)    echo hppa-unknown-linux-${LIBC} ;;
9925eefee25Smacallan	esac
99362ab96baSmrg	exit ;;
994dc99b369Smrg    ppc64:Linux:*:*)
995dc99b369Smrg	echo powerpc64-unknown-linux-${LIBC}
996dc99b369Smrg	exit ;;
997dc99b369Smrg    ppc:Linux:*:*)
998dc99b369Smrg	echo powerpc-unknown-linux-${LIBC}
99962ab96baSmrg	exit ;;
10005eefee25Smacallan    s390:Linux:*:* | s390x:Linux:*:*)
100162ab96baSmrg	echo ${UNAME_MACHINE}-ibm-linux
100262ab96baSmrg	exit ;;
10035eefee25Smacallan    sh64*:Linux:*:*)
1004dc99b369Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
100562ab96baSmrg	exit ;;
10065eefee25Smacallan    sh*:Linux:*:*)
1007dc99b369Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
100862ab96baSmrg	exit ;;
10095eefee25Smacallan    sparc:Linux:*:* | sparc64:Linux:*:*)
1010dc99b369Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1011dc99b369Smrg	exit ;;
1012dc99b369Smrg    tile*:Linux:*:*)
1013dc99b369Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
101462ab96baSmrg	exit ;;
101562ab96baSmrg    vax:Linux:*:*)
1016dc99b369Smrg	echo ${UNAME_MACHINE}-dec-linux-${LIBC}
101762ab96baSmrg	exit ;;
10185eefee25Smacallan    x86_64:Linux:*:*)
1019dc99b369Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
102062ab96baSmrg	exit ;;
102162ab96baSmrg    xtensa*:Linux:*:*)
1022dc99b369Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
102362ab96baSmrg	exit ;;
10245eefee25Smacallan    i*86:DYNIX/ptx:4*:*)
10255eefee25Smacallan	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
10265eefee25Smacallan	# earlier versions are messed up and put the nodename in both
10275eefee25Smacallan	# sysname and nodename.
10285eefee25Smacallan	echo i386-sequent-sysv4
102962ab96baSmrg	exit ;;
10305eefee25Smacallan    i*86:UNIX_SV:4.2MP:2.*)
1031dc99b369Smrg	# Unixware is an offshoot of SVR4, but it has its own version
1032dc99b369Smrg	# number series starting with 2...
1033dc99b369Smrg	# I am not positive that other SVR4 systems won't match this,
10345eefee25Smacallan	# I just have to hope.  -- rms.
1035dc99b369Smrg	# Use sysv4.2uw... so that sysv4* matches it.
10365eefee25Smacallan	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
103762ab96baSmrg	exit ;;
10385eefee25Smacallan    i*86:OS/2:*:*)
10395eefee25Smacallan	# If we were able to find `uname', then EMX Unix compatibility
10405eefee25Smacallan	# is probably installed.
10415eefee25Smacallan	echo ${UNAME_MACHINE}-pc-os2-emx
104262ab96baSmrg	exit ;;
10435eefee25Smacallan    i*86:XTS-300:*:STOP)
10445eefee25Smacallan	echo ${UNAME_MACHINE}-unknown-stop
104562ab96baSmrg	exit ;;
10465eefee25Smacallan    i*86:atheos:*:*)
10475eefee25Smacallan	echo ${UNAME_MACHINE}-unknown-atheos
104862ab96baSmrg	exit ;;
104962ab96baSmrg    i*86:syllable:*:*)
105062ab96baSmrg	echo ${UNAME_MACHINE}-pc-syllable
105162ab96baSmrg	exit ;;
1052dc99b369Smrg    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
10535eefee25Smacallan	echo i386-unknown-lynxos${UNAME_RELEASE}
105462ab96baSmrg	exit ;;
10555eefee25Smacallan    i*86:*DOS:*:*)
10565eefee25Smacallan	echo ${UNAME_MACHINE}-pc-msdosdjgpp
105762ab96baSmrg	exit ;;
10585eefee25Smacallan    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
10595eefee25Smacallan	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
10605eefee25Smacallan	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
10615eefee25Smacallan		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
10625eefee25Smacallan	else
10635eefee25Smacallan		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
10645eefee25Smacallan	fi
106562ab96baSmrg	exit ;;
106662ab96baSmrg    i*86:*:5:[678]*)
1067dc99b369Smrg	# UnixWare 7.x, OpenUNIX and OpenServer 6.
10685eefee25Smacallan	case `/bin/uname -X | grep "^Machine"` in
10695eefee25Smacallan	    *486*)	     UNAME_MACHINE=i486 ;;
10705eefee25Smacallan	    *Pentium)	     UNAME_MACHINE=i586 ;;
10715eefee25Smacallan	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
10725eefee25Smacallan	esac
10735eefee25Smacallan	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
107462ab96baSmrg	exit ;;
10755eefee25Smacallan    i*86:*:3.2:*)
10765eefee25Smacallan	if test -f /usr/options/cb.name; then
10775eefee25Smacallan		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
10785eefee25Smacallan		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
10795eefee25Smacallan	elif /bin/uname -X 2>/dev/null >/dev/null ; then
10805eefee25Smacallan		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
10815eefee25Smacallan		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
10825eefee25Smacallan		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
10835eefee25Smacallan			&& UNAME_MACHINE=i586
10845eefee25Smacallan		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
10855eefee25Smacallan			&& UNAME_MACHINE=i686
10865eefee25Smacallan		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
10875eefee25Smacallan			&& UNAME_MACHINE=i686
10885eefee25Smacallan		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
10895eefee25Smacallan	else
10905eefee25Smacallan		echo ${UNAME_MACHINE}-pc-sysv32
10915eefee25Smacallan	fi
109262ab96baSmrg	exit ;;
10935eefee25Smacallan    pc:*:*:*)
10945eefee25Smacallan	# Left here for compatibility:
1095dc99b369Smrg	# uname -m prints for DJGPP always 'pc', but it prints nothing about
1096dc99b369Smrg	# the processor, so we play safe by assuming i586.
1097dc99b369Smrg	# Note: whatever this is, it MUST be the same as what config.sub
1098dc99b369Smrg	# prints for the "djgpp" host, or else GDB configury will decide that
1099dc99b369Smrg	# this is a cross-build.
1100dc99b369Smrg	echo i586-pc-msdosdjgpp
1101dc99b369Smrg	exit ;;
11025eefee25Smacallan    Intel:Mach:3*:*)
11035eefee25Smacallan	echo i386-pc-mach3
110462ab96baSmrg	exit ;;
11055eefee25Smacallan    paragon:*:*:*)
11065eefee25Smacallan	echo i860-intel-osf1
110762ab96baSmrg	exit ;;
11085eefee25Smacallan    i860:*:4.*:*) # i860-SVR4
11095eefee25Smacallan	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
11105eefee25Smacallan	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
11115eefee25Smacallan	else # Add other i860-SVR4 vendors below as they are discovered.
11125eefee25Smacallan	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
11135eefee25Smacallan	fi
111462ab96baSmrg	exit ;;
11155eefee25Smacallan    mini*:CTIX:SYS*5:*)
11165eefee25Smacallan	# "miniframe"
11175eefee25Smacallan	echo m68010-convergent-sysv
111862ab96baSmrg	exit ;;
11195eefee25Smacallan    mc68k:UNIX:SYSTEM5:3.51m)
11205eefee25Smacallan	echo m68k-convergent-sysv
112162ab96baSmrg	exit ;;
11225eefee25Smacallan    M680?0:D-NIX:5.3:*)
11235eefee25Smacallan	echo m68k-diab-dnix
112462ab96baSmrg	exit ;;
112562ab96baSmrg    M68*:*:R3V[5678]*:*)
112662ab96baSmrg	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
112762ab96baSmrg    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)
11285eefee25Smacallan	OS_REL=''
11295eefee25Smacallan	test -r /etc/.relid \
11305eefee25Smacallan	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
11315eefee25Smacallan	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
113262ab96baSmrg	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
11335eefee25Smacallan	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
113462ab96baSmrg	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
11355eefee25Smacallan    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1136dc99b369Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1137dc99b369Smrg	  && { echo i486-ncr-sysv4; exit; } ;;
1138dc99b369Smrg    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
1139dc99b369Smrg	OS_REL='.3'
1140dc99b369Smrg	test -r /etc/.relid \
1141dc99b369Smrg	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1142dc99b369Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1143dc99b369Smrg	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1144dc99b369Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1145dc99b369Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
1146dc99b369Smrg	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
1147dc99b369Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
11485eefee25Smacallan    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
11495eefee25Smacallan	echo m68k-unknown-lynxos${UNAME_RELEASE}
115062ab96baSmrg	exit ;;
11515eefee25Smacallan    mc68030:UNIX_System_V:4.*:*)
11525eefee25Smacallan	echo m68k-atari-sysv4
115362ab96baSmrg	exit ;;
11545eefee25Smacallan    TSUNAMI:LynxOS:2.*:*)
11555eefee25Smacallan	echo sparc-unknown-lynxos${UNAME_RELEASE}
115662ab96baSmrg	exit ;;
11575eefee25Smacallan    rs6000:LynxOS:2.*:*)
11585eefee25Smacallan	echo rs6000-unknown-lynxos${UNAME_RELEASE}
115962ab96baSmrg	exit ;;
1160dc99b369Smrg    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
11615eefee25Smacallan	echo powerpc-unknown-lynxos${UNAME_RELEASE}
116262ab96baSmrg	exit ;;
11635eefee25Smacallan    SM[BE]S:UNIX_SV:*:*)
11645eefee25Smacallan	echo mips-dde-sysv${UNAME_RELEASE}
116562ab96baSmrg	exit ;;
11665eefee25Smacallan    RM*:ReliantUNIX-*:*:*)
11675eefee25Smacallan	echo mips-sni-sysv4
116862ab96baSmrg	exit ;;
11695eefee25Smacallan    RM*:SINIX-*:*:*)
11705eefee25Smacallan	echo mips-sni-sysv4
117162ab96baSmrg	exit ;;
11725eefee25Smacallan    *:SINIX-*:*:*)
11735eefee25Smacallan	if uname -p 2>/dev/null >/dev/null ; then
11745eefee25Smacallan		UNAME_MACHINE=`(uname -p) 2>/dev/null`
11755eefee25Smacallan		echo ${UNAME_MACHINE}-sni-sysv4
11765eefee25Smacallan	else
11775eefee25Smacallan		echo ns32k-sni-sysv
11785eefee25Smacallan	fi
117962ab96baSmrg	exit ;;
1180dc99b369Smrg    PENTIUM:*:4.0*:*)	# Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1181dc99b369Smrg			# says <Richard.M.Bartel@ccMail.Census.GOV>
1182dc99b369Smrg	echo i586-unisys-sysv4
1183dc99b369Smrg	exit ;;
11845eefee25Smacallan    *:UNIX_System_V:4*:FTX*)
11855eefee25Smacallan	# From Gerald Hewes <hewes@openmarket.com>.
11865eefee25Smacallan	# How about differentiating between stratus architectures? -djm
11875eefee25Smacallan	echo hppa1.1-stratus-sysv4
118862ab96baSmrg	exit ;;
11895eefee25Smacallan    *:*:*:FTX*)
11905eefee25Smacallan	# From seanf@swdc.stratus.com.
11915eefee25Smacallan	echo i860-stratus-sysv4
119262ab96baSmrg	exit ;;
119362ab96baSmrg    i*86:VOS:*:*)
119462ab96baSmrg	# From Paul.Green@stratus.com.
119562ab96baSmrg	echo ${UNAME_MACHINE}-stratus-vos
119662ab96baSmrg	exit ;;
11975eefee25Smacallan    *:VOS:*:*)
11985eefee25Smacallan	# From Paul.Green@stratus.com.
11995eefee25Smacallan	echo hppa1.1-stratus-vos
120062ab96baSmrg	exit ;;
12015eefee25Smacallan    mc68*:A/UX:*:*)
12025eefee25Smacallan	echo m68k-apple-aux${UNAME_RELEASE}
120362ab96baSmrg	exit ;;
12045eefee25Smacallan    news*:NEWS-OS:6*:*)
12055eefee25Smacallan	echo mips-sony-newsos6
120662ab96baSmrg	exit ;;
12075eefee25Smacallan    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
12085eefee25Smacallan	if [ -d /usr/nec ]; then
1209dc99b369Smrg		echo mips-nec-sysv${UNAME_RELEASE}
12105eefee25Smacallan	else
1211dc99b369Smrg		echo mips-unknown-sysv${UNAME_RELEASE}
12125eefee25Smacallan	fi
1213dc99b369Smrg	exit ;;
12145eefee25Smacallan    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
12155eefee25Smacallan	echo powerpc-be-beos
121662ab96baSmrg	exit ;;
12175eefee25Smacallan    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
12185eefee25Smacallan	echo powerpc-apple-beos
121962ab96baSmrg	exit ;;
12205eefee25Smacallan    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
12215eefee25Smacallan	echo i586-pc-beos
122262ab96baSmrg	exit ;;
1223dc99b369Smrg    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
1224dc99b369Smrg	echo i586-pc-haiku
1225dc99b369Smrg	exit ;;
1226dc99b369Smrg    x86_64:Haiku:*:*)
1227dc99b369Smrg	echo x86_64-unknown-haiku
1228dc99b369Smrg	exit ;;
12295eefee25Smacallan    SX-4:SUPER-UX:*:*)
12305eefee25Smacallan	echo sx4-nec-superux${UNAME_RELEASE}
123162ab96baSmrg	exit ;;
12325eefee25Smacallan    SX-5:SUPER-UX:*:*)
12335eefee25Smacallan	echo sx5-nec-superux${UNAME_RELEASE}
123462ab96baSmrg	exit ;;
12355eefee25Smacallan    SX-6:SUPER-UX:*:*)
12365eefee25Smacallan	echo sx6-nec-superux${UNAME_RELEASE}
123762ab96baSmrg	exit ;;
123862ab96baSmrg    SX-7:SUPER-UX:*:*)
123962ab96baSmrg	echo sx7-nec-superux${UNAME_RELEASE}
124062ab96baSmrg	exit ;;
124162ab96baSmrg    SX-8:SUPER-UX:*:*)
124262ab96baSmrg	echo sx8-nec-superux${UNAME_RELEASE}
124362ab96baSmrg	exit ;;
124462ab96baSmrg    SX-8R:SUPER-UX:*:*)
124562ab96baSmrg	echo sx8r-nec-superux${UNAME_RELEASE}
124662ab96baSmrg	exit ;;
12475eefee25Smacallan    Power*:Rhapsody:*:*)
12485eefee25Smacallan	echo powerpc-apple-rhapsody${UNAME_RELEASE}
124962ab96baSmrg	exit ;;
12505eefee25Smacallan    *:Rhapsody:*:*)
12515eefee25Smacallan	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
125262ab96baSmrg	exit ;;
12535eefee25Smacallan    *:Darwin:*:*)
125462ab96baSmrg	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
125562ab96baSmrg	case $UNAME_PROCESSOR in
1256dc99b369Smrg	    i386)
1257dc99b369Smrg		eval $set_cc_for_build
1258dc99b369Smrg		if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
1259dc99b369Smrg		  if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
1260dc99b369Smrg		      (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
1261dc99b369Smrg		      grep IS_64BIT_ARCH >/dev/null
1262dc99b369Smrg		  then
1263dc99b369Smrg		      UNAME_PROCESSOR="x86_64"
1264dc99b369Smrg		  fi
1265dc99b369Smrg		fi ;;
126662ab96baSmrg	    unknown) UNAME_PROCESSOR=powerpc ;;
12675eefee25Smacallan	esac
12685eefee25Smacallan	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
126962ab96baSmrg	exit ;;
12705eefee25Smacallan    *:procnto*:*:* | *:QNX:[0123456789]*:*)
12715eefee25Smacallan	UNAME_PROCESSOR=`uname -p`
12725eefee25Smacallan	if test "$UNAME_PROCESSOR" = "x86"; then
12735eefee25Smacallan		UNAME_PROCESSOR=i386
12745eefee25Smacallan		UNAME_MACHINE=pc
12755eefee25Smacallan	fi
12765eefee25Smacallan	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
127762ab96baSmrg	exit ;;
12785eefee25Smacallan    *:QNX:*:4*)
12795eefee25Smacallan	echo i386-pc-qnx
128062ab96baSmrg	exit ;;
1281dc99b369Smrg    NEO-?:NONSTOP_KERNEL:*:*)
1282dc99b369Smrg	echo neo-tandem-nsk${UNAME_RELEASE}
1283dc99b369Smrg	exit ;;
1284dc99b369Smrg    NSE-*:NONSTOP_KERNEL:*:*)
128562ab96baSmrg	echo nse-tandem-nsk${UNAME_RELEASE}
128662ab96baSmrg	exit ;;
128762ab96baSmrg    NSR-?:NONSTOP_KERNEL:*:*)
12885eefee25Smacallan	echo nsr-tandem-nsk${UNAME_RELEASE}
128962ab96baSmrg	exit ;;
12905eefee25Smacallan    *:NonStop-UX:*:*)
12915eefee25Smacallan	echo mips-compaq-nonstopux
129262ab96baSmrg	exit ;;
12935eefee25Smacallan    BS2000:POSIX*:*:*)
12945eefee25Smacallan	echo bs2000-siemens-sysv
129562ab96baSmrg	exit ;;
12965eefee25Smacallan    DS/*:UNIX_System_V:*:*)
12975eefee25Smacallan	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
129862ab96baSmrg	exit ;;
12995eefee25Smacallan    *:Plan9:*:*)
13005eefee25Smacallan	# "uname -m" is not consistent, so use $cputype instead. 386
13015eefee25Smacallan	# is converted to i386 for consistency with other x86
13025eefee25Smacallan	# operating systems.
13035eefee25Smacallan	if test "$cputype" = "386"; then
13045eefee25Smacallan	    UNAME_MACHINE=i386
13055eefee25Smacallan	else
13065eefee25Smacallan	    UNAME_MACHINE="$cputype"
13075eefee25Smacallan	fi
13085eefee25Smacallan	echo ${UNAME_MACHINE}-unknown-plan9
130962ab96baSmrg	exit ;;
13105eefee25Smacallan    *:TOPS-10:*:*)
13115eefee25Smacallan	echo pdp10-unknown-tops10
131262ab96baSmrg	exit ;;
13135eefee25Smacallan    *:TENEX:*:*)
13145eefee25Smacallan	echo pdp10-unknown-tenex
131562ab96baSmrg	exit ;;
13165eefee25Smacallan    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
13175eefee25Smacallan	echo pdp10-dec-tops20
131862ab96baSmrg	exit ;;
13195eefee25Smacallan    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
13205eefee25Smacallan	echo pdp10-xkl-tops20
132162ab96baSmrg	exit ;;
13225eefee25Smacallan    *:TOPS-20:*:*)
13235eefee25Smacallan	echo pdp10-unknown-tops20
132462ab96baSmrg	exit ;;
13255eefee25Smacallan    *:ITS:*:*)
13265eefee25Smacallan	echo pdp10-unknown-its
132762ab96baSmrg	exit ;;
13285eefee25Smacallan    SEI:*:*:SEIUX)
1329dc99b369Smrg	echo mips-sei-seiux${UNAME_RELEASE}
133062ab96baSmrg	exit ;;
133162ab96baSmrg    *:DragonFly:*:*)
133262ab96baSmrg	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
133362ab96baSmrg	exit ;;
133462ab96baSmrg    *:*VMS:*:*)
1335dc99b369Smrg	UNAME_MACHINE=`(uname -p) 2>/dev/null`
133662ab96baSmrg	case "${UNAME_MACHINE}" in
133762ab96baSmrg	    A*) echo alpha-dec-vms ; exit ;;
133862ab96baSmrg	    I*) echo ia64-dec-vms ; exit ;;
133962ab96baSmrg	    V*) echo vax-dec-vms ; exit ;;
134062ab96baSmrg	esac ;;
134162ab96baSmrg    *:XENIX:*:SysV)
134262ab96baSmrg	echo i386-pc-xenix
134362ab96baSmrg	exit ;;
134462ab96baSmrg    i*86:skyos:*:*)
134562ab96baSmrg	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
134662ab96baSmrg	exit ;;
134762ab96baSmrg    i*86:rdos:*:*)
134862ab96baSmrg	echo ${UNAME_MACHINE}-pc-rdos
134962ab96baSmrg	exit ;;
1350dc99b369Smrg    i*86:AROS:*:*)
1351dc99b369Smrg	echo ${UNAME_MACHINE}-pc-aros
1352dc99b369Smrg	exit ;;
1353dc99b369Smrg    x86_64:VMkernel:*:*)
1354dc99b369Smrg	echo ${UNAME_MACHINE}-unknown-esx
1355dc99b369Smrg	exit ;;
13565eefee25Smacallanesac
13575eefee25Smacallan
13585eefee25Smacallaneval $set_cc_for_build
13595eefee25Smacallancat >$dummy.c <<EOF
13605eefee25Smacallan#ifdef _SEQUENT_
13615eefee25Smacallan# include <sys/types.h>
13625eefee25Smacallan# include <sys/utsname.h>
13635eefee25Smacallan#endif
13645eefee25Smacallanmain ()
13655eefee25Smacallan{
13665eefee25Smacallan#if defined (sony)
13675eefee25Smacallan#if defined (MIPSEB)
13685eefee25Smacallan  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
13695eefee25Smacallan     I don't know....  */
13705eefee25Smacallan  printf ("mips-sony-bsd\n"); exit (0);
13715eefee25Smacallan#else
13725eefee25Smacallan#include <sys/param.h>
13735eefee25Smacallan  printf ("m68k-sony-newsos%s\n",
13745eefee25Smacallan#ifdef NEWSOS4
1375dc99b369Smrg	"4"
13765eefee25Smacallan#else
1377dc99b369Smrg	""
13785eefee25Smacallan#endif
1379dc99b369Smrg	); exit (0);
13805eefee25Smacallan#endif
13815eefee25Smacallan#endif
13825eefee25Smacallan
13835eefee25Smacallan#if defined (__arm) && defined (__acorn) && defined (__unix)
138462ab96baSmrg  printf ("arm-acorn-riscix\n"); exit (0);
13855eefee25Smacallan#endif
13865eefee25Smacallan
13875eefee25Smacallan#if defined (hp300) && !defined (hpux)
13885eefee25Smacallan  printf ("m68k-hp-bsd\n"); exit (0);
13895eefee25Smacallan#endif
13905eefee25Smacallan
13915eefee25Smacallan#if defined (NeXT)
13925eefee25Smacallan#if !defined (__ARCHITECTURE__)
13935eefee25Smacallan#define __ARCHITECTURE__ "m68k"
13945eefee25Smacallan#endif
13955eefee25Smacallan  int version;
13965eefee25Smacallan  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
13975eefee25Smacallan  if (version < 4)
13985eefee25Smacallan    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
13995eefee25Smacallan  else
14005eefee25Smacallan    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
14015eefee25Smacallan  exit (0);
14025eefee25Smacallan#endif
14035eefee25Smacallan
14045eefee25Smacallan#if defined (MULTIMAX) || defined (n16)
14055eefee25Smacallan#if defined (UMAXV)
14065eefee25Smacallan  printf ("ns32k-encore-sysv\n"); exit (0);
14075eefee25Smacallan#else
14085eefee25Smacallan#if defined (CMU)
14095eefee25Smacallan  printf ("ns32k-encore-mach\n"); exit (0);
14105eefee25Smacallan#else
14115eefee25Smacallan  printf ("ns32k-encore-bsd\n"); exit (0);
14125eefee25Smacallan#endif
14135eefee25Smacallan#endif
14145eefee25Smacallan#endif
14155eefee25Smacallan
14165eefee25Smacallan#if defined (__386BSD__)
14175eefee25Smacallan  printf ("i386-pc-bsd\n"); exit (0);
14185eefee25Smacallan#endif
14195eefee25Smacallan
14205eefee25Smacallan#if defined (sequent)
14215eefee25Smacallan#if defined (i386)
14225eefee25Smacallan  printf ("i386-sequent-dynix\n"); exit (0);
14235eefee25Smacallan#endif
14245eefee25Smacallan#if defined (ns32000)
14255eefee25Smacallan  printf ("ns32k-sequent-dynix\n"); exit (0);
14265eefee25Smacallan#endif
14275eefee25Smacallan#endif
14285eefee25Smacallan
14295eefee25Smacallan#if defined (_SEQUENT_)
14305eefee25Smacallan    struct utsname un;
14315eefee25Smacallan
14325eefee25Smacallan    uname(&un);
14335eefee25Smacallan
14345eefee25Smacallan    if (strncmp(un.version, "V2", 2) == 0) {
14355eefee25Smacallan	printf ("i386-sequent-ptx2\n"); exit (0);
14365eefee25Smacallan    }
14375eefee25Smacallan    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
14385eefee25Smacallan	printf ("i386-sequent-ptx1\n"); exit (0);
14395eefee25Smacallan    }
14405eefee25Smacallan    printf ("i386-sequent-ptx\n"); exit (0);
14415eefee25Smacallan
14425eefee25Smacallan#endif
14435eefee25Smacallan
14445eefee25Smacallan#if defined (vax)
14455eefee25Smacallan# if !defined (ultrix)
14465eefee25Smacallan#  include <sys/param.h>
14475eefee25Smacallan#  if defined (BSD)
14485eefee25Smacallan#   if BSD == 43
14495eefee25Smacallan      printf ("vax-dec-bsd4.3\n"); exit (0);
14505eefee25Smacallan#   else
14515eefee25Smacallan#    if BSD == 199006
14525eefee25Smacallan      printf ("vax-dec-bsd4.3reno\n"); exit (0);
14535eefee25Smacallan#    else
14545eefee25Smacallan      printf ("vax-dec-bsd\n"); exit (0);
14555eefee25Smacallan#    endif
14565eefee25Smacallan#   endif
14575eefee25Smacallan#  else
14585eefee25Smacallan    printf ("vax-dec-bsd\n"); exit (0);
14595eefee25Smacallan#  endif
14605eefee25Smacallan# else
14615eefee25Smacallan    printf ("vax-dec-ultrix\n"); exit (0);
14625eefee25Smacallan# endif
14635eefee25Smacallan#endif
14645eefee25Smacallan
14655eefee25Smacallan#if defined (alliant) && defined (i860)
14665eefee25Smacallan  printf ("i860-alliant-bsd\n"); exit (0);
14675eefee25Smacallan#endif
14685eefee25Smacallan
14695eefee25Smacallan  exit (1);
14705eefee25Smacallan}
14715eefee25SmacallanEOF
14725eefee25Smacallan
147362ab96baSmrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
147462ab96baSmrg	{ echo "$SYSTEM_NAME"; exit; }
14755eefee25Smacallan
14765eefee25Smacallan# Apollos put the system type in the environment.
14775eefee25Smacallan
147862ab96baSmrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
14795eefee25Smacallan
14805eefee25Smacallan# Convex versions that predate uname can use getsysinfo(1)
14815eefee25Smacallan
14825eefee25Smacallanif [ -x /usr/convex/getsysinfo ]
14835eefee25Smacallanthen
14845eefee25Smacallan    case `getsysinfo -f cpu_type` in
14855eefee25Smacallan    c1*)
14865eefee25Smacallan	echo c1-convex-bsd
148762ab96baSmrg	exit ;;
14885eefee25Smacallan    c2*)
14895eefee25Smacallan	if getsysinfo -f scalar_acc
14905eefee25Smacallan	then echo c32-convex-bsd
14915eefee25Smacallan	else echo c2-convex-bsd
14925eefee25Smacallan	fi
149362ab96baSmrg	exit ;;
14945eefee25Smacallan    c34*)
14955eefee25Smacallan	echo c34-convex-bsd
149662ab96baSmrg	exit ;;
14975eefee25Smacallan    c38*)
14985eefee25Smacallan	echo c38-convex-bsd
149962ab96baSmrg	exit ;;
15005eefee25Smacallan    c4*)
15015eefee25Smacallan	echo c4-convex-bsd
150262ab96baSmrg	exit ;;
15035eefee25Smacallan    esac
15045eefee25Smacallanfi
15055eefee25Smacallan
15065eefee25Smacallancat >&2 <<EOF
15075eefee25Smacallan$0: unable to guess system type
15085eefee25Smacallan
15095eefee25SmacallanThis script, last modified $timestamp, has failed to recognize
15105eefee25Smacallanthe operating system you are using. It is advised that you
15115eefee25Smacallandownload the most up to date version of the config scripts from
15125eefee25Smacallan
151362ab96baSmrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
151462ab96baSmrgand
151562ab96baSmrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
15165eefee25Smacallan
15175eefee25SmacallanIf the version you run ($0) is already up to date, please
15185eefee25Smacallansend the following data and any information you think might be
15195eefee25Smacallanpertinent to <config-patches@gnu.org> in order to provide the needed
15205eefee25Smacallaninformation to handle your system.
15215eefee25Smacallan
15225eefee25Smacallanconfig.guess timestamp = $timestamp
15235eefee25Smacallan
15245eefee25Smacallanuname -m = `(uname -m) 2>/dev/null || echo unknown`
15255eefee25Smacallanuname -r = `(uname -r) 2>/dev/null || echo unknown`
15265eefee25Smacallanuname -s = `(uname -s) 2>/dev/null || echo unknown`
15275eefee25Smacallanuname -v = `(uname -v) 2>/dev/null || echo unknown`
15285eefee25Smacallan
15295eefee25Smacallan/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
15305eefee25Smacallan/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
15315eefee25Smacallan
15325eefee25Smacallanhostinfo               = `(hostinfo) 2>/dev/null`
15335eefee25Smacallan/bin/universe          = `(/bin/universe) 2>/dev/null`
15345eefee25Smacallan/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
15355eefee25Smacallan/bin/arch              = `(/bin/arch) 2>/dev/null`
15365eefee25Smacallan/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
15375eefee25Smacallan/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
15385eefee25Smacallan
15395eefee25SmacallanUNAME_MACHINE = ${UNAME_MACHINE}
15405eefee25SmacallanUNAME_RELEASE = ${UNAME_RELEASE}
15415eefee25SmacallanUNAME_SYSTEM  = ${UNAME_SYSTEM}
15425eefee25SmacallanUNAME_VERSION = ${UNAME_VERSION}
15435eefee25SmacallanEOF
15445eefee25Smacallan
15455eefee25Smacallanexit 1
15465eefee25Smacallan
15475eefee25Smacallan# Local variables:
15485eefee25Smacallan# eval: (add-hook 'write-file-hooks 'time-stamp)
15495eefee25Smacallan# time-stamp-start: "timestamp='"
15505eefee25Smacallan# time-stamp-format: "%:y-%02m-%02d"
15515eefee25Smacallan# time-stamp-end: "'"
15525eefee25Smacallan# End:
1553