config.guess revision e5410a46
11f0ac6a5Smrg#! /bin/sh
21f0ac6a5Smrg# Attempt to guess a canonical system name.
31f0ac6a5Smrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4e5410a46Smrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
5e5410a46Smrg#   Free Software Foundation, Inc.
61f0ac6a5Smrg
7e5410a46Smrgtimestamp='2008-01-23'
81f0ac6a5Smrg
91f0ac6a5Smrg# This file is free software; you can redistribute it and/or modify it
101f0ac6a5Smrg# under the terms of the GNU General Public License as published by
111f0ac6a5Smrg# the Free Software Foundation; either version 2 of the License, or
121f0ac6a5Smrg# (at your option) any later version.
131f0ac6a5Smrg#
141f0ac6a5Smrg# This program is distributed in the hope that it will be useful, but
151f0ac6a5Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of
161f0ac6a5Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
171f0ac6a5Smrg# General Public License for more details.
181f0ac6a5Smrg#
191f0ac6a5Smrg# You should have received a copy of the GNU General Public License
201f0ac6a5Smrg# along with this program; if not, write to the Free Software
21e5410a46Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
22e5410a46Smrg# 02110-1301, USA.
231f0ac6a5Smrg#
241f0ac6a5Smrg# As a special exception to the GNU General Public License, if you
251f0ac6a5Smrg# distribute this file as part of a program that contains a
261f0ac6a5Smrg# configuration script generated by Autoconf, you may include it under
271f0ac6a5Smrg# the same distribution terms that you use for the rest of that program.
281f0ac6a5Smrg
29e5410a46Smrg
301f0ac6a5Smrg# Originally written by Per Bothner <per@bothner.com>.
311f0ac6a5Smrg# Please send patches to <config-patches@gnu.org>.  Submit a context
321f0ac6a5Smrg# diff and a properly formatted ChangeLog entry.
331f0ac6a5Smrg#
341f0ac6a5Smrg# This script attempts to guess a canonical system name similar to
351f0ac6a5Smrg# config.sub.  If it succeeds, it prints the system name on stdout, and
361f0ac6a5Smrg# exits with 0.  Otherwise, it exits with 1.
371f0ac6a5Smrg#
381f0ac6a5Smrg# The plan is that this can be called by configure scripts if you
391f0ac6a5Smrg# don't specify an explicit build system type.
401f0ac6a5Smrg
411f0ac6a5Smrgme=`echo "$0" | sed -e 's,.*/,,'`
421f0ac6a5Smrg
431f0ac6a5Smrgusage="\
441f0ac6a5SmrgUsage: $0 [OPTION]
451f0ac6a5Smrg
461f0ac6a5SmrgOutput the configuration name of the system \`$me' is run on.
471f0ac6a5Smrg
481f0ac6a5SmrgOperation modes:
491f0ac6a5Smrg  -h, --help         print this help, then exit
501f0ac6a5Smrg  -t, --time-stamp   print date of last modification, then exit
511f0ac6a5Smrg  -v, --version      print version number, then exit
521f0ac6a5Smrg
531f0ac6a5SmrgReport bugs and patches to <config-patches@gnu.org>."
541f0ac6a5Smrg
551f0ac6a5Smrgversion="\
561f0ac6a5SmrgGNU config.guess ($timestamp)
571f0ac6a5Smrg
581f0ac6a5SmrgOriginally written by Per Bothner.
59e5410a46SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
60e5410a46Smrg2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
611f0ac6a5Smrg
621f0ac6a5SmrgThis is free software; see the source for copying conditions.  There is NO
631f0ac6a5Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
641f0ac6a5Smrg
651f0ac6a5Smrghelp="
661f0ac6a5SmrgTry \`$me --help' for more information."
671f0ac6a5Smrg
681f0ac6a5Smrg# Parse command line
691f0ac6a5Smrgwhile test $# -gt 0 ; do
701f0ac6a5Smrg  case $1 in
711f0ac6a5Smrg    --time-stamp | --time* | -t )
72e5410a46Smrg       echo "$timestamp" ; exit ;;
731f0ac6a5Smrg    --version | -v )
74e5410a46Smrg       echo "$version" ; exit ;;
751f0ac6a5Smrg    --help | --h* | -h )
76e5410a46Smrg       echo "$usage"; exit ;;
771f0ac6a5Smrg    -- )     # Stop option processing
781f0ac6a5Smrg       shift; break ;;
791f0ac6a5Smrg    - )	# Use stdin as input.
801f0ac6a5Smrg       break ;;
811f0ac6a5Smrg    -* )
821f0ac6a5Smrg       echo "$me: invalid option $1$help" >&2
831f0ac6a5Smrg       exit 1 ;;
841f0ac6a5Smrg    * )
851f0ac6a5Smrg       break ;;
861f0ac6a5Smrg  esac
871f0ac6a5Smrgdone
881f0ac6a5Smrg
891f0ac6a5Smrgif test $# != 0; then
901f0ac6a5Smrg  echo "$me: too many arguments$help" >&2
911f0ac6a5Smrg  exit 1
921f0ac6a5Smrgfi
931f0ac6a5Smrg
941f0ac6a5Smrgtrap 'exit 1' 1 2 15
951f0ac6a5Smrg
961f0ac6a5Smrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
971f0ac6a5Smrg# compiler to aid in system detection is discouraged as it requires
981f0ac6a5Smrg# temporary files to be created and, as you can see below, it is a
991f0ac6a5Smrg# headache to deal with in a portable fashion.
1001f0ac6a5Smrg
1011f0ac6a5Smrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
1021f0ac6a5Smrg# use `HOST_CC' if defined, but it is deprecated.
1031f0ac6a5Smrg
1041f0ac6a5Smrg# Portable tmp directory creation inspired by the Autoconf team.
1051f0ac6a5Smrg
1061f0ac6a5Smrgset_cc_for_build='
1071f0ac6a5Smrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
1081f0ac6a5Smrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
1091f0ac6a5Smrg: ${TMPDIR=/tmp} ;
110e5410a46Smrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
1111f0ac6a5Smrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
1121f0ac6a5Smrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
1131f0ac6a5Smrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
1141f0ac6a5Smrgdummy=$tmp/dummy ;
1151f0ac6a5Smrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
1161f0ac6a5Smrgcase $CC_FOR_BUILD,$HOST_CC,$CC in
1171f0ac6a5Smrg ,,)    echo "int x;" > $dummy.c ;
1181f0ac6a5Smrg	for c in cc gcc c89 c99 ; do
1191f0ac6a5Smrg	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
1201f0ac6a5Smrg	     CC_FOR_BUILD="$c"; break ;
1211f0ac6a5Smrg	  fi ;
1221f0ac6a5Smrg	done ;
1231f0ac6a5Smrg	if test x"$CC_FOR_BUILD" = x ; then
1241f0ac6a5Smrg	  CC_FOR_BUILD=no_compiler_found ;
1251f0ac6a5Smrg	fi
1261f0ac6a5Smrg	;;
1271f0ac6a5Smrg ,,*)   CC_FOR_BUILD=$CC ;;
1281f0ac6a5Smrg ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
129e5410a46Smrgesac ; set_cc_for_build= ;'
1301f0ac6a5Smrg
1311f0ac6a5Smrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
1321f0ac6a5Smrg# (ghazi@noc.rutgers.edu 1994-08-24)
1331f0ac6a5Smrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then
1341f0ac6a5Smrg	PATH=$PATH:/.attbin ; export PATH
1351f0ac6a5Smrgfi
1361f0ac6a5Smrg
1371f0ac6a5SmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
1381f0ac6a5SmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
1391f0ac6a5SmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
1401f0ac6a5SmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
1411f0ac6a5Smrg
1421f0ac6a5Smrg# Note: order is significant - the case branches are not exclusive.
1431f0ac6a5Smrg
1441f0ac6a5Smrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
1451f0ac6a5Smrg    *:NetBSD:*:*)
1461f0ac6a5Smrg	# NetBSD (nbsd) targets should (where applicable) match one or
1471f0ac6a5Smrg	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
1481f0ac6a5Smrg	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
1491f0ac6a5Smrg	# switched to ELF, *-*-netbsd* would select the old
1501f0ac6a5Smrg	# object file format.  This provides both forward
1511f0ac6a5Smrg	# compatibility and a consistent mechanism for selecting the
1521f0ac6a5Smrg	# object file format.
1531f0ac6a5Smrg	#
1541f0ac6a5Smrg	# Note: NetBSD doesn't particularly care about the vendor
1551f0ac6a5Smrg	# portion of the name.  We always set it to "unknown".
1561f0ac6a5Smrg	sysctl="sysctl -n hw.machine_arch"
1571f0ac6a5Smrg	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
1581f0ac6a5Smrg	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
1591f0ac6a5Smrg	case "${UNAME_MACHINE_ARCH}" in
1601f0ac6a5Smrg	    armeb) machine=armeb-unknown ;;
1611f0ac6a5Smrg	    arm*) machine=arm-unknown ;;
1621f0ac6a5Smrg	    sh3el) machine=shl-unknown ;;
1631f0ac6a5Smrg	    sh3eb) machine=sh-unknown ;;
164e5410a46Smrg	    sh5el) machine=sh5le-unknown ;;
1651f0ac6a5Smrg	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
1661f0ac6a5Smrg	esac
1671f0ac6a5Smrg	# The Operating System including object format, if it has switched
1681f0ac6a5Smrg	# to ELF recently, or will in the future.
1691f0ac6a5Smrg	case "${UNAME_MACHINE_ARCH}" in
1701f0ac6a5Smrg	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
1711f0ac6a5Smrg		eval $set_cc_for_build
1721f0ac6a5Smrg		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
1731f0ac6a5Smrg			| grep __ELF__ >/dev/null
1741f0ac6a5Smrg		then
1751f0ac6a5Smrg		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
1761f0ac6a5Smrg		    # Return netbsd for either.  FIX?
1771f0ac6a5Smrg		    os=netbsd
1781f0ac6a5Smrg		else
1791f0ac6a5Smrg		    os=netbsdelf
1801f0ac6a5Smrg		fi
1811f0ac6a5Smrg		;;
1821f0ac6a5Smrg	    *)
1831f0ac6a5Smrg	        os=netbsd
1841f0ac6a5Smrg		;;
1851f0ac6a5Smrg	esac
1861f0ac6a5Smrg	# The OS release
1871f0ac6a5Smrg	# Debian GNU/NetBSD machines have a different userland, and
1881f0ac6a5Smrg	# thus, need a distinct triplet. However, they do not need
1891f0ac6a5Smrg	# kernel version information, so it can be replaced with a
1901f0ac6a5Smrg	# suitable tag, in the style of linux-gnu.
1911f0ac6a5Smrg	case "${UNAME_VERSION}" in
1921f0ac6a5Smrg	    Debian*)
1931f0ac6a5Smrg		release='-gnu'
1941f0ac6a5Smrg		;;
1951f0ac6a5Smrg	    *)
1961f0ac6a5Smrg		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
1971f0ac6a5Smrg		;;
1981f0ac6a5Smrg	esac
1991f0ac6a5Smrg	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
2001f0ac6a5Smrg	# contains redundant information, the shorter form:
2011f0ac6a5Smrg	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
2021f0ac6a5Smrg	echo "${machine}-${os}${release}"
203e5410a46Smrg	exit ;;
2041f0ac6a5Smrg    *:OpenBSD:*:*)
205e5410a46Smrg	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
206e5410a46Smrg	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
207e5410a46Smrg	exit ;;
208e5410a46Smrg    *:ekkoBSD:*:*)
209e5410a46Smrg	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
210e5410a46Smrg	exit ;;
211e5410a46Smrg    *:SolidBSD:*:*)
212e5410a46Smrg	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
213e5410a46Smrg	exit ;;
214e5410a46Smrg    macppc:MirBSD:*:*)
215e5410a46Smrg	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
216e5410a46Smrg	exit ;;
217e5410a46Smrg    *:MirBSD:*:*)
218e5410a46Smrg	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
219e5410a46Smrg	exit ;;
2201f0ac6a5Smrg    alpha:OSF1:*:*)
221e5410a46Smrg	case $UNAME_RELEASE in
222e5410a46Smrg	*4.0)
2231f0ac6a5Smrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
224e5410a46Smrg		;;
225e5410a46Smrg	*5.*)
226e5410a46Smrg	        UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
227e5410a46Smrg		;;
228e5410a46Smrg	esac
2291f0ac6a5Smrg	# According to Compaq, /usr/sbin/psrinfo has been available on
2301f0ac6a5Smrg	# OSF/1 and Tru64 systems produced since 1995.  I hope that
2311f0ac6a5Smrg	# covers most systems running today.  This code pipes the CPU
2321f0ac6a5Smrg	# types through head -n 1, so we only detect the type of CPU 0.
2331f0ac6a5Smrg	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
2341f0ac6a5Smrg	case "$ALPHA_CPU_TYPE" in
2351f0ac6a5Smrg	    "EV4 (21064)")
2361f0ac6a5Smrg		UNAME_MACHINE="alpha" ;;
2371f0ac6a5Smrg	    "EV4.5 (21064)")
2381f0ac6a5Smrg		UNAME_MACHINE="alpha" ;;
2391f0ac6a5Smrg	    "LCA4 (21066/21068)")
2401f0ac6a5Smrg		UNAME_MACHINE="alpha" ;;
2411f0ac6a5Smrg	    "EV5 (21164)")
2421f0ac6a5Smrg		UNAME_MACHINE="alphaev5" ;;
2431f0ac6a5Smrg	    "EV5.6 (21164A)")
2441f0ac6a5Smrg		UNAME_MACHINE="alphaev56" ;;
2451f0ac6a5Smrg	    "EV5.6 (21164PC)")
2461f0ac6a5Smrg		UNAME_MACHINE="alphapca56" ;;
2471f0ac6a5Smrg	    "EV5.7 (21164PC)")
2481f0ac6a5Smrg		UNAME_MACHINE="alphapca57" ;;
2491f0ac6a5Smrg	    "EV6 (21264)")
2501f0ac6a5Smrg		UNAME_MACHINE="alphaev6" ;;
2511f0ac6a5Smrg	    "EV6.7 (21264A)")
2521f0ac6a5Smrg		UNAME_MACHINE="alphaev67" ;;
2531f0ac6a5Smrg	    "EV6.8CB (21264C)")
2541f0ac6a5Smrg		UNAME_MACHINE="alphaev68" ;;
2551f0ac6a5Smrg	    "EV6.8AL (21264B)")
2561f0ac6a5Smrg		UNAME_MACHINE="alphaev68" ;;
2571f0ac6a5Smrg	    "EV6.8CX (21264D)")
2581f0ac6a5Smrg		UNAME_MACHINE="alphaev68" ;;
2591f0ac6a5Smrg	    "EV6.9A (21264/EV69A)")
2601f0ac6a5Smrg		UNAME_MACHINE="alphaev69" ;;
2611f0ac6a5Smrg	    "EV7 (21364)")
2621f0ac6a5Smrg		UNAME_MACHINE="alphaev7" ;;
2631f0ac6a5Smrg	    "EV7.9 (21364A)")
2641f0ac6a5Smrg		UNAME_MACHINE="alphaev79" ;;
2651f0ac6a5Smrg	esac
266e5410a46Smrg	# A Pn.n version is a patched version.
2671f0ac6a5Smrg	# A Vn.n version is a released version.
2681f0ac6a5Smrg	# A Tn.n version is a released field test version.
2691f0ac6a5Smrg	# A Xn.n version is an unreleased experimental baselevel.
2701f0ac6a5Smrg	# 1.2 uses "1.2" for uname -r.
271e5410a46Smrg	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
272e5410a46Smrg	exit ;;
2731f0ac6a5Smrg    Alpha\ *:Windows_NT*:*)
2741f0ac6a5Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
2751f0ac6a5Smrg	# Should we change UNAME_MACHINE based on the output of uname instead
2761f0ac6a5Smrg	# of the specific Alpha model?
2771f0ac6a5Smrg	echo alpha-pc-interix
278e5410a46Smrg	exit ;;
2791f0ac6a5Smrg    21064:Windows_NT:50:3)
2801f0ac6a5Smrg	echo alpha-dec-winnt3.5
281e5410a46Smrg	exit ;;
2821f0ac6a5Smrg    Amiga*:UNIX_System_V:4.0:*)
2831f0ac6a5Smrg	echo m68k-unknown-sysv4
284e5410a46Smrg	exit ;;
2851f0ac6a5Smrg    *:[Aa]miga[Oo][Ss]:*:*)
2861f0ac6a5Smrg	echo ${UNAME_MACHINE}-unknown-amigaos
287e5410a46Smrg	exit ;;
2881f0ac6a5Smrg    *:[Mm]orph[Oo][Ss]:*:*)
2891f0ac6a5Smrg	echo ${UNAME_MACHINE}-unknown-morphos
290e5410a46Smrg	exit ;;
2911f0ac6a5Smrg    *:OS/390:*:*)
2921f0ac6a5Smrg	echo i370-ibm-openedition
293e5410a46Smrg	exit ;;
294e5410a46Smrg    *:z/VM:*:*)
295e5410a46Smrg	echo s390-ibm-zvmoe
296e5410a46Smrg	exit ;;
297e5410a46Smrg    *:OS400:*:*)
298e5410a46Smrg        echo powerpc-ibm-os400
299e5410a46Smrg	exit ;;
3001f0ac6a5Smrg    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
3011f0ac6a5Smrg	echo arm-acorn-riscix${UNAME_RELEASE}
302e5410a46Smrg	exit ;;
303e5410a46Smrg    arm:riscos:*:*|arm:RISCOS:*:*)
304e5410a46Smrg	echo arm-unknown-riscos
305e5410a46Smrg	exit ;;
3061f0ac6a5Smrg    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
3071f0ac6a5Smrg	echo hppa1.1-hitachi-hiuxmpp
308e5410a46Smrg	exit ;;
3091f0ac6a5Smrg    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
3101f0ac6a5Smrg	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
3111f0ac6a5Smrg	if test "`(/bin/universe) 2>/dev/null`" = att ; then
3121f0ac6a5Smrg		echo pyramid-pyramid-sysv3
3131f0ac6a5Smrg	else
3141f0ac6a5Smrg		echo pyramid-pyramid-bsd
3151f0ac6a5Smrg	fi
316e5410a46Smrg	exit ;;
3171f0ac6a5Smrg    NILE*:*:*:dcosx)
3181f0ac6a5Smrg	echo pyramid-pyramid-svr4
319e5410a46Smrg	exit ;;
3201f0ac6a5Smrg    DRS?6000:unix:4.0:6*)
3211f0ac6a5Smrg	echo sparc-icl-nx6
322e5410a46Smrg	exit ;;
323e5410a46Smrg    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
3241f0ac6a5Smrg	case `/usr/bin/uname -p` in
325e5410a46Smrg	    sparc) echo sparc-icl-nx7; exit ;;
3261f0ac6a5Smrg	esac ;;
3271f0ac6a5Smrg    sun4H:SunOS:5.*:*)
3281f0ac6a5Smrg	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
329e5410a46Smrg	exit ;;
3301f0ac6a5Smrg    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
3311f0ac6a5Smrg	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
332e5410a46Smrg	exit ;;
333e5410a46Smrg    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
3341f0ac6a5Smrg	echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
335e5410a46Smrg	exit ;;
3361f0ac6a5Smrg    sun4*:SunOS:6*:*)
3371f0ac6a5Smrg	# According to config.sub, this is the proper way to canonicalize
3381f0ac6a5Smrg	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
3391f0ac6a5Smrg	# it's likely to be more like Solaris than SunOS4.
3401f0ac6a5Smrg	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
341e5410a46Smrg	exit ;;
3421f0ac6a5Smrg    sun4*:SunOS:*:*)
3431f0ac6a5Smrg	case "`/usr/bin/arch -k`" in
3441f0ac6a5Smrg	    Series*|S4*)
3451f0ac6a5Smrg		UNAME_RELEASE=`uname -v`
3461f0ac6a5Smrg		;;
3471f0ac6a5Smrg	esac
3481f0ac6a5Smrg	# Japanese Language versions have a version number like `4.1.3-JL'.
3491f0ac6a5Smrg	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
350e5410a46Smrg	exit ;;
3511f0ac6a5Smrg    sun3*:SunOS:*:*)
3521f0ac6a5Smrg	echo m68k-sun-sunos${UNAME_RELEASE}
353e5410a46Smrg	exit ;;
3541f0ac6a5Smrg    sun*:*:4.2BSD:*)
3551f0ac6a5Smrg	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
3561f0ac6a5Smrg	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
3571f0ac6a5Smrg	case "`/bin/arch`" in
3581f0ac6a5Smrg	    sun3)
3591f0ac6a5Smrg		echo m68k-sun-sunos${UNAME_RELEASE}
3601f0ac6a5Smrg		;;
3611f0ac6a5Smrg	    sun4)
3621f0ac6a5Smrg		echo sparc-sun-sunos${UNAME_RELEASE}
3631f0ac6a5Smrg		;;
3641f0ac6a5Smrg	esac
365e5410a46Smrg	exit ;;
3661f0ac6a5Smrg    aushp:SunOS:*:*)
3671f0ac6a5Smrg	echo sparc-auspex-sunos${UNAME_RELEASE}
368e5410a46Smrg	exit ;;
3691f0ac6a5Smrg    # The situation for MiNT is a little confusing.  The machine name
3701f0ac6a5Smrg    # can be virtually everything (everything which is not
3711f0ac6a5Smrg    # "atarist" or "atariste" at least should have a processor
3721f0ac6a5Smrg    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
3731f0ac6a5Smrg    # to the lowercase version "mint" (or "freemint").  Finally
3741f0ac6a5Smrg    # the system name "TOS" denotes a system which is actually not
3751f0ac6a5Smrg    # MiNT.  But MiNT is downward compatible to TOS, so this should
3761f0ac6a5Smrg    # be no problem.
3771f0ac6a5Smrg    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
3781f0ac6a5Smrg        echo m68k-atari-mint${UNAME_RELEASE}
379e5410a46Smrg	exit ;;
3801f0ac6a5Smrg    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
3811f0ac6a5Smrg	echo m68k-atari-mint${UNAME_RELEASE}
382e5410a46Smrg        exit ;;
3831f0ac6a5Smrg    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
3841f0ac6a5Smrg        echo m68k-atari-mint${UNAME_RELEASE}
385e5410a46Smrg	exit ;;
3861f0ac6a5Smrg    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
3871f0ac6a5Smrg        echo m68k-milan-mint${UNAME_RELEASE}
388e5410a46Smrg        exit ;;
3891f0ac6a5Smrg    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
3901f0ac6a5Smrg        echo m68k-hades-mint${UNAME_RELEASE}
391e5410a46Smrg        exit ;;
3921f0ac6a5Smrg    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
3931f0ac6a5Smrg        echo m68k-unknown-mint${UNAME_RELEASE}
394e5410a46Smrg        exit ;;
395e5410a46Smrg    m68k:machten:*:*)
396e5410a46Smrg	echo m68k-apple-machten${UNAME_RELEASE}
397e5410a46Smrg	exit ;;
3981f0ac6a5Smrg    powerpc:machten:*:*)
3991f0ac6a5Smrg	echo powerpc-apple-machten${UNAME_RELEASE}
400e5410a46Smrg	exit ;;
4011f0ac6a5Smrg    RISC*:Mach:*:*)
4021f0ac6a5Smrg	echo mips-dec-mach_bsd4.3
403e5410a46Smrg	exit ;;
4041f0ac6a5Smrg    RISC*:ULTRIX:*:*)
4051f0ac6a5Smrg	echo mips-dec-ultrix${UNAME_RELEASE}
406e5410a46Smrg	exit ;;
4071f0ac6a5Smrg    VAX*:ULTRIX*:*:*)
4081f0ac6a5Smrg	echo vax-dec-ultrix${UNAME_RELEASE}
409e5410a46Smrg	exit ;;
4101f0ac6a5Smrg    2020:CLIX:*:* | 2430:CLIX:*:*)
4111f0ac6a5Smrg	echo clipper-intergraph-clix${UNAME_RELEASE}
412e5410a46Smrg	exit ;;
4131f0ac6a5Smrg    mips:*:*:UMIPS | mips:*:*:RISCos)
4141f0ac6a5Smrg	eval $set_cc_for_build
4151f0ac6a5Smrg	sed 's/^	//' << EOF >$dummy.c
4161f0ac6a5Smrg#ifdef __cplusplus
4171f0ac6a5Smrg#include <stdio.h>  /* for printf() prototype */
4181f0ac6a5Smrg	int main (int argc, char *argv[]) {
4191f0ac6a5Smrg#else
4201f0ac6a5Smrg	int main (argc, argv) int argc; char *argv[]; {
4211f0ac6a5Smrg#endif
4221f0ac6a5Smrg	#if defined (host_mips) && defined (MIPSEB)
4231f0ac6a5Smrg	#if defined (SYSTYPE_SYSV)
4241f0ac6a5Smrg	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
4251f0ac6a5Smrg	#endif
4261f0ac6a5Smrg	#if defined (SYSTYPE_SVR4)
4271f0ac6a5Smrg	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
4281f0ac6a5Smrg	#endif
4291f0ac6a5Smrg	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
4301f0ac6a5Smrg	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
4311f0ac6a5Smrg	#endif
4321f0ac6a5Smrg	#endif
4331f0ac6a5Smrg	  exit (-1);
4341f0ac6a5Smrg	}
4351f0ac6a5SmrgEOF
436e5410a46Smrg	$CC_FOR_BUILD -o $dummy $dummy.c &&
437e5410a46Smrg	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
438e5410a46Smrg	  SYSTEM_NAME=`$dummy $dummyarg` &&
439e5410a46Smrg	    { echo "$SYSTEM_NAME"; exit; }
4401f0ac6a5Smrg	echo mips-mips-riscos${UNAME_RELEASE}
441e5410a46Smrg	exit ;;
4421f0ac6a5Smrg    Motorola:PowerMAX_OS:*:*)
4431f0ac6a5Smrg	echo powerpc-motorola-powermax
444e5410a46Smrg	exit ;;
4451f0ac6a5Smrg    Motorola:*:4.3:PL8-*)
4461f0ac6a5Smrg	echo powerpc-harris-powermax
447e5410a46Smrg	exit ;;
4481f0ac6a5Smrg    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
4491f0ac6a5Smrg	echo powerpc-harris-powermax
450e5410a46Smrg	exit ;;
4511f0ac6a5Smrg    Night_Hawk:Power_UNIX:*:*)
4521f0ac6a5Smrg	echo powerpc-harris-powerunix
453e5410a46Smrg	exit ;;
4541f0ac6a5Smrg    m88k:CX/UX:7*:*)
4551f0ac6a5Smrg	echo m88k-harris-cxux7
456e5410a46Smrg	exit ;;
4571f0ac6a5Smrg    m88k:*:4*:R4*)
4581f0ac6a5Smrg	echo m88k-motorola-sysv4
459e5410a46Smrg	exit ;;
4601f0ac6a5Smrg    m88k:*:3*:R3*)
4611f0ac6a5Smrg	echo m88k-motorola-sysv3
462e5410a46Smrg	exit ;;
4631f0ac6a5Smrg    AViiON:dgux:*:*)
4641f0ac6a5Smrg        # DG/UX returns AViiON for all architectures
4651f0ac6a5Smrg        UNAME_PROCESSOR=`/usr/bin/uname -p`
4661f0ac6a5Smrg	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
4671f0ac6a5Smrg	then
4681f0ac6a5Smrg	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
4691f0ac6a5Smrg	       [ ${TARGET_BINARY_INTERFACE}x = x ]
4701f0ac6a5Smrg	    then
4711f0ac6a5Smrg		echo m88k-dg-dgux${UNAME_RELEASE}
4721f0ac6a5Smrg	    else
4731f0ac6a5Smrg		echo m88k-dg-dguxbcs${UNAME_RELEASE}
4741f0ac6a5Smrg	    fi
4751f0ac6a5Smrg	else
4761f0ac6a5Smrg	    echo i586-dg-dgux${UNAME_RELEASE}
4771f0ac6a5Smrg	fi
478e5410a46Smrg 	exit ;;
4791f0ac6a5Smrg    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
4801f0ac6a5Smrg	echo m88k-dolphin-sysv3
481e5410a46Smrg	exit ;;
4821f0ac6a5Smrg    M88*:*:R3*:*)
4831f0ac6a5Smrg	# Delta 88k system running SVR3
4841f0ac6a5Smrg	echo m88k-motorola-sysv3
485e5410a46Smrg	exit ;;
4861f0ac6a5Smrg    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
4871f0ac6a5Smrg	echo m88k-tektronix-sysv3
488e5410a46Smrg	exit ;;
4891f0ac6a5Smrg    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
4901f0ac6a5Smrg	echo m68k-tektronix-bsd
491e5410a46Smrg	exit ;;
4921f0ac6a5Smrg    *:IRIX*:*:*)
4931f0ac6a5Smrg	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
494e5410a46Smrg	exit ;;
4951f0ac6a5Smrg    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
496e5410a46Smrg	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
497e5410a46Smrg	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
4981f0ac6a5Smrg    i*86:AIX:*:*)
4991f0ac6a5Smrg	echo i386-ibm-aix
500e5410a46Smrg	exit ;;
5011f0ac6a5Smrg    ia64:AIX:*:*)
5021f0ac6a5Smrg	if [ -x /usr/bin/oslevel ] ; then
5031f0ac6a5Smrg		IBM_REV=`/usr/bin/oslevel`
5041f0ac6a5Smrg	else
5051f0ac6a5Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
5061f0ac6a5Smrg	fi
5071f0ac6a5Smrg	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
508e5410a46Smrg	exit ;;
5091f0ac6a5Smrg    *:AIX:2:3)
5101f0ac6a5Smrg	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
5111f0ac6a5Smrg		eval $set_cc_for_build
5121f0ac6a5Smrg		sed 's/^		//' << EOF >$dummy.c
5131f0ac6a5Smrg		#include <sys/systemcfg.h>
5141f0ac6a5Smrg
5151f0ac6a5Smrg		main()
5161f0ac6a5Smrg			{
5171f0ac6a5Smrg			if (!__power_pc())
5181f0ac6a5Smrg				exit(1);
5191f0ac6a5Smrg			puts("powerpc-ibm-aix3.2.5");
5201f0ac6a5Smrg			exit(0);
5211f0ac6a5Smrg			}
5221f0ac6a5SmrgEOF
523e5410a46Smrg		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
524e5410a46Smrg		then
525e5410a46Smrg			echo "$SYSTEM_NAME"
526e5410a46Smrg		else
527e5410a46Smrg			echo rs6000-ibm-aix3.2.5
528e5410a46Smrg		fi
5291f0ac6a5Smrg	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
5301f0ac6a5Smrg		echo rs6000-ibm-aix3.2.4
5311f0ac6a5Smrg	else
5321f0ac6a5Smrg		echo rs6000-ibm-aix3.2
5331f0ac6a5Smrg	fi
534e5410a46Smrg	exit ;;
535e5410a46Smrg    *:AIX:*:[456])
5361f0ac6a5Smrg	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
5371f0ac6a5Smrg	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
5381f0ac6a5Smrg		IBM_ARCH=rs6000
5391f0ac6a5Smrg	else
5401f0ac6a5Smrg		IBM_ARCH=powerpc
5411f0ac6a5Smrg	fi
5421f0ac6a5Smrg	if [ -x /usr/bin/oslevel ] ; then
5431f0ac6a5Smrg		IBM_REV=`/usr/bin/oslevel`
5441f0ac6a5Smrg	else
5451f0ac6a5Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
5461f0ac6a5Smrg	fi
5471f0ac6a5Smrg	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
548e5410a46Smrg	exit ;;
5491f0ac6a5Smrg    *:AIX:*:*)
5501f0ac6a5Smrg	echo rs6000-ibm-aix
551e5410a46Smrg	exit ;;
5521f0ac6a5Smrg    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
5531f0ac6a5Smrg	echo romp-ibm-bsd4.4
554e5410a46Smrg	exit ;;
5551f0ac6a5Smrg    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
5561f0ac6a5Smrg	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
557e5410a46Smrg	exit ;;                             # report: romp-ibm BSD 4.3
5581f0ac6a5Smrg    *:BOSX:*:*)
5591f0ac6a5Smrg	echo rs6000-bull-bosx
560e5410a46Smrg	exit ;;
5611f0ac6a5Smrg    DPX/2?00:B.O.S.:*:*)
5621f0ac6a5Smrg	echo m68k-bull-sysv3
563e5410a46Smrg	exit ;;
5641f0ac6a5Smrg    9000/[34]??:4.3bsd:1.*:*)
5651f0ac6a5Smrg	echo m68k-hp-bsd
566e5410a46Smrg	exit ;;
5671f0ac6a5Smrg    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
5681f0ac6a5Smrg	echo m68k-hp-bsd4.4
569e5410a46Smrg	exit ;;
5701f0ac6a5Smrg    9000/[34678]??:HP-UX:*:*)
5711f0ac6a5Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
5721f0ac6a5Smrg	case "${UNAME_MACHINE}" in
5731f0ac6a5Smrg	    9000/31? )            HP_ARCH=m68000 ;;
5741f0ac6a5Smrg	    9000/[34]?? )         HP_ARCH=m68k ;;
5751f0ac6a5Smrg	    9000/[678][0-9][0-9])
5761f0ac6a5Smrg		if [ -x /usr/bin/getconf ]; then
5771f0ac6a5Smrg		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
5781f0ac6a5Smrg                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
5791f0ac6a5Smrg                    case "${sc_cpu_version}" in
5801f0ac6a5Smrg                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
5811f0ac6a5Smrg                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
5821f0ac6a5Smrg                      532)                      # CPU_PA_RISC2_0
5831f0ac6a5Smrg                        case "${sc_kernel_bits}" in
5841f0ac6a5Smrg                          32) HP_ARCH="hppa2.0n" ;;
5851f0ac6a5Smrg                          64) HP_ARCH="hppa2.0w" ;;
5861f0ac6a5Smrg			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
5871f0ac6a5Smrg                        esac ;;
5881f0ac6a5Smrg                    esac
5891f0ac6a5Smrg		fi
5901f0ac6a5Smrg		if [ "${HP_ARCH}" = "" ]; then
5911f0ac6a5Smrg		    eval $set_cc_for_build
5921f0ac6a5Smrg		    sed 's/^              //' << EOF >$dummy.c
5931f0ac6a5Smrg
5941f0ac6a5Smrg              #define _HPUX_SOURCE
5951f0ac6a5Smrg              #include <stdlib.h>
5961f0ac6a5Smrg              #include <unistd.h>
5971f0ac6a5Smrg
5981f0ac6a5Smrg              int main ()
5991f0ac6a5Smrg              {
6001f0ac6a5Smrg              #if defined(_SC_KERNEL_BITS)
6011f0ac6a5Smrg                  long bits = sysconf(_SC_KERNEL_BITS);
6021f0ac6a5Smrg              #endif
6031f0ac6a5Smrg                  long cpu  = sysconf (_SC_CPU_VERSION);
6041f0ac6a5Smrg
6051f0ac6a5Smrg                  switch (cpu)
6061f0ac6a5Smrg              	{
6071f0ac6a5Smrg              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
6081f0ac6a5Smrg              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
6091f0ac6a5Smrg              	case CPU_PA_RISC2_0:
6101f0ac6a5Smrg              #if defined(_SC_KERNEL_BITS)
6111f0ac6a5Smrg              	    switch (bits)
6121f0ac6a5Smrg              		{
6131f0ac6a5Smrg              		case 64: puts ("hppa2.0w"); break;
6141f0ac6a5Smrg              		case 32: puts ("hppa2.0n"); break;
6151f0ac6a5Smrg              		default: puts ("hppa2.0"); break;
6161f0ac6a5Smrg              		} break;
6171f0ac6a5Smrg              #else  /* !defined(_SC_KERNEL_BITS) */
6181f0ac6a5Smrg              	    puts ("hppa2.0"); break;
6191f0ac6a5Smrg              #endif
6201f0ac6a5Smrg              	default: puts ("hppa1.0"); break;
6211f0ac6a5Smrg              	}
6221f0ac6a5Smrg                  exit (0);
6231f0ac6a5Smrg              }
6241f0ac6a5SmrgEOF
6251f0ac6a5Smrg		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
6261f0ac6a5Smrg		    test -z "$HP_ARCH" && HP_ARCH=hppa
6271f0ac6a5Smrg		fi ;;
6281f0ac6a5Smrg	esac
6291f0ac6a5Smrg	if [ ${HP_ARCH} = "hppa2.0w" ]
6301f0ac6a5Smrg	then
631e5410a46Smrg	    eval $set_cc_for_build
632e5410a46Smrg
633e5410a46Smrg	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
634e5410a46Smrg	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
635e5410a46Smrg	    # generating 64-bit code.  GNU and HP use different nomenclature:
636e5410a46Smrg	    #
637e5410a46Smrg	    # $ CC_FOR_BUILD=cc ./config.guess
638e5410a46Smrg	    # => hppa2.0w-hp-hpux11.23
639e5410a46Smrg	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
640e5410a46Smrg	    # => hppa64-hp-hpux11.23
641e5410a46Smrg
642e5410a46Smrg	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
643e5410a46Smrg		grep __LP64__ >/dev/null
6441f0ac6a5Smrg	    then
6451f0ac6a5Smrg		HP_ARCH="hppa2.0w"
6461f0ac6a5Smrg	    else
6471f0ac6a5Smrg		HP_ARCH="hppa64"
6481f0ac6a5Smrg	    fi
6491f0ac6a5Smrg	fi
6501f0ac6a5Smrg	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
651e5410a46Smrg	exit ;;
6521f0ac6a5Smrg    ia64:HP-UX:*:*)
6531f0ac6a5Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
6541f0ac6a5Smrg	echo ia64-hp-hpux${HPUX_REV}
655e5410a46Smrg	exit ;;
6561f0ac6a5Smrg    3050*:HI-UX:*:*)
6571f0ac6a5Smrg	eval $set_cc_for_build
6581f0ac6a5Smrg	sed 's/^	//' << EOF >$dummy.c
6591f0ac6a5Smrg	#include <unistd.h>
6601f0ac6a5Smrg	int
6611f0ac6a5Smrg	main ()
6621f0ac6a5Smrg	{
6631f0ac6a5Smrg	  long cpu = sysconf (_SC_CPU_VERSION);
6641f0ac6a5Smrg	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
6651f0ac6a5Smrg	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
6661f0ac6a5Smrg	     results, however.  */
6671f0ac6a5Smrg	  if (CPU_IS_PA_RISC (cpu))
6681f0ac6a5Smrg	    {
6691f0ac6a5Smrg	      switch (cpu)
6701f0ac6a5Smrg		{
6711f0ac6a5Smrg		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
6721f0ac6a5Smrg		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
6731f0ac6a5Smrg		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
6741f0ac6a5Smrg		  default: puts ("hppa-hitachi-hiuxwe2"); break;
6751f0ac6a5Smrg		}
6761f0ac6a5Smrg	    }
6771f0ac6a5Smrg	  else if (CPU_IS_HP_MC68K (cpu))
6781f0ac6a5Smrg	    puts ("m68k-hitachi-hiuxwe2");
6791f0ac6a5Smrg	  else puts ("unknown-hitachi-hiuxwe2");
6801f0ac6a5Smrg	  exit (0);
6811f0ac6a5Smrg	}
6821f0ac6a5SmrgEOF
683e5410a46Smrg	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
684e5410a46Smrg		{ echo "$SYSTEM_NAME"; exit; }
6851f0ac6a5Smrg	echo unknown-hitachi-hiuxwe2
686e5410a46Smrg	exit ;;
6871f0ac6a5Smrg    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
6881f0ac6a5Smrg	echo hppa1.1-hp-bsd
689e5410a46Smrg	exit ;;
6901f0ac6a5Smrg    9000/8??:4.3bsd:*:*)
6911f0ac6a5Smrg	echo hppa1.0-hp-bsd
692e5410a46Smrg	exit ;;
6931f0ac6a5Smrg    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
6941f0ac6a5Smrg	echo hppa1.0-hp-mpeix
695e5410a46Smrg	exit ;;
6961f0ac6a5Smrg    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
6971f0ac6a5Smrg	echo hppa1.1-hp-osf
698e5410a46Smrg	exit ;;
6991f0ac6a5Smrg    hp8??:OSF1:*:*)
7001f0ac6a5Smrg	echo hppa1.0-hp-osf
701e5410a46Smrg	exit ;;
7021f0ac6a5Smrg    i*86:OSF1:*:*)
7031f0ac6a5Smrg	if [ -x /usr/sbin/sysversion ] ; then
7041f0ac6a5Smrg	    echo ${UNAME_MACHINE}-unknown-osf1mk
7051f0ac6a5Smrg	else
7061f0ac6a5Smrg	    echo ${UNAME_MACHINE}-unknown-osf1
7071f0ac6a5Smrg	fi
708e5410a46Smrg	exit ;;
7091f0ac6a5Smrg    parisc*:Lites*:*:*)
7101f0ac6a5Smrg	echo hppa1.1-hp-lites
711e5410a46Smrg	exit ;;
7121f0ac6a5Smrg    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
7131f0ac6a5Smrg	echo c1-convex-bsd
714e5410a46Smrg        exit ;;
7151f0ac6a5Smrg    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
7161f0ac6a5Smrg	if getsysinfo -f scalar_acc
7171f0ac6a5Smrg	then echo c32-convex-bsd
7181f0ac6a5Smrg	else echo c2-convex-bsd
7191f0ac6a5Smrg	fi
720e5410a46Smrg        exit ;;
7211f0ac6a5Smrg    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
7221f0ac6a5Smrg	echo c34-convex-bsd
723e5410a46Smrg        exit ;;
7241f0ac6a5Smrg    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
7251f0ac6a5Smrg	echo c38-convex-bsd
726e5410a46Smrg        exit ;;
7271f0ac6a5Smrg    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
7281f0ac6a5Smrg	echo c4-convex-bsd
729e5410a46Smrg        exit ;;
7301f0ac6a5Smrg    CRAY*Y-MP:*:*:*)
7311f0ac6a5Smrg	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
732e5410a46Smrg	exit ;;
7331f0ac6a5Smrg    CRAY*[A-Z]90:*:*:*)
7341f0ac6a5Smrg	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
7351f0ac6a5Smrg	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
7361f0ac6a5Smrg	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
7371f0ac6a5Smrg	      -e 's/\.[^.]*$/.X/'
738e5410a46Smrg	exit ;;
7391f0ac6a5Smrg    CRAY*TS:*:*:*)
7401f0ac6a5Smrg	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
741e5410a46Smrg	exit ;;
7421f0ac6a5Smrg    CRAY*T3E:*:*:*)
7431f0ac6a5Smrg	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
744e5410a46Smrg	exit ;;
7451f0ac6a5Smrg    CRAY*SV1:*:*:*)
7461f0ac6a5Smrg	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
747e5410a46Smrg	exit ;;
7481f0ac6a5Smrg    *:UNICOS/mp:*:*)
749e5410a46Smrg	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
750e5410a46Smrg	exit ;;
7511f0ac6a5Smrg    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
7521f0ac6a5Smrg	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
7531f0ac6a5Smrg        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
7541f0ac6a5Smrg        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
7551f0ac6a5Smrg        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
756e5410a46Smrg        exit ;;
757e5410a46Smrg    5000:UNIX_System_V:4.*:*)
758e5410a46Smrg        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
759e5410a46Smrg        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
760e5410a46Smrg        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
761e5410a46Smrg	exit ;;
7621f0ac6a5Smrg    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
7631f0ac6a5Smrg	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
764e5410a46Smrg	exit ;;
7651f0ac6a5Smrg    sparc*:BSD/OS:*:*)
7661f0ac6a5Smrg	echo sparc-unknown-bsdi${UNAME_RELEASE}
767e5410a46Smrg	exit ;;
7681f0ac6a5Smrg    *:BSD/OS:*:*)
7691f0ac6a5Smrg	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
770e5410a46Smrg	exit ;;
771e5410a46Smrg    *:FreeBSD:*:*)
772e5410a46Smrg	case ${UNAME_MACHINE} in
773e5410a46Smrg	    pc98)
774e5410a46Smrg		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
775e5410a46Smrg	    amd64)
776e5410a46Smrg		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
777e5410a46Smrg	    *)
778e5410a46Smrg		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
779e5410a46Smrg	esac
780e5410a46Smrg	exit ;;
7811f0ac6a5Smrg    i*:CYGWIN*:*)
7821f0ac6a5Smrg	echo ${UNAME_MACHINE}-pc-cygwin
783e5410a46Smrg	exit ;;
784e5410a46Smrg    *:MINGW*:*)
7851f0ac6a5Smrg	echo ${UNAME_MACHINE}-pc-mingw32
786e5410a46Smrg	exit ;;
787e5410a46Smrg    i*:windows32*:*)
788e5410a46Smrg    	# uname -m includes "-pc" on this system.
789e5410a46Smrg    	echo ${UNAME_MACHINE}-mingw32
790e5410a46Smrg	exit ;;
7911f0ac6a5Smrg    i*:PW*:*)
7921f0ac6a5Smrg	echo ${UNAME_MACHINE}-pc-pw32
793e5410a46Smrg	exit ;;
794e5410a46Smrg    *:Interix*:[3456]*)
795e5410a46Smrg    	case ${UNAME_MACHINE} in
796e5410a46Smrg	    x86)
797e5410a46Smrg		echo i586-pc-interix${UNAME_RELEASE}
798e5410a46Smrg		exit ;;
799e5410a46Smrg	    EM64T | authenticamd)
800e5410a46Smrg		echo x86_64-unknown-interix${UNAME_RELEASE}
801e5410a46Smrg		exit ;;
802e5410a46Smrg	    IA64)
803e5410a46Smrg		echo ia64-unknown-interix${UNAME_RELEASE}
804e5410a46Smrg		exit ;;
805e5410a46Smrg	esac ;;
8061f0ac6a5Smrg    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
8071f0ac6a5Smrg	echo i${UNAME_MACHINE}-pc-mks
808e5410a46Smrg	exit ;;
8091f0ac6a5Smrg    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
8101f0ac6a5Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
8111f0ac6a5Smrg	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
8121f0ac6a5Smrg	# UNAME_MACHINE based on the output of uname instead of i386?
8131f0ac6a5Smrg	echo i586-pc-interix
814e5410a46Smrg	exit ;;
8151f0ac6a5Smrg    i*:UWIN*:*)
8161f0ac6a5Smrg	echo ${UNAME_MACHINE}-pc-uwin
817e5410a46Smrg	exit ;;
818e5410a46Smrg    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
819e5410a46Smrg	echo x86_64-unknown-cygwin
820e5410a46Smrg	exit ;;
8211f0ac6a5Smrg    p*:CYGWIN*:*)
8221f0ac6a5Smrg	echo powerpcle-unknown-cygwin
823e5410a46Smrg	exit ;;
8241f0ac6a5Smrg    prep*:SunOS:5.*:*)
8251f0ac6a5Smrg	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
826e5410a46Smrg	exit ;;
8271f0ac6a5Smrg    *:GNU:*:*)
828e5410a46Smrg	# the GNU system
8291f0ac6a5Smrg	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
830e5410a46Smrg	exit ;;
831e5410a46Smrg    *:GNU/*:*:*)
832e5410a46Smrg	# other systems with GNU libc and userland
833e5410a46Smrg	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
834e5410a46Smrg	exit ;;
8351f0ac6a5Smrg    i*86:Minix:*:*)
8361f0ac6a5Smrg	echo ${UNAME_MACHINE}-pc-minix
837e5410a46Smrg	exit ;;
8381f0ac6a5Smrg    arm*:Linux:*:*)
839e5410a46Smrg	eval $set_cc_for_build
840e5410a46Smrg	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
841e5410a46Smrg	    | grep -q __ARM_EABI__
842e5410a46Smrg	then
843e5410a46Smrg	    echo ${UNAME_MACHINE}-unknown-linux-gnu
844e5410a46Smrg	else
845e5410a46Smrg	    echo ${UNAME_MACHINE}-unknown-linux-gnueabi
846e5410a46Smrg	fi
847e5410a46Smrg	exit ;;
848e5410a46Smrg    avr32*:Linux:*:*)
8491f0ac6a5Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
850e5410a46Smrg	exit ;;
8511f0ac6a5Smrg    cris:Linux:*:*)
8521f0ac6a5Smrg	echo cris-axis-linux-gnu
853e5410a46Smrg	exit ;;
854e5410a46Smrg    crisv32:Linux:*:*)
855e5410a46Smrg	echo crisv32-axis-linux-gnu
856e5410a46Smrg	exit ;;
857e5410a46Smrg    frv:Linux:*:*)
858e5410a46Smrg    	echo frv-unknown-linux-gnu
859e5410a46Smrg	exit ;;
8601f0ac6a5Smrg    ia64:Linux:*:*)
8611f0ac6a5Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
862e5410a46Smrg	exit ;;
863e5410a46Smrg    m32r*:Linux:*:*)
864e5410a46Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
865e5410a46Smrg	exit ;;
8661f0ac6a5Smrg    m68*:Linux:*:*)
8671f0ac6a5Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
868e5410a46Smrg	exit ;;
8691f0ac6a5Smrg    mips:Linux:*:*)
8701f0ac6a5Smrg	eval $set_cc_for_build
8711f0ac6a5Smrg	sed 's/^	//' << EOF >$dummy.c
8721f0ac6a5Smrg	#undef CPU
8731f0ac6a5Smrg	#undef mips
8741f0ac6a5Smrg	#undef mipsel
8751f0ac6a5Smrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
8761f0ac6a5Smrg	CPU=mipsel
8771f0ac6a5Smrg	#else
8781f0ac6a5Smrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
8791f0ac6a5Smrg	CPU=mips
8801f0ac6a5Smrg	#else
8811f0ac6a5Smrg	CPU=
8821f0ac6a5Smrg	#endif
8831f0ac6a5Smrg	#endif
8841f0ac6a5SmrgEOF
885e5410a46Smrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
886e5410a46Smrg	    /^CPU/{
887e5410a46Smrg		s: ::g
888e5410a46Smrg		p
889e5410a46Smrg	    }'`"
890e5410a46Smrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
8911f0ac6a5Smrg	;;
8921f0ac6a5Smrg    mips64:Linux:*:*)
8931f0ac6a5Smrg	eval $set_cc_for_build
8941f0ac6a5Smrg	sed 's/^	//' << EOF >$dummy.c
8951f0ac6a5Smrg	#undef CPU
8961f0ac6a5Smrg	#undef mips64
8971f0ac6a5Smrg	#undef mips64el
8981f0ac6a5Smrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
8991f0ac6a5Smrg	CPU=mips64el
9001f0ac6a5Smrg	#else
9011f0ac6a5Smrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
9021f0ac6a5Smrg	CPU=mips64
9031f0ac6a5Smrg	#else
9041f0ac6a5Smrg	CPU=
9051f0ac6a5Smrg	#endif
9061f0ac6a5Smrg	#endif
9071f0ac6a5SmrgEOF
908e5410a46Smrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
909e5410a46Smrg	    /^CPU/{
910e5410a46Smrg		s: ::g
911e5410a46Smrg		p
912e5410a46Smrg	    }'`"
913e5410a46Smrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
9141f0ac6a5Smrg	;;
915e5410a46Smrg    or32:Linux:*:*)
916e5410a46Smrg	echo or32-unknown-linux-gnu
917e5410a46Smrg	exit ;;
9181f0ac6a5Smrg    ppc:Linux:*:*)
9191f0ac6a5Smrg	echo powerpc-unknown-linux-gnu
920e5410a46Smrg	exit ;;
9211f0ac6a5Smrg    ppc64:Linux:*:*)
9221f0ac6a5Smrg	echo powerpc64-unknown-linux-gnu
923e5410a46Smrg	exit ;;
9241f0ac6a5Smrg    alpha:Linux:*:*)
9251f0ac6a5Smrg	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
9261f0ac6a5Smrg	  EV5)   UNAME_MACHINE=alphaev5 ;;
9271f0ac6a5Smrg	  EV56)  UNAME_MACHINE=alphaev56 ;;
9281f0ac6a5Smrg	  PCA56) UNAME_MACHINE=alphapca56 ;;
9291f0ac6a5Smrg	  PCA57) UNAME_MACHINE=alphapca56 ;;
9301f0ac6a5Smrg	  EV6)   UNAME_MACHINE=alphaev6 ;;
9311f0ac6a5Smrg	  EV67)  UNAME_MACHINE=alphaev67 ;;
9321f0ac6a5Smrg	  EV68*) UNAME_MACHINE=alphaev68 ;;
9331f0ac6a5Smrg        esac
9341f0ac6a5Smrg	objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
9351f0ac6a5Smrg	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
9361f0ac6a5Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
937e5410a46Smrg	exit ;;
9381f0ac6a5Smrg    parisc:Linux:*:* | hppa:Linux:*:*)
9391f0ac6a5Smrg	# Look for CPU level
9401f0ac6a5Smrg	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
9411f0ac6a5Smrg	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
9421f0ac6a5Smrg	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
9431f0ac6a5Smrg	  *)    echo hppa-unknown-linux-gnu ;;
9441f0ac6a5Smrg	esac
945e5410a46Smrg	exit ;;
9461f0ac6a5Smrg    parisc64:Linux:*:* | hppa64:Linux:*:*)
9471f0ac6a5Smrg	echo hppa64-unknown-linux-gnu
948e5410a46Smrg	exit ;;
9491f0ac6a5Smrg    s390:Linux:*:* | s390x:Linux:*:*)
9501f0ac6a5Smrg	echo ${UNAME_MACHINE}-ibm-linux
951e5410a46Smrg	exit ;;
9521f0ac6a5Smrg    sh64*:Linux:*:*)
9531f0ac6a5Smrg    	echo ${UNAME_MACHINE}-unknown-linux-gnu
954e5410a46Smrg	exit ;;
9551f0ac6a5Smrg    sh*:Linux:*:*)
9561f0ac6a5Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
957e5410a46Smrg	exit ;;
9581f0ac6a5Smrg    sparc:Linux:*:* | sparc64:Linux:*:*)
9591f0ac6a5Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
960e5410a46Smrg	exit ;;
961e5410a46Smrg    vax:Linux:*:*)
962e5410a46Smrg	echo ${UNAME_MACHINE}-dec-linux-gnu
963e5410a46Smrg	exit ;;
9641f0ac6a5Smrg    x86_64:Linux:*:*)
9651f0ac6a5Smrg	echo x86_64-unknown-linux-gnu
966e5410a46Smrg	exit ;;
967e5410a46Smrg    xtensa*:Linux:*:*)
968e5410a46Smrg    	echo ${UNAME_MACHINE}-unknown-linux-gnu
969e5410a46Smrg	exit ;;
9701f0ac6a5Smrg    i*86:Linux:*:*)
9711f0ac6a5Smrg	# The BFD linker knows what the default object file format is, so
9721f0ac6a5Smrg	# first see if it will tell us. cd to the root directory to prevent
9731f0ac6a5Smrg	# problems with other programs or directories called `ld' in the path.
9741f0ac6a5Smrg	# Set LC_ALL=C to ensure ld outputs messages in English.
9751f0ac6a5Smrg	ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
9761f0ac6a5Smrg			 | sed -ne '/supported targets:/!d
9771f0ac6a5Smrg				    s/[ 	][ 	]*/ /g
9781f0ac6a5Smrg				    s/.*supported targets: *//
9791f0ac6a5Smrg				    s/ .*//
9801f0ac6a5Smrg				    p'`
9811f0ac6a5Smrg        case "$ld_supported_targets" in
9821f0ac6a5Smrg	  elf32-i386)
9831f0ac6a5Smrg		TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
9841f0ac6a5Smrg		;;
9851f0ac6a5Smrg	  a.out-i386-linux)
9861f0ac6a5Smrg		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
987e5410a46Smrg		exit ;;
9881f0ac6a5Smrg	  coff-i386)
9891f0ac6a5Smrg		echo "${UNAME_MACHINE}-pc-linux-gnucoff"
990e5410a46Smrg		exit ;;
9911f0ac6a5Smrg	  "")
9921f0ac6a5Smrg		# Either a pre-BFD a.out linker (linux-gnuoldld) or
9931f0ac6a5Smrg		# one that does not give us useful --help.
9941f0ac6a5Smrg		echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
995e5410a46Smrg		exit ;;
9961f0ac6a5Smrg	esac
9971f0ac6a5Smrg	# Determine whether the default compiler is a.out or elf
9981f0ac6a5Smrg	eval $set_cc_for_build
9991f0ac6a5Smrg	sed 's/^	//' << EOF >$dummy.c
10001f0ac6a5Smrg	#include <features.h>
10011f0ac6a5Smrg	#ifdef __ELF__
10021f0ac6a5Smrg	# ifdef __GLIBC__
10031f0ac6a5Smrg	#  if __GLIBC__ >= 2
10041f0ac6a5Smrg	LIBC=gnu
10051f0ac6a5Smrg	#  else
10061f0ac6a5Smrg	LIBC=gnulibc1
10071f0ac6a5Smrg	#  endif
10081f0ac6a5Smrg	# else
10091f0ac6a5Smrg	LIBC=gnulibc1
10101f0ac6a5Smrg	# endif
10111f0ac6a5Smrg	#else
1012e5410a46Smrg	#if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
10131f0ac6a5Smrg	LIBC=gnu
10141f0ac6a5Smrg	#else
10151f0ac6a5Smrg	LIBC=gnuaout
10161f0ac6a5Smrg	#endif
10171f0ac6a5Smrg	#endif
1018e5410a46Smrg	#ifdef __dietlibc__
1019e5410a46Smrg	LIBC=dietlibc
1020e5410a46Smrg	#endif
10211f0ac6a5SmrgEOF
1022e5410a46Smrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
1023e5410a46Smrg	    /^LIBC/{
1024e5410a46Smrg		s: ::g
1025e5410a46Smrg		p
1026e5410a46Smrg	    }'`"
1027e5410a46Smrg	test x"${LIBC}" != x && {
1028e5410a46Smrg		echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
1029e5410a46Smrg		exit
1030e5410a46Smrg	}
1031e5410a46Smrg	test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
10321f0ac6a5Smrg	;;
10331f0ac6a5Smrg    i*86:DYNIX/ptx:4*:*)
10341f0ac6a5Smrg	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
10351f0ac6a5Smrg	# earlier versions are messed up and put the nodename in both
10361f0ac6a5Smrg	# sysname and nodename.
10371f0ac6a5Smrg	echo i386-sequent-sysv4
1038e5410a46Smrg	exit ;;
10391f0ac6a5Smrg    i*86:UNIX_SV:4.2MP:2.*)
10401f0ac6a5Smrg        # Unixware is an offshoot of SVR4, but it has its own version
10411f0ac6a5Smrg        # number series starting with 2...
10421f0ac6a5Smrg        # I am not positive that other SVR4 systems won't match this,
10431f0ac6a5Smrg	# I just have to hope.  -- rms.
10441f0ac6a5Smrg        # Use sysv4.2uw... so that sysv4* matches it.
10451f0ac6a5Smrg	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
1046e5410a46Smrg	exit ;;
10471f0ac6a5Smrg    i*86:OS/2:*:*)
10481f0ac6a5Smrg	# If we were able to find `uname', then EMX Unix compatibility
10491f0ac6a5Smrg	# is probably installed.
10501f0ac6a5Smrg	echo ${UNAME_MACHINE}-pc-os2-emx
1051e5410a46Smrg	exit ;;
10521f0ac6a5Smrg    i*86:XTS-300:*:STOP)
10531f0ac6a5Smrg	echo ${UNAME_MACHINE}-unknown-stop
1054e5410a46Smrg	exit ;;
10551f0ac6a5Smrg    i*86:atheos:*:*)
10561f0ac6a5Smrg	echo ${UNAME_MACHINE}-unknown-atheos
1057e5410a46Smrg	exit ;;
1058e5410a46Smrg    i*86:syllable:*:*)
1059e5410a46Smrg	echo ${UNAME_MACHINE}-pc-syllable
1060e5410a46Smrg	exit ;;
10611f0ac6a5Smrg    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
10621f0ac6a5Smrg	echo i386-unknown-lynxos${UNAME_RELEASE}
1063e5410a46Smrg	exit ;;
10641f0ac6a5Smrg    i*86:*DOS:*:*)
10651f0ac6a5Smrg	echo ${UNAME_MACHINE}-pc-msdosdjgpp
1066e5410a46Smrg	exit ;;
10671f0ac6a5Smrg    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
10681f0ac6a5Smrg	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
10691f0ac6a5Smrg	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
10701f0ac6a5Smrg		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
10711f0ac6a5Smrg	else
10721f0ac6a5Smrg		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
10731f0ac6a5Smrg	fi
1074e5410a46Smrg	exit ;;
1075e5410a46Smrg    i*86:*:5:[678]*)
1076e5410a46Smrg    	# UnixWare 7.x, OpenUNIX and OpenServer 6.
10771f0ac6a5Smrg	case `/bin/uname -X | grep "^Machine"` in
10781f0ac6a5Smrg	    *486*)	     UNAME_MACHINE=i486 ;;
10791f0ac6a5Smrg	    *Pentium)	     UNAME_MACHINE=i586 ;;
10801f0ac6a5Smrg	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
10811f0ac6a5Smrg	esac
10821f0ac6a5Smrg	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
1083e5410a46Smrg	exit ;;
10841f0ac6a5Smrg    i*86:*:3.2:*)
10851f0ac6a5Smrg	if test -f /usr/options/cb.name; then
10861f0ac6a5Smrg		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
10871f0ac6a5Smrg		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
10881f0ac6a5Smrg	elif /bin/uname -X 2>/dev/null >/dev/null ; then
10891f0ac6a5Smrg		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
10901f0ac6a5Smrg		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
10911f0ac6a5Smrg		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
10921f0ac6a5Smrg			&& UNAME_MACHINE=i586
10931f0ac6a5Smrg		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
10941f0ac6a5Smrg			&& UNAME_MACHINE=i686
10951f0ac6a5Smrg		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
10961f0ac6a5Smrg			&& UNAME_MACHINE=i686
10971f0ac6a5Smrg		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
10981f0ac6a5Smrg	else
10991f0ac6a5Smrg		echo ${UNAME_MACHINE}-pc-sysv32
11001f0ac6a5Smrg	fi
1101e5410a46Smrg	exit ;;
11021f0ac6a5Smrg    pc:*:*:*)
11031f0ac6a5Smrg	# Left here for compatibility:
11041f0ac6a5Smrg        # uname -m prints for DJGPP always 'pc', but it prints nothing about
11051f0ac6a5Smrg        # the processor, so we play safe by assuming i386.
11061f0ac6a5Smrg	echo i386-pc-msdosdjgpp
1107e5410a46Smrg        exit ;;
11081f0ac6a5Smrg    Intel:Mach:3*:*)
11091f0ac6a5Smrg	echo i386-pc-mach3
1110e5410a46Smrg	exit ;;
11111f0ac6a5Smrg    paragon:*:*:*)
11121f0ac6a5Smrg	echo i860-intel-osf1
1113e5410a46Smrg	exit ;;
11141f0ac6a5Smrg    i860:*:4.*:*) # i860-SVR4
11151f0ac6a5Smrg	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
11161f0ac6a5Smrg	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
11171f0ac6a5Smrg	else # Add other i860-SVR4 vendors below as they are discovered.
11181f0ac6a5Smrg	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
11191f0ac6a5Smrg	fi
1120e5410a46Smrg	exit ;;
11211f0ac6a5Smrg    mini*:CTIX:SYS*5:*)
11221f0ac6a5Smrg	# "miniframe"
11231f0ac6a5Smrg	echo m68010-convergent-sysv
1124e5410a46Smrg	exit ;;
11251f0ac6a5Smrg    mc68k:UNIX:SYSTEM5:3.51m)
11261f0ac6a5Smrg	echo m68k-convergent-sysv
1127e5410a46Smrg	exit ;;
11281f0ac6a5Smrg    M680?0:D-NIX:5.3:*)
11291f0ac6a5Smrg	echo m68k-diab-dnix
1130e5410a46Smrg	exit ;;
1131e5410a46Smrg    M68*:*:R3V[5678]*:*)
1132e5410a46Smrg	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
1133e5410a46Smrg    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)
11341f0ac6a5Smrg	OS_REL=''
11351f0ac6a5Smrg	test -r /etc/.relid \
11361f0ac6a5Smrg	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
11371f0ac6a5Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1138e5410a46Smrg	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
11391f0ac6a5Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1140e5410a46Smrg	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
11411f0ac6a5Smrg    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
11421f0ac6a5Smrg        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1143e5410a46Smrg          && { echo i486-ncr-sysv4; exit; } ;;
11441f0ac6a5Smrg    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
11451f0ac6a5Smrg	echo m68k-unknown-lynxos${UNAME_RELEASE}
1146e5410a46Smrg	exit ;;
11471f0ac6a5Smrg    mc68030:UNIX_System_V:4.*:*)
11481f0ac6a5Smrg	echo m68k-atari-sysv4
1149e5410a46Smrg	exit ;;
11501f0ac6a5Smrg    TSUNAMI:LynxOS:2.*:*)
11511f0ac6a5Smrg	echo sparc-unknown-lynxos${UNAME_RELEASE}
1152e5410a46Smrg	exit ;;
11531f0ac6a5Smrg    rs6000:LynxOS:2.*:*)
11541f0ac6a5Smrg	echo rs6000-unknown-lynxos${UNAME_RELEASE}
1155e5410a46Smrg	exit ;;
11561f0ac6a5Smrg    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
11571f0ac6a5Smrg	echo powerpc-unknown-lynxos${UNAME_RELEASE}
1158e5410a46Smrg	exit ;;
11591f0ac6a5Smrg    SM[BE]S:UNIX_SV:*:*)
11601f0ac6a5Smrg	echo mips-dde-sysv${UNAME_RELEASE}
1161e5410a46Smrg	exit ;;
11621f0ac6a5Smrg    RM*:ReliantUNIX-*:*:*)
11631f0ac6a5Smrg	echo mips-sni-sysv4
1164e5410a46Smrg	exit ;;
11651f0ac6a5Smrg    RM*:SINIX-*:*:*)
11661f0ac6a5Smrg	echo mips-sni-sysv4
1167e5410a46Smrg	exit ;;
11681f0ac6a5Smrg    *:SINIX-*:*:*)
11691f0ac6a5Smrg	if uname -p 2>/dev/null >/dev/null ; then
11701f0ac6a5Smrg		UNAME_MACHINE=`(uname -p) 2>/dev/null`
11711f0ac6a5Smrg		echo ${UNAME_MACHINE}-sni-sysv4
11721f0ac6a5Smrg	else
11731f0ac6a5Smrg		echo ns32k-sni-sysv
11741f0ac6a5Smrg	fi
1175e5410a46Smrg	exit ;;
11761f0ac6a5Smrg    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
11771f0ac6a5Smrg                      # says <Richard.M.Bartel@ccMail.Census.GOV>
11781f0ac6a5Smrg        echo i586-unisys-sysv4
1179e5410a46Smrg        exit ;;
11801f0ac6a5Smrg    *:UNIX_System_V:4*:FTX*)
11811f0ac6a5Smrg	# From Gerald Hewes <hewes@openmarket.com>.
11821f0ac6a5Smrg	# How about differentiating between stratus architectures? -djm
11831f0ac6a5Smrg	echo hppa1.1-stratus-sysv4
1184e5410a46Smrg	exit ;;
11851f0ac6a5Smrg    *:*:*:FTX*)
11861f0ac6a5Smrg	# From seanf@swdc.stratus.com.
11871f0ac6a5Smrg	echo i860-stratus-sysv4
1188e5410a46Smrg	exit ;;
1189e5410a46Smrg    i*86:VOS:*:*)
1190e5410a46Smrg	# From Paul.Green@stratus.com.
1191e5410a46Smrg	echo ${UNAME_MACHINE}-stratus-vos
1192e5410a46Smrg	exit ;;
11931f0ac6a5Smrg    *:VOS:*:*)
11941f0ac6a5Smrg	# From Paul.Green@stratus.com.
11951f0ac6a5Smrg	echo hppa1.1-stratus-vos
1196e5410a46Smrg	exit ;;
11971f0ac6a5Smrg    mc68*:A/UX:*:*)
11981f0ac6a5Smrg	echo m68k-apple-aux${UNAME_RELEASE}
1199e5410a46Smrg	exit ;;
12001f0ac6a5Smrg    news*:NEWS-OS:6*:*)
12011f0ac6a5Smrg	echo mips-sony-newsos6
1202e5410a46Smrg	exit ;;
12031f0ac6a5Smrg    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
12041f0ac6a5Smrg	if [ -d /usr/nec ]; then
12051f0ac6a5Smrg	        echo mips-nec-sysv${UNAME_RELEASE}
12061f0ac6a5Smrg	else
12071f0ac6a5Smrg	        echo mips-unknown-sysv${UNAME_RELEASE}
12081f0ac6a5Smrg	fi
1209e5410a46Smrg        exit ;;
12101f0ac6a5Smrg    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
12111f0ac6a5Smrg	echo powerpc-be-beos
1212e5410a46Smrg	exit ;;
12131f0ac6a5Smrg    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
12141f0ac6a5Smrg	echo powerpc-apple-beos
1215e5410a46Smrg	exit ;;
12161f0ac6a5Smrg    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
12171f0ac6a5Smrg	echo i586-pc-beos
1218e5410a46Smrg	exit ;;
12191f0ac6a5Smrg    SX-4:SUPER-UX:*:*)
12201f0ac6a5Smrg	echo sx4-nec-superux${UNAME_RELEASE}
1221e5410a46Smrg	exit ;;
12221f0ac6a5Smrg    SX-5:SUPER-UX:*:*)
12231f0ac6a5Smrg	echo sx5-nec-superux${UNAME_RELEASE}
1224e5410a46Smrg	exit ;;
12251f0ac6a5Smrg    SX-6:SUPER-UX:*:*)
12261f0ac6a5Smrg	echo sx6-nec-superux${UNAME_RELEASE}
1227e5410a46Smrg	exit ;;
1228e5410a46Smrg    SX-7:SUPER-UX:*:*)
1229e5410a46Smrg	echo sx7-nec-superux${UNAME_RELEASE}
1230e5410a46Smrg	exit ;;
1231e5410a46Smrg    SX-8:SUPER-UX:*:*)
1232e5410a46Smrg	echo sx8-nec-superux${UNAME_RELEASE}
1233e5410a46Smrg	exit ;;
1234e5410a46Smrg    SX-8R:SUPER-UX:*:*)
1235e5410a46Smrg	echo sx8r-nec-superux${UNAME_RELEASE}
1236e5410a46Smrg	exit ;;
12371f0ac6a5Smrg    Power*:Rhapsody:*:*)
12381f0ac6a5Smrg	echo powerpc-apple-rhapsody${UNAME_RELEASE}
1239e5410a46Smrg	exit ;;
12401f0ac6a5Smrg    *:Rhapsody:*:*)
12411f0ac6a5Smrg	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
1242e5410a46Smrg	exit ;;
12431f0ac6a5Smrg    *:Darwin:*:*)
1244e5410a46Smrg	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
1245e5410a46Smrg	case $UNAME_PROCESSOR in
1246e5410a46Smrg	    unknown) UNAME_PROCESSOR=powerpc ;;
12471f0ac6a5Smrg	esac
12481f0ac6a5Smrg	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
1249e5410a46Smrg	exit ;;
12501f0ac6a5Smrg    *:procnto*:*:* | *:QNX:[0123456789]*:*)
12511f0ac6a5Smrg	UNAME_PROCESSOR=`uname -p`
12521f0ac6a5Smrg	if test "$UNAME_PROCESSOR" = "x86"; then
12531f0ac6a5Smrg		UNAME_PROCESSOR=i386
12541f0ac6a5Smrg		UNAME_MACHINE=pc
12551f0ac6a5Smrg	fi
12561f0ac6a5Smrg	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
1257e5410a46Smrg	exit ;;
12581f0ac6a5Smrg    *:QNX:*:4*)
12591f0ac6a5Smrg	echo i386-pc-qnx
1260e5410a46Smrg	exit ;;
1261e5410a46Smrg    NSE-?:NONSTOP_KERNEL:*:*)
1262e5410a46Smrg	echo nse-tandem-nsk${UNAME_RELEASE}
1263e5410a46Smrg	exit ;;
1264e5410a46Smrg    NSR-?:NONSTOP_KERNEL:*:*)
12651f0ac6a5Smrg	echo nsr-tandem-nsk${UNAME_RELEASE}
1266e5410a46Smrg	exit ;;
12671f0ac6a5Smrg    *:NonStop-UX:*:*)
12681f0ac6a5Smrg	echo mips-compaq-nonstopux
1269e5410a46Smrg	exit ;;
12701f0ac6a5Smrg    BS2000:POSIX*:*:*)
12711f0ac6a5Smrg	echo bs2000-siemens-sysv
1272e5410a46Smrg	exit ;;
12731f0ac6a5Smrg    DS/*:UNIX_System_V:*:*)
12741f0ac6a5Smrg	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
1275e5410a46Smrg	exit ;;
12761f0ac6a5Smrg    *:Plan9:*:*)
12771f0ac6a5Smrg	# "uname -m" is not consistent, so use $cputype instead. 386
12781f0ac6a5Smrg	# is converted to i386 for consistency with other x86
12791f0ac6a5Smrg	# operating systems.
12801f0ac6a5Smrg	if test "$cputype" = "386"; then
12811f0ac6a5Smrg	    UNAME_MACHINE=i386
12821f0ac6a5Smrg	else
12831f0ac6a5Smrg	    UNAME_MACHINE="$cputype"
12841f0ac6a5Smrg	fi
12851f0ac6a5Smrg	echo ${UNAME_MACHINE}-unknown-plan9
1286e5410a46Smrg	exit ;;
12871f0ac6a5Smrg    *:TOPS-10:*:*)
12881f0ac6a5Smrg	echo pdp10-unknown-tops10
1289e5410a46Smrg	exit ;;
12901f0ac6a5Smrg    *:TENEX:*:*)
12911f0ac6a5Smrg	echo pdp10-unknown-tenex
1292e5410a46Smrg	exit ;;
12931f0ac6a5Smrg    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
12941f0ac6a5Smrg	echo pdp10-dec-tops20
1295e5410a46Smrg	exit ;;
12961f0ac6a5Smrg    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
12971f0ac6a5Smrg	echo pdp10-xkl-tops20
1298e5410a46Smrg	exit ;;
12991f0ac6a5Smrg    *:TOPS-20:*:*)
13001f0ac6a5Smrg	echo pdp10-unknown-tops20
1301e5410a46Smrg	exit ;;
13021f0ac6a5Smrg    *:ITS:*:*)
13031f0ac6a5Smrg	echo pdp10-unknown-its
1304e5410a46Smrg	exit ;;
13051f0ac6a5Smrg    SEI:*:*:SEIUX)
13061f0ac6a5Smrg        echo mips-sei-seiux${UNAME_RELEASE}
1307e5410a46Smrg	exit ;;
1308e5410a46Smrg    *:DragonFly:*:*)
1309e5410a46Smrg	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
1310e5410a46Smrg	exit ;;
1311e5410a46Smrg    *:*VMS:*:*)
1312e5410a46Smrg    	UNAME_MACHINE=`(uname -p) 2>/dev/null`
1313e5410a46Smrg	case "${UNAME_MACHINE}" in
1314e5410a46Smrg	    A*) echo alpha-dec-vms ; exit ;;
1315e5410a46Smrg	    I*) echo ia64-dec-vms ; exit ;;
1316e5410a46Smrg	    V*) echo vax-dec-vms ; exit ;;
1317e5410a46Smrg	esac ;;
1318e5410a46Smrg    *:XENIX:*:SysV)
1319e5410a46Smrg	echo i386-pc-xenix
1320e5410a46Smrg	exit ;;
1321e5410a46Smrg    i*86:skyos:*:*)
1322e5410a46Smrg	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
1323e5410a46Smrg	exit ;;
1324e5410a46Smrg    i*86:rdos:*:*)
1325e5410a46Smrg	echo ${UNAME_MACHINE}-pc-rdos
1326e5410a46Smrg	exit ;;
13271f0ac6a5Smrgesac
13281f0ac6a5Smrg
13291f0ac6a5Smrg#echo '(No uname command or uname output not recognized.)' 1>&2
13301f0ac6a5Smrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
13311f0ac6a5Smrg
13321f0ac6a5Smrgeval $set_cc_for_build
13331f0ac6a5Smrgcat >$dummy.c <<EOF
13341f0ac6a5Smrg#ifdef _SEQUENT_
13351f0ac6a5Smrg# include <sys/types.h>
13361f0ac6a5Smrg# include <sys/utsname.h>
13371f0ac6a5Smrg#endif
13381f0ac6a5Smrgmain ()
13391f0ac6a5Smrg{
13401f0ac6a5Smrg#if defined (sony)
13411f0ac6a5Smrg#if defined (MIPSEB)
13421f0ac6a5Smrg  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
13431f0ac6a5Smrg     I don't know....  */
13441f0ac6a5Smrg  printf ("mips-sony-bsd\n"); exit (0);
13451f0ac6a5Smrg#else
13461f0ac6a5Smrg#include <sys/param.h>
13471f0ac6a5Smrg  printf ("m68k-sony-newsos%s\n",
13481f0ac6a5Smrg#ifdef NEWSOS4
13491f0ac6a5Smrg          "4"
13501f0ac6a5Smrg#else
13511f0ac6a5Smrg	  ""
13521f0ac6a5Smrg#endif
13531f0ac6a5Smrg         ); exit (0);
13541f0ac6a5Smrg#endif
13551f0ac6a5Smrg#endif
13561f0ac6a5Smrg
13571f0ac6a5Smrg#if defined (__arm) && defined (__acorn) && defined (__unix)
1358e5410a46Smrg  printf ("arm-acorn-riscix\n"); exit (0);
13591f0ac6a5Smrg#endif
13601f0ac6a5Smrg
13611f0ac6a5Smrg#if defined (hp300) && !defined (hpux)
13621f0ac6a5Smrg  printf ("m68k-hp-bsd\n"); exit (0);
13631f0ac6a5Smrg#endif
13641f0ac6a5Smrg
13651f0ac6a5Smrg#if defined (NeXT)
13661f0ac6a5Smrg#if !defined (__ARCHITECTURE__)
13671f0ac6a5Smrg#define __ARCHITECTURE__ "m68k"
13681f0ac6a5Smrg#endif
13691f0ac6a5Smrg  int version;
13701f0ac6a5Smrg  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
13711f0ac6a5Smrg  if (version < 4)
13721f0ac6a5Smrg    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
13731f0ac6a5Smrg  else
13741f0ac6a5Smrg    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
13751f0ac6a5Smrg  exit (0);
13761f0ac6a5Smrg#endif
13771f0ac6a5Smrg
13781f0ac6a5Smrg#if defined (MULTIMAX) || defined (n16)
13791f0ac6a5Smrg#if defined (UMAXV)
13801f0ac6a5Smrg  printf ("ns32k-encore-sysv\n"); exit (0);
13811f0ac6a5Smrg#else
13821f0ac6a5Smrg#if defined (CMU)
13831f0ac6a5Smrg  printf ("ns32k-encore-mach\n"); exit (0);
13841f0ac6a5Smrg#else
13851f0ac6a5Smrg  printf ("ns32k-encore-bsd\n"); exit (0);
13861f0ac6a5Smrg#endif
13871f0ac6a5Smrg#endif
13881f0ac6a5Smrg#endif
13891f0ac6a5Smrg
13901f0ac6a5Smrg#if defined (__386BSD__)
13911f0ac6a5Smrg  printf ("i386-pc-bsd\n"); exit (0);
13921f0ac6a5Smrg#endif
13931f0ac6a5Smrg
13941f0ac6a5Smrg#if defined (sequent)
13951f0ac6a5Smrg#if defined (i386)
13961f0ac6a5Smrg  printf ("i386-sequent-dynix\n"); exit (0);
13971f0ac6a5Smrg#endif
13981f0ac6a5Smrg#if defined (ns32000)
13991f0ac6a5Smrg  printf ("ns32k-sequent-dynix\n"); exit (0);
14001f0ac6a5Smrg#endif
14011f0ac6a5Smrg#endif
14021f0ac6a5Smrg
14031f0ac6a5Smrg#if defined (_SEQUENT_)
14041f0ac6a5Smrg    struct utsname un;
14051f0ac6a5Smrg
14061f0ac6a5Smrg    uname(&un);
14071f0ac6a5Smrg
14081f0ac6a5Smrg    if (strncmp(un.version, "V2", 2) == 0) {
14091f0ac6a5Smrg	printf ("i386-sequent-ptx2\n"); exit (0);
14101f0ac6a5Smrg    }
14111f0ac6a5Smrg    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
14121f0ac6a5Smrg	printf ("i386-sequent-ptx1\n"); exit (0);
14131f0ac6a5Smrg    }
14141f0ac6a5Smrg    printf ("i386-sequent-ptx\n"); exit (0);
14151f0ac6a5Smrg
14161f0ac6a5Smrg#endif
14171f0ac6a5Smrg
14181f0ac6a5Smrg#if defined (vax)
14191f0ac6a5Smrg# if !defined (ultrix)
14201f0ac6a5Smrg#  include <sys/param.h>
14211f0ac6a5Smrg#  if defined (BSD)
14221f0ac6a5Smrg#   if BSD == 43
14231f0ac6a5Smrg      printf ("vax-dec-bsd4.3\n"); exit (0);
14241f0ac6a5Smrg#   else
14251f0ac6a5Smrg#    if BSD == 199006
14261f0ac6a5Smrg      printf ("vax-dec-bsd4.3reno\n"); exit (0);
14271f0ac6a5Smrg#    else
14281f0ac6a5Smrg      printf ("vax-dec-bsd\n"); exit (0);
14291f0ac6a5Smrg#    endif
14301f0ac6a5Smrg#   endif
14311f0ac6a5Smrg#  else
14321f0ac6a5Smrg    printf ("vax-dec-bsd\n"); exit (0);
14331f0ac6a5Smrg#  endif
14341f0ac6a5Smrg# else
14351f0ac6a5Smrg    printf ("vax-dec-ultrix\n"); exit (0);
14361f0ac6a5Smrg# endif
14371f0ac6a5Smrg#endif
14381f0ac6a5Smrg
14391f0ac6a5Smrg#if defined (alliant) && defined (i860)
14401f0ac6a5Smrg  printf ("i860-alliant-bsd\n"); exit (0);
14411f0ac6a5Smrg#endif
14421f0ac6a5Smrg
14431f0ac6a5Smrg  exit (1);
14441f0ac6a5Smrg}
14451f0ac6a5SmrgEOF
14461f0ac6a5Smrg
1447e5410a46Smrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
1448e5410a46Smrg	{ echo "$SYSTEM_NAME"; exit; }
14491f0ac6a5Smrg
14501f0ac6a5Smrg# Apollos put the system type in the environment.
14511f0ac6a5Smrg
1452e5410a46Smrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
14531f0ac6a5Smrg
14541f0ac6a5Smrg# Convex versions that predate uname can use getsysinfo(1)
14551f0ac6a5Smrg
14561f0ac6a5Smrgif [ -x /usr/convex/getsysinfo ]
14571f0ac6a5Smrgthen
14581f0ac6a5Smrg    case `getsysinfo -f cpu_type` in
14591f0ac6a5Smrg    c1*)
14601f0ac6a5Smrg	echo c1-convex-bsd
1461e5410a46Smrg	exit ;;
14621f0ac6a5Smrg    c2*)
14631f0ac6a5Smrg	if getsysinfo -f scalar_acc
14641f0ac6a5Smrg	then echo c32-convex-bsd
14651f0ac6a5Smrg	else echo c2-convex-bsd
14661f0ac6a5Smrg	fi
1467e5410a46Smrg	exit ;;
14681f0ac6a5Smrg    c34*)
14691f0ac6a5Smrg	echo c34-convex-bsd
1470e5410a46Smrg	exit ;;
14711f0ac6a5Smrg    c38*)
14721f0ac6a5Smrg	echo c38-convex-bsd
1473e5410a46Smrg	exit ;;
14741f0ac6a5Smrg    c4*)
14751f0ac6a5Smrg	echo c4-convex-bsd
1476e5410a46Smrg	exit ;;
14771f0ac6a5Smrg    esac
14781f0ac6a5Smrgfi
14791f0ac6a5Smrg
14801f0ac6a5Smrgcat >&2 <<EOF
14811f0ac6a5Smrg$0: unable to guess system type
14821f0ac6a5Smrg
14831f0ac6a5SmrgThis script, last modified $timestamp, has failed to recognize
14841f0ac6a5Smrgthe operating system you are using. It is advised that you
14851f0ac6a5Smrgdownload the most up to date version of the config scripts from
14861f0ac6a5Smrg
1487e5410a46Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
1488e5410a46Smrgand
1489e5410a46Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
14901f0ac6a5Smrg
14911f0ac6a5SmrgIf the version you run ($0) is already up to date, please
14921f0ac6a5Smrgsend the following data and any information you think might be
14931f0ac6a5Smrgpertinent to <config-patches@gnu.org> in order to provide the needed
14941f0ac6a5Smrginformation to handle your system.
14951f0ac6a5Smrg
14961f0ac6a5Smrgconfig.guess timestamp = $timestamp
14971f0ac6a5Smrg
14981f0ac6a5Smrguname -m = `(uname -m) 2>/dev/null || echo unknown`
14991f0ac6a5Smrguname -r = `(uname -r) 2>/dev/null || echo unknown`
15001f0ac6a5Smrguname -s = `(uname -s) 2>/dev/null || echo unknown`
15011f0ac6a5Smrguname -v = `(uname -v) 2>/dev/null || echo unknown`
15021f0ac6a5Smrg
15031f0ac6a5Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
15041f0ac6a5Smrg/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
15051f0ac6a5Smrg
15061f0ac6a5Smrghostinfo               = `(hostinfo) 2>/dev/null`
15071f0ac6a5Smrg/bin/universe          = `(/bin/universe) 2>/dev/null`
15081f0ac6a5Smrg/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
15091f0ac6a5Smrg/bin/arch              = `(/bin/arch) 2>/dev/null`
15101f0ac6a5Smrg/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
15111f0ac6a5Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
15121f0ac6a5Smrg
15131f0ac6a5SmrgUNAME_MACHINE = ${UNAME_MACHINE}
15141f0ac6a5SmrgUNAME_RELEASE = ${UNAME_RELEASE}
15151f0ac6a5SmrgUNAME_SYSTEM  = ${UNAME_SYSTEM}
15161f0ac6a5SmrgUNAME_VERSION = ${UNAME_VERSION}
15171f0ac6a5SmrgEOF
15181f0ac6a5Smrg
15191f0ac6a5Smrgexit 1
15201f0ac6a5Smrg
15211f0ac6a5Smrg# Local variables:
15221f0ac6a5Smrg# eval: (add-hook 'write-file-hooks 'time-stamp)
15231f0ac6a5Smrg# time-stamp-start: "timestamp='"
15241f0ac6a5Smrg# time-stamp-format: "%:y-%02m-%02d"
15251f0ac6a5Smrg# time-stamp-end: "'"
15261f0ac6a5Smrg# End:
1527