config.guess revision 44af7230
18ae04fa6Smrg#! /bin/sh
28ae04fa6Smrg# Attempt to guess a canonical system name.
38ae04fa6Smrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
444af7230Smrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
544af7230Smrg#   Free Software Foundation, Inc.
68ae04fa6Smrg
744af7230Smrgtimestamp='2009-04-27'
88ae04fa6Smrg
98ae04fa6Smrg# This file is free software; you can redistribute it and/or modify it
108ae04fa6Smrg# under the terms of the GNU General Public License as published by
118ae04fa6Smrg# the Free Software Foundation; either version 2 of the License, or
128ae04fa6Smrg# (at your option) any later version.
138ae04fa6Smrg#
148ae04fa6Smrg# This program is distributed in the hope that it will be useful, but
158ae04fa6Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of
168ae04fa6Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
178ae04fa6Smrg# General Public License for more details.
188ae04fa6Smrg#
198ae04fa6Smrg# You should have received a copy of the GNU General Public License
208ae04fa6Smrg# along with this program; if not, write to the Free Software
218ae04fa6Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
228ae04fa6Smrg# 02110-1301, USA.
238ae04fa6Smrg#
248ae04fa6Smrg# As a special exception to the GNU General Public License, if you
258ae04fa6Smrg# distribute this file as part of a program that contains a
268ae04fa6Smrg# configuration script generated by Autoconf, you may include it under
278ae04fa6Smrg# the same distribution terms that you use for the rest of that program.
288ae04fa6Smrg
298ae04fa6Smrg
308ae04fa6Smrg# Originally written by Per Bothner <per@bothner.com>.
318ae04fa6Smrg# Please send patches to <config-patches@gnu.org>.  Submit a context
328ae04fa6Smrg# diff and a properly formatted ChangeLog entry.
338ae04fa6Smrg#
348ae04fa6Smrg# This script attempts to guess a canonical system name similar to
358ae04fa6Smrg# config.sub.  If it succeeds, it prints the system name on stdout, and
368ae04fa6Smrg# exits with 0.  Otherwise, it exits with 1.
378ae04fa6Smrg#
388ae04fa6Smrg# The plan is that this can be called by configure scripts if you
398ae04fa6Smrg# don't specify an explicit build system type.
408ae04fa6Smrg
418ae04fa6Smrgme=`echo "$0" | sed -e 's,.*/,,'`
428ae04fa6Smrg
438ae04fa6Smrgusage="\
448ae04fa6SmrgUsage: $0 [OPTION]
458ae04fa6Smrg
468ae04fa6SmrgOutput the configuration name of the system \`$me' is run on.
478ae04fa6Smrg
488ae04fa6SmrgOperation modes:
498ae04fa6Smrg  -h, --help         print this help, then exit
508ae04fa6Smrg  -t, --time-stamp   print date of last modification, then exit
518ae04fa6Smrg  -v, --version      print version number, then exit
528ae04fa6Smrg
538ae04fa6SmrgReport bugs and patches to <config-patches@gnu.org>."
548ae04fa6Smrg
558ae04fa6Smrgversion="\
568ae04fa6SmrgGNU config.guess ($timestamp)
578ae04fa6Smrg
588ae04fa6SmrgOriginally written by Per Bothner.
5944af7230SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
6044af7230Smrg2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
618ae04fa6Smrg
628ae04fa6SmrgThis is free software; see the source for copying conditions.  There is NO
638ae04fa6Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
648ae04fa6Smrg
658ae04fa6Smrghelp="
668ae04fa6SmrgTry \`$me --help' for more information."
678ae04fa6Smrg
688ae04fa6Smrg# Parse command line
698ae04fa6Smrgwhile test $# -gt 0 ; do
708ae04fa6Smrg  case $1 in
718ae04fa6Smrg    --time-stamp | --time* | -t )
728ae04fa6Smrg       echo "$timestamp" ; exit ;;
738ae04fa6Smrg    --version | -v )
748ae04fa6Smrg       echo "$version" ; exit ;;
758ae04fa6Smrg    --help | --h* | -h )
768ae04fa6Smrg       echo "$usage"; exit ;;
778ae04fa6Smrg    -- )     # Stop option processing
788ae04fa6Smrg       shift; break ;;
798ae04fa6Smrg    - )	# Use stdin as input.
808ae04fa6Smrg       break ;;
818ae04fa6Smrg    -* )
828ae04fa6Smrg       echo "$me: invalid option $1$help" >&2
838ae04fa6Smrg       exit 1 ;;
848ae04fa6Smrg    * )
858ae04fa6Smrg       break ;;
868ae04fa6Smrg  esac
878ae04fa6Smrgdone
888ae04fa6Smrg
898ae04fa6Smrgif test $# != 0; then
908ae04fa6Smrg  echo "$me: too many arguments$help" >&2
918ae04fa6Smrg  exit 1
928ae04fa6Smrgfi
938ae04fa6Smrg
948ae04fa6Smrgtrap 'exit 1' 1 2 15
958ae04fa6Smrg
968ae04fa6Smrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
978ae04fa6Smrg# compiler to aid in system detection is discouraged as it requires
988ae04fa6Smrg# temporary files to be created and, as you can see below, it is a
998ae04fa6Smrg# headache to deal with in a portable fashion.
1008ae04fa6Smrg
1018ae04fa6Smrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
1028ae04fa6Smrg# use `HOST_CC' if defined, but it is deprecated.
1038ae04fa6Smrg
1048ae04fa6Smrg# Portable tmp directory creation inspired by the Autoconf team.
1058ae04fa6Smrg
1068ae04fa6Smrgset_cc_for_build='
1078ae04fa6Smrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
1088ae04fa6Smrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
1098ae04fa6Smrg: ${TMPDIR=/tmp} ;
1108ae04fa6Smrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
1118ae04fa6Smrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
1128ae04fa6Smrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
1138ae04fa6Smrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
1148ae04fa6Smrgdummy=$tmp/dummy ;
1158ae04fa6Smrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
1168ae04fa6Smrgcase $CC_FOR_BUILD,$HOST_CC,$CC in
1178ae04fa6Smrg ,,)    echo "int x;" > $dummy.c ;
1188ae04fa6Smrg	for c in cc gcc c89 c99 ; do
1198ae04fa6Smrg	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
1208ae04fa6Smrg	     CC_FOR_BUILD="$c"; break ;
1218ae04fa6Smrg	  fi ;
1228ae04fa6Smrg	done ;
1238ae04fa6Smrg	if test x"$CC_FOR_BUILD" = x ; then
1248ae04fa6Smrg	  CC_FOR_BUILD=no_compiler_found ;
1258ae04fa6Smrg	fi
1268ae04fa6Smrg	;;
1278ae04fa6Smrg ,,*)   CC_FOR_BUILD=$CC ;;
1288ae04fa6Smrg ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
1298ae04fa6Smrgesac ; set_cc_for_build= ;'
1308ae04fa6Smrg
1318ae04fa6Smrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
1328ae04fa6Smrg# (ghazi@noc.rutgers.edu 1994-08-24)
1338ae04fa6Smrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then
1348ae04fa6Smrg	PATH=$PATH:/.attbin ; export PATH
1358ae04fa6Smrgfi
1368ae04fa6Smrg
1378ae04fa6SmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
1388ae04fa6SmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
1398ae04fa6SmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
1408ae04fa6SmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
1418ae04fa6Smrg
1428ae04fa6Smrg# Note: order is significant - the case branches are not exclusive.
1438ae04fa6Smrg
1448ae04fa6Smrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
1458ae04fa6Smrg    *:NetBSD:*:*)
1468ae04fa6Smrg	# NetBSD (nbsd) targets should (where applicable) match one or
1478ae04fa6Smrg	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
1488ae04fa6Smrg	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
1498ae04fa6Smrg	# switched to ELF, *-*-netbsd* would select the old
1508ae04fa6Smrg	# object file format.  This provides both forward
1518ae04fa6Smrg	# compatibility and a consistent mechanism for selecting the
1528ae04fa6Smrg	# object file format.
1538ae04fa6Smrg	#
1548ae04fa6Smrg	# Note: NetBSD doesn't particularly care about the vendor
1558ae04fa6Smrg	# portion of the name.  We always set it to "unknown".
1568ae04fa6Smrg	sysctl="sysctl -n hw.machine_arch"
1578ae04fa6Smrg	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
1588ae04fa6Smrg	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
1598ae04fa6Smrg	case "${UNAME_MACHINE_ARCH}" in
1608ae04fa6Smrg	    armeb) machine=armeb-unknown ;;
1618ae04fa6Smrg	    arm*) machine=arm-unknown ;;
1628ae04fa6Smrg	    sh3el) machine=shl-unknown ;;
1638ae04fa6Smrg	    sh3eb) machine=sh-unknown ;;
16444af7230Smrg	    sh5el) machine=sh5le-unknown ;;
1658ae04fa6Smrg	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
1668ae04fa6Smrg	esac
1678ae04fa6Smrg	# The Operating System including object format, if it has switched
1688ae04fa6Smrg	# to ELF recently, or will in the future.
1698ae04fa6Smrg	case "${UNAME_MACHINE_ARCH}" in
1708ae04fa6Smrg	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
1718ae04fa6Smrg		eval $set_cc_for_build
1728ae04fa6Smrg		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
1738ae04fa6Smrg			| grep __ELF__ >/dev/null
1748ae04fa6Smrg		then
1758ae04fa6Smrg		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
1768ae04fa6Smrg		    # Return netbsd for either.  FIX?
1778ae04fa6Smrg		    os=netbsd
1788ae04fa6Smrg		else
1798ae04fa6Smrg		    os=netbsdelf
1808ae04fa6Smrg		fi
1818ae04fa6Smrg		;;
1828ae04fa6Smrg	    *)
1838ae04fa6Smrg	        os=netbsd
1848ae04fa6Smrg		;;
1858ae04fa6Smrg	esac
1868ae04fa6Smrg	# The OS release
1878ae04fa6Smrg	# Debian GNU/NetBSD machines have a different userland, and
1888ae04fa6Smrg	# thus, need a distinct triplet. However, they do not need
1898ae04fa6Smrg	# kernel version information, so it can be replaced with a
1908ae04fa6Smrg	# suitable tag, in the style of linux-gnu.
1918ae04fa6Smrg	case "${UNAME_VERSION}" in
1928ae04fa6Smrg	    Debian*)
1938ae04fa6Smrg		release='-gnu'
1948ae04fa6Smrg		;;
1958ae04fa6Smrg	    *)
1968ae04fa6Smrg		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
1978ae04fa6Smrg		;;
1988ae04fa6Smrg	esac
1998ae04fa6Smrg	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
2008ae04fa6Smrg	# contains redundant information, the shorter form:
2018ae04fa6Smrg	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
2028ae04fa6Smrg	echo "${machine}-${os}${release}"
2038ae04fa6Smrg	exit ;;
2048ae04fa6Smrg    *:OpenBSD:*:*)
2058ae04fa6Smrg	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
2068ae04fa6Smrg	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
2078ae04fa6Smrg	exit ;;
2088ae04fa6Smrg    *:ekkoBSD:*:*)
2098ae04fa6Smrg	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
2108ae04fa6Smrg	exit ;;
2118ae04fa6Smrg    *:SolidBSD:*:*)
2128ae04fa6Smrg	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
2138ae04fa6Smrg	exit ;;
2148ae04fa6Smrg    macppc:MirBSD:*:*)
2158ae04fa6Smrg	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
2168ae04fa6Smrg	exit ;;
2178ae04fa6Smrg    *:MirBSD:*:*)
2188ae04fa6Smrg	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
2198ae04fa6Smrg	exit ;;
2208ae04fa6Smrg    alpha:OSF1:*:*)
2218ae04fa6Smrg	case $UNAME_RELEASE in
2228ae04fa6Smrg	*4.0)
2238ae04fa6Smrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
2248ae04fa6Smrg		;;
2258ae04fa6Smrg	*5.*)
2268ae04fa6Smrg	        UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
2278ae04fa6Smrg		;;
2288ae04fa6Smrg	esac
2298ae04fa6Smrg	# According to Compaq, /usr/sbin/psrinfo has been available on
2308ae04fa6Smrg	# OSF/1 and Tru64 systems produced since 1995.  I hope that
2318ae04fa6Smrg	# covers most systems running today.  This code pipes the CPU
2328ae04fa6Smrg	# types through head -n 1, so we only detect the type of CPU 0.
2338ae04fa6Smrg	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
2348ae04fa6Smrg	case "$ALPHA_CPU_TYPE" in
2358ae04fa6Smrg	    "EV4 (21064)")
2368ae04fa6Smrg		UNAME_MACHINE="alpha" ;;
2378ae04fa6Smrg	    "EV4.5 (21064)")
2388ae04fa6Smrg		UNAME_MACHINE="alpha" ;;
2398ae04fa6Smrg	    "LCA4 (21066/21068)")
2408ae04fa6Smrg		UNAME_MACHINE="alpha" ;;
2418ae04fa6Smrg	    "EV5 (21164)")
2428ae04fa6Smrg		UNAME_MACHINE="alphaev5" ;;
2438ae04fa6Smrg	    "EV5.6 (21164A)")
2448ae04fa6Smrg		UNAME_MACHINE="alphaev56" ;;
2458ae04fa6Smrg	    "EV5.6 (21164PC)")
2468ae04fa6Smrg		UNAME_MACHINE="alphapca56" ;;
2478ae04fa6Smrg	    "EV5.7 (21164PC)")
2488ae04fa6Smrg		UNAME_MACHINE="alphapca57" ;;
2498ae04fa6Smrg	    "EV6 (21264)")
2508ae04fa6Smrg		UNAME_MACHINE="alphaev6" ;;
2518ae04fa6Smrg	    "EV6.7 (21264A)")
2528ae04fa6Smrg		UNAME_MACHINE="alphaev67" ;;
2538ae04fa6Smrg	    "EV6.8CB (21264C)")
2548ae04fa6Smrg		UNAME_MACHINE="alphaev68" ;;
2558ae04fa6Smrg	    "EV6.8AL (21264B)")
2568ae04fa6Smrg		UNAME_MACHINE="alphaev68" ;;
2578ae04fa6Smrg	    "EV6.8CX (21264D)")
2588ae04fa6Smrg		UNAME_MACHINE="alphaev68" ;;
2598ae04fa6Smrg	    "EV6.9A (21264/EV69A)")
2608ae04fa6Smrg		UNAME_MACHINE="alphaev69" ;;
2618ae04fa6Smrg	    "EV7 (21364)")
2628ae04fa6Smrg		UNAME_MACHINE="alphaev7" ;;
2638ae04fa6Smrg	    "EV7.9 (21364A)")
2648ae04fa6Smrg		UNAME_MACHINE="alphaev79" ;;
2658ae04fa6Smrg	esac
2668ae04fa6Smrg	# A Pn.n version is a patched version.
2678ae04fa6Smrg	# A Vn.n version is a released version.
2688ae04fa6Smrg	# A Tn.n version is a released field test version.
2698ae04fa6Smrg	# A Xn.n version is an unreleased experimental baselevel.
2708ae04fa6Smrg	# 1.2 uses "1.2" for uname -r.
2718ae04fa6Smrg	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
2728ae04fa6Smrg	exit ;;
2738ae04fa6Smrg    Alpha\ *:Windows_NT*:*)
2748ae04fa6Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
2758ae04fa6Smrg	# Should we change UNAME_MACHINE based on the output of uname instead
2768ae04fa6Smrg	# of the specific Alpha model?
2778ae04fa6Smrg	echo alpha-pc-interix
2788ae04fa6Smrg	exit ;;
2798ae04fa6Smrg    21064:Windows_NT:50:3)
2808ae04fa6Smrg	echo alpha-dec-winnt3.5
2818ae04fa6Smrg	exit ;;
2828ae04fa6Smrg    Amiga*:UNIX_System_V:4.0:*)
2838ae04fa6Smrg	echo m68k-unknown-sysv4
2848ae04fa6Smrg	exit ;;
2858ae04fa6Smrg    *:[Aa]miga[Oo][Ss]:*:*)
2868ae04fa6Smrg	echo ${UNAME_MACHINE}-unknown-amigaos
2878ae04fa6Smrg	exit ;;
2888ae04fa6Smrg    *:[Mm]orph[Oo][Ss]:*:*)
2898ae04fa6Smrg	echo ${UNAME_MACHINE}-unknown-morphos
2908ae04fa6Smrg	exit ;;
2918ae04fa6Smrg    *:OS/390:*:*)
2928ae04fa6Smrg	echo i370-ibm-openedition
2938ae04fa6Smrg	exit ;;
2948ae04fa6Smrg    *:z/VM:*:*)
2958ae04fa6Smrg	echo s390-ibm-zvmoe
2968ae04fa6Smrg	exit ;;
2978ae04fa6Smrg    *:OS400:*:*)
2988ae04fa6Smrg        echo powerpc-ibm-os400
2998ae04fa6Smrg	exit ;;
3008ae04fa6Smrg    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
3018ae04fa6Smrg	echo arm-acorn-riscix${UNAME_RELEASE}
3028ae04fa6Smrg	exit ;;
3038ae04fa6Smrg    arm:riscos:*:*|arm:RISCOS:*:*)
3048ae04fa6Smrg	echo arm-unknown-riscos
3058ae04fa6Smrg	exit ;;
3068ae04fa6Smrg    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
3078ae04fa6Smrg	echo hppa1.1-hitachi-hiuxmpp
3088ae04fa6Smrg	exit ;;
3098ae04fa6Smrg    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
3108ae04fa6Smrg	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
3118ae04fa6Smrg	if test "`(/bin/universe) 2>/dev/null`" = att ; then
3128ae04fa6Smrg		echo pyramid-pyramid-sysv3
3138ae04fa6Smrg	else
3148ae04fa6Smrg		echo pyramid-pyramid-bsd
3158ae04fa6Smrg	fi
3168ae04fa6Smrg	exit ;;
3178ae04fa6Smrg    NILE*:*:*:dcosx)
3188ae04fa6Smrg	echo pyramid-pyramid-svr4
3198ae04fa6Smrg	exit ;;
3208ae04fa6Smrg    DRS?6000:unix:4.0:6*)
3218ae04fa6Smrg	echo sparc-icl-nx6
3228ae04fa6Smrg	exit ;;
3238ae04fa6Smrg    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
3248ae04fa6Smrg	case `/usr/bin/uname -p` in
3258ae04fa6Smrg	    sparc) echo sparc-icl-nx7; exit ;;
3268ae04fa6Smrg	esac ;;
32744af7230Smrg    s390x:SunOS:*:*)
32844af7230Smrg	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
32944af7230Smrg	exit ;;
3308ae04fa6Smrg    sun4H:SunOS:5.*:*)
3318ae04fa6Smrg	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3328ae04fa6Smrg	exit ;;
3338ae04fa6Smrg    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
3348ae04fa6Smrg	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3358ae04fa6Smrg	exit ;;
33644af7230Smrg    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
33744af7230Smrg	eval $set_cc_for_build
33844af7230Smrg	SUN_ARCH="i386"
33944af7230Smrg	# If there is a compiler, see if it is configured for 64-bit objects.
34044af7230Smrg	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
34144af7230Smrg	# This test works for both compilers.
34244af7230Smrg	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
34344af7230Smrg	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
34444af7230Smrg		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
34544af7230Smrg		grep IS_64BIT_ARCH >/dev/null
34644af7230Smrg	    then
34744af7230Smrg		SUN_ARCH="x86_64"
34844af7230Smrg	    fi
34944af7230Smrg	fi
35044af7230Smrg	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3518ae04fa6Smrg	exit ;;
3528ae04fa6Smrg    sun4*:SunOS:6*:*)
3538ae04fa6Smrg	# According to config.sub, this is the proper way to canonicalize
3548ae04fa6Smrg	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
3558ae04fa6Smrg	# it's likely to be more like Solaris than SunOS4.
3568ae04fa6Smrg	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3578ae04fa6Smrg	exit ;;
3588ae04fa6Smrg    sun4*:SunOS:*:*)
3598ae04fa6Smrg	case "`/usr/bin/arch -k`" in
3608ae04fa6Smrg	    Series*|S4*)
3618ae04fa6Smrg		UNAME_RELEASE=`uname -v`
3628ae04fa6Smrg		;;
3638ae04fa6Smrg	esac
3648ae04fa6Smrg	# Japanese Language versions have a version number like `4.1.3-JL'.
3658ae04fa6Smrg	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
3668ae04fa6Smrg	exit ;;
3678ae04fa6Smrg    sun3*:SunOS:*:*)
3688ae04fa6Smrg	echo m68k-sun-sunos${UNAME_RELEASE}
3698ae04fa6Smrg	exit ;;
3708ae04fa6Smrg    sun*:*:4.2BSD:*)
3718ae04fa6Smrg	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
3728ae04fa6Smrg	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
3738ae04fa6Smrg	case "`/bin/arch`" in
3748ae04fa6Smrg	    sun3)
3758ae04fa6Smrg		echo m68k-sun-sunos${UNAME_RELEASE}
3768ae04fa6Smrg		;;
3778ae04fa6Smrg	    sun4)
3788ae04fa6Smrg		echo sparc-sun-sunos${UNAME_RELEASE}
3798ae04fa6Smrg		;;
3808ae04fa6Smrg	esac
3818ae04fa6Smrg	exit ;;
3828ae04fa6Smrg    aushp:SunOS:*:*)
3838ae04fa6Smrg	echo sparc-auspex-sunos${UNAME_RELEASE}
3848ae04fa6Smrg	exit ;;
3858ae04fa6Smrg    # The situation for MiNT is a little confusing.  The machine name
3868ae04fa6Smrg    # can be virtually everything (everything which is not
3878ae04fa6Smrg    # "atarist" or "atariste" at least should have a processor
3888ae04fa6Smrg    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
3898ae04fa6Smrg    # to the lowercase version "mint" (or "freemint").  Finally
3908ae04fa6Smrg    # the system name "TOS" denotes a system which is actually not
3918ae04fa6Smrg    # MiNT.  But MiNT is downward compatible to TOS, so this should
3928ae04fa6Smrg    # be no problem.
3938ae04fa6Smrg    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
3948ae04fa6Smrg        echo m68k-atari-mint${UNAME_RELEASE}
3958ae04fa6Smrg	exit ;;
3968ae04fa6Smrg    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
3978ae04fa6Smrg	echo m68k-atari-mint${UNAME_RELEASE}
3988ae04fa6Smrg        exit ;;
3998ae04fa6Smrg    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
4008ae04fa6Smrg        echo m68k-atari-mint${UNAME_RELEASE}
4018ae04fa6Smrg	exit ;;
4028ae04fa6Smrg    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
4038ae04fa6Smrg        echo m68k-milan-mint${UNAME_RELEASE}
4048ae04fa6Smrg        exit ;;
4058ae04fa6Smrg    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
4068ae04fa6Smrg        echo m68k-hades-mint${UNAME_RELEASE}
4078ae04fa6Smrg        exit ;;
4088ae04fa6Smrg    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
4098ae04fa6Smrg        echo m68k-unknown-mint${UNAME_RELEASE}
4108ae04fa6Smrg        exit ;;
4118ae04fa6Smrg    m68k:machten:*:*)
4128ae04fa6Smrg	echo m68k-apple-machten${UNAME_RELEASE}
4138ae04fa6Smrg	exit ;;
4148ae04fa6Smrg    powerpc:machten:*:*)
4158ae04fa6Smrg	echo powerpc-apple-machten${UNAME_RELEASE}
4168ae04fa6Smrg	exit ;;
4178ae04fa6Smrg    RISC*:Mach:*:*)
4188ae04fa6Smrg	echo mips-dec-mach_bsd4.3
4198ae04fa6Smrg	exit ;;
4208ae04fa6Smrg    RISC*:ULTRIX:*:*)
4218ae04fa6Smrg	echo mips-dec-ultrix${UNAME_RELEASE}
4228ae04fa6Smrg	exit ;;
4238ae04fa6Smrg    VAX*:ULTRIX*:*:*)
4248ae04fa6Smrg	echo vax-dec-ultrix${UNAME_RELEASE}
4258ae04fa6Smrg	exit ;;
4268ae04fa6Smrg    2020:CLIX:*:* | 2430:CLIX:*:*)
4278ae04fa6Smrg	echo clipper-intergraph-clix${UNAME_RELEASE}
4288ae04fa6Smrg	exit ;;
4298ae04fa6Smrg    mips:*:*:UMIPS | mips:*:*:RISCos)
4308ae04fa6Smrg	eval $set_cc_for_build
4318ae04fa6Smrg	sed 's/^	//' << EOF >$dummy.c
4328ae04fa6Smrg#ifdef __cplusplus
4338ae04fa6Smrg#include <stdio.h>  /* for printf() prototype */
4348ae04fa6Smrg	int main (int argc, char *argv[]) {
4358ae04fa6Smrg#else
4368ae04fa6Smrg	int main (argc, argv) int argc; char *argv[]; {
4378ae04fa6Smrg#endif
4388ae04fa6Smrg	#if defined (host_mips) && defined (MIPSEB)
4398ae04fa6Smrg	#if defined (SYSTYPE_SYSV)
4408ae04fa6Smrg	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
4418ae04fa6Smrg	#endif
4428ae04fa6Smrg	#if defined (SYSTYPE_SVR4)
4438ae04fa6Smrg	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
4448ae04fa6Smrg	#endif
4458ae04fa6Smrg	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
4468ae04fa6Smrg	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
4478ae04fa6Smrg	#endif
4488ae04fa6Smrg	#endif
4498ae04fa6Smrg	  exit (-1);
4508ae04fa6Smrg	}
4518ae04fa6SmrgEOF
4528ae04fa6Smrg	$CC_FOR_BUILD -o $dummy $dummy.c &&
4538ae04fa6Smrg	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
4548ae04fa6Smrg	  SYSTEM_NAME=`$dummy $dummyarg` &&
4558ae04fa6Smrg	    { echo "$SYSTEM_NAME"; exit; }
4568ae04fa6Smrg	echo mips-mips-riscos${UNAME_RELEASE}
4578ae04fa6Smrg	exit ;;
4588ae04fa6Smrg    Motorola:PowerMAX_OS:*:*)
4598ae04fa6Smrg	echo powerpc-motorola-powermax
4608ae04fa6Smrg	exit ;;
4618ae04fa6Smrg    Motorola:*:4.3:PL8-*)
4628ae04fa6Smrg	echo powerpc-harris-powermax
4638ae04fa6Smrg	exit ;;
4648ae04fa6Smrg    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
4658ae04fa6Smrg	echo powerpc-harris-powermax
4668ae04fa6Smrg	exit ;;
4678ae04fa6Smrg    Night_Hawk:Power_UNIX:*:*)
4688ae04fa6Smrg	echo powerpc-harris-powerunix
4698ae04fa6Smrg	exit ;;
4708ae04fa6Smrg    m88k:CX/UX:7*:*)
4718ae04fa6Smrg	echo m88k-harris-cxux7
4728ae04fa6Smrg	exit ;;
4738ae04fa6Smrg    m88k:*:4*:R4*)
4748ae04fa6Smrg	echo m88k-motorola-sysv4
4758ae04fa6Smrg	exit ;;
4768ae04fa6Smrg    m88k:*:3*:R3*)
4778ae04fa6Smrg	echo m88k-motorola-sysv3
4788ae04fa6Smrg	exit ;;
4798ae04fa6Smrg    AViiON:dgux:*:*)
4808ae04fa6Smrg        # DG/UX returns AViiON for all architectures
4818ae04fa6Smrg        UNAME_PROCESSOR=`/usr/bin/uname -p`
4828ae04fa6Smrg	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
4838ae04fa6Smrg	then
4848ae04fa6Smrg	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
4858ae04fa6Smrg	       [ ${TARGET_BINARY_INTERFACE}x = x ]
4868ae04fa6Smrg	    then
4878ae04fa6Smrg		echo m88k-dg-dgux${UNAME_RELEASE}
4888ae04fa6Smrg	    else
4898ae04fa6Smrg		echo m88k-dg-dguxbcs${UNAME_RELEASE}
4908ae04fa6Smrg	    fi
4918ae04fa6Smrg	else
4928ae04fa6Smrg	    echo i586-dg-dgux${UNAME_RELEASE}
4938ae04fa6Smrg	fi
4948ae04fa6Smrg 	exit ;;
4958ae04fa6Smrg    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
4968ae04fa6Smrg	echo m88k-dolphin-sysv3
4978ae04fa6Smrg	exit ;;
4988ae04fa6Smrg    M88*:*:R3*:*)
4998ae04fa6Smrg	# Delta 88k system running SVR3
5008ae04fa6Smrg	echo m88k-motorola-sysv3
5018ae04fa6Smrg	exit ;;
5028ae04fa6Smrg    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
5038ae04fa6Smrg	echo m88k-tektronix-sysv3
5048ae04fa6Smrg	exit ;;
5058ae04fa6Smrg    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
5068ae04fa6Smrg	echo m68k-tektronix-bsd
5078ae04fa6Smrg	exit ;;
5088ae04fa6Smrg    *:IRIX*:*:*)
5098ae04fa6Smrg	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
5108ae04fa6Smrg	exit ;;
5118ae04fa6Smrg    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
5128ae04fa6Smrg	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
5138ae04fa6Smrg	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
5148ae04fa6Smrg    i*86:AIX:*:*)
5158ae04fa6Smrg	echo i386-ibm-aix
5168ae04fa6Smrg	exit ;;
5178ae04fa6Smrg    ia64:AIX:*:*)
5188ae04fa6Smrg	if [ -x /usr/bin/oslevel ] ; then
5198ae04fa6Smrg		IBM_REV=`/usr/bin/oslevel`
5208ae04fa6Smrg	else
5218ae04fa6Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
5228ae04fa6Smrg	fi
5238ae04fa6Smrg	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
5248ae04fa6Smrg	exit ;;
5258ae04fa6Smrg    *:AIX:2:3)
5268ae04fa6Smrg	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
5278ae04fa6Smrg		eval $set_cc_for_build
5288ae04fa6Smrg		sed 's/^		//' << EOF >$dummy.c
5298ae04fa6Smrg		#include <sys/systemcfg.h>
5308ae04fa6Smrg
5318ae04fa6Smrg		main()
5328ae04fa6Smrg			{
5338ae04fa6Smrg			if (!__power_pc())
5348ae04fa6Smrg				exit(1);
5358ae04fa6Smrg			puts("powerpc-ibm-aix3.2.5");
5368ae04fa6Smrg			exit(0);
5378ae04fa6Smrg			}
5388ae04fa6SmrgEOF
5398ae04fa6Smrg		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
5408ae04fa6Smrg		then
5418ae04fa6Smrg			echo "$SYSTEM_NAME"
5428ae04fa6Smrg		else
5438ae04fa6Smrg			echo rs6000-ibm-aix3.2.5
5448ae04fa6Smrg		fi
5458ae04fa6Smrg	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
5468ae04fa6Smrg		echo rs6000-ibm-aix3.2.4
5478ae04fa6Smrg	else
5488ae04fa6Smrg		echo rs6000-ibm-aix3.2
5498ae04fa6Smrg	fi
5508ae04fa6Smrg	exit ;;
55144af7230Smrg    *:AIX:*:[456])
5528ae04fa6Smrg	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
5538ae04fa6Smrg	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
5548ae04fa6Smrg		IBM_ARCH=rs6000
5558ae04fa6Smrg	else
5568ae04fa6Smrg		IBM_ARCH=powerpc
5578ae04fa6Smrg	fi
5588ae04fa6Smrg	if [ -x /usr/bin/oslevel ] ; then
5598ae04fa6Smrg		IBM_REV=`/usr/bin/oslevel`
5608ae04fa6Smrg	else
5618ae04fa6Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
5628ae04fa6Smrg	fi
5638ae04fa6Smrg	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
5648ae04fa6Smrg	exit ;;
5658ae04fa6Smrg    *:AIX:*:*)
5668ae04fa6Smrg	echo rs6000-ibm-aix
5678ae04fa6Smrg	exit ;;
5688ae04fa6Smrg    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
5698ae04fa6Smrg	echo romp-ibm-bsd4.4
5708ae04fa6Smrg	exit ;;
5718ae04fa6Smrg    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
5728ae04fa6Smrg	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
5738ae04fa6Smrg	exit ;;                             # report: romp-ibm BSD 4.3
5748ae04fa6Smrg    *:BOSX:*:*)
5758ae04fa6Smrg	echo rs6000-bull-bosx
5768ae04fa6Smrg	exit ;;
5778ae04fa6Smrg    DPX/2?00:B.O.S.:*:*)
5788ae04fa6Smrg	echo m68k-bull-sysv3
5798ae04fa6Smrg	exit ;;
5808ae04fa6Smrg    9000/[34]??:4.3bsd:1.*:*)
5818ae04fa6Smrg	echo m68k-hp-bsd
5828ae04fa6Smrg	exit ;;
5838ae04fa6Smrg    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
5848ae04fa6Smrg	echo m68k-hp-bsd4.4
5858ae04fa6Smrg	exit ;;
5868ae04fa6Smrg    9000/[34678]??:HP-UX:*:*)
5878ae04fa6Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
5888ae04fa6Smrg	case "${UNAME_MACHINE}" in
5898ae04fa6Smrg	    9000/31? )            HP_ARCH=m68000 ;;
5908ae04fa6Smrg	    9000/[34]?? )         HP_ARCH=m68k ;;
5918ae04fa6Smrg	    9000/[678][0-9][0-9])
5928ae04fa6Smrg		if [ -x /usr/bin/getconf ]; then
5938ae04fa6Smrg		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
5948ae04fa6Smrg                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
5958ae04fa6Smrg                    case "${sc_cpu_version}" in
5968ae04fa6Smrg                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
5978ae04fa6Smrg                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
5988ae04fa6Smrg                      532)                      # CPU_PA_RISC2_0
5998ae04fa6Smrg                        case "${sc_kernel_bits}" in
6008ae04fa6Smrg                          32) HP_ARCH="hppa2.0n" ;;
6018ae04fa6Smrg                          64) HP_ARCH="hppa2.0w" ;;
6028ae04fa6Smrg			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
6038ae04fa6Smrg                        esac ;;
6048ae04fa6Smrg                    esac
6058ae04fa6Smrg		fi
6068ae04fa6Smrg		if [ "${HP_ARCH}" = "" ]; then
6078ae04fa6Smrg		    eval $set_cc_for_build
6088ae04fa6Smrg		    sed 's/^              //' << EOF >$dummy.c
6098ae04fa6Smrg
6108ae04fa6Smrg              #define _HPUX_SOURCE
6118ae04fa6Smrg              #include <stdlib.h>
6128ae04fa6Smrg              #include <unistd.h>
6138ae04fa6Smrg
6148ae04fa6Smrg              int main ()
6158ae04fa6Smrg              {
6168ae04fa6Smrg              #if defined(_SC_KERNEL_BITS)
6178ae04fa6Smrg                  long bits = sysconf(_SC_KERNEL_BITS);
6188ae04fa6Smrg              #endif
6198ae04fa6Smrg                  long cpu  = sysconf (_SC_CPU_VERSION);
6208ae04fa6Smrg
6218ae04fa6Smrg                  switch (cpu)
6228ae04fa6Smrg              	{
6238ae04fa6Smrg              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
6248ae04fa6Smrg              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
6258ae04fa6Smrg              	case CPU_PA_RISC2_0:
6268ae04fa6Smrg              #if defined(_SC_KERNEL_BITS)
6278ae04fa6Smrg              	    switch (bits)
6288ae04fa6Smrg              		{
6298ae04fa6Smrg              		case 64: puts ("hppa2.0w"); break;
6308ae04fa6Smrg              		case 32: puts ("hppa2.0n"); break;
6318ae04fa6Smrg              		default: puts ("hppa2.0"); break;
6328ae04fa6Smrg              		} break;
6338ae04fa6Smrg              #else  /* !defined(_SC_KERNEL_BITS) */
6348ae04fa6Smrg              	    puts ("hppa2.0"); break;
6358ae04fa6Smrg              #endif
6368ae04fa6Smrg              	default: puts ("hppa1.0"); break;
6378ae04fa6Smrg              	}
6388ae04fa6Smrg                  exit (0);
6398ae04fa6Smrg              }
6408ae04fa6SmrgEOF
6418ae04fa6Smrg		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
6428ae04fa6Smrg		    test -z "$HP_ARCH" && HP_ARCH=hppa
6438ae04fa6Smrg		fi ;;
6448ae04fa6Smrg	esac
6458ae04fa6Smrg	if [ ${HP_ARCH} = "hppa2.0w" ]
6468ae04fa6Smrg	then
6478ae04fa6Smrg	    eval $set_cc_for_build
6488ae04fa6Smrg
6498ae04fa6Smrg	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
6508ae04fa6Smrg	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
6518ae04fa6Smrg	    # generating 64-bit code.  GNU and HP use different nomenclature:
6528ae04fa6Smrg	    #
6538ae04fa6Smrg	    # $ CC_FOR_BUILD=cc ./config.guess
6548ae04fa6Smrg	    # => hppa2.0w-hp-hpux11.23
6558ae04fa6Smrg	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
6568ae04fa6Smrg	    # => hppa64-hp-hpux11.23
6578ae04fa6Smrg
6588ae04fa6Smrg	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
6598ae04fa6Smrg		grep __LP64__ >/dev/null
6608ae04fa6Smrg	    then
6618ae04fa6Smrg		HP_ARCH="hppa2.0w"
6628ae04fa6Smrg	    else
6638ae04fa6Smrg		HP_ARCH="hppa64"
6648ae04fa6Smrg	    fi
6658ae04fa6Smrg	fi
6668ae04fa6Smrg	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
6678ae04fa6Smrg	exit ;;
6688ae04fa6Smrg    ia64:HP-UX:*:*)
6698ae04fa6Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
6708ae04fa6Smrg	echo ia64-hp-hpux${HPUX_REV}
6718ae04fa6Smrg	exit ;;
6728ae04fa6Smrg    3050*:HI-UX:*:*)
6738ae04fa6Smrg	eval $set_cc_for_build
6748ae04fa6Smrg	sed 's/^	//' << EOF >$dummy.c
6758ae04fa6Smrg	#include <unistd.h>
6768ae04fa6Smrg	int
6778ae04fa6Smrg	main ()
6788ae04fa6Smrg	{
6798ae04fa6Smrg	  long cpu = sysconf (_SC_CPU_VERSION);
6808ae04fa6Smrg	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
6818ae04fa6Smrg	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
6828ae04fa6Smrg	     results, however.  */
6838ae04fa6Smrg	  if (CPU_IS_PA_RISC (cpu))
6848ae04fa6Smrg	    {
6858ae04fa6Smrg	      switch (cpu)
6868ae04fa6Smrg		{
6878ae04fa6Smrg		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
6888ae04fa6Smrg		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
6898ae04fa6Smrg		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
6908ae04fa6Smrg		  default: puts ("hppa-hitachi-hiuxwe2"); break;
6918ae04fa6Smrg		}
6928ae04fa6Smrg	    }
6938ae04fa6Smrg	  else if (CPU_IS_HP_MC68K (cpu))
6948ae04fa6Smrg	    puts ("m68k-hitachi-hiuxwe2");
6958ae04fa6Smrg	  else puts ("unknown-hitachi-hiuxwe2");
6968ae04fa6Smrg	  exit (0);
6978ae04fa6Smrg	}
6988ae04fa6SmrgEOF
6998ae04fa6Smrg	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
7008ae04fa6Smrg		{ echo "$SYSTEM_NAME"; exit; }
7018ae04fa6Smrg	echo unknown-hitachi-hiuxwe2
7028ae04fa6Smrg	exit ;;
7038ae04fa6Smrg    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
7048ae04fa6Smrg	echo hppa1.1-hp-bsd
7058ae04fa6Smrg	exit ;;
7068ae04fa6Smrg    9000/8??:4.3bsd:*:*)
7078ae04fa6Smrg	echo hppa1.0-hp-bsd
7088ae04fa6Smrg	exit ;;
7098ae04fa6Smrg    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
7108ae04fa6Smrg	echo hppa1.0-hp-mpeix
7118ae04fa6Smrg	exit ;;
7128ae04fa6Smrg    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
7138ae04fa6Smrg	echo hppa1.1-hp-osf
7148ae04fa6Smrg	exit ;;
7158ae04fa6Smrg    hp8??:OSF1:*:*)
7168ae04fa6Smrg	echo hppa1.0-hp-osf
7178ae04fa6Smrg	exit ;;
7188ae04fa6Smrg    i*86:OSF1:*:*)
7198ae04fa6Smrg	if [ -x /usr/sbin/sysversion ] ; then
7208ae04fa6Smrg	    echo ${UNAME_MACHINE}-unknown-osf1mk
7218ae04fa6Smrg	else
7228ae04fa6Smrg	    echo ${UNAME_MACHINE}-unknown-osf1
7238ae04fa6Smrg	fi
7248ae04fa6Smrg	exit ;;
7258ae04fa6Smrg    parisc*:Lites*:*:*)
7268ae04fa6Smrg	echo hppa1.1-hp-lites
7278ae04fa6Smrg	exit ;;
7288ae04fa6Smrg    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
7298ae04fa6Smrg	echo c1-convex-bsd
7308ae04fa6Smrg        exit ;;
7318ae04fa6Smrg    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
7328ae04fa6Smrg	if getsysinfo -f scalar_acc
7338ae04fa6Smrg	then echo c32-convex-bsd
7348ae04fa6Smrg	else echo c2-convex-bsd
7358ae04fa6Smrg	fi
7368ae04fa6Smrg        exit ;;
7378ae04fa6Smrg    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
7388ae04fa6Smrg	echo c34-convex-bsd
7398ae04fa6Smrg        exit ;;
7408ae04fa6Smrg    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
7418ae04fa6Smrg	echo c38-convex-bsd
7428ae04fa6Smrg        exit ;;
7438ae04fa6Smrg    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
7448ae04fa6Smrg	echo c4-convex-bsd
7458ae04fa6Smrg        exit ;;
7468ae04fa6Smrg    CRAY*Y-MP:*:*:*)
7478ae04fa6Smrg	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7488ae04fa6Smrg	exit ;;
7498ae04fa6Smrg    CRAY*[A-Z]90:*:*:*)
7508ae04fa6Smrg	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
7518ae04fa6Smrg	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
7528ae04fa6Smrg	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
7538ae04fa6Smrg	      -e 's/\.[^.]*$/.X/'
7548ae04fa6Smrg	exit ;;
7558ae04fa6Smrg    CRAY*TS:*:*:*)
7568ae04fa6Smrg	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7578ae04fa6Smrg	exit ;;
7588ae04fa6Smrg    CRAY*T3E:*:*:*)
7598ae04fa6Smrg	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7608ae04fa6Smrg	exit ;;
7618ae04fa6Smrg    CRAY*SV1:*:*:*)
7628ae04fa6Smrg	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7638ae04fa6Smrg	exit ;;
7648ae04fa6Smrg    *:UNICOS/mp:*:*)
7658ae04fa6Smrg	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7668ae04fa6Smrg	exit ;;
7678ae04fa6Smrg    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
7688ae04fa6Smrg	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
7698ae04fa6Smrg        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
7708ae04fa6Smrg        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
7718ae04fa6Smrg        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
7728ae04fa6Smrg        exit ;;
7738ae04fa6Smrg    5000:UNIX_System_V:4.*:*)
7748ae04fa6Smrg        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
7758ae04fa6Smrg        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
7768ae04fa6Smrg        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
7778ae04fa6Smrg	exit ;;
7788ae04fa6Smrg    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
7798ae04fa6Smrg	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
7808ae04fa6Smrg	exit ;;
7818ae04fa6Smrg    sparc*:BSD/OS:*:*)
7828ae04fa6Smrg	echo sparc-unknown-bsdi${UNAME_RELEASE}
7838ae04fa6Smrg	exit ;;
7848ae04fa6Smrg    *:BSD/OS:*:*)
7858ae04fa6Smrg	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
7868ae04fa6Smrg	exit ;;
7878ae04fa6Smrg    *:FreeBSD:*:*)
7888ae04fa6Smrg	case ${UNAME_MACHINE} in
7898ae04fa6Smrg	    pc98)
7908ae04fa6Smrg		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7918ae04fa6Smrg	    amd64)
7928ae04fa6Smrg		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7938ae04fa6Smrg	    *)
7948ae04fa6Smrg		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7958ae04fa6Smrg	esac
7968ae04fa6Smrg	exit ;;
7978ae04fa6Smrg    i*:CYGWIN*:*)
7988ae04fa6Smrg	echo ${UNAME_MACHINE}-pc-cygwin
7998ae04fa6Smrg	exit ;;
80044af7230Smrg    *:MINGW*:*)
8018ae04fa6Smrg	echo ${UNAME_MACHINE}-pc-mingw32
8028ae04fa6Smrg	exit ;;
8038ae04fa6Smrg    i*:windows32*:*)
8048ae04fa6Smrg    	# uname -m includes "-pc" on this system.
8058ae04fa6Smrg    	echo ${UNAME_MACHINE}-mingw32
8068ae04fa6Smrg	exit ;;
8078ae04fa6Smrg    i*:PW*:*)
8088ae04fa6Smrg	echo ${UNAME_MACHINE}-pc-pw32
8098ae04fa6Smrg	exit ;;
81044af7230Smrg    *:Interix*:[3456]*)
81144af7230Smrg    	case ${UNAME_MACHINE} in
81244af7230Smrg	    x86)
81344af7230Smrg		echo i586-pc-interix${UNAME_RELEASE}
81444af7230Smrg		exit ;;
81544af7230Smrg	    EM64T | authenticamd | genuineintel)
81644af7230Smrg		echo x86_64-unknown-interix${UNAME_RELEASE}
81744af7230Smrg		exit ;;
81844af7230Smrg	    IA64)
81944af7230Smrg		echo ia64-unknown-interix${UNAME_RELEASE}
82044af7230Smrg		exit ;;
82144af7230Smrg	esac ;;
8228ae04fa6Smrg    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
8238ae04fa6Smrg	echo i${UNAME_MACHINE}-pc-mks
8248ae04fa6Smrg	exit ;;
8258ae04fa6Smrg    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
8268ae04fa6Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
8278ae04fa6Smrg	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
8288ae04fa6Smrg	# UNAME_MACHINE based on the output of uname instead of i386?
8298ae04fa6Smrg	echo i586-pc-interix
8308ae04fa6Smrg	exit ;;
8318ae04fa6Smrg    i*:UWIN*:*)
8328ae04fa6Smrg	echo ${UNAME_MACHINE}-pc-uwin
8338ae04fa6Smrg	exit ;;
8348ae04fa6Smrg    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
8358ae04fa6Smrg	echo x86_64-unknown-cygwin
8368ae04fa6Smrg	exit ;;
8378ae04fa6Smrg    p*:CYGWIN*:*)
8388ae04fa6Smrg	echo powerpcle-unknown-cygwin
8398ae04fa6Smrg	exit ;;
8408ae04fa6Smrg    prep*:SunOS:5.*:*)
8418ae04fa6Smrg	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
8428ae04fa6Smrg	exit ;;
8438ae04fa6Smrg    *:GNU:*:*)
8448ae04fa6Smrg	# the GNU system
8458ae04fa6Smrg	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
8468ae04fa6Smrg	exit ;;
8478ae04fa6Smrg    *:GNU/*:*:*)
8488ae04fa6Smrg	# other systems with GNU libc and userland
8498ae04fa6Smrg	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
8508ae04fa6Smrg	exit ;;
8518ae04fa6Smrg    i*86:Minix:*:*)
8528ae04fa6Smrg	echo ${UNAME_MACHINE}-pc-minix
8538ae04fa6Smrg	exit ;;
8548ae04fa6Smrg    arm*:Linux:*:*)
85544af7230Smrg	eval $set_cc_for_build
85644af7230Smrg	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
85744af7230Smrg	    | grep -q __ARM_EABI__
85844af7230Smrg	then
85944af7230Smrg	    echo ${UNAME_MACHINE}-unknown-linux-gnu
86044af7230Smrg	else
86144af7230Smrg	    echo ${UNAME_MACHINE}-unknown-linux-gnueabi
86244af7230Smrg	fi
8638ae04fa6Smrg	exit ;;
8648ae04fa6Smrg    avr32*:Linux:*:*)
8658ae04fa6Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
8668ae04fa6Smrg	exit ;;
8678ae04fa6Smrg    cris:Linux:*:*)
8688ae04fa6Smrg	echo cris-axis-linux-gnu
8698ae04fa6Smrg	exit ;;
8708ae04fa6Smrg    crisv32:Linux:*:*)
8718ae04fa6Smrg	echo crisv32-axis-linux-gnu
8728ae04fa6Smrg	exit ;;
8738ae04fa6Smrg    frv:Linux:*:*)
8748ae04fa6Smrg    	echo frv-unknown-linux-gnu
8758ae04fa6Smrg	exit ;;
8768ae04fa6Smrg    ia64:Linux:*:*)
8778ae04fa6Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
8788ae04fa6Smrg	exit ;;
8798ae04fa6Smrg    m32r*:Linux:*:*)
8808ae04fa6Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
8818ae04fa6Smrg	exit ;;
8828ae04fa6Smrg    m68*:Linux:*:*)
8838ae04fa6Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
8848ae04fa6Smrg	exit ;;
8858ae04fa6Smrg    mips:Linux:*:*)
8868ae04fa6Smrg	eval $set_cc_for_build
8878ae04fa6Smrg	sed 's/^	//' << EOF >$dummy.c
8888ae04fa6Smrg	#undef CPU
8898ae04fa6Smrg	#undef mips
8908ae04fa6Smrg	#undef mipsel
8918ae04fa6Smrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
8928ae04fa6Smrg	CPU=mipsel
8938ae04fa6Smrg	#else
8948ae04fa6Smrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
8958ae04fa6Smrg	CPU=mips
8968ae04fa6Smrg	#else
8978ae04fa6Smrg	CPU=
8988ae04fa6Smrg	#endif
8998ae04fa6Smrg	#endif
9008ae04fa6SmrgEOF
9018ae04fa6Smrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
9028ae04fa6Smrg	    /^CPU/{
9038ae04fa6Smrg		s: ::g
9048ae04fa6Smrg		p
9058ae04fa6Smrg	    }'`"
9068ae04fa6Smrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
9078ae04fa6Smrg	;;
9088ae04fa6Smrg    mips64:Linux:*:*)
9098ae04fa6Smrg	eval $set_cc_for_build
9108ae04fa6Smrg	sed 's/^	//' << EOF >$dummy.c
9118ae04fa6Smrg	#undef CPU
9128ae04fa6Smrg	#undef mips64
9138ae04fa6Smrg	#undef mips64el
9148ae04fa6Smrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
9158ae04fa6Smrg	CPU=mips64el
9168ae04fa6Smrg	#else
9178ae04fa6Smrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
9188ae04fa6Smrg	CPU=mips64
9198ae04fa6Smrg	#else
9208ae04fa6Smrg	CPU=
9218ae04fa6Smrg	#endif
9228ae04fa6Smrg	#endif
9238ae04fa6SmrgEOF
9248ae04fa6Smrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
9258ae04fa6Smrg	    /^CPU/{
9268ae04fa6Smrg		s: ::g
9278ae04fa6Smrg		p
9288ae04fa6Smrg	    }'`"
9298ae04fa6Smrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
9308ae04fa6Smrg	;;
9318ae04fa6Smrg    or32:Linux:*:*)
9328ae04fa6Smrg	echo or32-unknown-linux-gnu
9338ae04fa6Smrg	exit ;;
9348ae04fa6Smrg    ppc:Linux:*:*)
9358ae04fa6Smrg	echo powerpc-unknown-linux-gnu
9368ae04fa6Smrg	exit ;;
9378ae04fa6Smrg    ppc64:Linux:*:*)
9388ae04fa6Smrg	echo powerpc64-unknown-linux-gnu
9398ae04fa6Smrg	exit ;;
9408ae04fa6Smrg    alpha:Linux:*:*)
9418ae04fa6Smrg	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
9428ae04fa6Smrg	  EV5)   UNAME_MACHINE=alphaev5 ;;
9438ae04fa6Smrg	  EV56)  UNAME_MACHINE=alphaev56 ;;
9448ae04fa6Smrg	  PCA56) UNAME_MACHINE=alphapca56 ;;
9458ae04fa6Smrg	  PCA57) UNAME_MACHINE=alphapca56 ;;
9468ae04fa6Smrg	  EV6)   UNAME_MACHINE=alphaev6 ;;
9478ae04fa6Smrg	  EV67)  UNAME_MACHINE=alphaev67 ;;
9488ae04fa6Smrg	  EV68*) UNAME_MACHINE=alphaev68 ;;
9498ae04fa6Smrg        esac
9508ae04fa6Smrg	objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
9518ae04fa6Smrg	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
9528ae04fa6Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
9538ae04fa6Smrg	exit ;;
95444af7230Smrg    padre:Linux:*:*)
95544af7230Smrg	echo sparc-unknown-linux-gnu
95644af7230Smrg	exit ;;
9578ae04fa6Smrg    parisc:Linux:*:* | hppa:Linux:*:*)
9588ae04fa6Smrg	# Look for CPU level
9598ae04fa6Smrg	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
9608ae04fa6Smrg	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
9618ae04fa6Smrg	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
9628ae04fa6Smrg	  *)    echo hppa-unknown-linux-gnu ;;
9638ae04fa6Smrg	esac
9648ae04fa6Smrg	exit ;;
9658ae04fa6Smrg    parisc64:Linux:*:* | hppa64:Linux:*:*)
9668ae04fa6Smrg	echo hppa64-unknown-linux-gnu
9678ae04fa6Smrg	exit ;;
9688ae04fa6Smrg    s390:Linux:*:* | s390x:Linux:*:*)
9698ae04fa6Smrg	echo ${UNAME_MACHINE}-ibm-linux
9708ae04fa6Smrg	exit ;;
9718ae04fa6Smrg    sh64*:Linux:*:*)
9728ae04fa6Smrg    	echo ${UNAME_MACHINE}-unknown-linux-gnu
9738ae04fa6Smrg	exit ;;
9748ae04fa6Smrg    sh*:Linux:*:*)
9758ae04fa6Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9768ae04fa6Smrg	exit ;;
9778ae04fa6Smrg    sparc:Linux:*:* | sparc64:Linux:*:*)
9788ae04fa6Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9798ae04fa6Smrg	exit ;;
9808ae04fa6Smrg    vax:Linux:*:*)
9818ae04fa6Smrg	echo ${UNAME_MACHINE}-dec-linux-gnu
9828ae04fa6Smrg	exit ;;
9838ae04fa6Smrg    x86_64:Linux:*:*)
9848ae04fa6Smrg	echo x86_64-unknown-linux-gnu
9858ae04fa6Smrg	exit ;;
98644af7230Smrg    xtensa*:Linux:*:*)
98744af7230Smrg    	echo ${UNAME_MACHINE}-unknown-linux-gnu
98844af7230Smrg	exit ;;
9898ae04fa6Smrg    i*86:Linux:*:*)
9908ae04fa6Smrg	# The BFD linker knows what the default object file format is, so
9918ae04fa6Smrg	# first see if it will tell us. cd to the root directory to prevent
9928ae04fa6Smrg	# problems with other programs or directories called `ld' in the path.
9938ae04fa6Smrg	# Set LC_ALL=C to ensure ld outputs messages in English.
9948ae04fa6Smrg	ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
9958ae04fa6Smrg			 | sed -ne '/supported targets:/!d
9968ae04fa6Smrg				    s/[ 	][ 	]*/ /g
9978ae04fa6Smrg				    s/.*supported targets: *//
9988ae04fa6Smrg				    s/ .*//
9998ae04fa6Smrg				    p'`
10008ae04fa6Smrg        case "$ld_supported_targets" in
10018ae04fa6Smrg	  elf32-i386)
10028ae04fa6Smrg		TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
10038ae04fa6Smrg		;;
10048ae04fa6Smrg	  a.out-i386-linux)
10058ae04fa6Smrg		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
10068ae04fa6Smrg		exit ;;
10078ae04fa6Smrg	  "")
10088ae04fa6Smrg		# Either a pre-BFD a.out linker (linux-gnuoldld) or
10098ae04fa6Smrg		# one that does not give us useful --help.
10108ae04fa6Smrg		echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
10118ae04fa6Smrg		exit ;;
10128ae04fa6Smrg	esac
10138ae04fa6Smrg	# Determine whether the default compiler is a.out or elf
10148ae04fa6Smrg	eval $set_cc_for_build
10158ae04fa6Smrg	sed 's/^	//' << EOF >$dummy.c
10168ae04fa6Smrg	#include <features.h>
10178ae04fa6Smrg	#ifdef __ELF__
10188ae04fa6Smrg	# ifdef __GLIBC__
10198ae04fa6Smrg	#  if __GLIBC__ >= 2
10208ae04fa6Smrg	LIBC=gnu
10218ae04fa6Smrg	#  else
10228ae04fa6Smrg	LIBC=gnulibc1
10238ae04fa6Smrg	#  endif
10248ae04fa6Smrg	# else
10258ae04fa6Smrg	LIBC=gnulibc1
10268ae04fa6Smrg	# endif
10278ae04fa6Smrg	#else
10288ae04fa6Smrg	#if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
10298ae04fa6Smrg	LIBC=gnu
10308ae04fa6Smrg	#else
10318ae04fa6Smrg	LIBC=gnuaout
10328ae04fa6Smrg	#endif
10338ae04fa6Smrg	#endif
10348ae04fa6Smrg	#ifdef __dietlibc__
10358ae04fa6Smrg	LIBC=dietlibc
10368ae04fa6Smrg	#endif
10378ae04fa6SmrgEOF
10388ae04fa6Smrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
10398ae04fa6Smrg	    /^LIBC/{
10408ae04fa6Smrg		s: ::g
10418ae04fa6Smrg		p
10428ae04fa6Smrg	    }'`"
10438ae04fa6Smrg	test x"${LIBC}" != x && {
10448ae04fa6Smrg		echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
10458ae04fa6Smrg		exit
10468ae04fa6Smrg	}
10478ae04fa6Smrg	test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
10488ae04fa6Smrg	;;
10498ae04fa6Smrg    i*86:DYNIX/ptx:4*:*)
10508ae04fa6Smrg	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
10518ae04fa6Smrg	# earlier versions are messed up and put the nodename in both
10528ae04fa6Smrg	# sysname and nodename.
10538ae04fa6Smrg	echo i386-sequent-sysv4
10548ae04fa6Smrg	exit ;;
10558ae04fa6Smrg    i*86:UNIX_SV:4.2MP:2.*)
10568ae04fa6Smrg        # Unixware is an offshoot of SVR4, but it has its own version
10578ae04fa6Smrg        # number series starting with 2...
10588ae04fa6Smrg        # I am not positive that other SVR4 systems won't match this,
10598ae04fa6Smrg	# I just have to hope.  -- rms.
10608ae04fa6Smrg        # Use sysv4.2uw... so that sysv4* matches it.
10618ae04fa6Smrg	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
10628ae04fa6Smrg	exit ;;
10638ae04fa6Smrg    i*86:OS/2:*:*)
10648ae04fa6Smrg	# If we were able to find `uname', then EMX Unix compatibility
10658ae04fa6Smrg	# is probably installed.
10668ae04fa6Smrg	echo ${UNAME_MACHINE}-pc-os2-emx
10678ae04fa6Smrg	exit ;;
10688ae04fa6Smrg    i*86:XTS-300:*:STOP)
10698ae04fa6Smrg	echo ${UNAME_MACHINE}-unknown-stop
10708ae04fa6Smrg	exit ;;
10718ae04fa6Smrg    i*86:atheos:*:*)
10728ae04fa6Smrg	echo ${UNAME_MACHINE}-unknown-atheos
10738ae04fa6Smrg	exit ;;
10748ae04fa6Smrg    i*86:syllable:*:*)
10758ae04fa6Smrg	echo ${UNAME_MACHINE}-pc-syllable
10768ae04fa6Smrg	exit ;;
10778ae04fa6Smrg    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
10788ae04fa6Smrg	echo i386-unknown-lynxos${UNAME_RELEASE}
10798ae04fa6Smrg	exit ;;
10808ae04fa6Smrg    i*86:*DOS:*:*)
10818ae04fa6Smrg	echo ${UNAME_MACHINE}-pc-msdosdjgpp
10828ae04fa6Smrg	exit ;;
10838ae04fa6Smrg    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
10848ae04fa6Smrg	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
10858ae04fa6Smrg	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
10868ae04fa6Smrg		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
10878ae04fa6Smrg	else
10888ae04fa6Smrg		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
10898ae04fa6Smrg	fi
10908ae04fa6Smrg	exit ;;
10918ae04fa6Smrg    i*86:*:5:[678]*)
10928ae04fa6Smrg    	# UnixWare 7.x, OpenUNIX and OpenServer 6.
10938ae04fa6Smrg	case `/bin/uname -X | grep "^Machine"` in
10948ae04fa6Smrg	    *486*)	     UNAME_MACHINE=i486 ;;
10958ae04fa6Smrg	    *Pentium)	     UNAME_MACHINE=i586 ;;
10968ae04fa6Smrg	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
10978ae04fa6Smrg	esac
10988ae04fa6Smrg	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
10998ae04fa6Smrg	exit ;;
11008ae04fa6Smrg    i*86:*:3.2:*)
11018ae04fa6Smrg	if test -f /usr/options/cb.name; then
11028ae04fa6Smrg		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
11038ae04fa6Smrg		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
11048ae04fa6Smrg	elif /bin/uname -X 2>/dev/null >/dev/null ; then
11058ae04fa6Smrg		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
11068ae04fa6Smrg		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
11078ae04fa6Smrg		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
11088ae04fa6Smrg			&& UNAME_MACHINE=i586
11098ae04fa6Smrg		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
11108ae04fa6Smrg			&& UNAME_MACHINE=i686
11118ae04fa6Smrg		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
11128ae04fa6Smrg			&& UNAME_MACHINE=i686
11138ae04fa6Smrg		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
11148ae04fa6Smrg	else
11158ae04fa6Smrg		echo ${UNAME_MACHINE}-pc-sysv32
11168ae04fa6Smrg	fi
11178ae04fa6Smrg	exit ;;
11188ae04fa6Smrg    pc:*:*:*)
11198ae04fa6Smrg	# Left here for compatibility:
11208ae04fa6Smrg        # uname -m prints for DJGPP always 'pc', but it prints nothing about
112144af7230Smrg        # the processor, so we play safe by assuming i586.
112244af7230Smrg	# Note: whatever this is, it MUST be the same as what config.sub
112344af7230Smrg	# prints for the "djgpp" host, or else GDB configury will decide that
112444af7230Smrg	# this is a cross-build.
112544af7230Smrg	echo i586-pc-msdosdjgpp
11268ae04fa6Smrg        exit ;;
11278ae04fa6Smrg    Intel:Mach:3*:*)
11288ae04fa6Smrg	echo i386-pc-mach3
11298ae04fa6Smrg	exit ;;
11308ae04fa6Smrg    paragon:*:*:*)
11318ae04fa6Smrg	echo i860-intel-osf1
11328ae04fa6Smrg	exit ;;
11338ae04fa6Smrg    i860:*:4.*:*) # i860-SVR4
11348ae04fa6Smrg	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
11358ae04fa6Smrg	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
11368ae04fa6Smrg	else # Add other i860-SVR4 vendors below as they are discovered.
11378ae04fa6Smrg	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
11388ae04fa6Smrg	fi
11398ae04fa6Smrg	exit ;;
11408ae04fa6Smrg    mini*:CTIX:SYS*5:*)
11418ae04fa6Smrg	# "miniframe"
11428ae04fa6Smrg	echo m68010-convergent-sysv
11438ae04fa6Smrg	exit ;;
11448ae04fa6Smrg    mc68k:UNIX:SYSTEM5:3.51m)
11458ae04fa6Smrg	echo m68k-convergent-sysv
11468ae04fa6Smrg	exit ;;
11478ae04fa6Smrg    M680?0:D-NIX:5.3:*)
11488ae04fa6Smrg	echo m68k-diab-dnix
11498ae04fa6Smrg	exit ;;
11508ae04fa6Smrg    M68*:*:R3V[5678]*:*)
11518ae04fa6Smrg	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
11528ae04fa6Smrg    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)
11538ae04fa6Smrg	OS_REL=''
11548ae04fa6Smrg	test -r /etc/.relid \
11558ae04fa6Smrg	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
11568ae04fa6Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
11578ae04fa6Smrg	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
11588ae04fa6Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
11598ae04fa6Smrg	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
11608ae04fa6Smrg    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
11618ae04fa6Smrg        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
11628ae04fa6Smrg          && { echo i486-ncr-sysv4; exit; } ;;
116344af7230Smrg    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
116444af7230Smrg	OS_REL='.3'
116544af7230Smrg	test -r /etc/.relid \
116644af7230Smrg	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
116744af7230Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
116844af7230Smrg	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
116944af7230Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
117044af7230Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
117144af7230Smrg	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
117244af7230Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
11738ae04fa6Smrg    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
11748ae04fa6Smrg	echo m68k-unknown-lynxos${UNAME_RELEASE}
11758ae04fa6Smrg	exit ;;
11768ae04fa6Smrg    mc68030:UNIX_System_V:4.*:*)
11778ae04fa6Smrg	echo m68k-atari-sysv4
11788ae04fa6Smrg	exit ;;
11798ae04fa6Smrg    TSUNAMI:LynxOS:2.*:*)
11808ae04fa6Smrg	echo sparc-unknown-lynxos${UNAME_RELEASE}
11818ae04fa6Smrg	exit ;;
11828ae04fa6Smrg    rs6000:LynxOS:2.*:*)
11838ae04fa6Smrg	echo rs6000-unknown-lynxos${UNAME_RELEASE}
11848ae04fa6Smrg	exit ;;
11858ae04fa6Smrg    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
11868ae04fa6Smrg	echo powerpc-unknown-lynxos${UNAME_RELEASE}
11878ae04fa6Smrg	exit ;;
11888ae04fa6Smrg    SM[BE]S:UNIX_SV:*:*)
11898ae04fa6Smrg	echo mips-dde-sysv${UNAME_RELEASE}
11908ae04fa6Smrg	exit ;;
11918ae04fa6Smrg    RM*:ReliantUNIX-*:*:*)
11928ae04fa6Smrg	echo mips-sni-sysv4
11938ae04fa6Smrg	exit ;;
11948ae04fa6Smrg    RM*:SINIX-*:*:*)
11958ae04fa6Smrg	echo mips-sni-sysv4
11968ae04fa6Smrg	exit ;;
11978ae04fa6Smrg    *:SINIX-*:*:*)
11988ae04fa6Smrg	if uname -p 2>/dev/null >/dev/null ; then
11998ae04fa6Smrg		UNAME_MACHINE=`(uname -p) 2>/dev/null`
12008ae04fa6Smrg		echo ${UNAME_MACHINE}-sni-sysv4
12018ae04fa6Smrg	else
12028ae04fa6Smrg		echo ns32k-sni-sysv
12038ae04fa6Smrg	fi
12048ae04fa6Smrg	exit ;;
12058ae04fa6Smrg    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
12068ae04fa6Smrg                      # says <Richard.M.Bartel@ccMail.Census.GOV>
12078ae04fa6Smrg        echo i586-unisys-sysv4
12088ae04fa6Smrg        exit ;;
12098ae04fa6Smrg    *:UNIX_System_V:4*:FTX*)
12108ae04fa6Smrg	# From Gerald Hewes <hewes@openmarket.com>.
12118ae04fa6Smrg	# How about differentiating between stratus architectures? -djm
12128ae04fa6Smrg	echo hppa1.1-stratus-sysv4
12138ae04fa6Smrg	exit ;;
12148ae04fa6Smrg    *:*:*:FTX*)
12158ae04fa6Smrg	# From seanf@swdc.stratus.com.
12168ae04fa6Smrg	echo i860-stratus-sysv4
12178ae04fa6Smrg	exit ;;
12188ae04fa6Smrg    i*86:VOS:*:*)
12198ae04fa6Smrg	# From Paul.Green@stratus.com.
12208ae04fa6Smrg	echo ${UNAME_MACHINE}-stratus-vos
12218ae04fa6Smrg	exit ;;
12228ae04fa6Smrg    *:VOS:*:*)
12238ae04fa6Smrg	# From Paul.Green@stratus.com.
12248ae04fa6Smrg	echo hppa1.1-stratus-vos
12258ae04fa6Smrg	exit ;;
12268ae04fa6Smrg    mc68*:A/UX:*:*)
12278ae04fa6Smrg	echo m68k-apple-aux${UNAME_RELEASE}
12288ae04fa6Smrg	exit ;;
12298ae04fa6Smrg    news*:NEWS-OS:6*:*)
12308ae04fa6Smrg	echo mips-sony-newsos6
12318ae04fa6Smrg	exit ;;
12328ae04fa6Smrg    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
12338ae04fa6Smrg	if [ -d /usr/nec ]; then
12348ae04fa6Smrg	        echo mips-nec-sysv${UNAME_RELEASE}
12358ae04fa6Smrg	else
12368ae04fa6Smrg	        echo mips-unknown-sysv${UNAME_RELEASE}
12378ae04fa6Smrg	fi
12388ae04fa6Smrg        exit ;;
12398ae04fa6Smrg    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
12408ae04fa6Smrg	echo powerpc-be-beos
12418ae04fa6Smrg	exit ;;
12428ae04fa6Smrg    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
12438ae04fa6Smrg	echo powerpc-apple-beos
12448ae04fa6Smrg	exit ;;
12458ae04fa6Smrg    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
12468ae04fa6Smrg	echo i586-pc-beos
12478ae04fa6Smrg	exit ;;
124844af7230Smrg    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
124944af7230Smrg	echo i586-pc-haiku
125044af7230Smrg	exit ;;
12518ae04fa6Smrg    SX-4:SUPER-UX:*:*)
12528ae04fa6Smrg	echo sx4-nec-superux${UNAME_RELEASE}
12538ae04fa6Smrg	exit ;;
12548ae04fa6Smrg    SX-5:SUPER-UX:*:*)
12558ae04fa6Smrg	echo sx5-nec-superux${UNAME_RELEASE}
12568ae04fa6Smrg	exit ;;
12578ae04fa6Smrg    SX-6:SUPER-UX:*:*)
12588ae04fa6Smrg	echo sx6-nec-superux${UNAME_RELEASE}
12598ae04fa6Smrg	exit ;;
126044af7230Smrg    SX-7:SUPER-UX:*:*)
126144af7230Smrg	echo sx7-nec-superux${UNAME_RELEASE}
126244af7230Smrg	exit ;;
126344af7230Smrg    SX-8:SUPER-UX:*:*)
126444af7230Smrg	echo sx8-nec-superux${UNAME_RELEASE}
126544af7230Smrg	exit ;;
126644af7230Smrg    SX-8R:SUPER-UX:*:*)
126744af7230Smrg	echo sx8r-nec-superux${UNAME_RELEASE}
126844af7230Smrg	exit ;;
12698ae04fa6Smrg    Power*:Rhapsody:*:*)
12708ae04fa6Smrg	echo powerpc-apple-rhapsody${UNAME_RELEASE}
12718ae04fa6Smrg	exit ;;
12728ae04fa6Smrg    *:Rhapsody:*:*)
12738ae04fa6Smrg	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
12748ae04fa6Smrg	exit ;;
12758ae04fa6Smrg    *:Darwin:*:*)
12768ae04fa6Smrg	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
12778ae04fa6Smrg	case $UNAME_PROCESSOR in
12788ae04fa6Smrg	    unknown) UNAME_PROCESSOR=powerpc ;;
12798ae04fa6Smrg	esac
12808ae04fa6Smrg	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
12818ae04fa6Smrg	exit ;;
12828ae04fa6Smrg    *:procnto*:*:* | *:QNX:[0123456789]*:*)
12838ae04fa6Smrg	UNAME_PROCESSOR=`uname -p`
12848ae04fa6Smrg	if test "$UNAME_PROCESSOR" = "x86"; then
12858ae04fa6Smrg		UNAME_PROCESSOR=i386
12868ae04fa6Smrg		UNAME_MACHINE=pc
12878ae04fa6Smrg	fi
12888ae04fa6Smrg	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
12898ae04fa6Smrg	exit ;;
12908ae04fa6Smrg    *:QNX:*:4*)
12918ae04fa6Smrg	echo i386-pc-qnx
12928ae04fa6Smrg	exit ;;
12938ae04fa6Smrg    NSE-?:NONSTOP_KERNEL:*:*)
12948ae04fa6Smrg	echo nse-tandem-nsk${UNAME_RELEASE}
12958ae04fa6Smrg	exit ;;
12968ae04fa6Smrg    NSR-?:NONSTOP_KERNEL:*:*)
12978ae04fa6Smrg	echo nsr-tandem-nsk${UNAME_RELEASE}
12988ae04fa6Smrg	exit ;;
12998ae04fa6Smrg    *:NonStop-UX:*:*)
13008ae04fa6Smrg	echo mips-compaq-nonstopux
13018ae04fa6Smrg	exit ;;
13028ae04fa6Smrg    BS2000:POSIX*:*:*)
13038ae04fa6Smrg	echo bs2000-siemens-sysv
13048ae04fa6Smrg	exit ;;
13058ae04fa6Smrg    DS/*:UNIX_System_V:*:*)
13068ae04fa6Smrg	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
13078ae04fa6Smrg	exit ;;
13088ae04fa6Smrg    *:Plan9:*:*)
13098ae04fa6Smrg	# "uname -m" is not consistent, so use $cputype instead. 386
13108ae04fa6Smrg	# is converted to i386 for consistency with other x86
13118ae04fa6Smrg	# operating systems.
13128ae04fa6Smrg	if test "$cputype" = "386"; then
13138ae04fa6Smrg	    UNAME_MACHINE=i386
13148ae04fa6Smrg	else
13158ae04fa6Smrg	    UNAME_MACHINE="$cputype"
13168ae04fa6Smrg	fi
13178ae04fa6Smrg	echo ${UNAME_MACHINE}-unknown-plan9
13188ae04fa6Smrg	exit ;;
13198ae04fa6Smrg    *:TOPS-10:*:*)
13208ae04fa6Smrg	echo pdp10-unknown-tops10
13218ae04fa6Smrg	exit ;;
13228ae04fa6Smrg    *:TENEX:*:*)
13238ae04fa6Smrg	echo pdp10-unknown-tenex
13248ae04fa6Smrg	exit ;;
13258ae04fa6Smrg    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
13268ae04fa6Smrg	echo pdp10-dec-tops20
13278ae04fa6Smrg	exit ;;
13288ae04fa6Smrg    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
13298ae04fa6Smrg	echo pdp10-xkl-tops20
13308ae04fa6Smrg	exit ;;
13318ae04fa6Smrg    *:TOPS-20:*:*)
13328ae04fa6Smrg	echo pdp10-unknown-tops20
13338ae04fa6Smrg	exit ;;
13348ae04fa6Smrg    *:ITS:*:*)
13358ae04fa6Smrg	echo pdp10-unknown-its
13368ae04fa6Smrg	exit ;;
13378ae04fa6Smrg    SEI:*:*:SEIUX)
13388ae04fa6Smrg        echo mips-sei-seiux${UNAME_RELEASE}
13398ae04fa6Smrg	exit ;;
13408ae04fa6Smrg    *:DragonFly:*:*)
13418ae04fa6Smrg	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
13428ae04fa6Smrg	exit ;;
13438ae04fa6Smrg    *:*VMS:*:*)
13448ae04fa6Smrg    	UNAME_MACHINE=`(uname -p) 2>/dev/null`
13458ae04fa6Smrg	case "${UNAME_MACHINE}" in
13468ae04fa6Smrg	    A*) echo alpha-dec-vms ; exit ;;
13478ae04fa6Smrg	    I*) echo ia64-dec-vms ; exit ;;
13488ae04fa6Smrg	    V*) echo vax-dec-vms ; exit ;;
13498ae04fa6Smrg	esac ;;
13508ae04fa6Smrg    *:XENIX:*:SysV)
13518ae04fa6Smrg	echo i386-pc-xenix
13528ae04fa6Smrg	exit ;;
13538ae04fa6Smrg    i*86:skyos:*:*)
13548ae04fa6Smrg	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
13558ae04fa6Smrg	exit ;;
13568ae04fa6Smrg    i*86:rdos:*:*)
13578ae04fa6Smrg	echo ${UNAME_MACHINE}-pc-rdos
13588ae04fa6Smrg	exit ;;
135944af7230Smrg    i*86:AROS:*:*)
136044af7230Smrg	echo ${UNAME_MACHINE}-pc-aros
136144af7230Smrg	exit ;;
13628ae04fa6Smrgesac
13638ae04fa6Smrg
13648ae04fa6Smrg#echo '(No uname command or uname output not recognized.)' 1>&2
13658ae04fa6Smrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
13668ae04fa6Smrg
13678ae04fa6Smrgeval $set_cc_for_build
13688ae04fa6Smrgcat >$dummy.c <<EOF
13698ae04fa6Smrg#ifdef _SEQUENT_
13708ae04fa6Smrg# include <sys/types.h>
13718ae04fa6Smrg# include <sys/utsname.h>
13728ae04fa6Smrg#endif
13738ae04fa6Smrgmain ()
13748ae04fa6Smrg{
13758ae04fa6Smrg#if defined (sony)
13768ae04fa6Smrg#if defined (MIPSEB)
13778ae04fa6Smrg  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
13788ae04fa6Smrg     I don't know....  */
13798ae04fa6Smrg  printf ("mips-sony-bsd\n"); exit (0);
13808ae04fa6Smrg#else
13818ae04fa6Smrg#include <sys/param.h>
13828ae04fa6Smrg  printf ("m68k-sony-newsos%s\n",
13838ae04fa6Smrg#ifdef NEWSOS4
13848ae04fa6Smrg          "4"
13858ae04fa6Smrg#else
13868ae04fa6Smrg	  ""
13878ae04fa6Smrg#endif
13888ae04fa6Smrg         ); exit (0);
13898ae04fa6Smrg#endif
13908ae04fa6Smrg#endif
13918ae04fa6Smrg
13928ae04fa6Smrg#if defined (__arm) && defined (__acorn) && defined (__unix)
13938ae04fa6Smrg  printf ("arm-acorn-riscix\n"); exit (0);
13948ae04fa6Smrg#endif
13958ae04fa6Smrg
13968ae04fa6Smrg#if defined (hp300) && !defined (hpux)
13978ae04fa6Smrg  printf ("m68k-hp-bsd\n"); exit (0);
13988ae04fa6Smrg#endif
13998ae04fa6Smrg
14008ae04fa6Smrg#if defined (NeXT)
14018ae04fa6Smrg#if !defined (__ARCHITECTURE__)
14028ae04fa6Smrg#define __ARCHITECTURE__ "m68k"
14038ae04fa6Smrg#endif
14048ae04fa6Smrg  int version;
14058ae04fa6Smrg  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
14068ae04fa6Smrg  if (version < 4)
14078ae04fa6Smrg    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
14088ae04fa6Smrg  else
14098ae04fa6Smrg    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
14108ae04fa6Smrg  exit (0);
14118ae04fa6Smrg#endif
14128ae04fa6Smrg
14138ae04fa6Smrg#if defined (MULTIMAX) || defined (n16)
14148ae04fa6Smrg#if defined (UMAXV)
14158ae04fa6Smrg  printf ("ns32k-encore-sysv\n"); exit (0);
14168ae04fa6Smrg#else
14178ae04fa6Smrg#if defined (CMU)
14188ae04fa6Smrg  printf ("ns32k-encore-mach\n"); exit (0);
14198ae04fa6Smrg#else
14208ae04fa6Smrg  printf ("ns32k-encore-bsd\n"); exit (0);
14218ae04fa6Smrg#endif
14228ae04fa6Smrg#endif
14238ae04fa6Smrg#endif
14248ae04fa6Smrg
14258ae04fa6Smrg#if defined (__386BSD__)
14268ae04fa6Smrg  printf ("i386-pc-bsd\n"); exit (0);
14278ae04fa6Smrg#endif
14288ae04fa6Smrg
14298ae04fa6Smrg#if defined (sequent)
14308ae04fa6Smrg#if defined (i386)
14318ae04fa6Smrg  printf ("i386-sequent-dynix\n"); exit (0);
14328ae04fa6Smrg#endif
14338ae04fa6Smrg#if defined (ns32000)
14348ae04fa6Smrg  printf ("ns32k-sequent-dynix\n"); exit (0);
14358ae04fa6Smrg#endif
14368ae04fa6Smrg#endif
14378ae04fa6Smrg
14388ae04fa6Smrg#if defined (_SEQUENT_)
14398ae04fa6Smrg    struct utsname un;
14408ae04fa6Smrg
14418ae04fa6Smrg    uname(&un);
14428ae04fa6Smrg
14438ae04fa6Smrg    if (strncmp(un.version, "V2", 2) == 0) {
14448ae04fa6Smrg	printf ("i386-sequent-ptx2\n"); exit (0);
14458ae04fa6Smrg    }
14468ae04fa6Smrg    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
14478ae04fa6Smrg	printf ("i386-sequent-ptx1\n"); exit (0);
14488ae04fa6Smrg    }
14498ae04fa6Smrg    printf ("i386-sequent-ptx\n"); exit (0);
14508ae04fa6Smrg
14518ae04fa6Smrg#endif
14528ae04fa6Smrg
14538ae04fa6Smrg#if defined (vax)
14548ae04fa6Smrg# if !defined (ultrix)
14558ae04fa6Smrg#  include <sys/param.h>
14568ae04fa6Smrg#  if defined (BSD)
14578ae04fa6Smrg#   if BSD == 43
14588ae04fa6Smrg      printf ("vax-dec-bsd4.3\n"); exit (0);
14598ae04fa6Smrg#   else
14608ae04fa6Smrg#    if BSD == 199006
14618ae04fa6Smrg      printf ("vax-dec-bsd4.3reno\n"); exit (0);
14628ae04fa6Smrg#    else
14638ae04fa6Smrg      printf ("vax-dec-bsd\n"); exit (0);
14648ae04fa6Smrg#    endif
14658ae04fa6Smrg#   endif
14668ae04fa6Smrg#  else
14678ae04fa6Smrg    printf ("vax-dec-bsd\n"); exit (0);
14688ae04fa6Smrg#  endif
14698ae04fa6Smrg# else
14708ae04fa6Smrg    printf ("vax-dec-ultrix\n"); exit (0);
14718ae04fa6Smrg# endif
14728ae04fa6Smrg#endif
14738ae04fa6Smrg
14748ae04fa6Smrg#if defined (alliant) && defined (i860)
14758ae04fa6Smrg  printf ("i860-alliant-bsd\n"); exit (0);
14768ae04fa6Smrg#endif
14778ae04fa6Smrg
14788ae04fa6Smrg  exit (1);
14798ae04fa6Smrg}
14808ae04fa6SmrgEOF
14818ae04fa6Smrg
14828ae04fa6Smrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
14838ae04fa6Smrg	{ echo "$SYSTEM_NAME"; exit; }
14848ae04fa6Smrg
14858ae04fa6Smrg# Apollos put the system type in the environment.
14868ae04fa6Smrg
14878ae04fa6Smrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
14888ae04fa6Smrg
14898ae04fa6Smrg# Convex versions that predate uname can use getsysinfo(1)
14908ae04fa6Smrg
14918ae04fa6Smrgif [ -x /usr/convex/getsysinfo ]
14928ae04fa6Smrgthen
14938ae04fa6Smrg    case `getsysinfo -f cpu_type` in
14948ae04fa6Smrg    c1*)
14958ae04fa6Smrg	echo c1-convex-bsd
14968ae04fa6Smrg	exit ;;
14978ae04fa6Smrg    c2*)
14988ae04fa6Smrg	if getsysinfo -f scalar_acc
14998ae04fa6Smrg	then echo c32-convex-bsd
15008ae04fa6Smrg	else echo c2-convex-bsd
15018ae04fa6Smrg	fi
15028ae04fa6Smrg	exit ;;
15038ae04fa6Smrg    c34*)
15048ae04fa6Smrg	echo c34-convex-bsd
15058ae04fa6Smrg	exit ;;
15068ae04fa6Smrg    c38*)
15078ae04fa6Smrg	echo c38-convex-bsd
15088ae04fa6Smrg	exit ;;
15098ae04fa6Smrg    c4*)
15108ae04fa6Smrg	echo c4-convex-bsd
15118ae04fa6Smrg	exit ;;
15128ae04fa6Smrg    esac
15138ae04fa6Smrgfi
15148ae04fa6Smrg
15158ae04fa6Smrgcat >&2 <<EOF
15168ae04fa6Smrg$0: unable to guess system type
15178ae04fa6Smrg
15188ae04fa6SmrgThis script, last modified $timestamp, has failed to recognize
15198ae04fa6Smrgthe operating system you are using. It is advised that you
15208ae04fa6Smrgdownload the most up to date version of the config scripts from
15218ae04fa6Smrg
152244af7230Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
15238ae04fa6Smrgand
152444af7230Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
15258ae04fa6Smrg
15268ae04fa6SmrgIf the version you run ($0) is already up to date, please
15278ae04fa6Smrgsend the following data and any information you think might be
15288ae04fa6Smrgpertinent to <config-patches@gnu.org> in order to provide the needed
15298ae04fa6Smrginformation to handle your system.
15308ae04fa6Smrg
15318ae04fa6Smrgconfig.guess timestamp = $timestamp
15328ae04fa6Smrg
15338ae04fa6Smrguname -m = `(uname -m) 2>/dev/null || echo unknown`
15348ae04fa6Smrguname -r = `(uname -r) 2>/dev/null || echo unknown`
15358ae04fa6Smrguname -s = `(uname -s) 2>/dev/null || echo unknown`
15368ae04fa6Smrguname -v = `(uname -v) 2>/dev/null || echo unknown`
15378ae04fa6Smrg
15388ae04fa6Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
15398ae04fa6Smrg/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
15408ae04fa6Smrg
15418ae04fa6Smrghostinfo               = `(hostinfo) 2>/dev/null`
15428ae04fa6Smrg/bin/universe          = `(/bin/universe) 2>/dev/null`
15438ae04fa6Smrg/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
15448ae04fa6Smrg/bin/arch              = `(/bin/arch) 2>/dev/null`
15458ae04fa6Smrg/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
15468ae04fa6Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
15478ae04fa6Smrg
15488ae04fa6SmrgUNAME_MACHINE = ${UNAME_MACHINE}
15498ae04fa6SmrgUNAME_RELEASE = ${UNAME_RELEASE}
15508ae04fa6SmrgUNAME_SYSTEM  = ${UNAME_SYSTEM}
15518ae04fa6SmrgUNAME_VERSION = ${UNAME_VERSION}
15528ae04fa6SmrgEOF
15538ae04fa6Smrg
15548ae04fa6Smrgexit 1
15558ae04fa6Smrg
15568ae04fa6Smrg# Local variables:
15578ae04fa6Smrg# eval: (add-hook 'write-file-hooks 'time-stamp)
15588ae04fa6Smrg# time-stamp-start: "timestamp='"
15598ae04fa6Smrg# time-stamp-format: "%:y-%02m-%02d"
15608ae04fa6Smrg# time-stamp-end: "'"
15618ae04fa6Smrg# End:
1562