15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#! /bin/sh
25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Attempt to guess a canonical system name.
35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#   2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#   Inc.
65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)timestamp='2007-05-17'
85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# This file is free software; you can redistribute it and/or modify it
105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# under the terms of the GNU General Public License as published by
115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# the Free Software Foundation; either version 2 of the License, or
125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# (at your option) any later version.
135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# This program is distributed in the hope that it will be useful, but
155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# WITHOUT ANY WARRANTY; without even the implied warranty of
165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# General Public License for more details.
185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# You should have received a copy of the GNU General Public License
205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# along with this program; if not, write to the Free Software
215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# 02110-1301, USA.
235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# As a special exception to the GNU General Public License, if you
255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# distribute this file as part of a program that contains a
265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# configuration script generated by Autoconf, you may include it under
275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# the same distribution terms that you use for the rest of that program.
285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Originally written by Per Bothner <per@bothner.com>.
315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Please send patches to <config-patches@gnu.org>.  Submit a context
325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# diff and a properly formatted ChangeLog entry.
335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# This script attempts to guess a canonical system name similar to
355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# config.sub.  If it succeeds, it prints the system name on stdout, and
365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# exits with 0.  Otherwise, it exits with 1.
375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# The plan is that this can be called by configure scripts if you
395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# don't specify an explicit build system type.
405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)me=`echo "$0" | sed -e 's,.*/,,'`
425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)usage="\
445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)Usage: $0 [OPTION]
455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)Output the configuration name of the system \`$me' is run on.
475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)Operation modes:
495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  -h, --help         print this help, then exit
505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  -t, --time-stamp   print date of last modification, then exit
515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  -v, --version      print version number, then exit
525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)Report bugs and patches to <config-patches@gnu.org>."
545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)version="\
565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)GNU config.guess ($timestamp)
575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)Originally written by Per Bothner.
595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)Free Software Foundation, Inc.
615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)This is free software; see the source for copying conditions.  There is NO
635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)help="
665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)Try \`$me --help' for more information."
675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Parse command line
695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)while test $# -gt 0 ; do
705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  case $1 in
715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    --time-stamp | --time* | -t )
725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)       echo "$timestamp" ; exit ;;
735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    --version | -v )
745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)       echo "$version" ; exit ;;
755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    --help | --h* | -h )
765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)       echo "$usage"; exit ;;
775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    -- )     # Stop option processing
785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)       shift; break ;;
795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    - )	# Use stdin as input.
805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)       break ;;
815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    -* )
825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)       echo "$me: invalid option $1$help" >&2
835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)       exit 1 ;;
845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    * )
855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)       break ;;
865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  esac
875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)done
885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)if test $# != 0; then
905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  echo "$me: too many arguments$help" >&2
915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  exit 1
925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fi
935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)trap 'exit 1' 1 2 15
955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# compiler to aid in system detection is discouraged as it requires
985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# temporary files to be created and, as you can see below, it is a
995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# headache to deal with in a portable fashion.
1005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
1025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# use `HOST_CC' if defined, but it is deprecated.
1035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Portable tmp directory creation inspired by the Autoconf team.
1055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)set_cc_for_build='
1075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
1085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
1095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles): ${TMPDIR=/tmp} ;
1105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
1115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
1125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
1135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
1145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)dummy=$tmp/dummy ;
1155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
1165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)case $CC_FOR_BUILD,$HOST_CC,$CC in
1175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ,,)    echo "int x;" > $dummy.c ;
1185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	for c in cc gcc c89 c99 ; do
1195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
1205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	     CC_FOR_BUILD="$c"; break ;
1215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  fi ;
1225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	done ;
1235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	if test x"$CC_FOR_BUILD" = x ; then
1245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  CC_FOR_BUILD=no_compiler_found ;
1255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	fi
1265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	;;
1275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ,,*)   CC_FOR_BUILD=$CC ;;
1285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
1295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)esac ; set_cc_for_build= ;'
1305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
1325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# (ghazi@noc.rutgers.edu 1994-08-24)
1335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
1345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	PATH=$PATH:/.attbin ; export PATH
1355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fi
1365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
1385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
1395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
1405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
1415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Note: order is significant - the case branches are not exclusive.
1435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
1455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:NetBSD:*:*)
1465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# NetBSD (nbsd) targets should (where applicable) match one or
1475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
1485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
1495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# switched to ELF, *-*-netbsd* would select the old
1505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# object file format.  This provides both forward
1515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# compatibility and a consistent mechanism for selecting the
1525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# object file format.
1535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#
1545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# Note: NetBSD doesn't particularly care about the vendor
1555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# portion of the name.  We always set it to "unknown".
1565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	sysctl="sysctl -n hw.machine_arch"
1575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
1585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
1595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	case "${UNAME_MACHINE_ARCH}" in
1605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    armeb) machine=armeb-unknown ;;
1615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    arm*) machine=arm-unknown ;;
1625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    sh3el) machine=shl-unknown ;;
1635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    sh3eb) machine=sh-unknown ;;
1645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    sh5el) machine=sh5le-unknown ;;
1655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
1665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	esac
1675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# The Operating System including object format, if it has switched
1685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# to ELF recently, or will in the future.
1695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	case "${UNAME_MACHINE_ARCH}" in
1705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
1715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		eval $set_cc_for_build
1725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
1735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)			| grep __ELF__ >/dev/null
1745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		then
1755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
1765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		    # Return netbsd for either.  FIX?
1775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		    os=netbsd
1785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		else
1795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		    os=netbsdelf
1805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		fi
1815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		;;
1825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    *)
1835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	        os=netbsd
1845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		;;
1855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	esac
1865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# The OS release
1875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# Debian GNU/NetBSD machines have a different userland, and
1885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# thus, need a distinct triplet. However, they do not need
1895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# kernel version information, so it can be replaced with a
1905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# suitable tag, in the style of linux-gnu.
1915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	case "${UNAME_VERSION}" in
1925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    Debian*)
1935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		release='-gnu'
1945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		;;
1955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    *)
1965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
1975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		;;
1985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	esac
1995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
2005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# contains redundant information, the shorter form:
2015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
2025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo "${machine}-${os}${release}"
2035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
2045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:OpenBSD:*:*)
2055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
2065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
2075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
2085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:ekkoBSD:*:*)
2095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
2105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
2115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:SolidBSD:*:*)
2125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
2135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
2145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    macppc:MirBSD:*:*)
2155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
2165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
2175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:MirBSD:*:*)
2185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
2195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
2205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    alpha:OSF1:*:*)
2215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	case $UNAME_RELEASE in
2225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	*4.0)
2235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
2245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		;;
2255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	*5.*)
2265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	        UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
2275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		;;
2285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	esac
2295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# According to Compaq, /usr/sbin/psrinfo has been available on
2305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# OSF/1 and Tru64 systems produced since 1995.  I hope that
2315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# covers most systems running today.  This code pipes the CPU
2325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# types through head -n 1, so we only detect the type of CPU 0.
2335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
2345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	case "$ALPHA_CPU_TYPE" in
2355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    "EV4 (21064)")
2365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		UNAME_MACHINE="alpha" ;;
2375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    "EV4.5 (21064)")
2385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		UNAME_MACHINE="alpha" ;;
2395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    "LCA4 (21066/21068)")
2405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		UNAME_MACHINE="alpha" ;;
2415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    "EV5 (21164)")
2425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		UNAME_MACHINE="alphaev5" ;;
2435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    "EV5.6 (21164A)")
2445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		UNAME_MACHINE="alphaev56" ;;
2455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    "EV5.6 (21164PC)")
2465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		UNAME_MACHINE="alphapca56" ;;
2475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    "EV5.7 (21164PC)")
2485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		UNAME_MACHINE="alphapca57" ;;
2495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    "EV6 (21264)")
2505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		UNAME_MACHINE="alphaev6" ;;
2515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    "EV6.7 (21264A)")
2525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		UNAME_MACHINE="alphaev67" ;;
2535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    "EV6.8CB (21264C)")
2545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		UNAME_MACHINE="alphaev68" ;;
2555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    "EV6.8AL (21264B)")
2565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		UNAME_MACHINE="alphaev68" ;;
2575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    "EV6.8CX (21264D)")
2585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		UNAME_MACHINE="alphaev68" ;;
2595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    "EV6.9A (21264/EV69A)")
2605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		UNAME_MACHINE="alphaev69" ;;
2615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    "EV7 (21364)")
2625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		UNAME_MACHINE="alphaev7" ;;
2635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    "EV7.9 (21364A)")
2645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		UNAME_MACHINE="alphaev79" ;;
2655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	esac
2665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# A Pn.n version is a patched version.
2675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# A Vn.n version is a released version.
2685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# A Tn.n version is a released field test version.
2695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# A Xn.n version is an unreleased experimental baselevel.
2705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# 1.2 uses "1.2" for uname -r.
2715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
2725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
2735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    Alpha\ *:Windows_NT*:*)
2745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# How do we know it's Interix rather than the generic POSIX subsystem?
2755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# Should we change UNAME_MACHINE based on the output of uname instead
2765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# of the specific Alpha model?
2775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo alpha-pc-interix
2785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
2795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    21064:Windows_NT:50:3)
2805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo alpha-dec-winnt3.5
2815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
2825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    Amiga*:UNIX_System_V:4.0:*)
2835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo m68k-unknown-sysv4
2845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
2855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:[Aa]miga[Oo][Ss]:*:*)
2865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-unknown-amigaos
2875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
2885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:[Mm]orph[Oo][Ss]:*:*)
2895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-unknown-morphos
2905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
2915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:OS/390:*:*)
2925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo i370-ibm-openedition
2935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
2945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:z/VM:*:*)
2955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo s390-ibm-zvmoe
2965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
2975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:OS400:*:*)
2985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        echo powerpc-ibm-os400
2995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
3005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
3015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo arm-acorn-riscix${UNAME_RELEASE}
3025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
3035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    arm:riscos:*:*|arm:RISCOS:*:*)
3045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo arm-unknown-riscos
3055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
3065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
3075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo hppa1.1-hitachi-hiuxmpp
3085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
3095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
3105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
3115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	if test "`(/bin/universe) 2>/dev/null`" = att ; then
3125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo pyramid-pyramid-sysv3
3135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	else
3145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo pyramid-pyramid-bsd
3155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	fi
3165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
3175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    NILE*:*:*:dcosx)
3185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo pyramid-pyramid-svr4
3195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
3205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    DRS?6000:unix:4.0:6*)
3215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo sparc-icl-nx6
3225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
3235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
3245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	case `/usr/bin/uname -p` in
3255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    sparc) echo sparc-icl-nx7; exit ;;
3265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	esac ;;
3275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    sun4H:SunOS:5.*:*)
3285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
3305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
3315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
3335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i86pc:SunOS:5.*:* | ix86xen:SunOS:5.*:*)
3345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
3365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    sun4*:SunOS:6*:*)
3375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# According to config.sub, this is the proper way to canonicalize
3385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
3395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# it's likely to be more like Solaris than SunOS4.
3405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
3425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    sun4*:SunOS:*:*)
3435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	case "`/usr/bin/arch -k`" in
3445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    Series*|S4*)
3455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		UNAME_RELEASE=`uname -v`
3465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		;;
3475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	esac
3485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# Japanese Language versions have a version number like `4.1.3-JL'.
3495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
3505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
3515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    sun3*:SunOS:*:*)
3525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo m68k-sun-sunos${UNAME_RELEASE}
3535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
3545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    sun*:*:4.2BSD:*)
3555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
3565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
3575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	case "`/bin/arch`" in
3585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    sun3)
3595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo m68k-sun-sunos${UNAME_RELEASE}
3605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		;;
3615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    sun4)
3625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo sparc-sun-sunos${UNAME_RELEASE}
3635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		;;
3645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	esac
3655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
3665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    aushp:SunOS:*:*)
3675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo sparc-auspex-sunos${UNAME_RELEASE}
3685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
3695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    # The situation for MiNT is a little confusing.  The machine name
3705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    # can be virtually everything (everything which is not
3715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    # "atarist" or "atariste" at least should have a processor
3725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
3735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    # to the lowercase version "mint" (or "freemint").  Finally
3745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    # the system name "TOS" denotes a system which is actually not
3755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    # MiNT.  But MiNT is downward compatible to TOS, so this should
3765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    # be no problem.
3775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
3785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        echo m68k-atari-mint${UNAME_RELEASE}
3795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
3805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
3815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo m68k-atari-mint${UNAME_RELEASE}
3825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        exit ;;
3835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
3845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        echo m68k-atari-mint${UNAME_RELEASE}
3855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
3865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
3875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        echo m68k-milan-mint${UNAME_RELEASE}
3885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        exit ;;
3895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
3905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        echo m68k-hades-mint${UNAME_RELEASE}
3915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        exit ;;
3925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
3935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        echo m68k-unknown-mint${UNAME_RELEASE}
3945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        exit ;;
3955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    m68k:machten:*:*)
3965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo m68k-apple-machten${UNAME_RELEASE}
3975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
3985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    powerpc:machten:*:*)
3995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo powerpc-apple-machten${UNAME_RELEASE}
4005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
4015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    RISC*:Mach:*:*)
4025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo mips-dec-mach_bsd4.3
4035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
4045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    RISC*:ULTRIX:*:*)
4055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo mips-dec-ultrix${UNAME_RELEASE}
4065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
4075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    VAX*:ULTRIX*:*:*)
4085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo vax-dec-ultrix${UNAME_RELEASE}
4095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
4105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    2020:CLIX:*:* | 2430:CLIX:*:*)
4115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo clipper-intergraph-clix${UNAME_RELEASE}
4125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
4135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    mips:*:*:UMIPS | mips:*:*:RISCos)
4145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	eval $set_cc_for_build
4155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	sed 's/^	//' << EOF >$dummy.c
4165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifdef __cplusplus
4175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <stdio.h>  /* for printf() prototype */
4185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	int main (int argc, char *argv[]) {
4195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#else
4205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	int main (argc, argv) int argc; char *argv[]; {
4215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
4225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#if defined (host_mips) && defined (MIPSEB)
4235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#if defined (SYSTYPE_SYSV)
4245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
4255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#endif
4265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#if defined (SYSTYPE_SVR4)
4275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
4285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#endif
4295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
4305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
4315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#endif
4325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#endif
4335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  exit (-1);
4345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	}
4355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)EOF
4365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$CC_FOR_BUILD -o $dummy $dummy.c &&
4375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
4385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  SYSTEM_NAME=`$dummy $dummyarg` &&
4395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    { echo "$SYSTEM_NAME"; exit; }
4405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo mips-mips-riscos${UNAME_RELEASE}
4415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
4425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    Motorola:PowerMAX_OS:*:*)
4435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo powerpc-motorola-powermax
4445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
4455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    Motorola:*:4.3:PL8-*)
4465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo powerpc-harris-powermax
4475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
4485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
4495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo powerpc-harris-powermax
4505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
4515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    Night_Hawk:Power_UNIX:*:*)
4525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo powerpc-harris-powerunix
4535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
4545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    m88k:CX/UX:7*:*)
4555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo m88k-harris-cxux7
4565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
4575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    m88k:*:4*:R4*)
4585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo m88k-motorola-sysv4
4595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
4605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    m88k:*:3*:R3*)
4615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo m88k-motorola-sysv3
4625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
4635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    AViiON:dgux:*:*)
4645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        # DG/UX returns AViiON for all architectures
4655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        UNAME_PROCESSOR=`/usr/bin/uname -p`
4665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
4675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	then
4685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
4695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	       [ ${TARGET_BINARY_INTERFACE}x = x ]
4705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    then
4715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo m88k-dg-dgux${UNAME_RELEASE}
4725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    else
4735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo m88k-dg-dguxbcs${UNAME_RELEASE}
4745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    fi
4755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	else
4765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    echo i586-dg-dgux${UNAME_RELEASE}
4775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	fi
4785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 	exit ;;
4795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
4805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo m88k-dolphin-sysv3
4815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
4825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    M88*:*:R3*:*)
4835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# Delta 88k system running SVR3
4845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo m88k-motorola-sysv3
4855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
4865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
4875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo m88k-tektronix-sysv3
4885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
4895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
4905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo m68k-tektronix-bsd
4915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
4925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:IRIX*:*:*)
4935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
4945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
4955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
4965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
4975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
4985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*86:AIX:*:*)
4995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo i386-ibm-aix
5005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
5015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ia64:AIX:*:*)
5025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	if [ -x /usr/bin/oslevel ] ; then
5035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		IBM_REV=`/usr/bin/oslevel`
5045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	else
5055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
5065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	fi
5075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
5085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
5095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:AIX:2:3)
5105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
5115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		eval $set_cc_for_build
5125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		sed 's/^		//' << EOF >$dummy.c
5135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		#include <sys/systemcfg.h>
5145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		main()
5165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)			{
5175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)			if (!__power_pc())
5185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)				exit(1);
5195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)			puts("powerpc-ibm-aix3.2.5");
5205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)			exit(0);
5215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)			}
5225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)EOF
5235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
5245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		then
5255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)			echo "$SYSTEM_NAME"
5265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		else
5275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)			echo rs6000-ibm-aix3.2.5
5285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		fi
5295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
5305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo rs6000-ibm-aix3.2.4
5315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	else
5325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo rs6000-ibm-aix3.2
5335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	fi
5345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
5355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:AIX:*:[45])
5365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
5375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
5385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		IBM_ARCH=rs6000
5395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	else
5405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		IBM_ARCH=powerpc
5415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	fi
5425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	if [ -x /usr/bin/oslevel ] ; then
5435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		IBM_REV=`/usr/bin/oslevel`
5445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	else
5455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
5465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	fi
5475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
5485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
5495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:AIX:*:*)
5505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo rs6000-ibm-aix
5515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
5525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
5535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo romp-ibm-bsd4.4
5545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
5555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
5565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
5575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;                             # report: romp-ibm BSD 4.3
5585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:BOSX:*:*)
5595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo rs6000-bull-bosx
5605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
5615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    DPX/2?00:B.O.S.:*:*)
5625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo m68k-bull-sysv3
5635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
5645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    9000/[34]??:4.3bsd:1.*:*)
5655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo m68k-hp-bsd
5665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
5675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
5685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo m68k-hp-bsd4.4
5695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
5705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    9000/[34678]??:HP-UX:*:*)
5715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
5725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	case "${UNAME_MACHINE}" in
5735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    9000/31? )            HP_ARCH=m68000 ;;
5745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    9000/[34]?? )         HP_ARCH=m68k ;;
5755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    9000/[678][0-9][0-9])
5765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		if [ -x /usr/bin/getconf ]; then
5775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
5785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
5795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    case "${sc_cpu_version}" in
5805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
5815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
5825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                      532)                      # CPU_PA_RISC2_0
5835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                        case "${sc_kernel_bits}" in
5845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                          32) HP_ARCH="hppa2.0n" ;;
5855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                          64) HP_ARCH="hppa2.0w" ;;
5865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
5875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                        esac ;;
5885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    esac
5895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		fi
5905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		if [ "${HP_ARCH}" = "" ]; then
5915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		    eval $set_cc_for_build
5925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		    sed 's/^              //' << EOF >$dummy.c
5935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              #define _HPUX_SOURCE
5955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              #include <stdlib.h>
5965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              #include <unistd.h>
5975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              int main ()
5995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              {
6005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              #if defined(_SC_KERNEL_BITS)
6015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                  long bits = sysconf(_SC_KERNEL_BITS);
6025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              #endif
6035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                  long cpu  = sysconf (_SC_CPU_VERSION);
6045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                  switch (cpu)
6065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              	{
6075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
6085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
6095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              	case CPU_PA_RISC2_0:
6105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              #if defined(_SC_KERNEL_BITS)
6115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              	    switch (bits)
6125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              		{
6135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              		case 64: puts ("hppa2.0w"); break;
6145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              		case 32: puts ("hppa2.0n"); break;
6155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              		default: puts ("hppa2.0"); break;
6165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              		} break;
6175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              #else  /* !defined(_SC_KERNEL_BITS) */
6185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              	    puts ("hppa2.0"); break;
6195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              #endif
6205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              	default: puts ("hppa1.0"); break;
6215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              	}
6225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                  exit (0);
6235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              }
6245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)EOF
6255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
6265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		    test -z "$HP_ARCH" && HP_ARCH=hppa
6275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		fi ;;
6285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	esac
6295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	if [ ${HP_ARCH} = "hppa2.0w" ]
6305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	then
6315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    eval $set_cc_for_build
6325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
6345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
6355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    # generating 64-bit code.  GNU and HP use different nomenclature:
6365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    #
6375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    # $ CC_FOR_BUILD=cc ./config.guess
6385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    # => hppa2.0w-hp-hpux11.23
6395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
6405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    # => hppa64-hp-hpux11.23
6415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
6435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		grep __LP64__ >/dev/null
6445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    then
6455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		HP_ARCH="hppa2.0w"
6465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    else
6475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		HP_ARCH="hppa64"
6485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    fi
6495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	fi
6505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
6515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
6525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ia64:HP-UX:*:*)
6535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
6545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ia64-hp-hpux${HPUX_REV}
6555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
6565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    3050*:HI-UX:*:*)
6575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	eval $set_cc_for_build
6585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	sed 's/^	//' << EOF >$dummy.c
6595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#include <unistd.h>
6605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	int
6615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	main ()
6625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	{
6635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  long cpu = sysconf (_SC_CPU_VERSION);
6645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
6655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
6665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	     results, however.  */
6675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  if (CPU_IS_PA_RISC (cpu))
6685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    {
6695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	      switch (cpu)
6705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		{
6715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
6725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
6735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
6745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		  default: puts ("hppa-hitachi-hiuxwe2"); break;
6755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		}
6765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    }
6775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  else if (CPU_IS_HP_MC68K (cpu))
6785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    puts ("m68k-hitachi-hiuxwe2");
6795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  else puts ("unknown-hitachi-hiuxwe2");
6805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  exit (0);
6815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	}
6825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)EOF
6835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
6845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		{ echo "$SYSTEM_NAME"; exit; }
6855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo unknown-hitachi-hiuxwe2
6865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
6875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
6885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo hppa1.1-hp-bsd
6895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
6905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    9000/8??:4.3bsd:*:*)
6915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo hppa1.0-hp-bsd
6925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
6935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
6945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo hppa1.0-hp-mpeix
6955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
6965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
6975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo hppa1.1-hp-osf
6985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
6995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    hp8??:OSF1:*:*)
7005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo hppa1.0-hp-osf
7015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
7025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*86:OSF1:*:*)
7035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	if [ -x /usr/sbin/sysversion ] ; then
7045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    echo ${UNAME_MACHINE}-unknown-osf1mk
7055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	else
7065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    echo ${UNAME_MACHINE}-unknown-osf1
7075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	fi
7085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
7095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    parisc*:Lites*:*:*)
7105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo hppa1.1-hp-lites
7115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
7125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
7135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo c1-convex-bsd
7145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        exit ;;
7155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
7165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	if getsysinfo -f scalar_acc
7175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	then echo c32-convex-bsd
7185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	else echo c2-convex-bsd
7195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	fi
7205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        exit ;;
7215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
7225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo c34-convex-bsd
7235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        exit ;;
7245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
7255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo c38-convex-bsd
7265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        exit ;;
7275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
7285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo c4-convex-bsd
7295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        exit ;;
7305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    CRAY*Y-MP:*:*:*)
7315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
7335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    CRAY*[A-Z]90:*:*:*)
7345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
7355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
7365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
7375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	      -e 's/\.[^.]*$/.X/'
7385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
7395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    CRAY*TS:*:*:*)
7405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
7425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    CRAY*T3E:*:*:*)
7435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
7455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    CRAY*SV1:*:*:*)
7465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
7485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:UNICOS/mp:*:*)
7495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
7515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
7525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
7535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
7545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
7555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
7565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        exit ;;
7575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    5000:UNIX_System_V:4.*:*)
7585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
7595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
7605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
7615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
7625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
7635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
7645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
7655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    sparc*:BSD/OS:*:*)
7665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo sparc-unknown-bsdi${UNAME_RELEASE}
7675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
7685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:BSD/OS:*:*)
7695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
7705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
7715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:FreeBSD:*:*)
7725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	case ${UNAME_MACHINE} in
7735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    pc98)
7745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    amd64)
7765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    *)
7785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	esac
7805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
7815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*:CYGWIN*:*)
7825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-pc-cygwin
7835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
7845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:MINGW*:*)
7855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-pc-mingw32
7865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
7875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*:windows32*:*)
7885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    	# uname -m includes "-pc" on this system.
7895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    	echo ${UNAME_MACHINE}-mingw32
7905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
7915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*:PW*:*)
7925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-pc-pw32
7935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
7945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:Interix*:[3456]*)
7955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    	case ${UNAME_MACHINE} in
7965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    x86) 
7975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo i586-pc-interix${UNAME_RELEASE}
7985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		exit ;;
7995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    EM64T | authenticamd)
8005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo x86_64-unknown-interix${UNAME_RELEASE}
8015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		exit ;;
8025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	esac ;;
8035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
8045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo i${UNAME_MACHINE}-pc-mks
8055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
8065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
8075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# How do we know it's Interix rather than the generic POSIX subsystem?
8085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
8095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# UNAME_MACHINE based on the output of uname instead of i386?
8105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo i586-pc-interix
8115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
8125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*:UWIN*:*)
8135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-pc-uwin
8145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
8155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
8165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo x86_64-unknown-cygwin
8175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
8185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    p*:CYGWIN*:*)
8195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo powerpcle-unknown-cygwin
8205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
8215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    prep*:SunOS:5.*:*)
8225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
8235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
8245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:GNU:*:*)
8255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# the GNU system
8265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
8275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
8285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:GNU/*:*:*)
8295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# other systems with GNU libc and userland
8305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
8315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
8325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*86:Minix:*:*)
8335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-pc-minix
8345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
8355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    arm*:Linux:*:*)
8365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-unknown-linux-gnu
8375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
8385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    avr32*:Linux:*:*)
8395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-unknown-linux-gnu
8405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
8415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    cris:Linux:*:*)
8425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo cris-axis-linux-gnu
8435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
8445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    crisv32:Linux:*:*)
8455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo crisv32-axis-linux-gnu
8465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
8475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    frv:Linux:*:*)
8485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    	echo frv-unknown-linux-gnu
8495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
8505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ia64:Linux:*:*)
8515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-unknown-linux-gnu
8525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
8535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    m32r*:Linux:*:*)
8545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-unknown-linux-gnu
8555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
8565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    m68*:Linux:*:*)
8575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-unknown-linux-gnu
8585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
8595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    mips:Linux:*:*)
8605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	eval $set_cc_for_build
8615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	sed 's/^	//' << EOF >$dummy.c
8625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#undef CPU
8635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#undef mips
8645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#undef mipsel
8655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
8665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	CPU=mipsel
8675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#else
8685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
8695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	CPU=mips
8705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#else
8715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	CPU=
8725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#endif
8735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#endif
8745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)EOF
8755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
8765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    /^CPU/{
8775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		s: ::g
8785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		p
8795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    }'`"
8805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
8815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	;;
8825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    mips64:Linux:*:*)
8835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	eval $set_cc_for_build
8845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	sed 's/^	//' << EOF >$dummy.c
8855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#undef CPU
8865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#undef mips64
8875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#undef mips64el
8885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
8895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	CPU=mips64el
8905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#else
8915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
8925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	CPU=mips64
8935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#else
8945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	CPU=
8955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#endif
8965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#endif
8975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)EOF
8985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
8995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    /^CPU/{
9005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		s: ::g
9015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		p
9025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    }'`"
9035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
9045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	;;
9055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    or32:Linux:*:*)
9065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo or32-unknown-linux-gnu
9075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
9085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ppc:Linux:*:*)
9095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo powerpc-unknown-linux-gnu
9105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
9115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ppc64:Linux:*:*)
9125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo powerpc64-unknown-linux-gnu
9135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
9145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    alpha:Linux:*:*)
9155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
9165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  EV5)   UNAME_MACHINE=alphaev5 ;;
9175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  EV56)  UNAME_MACHINE=alphaev56 ;;
9185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  PCA56) UNAME_MACHINE=alphapca56 ;;
9195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  PCA57) UNAME_MACHINE=alphapca56 ;;
9205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  EV6)   UNAME_MACHINE=alphaev6 ;;
9215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  EV67)  UNAME_MACHINE=alphaev67 ;;
9225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  EV68*) UNAME_MACHINE=alphaev68 ;;
9235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        esac
9245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
9255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
9265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
9275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
9285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    parisc:Linux:*:* | hppa:Linux:*:*)
9295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# Look for CPU level
9305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
9315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
9325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
9335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  *)    echo hppa-unknown-linux-gnu ;;
9345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	esac
9355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
9365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    parisc64:Linux:*:* | hppa64:Linux:*:*)
9375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo hppa64-unknown-linux-gnu
9385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
9395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    s390:Linux:*:* | s390x:Linux:*:*)
9405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-ibm-linux
9415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
9425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    sh64*:Linux:*:*)
9435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    	echo ${UNAME_MACHINE}-unknown-linux-gnu
9445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
9455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    sh*:Linux:*:*)
9465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-unknown-linux-gnu
9475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
9485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    sparc:Linux:*:* | sparc64:Linux:*:*)
9495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-unknown-linux-gnu
9505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
9515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    vax:Linux:*:*)
9525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-dec-linux-gnu
9535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
9545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    x86_64:Linux:*:*)
9555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo x86_64-unknown-linux-gnu
9565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
9575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    xtensa:Linux:*:*)
9585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    	echo xtensa-unknown-linux-gnu
9595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
9605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*86:Linux:*:*)
9615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# The BFD linker knows what the default object file format is, so
9625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# first see if it will tell us. cd to the root directory to prevent
9635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# problems with other programs or directories called `ld' in the path.
9645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# Set LC_ALL=C to ensure ld outputs messages in English.
9655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
9665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)			 | sed -ne '/supported targets:/!d
9675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)				    s/[ 	][ 	]*/ /g
9685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)				    s/.*supported targets: *//
9695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)				    s/ .*//
9705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)				    p'`
9715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        case "$ld_supported_targets" in
9725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  elf32-i386)
9735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
9745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		;;
9755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  a.out-i386-linux)
9765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
9775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		exit ;;
9785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  coff-i386)
9795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo "${UNAME_MACHINE}-pc-linux-gnucoff"
9805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		exit ;;
9815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  "")
9825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		# Either a pre-BFD a.out linker (linux-gnuoldld) or
9835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		# one that does not give us useful --help.
9845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
9855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		exit ;;
9865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	esac
9875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# Determine whether the default compiler is a.out or elf
9885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	eval $set_cc_for_build
9895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	sed 's/^	//' << EOF >$dummy.c
9905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#include <features.h>
9915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#ifdef __ELF__
9925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# ifdef __GLIBC__
9935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#  if __GLIBC__ >= 2
9945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	LIBC=gnu
9955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#  else
9965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	LIBC=gnulibc1
9975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#  endif
9985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# else
9995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	LIBC=gnulibc1
10005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# endif
10015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#else
10025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
10035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	LIBC=gnu
10045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#else
10055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	LIBC=gnuaout
10065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#endif
10075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#endif
10085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#ifdef __dietlibc__
10095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	LIBC=dietlibc
10105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	#endif
10115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)EOF
10125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
10135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    /^LIBC/{
10145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		s: ::g
10155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		p
10165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    }'`"
10175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	test x"${LIBC}" != x && {
10185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
10195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		exit
10205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	}
10215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
10225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	;;
10235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*86:DYNIX/ptx:4*:*)
10245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
10255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# earlier versions are messed up and put the nodename in both
10265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# sysname and nodename.
10275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo i386-sequent-sysv4
10285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
10295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*86:UNIX_SV:4.2MP:2.*)
10305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        # Unixware is an offshoot of SVR4, but it has its own version
10315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        # number series starting with 2...
10325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        # I am not positive that other SVR4 systems won't match this,
10335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# I just have to hope.  -- rms.
10345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        # Use sysv4.2uw... so that sysv4* matches it.
10355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
10365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
10375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*86:OS/2:*:*)
10385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# If we were able to find `uname', then EMX Unix compatibility
10395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# is probably installed.
10405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-pc-os2-emx
10415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
10425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*86:XTS-300:*:STOP)
10435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-unknown-stop
10445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
10455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*86:atheos:*:*)
10465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-unknown-atheos
10475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
10485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*86:syllable:*:*)
10495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-pc-syllable
10505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
10515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
10525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo i386-unknown-lynxos${UNAME_RELEASE}
10535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
10545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*86:*DOS:*:*)
10555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-pc-msdosdjgpp
10565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
10575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
10585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
10595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
10605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
10615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	else
10625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
10635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	fi
10645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
10655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*86:*:5:[678]*)
10665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    	# UnixWare 7.x, OpenUNIX and OpenServer 6.
10675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	case `/bin/uname -X | grep "^Machine"` in
10685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    *486*)	     UNAME_MACHINE=i486 ;;
10695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    *Pentium)	     UNAME_MACHINE=i586 ;;
10705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
10715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	esac
10725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
10735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
10745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*86:*:3.2:*)
10755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	if test -f /usr/options/cb.name; then
10765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
10775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
10785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	elif /bin/uname -X 2>/dev/null >/dev/null ; then
10795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
10805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
10815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
10825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)			&& UNAME_MACHINE=i586
10835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
10845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)			&& UNAME_MACHINE=i686
10855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
10865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)			&& UNAME_MACHINE=i686
10875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
10885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	else
10895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo ${UNAME_MACHINE}-pc-sysv32
10905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	fi
10915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
10925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    pc:*:*:*)
10935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# Left here for compatibility:
10945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        # uname -m prints for DJGPP always 'pc', but it prints nothing about
10955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        # the processor, so we play safe by assuming i386.
10965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo i386-pc-msdosdjgpp
10975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        exit ;;
10985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    Intel:Mach:3*:*)
10995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo i386-pc-mach3
11005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
11015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    paragon:*:*:*)
11025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo i860-intel-osf1
11035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
11045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i860:*:4.*:*) # i860-SVR4
11055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
11065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
11075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	else # Add other i860-SVR4 vendors below as they are discovered.
11085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
11095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	fi
11105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
11115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    mini*:CTIX:SYS*5:*)
11125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# "miniframe"
11135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo m68010-convergent-sysv
11145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
11155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    mc68k:UNIX:SYSTEM5:3.51m)
11165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo m68k-convergent-sysv
11175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
11185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    M680?0:D-NIX:5.3:*)
11195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo m68k-diab-dnix
11205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
11215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    M68*:*:R3V[5678]*:*)
11225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
11235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    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)
11245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	OS_REL=''
11255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	test -r /etc/.relid \
11265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
11275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
11285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
11295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
11305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
11315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
11325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
11335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          && { echo i486-ncr-sysv4; exit; } ;;
11345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
11355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo m68k-unknown-lynxos${UNAME_RELEASE}
11365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
11375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    mc68030:UNIX_System_V:4.*:*)
11385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo m68k-atari-sysv4
11395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
11405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    TSUNAMI:LynxOS:2.*:*)
11415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo sparc-unknown-lynxos${UNAME_RELEASE}
11425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
11435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    rs6000:LynxOS:2.*:*)
11445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo rs6000-unknown-lynxos${UNAME_RELEASE}
11455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
11465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
11475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo powerpc-unknown-lynxos${UNAME_RELEASE}
11485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
11495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    SM[BE]S:UNIX_SV:*:*)
11505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo mips-dde-sysv${UNAME_RELEASE}
11515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
11525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    RM*:ReliantUNIX-*:*:*)
11535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo mips-sni-sysv4
11545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
11555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    RM*:SINIX-*:*:*)
11565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo mips-sni-sysv4
11575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
11585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:SINIX-*:*:*)
11595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	if uname -p 2>/dev/null >/dev/null ; then
11605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		UNAME_MACHINE=`(uname -p) 2>/dev/null`
11615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo ${UNAME_MACHINE}-sni-sysv4
11625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	else
11635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		echo ns32k-sni-sysv
11645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	fi
11655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
11665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
11675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                      # says <Richard.M.Bartel@ccMail.Census.GOV>
11685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        echo i586-unisys-sysv4
11695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        exit ;;
11705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:UNIX_System_V:4*:FTX*)
11715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# From Gerald Hewes <hewes@openmarket.com>.
11725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# How about differentiating between stratus architectures? -djm
11735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo hppa1.1-stratus-sysv4
11745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
11755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:*:*:FTX*)
11765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# From seanf@swdc.stratus.com.
11775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo i860-stratus-sysv4
11785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
11795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*86:VOS:*:*)
11805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# From Paul.Green@stratus.com.
11815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-stratus-vos
11825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
11835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:VOS:*:*)
11845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# From Paul.Green@stratus.com.
11855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo hppa1.1-stratus-vos
11865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
11875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    mc68*:A/UX:*:*)
11885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo m68k-apple-aux${UNAME_RELEASE}
11895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
11905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    news*:NEWS-OS:6*:*)
11915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo mips-sony-newsos6
11925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
11935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
11945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	if [ -d /usr/nec ]; then
11955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	        echo mips-nec-sysv${UNAME_RELEASE}
11965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	else
11975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	        echo mips-unknown-sysv${UNAME_RELEASE}
11985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	fi
11995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        exit ;;
12005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
12015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo powerpc-be-beos
12025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
12045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo powerpc-apple-beos
12055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
12075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo i586-pc-beos
12085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    SX-4:SUPER-UX:*:*)
12105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo sx4-nec-superux${UNAME_RELEASE}
12115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    SX-5:SUPER-UX:*:*)
12135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo sx5-nec-superux${UNAME_RELEASE}
12145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    SX-6:SUPER-UX:*:*)
12165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo sx6-nec-superux${UNAME_RELEASE}
12175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    SX-7:SUPER-UX:*:*)
12195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo sx7-nec-superux${UNAME_RELEASE}
12205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    SX-8:SUPER-UX:*:*)
12225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo sx8-nec-superux${UNAME_RELEASE}
12235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    SX-8R:SUPER-UX:*:*)
12255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo sx8r-nec-superux${UNAME_RELEASE}
12265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    Power*:Rhapsody:*:*)
12285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo powerpc-apple-rhapsody${UNAME_RELEASE}
12295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:Rhapsody:*:*)
12315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
12325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:Darwin:*:*)
12345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
12355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	case $UNAME_PROCESSOR in
12365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    unknown) UNAME_PROCESSOR=powerpc ;;
12375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	esac
12385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
12395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:procnto*:*:* | *:QNX:[0123456789]*:*)
12415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	UNAME_PROCESSOR=`uname -p`
12425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	if test "$UNAME_PROCESSOR" = "x86"; then
12435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		UNAME_PROCESSOR=i386
12445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		UNAME_MACHINE=pc
12455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	fi
12465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
12475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:QNX:*:4*)
12495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo i386-pc-qnx
12505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    NSE-?:NONSTOP_KERNEL:*:*)
12525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo nse-tandem-nsk${UNAME_RELEASE}
12535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    NSR-?:NONSTOP_KERNEL:*:*)
12555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo nsr-tandem-nsk${UNAME_RELEASE}
12565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:NonStop-UX:*:*)
12585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo mips-compaq-nonstopux
12595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    BS2000:POSIX*:*:*)
12615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo bs2000-siemens-sysv
12625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    DS/*:UNIX_System_V:*:*)
12645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
12655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:Plan9:*:*)
12675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# "uname -m" is not consistent, so use $cputype instead. 386
12685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# is converted to i386 for consistency with other x86
12695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	# operating systems.
12705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	if test "$cputype" = "386"; then
12715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    UNAME_MACHINE=i386
12725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	else
12735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    UNAME_MACHINE="$cputype"
12745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	fi
12755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-unknown-plan9
12765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:TOPS-10:*:*)
12785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo pdp10-unknown-tops10
12795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:TENEX:*:*)
12815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo pdp10-unknown-tenex
12825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
12845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo pdp10-dec-tops20
12855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
12875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo pdp10-xkl-tops20
12885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:TOPS-20:*:*)
12905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo pdp10-unknown-tops20
12915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:ITS:*:*)
12935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo pdp10-unknown-its
12945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    SEI:*:*:SEIUX)
12965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        echo mips-sei-seiux${UNAME_RELEASE}
12975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
12985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:DragonFly:*:*)
12995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
13005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
13015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:*VMS:*:*)
13025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    	UNAME_MACHINE=`(uname -p) 2>/dev/null`
13035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	case "${UNAME_MACHINE}" in
13045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    A*) echo alpha-dec-vms ; exit ;;
13055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    I*) echo ia64-dec-vms ; exit ;;
13065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    V*) echo vax-dec-vms ; exit ;;
13075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	esac ;;
13085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    *:XENIX:*:SysV)
13095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo i386-pc-xenix
13105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
13115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*86:skyos:*:*)
13125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
13135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
13145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    i*86:rdos:*:*)
13155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo ${UNAME_MACHINE}-pc-rdos
13165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
13175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)esac
13185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
13195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#echo '(No uname command or uname output not recognized.)' 1>&2
13205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
13215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
13225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)eval $set_cc_for_build
13235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)cat >$dummy.c <<EOF
13245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifdef _SEQUENT_
13255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# include <sys/types.h>
13265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# include <sys/utsname.h>
13275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
13285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)main ()
13295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles){
13305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined (sony)
13315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined (MIPSEB)
13325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
13335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)     I don't know....  */
13345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  printf ("mips-sony-bsd\n"); exit (0);
13355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#else
13365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <sys/param.h>
13375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  printf ("m68k-sony-newsos%s\n",
13385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifdef NEWSOS4
13395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          "4"
13405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#else
13415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  ""
13425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
13435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)         ); exit (0);
13445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
13455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
13465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
13475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined (__arm) && defined (__acorn) && defined (__unix)
13485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  printf ("arm-acorn-riscix\n"); exit (0);
13495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
13505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
13515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined (hp300) && !defined (hpux)
13525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  printf ("m68k-hp-bsd\n"); exit (0);
13535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
13545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
13555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined (NeXT)
13565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if !defined (__ARCHITECTURE__)
13575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define __ARCHITECTURE__ "m68k"
13585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
13595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  int version;
13605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
13615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  if (version < 4)
13625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
13635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  else
13645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
13655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  exit (0);
13665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
13675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
13685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined (MULTIMAX) || defined (n16)
13695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined (UMAXV)
13705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  printf ("ns32k-encore-sysv\n"); exit (0);
13715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#else
13725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined (CMU)
13735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  printf ("ns32k-encore-mach\n"); exit (0);
13745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#else
13755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  printf ("ns32k-encore-bsd\n"); exit (0);
13765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
13775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
13785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
13795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
13805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined (__386BSD__)
13815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  printf ("i386-pc-bsd\n"); exit (0);
13825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
13835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
13845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined (sequent)
13855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined (i386)
13865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  printf ("i386-sequent-dynix\n"); exit (0);
13875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
13885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined (ns32000)
13895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  printf ("ns32k-sequent-dynix\n"); exit (0);
13905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
13915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
13925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
13935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined (_SEQUENT_)
13945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    struct utsname un;
13955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
13965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    uname(&un);
13975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
13985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    if (strncmp(un.version, "V2", 2) == 0) {
13995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	printf ("i386-sequent-ptx2\n"); exit (0);
14005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    }
14015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
14025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	printf ("i386-sequent-ptx1\n"); exit (0);
14035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    }
14045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    printf ("i386-sequent-ptx\n"); exit (0);
14055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
14075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined (vax)
14095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# if !defined (ultrix)
14105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#  include <sys/param.h>
14115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#  if defined (BSD)
14125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#   if BSD == 43
14135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      printf ("vax-dec-bsd4.3\n"); exit (0);
14145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#   else
14155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#    if BSD == 199006
14165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      printf ("vax-dec-bsd4.3reno\n"); exit (0);
14175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#    else
14185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      printf ("vax-dec-bsd\n"); exit (0);
14195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#    endif
14205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#   endif
14215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#  else
14225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    printf ("vax-dec-bsd\n"); exit (0);
14235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#  endif
14245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# else
14255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    printf ("vax-dec-ultrix\n"); exit (0);
14265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# endif
14275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
14285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined (alliant) && defined (i860)
14305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  printf ("i860-alliant-bsd\n"); exit (0);
14315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
14325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  exit (1);
14345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
14355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)EOF
14365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
14385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	{ echo "$SYSTEM_NAME"; exit; }
14395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Apollos put the system type in the environment.
14415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
14435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Convex versions that predate uname can use getsysinfo(1)
14455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)if [ -x /usr/convex/getsysinfo ]
14475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)then
14485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    case `getsysinfo -f cpu_type` in
14495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    c1*)
14505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo c1-convex-bsd
14515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
14525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    c2*)
14535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	if getsysinfo -f scalar_acc
14545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	then echo c32-convex-bsd
14555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	else echo c2-convex-bsd
14565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	fi
14575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
14585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    c34*)
14595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo c34-convex-bsd
14605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
14615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    c38*)
14625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo c38-convex-bsd
14635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
14645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    c4*)
14655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	echo c4-convex-bsd
14665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	exit ;;
14675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    esac
14685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fi
14695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)cat >&2 <<EOF
14715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)$0: unable to guess system type
14725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)This script, last modified $timestamp, has failed to recognize
14745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)the operating system you are using. It is advised that you
14755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)download the most up to date version of the config scripts from
14765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
14785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)and
14795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
14805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)If the version you run ($0) is already up to date, please
14825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)send the following data and any information you think might be
14835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)pertinent to <config-patches@gnu.org> in order to provide the needed
14845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)information to handle your system.
14855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)config.guess timestamp = $timestamp
14875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)uname -m = `(uname -m) 2>/dev/null || echo unknown`
14895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)uname -r = `(uname -r) 2>/dev/null || echo unknown`
14905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)uname -s = `(uname -s) 2>/dev/null || echo unknown`
14915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)uname -v = `(uname -v) 2>/dev/null || echo unknown`
14925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
14945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
14955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)hostinfo               = `(hostinfo) 2>/dev/null`
14975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/bin/universe          = `(/bin/universe) 2>/dev/null`
14985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
14995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/bin/arch              = `(/bin/arch) 2>/dev/null`
15005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
15015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
15025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
15035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)UNAME_MACHINE = ${UNAME_MACHINE}
15045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)UNAME_RELEASE = ${UNAME_RELEASE}
15055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)UNAME_SYSTEM  = ${UNAME_SYSTEM}
15065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)UNAME_VERSION = ${UNAME_VERSION}
15075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)EOF
15085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
15095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)exit 1
15105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
15115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Local variables:
15125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# eval: (add-hook 'write-file-hooks 'time-stamp)
15135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# time-stamp-start: "timestamp='"
15145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# time-stamp-format: "%:y-%02m-%02d"
15155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# time-stamp-end: "'"
15165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# End:
1517