Jerry James e09f18d
--- config.guess.orig	2005-03-05 09:20:39.000000000 -0700
bd333ef
+++ config.guess	2016-09-15 15:57:52.672455013 -0600
Jerry James e09f18d
@@ -1,13 +1,12 @@
Jerry James 6443e6a
 #! /bin/sh
Jerry James 6443e6a
 # Attempt to guess a canonical system name.
Jerry James 6443e6a
-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
Jerry James 6443e6a
-#   Free Software Foundation, Inc.
bd333ef
+#   Copyright 1992-2016 Free Software Foundation, Inc.
Jerry James 6443e6a
 
Jerry James 6443e6a
-timestamp='2001-09-04'
bd333ef
+timestamp='2016-09-11'
Jerry James 6443e6a
 
Jerry James 6443e6a
 # This file is free software; you can redistribute it and/or modify it
Jerry James 6443e6a
 # under the terms of the GNU General Public License as published by
Jerry James e09f18d
-# the Free Software Foundation; either version 2 of the License, or
Jerry James e09f18d
+# the Free Software Foundation; either version 3 of the License, or
Jerry James e09f18d
 # (at your option) any later version.
Jerry James e09f18d
 #
Jerry James e09f18d
 # This program is distributed in the hope that it will be useful, but
bd333ef
@@ -16,23 +15,22 @@ timestamp='2001-09-04'
Jerry James 6443e6a
 # General Public License for more details.
Jerry James 6443e6a
 #
Jerry James 6443e6a
 # You should have received a copy of the GNU General Public License
Jerry James 6443e6a
-# along with this program; if not, write to the Free Software
Jerry James 6443e6a
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
Jerry James 6443e6a
+# along with this program; if not, see <http://www.gnu.org/licenses/>.
Jerry James 6443e6a
 #
Jerry James 6443e6a
 # As a special exception to the GNU General Public License, if you
Jerry James 6443e6a
 # distribute this file as part of a program that contains a
Jerry James 6443e6a
 # configuration script generated by Autoconf, you may include it under
Jerry James e09f18d
-# the same distribution terms that you use for the rest of that program.
Jerry James e09f18d
-
Jerry James 6443e6a
-# Written by Per Bothner <bothner@cygnus.com>.
Jerry James 6443e6a
-# Please send patches to <config-patches@gnu.org>.
Jerry James e09f18d
+# the same distribution terms that you use for the rest of that
Jerry James e09f18d
+# program.  This Exception is an additional permission under section 7
Jerry James e09f18d
+# of the GNU General Public License, version 3 ("GPLv3").
Jerry James 6443e6a
 #
Jerry James e09f18d
-# This script attempts to guess a canonical system name similar to
Jerry James e09f18d
-# config.sub.  If it succeeds, it prints the system name on stdout, and
Jerry James e09f18d
-# exits with 0.  Otherwise, it exits with 1.
bd333ef
+# Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
Jerry James 6443e6a
 #
Jerry James 6443e6a
-# The plan is that this can be called by configure scripts if you
Jerry James 6443e6a
-# don't specify an explicit build system type.
Jerry James 6443e6a
+# You can get the latest version of this script from:
bd333ef
+# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
Jerry James e09f18d
+#
bd333ef
+# Please send patches to <config-patches@gnu.org>.
Jerry James e09f18d
+
Jerry James 6443e6a
 
Jerry James 6443e6a
 me=`echo "$0" | sed -e 's,.*/,,'`
Jerry James 6443e6a
 
bd333ef
@@ -52,8 +50,7 @@ version="\
Jerry James 6443e6a
 GNU config.guess ($timestamp)
Jerry James 6443e6a
 
Jerry James 6443e6a
 Originally written by Per Bothner.
Jerry James 6443e6a
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
Jerry James e09f18d
-Free Software Foundation, Inc.
bd333ef
+Copyright 1992-2016 Free Software Foundation, Inc.
Jerry James 6443e6a
 
Jerry James 6443e6a
 This is free software; see the source for copying conditions.  There is NO
Jerry James e09f18d
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
bd333ef
@@ -65,11 +62,11 @@ Try \`$me --help' for more information."
Jerry James 6443e6a
 while test $# -gt 0 ; do
Jerry James 6443e6a
   case $1 in
Jerry James 6443e6a
     --time-stamp | --time* | -t )
Jerry James 6443e6a
-       echo "$timestamp" ; exit 0 ;;
Jerry James 6443e6a
+       echo "$timestamp" ; exit ;;
Jerry James 6443e6a
     --version | -v )
Jerry James 6443e6a
-       echo "$version" ; exit 0 ;;
Jerry James 6443e6a
+       echo "$version" ; exit ;;
Jerry James 6443e6a
     --help | --h* | -h )
Jerry James 6443e6a
-       echo "$usage"; exit 0 ;;
Jerry James 6443e6a
+       echo "$usage"; exit ;;
Jerry James 6443e6a
     -- )     # Stop option processing
Jerry James 6443e6a
        shift; break ;;
Jerry James 6443e6a
     - )	# Use stdin as input.
bd333ef
@@ -87,30 +84,42 @@ if test $# != 0; then
Jerry James 6443e6a
   exit 1
Jerry James 6443e6a
 fi
Jerry James 6443e6a
 
Jerry James 6443e6a
+trap 'exit 1' 1 2 15
Jerry James 6443e6a
 
Jerry James 6443e6a
-dummy=dummy-$$
Jerry James 6443e6a
-trap 'rm -f $dummy.c $dummy.o $dummy.rel $dummy; exit 1' 1 2 15
Jerry James 6443e6a
+# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
Jerry James 6443e6a
+# compiler to aid in system detection is discouraged as it requires
Jerry James 6443e6a
+# temporary files to be created and, as you can see below, it is a
Jerry James 6443e6a
+# headache to deal with in a portable fashion.
Jerry James 6443e6a
 
Jerry James 6443e6a
-# CC_FOR_BUILD -- compiler used by this script.
Jerry James 6443e6a
 # Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
Jerry James 6443e6a
 # use `HOST_CC' if defined, but it is deprecated.
Jerry James 6443e6a
 
Jerry James 6443e6a
-set_cc_for_build='case $CC_FOR_BUILD,$HOST_CC,$CC in
Jerry James 6443e6a
- ,,)    echo "int dummy(){}" > $dummy.c ;
Jerry James 6443e6a
-	for c in cc gcc c89 ; do
Jerry James 6443e6a
-	  ($c $dummy.c -c -o $dummy.o) >/dev/null 2>&1 ;
Jerry James 6443e6a
-	  if test $? = 0 ; then
Jerry James 6443e6a
+# Portable tmp directory creation inspired by the Autoconf team.
Jerry James 6443e6a
+
Jerry James 6443e6a
+set_cc_for_build='
Jerry James 6443e6a
+trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
Jerry James 6443e6a
+trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
Jerry James 6443e6a
+: ${TMPDIR=/tmp} ;
Jerry James 6443e6a
+ { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
Jerry James 6443e6a
+ { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
Jerry James 6443e6a
+ { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
Jerry James 6443e6a
+ { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
Jerry James 6443e6a
+dummy=$tmp/dummy ;
Jerry James 6443e6a
+tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
Jerry James 6443e6a
+case $CC_FOR_BUILD,$HOST_CC,$CC in
Jerry James 6443e6a
+ ,,)    echo "int x;" > $dummy.c ;
Jerry James 6443e6a
+	for c in cc gcc c89 c99 ; do
Jerry James 6443e6a
+	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
Jerry James 6443e6a
 	     CC_FOR_BUILD="$c"; break ;
Jerry James 6443e6a
 	  fi ;
Jerry James 6443e6a
 	done ;
Jerry James 6443e6a
-	rm -f $dummy.c $dummy.o $dummy.rel ;
Jerry James 6443e6a
 	if test x"$CC_FOR_BUILD" = x ; then
Jerry James 6443e6a
 	  CC_FOR_BUILD=no_compiler_found ;
Jerry James 6443e6a
 	fi
Jerry James 6443e6a
 	;;
Jerry James 6443e6a
  ,,*)   CC_FOR_BUILD=$CC ;;
Jerry James 6443e6a
  ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
Jerry James 6443e6a
-esac'
Jerry James 6443e6a
+esac ; set_cc_for_build= ;'
Jerry James 6443e6a
 
Jerry James 6443e6a
 # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
Jerry James 6443e6a
 # (ghazi@noc.rutgers.edu 1994-08-24)
bd333ef
@@ -123,36 +132,69 @@ UNAME_RELEASE=`(uname -r) 2>/dev/null` |
Jerry James e09f18d
 UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
Jerry James e09f18d
 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
Jerry James e09f18d
 
Jerry James e09f18d
+case "${UNAME_SYSTEM}" in
Jerry James e09f18d
+Linux|GNU|GNU/*)
Jerry James e09f18d
+	# If the system lacks a compiler, then just pick glibc.
Jerry James e09f18d
+	# We could probably try harder.
Jerry James e09f18d
+	LIBC=gnu
Jerry James e09f18d
+
Jerry James e09f18d
+	eval $set_cc_for_build
Jerry James e09f18d
+	cat <<-EOF > $dummy.c
Jerry James e09f18d
+	#include <features.h>
Jerry James e09f18d
+	#if defined(__UCLIBC__)
Jerry James e09f18d
+	LIBC=uclibc
Jerry James e09f18d
+	#elif defined(__dietlibc__)
Jerry James e09f18d
+	LIBC=dietlibc
Jerry James e09f18d
+	#else
Jerry James e09f18d
+	LIBC=gnu
Jerry James e09f18d
+	#endif
Jerry James e09f18d
+	EOF
bd333ef
+	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
Jerry James e09f18d
+	;;
Jerry James e09f18d
+esac
Jerry James e09f18d
+
Jerry James e09f18d
 # Note: order is significant - the case branches are not exclusive.
Jerry James 6443e6a
 
Jerry James 6443e6a
 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
Jerry James 6443e6a
     *:NetBSD:*:*)
Jerry James 6443e6a
-	# Netbsd (nbsd) targets should (where applicable) match one or
Jerry James 6443e6a
-	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
Jerry James 6443e6a
+	# NetBSD (nbsd) targets should (where applicable) match one or
Jerry James 6443e6a
+	# more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
Jerry James 6443e6a
 	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
Jerry James 6443e6a
 	# switched to ELF, *-*-netbsd* would select the old
Jerry James 6443e6a
 	# object file format.  This provides both forward
Jerry James 6443e6a
 	# compatibility and a consistent mechanism for selecting the
Jerry James 6443e6a
 	# object file format.
Jerry James 6443e6a
-	# Determine the machine/vendor (is the vendor relevant).
Jerry James 6443e6a
-	case "${UNAME_MACHINE}" in
Jerry James 6443e6a
-	    amiga) machine=m68k-unknown ;;
Jerry James 6443e6a
-	    arm32) machine=arm-unknown ;;
Jerry James 6443e6a
-	    atari*) machine=m68k-atari ;;
Jerry James 6443e6a
-	    sun3*) machine=m68k-sun ;;
Jerry James 6443e6a
-	    mac68k) machine=m68k-apple ;;
Jerry James 6443e6a
-	    macppc) machine=powerpc-apple ;;
Jerry James 6443e6a
-	    hp3[0-9][05]) machine=m68k-hp ;;
Jerry James 6443e6a
-	    ibmrt|romp-ibm) machine=romp-ibm ;;
Jerry James 6443e6a
-	    *) machine=${UNAME_MACHINE}-unknown ;;
Jerry James 6443e6a
+	#
Jerry James 6443e6a
+	# Note: NetBSD doesn't particularly care about the vendor
Jerry James 6443e6a
+	# portion of the name.  We always set it to "unknown".
Jerry James 6443e6a
+	sysctl="sysctl -n hw.machine_arch"
bd333ef
+	UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
bd333ef
+	    /sbin/$sysctl 2>/dev/null || \
bd333ef
+	    /usr/sbin/$sysctl 2>/dev/null || \
bd333ef
+	    echo unknown)`
Jerry James 6443e6a
+	case "${UNAME_MACHINE_ARCH}" in
Jerry James 6443e6a
+	    armeb) machine=armeb-unknown ;;
Jerry James 6443e6a
+	    arm*) machine=arm-unknown ;;
Jerry James 6443e6a
+	    sh3el) machine=shl-unknown ;;
Jerry James 6443e6a
+	    sh3eb) machine=sh-unknown ;;
Jerry James 6443e6a
+	    sh5el) machine=sh5le-unknown ;;
bd333ef
+	    earmv*)
bd333ef
+		arch=`echo ${UNAME_MACHINE_ARCH} | sed -e 's,^e\(armv[0-9]\).*$,\1,'`
bd333ef
+		endian=`echo ${UNAME_MACHINE_ARCH} | sed -ne 's,^.*\(eb\)$,\1,p'`
bd333ef
+		machine=${arch}${endian}-unknown
bd333ef
+		;;
Jerry James 6443e6a
+	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
Jerry James 6443e6a
 	esac
Jerry James 6443e6a
 	# The Operating System including object format, if it has switched
bd333ef
-	# to ELF recently, or will in the future.
Jerry James 6443e6a
-	case "${UNAME_MACHINE}" in
Jerry James 6443e6a
-	    i386|sparc|amiga|arm*|hp300|mvme68k|vax|atari|luna68k|mac68k|news68k|next68k|pc532|sun3*|x68k)
bd333ef
+	# to ELF recently (or will in the future) and ABI.
Jerry James 6443e6a
+	case "${UNAME_MACHINE_ARCH}" in
bd333ef
+	    earm*)
bd333ef
+		os=netbsdelf
bd333ef
+		;;
Jerry James 6443e6a
+	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
Jerry James 6443e6a
 		eval $set_cc_for_build
Jerry James 6443e6a
 		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
Jerry James 6443e6a
-			| grep __ELF__ >/dev/null
Jerry James 6443e6a
+			| grep -q __ELF__
Jerry James 6443e6a
 		then
Jerry James 6443e6a
 		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
Jerry James 6443e6a
 		    # Return netbsd for either.  FIX?
bd333ef
@@ -162,124 +204,153 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
Jerry James 6443e6a
 		fi
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	    *)
Jerry James 6443e6a
-	        os=netbsd
Jerry James 6443e6a
+		os=netbsd
bd333ef
+		;;
bd333ef
+	esac
bd333ef
+	# Determine ABI tags.
bd333ef
+	case "${UNAME_MACHINE_ARCH}" in
bd333ef
+	    earm*)
bd333ef
+		expr='s/^earmv[0-9]/-eabi/;s/eb$//'
bd333ef
+		abi=`echo ${UNAME_MACHINE_ARCH} | sed -e "$expr"`
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	esac
Jerry James 6443e6a
 	# The OS release
Jerry James 6443e6a
-	release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
Jerry James 6443e6a
+	# Debian GNU/NetBSD machines have a different userland, and
Jerry James 6443e6a
+	# thus, need a distinct triplet. However, they do not need
Jerry James 6443e6a
+	# kernel version information, so it can be replaced with a
Jerry James 6443e6a
+	# suitable tag, in the style of linux-gnu.
Jerry James 6443e6a
+	case "${UNAME_VERSION}" in
Jerry James 6443e6a
+	    Debian*)
Jerry James 6443e6a
+		release='-gnu'
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	    *)
bd333ef
+		release=`echo ${UNAME_RELEASE} | sed -e 's/[-_].*//' | cut -d. -f1,2`
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	esac
Jerry James 6443e6a
 	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
Jerry James 6443e6a
 	# contains redundant information, the shorter form:
Jerry James 6443e6a
 	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
bd333ef
-	echo "${machine}-${os}${release}"
Jerry James 6443e6a
-	exit 0 ;;
bd333ef
+	echo "${machine}-${os}${release}${abi}"
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    *:Bitrig:*:*)
Jerry James 6443e6a
+	UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
Jerry James 6443e6a
+	echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    *:OpenBSD:*:*)
Jerry James 6443e6a
+	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
Jerry James 6443e6a
+	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
bd333ef
+    *:LibertyBSD:*:*)
bd333ef
+	UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
bd333ef
+	echo ${UNAME_MACHINE_ARCH}-unknown-libertybsd${UNAME_RELEASE}
bd333ef
+	exit ;;
Jerry James 6443e6a
+    *:ekkoBSD:*:*)
Jerry James 6443e6a
+	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    *:SolidBSD:*:*)
Jerry James 6443e6a
+	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    macppc:MirBSD:*:*)
Jerry James 6443e6a
+	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    *:MirBSD:*:*)
Jerry James 6443e6a
+	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
bd333ef
+    *:Sortix:*:*)
bd333ef
+	echo ${UNAME_MACHINE}-unknown-sortix
bd333ef
+	exit ;;
Jerry James 6443e6a
     alpha:OSF1:*:*)
Jerry James 6443e6a
-	if test $UNAME_RELEASE = "V4.0"; then
Jerry James 6443e6a
+	case $UNAME_RELEASE in
Jerry James 6443e6a
+	*4.0)
Jerry James 6443e6a
 		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
Jerry James 6443e6a
-	fi
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	*5.*)
Jerry James 6443e6a
+		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	esac
Jerry James 6443e6a
+	# According to Compaq, /usr/sbin/psrinfo has been available on
Jerry James 6443e6a
+	# OSF/1 and Tru64 systems produced since 1995.  I hope that
Jerry James 6443e6a
+	# covers most systems running today.  This code pipes the CPU
Jerry James 6443e6a
+	# types through head -n 1, so we only detect the type of CPU 0.
Jerry James 6443e6a
+	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
Jerry James 6443e6a
+	case "$ALPHA_CPU_TYPE" in
Jerry James 6443e6a
+	    "EV4 (21064)")
bd333ef
+		UNAME_MACHINE=alpha ;;
Jerry James 6443e6a
+	    "EV4.5 (21064)")
bd333ef
+		UNAME_MACHINE=alpha ;;
Jerry James 6443e6a
+	    "LCA4 (21066/21068)")
bd333ef
+		UNAME_MACHINE=alpha ;;
Jerry James 6443e6a
+	    "EV5 (21164)")
bd333ef
+		UNAME_MACHINE=alphaev5 ;;
Jerry James 6443e6a
+	    "EV5.6 (21164A)")
bd333ef
+		UNAME_MACHINE=alphaev56 ;;
Jerry James 6443e6a
+	    "EV5.6 (21164PC)")
bd333ef
+		UNAME_MACHINE=alphapca56 ;;
Jerry James 6443e6a
+	    "EV5.7 (21164PC)")
bd333ef
+		UNAME_MACHINE=alphapca57 ;;
Jerry James 6443e6a
+	    "EV6 (21264)")
bd333ef
+		UNAME_MACHINE=alphaev6 ;;
Jerry James 6443e6a
+	    "EV6.7 (21264A)")
bd333ef
+		UNAME_MACHINE=alphaev67 ;;
Jerry James 6443e6a
+	    "EV6.8CB (21264C)")
bd333ef
+		UNAME_MACHINE=alphaev68 ;;
Jerry James 6443e6a
+	    "EV6.8AL (21264B)")
bd333ef
+		UNAME_MACHINE=alphaev68 ;;
Jerry James 6443e6a
+	    "EV6.8CX (21264D)")
bd333ef
+		UNAME_MACHINE=alphaev68 ;;
Jerry James 6443e6a
+	    "EV6.9A (21264/EV69A)")
bd333ef
+		UNAME_MACHINE=alphaev69 ;;
Jerry James 6443e6a
+	    "EV7 (21364)")
bd333ef
+		UNAME_MACHINE=alphaev7 ;;
Jerry James 6443e6a
+	    "EV7.9 (21364A)")
bd333ef
+		UNAME_MACHINE=alphaev79 ;;
Jerry James 6443e6a
+	esac
Jerry James 6443e6a
+	# A Pn.n version is a patched version.
Jerry James 6443e6a
 	# A Vn.n version is a released version.
Jerry James 6443e6a
 	# A Tn.n version is a released field test version.
Jerry James 6443e6a
 	# A Xn.n version is an unreleased experimental baselevel.
Jerry James 6443e6a
 	# 1.2 uses "1.2" for uname -r.
Jerry James 6443e6a
-	cat <<EOF >$dummy.s
Jerry James 6443e6a
-	.data
Jerry James 6443e6a
-\$Lformat:
Jerry James 6443e6a
-	.byte 37,100,45,37,120,10,0	# "%d-%x\n"
Jerry James 6443e6a
-
Jerry James 6443e6a
-	.text
Jerry James 6443e6a
-	.globl main
Jerry James 6443e6a
-	.align 4
Jerry James 6443e6a
-	.ent main
Jerry James 6443e6a
-main:
Jerry James 6443e6a
-	.frame \$30,16,\$26,0
Jerry James 6443e6a
-	ldgp \$29,0(\$27)
Jerry James 6443e6a
-	.prologue 1
Jerry James 6443e6a
-	.long 0x47e03d80 # implver \$0
Jerry James 6443e6a
-	lda \$2,-1
Jerry James 6443e6a
-	.long 0x47e20c21 # amask \$2,\$1
Jerry James 6443e6a
-	lda \$16,\$Lformat
Jerry James 6443e6a
-	mov \$0,\$17
Jerry James 6443e6a
-	not \$1,\$18
Jerry James 6443e6a
-	jsr \$26,printf
Jerry James 6443e6a
-	ldgp \$29,0(\$26)
Jerry James 6443e6a
-	mov 0,\$16
Jerry James 6443e6a
-	jsr \$26,exit
Jerry James 6443e6a
-	.end main
Jerry James 6443e6a
-EOF
Jerry James 6443e6a
-	eval $set_cc_for_build
Jerry James 6443e6a
-	$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
Jerry James 6443e6a
-	if test "$?" = 0 ; then
Jerry James 6443e6a
-		case `./$dummy` in
Jerry James 6443e6a
-			0-0)
Jerry James 6443e6a
-				UNAME_MACHINE="alpha"
Jerry James 6443e6a
-				;;
Jerry James 6443e6a
-			1-0)
Jerry James 6443e6a
-				UNAME_MACHINE="alphaev5"
Jerry James 6443e6a
-				;;
Jerry James 6443e6a
-			1-1)
Jerry James 6443e6a
-				UNAME_MACHINE="alphaev56"
Jerry James 6443e6a
-				;;
Jerry James 6443e6a
-			1-101)
Jerry James 6443e6a
-				UNAME_MACHINE="alphapca56"
Jerry James 6443e6a
-				;;
Jerry James 6443e6a
-			2-303)
Jerry James 6443e6a
-				UNAME_MACHINE="alphaev6"
Jerry James 6443e6a
-				;;
Jerry James 6443e6a
-			2-307)
Jerry James 6443e6a
-				UNAME_MACHINE="alphaev67"
Jerry James 6443e6a
-				;;
Jerry James 6443e6a
-			2-1307)
Jerry James 6443e6a
-				UNAME_MACHINE="alphaev68"
Jerry James 6443e6a
-				;;
Jerry James 6443e6a
-		esac
Jerry James 6443e6a
-	fi
Jerry James 6443e6a
-	rm -f $dummy.s $dummy
Jerry James 6443e6a
-	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
Jerry James 6443e6a
-	exit 0 ;;
bd333ef
+	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
Jerry James 6443e6a
+	# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
Jerry James 6443e6a
+	exitcode=$?
Jerry James 6443e6a
+	trap '' 0
Jerry James 6443e6a
+	exit $exitcode ;;
Jerry James 6443e6a
     Alpha\ *:Windows_NT*:*)
Jerry James 6443e6a
 	# How do we know it's Interix rather than the generic POSIX subsystem?
Jerry James 6443e6a
 	# Should we change UNAME_MACHINE based on the output of uname instead
Jerry James 6443e6a
 	# of the specific Alpha model?
Jerry James 6443e6a
 	echo alpha-pc-interix
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     21064:Windows_NT:50:3)
Jerry James 6443e6a
 	echo alpha-dec-winnt3.5
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     Amiga*:UNIX_System_V:4.0:*)
Jerry James 6443e6a
 	echo m68k-unknown-sysv4
Jerry James 6443e6a
-	exit 0;;
Jerry James 6443e6a
-    amiga:OpenBSD:*:*)
Jerry James 6443e6a
-	echo m68k-unknown-openbsd${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:[Aa]miga[Oo][Ss]:*:*)
Jerry James 6443e6a
 	echo ${UNAME_MACHINE}-unknown-amigaos
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    arc64:OpenBSD:*:*)
Jerry James 6443e6a
-	echo mips64el-unknown-openbsd${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    arc:OpenBSD:*:*)
Jerry James 6443e6a
-	echo mipsel-unknown-openbsd${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    hkmips:OpenBSD:*:*)
Jerry James 6443e6a
-	echo mips-unknown-openbsd${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    pmax:OpenBSD:*:*)
Jerry James 6443e6a
-	echo mipsel-unknown-openbsd${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    sgi:OpenBSD:*:*)
Jerry James 6443e6a
-	echo mips-unknown-openbsd${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    wgrisc:OpenBSD:*:*)
Jerry James 6443e6a
-	echo mipsel-unknown-openbsd${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    *:[Mm]orph[Oo][Ss]:*:*)
Jerry James 6443e6a
+	echo ${UNAME_MACHINE}-unknown-morphos
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:OS/390:*:*)
Jerry James 6443e6a
 	echo i370-ibm-openedition
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    *:z/VM:*:*)
Jerry James 6443e6a
+	echo s390-ibm-zvmoe
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    *:OS400:*:*)
Jerry James 6443e6a
+	echo powerpc-ibm-os400
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
Jerry James 6443e6a
 	echo arm-acorn-riscix${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    arm*:riscos:*:*|arm*:RISCOS:*:*)
Jerry James 6443e6a
+	echo arm-unknown-riscos
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
Jerry James 6443e6a
 	echo hppa1.1-hitachi-hiuxmpp
Jerry James 6443e6a
-	exit 0;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
Jerry James 6443e6a
 	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
Jerry James 6443e6a
 	if test "`(/bin/universe) 2>/dev/null`" = att ; then
bd333ef
@@ -287,25 +358,51 @@ EOF
Jerry James 6443e6a
 	else
Jerry James 6443e6a
 		echo pyramid-pyramid-bsd
Jerry James 6443e6a
 	fi
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     NILE*:*:*:dcosx)
Jerry James 6443e6a
 	echo pyramid-pyramid-svr4
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    DRS?6000:unix:4.0:6*)
Jerry James 6443e6a
+	echo sparc-icl-nx6
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
Jerry James 6443e6a
+	case `/usr/bin/uname -p` in
Jerry James 6443e6a
+	    sparc) echo sparc-icl-nx7; exit ;;
Jerry James 6443e6a
+	esac ;;
Jerry James 6443e6a
+    s390x:SunOS:*:*)
Jerry James 6443e6a
+	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     sun4H:SunOS:5.*:*)
Jerry James 6443e6a
 	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
Jerry James 6443e6a
 	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    i86pc:SunOS:5.*:*)
Jerry James 6443e6a
-	echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
Jerry James 6443e6a
+	echo i386-pc-auroraux${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
Jerry James 6443e6a
+	eval $set_cc_for_build
bd333ef
+	SUN_ARCH=i386
Jerry James 6443e6a
+	# If there is a compiler, see if it is configured for 64-bit objects.
Jerry James 6443e6a
+	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
Jerry James 6443e6a
+	# This test works for both compilers.
bd333ef
+	if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
Jerry James 6443e6a
+	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
bd333ef
+		(CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
Jerry James 6443e6a
+		grep IS_64BIT_ARCH >/dev/null
Jerry James 6443e6a
+	    then
bd333ef
+		SUN_ARCH=x86_64
Jerry James 6443e6a
+	    fi
Jerry James 6443e6a
+	fi
Jerry James 6443e6a
+	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     sun4*:SunOS:6*:*)
Jerry James 6443e6a
 	# According to config.sub, this is the proper way to canonicalize
Jerry James 6443e6a
 	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
Jerry James 6443e6a
 	# it's likely to be more like Solaris than SunOS4.
Jerry James 6443e6a
 	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     sun4*:SunOS:*:*)
Jerry James 6443e6a
 	case "`/usr/bin/arch -k`" in
Jerry James 6443e6a
 	    Series*|S4*)
bd333ef
@@ -314,13 +411,13 @@ EOF
Jerry James 6443e6a
 	esac
Jerry James 6443e6a
 	# Japanese Language versions have a version number like `4.1.3-JL'.
Jerry James 6443e6a
 	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     sun3*:SunOS:*:*)
Jerry James 6443e6a
 	echo m68k-sun-sunos${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     sun*:*:4.2BSD:*)
Jerry James 6443e6a
-	UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
bd333ef
-	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
Jerry James 6443e6a
+	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
bd333ef
+	test "x${UNAME_RELEASE}" = x && UNAME_RELEASE=3
Jerry James 6443e6a
 	case "`/bin/arch`" in
Jerry James 6443e6a
 	    sun3)
bd333ef
 		echo m68k-sun-sunos${UNAME_RELEASE}
bd333ef
@@ -329,16 +426,10 @@ EOF
Jerry James 6443e6a
 		echo sparc-sun-sunos${UNAME_RELEASE}
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	esac
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     aushp:SunOS:*:*)
Jerry James 6443e6a
 	echo sparc-auspex-sunos${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    sparc*:NetBSD:*)
Jerry James 6443e6a
-	echo `uname -p`-unknown-netbsd${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    atari*:OpenBSD:*:*)
Jerry James 6443e6a
-	echo m68k-unknown-openbsd${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     # The situation for MiNT is a little confusing.  The machine name
Jerry James 6443e6a
     # can be virtually everything (everything which is not
Jerry James 6443e6a
     # "atarist" or "atariste" at least should have a processor
bd333ef
@@ -348,50 +439,41 @@ EOF
Jerry James 6443e6a
     # MiNT.  But MiNT is downward compatible to TOS, so this should
Jerry James 6443e6a
     # be no problem.
Jerry James 6443e6a
     atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
Jerry James 6443e6a
-        echo m68k-atari-mint${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	echo m68k-atari-mint${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
Jerry James 6443e6a
 	echo m68k-atari-mint${UNAME_RELEASE}
Jerry James 6443e6a
-        exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
Jerry James 6443e6a
-        echo m68k-atari-mint${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	echo m68k-atari-mint${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
Jerry James 6443e6a
-        echo m68k-milan-mint${UNAME_RELEASE}
Jerry James 6443e6a
-        exit 0 ;;
Jerry James 6443e6a
+	echo m68k-milan-mint${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
Jerry James 6443e6a
-        echo m68k-hades-mint${UNAME_RELEASE}
Jerry James 6443e6a
-        exit 0 ;;
Jerry James 6443e6a
+	echo m68k-hades-mint${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
Jerry James 6443e6a
-        echo m68k-unknown-mint${UNAME_RELEASE}
Jerry James 6443e6a
-        exit 0 ;;
Jerry James 6443e6a
-    sun3*:OpenBSD:*:*)
Jerry James 6443e6a
-	echo m68k-unknown-openbsd${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    mac68k:OpenBSD:*:*)
Jerry James 6443e6a
-	echo m68k-unknown-openbsd${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    mvme68k:OpenBSD:*:*)
Jerry James 6443e6a
-	echo m68k-unknown-openbsd${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    mvme88k:OpenBSD:*:*)
Jerry James 6443e6a
-	echo m88k-unknown-openbsd${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	echo m68k-unknown-mint${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    m68k:machten:*:*)
Jerry James 6443e6a
+	echo m68k-apple-machten${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     powerpc:machten:*:*)
Jerry James 6443e6a
 	echo powerpc-apple-machten${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     RISC*:Mach:*:*)
Jerry James 6443e6a
 	echo mips-dec-mach_bsd4.3
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     RISC*:ULTRIX:*:*)
Jerry James 6443e6a
 	echo mips-dec-ultrix${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     VAX*:ULTRIX*:*:*)
Jerry James 6443e6a
 	echo vax-dec-ultrix${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     2020:CLIX:*:* | 2430:CLIX:*:*)
Jerry James 6443e6a
 	echo clipper-intergraph-clix${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     mips:*:*:UMIPS | mips:*:*:RISCos)
Jerry James 6443e6a
 	eval $set_cc_for_build
Jerry James 6443e6a
 	sed 's/^	//' << EOF >$dummy.c
bd333ef
@@ -415,30 +497,36 @@ EOF
Jerry James 6443e6a
 	  exit (-1);
Jerry James 6443e6a
 	}
Jerry James 6443e6a
 EOF
Jerry James 6443e6a
-	$CC_FOR_BUILD $dummy.c -o $dummy \
Jerry James 6443e6a
-	  && ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
Jerry James 6443e6a
-	  && rm -f $dummy.c $dummy && exit 0
Jerry James 6443e6a
-	rm -f $dummy.c $dummy
Jerry James 6443e6a
+	$CC_FOR_BUILD -o $dummy $dummy.c &&
Jerry James 6443e6a
+	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
Jerry James 6443e6a
+	  SYSTEM_NAME=`$dummy $dummyarg` &&
Jerry James 6443e6a
+	    { echo "$SYSTEM_NAME"; exit; }
Jerry James 6443e6a
 	echo mips-mips-riscos${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     Motorola:PowerMAX_OS:*:*)
Jerry James 6443e6a
 	echo powerpc-motorola-powermax
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    Motorola:*:4.3:PL8-*)
Jerry James 6443e6a
+	echo powerpc-harris-powermax
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
Jerry James 6443e6a
+	echo powerpc-harris-powermax
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     Night_Hawk:Power_UNIX:*:*)
Jerry James 6443e6a
 	echo powerpc-harris-powerunix
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     m88k:CX/UX:7*:*)
Jerry James 6443e6a
 	echo m88k-harris-cxux7
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     m88k:*:4*:R4*)
Jerry James 6443e6a
 	echo m88k-motorola-sysv4
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     m88k:*:3*:R3*)
Jerry James 6443e6a
 	echo m88k-motorola-sysv3
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     AViiON:dgux:*:*)
Jerry James 6443e6a
-        # DG/UX returns AViiON for all architectures
Jerry James 6443e6a
-        UNAME_PROCESSOR=`/usr/bin/uname -p`
Jerry James 6443e6a
+	# DG/UX returns AViiON for all architectures
Jerry James 6443e6a
+	UNAME_PROCESSOR=`/usr/bin/uname -p`
Jerry James 6443e6a
 	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
Jerry James 6443e6a
 	then
Jerry James 6443e6a
 	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
bd333ef
@@ -451,29 +539,29 @@ EOF
Jerry James 6443e6a
 	else
Jerry James 6443e6a
 	    echo i586-dg-dgux${UNAME_RELEASE}
Jerry James 6443e6a
 	fi
Jerry James 6443e6a
- 	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
Jerry James 6443e6a
 	echo m88k-dolphin-sysv3
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     M88*:*:R3*:*)
Jerry James 6443e6a
 	# Delta 88k system running SVR3
Jerry James 6443e6a
 	echo m88k-motorola-sysv3
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
Jerry James 6443e6a
 	echo m88k-tektronix-sysv3
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
Jerry James 6443e6a
 	echo m68k-tektronix-bsd
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:IRIX*:*:*)
Jerry James 6443e6a
 	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
Jerry James 6443e6a
-	echo romp-ibm-aix      # uname -m gives an 8 hex-code CPU id
Jerry James 6443e6a
-	exit 0 ;;              # Note that: echo "'`uname -s`'" gives 'AIX '
Jerry James 6443e6a
+	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
Jerry James 6443e6a
+	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
Jerry James 6443e6a
     i*86:AIX:*:*)
Jerry James 6443e6a
 	echo i386-ibm-aix
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     ia64:AIX:*:*)
Jerry James 6443e6a
 	if [ -x /usr/bin/oslevel ] ; then
Jerry James 6443e6a
 		IBM_REV=`/usr/bin/oslevel`
bd333ef
@@ -481,7 +569,7 @@ EOF
Jerry James 6443e6a
 		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
Jerry James 6443e6a
 	fi
Jerry James 6443e6a
 	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:AIX:2:3)
Jerry James 6443e6a
 	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
Jerry James 6443e6a
 		eval $set_cc_for_build
bd333ef
@@ -496,118 +584,140 @@ EOF
Jerry James 6443e6a
 			exit(0);
Jerry James 6443e6a
 			}
Jerry James 6443e6a
 EOF
Jerry James 6443e6a
-		$CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0
Jerry James 6443e6a
-		rm -f $dummy.c $dummy
Jerry James 6443e6a
-		echo rs6000-ibm-aix3.2.5
Jerry James 6443e6a
+		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
Jerry James 6443e6a
+		then
Jerry James 6443e6a
+			echo "$SYSTEM_NAME"
Jerry James 6443e6a
+		else
Jerry James 6443e6a
+			echo rs6000-ibm-aix3.2.5
Jerry James 6443e6a
+		fi
Jerry James 6443e6a
 	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
Jerry James 6443e6a
 		echo rs6000-ibm-aix3.2.4
Jerry James 6443e6a
 	else
Jerry James 6443e6a
 		echo rs6000-ibm-aix3.2
Jerry James 6443e6a
 	fi
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    *:AIX:*:[45])
Jerry James 6443e6a
-	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'`
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    *:AIX:*:[4567])
Jerry James 6443e6a
+	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
Jerry James 6443e6a
 	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
Jerry James 6443e6a
 		IBM_ARCH=rs6000
Jerry James 6443e6a
 	else
bd333ef
 		IBM_ARCH=powerpc
bd333ef
 	fi
bd333ef
-	if [ -x /usr/bin/oslevel ] ; then
bd333ef
-		IBM_REV=`/usr/bin/oslevel`
bd333ef
+	if [ -x /usr/bin/lslpp ] ; then
bd333ef
+		IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |
bd333ef
+			   awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
bd333ef
 	else
Jerry James 6443e6a
 		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
Jerry James 6443e6a
 	fi
Jerry James 6443e6a
 	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:AIX:*:*)
Jerry James 6443e6a
 	echo rs6000-ibm-aix
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     ibmrt:4.4BSD:*|romp-ibm:BSD:*)
Jerry James 6443e6a
 	echo romp-ibm-bsd4.4
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
Jerry James 6443e6a
 	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
Jerry James 6443e6a
-	exit 0 ;;                           # report: romp-ibm BSD 4.3
Jerry James 6443e6a
+	exit ;;                             # report: romp-ibm BSD 4.3
Jerry James 6443e6a
     *:BOSX:*:*)
Jerry James 6443e6a
 	echo rs6000-bull-bosx
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     DPX/2?00:B.O.S.:*:*)
Jerry James 6443e6a
 	echo m68k-bull-sysv3
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     9000/[34]??:4.3bsd:1.*:*)
Jerry James 6443e6a
 	echo m68k-hp-bsd
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
Jerry James 6443e6a
 	echo m68k-hp-bsd4.4
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     9000/[34678]??:HP-UX:*:*)
Jerry James 6443e6a
 	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
Jerry James 6443e6a
 	case "${UNAME_MACHINE}" in
Jerry James 6443e6a
 	    9000/31? )            HP_ARCH=m68000 ;;
Jerry James 6443e6a
 	    9000/[34]?? )         HP_ARCH=m68k ;;
Jerry James 6443e6a
 	    9000/[678][0-9][0-9])
Jerry James 6443e6a
-              case "${HPUX_REV}" in
Jerry James 6443e6a
-                11.[0-9][0-9])
Jerry James 6443e6a
-                  if [ -x /usr/bin/getconf ]; then
Jerry James 6443e6a
-                    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
Jerry James 6443e6a
-                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
Jerry James 6443e6a
-                    case "${sc_cpu_version}" in
Jerry James 6443e6a
-                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
Jerry James 6443e6a
-                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
Jerry James 6443e6a
-                      532)                      # CPU_PA_RISC2_0
Jerry James 6443e6a
-                        case "${sc_kernel_bits}" in
Jerry James 6443e6a
-                          32) HP_ARCH="hppa2.0n" ;;
Jerry James 6443e6a
-                          64) HP_ARCH="hppa2.0w" ;;
Jerry James 6443e6a
-                        esac ;;
Jerry James 6443e6a
-                    esac
Jerry James 6443e6a
-                  fi ;;
Jerry James 6443e6a
-              esac
Jerry James 6443e6a
-              if [ "${HP_ARCH}" = "" ]; then
Jerry James 6443e6a
-	      eval $set_cc_for_build
Jerry James 6443e6a
-              sed 's/^              //' << EOF >$dummy.c
Jerry James e09f18d
+		if [ -x /usr/bin/getconf ]; then
Jerry James e09f18d
+		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
Jerry James e09f18d
+		    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
Jerry James e09f18d
+		    case "${sc_cpu_version}" in
bd333ef
+		      523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
bd333ef
+		      528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
Jerry James e09f18d
+		      532)                      # CPU_PA_RISC2_0
Jerry James e09f18d
+			case "${sc_kernel_bits}" in
bd333ef
+			  32) HP_ARCH=hppa2.0n ;;
bd333ef
+			  64) HP_ARCH=hppa2.0w ;;
bd333ef
+			  '') HP_ARCH=hppa2.0 ;;   # HP-UX 10.20
Jerry James e09f18d
+			esac ;;
Jerry James e09f18d
+		    esac
Jerry James e09f18d
+		fi
Jerry James e09f18d
+		if [ "${HP_ARCH}" = "" ]; then
Jerry James e09f18d
+		    eval $set_cc_for_build
Jerry James e09f18d
+		    sed 's/^		//' << EOF >$dummy.c
Jerry James e09f18d
 
Jerry James 6443e6a
-              #define _HPUX_SOURCE
Jerry James 6443e6a
-              #include <stdlib.h>
Jerry James 6443e6a
-              #include <unistd.h>
Jerry James e09f18d
+		#define _HPUX_SOURCE
Jerry James e09f18d
+		#include <stdlib.h>
Jerry James e09f18d
+		#include <unistd.h>
Jerry James e09f18d
 
Jerry James 6443e6a
-              int main ()
Jerry James 6443e6a
-              {
Jerry James 6443e6a
-              #if defined(_SC_KERNEL_BITS)
Jerry James 6443e6a
-                  long bits = sysconf(_SC_KERNEL_BITS);
Jerry James 6443e6a
-              #endif
Jerry James 6443e6a
-                  long cpu  = sysconf (_SC_CPU_VERSION);
Jerry James e09f18d
+		int main ()
Jerry James e09f18d
+		{
Jerry James e09f18d
+		#if defined(_SC_KERNEL_BITS)
Jerry James e09f18d
+		    long bits = sysconf(_SC_KERNEL_BITS);
Jerry James e09f18d
+		#endif
Jerry James e09f18d
+		    long cpu  = sysconf (_SC_CPU_VERSION);
Jerry James e09f18d
 
Jerry James 6443e6a
-                  switch (cpu)
Jerry James 6443e6a
-              	{
Jerry James 6443e6a
-              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
Jerry James 6443e6a
-              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
Jerry James 6443e6a
-              	case CPU_PA_RISC2_0:
Jerry James 6443e6a
-              #if defined(_SC_KERNEL_BITS)
Jerry James 6443e6a
-              	    switch (bits)
Jerry James 6443e6a
-              		{
Jerry James 6443e6a
-              		case 64: puts ("hppa2.0w"); break;
Jerry James 6443e6a
-              		case 32: puts ("hppa2.0n"); break;
Jerry James 6443e6a
-              		default: puts ("hppa2.0"); break;
Jerry James 6443e6a
-              		} break;
Jerry James 6443e6a
-              #else  /* !defined(_SC_KERNEL_BITS) */
Jerry James 6443e6a
-              	    puts ("hppa2.0"); break;
Jerry James 6443e6a
-              #endif
Jerry James 6443e6a
-              	default: puts ("hppa1.0"); break;
Jerry James 6443e6a
-              	}
Jerry James 6443e6a
-                  exit (0);
Jerry James 6443e6a
-              }
Jerry James 6443e6a
+		    switch (cpu)
Jerry James 6443e6a
+			{
Jerry James 6443e6a
+			case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
Jerry James 6443e6a
+			case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
Jerry James 6443e6a
+			case CPU_PA_RISC2_0:
Jerry James 6443e6a
+		#if defined(_SC_KERNEL_BITS)
Jerry James 6443e6a
+			    switch (bits)
Jerry James 6443e6a
+				{
Jerry James 6443e6a
+				case 64: puts ("hppa2.0w"); break;
Jerry James 6443e6a
+				case 32: puts ("hppa2.0n"); break;
Jerry James 6443e6a
+				default: puts ("hppa2.0"); break;
Jerry James 6443e6a
+				} break;
Jerry James 6443e6a
+		#else  /* !defined(_SC_KERNEL_BITS) */
Jerry James 6443e6a
+			    puts ("hppa2.0"); break;
Jerry James 6443e6a
+		#endif
Jerry James 6443e6a
+			default: puts ("hppa1.0"); break;
Jerry James 6443e6a
+			}
Jerry James 6443e6a
+		    exit (0);
Jerry James 6443e6a
+		}
Jerry James 6443e6a
 EOF
Jerry James 6443e6a
-	    (CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy`
Jerry James 6443e6a
-	    if test -z "$HP_ARCH"; then HP_ARCH=hppa; fi
Jerry James 6443e6a
-	    rm -f $dummy.c $dummy
Jerry James 6443e6a
-	fi ;;
bd333ef
+		    (CCOPTS="" $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
Jerry James 6443e6a
+		    test -z "$HP_ARCH" && HP_ARCH=hppa
Jerry James 6443e6a
+		fi ;;
Jerry James 6443e6a
 	esac
bd333ef
+	if [ ${HP_ARCH} = hppa2.0w ]
Jerry James 6443e6a
+	then
Jerry James 6443e6a
+	    eval $set_cc_for_build
Jerry James 6443e6a
+
Jerry James 6443e6a
+	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
Jerry James 6443e6a
+	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
Jerry James 6443e6a
+	    # generating 64-bit code.  GNU and HP use different nomenclature:
Jerry James 6443e6a
+	    #
Jerry James 6443e6a
+	    # $ CC_FOR_BUILD=cc ./config.guess
Jerry James 6443e6a
+	    # => hppa2.0w-hp-hpux11.23
Jerry James 6443e6a
+	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
Jerry James 6443e6a
+	    # => hppa64-hp-hpux11.23
Jerry James 6443e6a
+
bd333ef
+	    if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) |
Jerry James 6443e6a
+		grep -q __LP64__
Jerry James 6443e6a
+	    then
bd333ef
+		HP_ARCH=hppa2.0w
Jerry James 6443e6a
+	    else
bd333ef
+		HP_ARCH=hppa64
Jerry James 6443e6a
+	    fi
Jerry James 6443e6a
+	fi
Jerry James 6443e6a
 	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     ia64:HP-UX:*:*)
Jerry James 6443e6a
 	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
Jerry James 6443e6a
 	echo ia64-hp-hpux${HPUX_REV}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     3050*:HI-UX:*:*)
Jerry James 6443e6a
 	eval $set_cc_for_build
Jerry James 6443e6a
 	sed 's/^	//' << EOF >$dummy.c
bd333ef
@@ -635,158 +745,176 @@ EOF
Jerry James 6443e6a
 	  exit (0);
Jerry James 6443e6a
 	}
Jerry James 6443e6a
 EOF
Jerry James 6443e6a
-	$CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0
Jerry James 6443e6a
-	rm -f $dummy.c $dummy
Jerry James 6443e6a
+	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
Jerry James 6443e6a
+		{ echo "$SYSTEM_NAME"; exit; }
Jerry James 6443e6a
 	echo unknown-hitachi-hiuxwe2
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
Jerry James 6443e6a
 	echo hppa1.1-hp-bsd
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     9000/8??:4.3bsd:*:*)
Jerry James 6443e6a
 	echo hppa1.0-hp-bsd
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
Jerry James 6443e6a
 	echo hppa1.0-hp-mpeix
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
Jerry James 6443e6a
 	echo hppa1.1-hp-osf
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     hp8??:OSF1:*:*)
Jerry James 6443e6a
 	echo hppa1.0-hp-osf
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     i*86:OSF1:*:*)
Jerry James 6443e6a
 	if [ -x /usr/sbin/sysversion ] ; then
Jerry James 6443e6a
 	    echo ${UNAME_MACHINE}-unknown-osf1mk
Jerry James 6443e6a
 	else
Jerry James 6443e6a
 	    echo ${UNAME_MACHINE}-unknown-osf1
Jerry James 6443e6a
 	fi
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     parisc*:Lites*:*:*)
Jerry James 6443e6a
 	echo hppa1.1-hp-lites
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    hppa*:OpenBSD:*:*)
Jerry James 6443e6a
-	echo hppa-unknown-openbsd
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
Jerry James 6443e6a
 	echo c1-convex-bsd
Jerry James 6443e6a
-        exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
Jerry James 6443e6a
 	if getsysinfo -f scalar_acc
Jerry James 6443e6a
 	then echo c32-convex-bsd
Jerry James 6443e6a
 	else echo c2-convex-bsd
Jerry James 6443e6a
 	fi
Jerry James 6443e6a
-        exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
Jerry James 6443e6a
 	echo c34-convex-bsd
Jerry James 6443e6a
-        exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
Jerry James 6443e6a
 	echo c38-convex-bsd
Jerry James 6443e6a
-        exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
Jerry James 6443e6a
 	echo c4-convex-bsd
Jerry James 6443e6a
-        exit 0 ;;
Jerry James 6443e6a
-    CRAY*X-MP:*:*:*)
Jerry James 6443e6a
-	echo xmp-cray-unicos
Jerry James 6443e6a
-        exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     CRAY*Y-MP:*:*:*)
Jerry James 6443e6a
 	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     CRAY*[A-Z]90:*:*:*)
Jerry James 6443e6a
 	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
Jerry James 6443e6a
 	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
Jerry James 6443e6a
 	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
Jerry James 6443e6a
 	      -e 's/\.[^.]*$/.X/'
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     CRAY*TS:*:*:*)
Jerry James 6443e6a
 	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    CRAY*T3D:*:*:*)
Jerry James 6443e6a
-	echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     CRAY*T3E:*:*:*)
Jerry James 6443e6a
 	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     CRAY*SV1:*:*:*)
Jerry James 6443e6a
 	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    CRAY-2:*:*:*)
Jerry James 6443e6a
-	echo cray2-cray-unicos
Jerry James 6443e6a
-        exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    *:UNICOS/mp:*:*)
Jerry James 6443e6a
+	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
bd333ef
-	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
Jerry James 6443e6a
-        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
Jerry James 6443e6a
-        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
Jerry James 6443e6a
-        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
Jerry James 6443e6a
-        exit 0 ;;
Jerry James 6443e6a
-    hp300:OpenBSD:*:*)
Jerry James 6443e6a
-	echo m68k-unknown-openbsd${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
bd333ef
+	FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
bd333ef
+	FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
Jerry James 6443e6a
+	FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
Jerry James 6443e6a
+	echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    5000:UNIX_System_V:4.*:*)
bd333ef
+	FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
bd333ef
+	FUJITSU_REL=`echo ${UNAME_RELEASE} | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`
Jerry James 6443e6a
+	echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
Jerry James 6443e6a
 	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     sparc*:BSD/OS:*:*)
Jerry James 6443e6a
 	echo sparc-unknown-bsdi${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:BSD/OS:*:*)
Jerry James 6443e6a
 	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:FreeBSD:*:*)
Jerry James 6443e6a
-	echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    *:OpenBSD:*:*)
Jerry James 6443e6a
-	echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	UNAME_PROCESSOR=`/usr/bin/uname -p`
Jerry James 6443e6a
+	case ${UNAME_PROCESSOR} in
Jerry James 6443e6a
+	    amd64)
Jerry James 6443e6a
+		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
Jerry James 6443e6a
+	    *)
Jerry James 6443e6a
+		echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
Jerry James 6443e6a
+	esac
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     i*:CYGWIN*:*)
Jerry James 6443e6a
 	echo ${UNAME_MACHINE}-pc-cygwin
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    i*:MINGW*:*)
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    *:MINGW64*:*)
Jerry James 6443e6a
+	echo ${UNAME_MACHINE}-pc-mingw64
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    *:MINGW*:*)
Jerry James 6443e6a
 	echo ${UNAME_MACHINE}-pc-mingw32
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
bd333ef
+    *:MSYS*:*)
Jerry James 6443e6a
+	echo ${UNAME_MACHINE}-pc-msys
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    i*:windows32*:*)
Jerry James 6443e6a
+	# uname -m includes "-pc" on this system.
Jerry James 6443e6a
+	echo ${UNAME_MACHINE}-mingw32
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     i*:PW*:*)
Jerry James 6443e6a
 	echo ${UNAME_MACHINE}-pc-pw32
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    *:Interix*:*)
Jerry James 6443e6a
+	case ${UNAME_MACHINE} in
Jerry James 6443e6a
+	    x86)
Jerry James 6443e6a
+		echo i586-pc-interix${UNAME_RELEASE}
Jerry James 6443e6a
+		exit ;;
Jerry James 6443e6a
+	    authenticamd | genuineintel | EM64T)
Jerry James 6443e6a
+		echo x86_64-unknown-interix${UNAME_RELEASE}
Jerry James 6443e6a
+		exit ;;
Jerry James 6443e6a
+	    IA64)
Jerry James 6443e6a
+		echo ia64-unknown-interix${UNAME_RELEASE}
Jerry James 6443e6a
+		exit ;;
Jerry James 6443e6a
+	esac ;;
Jerry James 6443e6a
+    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
Jerry James 6443e6a
+	echo i${UNAME_MACHINE}-pc-mks
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    8664:Windows_NT:*)
Jerry James 6443e6a
+	echo x86_64-pc-mks
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
Jerry James 6443e6a
 	# How do we know it's Interix rather than the generic POSIX subsystem?
Jerry James 6443e6a
 	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
Jerry James 6443e6a
 	# UNAME_MACHINE based on the output of uname instead of i386?
Jerry James 6443e6a
-	echo i386-pc-interix
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	echo i586-pc-interix
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     i*:UWIN*:*)
Jerry James 6443e6a
 	echo ${UNAME_MACHINE}-pc-uwin
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
Jerry James 6443e6a
+	echo x86_64-unknown-cygwin
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     p*:CYGWIN*:*)
Jerry James 6443e6a
 	echo powerpcle-unknown-cygwin
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     prep*:SunOS:5.*:*)
Jerry James 6443e6a
 	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:GNU:*:*)
Jerry James e09f18d
-	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
Jerry James 6443e6a
-	exit 0 ;;
Jerry James e09f18d
+	# the GNU system
Jerry James e09f18d
+	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    *:GNU/*:*:*)
Jerry James 6443e6a
+	# other systems with GNU libc and userland
bd333ef
+	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     i*86:Minix:*:*)
Jerry James 6443e6a
 	echo ${UNAME_MACHINE}-pc-minix
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    arm*:Linux:*:*)
Jerry James e09f18d
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    ia64:Linux:*:*)
Jerry James 6443e6a
-	echo ${UNAME_MACHINE}-unknown-linux
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    m68*:Linux:*:*)
Jerry James e09f18d
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    mips:Linux:*:*)
Jerry James 6443e6a
-	case `sed -n '/^byte/s/^.*: \(.*\) endian/\1/p' < /proc/cpuinfo` in
Jerry James 6443e6a
-	  big)    echo mips-unknown-linux-gnu && exit 0 ;;
Jerry James 6443e6a
-	  little) echo mipsel-unknown-linux-gnu && exit 0 ;;
Jerry James 6443e6a
-	esac
Jerry James 6443e6a
-	;;
Jerry James 6443e6a
-    ppc:Linux:*:*)
Jerry James 6443e6a
-	echo powerpc-unknown-linux-gnu
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    ppc64:Linux:*:*)
Jerry James 6443e6a
-	echo powerpc64-unknown-linux-gnu
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James e09f18d
+    aarch64:Linux:*:*)
Jerry James e09f18d
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
Jerry James e09f18d
+	exit ;;
Jerry James e09f18d
+    aarch64_be:Linux:*:*)
Jerry James e09f18d
+	UNAME_MACHINE=aarch64_be
Jerry James e09f18d
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
Jerry James e09f18d
+	exit ;;
Jerry James 6443e6a
     alpha:Linux:*:*)
Jerry James 6443e6a
 	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
Jerry James 6443e6a
 	  EV5)   UNAME_MACHINE=alphaev5 ;;
bd333ef
@@ -796,104 +924,175 @@ EOF
Jerry James 6443e6a
 	  EV6)   UNAME_MACHINE=alphaev6 ;;
Jerry James 6443e6a
 	  EV67)  UNAME_MACHINE=alphaev67 ;;
Jerry James 6443e6a
 	  EV68*) UNAME_MACHINE=alphaev68 ;;
Jerry James 6443e6a
-        esac
Jerry James 6443e6a
-	objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
Jerry James e09f18d
-	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
Jerry James e09f18d
-	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
Jerry James e09f18d
-	exit 0 ;;
Jerry James 6443e6a
+	esac
Jerry James 6443e6a
+	objdump --private-headers /bin/sh | grep -q ld.so.1
bd333ef
+	if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
Jerry James e09f18d
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
Jerry James e09f18d
+	exit ;;
Jerry James e09f18d
+    arc:Linux:*:* | arceb:Linux:*:*)
Jerry James e09f18d
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    arm*:Linux:*:*)
Jerry James 6443e6a
+	eval $set_cc_for_build
Jerry James 6443e6a
+	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
Jerry James 6443e6a
+	    | grep -q __ARM_EABI__
Jerry James 6443e6a
+	then
Jerry James e09f18d
+	    echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
Jerry James 6443e6a
+	else
Jerry James 6443e6a
+	    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
Jerry James 6443e6a
+		| grep -q __ARM_PCS_VFP
Jerry James 6443e6a
+	    then
Jerry James e09f18d
+		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
Jerry James 6443e6a
+	    else
Jerry James e09f18d
+		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
Jerry James 6443e6a
+	    fi
Jerry James 6443e6a
+	fi
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    avr32*:Linux:*:*)
Jerry James e09f18d
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    cris:Linux:*:*)
Jerry James e09f18d
+	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    crisv32:Linux:*:*)
Jerry James e09f18d
+	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
bd333ef
+    e2k:Linux:*:*)
bd333ef
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
bd333ef
+	exit ;;
Jerry James 6443e6a
+    frv:Linux:*:*)
Jerry James e09f18d
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    hexagon:Linux:*:*)
Jerry James e09f18d
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    i*86:Linux:*:*)
Jerry James e09f18d
+	echo ${UNAME_MACHINE}-pc-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    ia64:Linux:*:*)
Jerry James e09f18d
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
bd333ef
+    k1om:Linux:*:*)
bd333ef
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
bd333ef
+	exit ;;
Jerry James 6443e6a
+    m32r*:Linux:*:*)
Jerry James e09f18d
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    m68*:Linux:*:*)
Jerry James e09f18d
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    mips:Linux:*:* | mips64:Linux:*:*)
Jerry James 6443e6a
+	eval $set_cc_for_build
Jerry James 6443e6a
+	sed 's/^	//' << EOF >$dummy.c
Jerry James 6443e6a
+	#undef CPU
Jerry James 6443e6a
+	#undef ${UNAME_MACHINE}
Jerry James 6443e6a
+	#undef ${UNAME_MACHINE}el
Jerry James 6443e6a
+	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
Jerry James 6443e6a
+	CPU=${UNAME_MACHINE}el
Jerry James 6443e6a
+	#else
Jerry James 6443e6a
+	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
Jerry James 6443e6a
+	CPU=${UNAME_MACHINE}
Jerry James 6443e6a
+	#else
Jerry James 6443e6a
+	CPU=
Jerry James 6443e6a
+	#endif
Jerry James 6443e6a
+	#endif
Jerry James 6443e6a
+EOF
Jerry James 6443e6a
+	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
Jerry James e09f18d
+	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
Jerry James 6443e6a
+	;;
bd333ef
+    openrisc*:Linux:*:*)
bd333ef
+	echo or1k-unknown-linux-${LIBC}
Jerry James e09f18d
+	exit ;;
bd333ef
+    or32:Linux:*:* | or1k*:Linux:*:*)
Jerry James e09f18d
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    padre:Linux:*:*)
Jerry James e09f18d
+	echo sparc-unknown-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    parisc64:Linux:*:* | hppa64:Linux:*:*)
Jerry James e09f18d
+	echo hppa64-unknown-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     parisc:Linux:*:* | hppa:Linux:*:*)
Jerry James 6443e6a
 	# Look for CPU level
Jerry James 6443e6a
 	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
Jerry James e09f18d
-	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
Jerry James e09f18d
-	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
Jerry James e09f18d
-	  *)    echo hppa-unknown-linux-gnu ;;
Jerry James e09f18d
+	  PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
Jerry James e09f18d
+	  PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
Jerry James e09f18d
+	  *)    echo hppa-unknown-linux-${LIBC} ;;
Jerry James 6443e6a
 	esac
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    parisc64:Linux:*:* | hppa64:Linux:*:*)
Jerry James 6443e6a
-	echo hppa64-unknown-linux-gnu
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    ppc64:Linux:*:*)
Jerry James e09f18d
+	echo powerpc64-unknown-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    ppc:Linux:*:*)
Jerry James e09f18d
+	echo powerpc-unknown-linux-${LIBC}
Jerry James e09f18d
+	exit ;;
Jerry James e09f18d
+    ppc64le:Linux:*:*)
Jerry James e09f18d
+	echo powerpc64le-unknown-linux-${LIBC}
Jerry James e09f18d
+	exit ;;
Jerry James e09f18d
+    ppcle:Linux:*:*)
Jerry James e09f18d
+	echo powerpcle-unknown-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
bd333ef
+    riscv32:Linux:*:* | riscv64:Linux:*:*)
bd333ef
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
bd333ef
+	exit ;;
Jerry James 6443e6a
     s390:Linux:*:* | s390x:Linux:*:*)
Jerry James e09f18d
-	echo ${UNAME_MACHINE}-ibm-linux
Jerry James 6443e6a
-	exit 0 ;;
Jerry James e09f18d
+	echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    sh64*:Linux:*:*)
Jerry James e09f18d
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     sh*:Linux:*:*)
Jerry James e09f18d
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
Jerry James 6443e6a
-	exit 0 ;;
Jerry James e09f18d
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     sparc:Linux:*:* | sparc64:Linux:*:*)
Jerry James e09f18d
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
Jerry James 6443e6a
-	exit 0 ;;
Jerry James e09f18d
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    tile*:Linux:*:*)
Jerry James e09f18d
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    vax:Linux:*:*)
Jerry James e09f18d
+	echo ${UNAME_MACHINE}-dec-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     x86_64:Linux:*:*)
Jerry James 6443e6a
-	echo x86_64-unknown-linux-gnu
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    i*86:Linux:*:*)
Jerry James 6443e6a
-	# The BFD linker knows what the default object file format is, so
Jerry James 6443e6a
-	# first see if it will tell us. cd to the root directory to prevent
Jerry James 6443e6a
-	# problems with other programs or directories called `ld' in the path.
Jerry James 6443e6a
-	ld_supported_targets=`cd /; ld --help 2>&1 \
Jerry James 6443e6a
-			 | sed -ne '/supported targets:/!d
Jerry James 6443e6a
-				    s/[ 	][ 	]*/ /g
Jerry James 6443e6a
-				    s/.*supported targets: *//
Jerry James 6443e6a
-				    s/ .*//
Jerry James 6443e6a
-				    p'`
Jerry James 6443e6a
-        case "$ld_supported_targets" in
Jerry James 6443e6a
-	  elf32-i386)
Jerry James 6443e6a
-		TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
Jerry James 6443e6a
-		;;
Jerry James 6443e6a
-	  a.out-i386-linux)
Jerry James 6443e6a
-		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
Jerry James 6443e6a
-		exit 0 ;;		
Jerry James 6443e6a
-	  coff-i386)
Jerry James 6443e6a
-		echo "${UNAME_MACHINE}-pc-linux-gnucoff"
Jerry James 6443e6a
-		exit 0 ;;
Jerry James 6443e6a
-	  "")
Jerry James 6443e6a
-		# Either a pre-BFD a.out linker (linux-gnuoldld) or
Jerry James 6443e6a
-		# one that does not give us useful --help.
Jerry James 6443e6a
-		echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
Jerry James 6443e6a
-		exit 0 ;;
Jerry James 6443e6a
-	esac
Jerry James 6443e6a
-	# Determine whether the default compiler is a.out or elf
Jerry James 6443e6a
-	eval $set_cc_for_build
Jerry James 6443e6a
-	cat >$dummy.c <
Jerry James 6443e6a
-#include <features.h>
Jerry James 6443e6a
-#ifdef __cplusplus
Jerry James 6443e6a
-#include <stdio.h>  /* for printf() prototype */
Jerry James 6443e6a
-	int main (int argc, char *argv[]) {
Jerry James 6443e6a
-#else
Jerry James 6443e6a
-	int main (argc, argv) int argc; char *argv[]; {
Jerry James 6443e6a
-#endif
Jerry James 6443e6a
-#ifdef __ELF__
Jerry James 6443e6a
-# ifdef __GLIBC__
Jerry James 6443e6a
-#  if __GLIBC__ >= 2
Jerry James 6443e6a
-    printf ("%s-pc-linux-gnu\n", argv[1]);
Jerry James 6443e6a
-#  else
Jerry James 6443e6a
-    printf ("%s-pc-linux-gnulibc1\n", argv[1]);
Jerry James 6443e6a
-#  endif
Jerry James 6443e6a
-# else
Jerry James 6443e6a
-   printf ("%s-pc-linux-gnulibc1\n", argv[1]);
Jerry James 6443e6a
-# endif
Jerry James 6443e6a
-#else
Jerry James 6443e6a
-  printf ("%s-pc-linux-gnuaout\n", argv[1]);
Jerry James 6443e6a
-#endif
Jerry James 6443e6a
-  return 0;
Jerry James 6443e6a
-}
Jerry James 6443e6a
-EOF
Jerry James 6443e6a
-	$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm -f $dummy.c $dummy && exit 0
Jerry James 6443e6a
-	rm -f $dummy.c $dummy
Jerry James 6443e6a
-	test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
Jerry James 6443e6a
-	;;
bd333ef
+	echo ${UNAME_MACHINE}-pc-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    xtensa*:Linux:*:*)
Jerry James e09f18d
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     i*86:DYNIX/ptx:4*:*)
Jerry James 6443e6a
 	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
Jerry James 6443e6a
 	# earlier versions are messed up and put the nodename in both
Jerry James 6443e6a
 	# sysname and nodename.
Jerry James 6443e6a
 	echo i386-sequent-sysv4
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     i*86:UNIX_SV:4.2MP:2.*)
Jerry James 6443e6a
-        # Unixware is an offshoot of SVR4, but it has its own version
Jerry James 6443e6a
-        # number series starting with 2...
Jerry James 6443e6a
-        # I am not positive that other SVR4 systems won't match this,
Jerry James 6443e6a
+	# Unixware is an offshoot of SVR4, but it has its own version
Jerry James 6443e6a
+	# number series starting with 2...
Jerry James 6443e6a
+	# I am not positive that other SVR4 systems won't match this,
Jerry James 6443e6a
 	# I just have to hope.  -- rms.
Jerry James 6443e6a
-        # Use sysv4.2uw... so that sysv4* matches it.
Jerry James 6443e6a
+	# Use sysv4.2uw... so that sysv4* matches it.
Jerry James 6443e6a
 	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    i*86:OS/2:*:*)
Jerry James 6443e6a
+	# If we were able to find `uname', then EMX Unix compatibility
Jerry James 6443e6a
+	# is probably installed.
Jerry James 6443e6a
+	echo ${UNAME_MACHINE}-pc-os2-emx
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    i*86:XTS-300:*:STOP)
Jerry James 6443e6a
+	echo ${UNAME_MACHINE}-unknown-stop
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    i*86:atheos:*:*)
Jerry James 6443e6a
+	echo ${UNAME_MACHINE}-unknown-atheos
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    i*86:syllable:*:*)
Jerry James 6443e6a
+	echo ${UNAME_MACHINE}-pc-syllable
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
Jerry James 6443e6a
+	echo i386-unknown-lynxos${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    i*86:*DOS:*:*)
Jerry James 6443e6a
+	echo ${UNAME_MACHINE}-pc-msdosdjgpp
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
Jerry James 6443e6a
 	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
Jerry James 6443e6a
 	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
bd333ef
@@ -901,99 +1100,113 @@ EOF
Jerry James 6443e6a
 	else
Jerry James 6443e6a
 		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
Jerry James 6443e6a
 	fi
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    i*86:*:5:[78]*)
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    i*86:*:5:[678]*)
Jerry James 6443e6a
+	# UnixWare 7.x, OpenUNIX and OpenServer 6.
Jerry James 6443e6a
 	case `/bin/uname -X | grep "^Machine"` in
Jerry James 6443e6a
 	    *486*)	     UNAME_MACHINE=i486 ;;
Jerry James 6443e6a
 	    *Pentium)	     UNAME_MACHINE=i586 ;;
Jerry James 6443e6a
 	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
Jerry James 6443e6a
 	esac
Jerry James 6443e6a
 	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     i*86:*:3.2:*)
Jerry James 6443e6a
 	if test -f /usr/options/cb.name; then
Jerry James 6443e6a
 		UNAME_REL=`sed -n 's/.*Version //p' 
Jerry James 6443e6a
 		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
Jerry James 6443e6a
 	elif /bin/uname -X 2>/dev/null >/dev/null ; then
Jerry James 6443e6a
-		UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
Jerry James 6443e6a
-		(/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
Jerry James 6443e6a
-		(/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
Jerry James 6443e6a
+		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
Jerry James 6443e6a
+		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
Jerry James 6443e6a
+		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
Jerry James 6443e6a
 			&& UNAME_MACHINE=i586
Jerry James 6443e6a
-		(/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \
Jerry James 6443e6a
+		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
Jerry James 6443e6a
 			&& UNAME_MACHINE=i686
Jerry James 6443e6a
-		(/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \
Jerry James 6443e6a
+		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
Jerry James 6443e6a
 			&& UNAME_MACHINE=i686
Jerry James 6443e6a
 		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
Jerry James 6443e6a
 	else
Jerry James 6443e6a
 		echo ${UNAME_MACHINE}-pc-sysv32
Jerry James 6443e6a
 	fi
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    i*86:*DOS:*:*)
Jerry James 6443e6a
-	echo ${UNAME_MACHINE}-pc-msdosdjgpp
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     pc:*:*:*)
Jerry James 6443e6a
 	# Left here for compatibility:
Jerry James 6443e6a
-        # uname -m prints for DJGPP always 'pc', but it prints nothing about
Jerry James 6443e6a
-        # the processor, so we play safe by assuming i386.
Jerry James 6443e6a
-	echo i386-pc-msdosdjgpp
Jerry James 6443e6a
-        exit 0 ;;
Jerry James 6443e6a
+	# uname -m prints for DJGPP always 'pc', but it prints nothing about
Jerry James 6443e6a
+	# the processor, so we play safe by assuming i586.
Jerry James 6443e6a
+	# Note: whatever this is, it MUST be the same as what config.sub
bd333ef
+	# prints for the "djgpp" host, or else GDB configure will decide that
Jerry James 6443e6a
+	# this is a cross-build.
Jerry James 6443e6a
+	echo i586-pc-msdosdjgpp
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     Intel:Mach:3*:*)
Jerry James 6443e6a
 	echo i386-pc-mach3
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     paragon:*:*:*)
Jerry James 6443e6a
 	echo i860-intel-osf1
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     i860:*:4.*:*) # i860-SVR4
Jerry James 6443e6a
 	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
Jerry James 6443e6a
 	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
Jerry James 6443e6a
 	else # Add other i860-SVR4 vendors below as they are discovered.
Jerry James 6443e6a
 	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
Jerry James 6443e6a
 	fi
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     mini*:CTIX:SYS*5:*)
Jerry James 6443e6a
 	# "miniframe"
Jerry James 6443e6a
 	echo m68010-convergent-sysv
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    M68*:*:R3V[567]*:*)
Jerry James 6443e6a
-	test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
Jerry James 6443e6a
-    3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    mc68k:UNIX:SYSTEM5:3.51m)
Jerry James 6443e6a
+	echo m68k-convergent-sysv
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    M680?0:D-NIX:5.3:*)
Jerry James 6443e6a
+	echo m68k-diab-dnix
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    M68*:*:R3V[5678]*:*)
Jerry James 6443e6a
+	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
Jerry James 6443e6a
+    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)
Jerry James 6443e6a
 	OS_REL=''
Jerry James 6443e6a
 	test -r /etc/.relid \
Jerry James 6443e6a
 	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
Jerry James 6443e6a
 	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
Jerry James 6443e6a
-	  && echo i486-ncr-sysv4.3${OS_REL} && exit 0
Jerry James 6443e6a
+	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
Jerry James 6443e6a
 	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
Jerry James 6443e6a
-	  && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
Jerry James 6443e6a
+	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
Jerry James 6443e6a
     3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
Jerry James 6443e6a
-        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
Jerry James 6443e6a
-          && echo i486-ncr-sysv4 && exit 0 ;;
Jerry James 6443e6a
+	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
Jerry James 6443e6a
+	  && { echo i486-ncr-sysv4; exit; } ;;
Jerry James 6443e6a
+    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
Jerry James 6443e6a
+	OS_REL='.3'
Jerry James 6443e6a
+	test -r /etc/.relid \
Jerry James 6443e6a
+	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
Jerry James 6443e6a
+	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
Jerry James 6443e6a
+	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
Jerry James 6443e6a
+	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
Jerry James 6443e6a
+	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
Jerry James 6443e6a
+	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
Jerry James 6443e6a
+	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
Jerry James 6443e6a
     m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
Jerry James 6443e6a
 	echo m68k-unknown-lynxos${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     mc68030:UNIX_System_V:4.*:*)
Jerry James 6443e6a
 	echo m68k-atari-sysv4
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
Jerry James 6443e6a
-	echo i386-unknown-lynxos${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     TSUNAMI:LynxOS:2.*:*)
Jerry James 6443e6a
 	echo sparc-unknown-lynxos${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     rs6000:LynxOS:2.*:*)
Jerry James 6443e6a
 	echo rs6000-unknown-lynxos${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
Jerry James 6443e6a
 	echo powerpc-unknown-lynxos${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     SM[BE]S:UNIX_SV:*:*)
Jerry James 6443e6a
 	echo mips-dde-sysv${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     RM*:ReliantUNIX-*:*:*)
Jerry James 6443e6a
 	echo mips-sni-sysv4
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     RM*:SINIX-*:*:*)
Jerry James 6443e6a
 	echo mips-sni-sysv4
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:SINIX-*:*:*)
Jerry James 6443e6a
 	if uname -p 2>/dev/null >/dev/null ; then
Jerry James 6443e6a
 		UNAME_MACHINE=`(uname -p) 2>/dev/null`
bd333ef
@@ -1001,288 +1214,217 @@ EOF
Jerry James 6443e6a
 	else
Jerry James 6443e6a
 		echo ns32k-sni-sysv
Jerry James 6443e6a
 	fi
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
Jerry James 6443e6a
-                      # says <Richard.M.Bartel@ccMail.Census.GOV>
Jerry James 6443e6a
-        echo i586-unisys-sysv4
Jerry James 6443e6a
-        exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    PENTIUM:*:4.0*:*)	# Unisys `ClearPath HMP IX 4000' SVR4/MP effort
Jerry James 6443e6a
+			# says <Richard.M.Bartel@ccMail.Census.GOV>
Jerry James 6443e6a
+	echo i586-unisys-sysv4
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:UNIX_System_V:4*:FTX*)
Jerry James 6443e6a
 	# From Gerald Hewes <hewes@openmarket.com>.
Jerry James 6443e6a
 	# How about differentiating between stratus architectures? -djm
Jerry James 6443e6a
 	echo hppa1.1-stratus-sysv4
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:*:*:FTX*)
Jerry James 6443e6a
 	# From seanf@swdc.stratus.com.
Jerry James 6443e6a
 	echo i860-stratus-sysv4
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    i*86:VOS:*:*)
Jerry James 6443e6a
+	# From Paul.Green@stratus.com.
Jerry James 6443e6a
+	echo ${UNAME_MACHINE}-stratus-vos
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:VOS:*:*)
Jerry James 6443e6a
 	# From Paul.Green@stratus.com.
Jerry James 6443e6a
 	echo hppa1.1-stratus-vos
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     mc68*:A/UX:*:*)
Jerry James 6443e6a
 	echo m68k-apple-aux${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     news*:NEWS-OS:6*:*)
Jerry James 6443e6a
 	echo mips-sony-newsos6
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
Jerry James 6443e6a
 	if [ -d /usr/nec ]; then
Jerry James 6443e6a
-	        echo mips-nec-sysv${UNAME_RELEASE}
Jerry James 6443e6a
+		echo mips-nec-sysv${UNAME_RELEASE}
Jerry James 6443e6a
 	else
Jerry James 6443e6a
-	        echo mips-unknown-sysv${UNAME_RELEASE}
Jerry James 6443e6a
+		echo mips-unknown-sysv${UNAME_RELEASE}
Jerry James 6443e6a
 	fi
Jerry James 6443e6a
-        exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
Jerry James 6443e6a
 	echo powerpc-be-beos
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
Jerry James 6443e6a
 	echo powerpc-apple-beos
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
Jerry James 6443e6a
 	echo i586-pc-beos
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
Jerry James 6443e6a
+	echo i586-pc-haiku
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    x86_64:Haiku:*:*)
Jerry James 6443e6a
+	echo x86_64-unknown-haiku
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     SX-4:SUPER-UX:*:*)
Jerry James 6443e6a
 	echo sx4-nec-superux${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     SX-5:SUPER-UX:*:*)
Jerry James 6443e6a
 	echo sx5-nec-superux${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    SX-6:SUPER-UX:*:*)
Jerry James 6443e6a
+	echo sx6-nec-superux${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    SX-7:SUPER-UX:*:*)
Jerry James 6443e6a
+	echo sx7-nec-superux${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    SX-8:SUPER-UX:*:*)
Jerry James 6443e6a
+	echo sx8-nec-superux${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    SX-8R:SUPER-UX:*:*)
Jerry James 6443e6a
+	echo sx8r-nec-superux${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
bd333ef
+    SX-ACE:SUPER-UX:*:*)
bd333ef
+	echo sxace-nec-superux${UNAME_RELEASE}
bd333ef
+	exit ;;
Jerry James 6443e6a
     Power*:Rhapsody:*:*)
Jerry James 6443e6a
 	echo powerpc-apple-rhapsody${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:Rhapsody:*:*)
Jerry James 6443e6a
 	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:Darwin:*:*)
Jerry James 6443e6a
-	echo `uname -p`-apple-darwin${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
Jerry James e09f18d
+	eval $set_cc_for_build
Jerry James e09f18d
+	if test "$UNAME_PROCESSOR" = unknown ; then
Jerry James e09f18d
+	    UNAME_PROCESSOR=powerpc
Jerry James e09f18d
+	fi
Jerry James e09f18d
+	if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
bd333ef
+	    if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
Jerry James e09f18d
+		if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
bd333ef
+		    (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
Jerry James e09f18d
+		    grep IS_64BIT_ARCH >/dev/null
Jerry James e09f18d
+		then
Jerry James e09f18d
+		    case $UNAME_PROCESSOR in
Jerry James e09f18d
+			i386) UNAME_PROCESSOR=x86_64 ;;
Jerry James e09f18d
+			powerpc) UNAME_PROCESSOR=powerpc64 ;;
Jerry James e09f18d
+		    esac
Jerry James e09f18d
+		fi
Jerry James e09f18d
+	    fi
Jerry James e09f18d
+	elif test "$UNAME_PROCESSOR" = i386 ; then
Jerry James e09f18d
+	    # Avoid executing cc on OS X 10.9, as it ships with a stub
Jerry James e09f18d
+	    # that puts up a graphical alert prompting to install
Jerry James e09f18d
+	    # developer tools.  Any system running Mac OS X 10.7 or
Jerry James e09f18d
+	    # later (Darwin 11 and later) is required to have a 64-bit
Jerry James e09f18d
+	    # processor. This is not true of the ARM version of Darwin
Jerry James e09f18d
+	    # that Apple uses in portable devices.
Jerry James e09f18d
+	    UNAME_PROCESSOR=x86_64
Jerry James e09f18d
+	fi
Jerry James 6443e6a
+	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:procnto*:*:* | *:QNX:[0123456789]*:*)
Jerry James 6443e6a
-	if test "${UNAME_MACHINE}" = "x86pc"; then
Jerry James 6443e6a
+	UNAME_PROCESSOR=`uname -p`
bd333ef
+	if test "$UNAME_PROCESSOR" = x86; then
Jerry James 6443e6a
+		UNAME_PROCESSOR=i386
Jerry James 6443e6a
 		UNAME_MACHINE=pc
Jerry James 6443e6a
 	fi
Jerry James 6443e6a
-	echo `uname -p`-${UNAME_MACHINE}-nto-qnx
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:QNX:*:4*)
Jerry James 6443e6a
 	echo i386-pc-qnx
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    NSR-[KW]:NONSTOP_KERNEL:*:*)
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    NEO-?:NONSTOP_KERNEL:*:*)
Jerry James 6443e6a
+	echo neo-tandem-nsk${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    NSE-*:NONSTOP_KERNEL:*:*)
Jerry James 6443e6a
+	echo nse-tandem-nsk${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    NSR-?:NONSTOP_KERNEL:*:*)
Jerry James 6443e6a
 	echo nsr-tandem-nsk${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:NonStop-UX:*:*)
Jerry James 6443e6a
 	echo mips-compaq-nonstopux
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     BS2000:POSIX*:*:*)
Jerry James 6443e6a
 	echo bs2000-siemens-sysv
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     DS/*:UNIX_System_V:*:*)
Jerry James 6443e6a
 	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:Plan9:*:*)
Jerry James 6443e6a
 	# "uname -m" is not consistent, so use $cputype instead. 386
Jerry James 6443e6a
 	# is converted to i386 for consistency with other x86
bd333ef
 	# operating systems.
bd333ef
-	if test "$cputype" = "386"; then
bd333ef
+	if test "$cputype" = 386; then
bd333ef
 	    UNAME_MACHINE=i386
bd333ef
 	else
Jerry James 6443e6a
 	    UNAME_MACHINE="$cputype"
Jerry James 6443e6a
 	fi
Jerry James 6443e6a
 	echo ${UNAME_MACHINE}-unknown-plan9
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    i*86:OS/2:*:*)
Jerry James 6443e6a
-	# If we were able to find `uname', then EMX Unix compatibility
Jerry James 6443e6a
-	# is probably installed.
Jerry James 6443e6a
-	echo ${UNAME_MACHINE}-pc-os2-emx
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:TOPS-10:*:*)
Jerry James 6443e6a
 	echo pdp10-unknown-tops10
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:TENEX:*:*)
Jerry James 6443e6a
 	echo pdp10-unknown-tenex
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
Jerry James 6443e6a
 	echo pdp10-dec-tops20
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
Jerry James 6443e6a
 	echo pdp10-xkl-tops20
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:TOPS-20:*:*)
Jerry James 6443e6a
 	echo pdp10-unknown-tops20
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
     *:ITS:*:*)
Jerry James 6443e6a
 	echo pdp10-unknown-its
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    i*86:XTS-300:*:STOP)
Jerry James 6443e6a
-	echo ${UNAME_MACHINE}-unknown-stop
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
-    i*86:atheos:*:*)
Jerry James 6443e6a
-	echo ${UNAME_MACHINE}-unknown-atheos
Jerry James 6443e6a
-	exit 0 ;;
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    SEI:*:*:SEIUX)
Jerry James 6443e6a
+	echo mips-sei-seiux${UNAME_RELEASE}
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    *:DragonFly:*:*)
Jerry James 6443e6a
+	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    *:*VMS:*:*)
Jerry James 6443e6a
+	UNAME_MACHINE=`(uname -p) 2>/dev/null`
Jerry James 6443e6a
+	case "${UNAME_MACHINE}" in
Jerry James 6443e6a
+	    A*) echo alpha-dec-vms ; exit ;;
Jerry James 6443e6a
+	    I*) echo ia64-dec-vms ; exit ;;
Jerry James 6443e6a
+	    V*) echo vax-dec-vms ; exit ;;
Jerry James 6443e6a
+	esac ;;
Jerry James 6443e6a
+    *:XENIX:*:SysV)
Jerry James 6443e6a
+	echo i386-pc-xenix
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    i*86:skyos:*:*)
bd333ef
+	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE} | sed -e 's/ .*$//'`
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    i*86:rdos:*:*)
Jerry James 6443e6a
+	echo ${UNAME_MACHINE}-pc-rdos
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    i*86:AROS:*:*)
Jerry James 6443e6a
+	echo ${UNAME_MACHINE}-pc-aros
Jerry James 6443e6a
+	exit ;;
Jerry James 6443e6a
+    x86_64:VMkernel:*:*)
Jerry James 6443e6a
+	echo ${UNAME_MACHINE}-unknown-esx
Jerry James 6443e6a
+	exit ;;
bd333ef
+    amd64:Isilon\ OneFS:*:*)
bd333ef
+	echo x86_64-unknown-onefs
bd333ef
+	exit ;;
Jerry James 6443e6a
 esac
Jerry James 6443e6a
 
Jerry James 6443e6a
-#echo '(No uname command or uname output not recognized.)' 1>&2
Jerry James 6443e6a
-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
Jerry James 6443e6a
-
bd333ef
-eval $set_cc_for_build
bd333ef
-cat >$dummy.c <
bd333ef
-#ifdef _SEQUENT_
bd333ef
-# include <sys/types.h>
bd333ef
-# include <sys/utsname.h>
bd333ef
-#endif
bd333ef
-main ()
bd333ef
-{
bd333ef
-#if defined (sony)
bd333ef
-#if defined (MIPSEB)
bd333ef
-  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
bd333ef
-     I don't know....  */
bd333ef
-  printf ("mips-sony-bsd\n"); exit (0);
bd333ef
-#else
bd333ef
-#include <sys/param.h>
bd333ef
-  printf ("m68k-sony-newsos%s\n",
bd333ef
-#ifdef NEWSOS4
Jerry James 6443e6a
-          "4"
bd333ef
-#else
Jerry James 6443e6a
-	  ""
bd333ef
-#endif
Jerry James 6443e6a
-         ); exit (0);
bd333ef
-#endif
bd333ef
-#endif
bd333ef
-
bd333ef
-#if defined (__arm) && defined (__acorn) && defined (__unix)
Jerry James 6443e6a
-  printf ("arm-acorn-riscix"); exit (0);
bd333ef
-#endif
bd333ef
-
bd333ef
-#if defined (hp300) && !defined (hpux)
bd333ef
-  printf ("m68k-hp-bsd\n"); exit (0);
bd333ef
-#endif
bd333ef
-
bd333ef
-#if defined (NeXT)
bd333ef
-#if !defined (__ARCHITECTURE__)
bd333ef
-#define __ARCHITECTURE__ "m68k"
bd333ef
-#endif
bd333ef
-  int version;
bd333ef
-  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
bd333ef
-  if (version < 4)
bd333ef
-    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
bd333ef
-  else
bd333ef
-    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
bd333ef
-  exit (0);
bd333ef
-#endif
bd333ef
-
bd333ef
-#if defined (MULTIMAX) || defined (n16)
bd333ef
-#if defined (UMAXV)
bd333ef
-  printf ("ns32k-encore-sysv\n"); exit (0);
bd333ef
-#else
bd333ef
-#if defined (CMU)
bd333ef
-  printf ("ns32k-encore-mach\n"); exit (0);
bd333ef
-#else
bd333ef
-  printf ("ns32k-encore-bsd\n"); exit (0);
bd333ef
-#endif
bd333ef
-#endif
bd333ef
-#endif
bd333ef
-
bd333ef
-#if defined (__386BSD__)
bd333ef
-  printf ("i386-pc-bsd\n"); exit (0);
bd333ef
-#endif
bd333ef
-
bd333ef
-#if defined (sequent)
bd333ef
-#if defined (i386)
bd333ef
-  printf ("i386-sequent-dynix\n"); exit (0);
bd333ef
-#endif
bd333ef
-#if defined (ns32000)
bd333ef
-  printf ("ns32k-sequent-dynix\n"); exit (0);
bd333ef
-#endif
bd333ef
-#endif
bd333ef
-
bd333ef
-#if defined (_SEQUENT_)
bd333ef
-    struct utsname un;
bd333ef
-
bd333ef
-    uname(&un;;
bd333ef
-
bd333ef
-    if (strncmp(un.version, "V2", 2) == 0) {
bd333ef
-	printf ("i386-sequent-ptx2\n"); exit (0);
bd333ef
-    }
bd333ef
-    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
bd333ef
-	printf ("i386-sequent-ptx1\n"); exit (0);
bd333ef
-    }
bd333ef
-    printf ("i386-sequent-ptx\n"); exit (0);
bd333ef
-
bd333ef
-#endif
bd333ef
-
bd333ef
-#if defined (vax)
bd333ef
-# if !defined (ultrix)
bd333ef
-#  include <sys/param.h>
bd333ef
-#  if defined (BSD)
bd333ef
-#   if BSD == 43
bd333ef
-      printf ("vax-dec-bsd4.3\n"); exit (0);
bd333ef
-#   else
bd333ef
-#    if BSD == 199006
bd333ef
-      printf ("vax-dec-bsd4.3reno\n"); exit (0);
bd333ef
-#    else
bd333ef
-      printf ("vax-dec-bsd\n"); exit (0);
bd333ef
-#    endif
bd333ef
-#   endif
bd333ef
-#  else
bd333ef
-    printf ("vax-dec-bsd\n"); exit (0);
bd333ef
-#  endif
bd333ef
-# else
bd333ef
-    printf ("vax-dec-ultrix\n"); exit (0);
bd333ef
-# endif
bd333ef
-#endif
bd333ef
-
bd333ef
-#if defined (alliant) && defined (i860)
bd333ef
-  printf ("i860-alliant-bsd\n"); exit (0);
bd333ef
-#endif
bd333ef
-
bd333ef
-  exit (1);
bd333ef
-}
bd333ef
-EOF
bd333ef
-
Jerry James 6443e6a
-$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm -f $dummy.c $dummy && exit 0
Jerry James 6443e6a
-rm -f $dummy.c $dummy
bd333ef
-
bd333ef
-# Apollos put the system type in the environment.
bd333ef
-
Jerry James 6443e6a
-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }
bd333ef
-
bd333ef
-# Convex versions that predate uname can use getsysinfo(1)
bd333ef
-
bd333ef
-if [ -x /usr/convex/getsysinfo ]
bd333ef
-then
bd333ef
-    case `getsysinfo -f cpu_type` in
bd333ef
-    c1*)
bd333ef
-	echo c1-convex-bsd
bd333ef
-	exit 0 ;;
bd333ef
-    c2*)
bd333ef
-	if getsysinfo -f scalar_acc
bd333ef
-	then echo c32-convex-bsd
bd333ef
-	else echo c2-convex-bsd
bd333ef
-	fi
Jerry James 6443e6a
-	exit 0 ;;
bd333ef
-    c34*)
bd333ef
-	echo c34-convex-bsd
Jerry James 6443e6a
-	exit 0 ;;
bd333ef
-    c38*)
bd333ef
-	echo c38-convex-bsd
Jerry James 6443e6a
-	exit 0 ;;
bd333ef
-    c4*)
bd333ef
-	echo c4-convex-bsd
Jerry James 6443e6a
-	exit 0 ;;
bd333ef
-    esac
bd333ef
-fi
bd333ef
-
bd333ef
 cat >&2 <
bd333ef
 $0: unable to guess system type
Jerry James 6443e6a
 
bd333ef
-This script, last modified $timestamp, has failed to recognize
bd333ef
-the operating system you are using. It is advised that you
bd333ef
-download the most up to date version of the config scripts from
bd333ef
+This script (version $timestamp), has failed to recognize the
bd333ef
+operating system you are using. If your script is old, overwrite
bd333ef
+config.guess and config.sub with the latest versions from:
Jerry James 6443e6a
 
Jerry James 6443e6a
-    ftp://ftp.gnu.org/pub/gnu/config/
bd333ef
+  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
Jerry James 6443e6a
+and
bd333ef
+  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
bd333ef
 
bd333ef
-If the version you run ($0) is already up to date, please
bd333ef
-send the following data and any information you think might be
bd333ef
-pertinent to <config-patches@gnu.org> in order to provide the needed
bd333ef
-information to handle your system.
bd333ef
+If $0 has already been updated, send the following data and any
bd333ef
+information you think might be pertinent to config-patches@gnu.org to
bd333ef
+provide the necessary information to handle your system.
bd333ef
 
bd333ef
 config.guess timestamp = $timestamp
Jerry James 6443e6a
 
Jerry James e09f18d
--- config.sub.orig	2005-03-05 09:20:39.000000000 -0700
bd333ef
+++ config.sub	2016-09-15 15:58:41.352550325 -0600
bd333ef
@@ -1,33 +1,29 @@
Jerry James 6443e6a
 #! /bin/sh
Jerry James 6443e6a
 # Configuration validation subroutine script.
Jerry James 6443e6a
-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
Jerry James 6443e6a
-#   Free Software Foundation, Inc.
bd333ef
+#   Copyright 1992-2016 Free Software Foundation, Inc.
Jerry James 6443e6a
 
Jerry James 6443e6a
-timestamp='2001-09-07'
bd333ef
+timestamp='2016-09-05'
Jerry James 6443e6a
 
Jerry James e09f18d
-# This file is (in principle) common to ALL GNU software.
Jerry James e09f18d
-# The presence of a machine in this file suggests that SOME GNU software
Jerry James e09f18d
-# can handle that machine.  It does not imply ALL GNU software can.
Jerry James e09f18d
-#
Jerry James e09f18d
-# This file is free software; you can redistribute it and/or modify
Jerry James e09f18d
-# it under the terms of the GNU General Public License as published by
Jerry James e09f18d
-# the Free Software Foundation; either version 2 of the License, or
Jerry James e09f18d
+# This file is free software; you can redistribute it and/or modify it
Jerry James e09f18d
+# under the terms of the GNU General Public License as published by
Jerry James e09f18d
+# the Free Software Foundation; either version 3 of the License, or
Jerry James e09f18d
 # (at your option) any later version.
Jerry James e09f18d
 #
Jerry James e09f18d
-# This program is distributed in the hope that it will be useful,
Jerry James e09f18d
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
Jerry James e09f18d
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
Jerry James e09f18d
-# GNU General Public License for more details.
Jerry James e09f18d
+# This program is distributed in the hope that it will be useful, but
Jerry James e09f18d
+# WITHOUT ANY WARRANTY; without even the implied warranty of
Jerry James e09f18d
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Jerry James e09f18d
+# General Public License for more details.
Jerry James 6443e6a
 #
Jerry James 6443e6a
 # You should have received a copy of the GNU General Public License
Jerry James 6443e6a
-# along with this program; if not, write to the Free Software
Jerry James 6443e6a
-# Foundation, Inc., 59 Temple Place - Suite 330,
Jerry James 6443e6a
-# Boston, MA 02111-1307, USA.
Jerry James 6443e6a
-
Jerry James 6443e6a
+# along with this program; if not, see <http://www.gnu.org/licenses/>.
Jerry James 6443e6a
+#
Jerry James 6443e6a
 # As a special exception to the GNU General Public License, if you
Jerry James 6443e6a
 # distribute this file as part of a program that contains a
Jerry James 6443e6a
 # configuration script generated by Autoconf, you may include it under
Jerry James e09f18d
-# the same distribution terms that you use for the rest of that program.
Jerry James e09f18d
+# the same distribution terms that you use for the rest of that
Jerry James e09f18d
+# program.  This Exception is an additional permission under section 7
Jerry James e09f18d
+# of the GNU General Public License, version 3 ("GPLv3").
Jerry James 6443e6a
+
bd333ef
 
bd333ef
 # Please send patches to <config-patches@gnu.org>.
Jerry James 6443e6a
 #
bd333ef
@@ -36,6 +32,9 @@ timestamp='2001-09-07'
Jerry James 6443e6a
 # If it is invalid, we print an error message on stderr and exit with code 1.
Jerry James 6443e6a
 # Otherwise, we print the canonical config type on stdout and succeed.
Jerry James 6443e6a
 
Jerry James 6443e6a
+# You can get the latest version of this script from:
bd333ef
+# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
Jerry James 6443e6a
+
Jerry James 6443e6a
 # This file is supposed to be the same for all GNU packages
Jerry James 6443e6a
 # and recognize all the CPU types, system types and aliases
Jerry James 6443e6a
 # that are meaningful with *any* GNU software.
bd333ef
@@ -54,8 +53,7 @@ timestamp='2001-09-07'
bd333ef
 me=`echo "$0" | sed -e 's,.*/,,'`
bd333ef
 
bd333ef
 usage="\
bd333ef
-Usage: $0 [OPTION] CPU-MFR-OPSYS
bd333ef
-       $0 [OPTION] ALIAS
bd333ef
+Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS
bd333ef
 
bd333ef
 Canonicalize a configuration name.
bd333ef
 
bd333ef
@@ -69,8 +67,7 @@ Report bugs and patches to 
Jerry James 6443e6a
 version="\
Jerry James 6443e6a
 GNU config.sub ($timestamp)
Jerry James 6443e6a
 
Jerry James 6443e6a
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
Jerry James e09f18d
-Free Software Foundation, Inc.
bd333ef
+Copyright 1992-2016 Free Software Foundation, Inc.
Jerry James 6443e6a
 
Jerry James 6443e6a
 This is free software; see the source for copying conditions.  There is NO
Jerry James e09f18d
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
bd333ef
@@ -82,11 +79,11 @@ Try \`$me --help' for more information."
Jerry James 6443e6a
 while test $# -gt 0 ; do
Jerry James 6443e6a
   case $1 in
Jerry James 6443e6a
     --time-stamp | --time* | -t )
Jerry James 6443e6a
-       echo "$timestamp" ; exit 0 ;;
Jerry James 6443e6a
+       echo "$timestamp" ; exit ;;
Jerry James 6443e6a
     --version | -v )
Jerry James 6443e6a
-       echo "$version" ; exit 0 ;;
Jerry James 6443e6a
+       echo "$version" ; exit ;;
Jerry James 6443e6a
     --help | --h* | -h )
Jerry James 6443e6a
-       echo "$usage"; exit 0 ;;
Jerry James 6443e6a
+       echo "$usage"; exit ;;
Jerry James 6443e6a
     -- )     # Stop option processing
Jerry James 6443e6a
        shift; break ;;
Jerry James 6443e6a
     - )	# Use stdin as input.
bd333ef
@@ -98,7 +95,7 @@ while test $# -gt 0 ; do
Jerry James 6443e6a
     *local*)
Jerry James 6443e6a
        # First pass through any local machine types.
Jerry James 6443e6a
        echo $1
Jerry James 6443e6a
-       exit 0;;
Jerry James 6443e6a
+       exit ;;
Jerry James 6443e6a
 
Jerry James 6443e6a
     * )
Jerry James 6443e6a
        break ;;
bd333ef
@@ -117,10 +114,18 @@ esac
Jerry James 6443e6a
 # Here we must recognize all the valid KERNEL-OS combinations.
Jerry James 6443e6a
 maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
Jerry James 6443e6a
 case $maybe_os in
Jerry James 6443e6a
-  nto-qnx* | linux-gnu* | storm-chaos* | os2-emx* | windows32-*)
Jerry James 6443e6a
+  nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
Jerry James 6443e6a
+  linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
bd333ef
+  knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \
bd333ef
+  kopensolaris*-gnu* | cloudabi*-eabi* | \
Jerry James 6443e6a
+  storm-chaos* | os2-emx* | rtmk-nova*)
Jerry James 6443e6a
     os=-$maybe_os
Jerry James 6443e6a
     basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
Jerry James 6443e6a
     ;;
Jerry James 6443e6a
+  android-linux)
Jerry James 6443e6a
+    os=-linux-android
Jerry James 6443e6a
+    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
Jerry James 6443e6a
+    ;;
Jerry James 6443e6a
   *)
Jerry James 6443e6a
     basic_machine=`echo $1 | sed 's/-[^-]*$//'`
Jerry James 6443e6a
     if [ $basic_machine != $1 ]
bd333ef
@@ -143,10 +148,13 @@ case $os in
Jerry James 6443e6a
 	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
Jerry James 6443e6a
 	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
Jerry James 6443e6a
 	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
Jerry James 6443e6a
-	-apple | -axis)
Jerry James 6443e6a
+	-apple | -axis | -knuth | -cray | -microblaze*)
Jerry James 6443e6a
 		os=
Jerry James 6443e6a
 		basic_machine=$1
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	-bluegene*)
Jerry James 6443e6a
+		os=-cnk
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	-sim | -cisco | -oki | -wec | -winbond)
Jerry James 6443e6a
 		os=
Jerry James 6443e6a
 		basic_machine=$1
bd333ef
@@ -161,13 +169,17 @@ case $os in
Jerry James 6443e6a
 		os=-chorusos
Jerry James 6443e6a
 		basic_machine=$1
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
- 	-chorusrdb)
Jerry James 6443e6a
- 		os=-chorusrdb
Jerry James 6443e6a
+	-chorusrdb)
Jerry James 6443e6a
+		os=-chorusrdb
Jerry James 6443e6a
 		basic_machine=$1
Jerry James 6443e6a
- 		;;
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	-hiux*)
Jerry James 6443e6a
 		os=-hiuxwe2
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	-sco6)
Jerry James 6443e6a
+		os=-sco5v6
Jerry James 6443e6a
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	-sco5)
Jerry James 6443e6a
 		os=-sco3.2v5
Jerry James 6443e6a
 		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
bd333ef
@@ -184,6 +196,10 @@ case $os in
Jerry James 6443e6a
 		# Don't forget version if it is 3.2v4 or newer.
Jerry James 6443e6a
 		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	-sco5v6*)
Jerry James 6443e6a
+		# Don't forget version if it is 3.2v4 or newer.
Jerry James 6443e6a
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	-sco*)
Jerry James 6443e6a
 		os=-sco3.2v2
Jerry James 6443e6a
 		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
bd333ef
@@ -201,6 +217,12 @@ case $os in
Jerry James 6443e6a
 	-isc*)
Jerry James 6443e6a
 		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	-lynx*178)
Jerry James 6443e6a
+		os=-lynxos178
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	-lynx*5)
Jerry James 6443e6a
+		os=-lynxos5
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	-lynx*)
Jerry James 6443e6a
 		os=-lynxos
Jerry James 6443e6a
 		;;
bd333ef
@@ -225,43 +247,114 @@ case $basic_machine in
Jerry James 6443e6a
 	# Some are omitted here because they have special meanings below.
Jerry James 6443e6a
 	1750a | 580 \
Jerry James 6443e6a
 	| a29k \
Jerry James 6443e6a
+	| aarch64 | aarch64_be \
Jerry James 6443e6a
 	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
Jerry James 6443e6a
-	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
Jerry James e09f18d
-	| c4x | clipper \
Jerry James e09f18d
-	| d10v | d30v | dsp16xx \
Jerry James e09f18d
-	| fr30 \
Jerry James 6443e6a
+	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
Jerry James 6443e6a
+	| am33_2.0 \
Jerry James e09f18d
+	| arc | arceb \
Jerry James e09f18d
+	| arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
Jerry James e09f18d
+	| avr | avr32 \
bd333ef
+	| ba \
Jerry James e09f18d
+	| be32 | be64 \
Jerry James 6443e6a
+	| bfin \
Jerry James e09f18d
+	| c4x | c8051 | clipper \
Jerry James 6443e6a
+	| d10v | d30v | dlx | dsp16xx \
bd333ef
+	| e2k | epiphany \
bd333ef
+	| fido | fr30 | frv | ft32 \
Jerry James 6443e6a
 	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
Jerry James 6443e6a
+	| hexagon \
Jerry James 6443e6a
 	| i370 | i860 | i960 | ia64 \
Jerry James 6443e6a
-	| m32r | m68000 | m68k | m88k | mcore \
Jerry James 6443e6a
-	| mips16 | mips64 | mips64el | mips64orion | mips64orionel \
Jerry James 6443e6a
-	| mips64vr4100 | mips64vr4100el | mips64vr4300 \
Jerry James 6443e6a
-	| mips64vr4300el | mips64vr5000 | mips64vr5000el \
Jerry James 6443e6a
-	| mipsbe | mipseb | mipsel | mipsle | mipstx39 | mipstx39el \
Jerry James 6443e6a
-	| mipsisa32 \
Jerry James 6443e6a
+	| ip2k | iq2000 \
Jerry James e09f18d
+	| k1om \
Jerry James 6443e6a
+	| le32 | le64 \
Jerry James 6443e6a
+	| lm32 \
Jerry James 6443e6a
+	| m32c | m32r | m32rle | m68000 | m68k | m88k \
Jerry James 6443e6a
+	| maxq | mb | microblaze | microblazeel | mcore | mep | metag \
Jerry James 6443e6a
+	| mips | mipsbe | mipseb | mipsel | mipsle \
Jerry James 6443e6a
+	| mips16 \
Jerry James 6443e6a
+	| mips64 | mips64el \
Jerry James 6443e6a
+	| mips64octeon | mips64octeonel \
Jerry James 6443e6a
+	| mips64orion | mips64orionel \
Jerry James 6443e6a
+	| mips64r5900 | mips64r5900el \
Jerry James 6443e6a
+	| mips64vr | mips64vrel \
Jerry James 6443e6a
+	| mips64vr4100 | mips64vr4100el \
Jerry James 6443e6a
+	| mips64vr4300 | mips64vr4300el \
Jerry James 6443e6a
+	| mips64vr5000 | mips64vr5000el \
Jerry James 6443e6a
+	| mips64vr5900 | mips64vr5900el \
Jerry James 6443e6a
+	| mipsisa32 | mipsisa32el \
Jerry James 6443e6a
+	| mipsisa32r2 | mipsisa32r2el \
bd333ef
+	| mipsisa32r6 | mipsisa32r6el \
Jerry James 6443e6a
+	| mipsisa64 | mipsisa64el \
Jerry James 6443e6a
+	| mipsisa64r2 | mipsisa64r2el \
bd333ef
+	| mipsisa64r6 | mipsisa64r6el \
Jerry James 6443e6a
+	| mipsisa64sb1 | mipsisa64sb1el \
Jerry James 6443e6a
+	| mipsisa64sr71k | mipsisa64sr71kel \
Jerry James e09f18d
+	| mipsr5900 | mipsr5900el \
Jerry James 6443e6a
+	| mipstx39 | mipstx39el \
Jerry James 6443e6a
 	| mn10200 | mn10300 \
Jerry James 6443e6a
+	| moxie \
Jerry James 6443e6a
+	| mt \
Jerry James 6443e6a
+	| msp430 \
Jerry James 6443e6a
+	| nds32 | nds32le | nds32be \
Jerry James e09f18d
+	| nios | nios2 | nios2eb | nios2el \
Jerry James 6443e6a
 	| ns16k | ns32k \
Jerry James 6443e6a
-	| openrisc \
bd333ef
+	| open8 | or1k | or1knd | or32 \
Jerry James 6443e6a
 	| pdp10 | pdp11 | pj | pjl \
Jerry James 6443e6a
-	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
Jerry James 6443e6a
+	| powerpc | powerpc64 | powerpc64le | powerpcle \
Jerry James 6443e6a
 	| pyramid \
Jerry James 6443e6a
-	| s390 | s390x \
Jerry James 6443e6a
-	| sh | sh[34] | sh[34]eb | shbe | shle \
Jerry James 6443e6a
-	| sparc | sparc64 | sparclet | sparclite | sparcv9 | sparcv9b \
Jerry James 6443e6a
-	| stormy16 | strongarm \
Jerry James 6443e6a
-	| tahoe | thumb | tic80 | tron \
Jerry James 6443e6a
-	| v850 \
bd333ef
+	| riscv32 | riscv64 \
Jerry James 6443e6a
+	| rl78 | rx \
Jerry James 6443e6a
+	| score \
bd333ef
+	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
Jerry James 6443e6a
+	| sh64 | sh64le \
Jerry James 6443e6a
+	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
Jerry James 6443e6a
+	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
Jerry James 6443e6a
+	| spu \
Jerry James 6443e6a
+	| tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
Jerry James 6443e6a
+	| ubicom32 \
Jerry James 6443e6a
+	| v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
bd333ef
+	| visium \
Jerry James 6443e6a
 	| we32k \
Jerry James 6443e6a
-	| x86 | xscale \
Jerry James 6443e6a
-	| z8k)
Jerry James 6443e6a
+	| x86 | xc16x | xstormy16 | xtensa \
Jerry James 6443e6a
+	| z8k | z80)
Jerry James 6443e6a
 		basic_machine=$basic_machine-unknown
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-	m6811 | m68hc11 | m6812 | m68hc12)
Jerry James 6443e6a
-		# Motorola 68HC11/12.
Jerry James 6443e6a
+	c54x)
Jerry James 6443e6a
+		basic_machine=tic54x-unknown
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	c55x)
Jerry James 6443e6a
+		basic_machine=tic55x-unknown
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	c6x)
Jerry James 6443e6a
+		basic_machine=tic6x-unknown
Jerry James 6443e6a
+		;;
bd333ef
+	leon|leon[3-9])
bd333ef
+		basic_machine=sparc-$basic_machine
bd333ef
+		;;
Jerry James e09f18d
+	m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
Jerry James 6443e6a
 		basic_machine=$basic_machine-unknown
Jerry James 6443e6a
 		os=-none
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	ms1)
Jerry James 6443e6a
+		basic_machine=mt-unknown
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+
Jerry James 6443e6a
+	strongarm | thumb | xscale)
Jerry James 6443e6a
+		basic_machine=arm-unknown
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	xgate)
Jerry James 6443e6a
+		basic_machine=$basic_machine-unknown
Jerry James 6443e6a
+		os=-none
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	xscaleeb)
Jerry James 6443e6a
+		basic_machine=armeb-unknown
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+
Jerry James 6443e6a
+	xscaleel)
Jerry James 6443e6a
+		basic_machine=armel-unknown
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 
Jerry James 6443e6a
 	# We use `pc' rather than `unknown'
Jerry James 6443e6a
 	# because (1) that's what they normally are, and
bd333ef
@@ -277,41 +370,89 @@ case $basic_machine in
Jerry James 6443e6a
 	# Recognize the basic CPU types with company name.
Jerry James 6443e6a
 	580-* \
Jerry James 6443e6a
 	| a29k-* \
Jerry James 6443e6a
+	| aarch64-* | aarch64_be-* \
Jerry James 6443e6a
 	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
Jerry James 6443e6a
-	| alphapca5[67]-* | arc-* \
Jerry James 6443e6a
-	| arm-*  | armbe-* | armle-* | armv*-* \
Jerry James 6443e6a
-	| bs2000-* \
Jerry James 6443e6a
-	| c[123]* | c30-* | [cjt]90-* | c54x-* \
Jerry James 6443e6a
-	| clipper-* | cray2-* | cydra-* \
Jerry James 6443e6a
-	| d10v-* | d30v-* \
bd333ef
-	| elxsi-* \
bd333ef
-	| f30[01]-* | f700-* | fr30-* | fx80-* \
Jerry James 6443e6a
+	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
Jerry James e09f18d
+	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
Jerry James 6443e6a
+	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
Jerry James 6443e6a
+	| avr-* | avr32-* \
bd333ef
+	| ba-* \
Jerry James 6443e6a
+	| be32-* | be64-* \
Jerry James 6443e6a
+	| bfin-* | bs2000-* \
Jerry James 6443e6a
+	| c[123]* | c30-* | [cjt]90-* | c4x-* \
Jerry James e09f18d
+	| c8051-* | clipper-* | craynv-* | cydra-* \
Jerry James 6443e6a
+	| d10v-* | d30v-* | dlx-* \
bd333ef
+	| e2k-* | elxsi-* \
Jerry James 6443e6a
+	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
Jerry James 6443e6a
 	| h8300-* | h8500-* \
Jerry James 6443e6a
 	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
Jerry James 6443e6a
+	| hexagon-* \
Jerry James 6443e6a
 	| i*86-* | i860-* | i960-* | ia64-* \
Jerry James 6443e6a
-	| m32r-* \
Jerry James 6443e6a
-	| m68000-* | m680[01234]0-* | m68360-* | m683?2-* | m68k-* \
Jerry James 6443e6a
-	| m88110-* | m88k-* | mcore-* \
Jerry James 6443e6a
-	| mips-* | mips16-* | mips64-* | mips64el-* | mips64orion-* \
Jerry James 6443e6a
-	| mips64orionel-* | mips64vr4100-* | mips64vr4100el-* \
Jerry James 6443e6a
-	| mips64vr4300-* | mips64vr4300el-* | mipsbe-* | mipseb-* \
Jerry James 6443e6a
-	| mipsle-* | mipsel-* | mipstx39-* | mipstx39el-* \
Jerry James 6443e6a
+	| ip2k-* | iq2000-* \
Jerry James e09f18d
+	| k1om-* \
Jerry James 6443e6a
+	| le32-* | le64-* \
Jerry James 6443e6a
+	| lm32-* \
Jerry James 6443e6a
+	| m32c-* | m32r-* | m32rle-* \
Jerry James 6443e6a
+	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
Jerry James 6443e6a
+	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
Jerry James 6443e6a
+	| microblaze-* | microblazeel-* \
Jerry James 6443e6a
+	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
Jerry James 6443e6a
+	| mips16-* \
Jerry James 6443e6a
+	| mips64-* | mips64el-* \
Jerry James 6443e6a
+	| mips64octeon-* | mips64octeonel-* \
Jerry James 6443e6a
+	| mips64orion-* | mips64orionel-* \
Jerry James 6443e6a
+	| mips64r5900-* | mips64r5900el-* \
Jerry James 6443e6a
+	| mips64vr-* | mips64vrel-* \
Jerry James 6443e6a
+	| mips64vr4100-* | mips64vr4100el-* \
Jerry James 6443e6a
+	| mips64vr4300-* | mips64vr4300el-* \
Jerry James 6443e6a
+	| mips64vr5000-* | mips64vr5000el-* \
Jerry James 6443e6a
+	| mips64vr5900-* | mips64vr5900el-* \
Jerry James 6443e6a
+	| mipsisa32-* | mipsisa32el-* \
Jerry James 6443e6a
+	| mipsisa32r2-* | mipsisa32r2el-* \
bd333ef
+	| mipsisa32r6-* | mipsisa32r6el-* \
Jerry James 6443e6a
+	| mipsisa64-* | mipsisa64el-* \
Jerry James 6443e6a
+	| mipsisa64r2-* | mipsisa64r2el-* \
bd333ef
+	| mipsisa64r6-* | mipsisa64r6el-* \
Jerry James 6443e6a
+	| mipsisa64sb1-* | mipsisa64sb1el-* \
Jerry James 6443e6a
+	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
Jerry James e09f18d
+	| mipsr5900-* | mipsr5900el-* \
Jerry James 6443e6a
+	| mipstx39-* | mipstx39el-* \
Jerry James 6443e6a
+	| mmix-* \
Jerry James 6443e6a
+	| mt-* \
Jerry James 6443e6a
+	| msp430-* \
Jerry James 6443e6a
+	| nds32-* | nds32le-* | nds32be-* \
Jerry James e09f18d
+	| nios-* | nios2-* | nios2eb-* | nios2el-* \
Jerry James 6443e6a
 	| none-* | np1-* | ns16k-* | ns32k-* \
Jerry James 6443e6a
+	| open8-* \
bd333ef
+	| or1k*-* \
Jerry James 6443e6a
 	| orion-* \
Jerry James 6443e6a
 	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
Jerry James 6443e6a
-	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
Jerry James 6443e6a
+	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
Jerry James 6443e6a
 	| pyramid-* \
Jerry James 6443e6a
-	| romp-* | rs6000-* \
Jerry James 6443e6a
-	| s390-* | s390x-* \
Jerry James 6443e6a
-	| sh-* | sh[34]-* | sh[34]eb-* | shbe-* | shle-* \
Jerry James 6443e6a
-	| sparc-* | sparc64-* | sparc86x-* | sparclite-* \
Jerry James 6443e6a
-	| sparcv9-* | sparcv9b-* | stormy16-* | strongarm-* | sv1-* \
Jerry James 6443e6a
-	| t3e-* | tahoe-* | thumb-* | tic30-* | tic54x-* | tic80-* | tron-* \
Jerry James 6443e6a
-	| v850-* | vax-* \
bd333ef
+	| riscv32-* | riscv64-* \
Jerry James 6443e6a
+	| rl78-* | romp-* | rs6000-* | rx-* \
Jerry James 6443e6a
+	| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
Jerry James 6443e6a
+	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
Jerry James 6443e6a
+	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
Jerry James 6443e6a
+	| sparclite-* \
bd333ef
+	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \
Jerry James 6443e6a
+	| tahoe-* \
Jerry James 6443e6a
+	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
Jerry James 6443e6a
+	| tile*-* \
Jerry James 6443e6a
+	| tron-* \
Jerry James 6443e6a
+	| ubicom32-* \
Jerry James 6443e6a
+	| v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
Jerry James 6443e6a
+	| vax-* \
bd333ef
+	| visium-* \
Jerry James 6443e6a
 	| we32k-* \
Jerry James 6443e6a
-	| x86-* | x86_64-* | xmp-* | xps100-* | xscale-* \
Jerry James 6443e6a
+	| x86-* | x86_64-* | xc16x-* | xps100-* \
Jerry James 6443e6a
+	| xstormy16-* | xtensa*-* \
Jerry James 6443e6a
 	| ymp-* \
Jerry James 6443e6a
-	| z8k-*)
Jerry James 6443e6a
+	| z8k-* | z80-*)
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	# Recognize the basic CPU types without company name, with glob match.
Jerry James 6443e6a
+	xtensa*)
Jerry James 6443e6a
+		basic_machine=$basic_machine-unknown
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	# Recognize the various machine names and aliases which stand
Jerry James 6443e6a
 	# for a CPU type and a company and sometimes even an OS.
bd333ef
@@ -329,6 +470,9 @@ case $basic_machine in
Jerry James 6443e6a
 		basic_machine=a29k-amd
Jerry James 6443e6a
 		os=-udi
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	abacus)
Jerry James 6443e6a
+		basic_machine=abacus-unknown
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	adobe68k)
Jerry James 6443e6a
 		basic_machine=m68010-adobe
Jerry James 6443e6a
 		os=-scout
bd333ef
@@ -343,6 +487,12 @@ case $basic_machine in
Jerry James 6443e6a
 		basic_machine=a29k-none
Jerry James 6443e6a
 		os=-bsd
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	amd64)
Jerry James 6443e6a
+		basic_machine=x86_64-pc
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	amd64-*)
Jerry James 6443e6a
+		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	amdahl)
Jerry James 6443e6a
 		basic_machine=580-amdahl
Jerry James 6443e6a
 		os=-sysv
bd333ef
@@ -366,6 +516,13 @@ case $basic_machine in
Jerry James 6443e6a
 		basic_machine=m68k-apollo
Jerry James 6443e6a
 		os=-bsd
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	aros)
Jerry James 6443e6a
+		basic_machine=i386-pc
Jerry James 6443e6a
+		os=-aros
Jerry James 6443e6a
+		;;
bd333ef
+	asmjs)
bd333ef
+		basic_machine=asmjs-unknown
bd333ef
+		;;
Jerry James 6443e6a
 	aux)
Jerry James 6443e6a
 		basic_machine=m68k-apple
Jerry James 6443e6a
 		os=-aux
bd333ef
@@ -374,6 +531,35 @@ case $basic_machine in
Jerry James 6443e6a
 		basic_machine=ns32k-sequent
Jerry James 6443e6a
 		os=-dynix
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	blackfin)
Jerry James 6443e6a
+		basic_machine=bfin-unknown
Jerry James 6443e6a
+		os=-linux
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	blackfin-*)
Jerry James 6443e6a
+		basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
Jerry James 6443e6a
+		os=-linux
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	bluegene*)
Jerry James 6443e6a
+		basic_machine=powerpc-ibm
Jerry James 6443e6a
+		os=-cnk
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	c54x-*)
Jerry James 6443e6a
+		basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	c55x-*)
Jerry James 6443e6a
+		basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	c6x-*)
Jerry James 6443e6a
+		basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	c90)
Jerry James 6443e6a
+		basic_machine=c90-cray
Jerry James 6443e6a
+		os=-unicos
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	cegcc)
Jerry James 6443e6a
+		basic_machine=arm-unknown
Jerry James 6443e6a
+		os=-cegcc
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	convex-c1)
Jerry James 6443e6a
 		basic_machine=c1-convex
Jerry James 6443e6a
 		os=-bsd
bd333ef
@@ -394,30 +580,45 @@ case $basic_machine in
Jerry James 6443e6a
 		basic_machine=c38-convex
Jerry James 6443e6a
 		os=-bsd
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-	cray | ymp)
Jerry James 6443e6a
-		basic_machine=ymp-cray
Jerry James 6443e6a
+	cray | j90)
Jerry James 6443e6a
+		basic_machine=j90-cray
Jerry James 6443e6a
 		os=-unicos
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-	cray2)
Jerry James 6443e6a
-		basic_machine=cray2-cray
Jerry James 6443e6a
-		os=-unicos
Jerry James 6443e6a
+	craynv)
Jerry James 6443e6a
+		basic_machine=craynv-cray
Jerry James 6443e6a
+		os=-unicosmp
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-	[cjt]90)
Jerry James 6443e6a
-		basic_machine=${basic_machine}-cray
Jerry James 6443e6a
-		os=-unicos
Jerry James 6443e6a
+	cr16 | cr16-*)
Jerry James 6443e6a
+		basic_machine=cr16-unknown
Jerry James 6443e6a
+		os=-elf
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	crds | unos)
Jerry James 6443e6a
 		basic_machine=m68k-crds
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	crisv32 | crisv32-* | etraxfs*)
Jerry James 6443e6a
+		basic_machine=crisv32-axis
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	cris | cris-* | etrax*)
Jerry James 6443e6a
 		basic_machine=cris-axis
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	crx)
Jerry James 6443e6a
+		basic_machine=crx-unknown
Jerry James 6443e6a
+		os=-elf
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	da30 | da30-*)
Jerry James 6443e6a
 		basic_machine=m68k-da30
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
Jerry James 6443e6a
 		basic_machine=mips-dec
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	decsystem10* | dec10*)
Jerry James 6443e6a
+		basic_machine=pdp10-dec
Jerry James 6443e6a
+		os=-tops10
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	decsystem20* | dec20*)
Jerry James 6443e6a
+		basic_machine=pdp10-dec
Jerry James 6443e6a
+		os=-tops20
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	delta | 3300 | motorola-3300 | motorola-delta \
Jerry James 6443e6a
 	      | 3300-motorola | delta-motorola)
Jerry James 6443e6a
 		basic_machine=m68k-motorola
bd333ef
@@ -426,6 +627,14 @@ case $basic_machine in
Jerry James 6443e6a
 		basic_machine=m88k-motorola
Jerry James 6443e6a
 		os=-sysv3
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	dicos)
Jerry James 6443e6a
+		basic_machine=i686-pc
Jerry James 6443e6a
+		os=-dicos
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	djgpp)
Jerry James 6443e6a
+		basic_machine=i586-pc
Jerry James 6443e6a
+		os=-msdosdjgpp
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	dpx20 | dpx20-*)
Jerry James 6443e6a
 		basic_machine=rs6000-bull
Jerry James 6443e6a
 		os=-bosx
bd333ef
@@ -434,6 +643,14 @@ case $basic_machine in
bd333ef
 		basic_machine=m68k-bull
bd333ef
 		os=-sysv3
bd333ef
 		;;
bd333ef
+	e500v[12])
bd333ef
+		basic_machine=powerpc-unknown
bd333ef
+		os=$os"spe"
bd333ef
+		;;
bd333ef
+	e500v[12]-*)
bd333ef
+		basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
bd333ef
+		os=$os"spe"
bd333ef
+		;;
bd333ef
 	ebmon29k)
bd333ef
 		basic_machine=a29k-amd
bd333ef
 		os=-ebmon
bd333ef
@@ -537,7 +754,6 @@ case $basic_machine in
Jerry James 6443e6a
 	i370-ibm* | ibm*)
Jerry James 6443e6a
 		basic_machine=i370-ibm
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-# I'm not sure what "Sysv32" means.  Should this be sysv3.2?
Jerry James 6443e6a
 	i*86v32)
Jerry James 6443e6a
 		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
Jerry James 6443e6a
 		os=-sysv32
bd333ef
@@ -576,6 +792,17 @@ case $basic_machine in
Jerry James 6443e6a
 		basic_machine=m68k-isi
Jerry James 6443e6a
 		os=-sysv
Jerry James 6443e6a
 		;;
bd333ef
+	leon-*|leon[3-9]-*)
bd333ef
+		basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'`
bd333ef
+		;;
Jerry James 6443e6a
+	m68knommu)
Jerry James 6443e6a
+		basic_machine=m68k-unknown
Jerry James 6443e6a
+		os=-linux
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	m68knommu-*)
Jerry James 6443e6a
+		basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
Jerry James 6443e6a
+		os=-linux
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	m88k-omron*)
Jerry James 6443e6a
 		basic_machine=m88k-omron
Jerry James 6443e6a
 		;;
bd333ef
@@ -587,10 +814,21 @@ case $basic_machine in
Jerry James 6443e6a
 		basic_machine=ns32k-utek
Jerry James 6443e6a
 		os=-sysv
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	microblaze*)
Jerry James 6443e6a
+		basic_machine=microblaze-xilinx
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	mingw64)
Jerry James 6443e6a
+		basic_machine=x86_64-pc
Jerry James 6443e6a
+		os=-mingw64
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	mingw32)
Jerry James e09f18d
-		basic_machine=i386-pc
Jerry James e09f18d
+		basic_machine=i686-pc
Jerry James 6443e6a
 		os=-mingw32
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	mingw32ce)
Jerry James 6443e6a
+		basic_machine=arm-unknown
Jerry James 6443e6a
+		os=-mingw32ce
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	miniframe)
Jerry James 6443e6a
 		basic_machine=m68000-convergent
Jerry James 6443e6a
 		;;
bd333ef
@@ -598,36 +836,43 @@ case $basic_machine in
Jerry James 6443e6a
 		basic_machine=m68k-atari
Jerry James 6443e6a
 		os=-mint
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-	mipsel*-linux*)
Jerry James 6443e6a
-		basic_machine=mipsel-unknown
Jerry James 6443e6a
-		os=-linux-gnu
Jerry James 6443e6a
-		;;
Jerry James 6443e6a
-	mips*-linux*)
Jerry James 6443e6a
-		basic_machine=mips-unknown
Jerry James 6443e6a
-		os=-linux-gnu
Jerry James 6443e6a
-		;;
Jerry James 6443e6a
 	mips3*-*)
Jerry James 6443e6a
 		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	mips3*)
Jerry James 6443e6a
 		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-	mmix*)
Jerry James 6443e6a
-		basic_machine=mmix-knuth
Jerry James 6443e6a
-		os=-mmixware
Jerry James 6443e6a
-		;;
Jerry James 6443e6a
 	monitor)
Jerry James 6443e6a
 		basic_machine=m68k-rom68k
Jerry James 6443e6a
 		os=-coff
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	morphos)
Jerry James 6443e6a
+		basic_machine=powerpc-unknown
Jerry James 6443e6a
+		os=-morphos
Jerry James 6443e6a
+		;;
bd333ef
+	moxiebox)
bd333ef
+		basic_machine=moxie-unknown
bd333ef
+		os=-moxiebox
bd333ef
+		;;
Jerry James 6443e6a
 	msdos)
Jerry James 6443e6a
 		basic_machine=i386-pc
Jerry James 6443e6a
 		os=-msdos
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	ms1-*)
Jerry James 6443e6a
+		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	msys)
Jerry James e09f18d
+		basic_machine=i686-pc
Jerry James 6443e6a
+		os=-msys
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	mvs)
Jerry James 6443e6a
 		basic_machine=i370-ibm
Jerry James 6443e6a
 		os=-mvs
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	nacl)
Jerry James 6443e6a
+		basic_machine=le32-unknown
Jerry James 6443e6a
+		os=-nacl
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	ncr3000)
Jerry James 6443e6a
 		basic_machine=i486-ncr
Jerry James 6443e6a
 		os=-sysv4
bd333ef
@@ -692,6 +937,12 @@ case $basic_machine in
Jerry James 6443e6a
 	np1)
Jerry James 6443e6a
 		basic_machine=np1-gould
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	neo-tandem)
Jerry James 6443e6a
+		basic_machine=neo-tandem
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	nse-tandem)
Jerry James 6443e6a
+		basic_machine=nse-tandem
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	nsr-tandem)
Jerry James 6443e6a
 		basic_machine=nsr-tandem
Jerry James 6443e6a
 		;;
bd333ef
@@ -699,6 +950,13 @@ case $basic_machine in
Jerry James 6443e6a
 		basic_machine=hppa1.1-oki
Jerry James 6443e6a
 		os=-proelf
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	openrisc | openrisc-*)
Jerry James 6443e6a
+		basic_machine=or32-unknown
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	os400)
Jerry James 6443e6a
+		basic_machine=powerpc-ibm
Jerry James 6443e6a
+		os=-os400
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	OSE68000 | ose68000)
Jerry James 6443e6a
 		basic_machine=m68000-ericsson
Jerry James 6443e6a
 		os=-ose
bd333ef
@@ -715,55 +973,76 @@ case $basic_machine in
Jerry James 6443e6a
 		basic_machine=i860-intel
Jerry James 6443e6a
 		os=-osf
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	parisc)
Jerry James 6443e6a
+		basic_machine=hppa-unknown
Jerry James 6443e6a
+		os=-linux
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	parisc-*)
Jerry James 6443e6a
+		basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
Jerry James 6443e6a
+		os=-linux
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	pbd)
Jerry James 6443e6a
 		basic_machine=sparc-tti
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	pbb)
Jerry James 6443e6a
 		basic_machine=m68k-tti
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-        pc532 | pc532-*)
Jerry James 6443e6a
+	pc532 | pc532-*)
Jerry James 6443e6a
 		basic_machine=ns32k-pc532
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-	pentium | p5 | k5 | k6 | nexgen)
Jerry James 6443e6a
+	pc98)
Jerry James 6443e6a
+		basic_machine=i386-pc
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	pc98-*)
Jerry James 6443e6a
+		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	pentium | p5 | k5 | k6 | nexgen | viac3)
Jerry James 6443e6a
 		basic_machine=i586-pc
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-	pentiumpro | p6 | 6x86 | athlon)
Jerry James 6443e6a
+	pentiumpro | p6 | 6x86 | athlon | athlon_*)
Jerry James 6443e6a
 		basic_machine=i686-pc
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-	pentiumii | pentium2)
Jerry James 6443e6a
+	pentiumii | pentium2 | pentiumiii | pentium3)
Jerry James 6443e6a
 		basic_machine=i686-pc
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-	pentium-* | p5-* | k5-* | k6-* | nexgen-*)
Jerry James 6443e6a
+	pentium4)
Jerry James 6443e6a
+		basic_machine=i786-pc
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
Jerry James 6443e6a
 		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	pentiumpro-* | p6-* | 6x86-* | athlon-*)
Jerry James 6443e6a
 		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-	pentiumii-* | pentium2-*)
Jerry James 6443e6a
+	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
Jerry James 6443e6a
 		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	pentium4-*)
Jerry James 6443e6a
+		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	pn)
Jerry James 6443e6a
 		basic_machine=pn-gould
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	power)	basic_machine=power-ibm
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-	ppc)	basic_machine=powerpc-unknown
Jerry James 6443e6a
-	        ;;
Jerry James 6443e6a
-	ppc-*)	basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
Jerry James 6443e6a
+	ppc | ppcbe)	basic_machine=powerpc-unknown
bd333ef
 		;;
bd333ef
-	ppcle | powerpclittle | ppc-le | powerpc-little)
Jerry James 6443e6a
+	ppc-* | ppcbe-*)
Jerry James 6443e6a
+		basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
bd333ef
+		;;
bd333ef
+	ppcle | powerpclittle)
Jerry James 6443e6a
 		basic_machine=powerpcle-unknown
Jerry James 6443e6a
-	        ;;
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	ppcle-* | powerpclittle-*)
Jerry James 6443e6a
 		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	ppc64)	basic_machine=powerpc64-unknown
Jerry James 6443e6a
-	        ;;
Jerry James 6443e6a
+		;;
bd333ef
 	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
Jerry James 6443e6a
 		;;
bd333ef
-	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
bd333ef
+	ppc64le | powerpc64little)
Jerry James 6443e6a
 		basic_machine=powerpc64le-unknown
Jerry James 6443e6a
-	        ;;
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	ppc64le-* | powerpc64little-*)
Jerry James 6443e6a
 		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
Jerry James 6443e6a
 		;;
bd333ef
@@ -774,6 +1053,14 @@ case $basic_machine in
Jerry James 6443e6a
 		basic_machine=i586-unknown
Jerry James 6443e6a
 		os=-pw32
Jerry James 6443e6a
 		;;
Jerry James e09f18d
+	rdos | rdos64)
Jerry James e09f18d
+		basic_machine=x86_64-pc
Jerry James e09f18d
+		os=-rdos
Jerry James e09f18d
+		;;
Jerry James e09f18d
+	rdos32)
Jerry James 6443e6a
+		basic_machine=i386-pc
Jerry James 6443e6a
+		os=-rdos
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	rom68k)
Jerry James 6443e6a
 		basic_machine=m68k-rom68k
Jerry James 6443e6a
 		os=-coff
bd333ef
@@ -784,10 +1071,30 @@ case $basic_machine in
Jerry James 6443e6a
 	rtpc | rtpc-*)
Jerry James 6443e6a
 		basic_machine=romp-ibm
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	s390 | s390-*)
Jerry James 6443e6a
+		basic_machine=s390-ibm
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	s390x | s390x-*)
Jerry James 6443e6a
+		basic_machine=s390x-ibm
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	sa29200)
Jerry James 6443e6a
 		basic_machine=a29k-amd
Jerry James 6443e6a
 		os=-udi
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	sb1)
Jerry James 6443e6a
+		basic_machine=mipsisa64sb1-unknown
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	sb1el)
Jerry James 6443e6a
+		basic_machine=mipsisa64sb1el-unknown
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	sde)
Jerry James 6443e6a
+		basic_machine=mipsisa32-sde
Jerry James 6443e6a
+		os=-elf
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	sei)
Jerry James 6443e6a
+		basic_machine=mips-sei
Jerry James 6443e6a
+		os=-seiux
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	sequent)
Jerry James 6443e6a
 		basic_machine=i386-sequent
Jerry James 6443e6a
 		;;
bd333ef
@@ -795,7 +1102,13 @@ case $basic_machine in
Jerry James 6443e6a
 		basic_machine=sh-hitachi
Jerry James 6443e6a
 		os=-hms
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-	sparclite-wrs)
Jerry James 6443e6a
+	sh5el)
Jerry James 6443e6a
+		basic_machine=sh5le-unknown
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	sh64)
Jerry James 6443e6a
+		basic_machine=sh64-unknown
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	sparclite-wrs | simso-wrs)
Jerry James 6443e6a
 		basic_machine=sparclite-wrs
Jerry James 6443e6a
 		os=-vxworks
Jerry James 6443e6a
 		;;
bd333ef
@@ -813,6 +1126,9 @@ case $basic_machine in
Jerry James 6443e6a
 		basic_machine=i860-stratus
Jerry James 6443e6a
 		os=-sysv4
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	strongarm-* | thumb-*)
Jerry James 6443e6a
+		basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	sun2)
Jerry James 6443e6a
 		basic_machine=m68000-sun
Jerry James 6443e6a
 		;;
bd333ef
@@ -862,12 +1178,16 @@ case $basic_machine in
Jerry James 6443e6a
 		os=-dynix
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	t3e)
Jerry James 6443e6a
-		basic_machine=t3e-cray
Jerry James 6443e6a
+		basic_machine=alphaev5-cray
Jerry James 6443e6a
 		os=-unicos
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-	tic54x | c54x*)
Jerry James 6443e6a
-		basic_machine=tic54x-unknown
Jerry James 6443e6a
-		os=-coff
Jerry James 6443e6a
+	t90)
Jerry James 6443e6a
+		basic_machine=t90-cray
Jerry James 6443e6a
+		os=-unicos
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	tile*)
Jerry James 6443e6a
+		basic_machine=$basic_machine-unknown
Jerry James 6443e6a
+		os=-linux-gnu
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	tx39)
Jerry James 6443e6a
 		basic_machine=mipstx39-unknown
bd333ef
@@ -875,9 +1195,17 @@ case $basic_machine in
Jerry James 6443e6a
 	tx39el)
Jerry James 6443e6a
 		basic_machine=mipstx39el-unknown
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	toad1)
Jerry James 6443e6a
+		basic_machine=pdp10-xkl
Jerry James 6443e6a
+		os=-tops20
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	tower | tower-32)
Jerry James 6443e6a
 		basic_machine=m68k-ncr
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	tpf)
Jerry James 6443e6a
+		basic_machine=s390x-ibm
Jerry James 6443e6a
+		os=-tpf
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	udi29k)
Jerry James 6443e6a
 		basic_machine=a29k-amd
Jerry James 6443e6a
 		os=-udi
bd333ef
@@ -899,8 +1227,8 @@ case $basic_machine in
Jerry James 6443e6a
 		os=-vms
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	vpp*|vx|vx-*)
Jerry James 6443e6a
-               basic_machine=f301-fujitsu
Jerry James 6443e6a
-               ;;
Jerry James 6443e6a
+		basic_machine=f301-fujitsu
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	vxworks960)
Jerry James 6443e6a
 		basic_machine=i960-wrs
Jerry James 6443e6a
 		os=-vxworks
bd333ef
@@ -921,21 +1249,28 @@ case $basic_machine in
Jerry James 6443e6a
 		basic_machine=hppa1.1-winbond
Jerry James 6443e6a
 		os=-proelf
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-	windows32)
Jerry James 6443e6a
-		basic_machine=i386-pc
Jerry James 6443e6a
-		os=-windows32-msvcrt
Jerry James 6443e6a
-		;;
Jerry James 6443e6a
-	xmp)
Jerry James 6443e6a
-		basic_machine=xmp-cray
Jerry James 6443e6a
-		os=-unicos
Jerry James 6443e6a
+	xbox)
Jerry James 6443e6a
+		basic_machine=i686-pc
Jerry James 6443e6a
+		os=-mingw32
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-        xps | xps100)
Jerry James 6443e6a
+	xps | xps100)
Jerry James 6443e6a
 		basic_machine=xps100-honeywell
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	xscale-* | xscalee[bl]-*)
Jerry James 6443e6a
+		basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	ymp)
Jerry James 6443e6a
+		basic_machine=ymp-cray
Jerry James 6443e6a
+		os=-unicos
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	z8k-*-coff)
Jerry James 6443e6a
 		basic_machine=z8k-unknown
Jerry James 6443e6a
 		os=-sim
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	z80-*-coff)
Jerry James 6443e6a
+		basic_machine=z80-unknown
Jerry James 6443e6a
+		os=-sim
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	none)
Jerry James 6443e6a
 		basic_machine=none-none
Jerry James 6443e6a
 		os=-none
bd333ef
@@ -952,16 +1287,12 @@ case $basic_machine in
Jerry James 6443e6a
 	op60c)
Jerry James 6443e6a
 		basic_machine=hppa1.1-oki
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-	mips)
Jerry James 6443e6a
-		if [ x$os = x-linux-gnu ]; then
Jerry James 6443e6a
-			basic_machine=mips-unknown
Jerry James 6443e6a
-		else
Jerry James 6443e6a
-			basic_machine=mips-mips
Jerry James 6443e6a
-		fi
Jerry James 6443e6a
-		;;
Jerry James 6443e6a
 	romp)
Jerry James 6443e6a
 		basic_machine=romp-ibm
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	mmix)
Jerry James 6443e6a
+		basic_machine=mmix-knuth
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	rs6000)
Jerry James 6443e6a
 		basic_machine=rs6000-ibm
Jerry James 6443e6a
 		;;
bd333ef
@@ -978,13 +1309,13 @@ case $basic_machine in
Jerry James 6443e6a
 	we32k)
Jerry James 6443e6a
 		basic_machine=we32k-att
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-	sh3 | sh4 | sh3eb | sh4eb)
Jerry James 6443e6a
+	sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
Jerry James 6443e6a
 		basic_machine=sh-unknown
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-	sparc | sparcv9 | sparcv9b)
Jerry James 6443e6a
+	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
Jerry James 6443e6a
 		basic_machine=sparc-sun
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-        cydra)
Jerry James 6443e6a
+	cydra)
Jerry James 6443e6a
 		basic_machine=cydra-cydrome
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	orion)
bd333ef
@@ -999,10 +1330,6 @@ case $basic_machine in
Jerry James 6443e6a
 	pmac | pmac-mpw)
Jerry James 6443e6a
 		basic_machine=powerpc-apple
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-	c4x*)
Jerry James 6443e6a
-		basic_machine=c4x-none
Jerry James 6443e6a
-		os=-coff
Jerry James 6443e6a
-		;;
Jerry James 6443e6a
 	*-unknown)
Jerry James 6443e6a
 		# Make sure to match an already-canonicalized machine name.
Jerry James 6443e6a
 		;;
bd333ef
@@ -1029,9 +1356,12 @@ esac
Jerry James 6443e6a
 if [ x"$os" != x"" ]
Jerry James 6443e6a
 then
Jerry James 6443e6a
 case $os in
Jerry James 6443e6a
-        # First match some system type aliases
Jerry James 6443e6a
-        # that might get confused with valid system types.
Jerry James 6443e6a
+	# First match some system type aliases
Jerry James 6443e6a
+	# that might get confused with valid system types.
Jerry James 6443e6a
 	# -solaris* is a basic system type, with this one exception.
Jerry James 6443e6a
+	-auroraux)
Jerry James 6443e6a
+		os=-auroraux
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	-solaris1 | -solaris1.*)
Jerry James 6443e6a
 		os=`echo $os | sed -e 's|solaris1|sunos4|'`
Jerry James 6443e6a
 		;;
bd333ef
@@ -1052,23 +1382,32 @@ case $os in
Jerry James 6443e6a
 	# Each alternative MUST END IN A *, to match a version number.
Jerry James 6443e6a
 	# -sysv* is not here because it comes later, after sysvr4.
Jerry James 6443e6a
 	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
Jerry James 6443e6a
-	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
Jerry James 6443e6a
-	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
Jerry James 6443e6a
+	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
Jerry James 6443e6a
+	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
Jerry James e09f18d
+	      | -sym* | -kopensolaris* | -plan9* \
Jerry James 6443e6a
 	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
Jerry James 6443e6a
-	      | -aos* \
bd333ef
+	      | -aos* | -aros* | -cloudabi* | -sortix* \
Jerry James 6443e6a
 	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
Jerry James 6443e6a
 	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
Jerry James 6443e6a
-	      | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
Jerry James 6443e6a
-	      | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
Jerry James 6443e6a
+	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
bd333ef
+	      | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \
Jerry James 6443e6a
+	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
Jerry James 6443e6a
+	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
Jerry James 6443e6a
 	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
Jerry James 6443e6a
 	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
Jerry James 6443e6a
-	      | -chorusos* | -chorusrdb* \
Jerry James 6443e6a
-	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
Jerry James 6443e6a
-	      | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
Jerry James 6443e6a
-	      | -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \
Jerry James 6443e6a
+	      | -chorusos* | -chorusrdb* | -cegcc* \
Jerry James 6443e6a
+	      | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
bd333ef
+	      | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
Jerry James 6443e6a
+	      | -linux-newlib* | -linux-musl* | -linux-uclibc* \
bd333ef
+	      | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
Jerry James 6443e6a
+	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
Jerry James 6443e6a
 	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
Jerry James 6443e6a
 	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
Jerry James 6443e6a
-	      | -os2* | -vos*)
Jerry James 6443e6a
+	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
Jerry James 6443e6a
+	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
Jerry James 6443e6a
+	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
bd333ef
+	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \
bd333ef
+	      | -onefs* | -tirtos* | -phoenix*)
Jerry James 6443e6a
 	# Remember, each alternative MUST END IN *, to match a version number.
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	-qnx*)
bd333ef
@@ -1080,16 +1419,21 @@ case $os in
Jerry James 6443e6a
 			;;
Jerry James 6443e6a
 		esac
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	-nto-qnx*)
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	-nto*)
Jerry James 6443e6a
-		os=-nto-qnx
Jerry James 6443e6a
+		os=`echo $os | sed -e 's|nto|nto-qnx|'`
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
Jerry James 6443e6a
-	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
Jerry James 6443e6a
+	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
Jerry James 6443e6a
 	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	-mac*)
Jerry James 6443e6a
 		os=`echo $os | sed -e 's|mac|macos|'`
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	-linux-dietlibc)
Jerry James 6443e6a
+		os=-linux-dietlibc
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	-linux*)
Jerry James 6443e6a
 		os=`echo $os | sed -e 's|linux|linux-gnu|'`
Jerry James 6443e6a
 		;;
bd333ef
@@ -1102,6 +1446,9 @@ case $os in
Jerry James 6443e6a
 	-opened*)
Jerry James 6443e6a
 		os=-openedition
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	-os400*)
Jerry James 6443e6a
+		os=-os400
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	-wince*)
Jerry James 6443e6a
 		os=-wince
Jerry James 6443e6a
 		;;
bd333ef
@@ -1120,14 +1467,23 @@ case $os in
Jerry James 6443e6a
 	-acis*)
Jerry James 6443e6a
 		os=-aos
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	-atheos*)
Jerry James 6443e6a
+		os=-atheos
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	-syllable*)
Jerry James 6443e6a
+		os=-syllable
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	-386bsd)
Jerry James 6443e6a
 		os=-bsd
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	-ctix* | -uts*)
Jerry James 6443e6a
 		os=-sysv
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	-nova*)
Jerry James 6443e6a
+		os=-rtmk-nova
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	-ns2 )
Jerry James 6443e6a
-	        os=-nextstep2
Jerry James 6443e6a
+		os=-nextstep2
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	-nsk*)
Jerry James 6443e6a
 		os=-nsk
bd333ef
@@ -1139,6 +1495,9 @@ case $os in
Jerry James 6443e6a
 	-sinix*)
Jerry James 6443e6a
 		os=-sysv4
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	-tpf*)
Jerry James 6443e6a
+		os=-tpf
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	-triton*)
Jerry James 6443e6a
 		os=-sysv3
Jerry James 6443e6a
 		;;
bd333ef
@@ -1166,8 +1525,21 @@ case $os in
Jerry James 6443e6a
 	-xenix)
Jerry James 6443e6a
 		os=-xenix
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-        -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
Jerry James 6443e6a
-	        os=-mint
Jerry James 6443e6a
+	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
Jerry James 6443e6a
+		os=-mint
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	-aros*)
Jerry James 6443e6a
+		os=-aros
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	-zvmoe)
Jerry James 6443e6a
+		os=-zvmoe
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	-dicos*)
Jerry James 6443e6a
+		os=-dicos
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	-nacl*)
bd333ef
+		;;
bd333ef
+	-ios)
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	-none)
Jerry James 6443e6a
 		;;
bd333ef
@@ -1191,6 +1563,12 @@ else
Jerry James 6443e6a
 # system, and we'll never get to this point.
Jerry James 6443e6a
 
Jerry James 6443e6a
 case $basic_machine in
Jerry James 6443e6a
+	score-*)
Jerry James 6443e6a
+		os=-elf
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	spu-*)
Jerry James 6443e6a
+		os=-elf
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	*-acorn)
Jerry James 6443e6a
 		os=-riscix1.2
Jerry James 6443e6a
 		;;
bd333ef
@@ -1200,10 +1578,29 @@ case $basic_machine in
Jerry James 6443e6a
 	arm*-semi)
Jerry James 6443e6a
 		os=-aout
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	c4x-* | tic4x-*)
Jerry James 6443e6a
+		os=-coff
Jerry James 6443e6a
+		;;
Jerry James e09f18d
+	c8051-*)
Jerry James e09f18d
+		os=-elf
Jerry James e09f18d
+		;;
Jerry James 6443e6a
+	hexagon-*)
Jerry James 6443e6a
+		os=-elf
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	tic54x-*)
Jerry James 6443e6a
+		os=-coff
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	tic55x-*)
Jerry James 6443e6a
+		os=-coff
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	tic6x-*)
Jerry James 6443e6a
+		os=-coff
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
+	# This must come before the *-dec entry.
Jerry James 6443e6a
 	pdp10-*)
Jerry James 6443e6a
 		os=-tops20
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-        pdp11-*)
Jerry James 6443e6a
+	pdp11-*)
Jerry James 6443e6a
 		os=-none
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	*-dec | vax-*)
bd333ef
@@ -1217,19 +1614,22 @@ case $basic_machine in
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	m68000-sun)
Jerry James 6443e6a
 		os=-sunos3
Jerry James 6443e6a
-		# This also exists in the configure program, but was not the
Jerry James 6443e6a
-		# default.
Jerry James 6443e6a
-		# os=-sunos4
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	m68*-cisco)
Jerry James 6443e6a
 		os=-aout
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	mep-*)
Jerry James 6443e6a
+		os=-elf
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	mips*-cisco)
Jerry James 6443e6a
 		os=-elf
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	mips*-*)
Jerry James 6443e6a
 		os=-elf
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	or32-*)
Jerry James 6443e6a
+		os=-coff
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	*-tti)	# must be before sparc entry or we get the wrong os.
Jerry James 6443e6a
 		os=-sysv3
Jerry James 6443e6a
 		;;
bd333ef
@@ -1239,9 +1639,15 @@ case $basic_machine in
Jerry James 6443e6a
 	*-be)
Jerry James 6443e6a
 		os=-beos
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	*-haiku)
Jerry James 6443e6a
+		os=-haiku
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	*-ibm)
Jerry James 6443e6a
 		os=-aix
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
+	*-knuth)
Jerry James 6443e6a
+		os=-mmixware
Jerry James 6443e6a
+		;;
Jerry James 6443e6a
 	*-wec)
Jerry James 6443e6a
 		os=-proelf
Jerry James 6443e6a
 		;;
bd333ef
@@ -1293,19 +1699,19 @@ case $basic_machine in
Jerry James 6443e6a
 	*-next)
Jerry James 6443e6a
 		os=-nextstep3
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-        *-gould)
Jerry James 6443e6a
+	*-gould)
Jerry James 6443e6a
 		os=-sysv
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-        *-highlevel)
Jerry James 6443e6a
+	*-highlevel)
Jerry James 6443e6a
 		os=-bsd
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	*-encore)
Jerry James 6443e6a
 		os=-bsd
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-        *-sgi)
Jerry James 6443e6a
+	*-sgi)
Jerry James 6443e6a
 		os=-irix
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
-        *-siemens)
Jerry James 6443e6a
+	*-siemens)
Jerry James 6443e6a
 		os=-sysv4
Jerry James 6443e6a
 		;;
Jerry James 6443e6a
 	*-masscomp)
bd333ef
@@ -1344,7 +1750,7 @@ case $basic_machine in
Jerry James 6443e6a
 			-sunos*)
Jerry James 6443e6a
 				vendor=sun
Jerry James 6443e6a
 				;;
Jerry James 6443e6a
-			-aix*)
Jerry James 6443e6a
+			-cnk*|-aix*)
Jerry James 6443e6a
 				vendor=ibm
Jerry James 6443e6a
 				;;
Jerry James 6443e6a
 			-beos*)
bd333ef
@@ -1374,10 +1780,16 @@ case $basic_machine in
Jerry James 6443e6a
 			-mvs* | -opened*)
Jerry James 6443e6a
 				vendor=ibm
Jerry James 6443e6a
 				;;
Jerry James 6443e6a
+			-os400*)
Jerry James 6443e6a
+				vendor=ibm
Jerry James 6443e6a
+				;;
Jerry James 6443e6a
 			-ptx*)
Jerry James 6443e6a
 				vendor=sequent
Jerry James 6443e6a
 				;;
Jerry James 6443e6a
-			-vxsim* | -vxworks*)
Jerry James 6443e6a
+			-tpf*)
Jerry James 6443e6a
+				vendor=ibm
Jerry James 6443e6a
+				;;
Jerry James 6443e6a
+			-vxsim* | -vxworks* | -windiss*)
Jerry James 6443e6a
 				vendor=wrs
Jerry James 6443e6a
 				;;
Jerry James 6443e6a
 			-aux*)
bd333ef
@@ -1401,7 +1813,7 @@ case $basic_machine in
Jerry James 6443e6a
 esac
Jerry James 6443e6a
 
Jerry James 6443e6a
 echo $basic_machine$os
Jerry James 6443e6a
-exit 0
Jerry James 6443e6a
+exit
Jerry James 6443e6a
 
Jerry James 6443e6a
 # Local variables:
Jerry James 6443e6a
 # eval: (add-hook 'write-file-hooks 'time-stamp)