config.guess revision 9bc46bd4
19bc46bd4Smrg#! /bin/sh
29bc46bd4Smrg# Attempt to guess a canonical system name.
39bc46bd4Smrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
49bc46bd4Smrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
59bc46bd4Smrg#   Free Software Foundation, Inc.
69bc46bd4Smrg
79bc46bd4Smrgtimestamp='2009-04-27'
89bc46bd4Smrg
99bc46bd4Smrg# This file is free software; you can redistribute it and/or modify it
109bc46bd4Smrg# under the terms of the GNU General Public License as published by
119bc46bd4Smrg# the Free Software Foundation; either version 2 of the License, or
129bc46bd4Smrg# (at your option) any later version.
139bc46bd4Smrg#
149bc46bd4Smrg# This program is distributed in the hope that it will be useful, but
159bc46bd4Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of
169bc46bd4Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
179bc46bd4Smrg# General Public License for more details.
189bc46bd4Smrg#
199bc46bd4Smrg# You should have received a copy of the GNU General Public License
209bc46bd4Smrg# along with this program; if not, write to the Free Software
219bc46bd4Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
229bc46bd4Smrg# 02110-1301, USA.
239bc46bd4Smrg#
249bc46bd4Smrg# As a special exception to the GNU General Public License, if you
259bc46bd4Smrg# distribute this file as part of a program that contains a
269bc46bd4Smrg# configuration script generated by Autoconf, you may include it under
279bc46bd4Smrg# the same distribution terms that you use for the rest of that program.
289bc46bd4Smrg
299bc46bd4Smrg
309bc46bd4Smrg# Originally written by Per Bothner <per@bothner.com>.
319bc46bd4Smrg# Please send patches to <config-patches@gnu.org>.  Submit a context
329bc46bd4Smrg# diff and a properly formatted ChangeLog entry.
339bc46bd4Smrg#
349bc46bd4Smrg# This script attempts to guess a canonical system name similar to
359bc46bd4Smrg# config.sub.  If it succeeds, it prints the system name on stdout, and
369bc46bd4Smrg# exits with 0.  Otherwise, it exits with 1.
379bc46bd4Smrg#
389bc46bd4Smrg# The plan is that this can be called by configure scripts if you
399bc46bd4Smrg# don't specify an explicit build system type.
409bc46bd4Smrg
419bc46bd4Smrgme=`echo "$0" | sed -e 's,.*/,,'`
429bc46bd4Smrg
439bc46bd4Smrgusage="\
449bc46bd4SmrgUsage: $0 [OPTION]
459bc46bd4Smrg
469bc46bd4SmrgOutput the configuration name of the system \`$me' is run on.
479bc46bd4Smrg
489bc46bd4SmrgOperation modes:
499bc46bd4Smrg  -h, --help         print this help, then exit
509bc46bd4Smrg  -t, --time-stamp   print date of last modification, then exit
519bc46bd4Smrg  -v, --version      print version number, then exit
529bc46bd4Smrg
539bc46bd4SmrgReport bugs and patches to <config-patches@gnu.org>."
549bc46bd4Smrg
559bc46bd4Smrgversion="\
569bc46bd4SmrgGNU config.guess ($timestamp)
579bc46bd4Smrg
589bc46bd4SmrgOriginally written by Per Bothner.
599bc46bd4SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
609bc46bd4Smrg2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
619bc46bd4Smrg
629bc46bd4SmrgThis is free software; see the source for copying conditions.  There is NO
639bc46bd4Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
649bc46bd4Smrg
659bc46bd4Smrghelp="
669bc46bd4SmrgTry \`$me --help' for more information."
679bc46bd4Smrg
689bc46bd4Smrg# Parse command line
699bc46bd4Smrgwhile test $# -gt 0 ; do
709bc46bd4Smrg  case $1 in
719bc46bd4Smrg    --time-stamp | --time* | -t )
729bc46bd4Smrg       echo "$timestamp" ; exit ;;
739bc46bd4Smrg    --version | -v )
749bc46bd4Smrg       echo "$version" ; exit ;;
759bc46bd4Smrg    --help | --h* | -h )
769bc46bd4Smrg       echo "$usage"; exit ;;
779bc46bd4Smrg    -- )     # Stop option processing
789bc46bd4Smrg       shift; break ;;
799bc46bd4Smrg    - )	# Use stdin as input.
809bc46bd4Smrg       break ;;
819bc46bd4Smrg    -* )
829bc46bd4Smrg       echo "$me: invalid option $1$help" >&2
839bc46bd4Smrg       exit 1 ;;
849bc46bd4Smrg    * )
859bc46bd4Smrg       break ;;
869bc46bd4Smrg  esac
879bc46bd4Smrgdone
889bc46bd4Smrg
899bc46bd4Smrgif test $# != 0; then
909bc46bd4Smrg  echo "$me: too many arguments$help" >&2
919bc46bd4Smrg  exit 1
929bc46bd4Smrgfi
939bc46bd4Smrg
949bc46bd4Smrgtrap 'exit 1' 1 2 15
959bc46bd4Smrg
969bc46bd4Smrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
979bc46bd4Smrg# compiler to aid in system detection is discouraged as it requires
989bc46bd4Smrg# temporary files to be created and, as you can see below, it is a
999bc46bd4Smrg# headache to deal with in a portable fashion.
1009bc46bd4Smrg
1019bc46bd4Smrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
1029bc46bd4Smrg# use `HOST_CC' if defined, but it is deprecated.
1039bc46bd4Smrg
1049bc46bd4Smrg# Portable tmp directory creation inspired by the Autoconf team.
1059bc46bd4Smrg
1069bc46bd4Smrgset_cc_for_build='
1079bc46bd4Smrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
1089bc46bd4Smrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
1099bc46bd4Smrg: ${TMPDIR=/tmp} ;
1109bc46bd4Smrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
1119bc46bd4Smrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
1129bc46bd4Smrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
1139bc46bd4Smrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
1149bc46bd4Smrgdummy=$tmp/dummy ;
1159bc46bd4Smrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
1169bc46bd4Smrgcase $CC_FOR_BUILD,$HOST_CC,$CC in
1179bc46bd4Smrg ,,)    echo "int x;" > $dummy.c ;
1189bc46bd4Smrg	for c in cc gcc c89 c99 ; do
1199bc46bd4Smrg	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
1209bc46bd4Smrg	     CC_FOR_BUILD="$c"; break ;
1219bc46bd4Smrg	  fi ;
1229bc46bd4Smrg	done ;
1239bc46bd4Smrg	if test x"$CC_FOR_BUILD" = x ; then
1249bc46bd4Smrg	  CC_FOR_BUILD=no_compiler_found ;
1259bc46bd4Smrg	fi
1269bc46bd4Smrg	;;
1279bc46bd4Smrg ,,*)   CC_FOR_BUILD=$CC ;;
1289bc46bd4Smrg ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
1299bc46bd4Smrgesac ; set_cc_for_build= ;'
1309bc46bd4Smrg
1319bc46bd4Smrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
1329bc46bd4Smrg# (ghazi@noc.rutgers.edu 1994-08-24)
1339bc46bd4Smrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then
1349bc46bd4Smrg	PATH=$PATH:/.attbin ; export PATH
1359bc46bd4Smrgfi
1369bc46bd4Smrg
1379bc46bd4SmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
1389bc46bd4SmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
1399bc46bd4SmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
1409bc46bd4SmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
1419bc46bd4Smrg
1429bc46bd4Smrg# Note: order is significant - the case branches are not exclusive.
1439bc46bd4Smrg
1449bc46bd4Smrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
1459bc46bd4Smrg    *:NetBSD:*:*)
1469bc46bd4Smrg	# NetBSD (nbsd) targets should (where applicable) match one or
1479bc46bd4Smrg	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
1489bc46bd4Smrg	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
1499bc46bd4Smrg	# switched to ELF, *-*-netbsd* would select the old
1509bc46bd4Smrg	# object file format.  This provides both forward
1519bc46bd4Smrg	# compatibility and a consistent mechanism for selecting the
1529bc46bd4Smrg	# object file format.
1539bc46bd4Smrg	#
1549bc46bd4Smrg	# Note: NetBSD doesn't particularly care about the vendor
1559bc46bd4Smrg	# portion of the name.  We always set it to "unknown".
1569bc46bd4Smrg	sysctl="sysctl -n hw.machine_arch"
1579bc46bd4Smrg	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
1589bc46bd4Smrg	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
1599bc46bd4Smrg	case "${UNAME_MACHINE_ARCH}" in
1609bc46bd4Smrg	    armeb) machine=armeb-unknown ;;
1619bc46bd4Smrg	    arm*) machine=arm-unknown ;;
1629bc46bd4Smrg	    sh3el) machine=shl-unknown ;;
1639bc46bd4Smrg	    sh3eb) machine=sh-unknown ;;
1649bc46bd4Smrg	    sh5el) machine=sh5le-unknown ;;
1659bc46bd4Smrg	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
1669bc46bd4Smrg	esac
1679bc46bd4Smrg	# The Operating System including object format, if it has switched
1689bc46bd4Smrg	# to ELF recently, or will in the future.
1699bc46bd4Smrg	case "${UNAME_MACHINE_ARCH}" in
1709bc46bd4Smrg	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
1719bc46bd4Smrg		eval $set_cc_for_build
1729bc46bd4Smrg		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
1739bc46bd4Smrg			| grep __ELF__ >/dev/null
1749bc46bd4Smrg		then
1759bc46bd4Smrg		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
1769bc46bd4Smrg		    # Return netbsd for either.  FIX?
1779bc46bd4Smrg		    os=netbsd
1789bc46bd4Smrg		else
1799bc46bd4Smrg		    os=netbsdelf
1809bc46bd4Smrg		fi
1819bc46bd4Smrg		;;
1829bc46bd4Smrg	    *)
1839bc46bd4Smrg	        os=netbsd
1849bc46bd4Smrg		;;
1859bc46bd4Smrg	esac
1869bc46bd4Smrg	# The OS release
1879bc46bd4Smrg	# Debian GNU/NetBSD machines have a different userland, and
1889bc46bd4Smrg	# thus, need a distinct triplet. However, they do not need
1899bc46bd4Smrg	# kernel version information, so it can be replaced with a
1909bc46bd4Smrg	# suitable tag, in the style of linux-gnu.
1919bc46bd4Smrg	case "${UNAME_VERSION}" in
1929bc46bd4Smrg	    Debian*)
1939bc46bd4Smrg		release='-gnu'
1949bc46bd4Smrg		;;
1959bc46bd4Smrg	    *)
1969bc46bd4Smrg		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
1979bc46bd4Smrg		;;
1989bc46bd4Smrg	esac
1999bc46bd4Smrg	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
2009bc46bd4Smrg	# contains redundant information, the shorter form:
2019bc46bd4Smrg	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
2029bc46bd4Smrg	echo "${machine}-${os}${release}"
2039bc46bd4Smrg	exit ;;
2049bc46bd4Smrg    *:OpenBSD:*:*)
2059bc46bd4Smrg	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
2069bc46bd4Smrg	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
2079bc46bd4Smrg	exit ;;
2089bc46bd4Smrg    *:ekkoBSD:*:*)
2099bc46bd4Smrg	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
2109bc46bd4Smrg	exit ;;
2119bc46bd4Smrg    *:SolidBSD:*:*)
2129bc46bd4Smrg	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
2139bc46bd4Smrg	exit ;;
2149bc46bd4Smrg    macppc:MirBSD:*:*)
2159bc46bd4Smrg	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
2169bc46bd4Smrg	exit ;;
2179bc46bd4Smrg    *:MirBSD:*:*)
2189bc46bd4Smrg	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
2199bc46bd4Smrg	exit ;;
2209bc46bd4Smrg    alpha:OSF1:*:*)
2219bc46bd4Smrg	case $UNAME_RELEASE in
2229bc46bd4Smrg	*4.0)
2239bc46bd4Smrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
2249bc46bd4Smrg		;;
2259bc46bd4Smrg	*5.*)
2269bc46bd4Smrg	        UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
2279bc46bd4Smrg		;;
2289bc46bd4Smrg	esac
2299bc46bd4Smrg	# According to Compaq, /usr/sbin/psrinfo has been available on
2309bc46bd4Smrg	# OSF/1 and Tru64 systems produced since 1995.  I hope that
2319bc46bd4Smrg	# covers most systems running today.  This code pipes the CPU
2329bc46bd4Smrg	# types through head -n 1, so we only detect the type of CPU 0.
2339bc46bd4Smrg	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
2349bc46bd4Smrg	case "$ALPHA_CPU_TYPE" in
2359bc46bd4Smrg	    "EV4 (21064)")
2369bc46bd4Smrg		UNAME_MACHINE="alpha" ;;
2379bc46bd4Smrg	    "EV4.5 (21064)")
2389bc46bd4Smrg		UNAME_MACHINE="alpha" ;;
2399bc46bd4Smrg	    "LCA4 (21066/21068)")
2409bc46bd4Smrg		UNAME_MACHINE="alpha" ;;
2419bc46bd4Smrg	    "EV5 (21164)")
2429bc46bd4Smrg		UNAME_MACHINE="alphaev5" ;;
2439bc46bd4Smrg	    "EV5.6 (21164A)")
2449bc46bd4Smrg		UNAME_MACHINE="alphaev56" ;;
2459bc46bd4Smrg	    "EV5.6 (21164PC)")
2469bc46bd4Smrg		UNAME_MACHINE="alphapca56" ;;
2479bc46bd4Smrg	    "EV5.7 (21164PC)")
2489bc46bd4Smrg		UNAME_MACHINE="alphapca57" ;;
2499bc46bd4Smrg	    "EV6 (21264)")
2509bc46bd4Smrg		UNAME_MACHINE="alphaev6" ;;
2519bc46bd4Smrg	    "EV6.7 (21264A)")
2529bc46bd4Smrg		UNAME_MACHINE="alphaev67" ;;
2539bc46bd4Smrg	    "EV6.8CB (21264C)")
2549bc46bd4Smrg		UNAME_MACHINE="alphaev68" ;;
2559bc46bd4Smrg	    "EV6.8AL (21264B)")
2569bc46bd4Smrg		UNAME_MACHINE="alphaev68" ;;
2579bc46bd4Smrg	    "EV6.8CX (21264D)")
2589bc46bd4Smrg		UNAME_MACHINE="alphaev68" ;;
2599bc46bd4Smrg	    "EV6.9A (21264/EV69A)")
2609bc46bd4Smrg		UNAME_MACHINE="alphaev69" ;;
2619bc46bd4Smrg	    "EV7 (21364)")
2629bc46bd4Smrg		UNAME_MACHINE="alphaev7" ;;
2639bc46bd4Smrg	    "EV7.9 (21364A)")
2649bc46bd4Smrg		UNAME_MACHINE="alphaev79" ;;
2659bc46bd4Smrg	esac
2669bc46bd4Smrg	# A Pn.n version is a patched version.
2679bc46bd4Smrg	# A Vn.n version is a released version.
2689bc46bd4Smrg	# A Tn.n version is a released field test version.
2699bc46bd4Smrg	# A Xn.n version is an unreleased experimental baselevel.
2709bc46bd4Smrg	# 1.2 uses "1.2" for uname -r.
2719bc46bd4Smrg	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
2729bc46bd4Smrg	exit ;;
2739bc46bd4Smrg    Alpha\ *:Windows_NT*:*)
2749bc46bd4Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
2759bc46bd4Smrg	# Should we change UNAME_MACHINE based on the output of uname instead
2769bc46bd4Smrg	# of the specific Alpha model?
2779bc46bd4Smrg	echo alpha-pc-interix
2789bc46bd4Smrg	exit ;;
2799bc46bd4Smrg    21064:Windows_NT:50:3)
2809bc46bd4Smrg	echo alpha-dec-winnt3.5
2819bc46bd4Smrg	exit ;;
2829bc46bd4Smrg    Amiga*:UNIX_System_V:4.0:*)
2839bc46bd4Smrg	echo m68k-unknown-sysv4
2849bc46bd4Smrg	exit ;;
2859bc46bd4Smrg    *:[Aa]miga[Oo][Ss]:*:*)
2869bc46bd4Smrg	echo ${UNAME_MACHINE}-unknown-amigaos
2879bc46bd4Smrg	exit ;;
2889bc46bd4Smrg    *:[Mm]orph[Oo][Ss]:*:*)
2899bc46bd4Smrg	echo ${UNAME_MACHINE}-unknown-morphos
2909bc46bd4Smrg	exit ;;
2919bc46bd4Smrg    *:OS/390:*:*)
2929bc46bd4Smrg	echo i370-ibm-openedition
2939bc46bd4Smrg	exit ;;
2949bc46bd4Smrg    *:z/VM:*:*)
2959bc46bd4Smrg	echo s390-ibm-zvmoe
2969bc46bd4Smrg	exit ;;
2979bc46bd4Smrg    *:OS400:*:*)
2989bc46bd4Smrg        echo powerpc-ibm-os400
2999bc46bd4Smrg	exit ;;
3009bc46bd4Smrg    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
3019bc46bd4Smrg	echo arm-acorn-riscix${UNAME_RELEASE}
3029bc46bd4Smrg	exit ;;
3039bc46bd4Smrg    arm:riscos:*:*|arm:RISCOS:*:*)
3049bc46bd4Smrg	echo arm-unknown-riscos
3059bc46bd4Smrg	exit ;;
3069bc46bd4Smrg    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
3079bc46bd4Smrg	echo hppa1.1-hitachi-hiuxmpp
3089bc46bd4Smrg	exit ;;
3099bc46bd4Smrg    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
3109bc46bd4Smrg	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
3119bc46bd4Smrg	if test "`(/bin/universe) 2>/dev/null`" = att ; then
3129bc46bd4Smrg		echo pyramid-pyramid-sysv3
3139bc46bd4Smrg	else
3149bc46bd4Smrg		echo pyramid-pyramid-bsd
3159bc46bd4Smrg	fi
3169bc46bd4Smrg	exit ;;
3179bc46bd4Smrg    NILE*:*:*:dcosx)
3189bc46bd4Smrg	echo pyramid-pyramid-svr4
3199bc46bd4Smrg	exit ;;
3209bc46bd4Smrg    DRS?6000:unix:4.0:6*)
3219bc46bd4Smrg	echo sparc-icl-nx6
3229bc46bd4Smrg	exit ;;
3239bc46bd4Smrg    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
3249bc46bd4Smrg	case `/usr/bin/uname -p` in
3259bc46bd4Smrg	    sparc) echo sparc-icl-nx7; exit ;;
3269bc46bd4Smrg	esac ;;
3279bc46bd4Smrg    s390x:SunOS:*:*)
3289bc46bd4Smrg	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3299bc46bd4Smrg	exit ;;
3309bc46bd4Smrg    sun4H:SunOS:5.*:*)
3319bc46bd4Smrg	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3329bc46bd4Smrg	exit ;;
3339bc46bd4Smrg    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
3349bc46bd4Smrg	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3359bc46bd4Smrg	exit ;;
3369bc46bd4Smrg    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
3379bc46bd4Smrg	eval $set_cc_for_build
3389bc46bd4Smrg	SUN_ARCH="i386"
3399bc46bd4Smrg	# If there is a compiler, see if it is configured for 64-bit objects.
3409bc46bd4Smrg	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
3419bc46bd4Smrg	# This test works for both compilers.
3429bc46bd4Smrg	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
3439bc46bd4Smrg	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
3449bc46bd4Smrg		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
3459bc46bd4Smrg		grep IS_64BIT_ARCH >/dev/null
3469bc46bd4Smrg	    then
3479bc46bd4Smrg		SUN_ARCH="x86_64"
3489bc46bd4Smrg	    fi
3499bc46bd4Smrg	fi
3509bc46bd4Smrg	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3519bc46bd4Smrg	exit ;;
3529bc46bd4Smrg    sun4*:SunOS:6*:*)
3539bc46bd4Smrg	# According to config.sub, this is the proper way to canonicalize
3549bc46bd4Smrg	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
3559bc46bd4Smrg	# it's likely to be more like Solaris than SunOS4.
3569bc46bd4Smrg	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3579bc46bd4Smrg	exit ;;
3589bc46bd4Smrg    sun4*:SunOS:*:*)
3599bc46bd4Smrg	case "`/usr/bin/arch -k`" in
3609bc46bd4Smrg	    Series*|S4*)
3619bc46bd4Smrg		UNAME_RELEASE=`uname -v`
3629bc46bd4Smrg		;;
3639bc46bd4Smrg	esac
3649bc46bd4Smrg	# Japanese Language versions have a version number like `4.1.3-JL'.
3659bc46bd4Smrg	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
3669bc46bd4Smrg	exit ;;
3679bc46bd4Smrg    sun3*:SunOS:*:*)
3689bc46bd4Smrg	echo m68k-sun-sunos${UNAME_RELEASE}
3699bc46bd4Smrg	exit ;;
3709bc46bd4Smrg    sun*:*:4.2BSD:*)
3719bc46bd4Smrg	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
3729bc46bd4Smrg	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
3739bc46bd4Smrg	case "`/bin/arch`" in
3749bc46bd4Smrg	    sun3)
3759bc46bd4Smrg		echo m68k-sun-sunos${UNAME_RELEASE}
3769bc46bd4Smrg		;;
3779bc46bd4Smrg	    sun4)
3789bc46bd4Smrg		echo sparc-sun-sunos${UNAME_RELEASE}
3799bc46bd4Smrg		;;
3809bc46bd4Smrg	esac
3819bc46bd4Smrg	exit ;;
3829bc46bd4Smrg    aushp:SunOS:*:*)
3839bc46bd4Smrg	echo sparc-auspex-sunos${UNAME_RELEASE}
3849bc46bd4Smrg	exit ;;
3859bc46bd4Smrg    # The situation for MiNT is a little confusing.  The machine name
3869bc46bd4Smrg    # can be virtually everything (everything which is not
3879bc46bd4Smrg    # "atarist" or "atariste" at least should have a processor
3889bc46bd4Smrg    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
3899bc46bd4Smrg    # to the lowercase version "mint" (or "freemint").  Finally
3909bc46bd4Smrg    # the system name "TOS" denotes a system which is actually not
3919bc46bd4Smrg    # MiNT.  But MiNT is downward compatible to TOS, so this should
3929bc46bd4Smrg    # be no problem.
3939bc46bd4Smrg    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
3949bc46bd4Smrg        echo m68k-atari-mint${UNAME_RELEASE}
3959bc46bd4Smrg	exit ;;
3969bc46bd4Smrg    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
3979bc46bd4Smrg	echo m68k-atari-mint${UNAME_RELEASE}
3989bc46bd4Smrg        exit ;;
3999bc46bd4Smrg    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
4009bc46bd4Smrg        echo m68k-atari-mint${UNAME_RELEASE}
4019bc46bd4Smrg	exit ;;
4029bc46bd4Smrg    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
4039bc46bd4Smrg        echo m68k-milan-mint${UNAME_RELEASE}
4049bc46bd4Smrg        exit ;;
4059bc46bd4Smrg    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
4069bc46bd4Smrg        echo m68k-hades-mint${UNAME_RELEASE}
4079bc46bd4Smrg        exit ;;
4089bc46bd4Smrg    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
4099bc46bd4Smrg        echo m68k-unknown-mint${UNAME_RELEASE}
4109bc46bd4Smrg        exit ;;
4119bc46bd4Smrg    m68k:machten:*:*)
4129bc46bd4Smrg	echo m68k-apple-machten${UNAME_RELEASE}
4139bc46bd4Smrg	exit ;;
4149bc46bd4Smrg    powerpc:machten:*:*)
4159bc46bd4Smrg	echo powerpc-apple-machten${UNAME_RELEASE}
4169bc46bd4Smrg	exit ;;
4179bc46bd4Smrg    RISC*:Mach:*:*)
4189bc46bd4Smrg	echo mips-dec-mach_bsd4.3
4199bc46bd4Smrg	exit ;;
4209bc46bd4Smrg    RISC*:ULTRIX:*:*)
4219bc46bd4Smrg	echo mips-dec-ultrix${UNAME_RELEASE}
4229bc46bd4Smrg	exit ;;
4239bc46bd4Smrg    VAX*:ULTRIX*:*:*)
4249bc46bd4Smrg	echo vax-dec-ultrix${UNAME_RELEASE}
4259bc46bd4Smrg	exit ;;
4269bc46bd4Smrg    2020:CLIX:*:* | 2430:CLIX:*:*)
4279bc46bd4Smrg	echo clipper-intergraph-clix${UNAME_RELEASE}
4289bc46bd4Smrg	exit ;;
4299bc46bd4Smrg    mips:*:*:UMIPS | mips:*:*:RISCos)
4309bc46bd4Smrg	eval $set_cc_for_build
4319bc46bd4Smrg	sed 's/^	//' << EOF >$dummy.c
4329bc46bd4Smrg#ifdef __cplusplus
4339bc46bd4Smrg#include <stdio.h>  /* for printf() prototype */
4349bc46bd4Smrg	int main (int argc, char *argv[]) {
4359bc46bd4Smrg#else
4369bc46bd4Smrg	int main (argc, argv) int argc; char *argv[]; {
4379bc46bd4Smrg#endif
4389bc46bd4Smrg	#if defined (host_mips) && defined (MIPSEB)
4399bc46bd4Smrg	#if defined (SYSTYPE_SYSV)
4409bc46bd4Smrg	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
4419bc46bd4Smrg	#endif
4429bc46bd4Smrg	#if defined (SYSTYPE_SVR4)
4439bc46bd4Smrg	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
4449bc46bd4Smrg	#endif
4459bc46bd4Smrg	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
4469bc46bd4Smrg	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
4479bc46bd4Smrg	#endif
4489bc46bd4Smrg	#endif
4499bc46bd4Smrg	  exit (-1);
4509bc46bd4Smrg	}
4519bc46bd4SmrgEOF
4529bc46bd4Smrg	$CC_FOR_BUILD -o $dummy $dummy.c &&
4539bc46bd4Smrg	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
4549bc46bd4Smrg	  SYSTEM_NAME=`$dummy $dummyarg` &&
4559bc46bd4Smrg	    { echo "$SYSTEM_NAME"; exit; }
4569bc46bd4Smrg	echo mips-mips-riscos${UNAME_RELEASE}
4579bc46bd4Smrg	exit ;;
4589bc46bd4Smrg    Motorola:PowerMAX_OS:*:*)
4599bc46bd4Smrg	echo powerpc-motorola-powermax
4609bc46bd4Smrg	exit ;;
4619bc46bd4Smrg    Motorola:*:4.3:PL8-*)
4629bc46bd4Smrg	echo powerpc-harris-powermax
4639bc46bd4Smrg	exit ;;
4649bc46bd4Smrg    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
4659bc46bd4Smrg	echo powerpc-harris-powermax
4669bc46bd4Smrg	exit ;;
4679bc46bd4Smrg    Night_Hawk:Power_UNIX:*:*)
4689bc46bd4Smrg	echo powerpc-harris-powerunix
4699bc46bd4Smrg	exit ;;
4709bc46bd4Smrg    m88k:CX/UX:7*:*)
4719bc46bd4Smrg	echo m88k-harris-cxux7
4729bc46bd4Smrg	exit ;;
4739bc46bd4Smrg    m88k:*:4*:R4*)
4749bc46bd4Smrg	echo m88k-motorola-sysv4
4759bc46bd4Smrg	exit ;;
4769bc46bd4Smrg    m88k:*:3*:R3*)
4779bc46bd4Smrg	echo m88k-motorola-sysv3
4789bc46bd4Smrg	exit ;;
4799bc46bd4Smrg    AViiON:dgux:*:*)
4809bc46bd4Smrg        # DG/UX returns AViiON for all architectures
4819bc46bd4Smrg        UNAME_PROCESSOR=`/usr/bin/uname -p`
4829bc46bd4Smrg	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
4839bc46bd4Smrg	then
4849bc46bd4Smrg	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
4859bc46bd4Smrg	       [ ${TARGET_BINARY_INTERFACE}x = x ]
4869bc46bd4Smrg	    then
4879bc46bd4Smrg		echo m88k-dg-dgux${UNAME_RELEASE}
4889bc46bd4Smrg	    else
4899bc46bd4Smrg		echo m88k-dg-dguxbcs${UNAME_RELEASE}
4909bc46bd4Smrg	    fi
4919bc46bd4Smrg	else
4929bc46bd4Smrg	    echo i586-dg-dgux${UNAME_RELEASE}
4939bc46bd4Smrg	fi
4949bc46bd4Smrg 	exit ;;
4959bc46bd4Smrg    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
4969bc46bd4Smrg	echo m88k-dolphin-sysv3
4979bc46bd4Smrg	exit ;;
4989bc46bd4Smrg    M88*:*:R3*:*)
4999bc46bd4Smrg	# Delta 88k system running SVR3
5009bc46bd4Smrg	echo m88k-motorola-sysv3
5019bc46bd4Smrg	exit ;;
5029bc46bd4Smrg    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
5039bc46bd4Smrg	echo m88k-tektronix-sysv3
5049bc46bd4Smrg	exit ;;
5059bc46bd4Smrg    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
5069bc46bd4Smrg	echo m68k-tektronix-bsd
5079bc46bd4Smrg	exit ;;
5089bc46bd4Smrg    *:IRIX*:*:*)
5099bc46bd4Smrg	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
5109bc46bd4Smrg	exit ;;
5119bc46bd4Smrg    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
5129bc46bd4Smrg	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
5139bc46bd4Smrg	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
5149bc46bd4Smrg    i*86:AIX:*:*)
5159bc46bd4Smrg	echo i386-ibm-aix
5169bc46bd4Smrg	exit ;;
5179bc46bd4Smrg    ia64:AIX:*:*)
5189bc46bd4Smrg	if [ -x /usr/bin/oslevel ] ; then
5199bc46bd4Smrg		IBM_REV=`/usr/bin/oslevel`
5209bc46bd4Smrg	else
5219bc46bd4Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
5229bc46bd4Smrg	fi
5239bc46bd4Smrg	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
5249bc46bd4Smrg	exit ;;
5259bc46bd4Smrg    *:AIX:2:3)
5269bc46bd4Smrg	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
5279bc46bd4Smrg		eval $set_cc_for_build
5289bc46bd4Smrg		sed 's/^		//' << EOF >$dummy.c
5299bc46bd4Smrg		#include <sys/systemcfg.h>
5309bc46bd4Smrg
5319bc46bd4Smrg		main()
5329bc46bd4Smrg			{
5339bc46bd4Smrg			if (!__power_pc())
5349bc46bd4Smrg				exit(1);
5359bc46bd4Smrg			puts("powerpc-ibm-aix3.2.5");
5369bc46bd4Smrg			exit(0);
5379bc46bd4Smrg			}
5389bc46bd4SmrgEOF
5399bc46bd4Smrg		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
5409bc46bd4Smrg		then
5419bc46bd4Smrg			echo "$SYSTEM_NAME"
5429bc46bd4Smrg		else
5439bc46bd4Smrg			echo rs6000-ibm-aix3.2.5
5449bc46bd4Smrg		fi
5459bc46bd4Smrg	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
5469bc46bd4Smrg		echo rs6000-ibm-aix3.2.4
5479bc46bd4Smrg	else
5489bc46bd4Smrg		echo rs6000-ibm-aix3.2
5499bc46bd4Smrg	fi
5509bc46bd4Smrg	exit ;;
5519bc46bd4Smrg    *:AIX:*:[456])
5529bc46bd4Smrg	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
5539bc46bd4Smrg	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
5549bc46bd4Smrg		IBM_ARCH=rs6000
5559bc46bd4Smrg	else
5569bc46bd4Smrg		IBM_ARCH=powerpc
5579bc46bd4Smrg	fi
5589bc46bd4Smrg	if [ -x /usr/bin/oslevel ] ; then
5599bc46bd4Smrg		IBM_REV=`/usr/bin/oslevel`
5609bc46bd4Smrg	else
5619bc46bd4Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
5629bc46bd4Smrg	fi
5639bc46bd4Smrg	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
5649bc46bd4Smrg	exit ;;
5659bc46bd4Smrg    *:AIX:*:*)
5669bc46bd4Smrg	echo rs6000-ibm-aix
5679bc46bd4Smrg	exit ;;
5689bc46bd4Smrg    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
5699bc46bd4Smrg	echo romp-ibm-bsd4.4
5709bc46bd4Smrg	exit ;;
5719bc46bd4Smrg    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
5729bc46bd4Smrg	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
5739bc46bd4Smrg	exit ;;                             # report: romp-ibm BSD 4.3
5749bc46bd4Smrg    *:BOSX:*:*)
5759bc46bd4Smrg	echo rs6000-bull-bosx
5769bc46bd4Smrg	exit ;;
5779bc46bd4Smrg    DPX/2?00:B.O.S.:*:*)
5789bc46bd4Smrg	echo m68k-bull-sysv3
5799bc46bd4Smrg	exit ;;
5809bc46bd4Smrg    9000/[34]??:4.3bsd:1.*:*)
5819bc46bd4Smrg	echo m68k-hp-bsd
5829bc46bd4Smrg	exit ;;
5839bc46bd4Smrg    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
5849bc46bd4Smrg	echo m68k-hp-bsd4.4
5859bc46bd4Smrg	exit ;;
5869bc46bd4Smrg    9000/[34678]??:HP-UX:*:*)
5879bc46bd4Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
5889bc46bd4Smrg	case "${UNAME_MACHINE}" in
5899bc46bd4Smrg	    9000/31? )            HP_ARCH=m68000 ;;
5909bc46bd4Smrg	    9000/[34]?? )         HP_ARCH=m68k ;;
5919bc46bd4Smrg	    9000/[678][0-9][0-9])
5929bc46bd4Smrg		if [ -x /usr/bin/getconf ]; then
5939bc46bd4Smrg		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
5949bc46bd4Smrg                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
5959bc46bd4Smrg                    case "${sc_cpu_version}" in
5969bc46bd4Smrg                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
5979bc46bd4Smrg                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
5989bc46bd4Smrg                      532)                      # CPU_PA_RISC2_0
5999bc46bd4Smrg                        case "${sc_kernel_bits}" in
6009bc46bd4Smrg                          32) HP_ARCH="hppa2.0n" ;;
6019bc46bd4Smrg                          64) HP_ARCH="hppa2.0w" ;;
6029bc46bd4Smrg			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
6039bc46bd4Smrg                        esac ;;
6049bc46bd4Smrg                    esac
6059bc46bd4Smrg		fi
6069bc46bd4Smrg		if [ "${HP_ARCH}" = "" ]; then
6079bc46bd4Smrg		    eval $set_cc_for_build
6089bc46bd4Smrg		    sed 's/^              //' << EOF >$dummy.c
6099bc46bd4Smrg
6109bc46bd4Smrg              #define _HPUX_SOURCE
6119bc46bd4Smrg              #include <stdlib.h>
6129bc46bd4Smrg              #include <unistd.h>
6139bc46bd4Smrg
6149bc46bd4Smrg              int main ()
6159bc46bd4Smrg              {
6169bc46bd4Smrg              #if defined(_SC_KERNEL_BITS)
6179bc46bd4Smrg                  long bits = sysconf(_SC_KERNEL_BITS);
6189bc46bd4Smrg              #endif
6199bc46bd4Smrg                  long cpu  = sysconf (_SC_CPU_VERSION);
6209bc46bd4Smrg
6219bc46bd4Smrg                  switch (cpu)
6229bc46bd4Smrg              	{
6239bc46bd4Smrg              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
6249bc46bd4Smrg              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
6259bc46bd4Smrg              	case CPU_PA_RISC2_0:
6269bc46bd4Smrg              #if defined(_SC_KERNEL_BITS)
6279bc46bd4Smrg              	    switch (bits)
6289bc46bd4Smrg              		{
6299bc46bd4Smrg              		case 64: puts ("hppa2.0w"); break;
6309bc46bd4Smrg              		case 32: puts ("hppa2.0n"); break;
6319bc46bd4Smrg              		default: puts ("hppa2.0"); break;
6329bc46bd4Smrg              		} break;
6339bc46bd4Smrg              #else  /* !defined(_SC_KERNEL_BITS) */
6349bc46bd4Smrg              	    puts ("hppa2.0"); break;
6359bc46bd4Smrg              #endif
6369bc46bd4Smrg              	default: puts ("hppa1.0"); break;
6379bc46bd4Smrg              	}
6389bc46bd4Smrg                  exit (0);
6399bc46bd4Smrg              }
6409bc46bd4SmrgEOF
6419bc46bd4Smrg		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
6429bc46bd4Smrg		    test -z "$HP_ARCH" && HP_ARCH=hppa
6439bc46bd4Smrg		fi ;;
6449bc46bd4Smrg	esac
6459bc46bd4Smrg	if [ ${HP_ARCH} = "hppa2.0w" ]
6469bc46bd4Smrg	then
6479bc46bd4Smrg	    eval $set_cc_for_build
6489bc46bd4Smrg
6499bc46bd4Smrg	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
6509bc46bd4Smrg	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
6519bc46bd4Smrg	    # generating 64-bit code.  GNU and HP use different nomenclature:
6529bc46bd4Smrg	    #
6539bc46bd4Smrg	    # $ CC_FOR_BUILD=cc ./config.guess
6549bc46bd4Smrg	    # => hppa2.0w-hp-hpux11.23
6559bc46bd4Smrg	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
6569bc46bd4Smrg	    # => hppa64-hp-hpux11.23
6579bc46bd4Smrg
6589bc46bd4Smrg	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
6599bc46bd4Smrg		grep __LP64__ >/dev/null
6609bc46bd4Smrg	    then
6619bc46bd4Smrg		HP_ARCH="hppa2.0w"
6629bc46bd4Smrg	    else
6639bc46bd4Smrg		HP_ARCH="hppa64"
6649bc46bd4Smrg	    fi
6659bc46bd4Smrg	fi
6669bc46bd4Smrg	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
6679bc46bd4Smrg	exit ;;
6689bc46bd4Smrg    ia64:HP-UX:*:*)
6699bc46bd4Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
6709bc46bd4Smrg	echo ia64-hp-hpux${HPUX_REV}
6719bc46bd4Smrg	exit ;;
6729bc46bd4Smrg    3050*:HI-UX:*:*)
6739bc46bd4Smrg	eval $set_cc_for_build
6749bc46bd4Smrg	sed 's/^	//' << EOF >$dummy.c
6759bc46bd4Smrg	#include <unistd.h>
6769bc46bd4Smrg	int
6779bc46bd4Smrg	main ()
6789bc46bd4Smrg	{
6799bc46bd4Smrg	  long cpu = sysconf (_SC_CPU_VERSION);
6809bc46bd4Smrg	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
6819bc46bd4Smrg	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
6829bc46bd4Smrg	     results, however.  */
6839bc46bd4Smrg	  if (CPU_IS_PA_RISC (cpu))
6849bc46bd4Smrg	    {
6859bc46bd4Smrg	      switch (cpu)
6869bc46bd4Smrg		{
6879bc46bd4Smrg		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
6889bc46bd4Smrg		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
6899bc46bd4Smrg		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
6909bc46bd4Smrg		  default: puts ("hppa-hitachi-hiuxwe2"); break;
6919bc46bd4Smrg		}
6929bc46bd4Smrg	    }
6939bc46bd4Smrg	  else if (CPU_IS_HP_MC68K (cpu))
6949bc46bd4Smrg	    puts ("m68k-hitachi-hiuxwe2");
6959bc46bd4Smrg	  else puts ("unknown-hitachi-hiuxwe2");
6969bc46bd4Smrg	  exit (0);
6979bc46bd4Smrg	}
6989bc46bd4SmrgEOF
6999bc46bd4Smrg	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
7009bc46bd4Smrg		{ echo "$SYSTEM_NAME"; exit; }
7019bc46bd4Smrg	echo unknown-hitachi-hiuxwe2
7029bc46bd4Smrg	exit ;;
7039bc46bd4Smrg    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
7049bc46bd4Smrg	echo hppa1.1-hp-bsd
7059bc46bd4Smrg	exit ;;
7069bc46bd4Smrg    9000/8??:4.3bsd:*:*)
7079bc46bd4Smrg	echo hppa1.0-hp-bsd
7089bc46bd4Smrg	exit ;;
7099bc46bd4Smrg    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
7109bc46bd4Smrg	echo hppa1.0-hp-mpeix
7119bc46bd4Smrg	exit ;;
7129bc46bd4Smrg    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
7139bc46bd4Smrg	echo hppa1.1-hp-osf
7149bc46bd4Smrg	exit ;;
7159bc46bd4Smrg    hp8??:OSF1:*:*)
7169bc46bd4Smrg	echo hppa1.0-hp-osf
7179bc46bd4Smrg	exit ;;
7189bc46bd4Smrg    i*86:OSF1:*:*)
7199bc46bd4Smrg	if [ -x /usr/sbin/sysversion ] ; then
7209bc46bd4Smrg	    echo ${UNAME_MACHINE}-unknown-osf1mk
7219bc46bd4Smrg	else
7229bc46bd4Smrg	    echo ${UNAME_MACHINE}-unknown-osf1
7239bc46bd4Smrg	fi
7249bc46bd4Smrg	exit ;;
7259bc46bd4Smrg    parisc*:Lites*:*:*)
7269bc46bd4Smrg	echo hppa1.1-hp-lites
7279bc46bd4Smrg	exit ;;
7289bc46bd4Smrg    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
7299bc46bd4Smrg	echo c1-convex-bsd
7309bc46bd4Smrg        exit ;;
7319bc46bd4Smrg    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
7329bc46bd4Smrg	if getsysinfo -f scalar_acc
7339bc46bd4Smrg	then echo c32-convex-bsd
7349bc46bd4Smrg	else echo c2-convex-bsd
7359bc46bd4Smrg	fi
7369bc46bd4Smrg        exit ;;
7379bc46bd4Smrg    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
7389bc46bd4Smrg	echo c34-convex-bsd
7399bc46bd4Smrg        exit ;;
7409bc46bd4Smrg    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
7419bc46bd4Smrg	echo c38-convex-bsd
7429bc46bd4Smrg        exit ;;
7439bc46bd4Smrg    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
7449bc46bd4Smrg	echo c4-convex-bsd
7459bc46bd4Smrg        exit ;;
7469bc46bd4Smrg    CRAY*Y-MP:*:*:*)
7479bc46bd4Smrg	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7489bc46bd4Smrg	exit ;;
7499bc46bd4Smrg    CRAY*[A-Z]90:*:*:*)
7509bc46bd4Smrg	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
7519bc46bd4Smrg	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
7529bc46bd4Smrg	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
7539bc46bd4Smrg	      -e 's/\.[^.]*$/.X/'
7549bc46bd4Smrg	exit ;;
7559bc46bd4Smrg    CRAY*TS:*:*:*)
7569bc46bd4Smrg	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7579bc46bd4Smrg	exit ;;
7589bc46bd4Smrg    CRAY*T3E:*:*:*)
7599bc46bd4Smrg	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7609bc46bd4Smrg	exit ;;
7619bc46bd4Smrg    CRAY*SV1:*:*:*)
7629bc46bd4Smrg	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7639bc46bd4Smrg	exit ;;
7649bc46bd4Smrg    *:UNICOS/mp:*:*)
7659bc46bd4Smrg	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7669bc46bd4Smrg	exit ;;
7679bc46bd4Smrg    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
7689bc46bd4Smrg	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
7699bc46bd4Smrg        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
7709bc46bd4Smrg        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
7719bc46bd4Smrg        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
7729bc46bd4Smrg        exit ;;
7739bc46bd4Smrg    5000:UNIX_System_V:4.*:*)
7749bc46bd4Smrg        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
7759bc46bd4Smrg        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
7769bc46bd4Smrg        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
7779bc46bd4Smrg	exit ;;
7789bc46bd4Smrg    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
7799bc46bd4Smrg	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
7809bc46bd4Smrg	exit ;;
7819bc46bd4Smrg    sparc*:BSD/OS:*:*)
7829bc46bd4Smrg	echo sparc-unknown-bsdi${UNAME_RELEASE}
7839bc46bd4Smrg	exit ;;
7849bc46bd4Smrg    *:BSD/OS:*:*)
7859bc46bd4Smrg	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
7869bc46bd4Smrg	exit ;;
7879bc46bd4Smrg    *:FreeBSD:*:*)
7889bc46bd4Smrg	case ${UNAME_MACHINE} in
7899bc46bd4Smrg	    pc98)
7909bc46bd4Smrg		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7919bc46bd4Smrg	    amd64)
7929bc46bd4Smrg		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7939bc46bd4Smrg	    *)
7949bc46bd4Smrg		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7959bc46bd4Smrg	esac
7969bc46bd4Smrg	exit ;;
7979bc46bd4Smrg    i*:CYGWIN*:*)
7989bc46bd4Smrg	echo ${UNAME_MACHINE}-pc-cygwin
7999bc46bd4Smrg	exit ;;
8009bc46bd4Smrg    *:MINGW*:*)
8019bc46bd4Smrg	echo ${UNAME_MACHINE}-pc-mingw32
8029bc46bd4Smrg	exit ;;
8039bc46bd4Smrg    i*:windows32*:*)
8049bc46bd4Smrg    	# uname -m includes "-pc" on this system.
8059bc46bd4Smrg    	echo ${UNAME_MACHINE}-mingw32
8069bc46bd4Smrg	exit ;;
8079bc46bd4Smrg    i*:PW*:*)
8089bc46bd4Smrg	echo ${UNAME_MACHINE}-pc-pw32
8099bc46bd4Smrg	exit ;;
8109bc46bd4Smrg    *:Interix*:[3456]*)
8119bc46bd4Smrg    	case ${UNAME_MACHINE} in
8129bc46bd4Smrg	    x86)
8139bc46bd4Smrg		echo i586-pc-interix${UNAME_RELEASE}
8149bc46bd4Smrg		exit ;;
8159bc46bd4Smrg	    EM64T | authenticamd | genuineintel)
8169bc46bd4Smrg		echo x86_64-unknown-interix${UNAME_RELEASE}
8179bc46bd4Smrg		exit ;;
8189bc46bd4Smrg	    IA64)
8199bc46bd4Smrg		echo ia64-unknown-interix${UNAME_RELEASE}
8209bc46bd4Smrg		exit ;;
8219bc46bd4Smrg	esac ;;
8229bc46bd4Smrg    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
8239bc46bd4Smrg	echo i${UNAME_MACHINE}-pc-mks
8249bc46bd4Smrg	exit ;;
8259bc46bd4Smrg    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
8269bc46bd4Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
8279bc46bd4Smrg	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
8289bc46bd4Smrg	# UNAME_MACHINE based on the output of uname instead of i386?
8299bc46bd4Smrg	echo i586-pc-interix
8309bc46bd4Smrg	exit ;;
8319bc46bd4Smrg    i*:UWIN*:*)
8329bc46bd4Smrg	echo ${UNAME_MACHINE}-pc-uwin
8339bc46bd4Smrg	exit ;;
8349bc46bd4Smrg    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
8359bc46bd4Smrg	echo x86_64-unknown-cygwin
8369bc46bd4Smrg	exit ;;
8379bc46bd4Smrg    p*:CYGWIN*:*)
8389bc46bd4Smrg	echo powerpcle-unknown-cygwin
8399bc46bd4Smrg	exit ;;
8409bc46bd4Smrg    prep*:SunOS:5.*:*)
8419bc46bd4Smrg	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
8429bc46bd4Smrg	exit ;;
8439bc46bd4Smrg    *:GNU:*:*)
8449bc46bd4Smrg	# the GNU system
8459bc46bd4Smrg	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
8469bc46bd4Smrg	exit ;;
8479bc46bd4Smrg    *:GNU/*:*:*)
8489bc46bd4Smrg	# other systems with GNU libc and userland
8499bc46bd4Smrg	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
8509bc46bd4Smrg	exit ;;
8519bc46bd4Smrg    i*86:Minix:*:*)
8529bc46bd4Smrg	echo ${UNAME_MACHINE}-pc-minix
8539bc46bd4Smrg	exit ;;
8549bc46bd4Smrg    arm*:Linux:*:*)
8559bc46bd4Smrg	eval $set_cc_for_build
8569bc46bd4Smrg	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
8579bc46bd4Smrg	    | grep -q __ARM_EABI__
8589bc46bd4Smrg	then
8599bc46bd4Smrg	    echo ${UNAME_MACHINE}-unknown-linux-gnu
8609bc46bd4Smrg	else
8619bc46bd4Smrg	    echo ${UNAME_MACHINE}-unknown-linux-gnueabi
8629bc46bd4Smrg	fi
8639bc46bd4Smrg	exit ;;
8649bc46bd4Smrg    avr32*:Linux:*:*)
8659bc46bd4Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
8669bc46bd4Smrg	exit ;;
8679bc46bd4Smrg    cris:Linux:*:*)
8689bc46bd4Smrg	echo cris-axis-linux-gnu
8699bc46bd4Smrg	exit ;;
8709bc46bd4Smrg    crisv32:Linux:*:*)
8719bc46bd4Smrg	echo crisv32-axis-linux-gnu
8729bc46bd4Smrg	exit ;;
8739bc46bd4Smrg    frv:Linux:*:*)
8749bc46bd4Smrg    	echo frv-unknown-linux-gnu
8759bc46bd4Smrg	exit ;;
8769bc46bd4Smrg    ia64:Linux:*:*)
8779bc46bd4Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
8789bc46bd4Smrg	exit ;;
8799bc46bd4Smrg    m32r*:Linux:*:*)
8809bc46bd4Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
8819bc46bd4Smrg	exit ;;
8829bc46bd4Smrg    m68*:Linux:*:*)
8839bc46bd4Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
8849bc46bd4Smrg	exit ;;
8859bc46bd4Smrg    mips:Linux:*:*)
8869bc46bd4Smrg	eval $set_cc_for_build
8879bc46bd4Smrg	sed 's/^	//' << EOF >$dummy.c
8889bc46bd4Smrg	#undef CPU
8899bc46bd4Smrg	#undef mips
8909bc46bd4Smrg	#undef mipsel
8919bc46bd4Smrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
8929bc46bd4Smrg	CPU=mipsel
8939bc46bd4Smrg	#else
8949bc46bd4Smrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
8959bc46bd4Smrg	CPU=mips
8969bc46bd4Smrg	#else
8979bc46bd4Smrg	CPU=
8989bc46bd4Smrg	#endif
8999bc46bd4Smrg	#endif
9009bc46bd4SmrgEOF
9019bc46bd4Smrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
9029bc46bd4Smrg	    /^CPU/{
9039bc46bd4Smrg		s: ::g
9049bc46bd4Smrg		p
9059bc46bd4Smrg	    }'`"
9069bc46bd4Smrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
9079bc46bd4Smrg	;;
9089bc46bd4Smrg    mips64:Linux:*:*)
9099bc46bd4Smrg	eval $set_cc_for_build
9109bc46bd4Smrg	sed 's/^	//' << EOF >$dummy.c
9119bc46bd4Smrg	#undef CPU
9129bc46bd4Smrg	#undef mips64
9139bc46bd4Smrg	#undef mips64el
9149bc46bd4Smrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
9159bc46bd4Smrg	CPU=mips64el
9169bc46bd4Smrg	#else
9179bc46bd4Smrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
9189bc46bd4Smrg	CPU=mips64
9199bc46bd4Smrg	#else
9209bc46bd4Smrg	CPU=
9219bc46bd4Smrg	#endif
9229bc46bd4Smrg	#endif
9239bc46bd4SmrgEOF
9249bc46bd4Smrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
9259bc46bd4Smrg	    /^CPU/{
9269bc46bd4Smrg		s: ::g
9279bc46bd4Smrg		p
9289bc46bd4Smrg	    }'`"
9299bc46bd4Smrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
9309bc46bd4Smrg	;;
9319bc46bd4Smrg    or32:Linux:*:*)
9329bc46bd4Smrg	echo or32-unknown-linux-gnu
9339bc46bd4Smrg	exit ;;
9349bc46bd4Smrg    ppc:Linux:*:*)
9359bc46bd4Smrg	echo powerpc-unknown-linux-gnu
9369bc46bd4Smrg	exit ;;
9379bc46bd4Smrg    ppc64:Linux:*:*)
9389bc46bd4Smrg	echo powerpc64-unknown-linux-gnu
9399bc46bd4Smrg	exit ;;
9409bc46bd4Smrg    alpha:Linux:*:*)
9419bc46bd4Smrg	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
9429bc46bd4Smrg	  EV5)   UNAME_MACHINE=alphaev5 ;;
9439bc46bd4Smrg	  EV56)  UNAME_MACHINE=alphaev56 ;;
9449bc46bd4Smrg	  PCA56) UNAME_MACHINE=alphapca56 ;;
9459bc46bd4Smrg	  PCA57) UNAME_MACHINE=alphapca56 ;;
9469bc46bd4Smrg	  EV6)   UNAME_MACHINE=alphaev6 ;;
9479bc46bd4Smrg	  EV67)  UNAME_MACHINE=alphaev67 ;;
9489bc46bd4Smrg	  EV68*) UNAME_MACHINE=alphaev68 ;;
9499bc46bd4Smrg        esac
9509bc46bd4Smrg	objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
9519bc46bd4Smrg	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
9529bc46bd4Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
9539bc46bd4Smrg	exit ;;
9549bc46bd4Smrg    padre:Linux:*:*)
9559bc46bd4Smrg	echo sparc-unknown-linux-gnu
9569bc46bd4Smrg	exit ;;
9579bc46bd4Smrg    parisc:Linux:*:* | hppa:Linux:*:*)
9589bc46bd4Smrg	# Look for CPU level
9599bc46bd4Smrg	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
9609bc46bd4Smrg	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
9619bc46bd4Smrg	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
9629bc46bd4Smrg	  *)    echo hppa-unknown-linux-gnu ;;
9639bc46bd4Smrg	esac
9649bc46bd4Smrg	exit ;;
9659bc46bd4Smrg    parisc64:Linux:*:* | hppa64:Linux:*:*)
9669bc46bd4Smrg	echo hppa64-unknown-linux-gnu
9679bc46bd4Smrg	exit ;;
9689bc46bd4Smrg    s390:Linux:*:* | s390x:Linux:*:*)
9699bc46bd4Smrg	echo ${UNAME_MACHINE}-ibm-linux
9709bc46bd4Smrg	exit ;;
9719bc46bd4Smrg    sh64*:Linux:*:*)
9729bc46bd4Smrg    	echo ${UNAME_MACHINE}-unknown-linux-gnu
9739bc46bd4Smrg	exit ;;
9749bc46bd4Smrg    sh*:Linux:*:*)
9759bc46bd4Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9769bc46bd4Smrg	exit ;;
9779bc46bd4Smrg    sparc:Linux:*:* | sparc64:Linux:*:*)
9789bc46bd4Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9799bc46bd4Smrg	exit ;;
9809bc46bd4Smrg    vax:Linux:*:*)
9819bc46bd4Smrg	echo ${UNAME_MACHINE}-dec-linux-gnu
9829bc46bd4Smrg	exit ;;
9839bc46bd4Smrg    x86_64:Linux:*:*)
9849bc46bd4Smrg	echo x86_64-unknown-linux-gnu
9859bc46bd4Smrg	exit ;;
9869bc46bd4Smrg    xtensa*:Linux:*:*)
9879bc46bd4Smrg    	echo ${UNAME_MACHINE}-unknown-linux-gnu
9889bc46bd4Smrg	exit ;;
9899bc46bd4Smrg    i*86:Linux:*:*)
9909bc46bd4Smrg	# The BFD linker knows what the default object file format is, so
9919bc46bd4Smrg	# first see if it will tell us. cd to the root directory to prevent
9929bc46bd4Smrg	# problems with other programs or directories called `ld' in the path.
9939bc46bd4Smrg	# Set LC_ALL=C to ensure ld outputs messages in English.
9949bc46bd4Smrg	ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
9959bc46bd4Smrg			 | sed -ne '/supported targets:/!d
9969bc46bd4Smrg				    s/[ 	][ 	]*/ /g
9979bc46bd4Smrg				    s/.*supported targets: *//
9989bc46bd4Smrg				    s/ .*//
9999bc46bd4Smrg				    p'`
10009bc46bd4Smrg        case "$ld_supported_targets" in
10019bc46bd4Smrg	  elf32-i386)
10029bc46bd4Smrg		TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
10039bc46bd4Smrg		;;
10049bc46bd4Smrg	  a.out-i386-linux)
10059bc46bd4Smrg		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
10069bc46bd4Smrg		exit ;;
10079bc46bd4Smrg	  "")
10089bc46bd4Smrg		# Either a pre-BFD a.out linker (linux-gnuoldld) or
10099bc46bd4Smrg		# one that does not give us useful --help.
10109bc46bd4Smrg		echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
10119bc46bd4Smrg		exit ;;
10129bc46bd4Smrg	esac
10139bc46bd4Smrg	# Determine whether the default compiler is a.out or elf
10149bc46bd4Smrg	eval $set_cc_for_build
10159bc46bd4Smrg	sed 's/^	//' << EOF >$dummy.c
10169bc46bd4Smrg	#include <features.h>
10179bc46bd4Smrg	#ifdef __ELF__
10189bc46bd4Smrg	# ifdef __GLIBC__
10199bc46bd4Smrg	#  if __GLIBC__ >= 2
10209bc46bd4Smrg	LIBC=gnu
10219bc46bd4Smrg	#  else
10229bc46bd4Smrg	LIBC=gnulibc1
10239bc46bd4Smrg	#  endif
10249bc46bd4Smrg	# else
10259bc46bd4Smrg	LIBC=gnulibc1
10269bc46bd4Smrg	# endif
10279bc46bd4Smrg	#else
10289bc46bd4Smrg	#if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
10299bc46bd4Smrg	LIBC=gnu
10309bc46bd4Smrg	#else
10319bc46bd4Smrg	LIBC=gnuaout
10329bc46bd4Smrg	#endif
10339bc46bd4Smrg	#endif
10349bc46bd4Smrg	#ifdef __dietlibc__
10359bc46bd4Smrg	LIBC=dietlibc
10369bc46bd4Smrg	#endif
10379bc46bd4SmrgEOF
10389bc46bd4Smrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
10399bc46bd4Smrg	    /^LIBC/{
10409bc46bd4Smrg		s: ::g
10419bc46bd4Smrg		p
10429bc46bd4Smrg	    }'`"
10439bc46bd4Smrg	test x"${LIBC}" != x && {
10449bc46bd4Smrg		echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
10459bc46bd4Smrg		exit
10469bc46bd4Smrg	}
10479bc46bd4Smrg	test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
10489bc46bd4Smrg	;;
10499bc46bd4Smrg    i*86:DYNIX/ptx:4*:*)
10509bc46bd4Smrg	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
10519bc46bd4Smrg	# earlier versions are messed up and put the nodename in both
10529bc46bd4Smrg	# sysname and nodename.
10539bc46bd4Smrg	echo i386-sequent-sysv4
10549bc46bd4Smrg	exit ;;
10559bc46bd4Smrg    i*86:UNIX_SV:4.2MP:2.*)
10569bc46bd4Smrg        # Unixware is an offshoot of SVR4, but it has its own version
10579bc46bd4Smrg        # number series starting with 2...
10589bc46bd4Smrg        # I am not positive that other SVR4 systems won't match this,
10599bc46bd4Smrg	# I just have to hope.  -- rms.
10609bc46bd4Smrg        # Use sysv4.2uw... so that sysv4* matches it.
10619bc46bd4Smrg	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
10629bc46bd4Smrg	exit ;;
10639bc46bd4Smrg    i*86:OS/2:*:*)
10649bc46bd4Smrg	# If we were able to find `uname', then EMX Unix compatibility
10659bc46bd4Smrg	# is probably installed.
10669bc46bd4Smrg	echo ${UNAME_MACHINE}-pc-os2-emx
10679bc46bd4Smrg	exit ;;
10689bc46bd4Smrg    i*86:XTS-300:*:STOP)
10699bc46bd4Smrg	echo ${UNAME_MACHINE}-unknown-stop
10709bc46bd4Smrg	exit ;;
10719bc46bd4Smrg    i*86:atheos:*:*)
10729bc46bd4Smrg	echo ${UNAME_MACHINE}-unknown-atheos
10739bc46bd4Smrg	exit ;;
10749bc46bd4Smrg    i*86:syllable:*:*)
10759bc46bd4Smrg	echo ${UNAME_MACHINE}-pc-syllable
10769bc46bd4Smrg	exit ;;
10779bc46bd4Smrg    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
10789bc46bd4Smrg	echo i386-unknown-lynxos${UNAME_RELEASE}
10799bc46bd4Smrg	exit ;;
10809bc46bd4Smrg    i*86:*DOS:*:*)
10819bc46bd4Smrg	echo ${UNAME_MACHINE}-pc-msdosdjgpp
10829bc46bd4Smrg	exit ;;
10839bc46bd4Smrg    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
10849bc46bd4Smrg	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
10859bc46bd4Smrg	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
10869bc46bd4Smrg		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
10879bc46bd4Smrg	else
10889bc46bd4Smrg		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
10899bc46bd4Smrg	fi
10909bc46bd4Smrg	exit ;;
10919bc46bd4Smrg    i*86:*:5:[678]*)
10929bc46bd4Smrg    	# UnixWare 7.x, OpenUNIX and OpenServer 6.
10939bc46bd4Smrg	case `/bin/uname -X | grep "^Machine"` in
10949bc46bd4Smrg	    *486*)	     UNAME_MACHINE=i486 ;;
10959bc46bd4Smrg	    *Pentium)	     UNAME_MACHINE=i586 ;;
10969bc46bd4Smrg	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
10979bc46bd4Smrg	esac
10989bc46bd4Smrg	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
10999bc46bd4Smrg	exit ;;
11009bc46bd4Smrg    i*86:*:3.2:*)
11019bc46bd4Smrg	if test -f /usr/options/cb.name; then
11029bc46bd4Smrg		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
11039bc46bd4Smrg		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
11049bc46bd4Smrg	elif /bin/uname -X 2>/dev/null >/dev/null ; then
11059bc46bd4Smrg		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
11069bc46bd4Smrg		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
11079bc46bd4Smrg		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
11089bc46bd4Smrg			&& UNAME_MACHINE=i586
11099bc46bd4Smrg		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
11109bc46bd4Smrg			&& UNAME_MACHINE=i686
11119bc46bd4Smrg		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
11129bc46bd4Smrg			&& UNAME_MACHINE=i686
11139bc46bd4Smrg		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
11149bc46bd4Smrg	else
11159bc46bd4Smrg		echo ${UNAME_MACHINE}-pc-sysv32
11169bc46bd4Smrg	fi
11179bc46bd4Smrg	exit ;;
11189bc46bd4Smrg    pc:*:*:*)
11199bc46bd4Smrg	# Left here for compatibility:
11209bc46bd4Smrg        # uname -m prints for DJGPP always 'pc', but it prints nothing about
11219bc46bd4Smrg        # the processor, so we play safe by assuming i586.
11229bc46bd4Smrg	# Note: whatever this is, it MUST be the same as what config.sub
11239bc46bd4Smrg	# prints for the "djgpp" host, or else GDB configury will decide that
11249bc46bd4Smrg	# this is a cross-build.
11259bc46bd4Smrg	echo i586-pc-msdosdjgpp
11269bc46bd4Smrg        exit ;;
11279bc46bd4Smrg    Intel:Mach:3*:*)
11289bc46bd4Smrg	echo i386-pc-mach3
11299bc46bd4Smrg	exit ;;
11309bc46bd4Smrg    paragon:*:*:*)
11319bc46bd4Smrg	echo i860-intel-osf1
11329bc46bd4Smrg	exit ;;
11339bc46bd4Smrg    i860:*:4.*:*) # i860-SVR4
11349bc46bd4Smrg	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
11359bc46bd4Smrg	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
11369bc46bd4Smrg	else # Add other i860-SVR4 vendors below as they are discovered.
11379bc46bd4Smrg	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
11389bc46bd4Smrg	fi
11399bc46bd4Smrg	exit ;;
11409bc46bd4Smrg    mini*:CTIX:SYS*5:*)
11419bc46bd4Smrg	# "miniframe"
11429bc46bd4Smrg	echo m68010-convergent-sysv
11439bc46bd4Smrg	exit ;;
11449bc46bd4Smrg    mc68k:UNIX:SYSTEM5:3.51m)
11459bc46bd4Smrg	echo m68k-convergent-sysv
11469bc46bd4Smrg	exit ;;
11479bc46bd4Smrg    M680?0:D-NIX:5.3:*)
11489bc46bd4Smrg	echo m68k-diab-dnix
11499bc46bd4Smrg	exit ;;
11509bc46bd4Smrg    M68*:*:R3V[5678]*:*)
11519bc46bd4Smrg	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
11529bc46bd4Smrg    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)
11539bc46bd4Smrg	OS_REL=''
11549bc46bd4Smrg	test -r /etc/.relid \
11559bc46bd4Smrg	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
11569bc46bd4Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
11579bc46bd4Smrg	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
11589bc46bd4Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
11599bc46bd4Smrg	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
11609bc46bd4Smrg    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
11619bc46bd4Smrg        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
11629bc46bd4Smrg          && { echo i486-ncr-sysv4; exit; } ;;
11639bc46bd4Smrg    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
11649bc46bd4Smrg	OS_REL='.3'
11659bc46bd4Smrg	test -r /etc/.relid \
11669bc46bd4Smrg	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
11679bc46bd4Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
11689bc46bd4Smrg	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
11699bc46bd4Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
11709bc46bd4Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
11719bc46bd4Smrg	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
11729bc46bd4Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
11739bc46bd4Smrg    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
11749bc46bd4Smrg	echo m68k-unknown-lynxos${UNAME_RELEASE}
11759bc46bd4Smrg	exit ;;
11769bc46bd4Smrg    mc68030:UNIX_System_V:4.*:*)
11779bc46bd4Smrg	echo m68k-atari-sysv4
11789bc46bd4Smrg	exit ;;
11799bc46bd4Smrg    TSUNAMI:LynxOS:2.*:*)
11809bc46bd4Smrg	echo sparc-unknown-lynxos${UNAME_RELEASE}
11819bc46bd4Smrg	exit ;;
11829bc46bd4Smrg    rs6000:LynxOS:2.*:*)
11839bc46bd4Smrg	echo rs6000-unknown-lynxos${UNAME_RELEASE}
11849bc46bd4Smrg	exit ;;
11859bc46bd4Smrg    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
11869bc46bd4Smrg	echo powerpc-unknown-lynxos${UNAME_RELEASE}
11879bc46bd4Smrg	exit ;;
11889bc46bd4Smrg    SM[BE]S:UNIX_SV:*:*)
11899bc46bd4Smrg	echo mips-dde-sysv${UNAME_RELEASE}
11909bc46bd4Smrg	exit ;;
11919bc46bd4Smrg    RM*:ReliantUNIX-*:*:*)
11929bc46bd4Smrg	echo mips-sni-sysv4
11939bc46bd4Smrg	exit ;;
11949bc46bd4Smrg    RM*:SINIX-*:*:*)
11959bc46bd4Smrg	echo mips-sni-sysv4
11969bc46bd4Smrg	exit ;;
11979bc46bd4Smrg    *:SINIX-*:*:*)
11989bc46bd4Smrg	if uname -p 2>/dev/null >/dev/null ; then
11999bc46bd4Smrg		UNAME_MACHINE=`(uname -p) 2>/dev/null`
12009bc46bd4Smrg		echo ${UNAME_MACHINE}-sni-sysv4
12019bc46bd4Smrg	else
12029bc46bd4Smrg		echo ns32k-sni-sysv
12039bc46bd4Smrg	fi
12049bc46bd4Smrg	exit ;;
12059bc46bd4Smrg    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
12069bc46bd4Smrg                      # says <Richard.M.Bartel@ccMail.Census.GOV>
12079bc46bd4Smrg        echo i586-unisys-sysv4
12089bc46bd4Smrg        exit ;;
12099bc46bd4Smrg    *:UNIX_System_V:4*:FTX*)
12109bc46bd4Smrg	# From Gerald Hewes <hewes@openmarket.com>.
12119bc46bd4Smrg	# How about differentiating between stratus architectures? -djm
12129bc46bd4Smrg	echo hppa1.1-stratus-sysv4
12139bc46bd4Smrg	exit ;;
12149bc46bd4Smrg    *:*:*:FTX*)
12159bc46bd4Smrg	# From seanf@swdc.stratus.com.
12169bc46bd4Smrg	echo i860-stratus-sysv4
12179bc46bd4Smrg	exit ;;
12189bc46bd4Smrg    i*86:VOS:*:*)
12199bc46bd4Smrg	# From Paul.Green@stratus.com.
12209bc46bd4Smrg	echo ${UNAME_MACHINE}-stratus-vos
12219bc46bd4Smrg	exit ;;
12229bc46bd4Smrg    *:VOS:*:*)
12239bc46bd4Smrg	# From Paul.Green@stratus.com.
12249bc46bd4Smrg	echo hppa1.1-stratus-vos
12259bc46bd4Smrg	exit ;;
12269bc46bd4Smrg    mc68*:A/UX:*:*)
12279bc46bd4Smrg	echo m68k-apple-aux${UNAME_RELEASE}
12289bc46bd4Smrg	exit ;;
12299bc46bd4Smrg    news*:NEWS-OS:6*:*)
12309bc46bd4Smrg	echo mips-sony-newsos6
12319bc46bd4Smrg	exit ;;
12329bc46bd4Smrg    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
12339bc46bd4Smrg	if [ -d /usr/nec ]; then
12349bc46bd4Smrg	        echo mips-nec-sysv${UNAME_RELEASE}
12359bc46bd4Smrg	else
12369bc46bd4Smrg	        echo mips-unknown-sysv${UNAME_RELEASE}
12379bc46bd4Smrg	fi
12389bc46bd4Smrg        exit ;;
12399bc46bd4Smrg    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
12409bc46bd4Smrg	echo powerpc-be-beos
12419bc46bd4Smrg	exit ;;
12429bc46bd4Smrg    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
12439bc46bd4Smrg	echo powerpc-apple-beos
12449bc46bd4Smrg	exit ;;
12459bc46bd4Smrg    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
12469bc46bd4Smrg	echo i586-pc-beos
12479bc46bd4Smrg	exit ;;
12489bc46bd4Smrg    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
12499bc46bd4Smrg	echo i586-pc-haiku
12509bc46bd4Smrg	exit ;;
12519bc46bd4Smrg    SX-4:SUPER-UX:*:*)
12529bc46bd4Smrg	echo sx4-nec-superux${UNAME_RELEASE}
12539bc46bd4Smrg	exit ;;
12549bc46bd4Smrg    SX-5:SUPER-UX:*:*)
12559bc46bd4Smrg	echo sx5-nec-superux${UNAME_RELEASE}
12569bc46bd4Smrg	exit ;;
12579bc46bd4Smrg    SX-6:SUPER-UX:*:*)
12589bc46bd4Smrg	echo sx6-nec-superux${UNAME_RELEASE}
12599bc46bd4Smrg	exit ;;
12609bc46bd4Smrg    SX-7:SUPER-UX:*:*)
12619bc46bd4Smrg	echo sx7-nec-superux${UNAME_RELEASE}
12629bc46bd4Smrg	exit ;;
12639bc46bd4Smrg    SX-8:SUPER-UX:*:*)
12649bc46bd4Smrg	echo sx8-nec-superux${UNAME_RELEASE}
12659bc46bd4Smrg	exit ;;
12669bc46bd4Smrg    SX-8R:SUPER-UX:*:*)
12679bc46bd4Smrg	echo sx8r-nec-superux${UNAME_RELEASE}
12689bc46bd4Smrg	exit ;;
12699bc46bd4Smrg    Power*:Rhapsody:*:*)
12709bc46bd4Smrg	echo powerpc-apple-rhapsody${UNAME_RELEASE}
12719bc46bd4Smrg	exit ;;
12729bc46bd4Smrg    *:Rhapsody:*:*)
12739bc46bd4Smrg	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
12749bc46bd4Smrg	exit ;;
12759bc46bd4Smrg    *:Darwin:*:*)
12769bc46bd4Smrg	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
12779bc46bd4Smrg	case $UNAME_PROCESSOR in
12789bc46bd4Smrg	    unknown) UNAME_PROCESSOR=powerpc ;;
12799bc46bd4Smrg	esac
12809bc46bd4Smrg	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
12819bc46bd4Smrg	exit ;;
12829bc46bd4Smrg    *:procnto*:*:* | *:QNX:[0123456789]*:*)
12839bc46bd4Smrg	UNAME_PROCESSOR=`uname -p`
12849bc46bd4Smrg	if test "$UNAME_PROCESSOR" = "x86"; then
12859bc46bd4Smrg		UNAME_PROCESSOR=i386
12869bc46bd4Smrg		UNAME_MACHINE=pc
12879bc46bd4Smrg	fi
12889bc46bd4Smrg	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
12899bc46bd4Smrg	exit ;;
12909bc46bd4Smrg    *:QNX:*:4*)
12919bc46bd4Smrg	echo i386-pc-qnx
12929bc46bd4Smrg	exit ;;
12939bc46bd4Smrg    NSE-?:NONSTOP_KERNEL:*:*)
12949bc46bd4Smrg	echo nse-tandem-nsk${UNAME_RELEASE}
12959bc46bd4Smrg	exit ;;
12969bc46bd4Smrg    NSR-?:NONSTOP_KERNEL:*:*)
12979bc46bd4Smrg	echo nsr-tandem-nsk${UNAME_RELEASE}
12989bc46bd4Smrg	exit ;;
12999bc46bd4Smrg    *:NonStop-UX:*:*)
13009bc46bd4Smrg	echo mips-compaq-nonstopux
13019bc46bd4Smrg	exit ;;
13029bc46bd4Smrg    BS2000:POSIX*:*:*)
13039bc46bd4Smrg	echo bs2000-siemens-sysv
13049bc46bd4Smrg	exit ;;
13059bc46bd4Smrg    DS/*:UNIX_System_V:*:*)
13069bc46bd4Smrg	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
13079bc46bd4Smrg	exit ;;
13089bc46bd4Smrg    *:Plan9:*:*)
13099bc46bd4Smrg	# "uname -m" is not consistent, so use $cputype instead. 386
13109bc46bd4Smrg	# is converted to i386 for consistency with other x86
13119bc46bd4Smrg	# operating systems.
13129bc46bd4Smrg	if test "$cputype" = "386"; then
13139bc46bd4Smrg	    UNAME_MACHINE=i386
13149bc46bd4Smrg	else
13159bc46bd4Smrg	    UNAME_MACHINE="$cputype"
13169bc46bd4Smrg	fi
13179bc46bd4Smrg	echo ${UNAME_MACHINE}-unknown-plan9
13189bc46bd4Smrg	exit ;;
13199bc46bd4Smrg    *:TOPS-10:*:*)
13209bc46bd4Smrg	echo pdp10-unknown-tops10
13219bc46bd4Smrg	exit ;;
13229bc46bd4Smrg    *:TENEX:*:*)
13239bc46bd4Smrg	echo pdp10-unknown-tenex
13249bc46bd4Smrg	exit ;;
13259bc46bd4Smrg    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
13269bc46bd4Smrg	echo pdp10-dec-tops20
13279bc46bd4Smrg	exit ;;
13289bc46bd4Smrg    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
13299bc46bd4Smrg	echo pdp10-xkl-tops20
13309bc46bd4Smrg	exit ;;
13319bc46bd4Smrg    *:TOPS-20:*:*)
13329bc46bd4Smrg	echo pdp10-unknown-tops20
13339bc46bd4Smrg	exit ;;
13349bc46bd4Smrg    *:ITS:*:*)
13359bc46bd4Smrg	echo pdp10-unknown-its
13369bc46bd4Smrg	exit ;;
13379bc46bd4Smrg    SEI:*:*:SEIUX)
13389bc46bd4Smrg        echo mips-sei-seiux${UNAME_RELEASE}
13399bc46bd4Smrg	exit ;;
13409bc46bd4Smrg    *:DragonFly:*:*)
13419bc46bd4Smrg	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
13429bc46bd4Smrg	exit ;;
13439bc46bd4Smrg    *:*VMS:*:*)
13449bc46bd4Smrg    	UNAME_MACHINE=`(uname -p) 2>/dev/null`
13459bc46bd4Smrg	case "${UNAME_MACHINE}" in
13469bc46bd4Smrg	    A*) echo alpha-dec-vms ; exit ;;
13479bc46bd4Smrg	    I*) echo ia64-dec-vms ; exit ;;
13489bc46bd4Smrg	    V*) echo vax-dec-vms ; exit ;;
13499bc46bd4Smrg	esac ;;
13509bc46bd4Smrg    *:XENIX:*:SysV)
13519bc46bd4Smrg	echo i386-pc-xenix
13529bc46bd4Smrg	exit ;;
13539bc46bd4Smrg    i*86:skyos:*:*)
13549bc46bd4Smrg	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
13559bc46bd4Smrg	exit ;;
13569bc46bd4Smrg    i*86:rdos:*:*)
13579bc46bd4Smrg	echo ${UNAME_MACHINE}-pc-rdos
13589bc46bd4Smrg	exit ;;
13599bc46bd4Smrg    i*86:AROS:*:*)
13609bc46bd4Smrg	echo ${UNAME_MACHINE}-pc-aros
13619bc46bd4Smrg	exit ;;
13629bc46bd4Smrgesac
13639bc46bd4Smrg
13649bc46bd4Smrg#echo '(No uname command or uname output not recognized.)' 1>&2
13659bc46bd4Smrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
13669bc46bd4Smrg
13679bc46bd4Smrgeval $set_cc_for_build
13689bc46bd4Smrgcat >$dummy.c <<EOF
13699bc46bd4Smrg#ifdef _SEQUENT_
13709bc46bd4Smrg# include <sys/types.h>
13719bc46bd4Smrg# include <sys/utsname.h>
13729bc46bd4Smrg#endif
13739bc46bd4Smrgmain ()
13749bc46bd4Smrg{
13759bc46bd4Smrg#if defined (sony)
13769bc46bd4Smrg#if defined (MIPSEB)
13779bc46bd4Smrg  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
13789bc46bd4Smrg     I don't know....  */
13799bc46bd4Smrg  printf ("mips-sony-bsd\n"); exit (0);
13809bc46bd4Smrg#else
13819bc46bd4Smrg#include <sys/param.h>
13829bc46bd4Smrg  printf ("m68k-sony-newsos%s\n",
13839bc46bd4Smrg#ifdef NEWSOS4
13849bc46bd4Smrg          "4"
13859bc46bd4Smrg#else
13869bc46bd4Smrg	  ""
13879bc46bd4Smrg#endif
13889bc46bd4Smrg         ); exit (0);
13899bc46bd4Smrg#endif
13909bc46bd4Smrg#endif
13919bc46bd4Smrg
13929bc46bd4Smrg#if defined (__arm) && defined (__acorn) && defined (__unix)
13939bc46bd4Smrg  printf ("arm-acorn-riscix\n"); exit (0);
13949bc46bd4Smrg#endif
13959bc46bd4Smrg
13969bc46bd4Smrg#if defined (hp300) && !defined (hpux)
13979bc46bd4Smrg  printf ("m68k-hp-bsd\n"); exit (0);
13989bc46bd4Smrg#endif
13999bc46bd4Smrg
14009bc46bd4Smrg#if defined (NeXT)
14019bc46bd4Smrg#if !defined (__ARCHITECTURE__)
14029bc46bd4Smrg#define __ARCHITECTURE__ "m68k"
14039bc46bd4Smrg#endif
14049bc46bd4Smrg  int version;
14059bc46bd4Smrg  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
14069bc46bd4Smrg  if (version < 4)
14079bc46bd4Smrg    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
14089bc46bd4Smrg  else
14099bc46bd4Smrg    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
14109bc46bd4Smrg  exit (0);
14119bc46bd4Smrg#endif
14129bc46bd4Smrg
14139bc46bd4Smrg#if defined (MULTIMAX) || defined (n16)
14149bc46bd4Smrg#if defined (UMAXV)
14159bc46bd4Smrg  printf ("ns32k-encore-sysv\n"); exit (0);
14169bc46bd4Smrg#else
14179bc46bd4Smrg#if defined (CMU)
14189bc46bd4Smrg  printf ("ns32k-encore-mach\n"); exit (0);
14199bc46bd4Smrg#else
14209bc46bd4Smrg  printf ("ns32k-encore-bsd\n"); exit (0);
14219bc46bd4Smrg#endif
14229bc46bd4Smrg#endif
14239bc46bd4Smrg#endif
14249bc46bd4Smrg
14259bc46bd4Smrg#if defined (__386BSD__)
14269bc46bd4Smrg  printf ("i386-pc-bsd\n"); exit (0);
14279bc46bd4Smrg#endif
14289bc46bd4Smrg
14299bc46bd4Smrg#if defined (sequent)
14309bc46bd4Smrg#if defined (i386)
14319bc46bd4Smrg  printf ("i386-sequent-dynix\n"); exit (0);
14329bc46bd4Smrg#endif
14339bc46bd4Smrg#if defined (ns32000)
14349bc46bd4Smrg  printf ("ns32k-sequent-dynix\n"); exit (0);
14359bc46bd4Smrg#endif
14369bc46bd4Smrg#endif
14379bc46bd4Smrg
14389bc46bd4Smrg#if defined (_SEQUENT_)
14399bc46bd4Smrg    struct utsname un;
14409bc46bd4Smrg
14419bc46bd4Smrg    uname(&un);
14429bc46bd4Smrg
14439bc46bd4Smrg    if (strncmp(un.version, "V2", 2) == 0) {
14449bc46bd4Smrg	printf ("i386-sequent-ptx2\n"); exit (0);
14459bc46bd4Smrg    }
14469bc46bd4Smrg    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
14479bc46bd4Smrg	printf ("i386-sequent-ptx1\n"); exit (0);
14489bc46bd4Smrg    }
14499bc46bd4Smrg    printf ("i386-sequent-ptx\n"); exit (0);
14509bc46bd4Smrg
14519bc46bd4Smrg#endif
14529bc46bd4Smrg
14539bc46bd4Smrg#if defined (vax)
14549bc46bd4Smrg# if !defined (ultrix)
14559bc46bd4Smrg#  include <sys/param.h>
14569bc46bd4Smrg#  if defined (BSD)
14579bc46bd4Smrg#   if BSD == 43
14589bc46bd4Smrg      printf ("vax-dec-bsd4.3\n"); exit (0);
14599bc46bd4Smrg#   else
14609bc46bd4Smrg#    if BSD == 199006
14619bc46bd4Smrg      printf ("vax-dec-bsd4.3reno\n"); exit (0);
14629bc46bd4Smrg#    else
14639bc46bd4Smrg      printf ("vax-dec-bsd\n"); exit (0);
14649bc46bd4Smrg#    endif
14659bc46bd4Smrg#   endif
14669bc46bd4Smrg#  else
14679bc46bd4Smrg    printf ("vax-dec-bsd\n"); exit (0);
14689bc46bd4Smrg#  endif
14699bc46bd4Smrg# else
14709bc46bd4Smrg    printf ("vax-dec-ultrix\n"); exit (0);
14719bc46bd4Smrg# endif
14729bc46bd4Smrg#endif
14739bc46bd4Smrg
14749bc46bd4Smrg#if defined (alliant) && defined (i860)
14759bc46bd4Smrg  printf ("i860-alliant-bsd\n"); exit (0);
14769bc46bd4Smrg#endif
14779bc46bd4Smrg
14789bc46bd4Smrg  exit (1);
14799bc46bd4Smrg}
14809bc46bd4SmrgEOF
14819bc46bd4Smrg
14829bc46bd4Smrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
14839bc46bd4Smrg	{ echo "$SYSTEM_NAME"; exit; }
14849bc46bd4Smrg
14859bc46bd4Smrg# Apollos put the system type in the environment.
14869bc46bd4Smrg
14879bc46bd4Smrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
14889bc46bd4Smrg
14899bc46bd4Smrg# Convex versions that predate uname can use getsysinfo(1)
14909bc46bd4Smrg
14919bc46bd4Smrgif [ -x /usr/convex/getsysinfo ]
14929bc46bd4Smrgthen
14939bc46bd4Smrg    case `getsysinfo -f cpu_type` in
14949bc46bd4Smrg    c1*)
14959bc46bd4Smrg	echo c1-convex-bsd
14969bc46bd4Smrg	exit ;;
14979bc46bd4Smrg    c2*)
14989bc46bd4Smrg	if getsysinfo -f scalar_acc
14999bc46bd4Smrg	then echo c32-convex-bsd
15009bc46bd4Smrg	else echo c2-convex-bsd
15019bc46bd4Smrg	fi
15029bc46bd4Smrg	exit ;;
15039bc46bd4Smrg    c34*)
15049bc46bd4Smrg	echo c34-convex-bsd
15059bc46bd4Smrg	exit ;;
15069bc46bd4Smrg    c38*)
15079bc46bd4Smrg	echo c38-convex-bsd
15089bc46bd4Smrg	exit ;;
15099bc46bd4Smrg    c4*)
15109bc46bd4Smrg	echo c4-convex-bsd
15119bc46bd4Smrg	exit ;;
15129bc46bd4Smrg    esac
15139bc46bd4Smrgfi
15149bc46bd4Smrg
15159bc46bd4Smrgcat >&2 <<EOF
15169bc46bd4Smrg$0: unable to guess system type
15179bc46bd4Smrg
15189bc46bd4SmrgThis script, last modified $timestamp, has failed to recognize
15199bc46bd4Smrgthe operating system you are using. It is advised that you
15209bc46bd4Smrgdownload the most up to date version of the config scripts from
15219bc46bd4Smrg
15229bc46bd4Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
15239bc46bd4Smrgand
15249bc46bd4Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
15259bc46bd4Smrg
15269bc46bd4SmrgIf the version you run ($0) is already up to date, please
15279bc46bd4Smrgsend the following data and any information you think might be
15289bc46bd4Smrgpertinent to <config-patches@gnu.org> in order to provide the needed
15299bc46bd4Smrginformation to handle your system.
15309bc46bd4Smrg
15319bc46bd4Smrgconfig.guess timestamp = $timestamp
15329bc46bd4Smrg
15339bc46bd4Smrguname -m = `(uname -m) 2>/dev/null || echo unknown`
15349bc46bd4Smrguname -r = `(uname -r) 2>/dev/null || echo unknown`
15359bc46bd4Smrguname -s = `(uname -s) 2>/dev/null || echo unknown`
15369bc46bd4Smrguname -v = `(uname -v) 2>/dev/null || echo unknown`
15379bc46bd4Smrg
15389bc46bd4Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
15399bc46bd4Smrg/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
15409bc46bd4Smrg
15419bc46bd4Smrghostinfo               = `(hostinfo) 2>/dev/null`
15429bc46bd4Smrg/bin/universe          = `(/bin/universe) 2>/dev/null`
15439bc46bd4Smrg/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
15449bc46bd4Smrg/bin/arch              = `(/bin/arch) 2>/dev/null`
15459bc46bd4Smrg/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
15469bc46bd4Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
15479bc46bd4Smrg
15489bc46bd4SmrgUNAME_MACHINE = ${UNAME_MACHINE}
15499bc46bd4SmrgUNAME_RELEASE = ${UNAME_RELEASE}
15509bc46bd4SmrgUNAME_SYSTEM  = ${UNAME_SYSTEM}
15519bc46bd4SmrgUNAME_VERSION = ${UNAME_VERSION}
15529bc46bd4SmrgEOF
15539bc46bd4Smrg
15549bc46bd4Smrgexit 1
15559bc46bd4Smrg
15569bc46bd4Smrg# Local variables:
15579bc46bd4Smrg# eval: (add-hook 'write-file-hooks 'time-stamp)
15589bc46bd4Smrg# time-stamp-start: "timestamp='"
15599bc46bd4Smrg# time-stamp-format: "%:y-%02m-%02d"
15609bc46bd4Smrg# time-stamp-end: "'"
15619bc46bd4Smrg# End:
1562