config.guess revision 65d490d0
1e4da13eeSmacallan#! /bin/sh
2e4da13eeSmacallan# Attempt to guess a canonical system name.
3e4da13eeSmacallan#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
465d490d0Smrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
565d490d0Smrg#   2011, 2012 Free Software Foundation, Inc.
6e4da13eeSmacallan
765d490d0Smrgtimestamp='2012-08-14'
8e4da13eeSmacallan
9e4da13eeSmacallan# This file is free software; you can redistribute it and/or modify it
10e4da13eeSmacallan# under the terms of the GNU General Public License as published by
11e4da13eeSmacallan# the Free Software Foundation; either version 2 of the License, or
12e4da13eeSmacallan# (at your option) any later version.
13e4da13eeSmacallan#
14e4da13eeSmacallan# This program is distributed in the hope that it will be useful, but
15e4da13eeSmacallan# WITHOUT ANY WARRANTY; without even the implied warranty of
16e4da13eeSmacallan# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17e4da13eeSmacallan# General Public License for more details.
18e4da13eeSmacallan#
19e4da13eeSmacallan# You should have received a copy of the GNU General Public License
2065d490d0Smrg# along with this program; if not, see <http://www.gnu.org/licenses/>.
21e4da13eeSmacallan#
22e4da13eeSmacallan# As a special exception to the GNU General Public License, if you
23e4da13eeSmacallan# distribute this file as part of a program that contains a
24e4da13eeSmacallan# configuration script generated by Autoconf, you may include it under
25e4da13eeSmacallan# the same distribution terms that you use for the rest of that program.
26e4da13eeSmacallan
27e4da13eeSmacallan
2865d490d0Smrg# Originally written by Per Bothner.  Please send patches (context
2965d490d0Smrg# diff format) to <config-patches@gnu.org> and include a ChangeLog
3065d490d0Smrg# entry.
31e4da13eeSmacallan#
32e4da13eeSmacallan# This script attempts to guess a canonical system name similar to
33e4da13eeSmacallan# config.sub.  If it succeeds, it prints the system name on stdout, and
34e4da13eeSmacallan# exits with 0.  Otherwise, it exits with 1.
35e4da13eeSmacallan#
3665d490d0Smrg# You can get the latest version of this script from:
3765d490d0Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
38e4da13eeSmacallan
39e4da13eeSmacallanme=`echo "$0" | sed -e 's,.*/,,'`
40e4da13eeSmacallan
41e4da13eeSmacallanusage="\
42e4da13eeSmacallanUsage: $0 [OPTION]
43e4da13eeSmacallan
44e4da13eeSmacallanOutput the configuration name of the system \`$me' is run on.
45e4da13eeSmacallan
46e4da13eeSmacallanOperation modes:
47e4da13eeSmacallan  -h, --help         print this help, then exit
48e4da13eeSmacallan  -t, --time-stamp   print date of last modification, then exit
49e4da13eeSmacallan  -v, --version      print version number, then exit
50e4da13eeSmacallan
51e4da13eeSmacallanReport bugs and patches to <config-patches@gnu.org>."
52e4da13eeSmacallan
53e4da13eeSmacallanversion="\
54e4da13eeSmacallanGNU config.guess ($timestamp)
55e4da13eeSmacallan
56e4da13eeSmacallanOriginally written by Per Bothner.
5765d490d0SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
5865d490d0Smrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
5965d490d0SmrgFree Software Foundation, Inc.
60e4da13eeSmacallan
61e4da13eeSmacallanThis is free software; see the source for copying conditions.  There is NO
62e4da13eeSmacallanwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
63e4da13eeSmacallan
64e4da13eeSmacallanhelp="
65e4da13eeSmacallanTry \`$me --help' for more information."
66e4da13eeSmacallan
67e4da13eeSmacallan# Parse command line
68e4da13eeSmacallanwhile test $# -gt 0 ; do
69e4da13eeSmacallan  case $1 in
70e4da13eeSmacallan    --time-stamp | --time* | -t )
71e4da13eeSmacallan       echo "$timestamp" ; exit ;;
72e4da13eeSmacallan    --version | -v )
73e4da13eeSmacallan       echo "$version" ; exit ;;
74e4da13eeSmacallan    --help | --h* | -h )
75e4da13eeSmacallan       echo "$usage"; exit ;;
76e4da13eeSmacallan    -- )     # Stop option processing
77e4da13eeSmacallan       shift; break ;;
78e4da13eeSmacallan    - )	# Use stdin as input.
79e4da13eeSmacallan       break ;;
80e4da13eeSmacallan    -* )
81e4da13eeSmacallan       echo "$me: invalid option $1$help" >&2
82e4da13eeSmacallan       exit 1 ;;
83e4da13eeSmacallan    * )
84e4da13eeSmacallan       break ;;
85e4da13eeSmacallan  esac
86e4da13eeSmacallandone
87e4da13eeSmacallan
88e4da13eeSmacallanif test $# != 0; then
89e4da13eeSmacallan  echo "$me: too many arguments$help" >&2
90e4da13eeSmacallan  exit 1
91e4da13eeSmacallanfi
92e4da13eeSmacallan
93e4da13eeSmacallantrap 'exit 1' 1 2 15
94e4da13eeSmacallan
95e4da13eeSmacallan# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
96e4da13eeSmacallan# compiler to aid in system detection is discouraged as it requires
97e4da13eeSmacallan# temporary files to be created and, as you can see below, it is a
98e4da13eeSmacallan# headache to deal with in a portable fashion.
99e4da13eeSmacallan
100e4da13eeSmacallan# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
101e4da13eeSmacallan# use `HOST_CC' if defined, but it is deprecated.
102e4da13eeSmacallan
103e4da13eeSmacallan# Portable tmp directory creation inspired by the Autoconf team.
104e4da13eeSmacallan
105e4da13eeSmacallanset_cc_for_build='
106e4da13eeSmacallantrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
107e4da13eeSmacallantrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
108e4da13eeSmacallan: ${TMPDIR=/tmp} ;
109e4da13eeSmacallan { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
110e4da13eeSmacallan { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
111e4da13eeSmacallan { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
112e4da13eeSmacallan { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
113e4da13eeSmacallandummy=$tmp/dummy ;
114e4da13eeSmacallantmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
115e4da13eeSmacallancase $CC_FOR_BUILD,$HOST_CC,$CC in
116e4da13eeSmacallan ,,)    echo "int x;" > $dummy.c ;
117e4da13eeSmacallan	for c in cc gcc c89 c99 ; do
118e4da13eeSmacallan	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
119e4da13eeSmacallan	     CC_FOR_BUILD="$c"; break ;
120e4da13eeSmacallan	  fi ;
121e4da13eeSmacallan	done ;
122e4da13eeSmacallan	if test x"$CC_FOR_BUILD" = x ; then
123e4da13eeSmacallan	  CC_FOR_BUILD=no_compiler_found ;
124e4da13eeSmacallan	fi
125e4da13eeSmacallan	;;
126e4da13eeSmacallan ,,*)   CC_FOR_BUILD=$CC ;;
127e4da13eeSmacallan ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
128e4da13eeSmacallanesac ; set_cc_for_build= ;'
129e4da13eeSmacallan
130e4da13eeSmacallan# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
131e4da13eeSmacallan# (ghazi@noc.rutgers.edu 1994-08-24)
132e4da13eeSmacallanif (test -f /.attbin/uname) >/dev/null 2>&1 ; then
133e4da13eeSmacallan	PATH=$PATH:/.attbin ; export PATH
134e4da13eeSmacallanfi
135e4da13eeSmacallan
136e4da13eeSmacallanUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
137e4da13eeSmacallanUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
138e4da13eeSmacallanUNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
139e4da13eeSmacallanUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
140e4da13eeSmacallan
14165d490d0Smrgcase "${UNAME_SYSTEM}" in
14265d490d0SmrgLinux|GNU/*)
14365d490d0Smrg	eval $set_cc_for_build
14465d490d0Smrg	cat <<-EOF > $dummy.c
14565d490d0Smrg	#include <features.h>
14665d490d0Smrg	#ifdef __UCLIBC__
14765d490d0Smrg	# ifdef __UCLIBC_CONFIG_VERSION__
14865d490d0Smrg	LIBC=uclibc __UCLIBC_CONFIG_VERSION__
14965d490d0Smrg	# else
15065d490d0Smrg	LIBC=uclibc
15165d490d0Smrg	# endif
15265d490d0Smrg	#else
15365d490d0Smrg	# ifdef __dietlibc__
15465d490d0Smrg	LIBC=dietlibc
15565d490d0Smrg	# else
15665d490d0Smrg	LIBC=gnu
15765d490d0Smrg	# endif
15865d490d0Smrg	#endif
15965d490d0Smrg	EOF
16065d490d0Smrg	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
16165d490d0Smrg	;;
16265d490d0Smrgesac
16365d490d0Smrg
164e4da13eeSmacallan# Note: order is significant - the case branches are not exclusive.
165e4da13eeSmacallan
166e4da13eeSmacallancase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
167e4da13eeSmacallan    *:NetBSD:*:*)
168e4da13eeSmacallan	# NetBSD (nbsd) targets should (where applicable) match one or
16965d490d0Smrg	# more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
170e4da13eeSmacallan	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
171e4da13eeSmacallan	# switched to ELF, *-*-netbsd* would select the old
172e4da13eeSmacallan	# object file format.  This provides both forward
173e4da13eeSmacallan	# compatibility and a consistent mechanism for selecting the
174e4da13eeSmacallan	# object file format.
175e4da13eeSmacallan	#
176e4da13eeSmacallan	# Note: NetBSD doesn't particularly care about the vendor
177e4da13eeSmacallan	# portion of the name.  We always set it to "unknown".
178e4da13eeSmacallan	sysctl="sysctl -n hw.machine_arch"
179e4da13eeSmacallan	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
180e4da13eeSmacallan	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
181e4da13eeSmacallan	case "${UNAME_MACHINE_ARCH}" in
182e4da13eeSmacallan	    armeb) machine=armeb-unknown ;;
183e4da13eeSmacallan	    arm*) machine=arm-unknown ;;
184e4da13eeSmacallan	    sh3el) machine=shl-unknown ;;
185e4da13eeSmacallan	    sh3eb) machine=sh-unknown ;;
186e4da13eeSmacallan	    sh5el) machine=sh5le-unknown ;;
187e4da13eeSmacallan	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
188e4da13eeSmacallan	esac
189e4da13eeSmacallan	# The Operating System including object format, if it has switched
190e4da13eeSmacallan	# to ELF recently, or will in the future.
191e4da13eeSmacallan	case "${UNAME_MACHINE_ARCH}" in
192e4da13eeSmacallan	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
193e4da13eeSmacallan		eval $set_cc_for_build
194e4da13eeSmacallan		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
19565d490d0Smrg			| grep -q __ELF__
196e4da13eeSmacallan		then
197e4da13eeSmacallan		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
198e4da13eeSmacallan		    # Return netbsd for either.  FIX?
199e4da13eeSmacallan		    os=netbsd
200e4da13eeSmacallan		else
201e4da13eeSmacallan		    os=netbsdelf
202e4da13eeSmacallan		fi
203e4da13eeSmacallan		;;
204e4da13eeSmacallan	    *)
20565d490d0Smrg		os=netbsd
206e4da13eeSmacallan		;;
207e4da13eeSmacallan	esac
208e4da13eeSmacallan	# The OS release
209e4da13eeSmacallan	# Debian GNU/NetBSD machines have a different userland, and
210e4da13eeSmacallan	# thus, need a distinct triplet. However, they do not need
211e4da13eeSmacallan	# kernel version information, so it can be replaced with a
212e4da13eeSmacallan	# suitable tag, in the style of linux-gnu.
213e4da13eeSmacallan	case "${UNAME_VERSION}" in
214e4da13eeSmacallan	    Debian*)
215e4da13eeSmacallan		release='-gnu'
216e4da13eeSmacallan		;;
217e4da13eeSmacallan	    *)
218e4da13eeSmacallan		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
219e4da13eeSmacallan		;;
220e4da13eeSmacallan	esac
221e4da13eeSmacallan	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
222e4da13eeSmacallan	# contains redundant information, the shorter form:
223e4da13eeSmacallan	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
224e4da13eeSmacallan	echo "${machine}-${os}${release}"
225e4da13eeSmacallan	exit ;;
22665d490d0Smrg    *:Bitrig:*:*)
22765d490d0Smrg	UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
22865d490d0Smrg	echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
22965d490d0Smrg	exit ;;
230e4da13eeSmacallan    *:OpenBSD:*:*)
231e4da13eeSmacallan	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
232e4da13eeSmacallan	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
233e4da13eeSmacallan	exit ;;
234e4da13eeSmacallan    *:ekkoBSD:*:*)
235e4da13eeSmacallan	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
236e4da13eeSmacallan	exit ;;
237e4da13eeSmacallan    *:SolidBSD:*:*)
238e4da13eeSmacallan	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
239e4da13eeSmacallan	exit ;;
240e4da13eeSmacallan    macppc:MirBSD:*:*)
241e4da13eeSmacallan	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
242e4da13eeSmacallan	exit ;;
243e4da13eeSmacallan    *:MirBSD:*:*)
244e4da13eeSmacallan	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
245e4da13eeSmacallan	exit ;;
246e4da13eeSmacallan    alpha:OSF1:*:*)
247e4da13eeSmacallan	case $UNAME_RELEASE in
248e4da13eeSmacallan	*4.0)
249e4da13eeSmacallan		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
250e4da13eeSmacallan		;;
251e4da13eeSmacallan	*5.*)
25265d490d0Smrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
253e4da13eeSmacallan		;;
254e4da13eeSmacallan	esac
255e4da13eeSmacallan	# According to Compaq, /usr/sbin/psrinfo has been available on
256e4da13eeSmacallan	# OSF/1 and Tru64 systems produced since 1995.  I hope that
257e4da13eeSmacallan	# covers most systems running today.  This code pipes the CPU
258e4da13eeSmacallan	# types through head -n 1, so we only detect the type of CPU 0.
259e4da13eeSmacallan	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
260e4da13eeSmacallan	case "$ALPHA_CPU_TYPE" in
261e4da13eeSmacallan	    "EV4 (21064)")
262e4da13eeSmacallan		UNAME_MACHINE="alpha" ;;
263e4da13eeSmacallan	    "EV4.5 (21064)")
264e4da13eeSmacallan		UNAME_MACHINE="alpha" ;;
265e4da13eeSmacallan	    "LCA4 (21066/21068)")
266e4da13eeSmacallan		UNAME_MACHINE="alpha" ;;
267e4da13eeSmacallan	    "EV5 (21164)")
268e4da13eeSmacallan		UNAME_MACHINE="alphaev5" ;;
269e4da13eeSmacallan	    "EV5.6 (21164A)")
270e4da13eeSmacallan		UNAME_MACHINE="alphaev56" ;;
271e4da13eeSmacallan	    "EV5.6 (21164PC)")
272e4da13eeSmacallan		UNAME_MACHINE="alphapca56" ;;
273e4da13eeSmacallan	    "EV5.7 (21164PC)")
274e4da13eeSmacallan		UNAME_MACHINE="alphapca57" ;;
275e4da13eeSmacallan	    "EV6 (21264)")
276e4da13eeSmacallan		UNAME_MACHINE="alphaev6" ;;
277e4da13eeSmacallan	    "EV6.7 (21264A)")
278e4da13eeSmacallan		UNAME_MACHINE="alphaev67" ;;
279e4da13eeSmacallan	    "EV6.8CB (21264C)")
280e4da13eeSmacallan		UNAME_MACHINE="alphaev68" ;;
281e4da13eeSmacallan	    "EV6.8AL (21264B)")
282e4da13eeSmacallan		UNAME_MACHINE="alphaev68" ;;
283e4da13eeSmacallan	    "EV6.8CX (21264D)")
284e4da13eeSmacallan		UNAME_MACHINE="alphaev68" ;;
285e4da13eeSmacallan	    "EV6.9A (21264/EV69A)")
286e4da13eeSmacallan		UNAME_MACHINE="alphaev69" ;;
287e4da13eeSmacallan	    "EV7 (21364)")
288e4da13eeSmacallan		UNAME_MACHINE="alphaev7" ;;
289e4da13eeSmacallan	    "EV7.9 (21364A)")
290e4da13eeSmacallan		UNAME_MACHINE="alphaev79" ;;
291e4da13eeSmacallan	esac
292e4da13eeSmacallan	# A Pn.n version is a patched version.
293e4da13eeSmacallan	# A Vn.n version is a released version.
294e4da13eeSmacallan	# A Tn.n version is a released field test version.
295e4da13eeSmacallan	# A Xn.n version is an unreleased experimental baselevel.
296e4da13eeSmacallan	# 1.2 uses "1.2" for uname -r.
297e4da13eeSmacallan	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
29865d490d0Smrg	# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
29965d490d0Smrg	exitcode=$?
30065d490d0Smrg	trap '' 0
30165d490d0Smrg	exit $exitcode ;;
302e4da13eeSmacallan    Alpha\ *:Windows_NT*:*)
303e4da13eeSmacallan	# How do we know it's Interix rather than the generic POSIX subsystem?
304e4da13eeSmacallan	# Should we change UNAME_MACHINE based on the output of uname instead
305e4da13eeSmacallan	# of the specific Alpha model?
306e4da13eeSmacallan	echo alpha-pc-interix
307e4da13eeSmacallan	exit ;;
308e4da13eeSmacallan    21064:Windows_NT:50:3)
309e4da13eeSmacallan	echo alpha-dec-winnt3.5
310e4da13eeSmacallan	exit ;;
311e4da13eeSmacallan    Amiga*:UNIX_System_V:4.0:*)
312e4da13eeSmacallan	echo m68k-unknown-sysv4
313e4da13eeSmacallan	exit ;;
314e4da13eeSmacallan    *:[Aa]miga[Oo][Ss]:*:*)
315e4da13eeSmacallan	echo ${UNAME_MACHINE}-unknown-amigaos
316e4da13eeSmacallan	exit ;;
317e4da13eeSmacallan    *:[Mm]orph[Oo][Ss]:*:*)
318e4da13eeSmacallan	echo ${UNAME_MACHINE}-unknown-morphos
319e4da13eeSmacallan	exit ;;
320e4da13eeSmacallan    *:OS/390:*:*)
321e4da13eeSmacallan	echo i370-ibm-openedition
322e4da13eeSmacallan	exit ;;
323e4da13eeSmacallan    *:z/VM:*:*)
324e4da13eeSmacallan	echo s390-ibm-zvmoe
325e4da13eeSmacallan	exit ;;
326e4da13eeSmacallan    *:OS400:*:*)
32765d490d0Smrg	echo powerpc-ibm-os400
328e4da13eeSmacallan	exit ;;
329e4da13eeSmacallan    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
330e4da13eeSmacallan	echo arm-acorn-riscix${UNAME_RELEASE}
331e4da13eeSmacallan	exit ;;
332e4da13eeSmacallan    arm:riscos:*:*|arm:RISCOS:*:*)
333e4da13eeSmacallan	echo arm-unknown-riscos
334e4da13eeSmacallan	exit ;;
335e4da13eeSmacallan    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
336e4da13eeSmacallan	echo hppa1.1-hitachi-hiuxmpp
337e4da13eeSmacallan	exit ;;
338e4da13eeSmacallan    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
339e4da13eeSmacallan	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
340e4da13eeSmacallan	if test "`(/bin/universe) 2>/dev/null`" = att ; then
341e4da13eeSmacallan		echo pyramid-pyramid-sysv3
342e4da13eeSmacallan	else
343e4da13eeSmacallan		echo pyramid-pyramid-bsd
344e4da13eeSmacallan	fi
345e4da13eeSmacallan	exit ;;
346e4da13eeSmacallan    NILE*:*:*:dcosx)
347e4da13eeSmacallan	echo pyramid-pyramid-svr4
348e4da13eeSmacallan	exit ;;
349e4da13eeSmacallan    DRS?6000:unix:4.0:6*)
350e4da13eeSmacallan	echo sparc-icl-nx6
351e4da13eeSmacallan	exit ;;
352e4da13eeSmacallan    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
353e4da13eeSmacallan	case `/usr/bin/uname -p` in
354e4da13eeSmacallan	    sparc) echo sparc-icl-nx7; exit ;;
355e4da13eeSmacallan	esac ;;
35665d490d0Smrg    s390x:SunOS:*:*)
35765d490d0Smrg	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
35865d490d0Smrg	exit ;;
359e4da13eeSmacallan    sun4H:SunOS:5.*:*)
360e4da13eeSmacallan	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
361e4da13eeSmacallan	exit ;;
362e4da13eeSmacallan    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
363e4da13eeSmacallan	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
364e4da13eeSmacallan	exit ;;
36565d490d0Smrg    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
36665d490d0Smrg	echo i386-pc-auroraux${UNAME_RELEASE}
36765d490d0Smrg	exit ;;
368e4da13eeSmacallan    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
36965d490d0Smrg	eval $set_cc_for_build
37065d490d0Smrg	SUN_ARCH="i386"
37165d490d0Smrg	# If there is a compiler, see if it is configured for 64-bit objects.
37265d490d0Smrg	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
37365d490d0Smrg	# This test works for both compilers.
37465d490d0Smrg	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
37565d490d0Smrg	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
37665d490d0Smrg		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
37765d490d0Smrg		grep IS_64BIT_ARCH >/dev/null
37865d490d0Smrg	    then
37965d490d0Smrg		SUN_ARCH="x86_64"
38065d490d0Smrg	    fi
38165d490d0Smrg	fi
38265d490d0Smrg	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
383e4da13eeSmacallan	exit ;;
384e4da13eeSmacallan    sun4*:SunOS:6*:*)
385e4da13eeSmacallan	# According to config.sub, this is the proper way to canonicalize
386e4da13eeSmacallan	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
387e4da13eeSmacallan	# it's likely to be more like Solaris than SunOS4.
388e4da13eeSmacallan	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
389e4da13eeSmacallan	exit ;;
390e4da13eeSmacallan    sun4*:SunOS:*:*)
391e4da13eeSmacallan	case "`/usr/bin/arch -k`" in
392e4da13eeSmacallan	    Series*|S4*)
393e4da13eeSmacallan		UNAME_RELEASE=`uname -v`
394e4da13eeSmacallan		;;
395e4da13eeSmacallan	esac
396e4da13eeSmacallan	# Japanese Language versions have a version number like `4.1.3-JL'.
397e4da13eeSmacallan	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
398e4da13eeSmacallan	exit ;;
399e4da13eeSmacallan    sun3*:SunOS:*:*)
400e4da13eeSmacallan	echo m68k-sun-sunos${UNAME_RELEASE}
401e4da13eeSmacallan	exit ;;
402e4da13eeSmacallan    sun*:*:4.2BSD:*)
403e4da13eeSmacallan	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
404e4da13eeSmacallan	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
405e4da13eeSmacallan	case "`/bin/arch`" in
406e4da13eeSmacallan	    sun3)
407e4da13eeSmacallan		echo m68k-sun-sunos${UNAME_RELEASE}
408e4da13eeSmacallan		;;
409e4da13eeSmacallan	    sun4)
410e4da13eeSmacallan		echo sparc-sun-sunos${UNAME_RELEASE}
411e4da13eeSmacallan		;;
412e4da13eeSmacallan	esac
413e4da13eeSmacallan	exit ;;
414e4da13eeSmacallan    aushp:SunOS:*:*)
415e4da13eeSmacallan	echo sparc-auspex-sunos${UNAME_RELEASE}
416e4da13eeSmacallan	exit ;;
417e4da13eeSmacallan    # The situation for MiNT is a little confusing.  The machine name
418e4da13eeSmacallan    # can be virtually everything (everything which is not
419e4da13eeSmacallan    # "atarist" or "atariste" at least should have a processor
420e4da13eeSmacallan    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
421e4da13eeSmacallan    # to the lowercase version "mint" (or "freemint").  Finally
422e4da13eeSmacallan    # the system name "TOS" denotes a system which is actually not
423e4da13eeSmacallan    # MiNT.  But MiNT is downward compatible to TOS, so this should
424e4da13eeSmacallan    # be no problem.
425e4da13eeSmacallan    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
42665d490d0Smrg	echo m68k-atari-mint${UNAME_RELEASE}
427e4da13eeSmacallan	exit ;;
428e4da13eeSmacallan    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
429e4da13eeSmacallan	echo m68k-atari-mint${UNAME_RELEASE}
43065d490d0Smrg	exit ;;
431e4da13eeSmacallan    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
43265d490d0Smrg	echo m68k-atari-mint${UNAME_RELEASE}
433e4da13eeSmacallan	exit ;;
434e4da13eeSmacallan    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
43565d490d0Smrg	echo m68k-milan-mint${UNAME_RELEASE}
43665d490d0Smrg	exit ;;
437e4da13eeSmacallan    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
43865d490d0Smrg	echo m68k-hades-mint${UNAME_RELEASE}
43965d490d0Smrg	exit ;;
440e4da13eeSmacallan    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
44165d490d0Smrg	echo m68k-unknown-mint${UNAME_RELEASE}
44265d490d0Smrg	exit ;;
443e4da13eeSmacallan    m68k:machten:*:*)
444e4da13eeSmacallan	echo m68k-apple-machten${UNAME_RELEASE}
445e4da13eeSmacallan	exit ;;
446e4da13eeSmacallan    powerpc:machten:*:*)
447e4da13eeSmacallan	echo powerpc-apple-machten${UNAME_RELEASE}
448e4da13eeSmacallan	exit ;;
449e4da13eeSmacallan    RISC*:Mach:*:*)
450e4da13eeSmacallan	echo mips-dec-mach_bsd4.3
451e4da13eeSmacallan	exit ;;
452e4da13eeSmacallan    RISC*:ULTRIX:*:*)
453e4da13eeSmacallan	echo mips-dec-ultrix${UNAME_RELEASE}
454e4da13eeSmacallan	exit ;;
455e4da13eeSmacallan    VAX*:ULTRIX*:*:*)
456e4da13eeSmacallan	echo vax-dec-ultrix${UNAME_RELEASE}
457e4da13eeSmacallan	exit ;;
458e4da13eeSmacallan    2020:CLIX:*:* | 2430:CLIX:*:*)
459e4da13eeSmacallan	echo clipper-intergraph-clix${UNAME_RELEASE}
460e4da13eeSmacallan	exit ;;
461e4da13eeSmacallan    mips:*:*:UMIPS | mips:*:*:RISCos)
462e4da13eeSmacallan	eval $set_cc_for_build
463e4da13eeSmacallan	sed 's/^	//' << EOF >$dummy.c
464e4da13eeSmacallan#ifdef __cplusplus
465e4da13eeSmacallan#include <stdio.h>  /* for printf() prototype */
466e4da13eeSmacallan	int main (int argc, char *argv[]) {
467e4da13eeSmacallan#else
468e4da13eeSmacallan	int main (argc, argv) int argc; char *argv[]; {
469e4da13eeSmacallan#endif
470e4da13eeSmacallan	#if defined (host_mips) && defined (MIPSEB)
471e4da13eeSmacallan	#if defined (SYSTYPE_SYSV)
472e4da13eeSmacallan	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
473e4da13eeSmacallan	#endif
474e4da13eeSmacallan	#if defined (SYSTYPE_SVR4)
475e4da13eeSmacallan	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
476e4da13eeSmacallan	#endif
477e4da13eeSmacallan	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
478e4da13eeSmacallan	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
479e4da13eeSmacallan	#endif
480e4da13eeSmacallan	#endif
481e4da13eeSmacallan	  exit (-1);
482e4da13eeSmacallan	}
483e4da13eeSmacallanEOF
484e4da13eeSmacallan	$CC_FOR_BUILD -o $dummy $dummy.c &&
485e4da13eeSmacallan	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
486e4da13eeSmacallan	  SYSTEM_NAME=`$dummy $dummyarg` &&
487e4da13eeSmacallan	    { echo "$SYSTEM_NAME"; exit; }
488e4da13eeSmacallan	echo mips-mips-riscos${UNAME_RELEASE}
489e4da13eeSmacallan	exit ;;
490e4da13eeSmacallan    Motorola:PowerMAX_OS:*:*)
491e4da13eeSmacallan	echo powerpc-motorola-powermax
492e4da13eeSmacallan	exit ;;
493e4da13eeSmacallan    Motorola:*:4.3:PL8-*)
494e4da13eeSmacallan	echo powerpc-harris-powermax
495e4da13eeSmacallan	exit ;;
496e4da13eeSmacallan    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
497e4da13eeSmacallan	echo powerpc-harris-powermax
498e4da13eeSmacallan	exit ;;
499e4da13eeSmacallan    Night_Hawk:Power_UNIX:*:*)
500e4da13eeSmacallan	echo powerpc-harris-powerunix
501e4da13eeSmacallan	exit ;;
502e4da13eeSmacallan    m88k:CX/UX:7*:*)
503e4da13eeSmacallan	echo m88k-harris-cxux7
504e4da13eeSmacallan	exit ;;
505e4da13eeSmacallan    m88k:*:4*:R4*)
506e4da13eeSmacallan	echo m88k-motorola-sysv4
507e4da13eeSmacallan	exit ;;
508e4da13eeSmacallan    m88k:*:3*:R3*)
509e4da13eeSmacallan	echo m88k-motorola-sysv3
510e4da13eeSmacallan	exit ;;
511e4da13eeSmacallan    AViiON:dgux:*:*)
51265d490d0Smrg	# DG/UX returns AViiON for all architectures
51365d490d0Smrg	UNAME_PROCESSOR=`/usr/bin/uname -p`
514e4da13eeSmacallan	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
515e4da13eeSmacallan	then
516e4da13eeSmacallan	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
517e4da13eeSmacallan	       [ ${TARGET_BINARY_INTERFACE}x = x ]
518e4da13eeSmacallan	    then
519e4da13eeSmacallan		echo m88k-dg-dgux${UNAME_RELEASE}
520e4da13eeSmacallan	    else
521e4da13eeSmacallan		echo m88k-dg-dguxbcs${UNAME_RELEASE}
522e4da13eeSmacallan	    fi
523e4da13eeSmacallan	else
524e4da13eeSmacallan	    echo i586-dg-dgux${UNAME_RELEASE}
525e4da13eeSmacallan	fi
52665d490d0Smrg	exit ;;
527e4da13eeSmacallan    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
528e4da13eeSmacallan	echo m88k-dolphin-sysv3
529e4da13eeSmacallan	exit ;;
530e4da13eeSmacallan    M88*:*:R3*:*)
531e4da13eeSmacallan	# Delta 88k system running SVR3
532e4da13eeSmacallan	echo m88k-motorola-sysv3
533e4da13eeSmacallan	exit ;;
534e4da13eeSmacallan    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
535e4da13eeSmacallan	echo m88k-tektronix-sysv3
536e4da13eeSmacallan	exit ;;
537e4da13eeSmacallan    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
538e4da13eeSmacallan	echo m68k-tektronix-bsd
539e4da13eeSmacallan	exit ;;
540e4da13eeSmacallan    *:IRIX*:*:*)
541e4da13eeSmacallan	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
542e4da13eeSmacallan	exit ;;
543e4da13eeSmacallan    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
544e4da13eeSmacallan	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
545e4da13eeSmacallan	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
546e4da13eeSmacallan    i*86:AIX:*:*)
547e4da13eeSmacallan	echo i386-ibm-aix
548e4da13eeSmacallan	exit ;;
549e4da13eeSmacallan    ia64:AIX:*:*)
550e4da13eeSmacallan	if [ -x /usr/bin/oslevel ] ; then
551e4da13eeSmacallan		IBM_REV=`/usr/bin/oslevel`
552e4da13eeSmacallan	else
553e4da13eeSmacallan		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
554e4da13eeSmacallan	fi
555e4da13eeSmacallan	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
556e4da13eeSmacallan	exit ;;
557e4da13eeSmacallan    *:AIX:2:3)
558e4da13eeSmacallan	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
559e4da13eeSmacallan		eval $set_cc_for_build
560e4da13eeSmacallan		sed 's/^		//' << EOF >$dummy.c
561e4da13eeSmacallan		#include <sys/systemcfg.h>
562e4da13eeSmacallan
563e4da13eeSmacallan		main()
564e4da13eeSmacallan			{
565e4da13eeSmacallan			if (!__power_pc())
566e4da13eeSmacallan				exit(1);
567e4da13eeSmacallan			puts("powerpc-ibm-aix3.2.5");
568e4da13eeSmacallan			exit(0);
569e4da13eeSmacallan			}
570e4da13eeSmacallanEOF
571e4da13eeSmacallan		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
572e4da13eeSmacallan		then
573e4da13eeSmacallan			echo "$SYSTEM_NAME"
574e4da13eeSmacallan		else
575e4da13eeSmacallan			echo rs6000-ibm-aix3.2.5
576e4da13eeSmacallan		fi
577e4da13eeSmacallan	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
578e4da13eeSmacallan		echo rs6000-ibm-aix3.2.4
579e4da13eeSmacallan	else
580e4da13eeSmacallan		echo rs6000-ibm-aix3.2
581e4da13eeSmacallan	fi
582e4da13eeSmacallan	exit ;;
58365d490d0Smrg    *:AIX:*:[4567])
584e4da13eeSmacallan	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
585e4da13eeSmacallan	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
586e4da13eeSmacallan		IBM_ARCH=rs6000
587e4da13eeSmacallan	else
588e4da13eeSmacallan		IBM_ARCH=powerpc
589e4da13eeSmacallan	fi
590e4da13eeSmacallan	if [ -x /usr/bin/oslevel ] ; then
591e4da13eeSmacallan		IBM_REV=`/usr/bin/oslevel`
592e4da13eeSmacallan	else
593e4da13eeSmacallan		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
594e4da13eeSmacallan	fi
595e4da13eeSmacallan	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
596e4da13eeSmacallan	exit ;;
597e4da13eeSmacallan    *:AIX:*:*)
598e4da13eeSmacallan	echo rs6000-ibm-aix
599e4da13eeSmacallan	exit ;;
600e4da13eeSmacallan    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
601e4da13eeSmacallan	echo romp-ibm-bsd4.4
602e4da13eeSmacallan	exit ;;
603e4da13eeSmacallan    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
604e4da13eeSmacallan	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
605e4da13eeSmacallan	exit ;;                             # report: romp-ibm BSD 4.3
606e4da13eeSmacallan    *:BOSX:*:*)
607e4da13eeSmacallan	echo rs6000-bull-bosx
608e4da13eeSmacallan	exit ;;
609e4da13eeSmacallan    DPX/2?00:B.O.S.:*:*)
610e4da13eeSmacallan	echo m68k-bull-sysv3
611e4da13eeSmacallan	exit ;;
612e4da13eeSmacallan    9000/[34]??:4.3bsd:1.*:*)
613e4da13eeSmacallan	echo m68k-hp-bsd
614e4da13eeSmacallan	exit ;;
615e4da13eeSmacallan    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
616e4da13eeSmacallan	echo m68k-hp-bsd4.4
617e4da13eeSmacallan	exit ;;
618e4da13eeSmacallan    9000/[34678]??:HP-UX:*:*)
619e4da13eeSmacallan	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
620e4da13eeSmacallan	case "${UNAME_MACHINE}" in
621e4da13eeSmacallan	    9000/31? )            HP_ARCH=m68000 ;;
622e4da13eeSmacallan	    9000/[34]?? )         HP_ARCH=m68k ;;
623e4da13eeSmacallan	    9000/[678][0-9][0-9])
624e4da13eeSmacallan		if [ -x /usr/bin/getconf ]; then
625e4da13eeSmacallan		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
62665d490d0Smrg		    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
62765d490d0Smrg		    case "${sc_cpu_version}" in
62865d490d0Smrg		      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
62965d490d0Smrg		      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
63065d490d0Smrg		      532)                      # CPU_PA_RISC2_0
63165d490d0Smrg			case "${sc_kernel_bits}" in
63265d490d0Smrg			  32) HP_ARCH="hppa2.0n" ;;
63365d490d0Smrg			  64) HP_ARCH="hppa2.0w" ;;
634e4da13eeSmacallan			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
63565d490d0Smrg			esac ;;
63665d490d0Smrg		    esac
637e4da13eeSmacallan		fi
638e4da13eeSmacallan		if [ "${HP_ARCH}" = "" ]; then
639e4da13eeSmacallan		    eval $set_cc_for_build
64065d490d0Smrg		    sed 's/^		//' << EOF >$dummy.c
641e4da13eeSmacallan
64265d490d0Smrg		#define _HPUX_SOURCE
64365d490d0Smrg		#include <stdlib.h>
64465d490d0Smrg		#include <unistd.h>
645e4da13eeSmacallan
64665d490d0Smrg		int main ()
64765d490d0Smrg		{
64865d490d0Smrg		#if defined(_SC_KERNEL_BITS)
64965d490d0Smrg		    long bits = sysconf(_SC_KERNEL_BITS);
65065d490d0Smrg		#endif
65165d490d0Smrg		    long cpu  = sysconf (_SC_CPU_VERSION);
652e4da13eeSmacallan
65365d490d0Smrg		    switch (cpu)
65465d490d0Smrg			{
65565d490d0Smrg			case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
65665d490d0Smrg			case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
65765d490d0Smrg			case CPU_PA_RISC2_0:
65865d490d0Smrg		#if defined(_SC_KERNEL_BITS)
65965d490d0Smrg			    switch (bits)
66065d490d0Smrg				{
66165d490d0Smrg				case 64: puts ("hppa2.0w"); break;
66265d490d0Smrg				case 32: puts ("hppa2.0n"); break;
66365d490d0Smrg				default: puts ("hppa2.0"); break;
66465d490d0Smrg				} break;
66565d490d0Smrg		#else  /* !defined(_SC_KERNEL_BITS) */
66665d490d0Smrg			    puts ("hppa2.0"); break;
66765d490d0Smrg		#endif
66865d490d0Smrg			default: puts ("hppa1.0"); break;
66965d490d0Smrg			}
67065d490d0Smrg		    exit (0);
67165d490d0Smrg		}
672e4da13eeSmacallanEOF
673e4da13eeSmacallan		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
674e4da13eeSmacallan		    test -z "$HP_ARCH" && HP_ARCH=hppa
675e4da13eeSmacallan		fi ;;
676e4da13eeSmacallan	esac
677e4da13eeSmacallan	if [ ${HP_ARCH} = "hppa2.0w" ]
678e4da13eeSmacallan	then
679e4da13eeSmacallan	    eval $set_cc_for_build
680e4da13eeSmacallan
681e4da13eeSmacallan	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
682e4da13eeSmacallan	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
683e4da13eeSmacallan	    # generating 64-bit code.  GNU and HP use different nomenclature:
684e4da13eeSmacallan	    #
685e4da13eeSmacallan	    # $ CC_FOR_BUILD=cc ./config.guess
686e4da13eeSmacallan	    # => hppa2.0w-hp-hpux11.23
687e4da13eeSmacallan	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
688e4da13eeSmacallan	    # => hppa64-hp-hpux11.23
689e4da13eeSmacallan
690e4da13eeSmacallan	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
69165d490d0Smrg		grep -q __LP64__
692e4da13eeSmacallan	    then
693e4da13eeSmacallan		HP_ARCH="hppa2.0w"
694e4da13eeSmacallan	    else
695e4da13eeSmacallan		HP_ARCH="hppa64"
696e4da13eeSmacallan	    fi
697e4da13eeSmacallan	fi
698e4da13eeSmacallan	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
699e4da13eeSmacallan	exit ;;
700e4da13eeSmacallan    ia64:HP-UX:*:*)
701e4da13eeSmacallan	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
702e4da13eeSmacallan	echo ia64-hp-hpux${HPUX_REV}
703e4da13eeSmacallan	exit ;;
704e4da13eeSmacallan    3050*:HI-UX:*:*)
705e4da13eeSmacallan	eval $set_cc_for_build
706e4da13eeSmacallan	sed 's/^	//' << EOF >$dummy.c
707e4da13eeSmacallan	#include <unistd.h>
708e4da13eeSmacallan	int
709e4da13eeSmacallan	main ()
710e4da13eeSmacallan	{
711e4da13eeSmacallan	  long cpu = sysconf (_SC_CPU_VERSION);
712e4da13eeSmacallan	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
713e4da13eeSmacallan	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
714e4da13eeSmacallan	     results, however.  */
715e4da13eeSmacallan	  if (CPU_IS_PA_RISC (cpu))
716e4da13eeSmacallan	    {
717e4da13eeSmacallan	      switch (cpu)
718e4da13eeSmacallan		{
719e4da13eeSmacallan		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
720e4da13eeSmacallan		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
721e4da13eeSmacallan		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
722e4da13eeSmacallan		  default: puts ("hppa-hitachi-hiuxwe2"); break;
723e4da13eeSmacallan		}
724e4da13eeSmacallan	    }
725e4da13eeSmacallan	  else if (CPU_IS_HP_MC68K (cpu))
726e4da13eeSmacallan	    puts ("m68k-hitachi-hiuxwe2");
727e4da13eeSmacallan	  else puts ("unknown-hitachi-hiuxwe2");
728e4da13eeSmacallan	  exit (0);
729e4da13eeSmacallan	}
730e4da13eeSmacallanEOF
731e4da13eeSmacallan	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
732e4da13eeSmacallan		{ echo "$SYSTEM_NAME"; exit; }
733e4da13eeSmacallan	echo unknown-hitachi-hiuxwe2
734e4da13eeSmacallan	exit ;;
735e4da13eeSmacallan    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
736e4da13eeSmacallan	echo hppa1.1-hp-bsd
737e4da13eeSmacallan	exit ;;
738e4da13eeSmacallan    9000/8??:4.3bsd:*:*)
739e4da13eeSmacallan	echo hppa1.0-hp-bsd
740e4da13eeSmacallan	exit ;;
741e4da13eeSmacallan    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
742e4da13eeSmacallan	echo hppa1.0-hp-mpeix
743e4da13eeSmacallan	exit ;;
744e4da13eeSmacallan    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
745e4da13eeSmacallan	echo hppa1.1-hp-osf
746e4da13eeSmacallan	exit ;;
747e4da13eeSmacallan    hp8??:OSF1:*:*)
748e4da13eeSmacallan	echo hppa1.0-hp-osf
749e4da13eeSmacallan	exit ;;
750e4da13eeSmacallan    i*86:OSF1:*:*)
751e4da13eeSmacallan	if [ -x /usr/sbin/sysversion ] ; then
752e4da13eeSmacallan	    echo ${UNAME_MACHINE}-unknown-osf1mk
753e4da13eeSmacallan	else
754e4da13eeSmacallan	    echo ${UNAME_MACHINE}-unknown-osf1
755e4da13eeSmacallan	fi
756e4da13eeSmacallan	exit ;;
757e4da13eeSmacallan    parisc*:Lites*:*:*)
758e4da13eeSmacallan	echo hppa1.1-hp-lites
759e4da13eeSmacallan	exit ;;
760e4da13eeSmacallan    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
761e4da13eeSmacallan	echo c1-convex-bsd
76265d490d0Smrg	exit ;;
763e4da13eeSmacallan    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
764e4da13eeSmacallan	if getsysinfo -f scalar_acc
765e4da13eeSmacallan	then echo c32-convex-bsd
766e4da13eeSmacallan	else echo c2-convex-bsd
767e4da13eeSmacallan	fi
76865d490d0Smrg	exit ;;
769e4da13eeSmacallan    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
770e4da13eeSmacallan	echo c34-convex-bsd
77165d490d0Smrg	exit ;;
772e4da13eeSmacallan    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
773e4da13eeSmacallan	echo c38-convex-bsd
77465d490d0Smrg	exit ;;
775e4da13eeSmacallan    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
776e4da13eeSmacallan	echo c4-convex-bsd
77765d490d0Smrg	exit ;;
778e4da13eeSmacallan    CRAY*Y-MP:*:*:*)
779e4da13eeSmacallan	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
780e4da13eeSmacallan	exit ;;
781e4da13eeSmacallan    CRAY*[A-Z]90:*:*:*)
782e4da13eeSmacallan	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
783e4da13eeSmacallan	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
784e4da13eeSmacallan	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
785e4da13eeSmacallan	      -e 's/\.[^.]*$/.X/'
786e4da13eeSmacallan	exit ;;
787e4da13eeSmacallan    CRAY*TS:*:*:*)
788e4da13eeSmacallan	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
789e4da13eeSmacallan	exit ;;
790e4da13eeSmacallan    CRAY*T3E:*:*:*)
791e4da13eeSmacallan	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
792e4da13eeSmacallan	exit ;;
793e4da13eeSmacallan    CRAY*SV1:*:*:*)
794e4da13eeSmacallan	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
795e4da13eeSmacallan	exit ;;
796e4da13eeSmacallan    *:UNICOS/mp:*:*)
797e4da13eeSmacallan	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
798e4da13eeSmacallan	exit ;;
799e4da13eeSmacallan    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
800e4da13eeSmacallan	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
80165d490d0Smrg	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
80265d490d0Smrg	FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
80365d490d0Smrg	echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
80465d490d0Smrg	exit ;;
805e4da13eeSmacallan    5000:UNIX_System_V:4.*:*)
80665d490d0Smrg	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
80765d490d0Smrg	FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
80865d490d0Smrg	echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
809e4da13eeSmacallan	exit ;;
810e4da13eeSmacallan    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
811e4da13eeSmacallan	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
812e4da13eeSmacallan	exit ;;
813e4da13eeSmacallan    sparc*:BSD/OS:*:*)
814e4da13eeSmacallan	echo sparc-unknown-bsdi${UNAME_RELEASE}
815e4da13eeSmacallan	exit ;;
816e4da13eeSmacallan    *:BSD/OS:*:*)
817e4da13eeSmacallan	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
818e4da13eeSmacallan	exit ;;
819e4da13eeSmacallan    *:FreeBSD:*:*)
82065d490d0Smrg	UNAME_PROCESSOR=`/usr/bin/uname -p`
82165d490d0Smrg	case ${UNAME_PROCESSOR} in
822e4da13eeSmacallan	    amd64)
823e4da13eeSmacallan		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
824e4da13eeSmacallan	    *)
82565d490d0Smrg		echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
826e4da13eeSmacallan	esac
827e4da13eeSmacallan	exit ;;
828e4da13eeSmacallan    i*:CYGWIN*:*)
829e4da13eeSmacallan	echo ${UNAME_MACHINE}-pc-cygwin
830e4da13eeSmacallan	exit ;;
83165d490d0Smrg    *:MINGW64*:*)
83265d490d0Smrg	echo ${UNAME_MACHINE}-pc-mingw64
83365d490d0Smrg	exit ;;
834e4da13eeSmacallan    *:MINGW*:*)
835e4da13eeSmacallan	echo ${UNAME_MACHINE}-pc-mingw32
836e4da13eeSmacallan	exit ;;
83765d490d0Smrg    i*:MSYS*:*)
83865d490d0Smrg	echo ${UNAME_MACHINE}-pc-msys
83965d490d0Smrg	exit ;;
840e4da13eeSmacallan    i*:windows32*:*)
84165d490d0Smrg	# uname -m includes "-pc" on this system.
84265d490d0Smrg	echo ${UNAME_MACHINE}-mingw32
843e4da13eeSmacallan	exit ;;
844e4da13eeSmacallan    i*:PW*:*)
845e4da13eeSmacallan	echo ${UNAME_MACHINE}-pc-pw32
846e4da13eeSmacallan	exit ;;
84765d490d0Smrg    *:Interix*:*)
84865d490d0Smrg	case ${UNAME_MACHINE} in
849e4da13eeSmacallan	    x86)
850e4da13eeSmacallan		echo i586-pc-interix${UNAME_RELEASE}
851e4da13eeSmacallan		exit ;;
85265d490d0Smrg	    authenticamd | genuineintel | EM64T)
853e4da13eeSmacallan		echo x86_64-unknown-interix${UNAME_RELEASE}
854e4da13eeSmacallan		exit ;;
855e4da13eeSmacallan	    IA64)
856e4da13eeSmacallan		echo ia64-unknown-interix${UNAME_RELEASE}
857e4da13eeSmacallan		exit ;;
858e4da13eeSmacallan	esac ;;
859e4da13eeSmacallan    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
860e4da13eeSmacallan	echo i${UNAME_MACHINE}-pc-mks
861e4da13eeSmacallan	exit ;;
86265d490d0Smrg    8664:Windows_NT:*)
86365d490d0Smrg	echo x86_64-pc-mks
86465d490d0Smrg	exit ;;
865e4da13eeSmacallan    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
866e4da13eeSmacallan	# How do we know it's Interix rather than the generic POSIX subsystem?
867e4da13eeSmacallan	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
868e4da13eeSmacallan	# UNAME_MACHINE based on the output of uname instead of i386?
869e4da13eeSmacallan	echo i586-pc-interix
870e4da13eeSmacallan	exit ;;
871e4da13eeSmacallan    i*:UWIN*:*)
872e4da13eeSmacallan	echo ${UNAME_MACHINE}-pc-uwin
873e4da13eeSmacallan	exit ;;
874e4da13eeSmacallan    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
875e4da13eeSmacallan	echo x86_64-unknown-cygwin
876e4da13eeSmacallan	exit ;;
877e4da13eeSmacallan    p*:CYGWIN*:*)
878e4da13eeSmacallan	echo powerpcle-unknown-cygwin
879e4da13eeSmacallan	exit ;;
880e4da13eeSmacallan    prep*:SunOS:5.*:*)
881e4da13eeSmacallan	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
882e4da13eeSmacallan	exit ;;
883e4da13eeSmacallan    *:GNU:*:*)
884e4da13eeSmacallan	# the GNU system
88565d490d0Smrg	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
886e4da13eeSmacallan	exit ;;
887e4da13eeSmacallan    *:GNU/*:*:*)
888e4da13eeSmacallan	# other systems with GNU libc and userland
88965d490d0Smrg	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
890e4da13eeSmacallan	exit ;;
891e4da13eeSmacallan    i*86:Minix:*:*)
892e4da13eeSmacallan	echo ${UNAME_MACHINE}-pc-minix
893e4da13eeSmacallan	exit ;;
89465d490d0Smrg    aarch64:Linux:*:*)
89565d490d0Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
89665d490d0Smrg	exit ;;
89765d490d0Smrg    aarch64_be:Linux:*:*)
89865d490d0Smrg	UNAME_MACHINE=aarch64_be
89965d490d0Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
90065d490d0Smrg	exit ;;
90165d490d0Smrg    alpha:Linux:*:*)
90265d490d0Smrg	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
90365d490d0Smrg	  EV5)   UNAME_MACHINE=alphaev5 ;;
90465d490d0Smrg	  EV56)  UNAME_MACHINE=alphaev56 ;;
90565d490d0Smrg	  PCA56) UNAME_MACHINE=alphapca56 ;;
90665d490d0Smrg	  PCA57) UNAME_MACHINE=alphapca56 ;;
90765d490d0Smrg	  EV6)   UNAME_MACHINE=alphaev6 ;;
90865d490d0Smrg	  EV67)  UNAME_MACHINE=alphaev67 ;;
90965d490d0Smrg	  EV68*) UNAME_MACHINE=alphaev68 ;;
91065d490d0Smrg	esac
91165d490d0Smrg	objdump --private-headers /bin/sh | grep -q ld.so.1
91265d490d0Smrg	if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
91365d490d0Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
91465d490d0Smrg	exit ;;
915e4da13eeSmacallan    arm*:Linux:*:*)
916e4da13eeSmacallan	eval $set_cc_for_build
917e4da13eeSmacallan	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
918e4da13eeSmacallan	    | grep -q __ARM_EABI__
919e4da13eeSmacallan	then
92065d490d0Smrg	    echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
921e4da13eeSmacallan	else
92265d490d0Smrg	    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
92365d490d0Smrg		| grep -q __ARM_PCS_VFP
92465d490d0Smrg	    then
92565d490d0Smrg		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
92665d490d0Smrg	    else
92765d490d0Smrg		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
92865d490d0Smrg	    fi
929e4da13eeSmacallan	fi
930e4da13eeSmacallan	exit ;;
931e4da13eeSmacallan    avr32*:Linux:*:*)
93265d490d0Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
933e4da13eeSmacallan	exit ;;
934e4da13eeSmacallan    cris:Linux:*:*)
93565d490d0Smrg	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
936e4da13eeSmacallan	exit ;;
937e4da13eeSmacallan    crisv32:Linux:*:*)
93865d490d0Smrg	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
939e4da13eeSmacallan	exit ;;
940e4da13eeSmacallan    frv:Linux:*:*)
94165d490d0Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
94265d490d0Smrg	exit ;;
94365d490d0Smrg    hexagon:Linux:*:*)
94465d490d0Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
94565d490d0Smrg	exit ;;
94665d490d0Smrg    i*86:Linux:*:*)
94765d490d0Smrg	echo ${UNAME_MACHINE}-pc-linux-${LIBC}
948e4da13eeSmacallan	exit ;;
949e4da13eeSmacallan    ia64:Linux:*:*)
95065d490d0Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
951e4da13eeSmacallan	exit ;;
952e4da13eeSmacallan    m32r*:Linux:*:*)
95365d490d0Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
954e4da13eeSmacallan	exit ;;
955e4da13eeSmacallan    m68*:Linux:*:*)
95665d490d0Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
957e4da13eeSmacallan	exit ;;
95865d490d0Smrg    mips:Linux:*:* | mips64:Linux:*:*)
959e4da13eeSmacallan	eval $set_cc_for_build
960e4da13eeSmacallan	sed 's/^	//' << EOF >$dummy.c
961e4da13eeSmacallan	#undef CPU
96265d490d0Smrg	#undef ${UNAME_MACHINE}
96365d490d0Smrg	#undef ${UNAME_MACHINE}el
964e4da13eeSmacallan	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
96565d490d0Smrg	CPU=${UNAME_MACHINE}el
966e4da13eeSmacallan	#else
967e4da13eeSmacallan	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
96865d490d0Smrg	CPU=${UNAME_MACHINE}
969e4da13eeSmacallan	#else
970e4da13eeSmacallan	CPU=
971e4da13eeSmacallan	#endif
972e4da13eeSmacallan	#endif
973e4da13eeSmacallanEOF
97465d490d0Smrg	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
97565d490d0Smrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
976e4da13eeSmacallan	;;
977e4da13eeSmacallan    or32:Linux:*:*)
97865d490d0Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
979e4da13eeSmacallan	exit ;;
98065d490d0Smrg    padre:Linux:*:*)
98165d490d0Smrg	echo sparc-unknown-linux-${LIBC}
982e4da13eeSmacallan	exit ;;
98365d490d0Smrg    parisc64:Linux:*:* | hppa64:Linux:*:*)
98465d490d0Smrg	echo hppa64-unknown-linux-${LIBC}
985e4da13eeSmacallan	exit ;;
986e4da13eeSmacallan    parisc:Linux:*:* | hppa:Linux:*:*)
987e4da13eeSmacallan	# Look for CPU level
988e4da13eeSmacallan	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
98965d490d0Smrg	  PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
99065d490d0Smrg	  PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
99165d490d0Smrg	  *)    echo hppa-unknown-linux-${LIBC} ;;
992e4da13eeSmacallan	esac
993e4da13eeSmacallan	exit ;;
99465d490d0Smrg    ppc64:Linux:*:*)
99565d490d0Smrg	echo powerpc64-unknown-linux-${LIBC}
99665d490d0Smrg	exit ;;
99765d490d0Smrg    ppc:Linux:*:*)
99865d490d0Smrg	echo powerpc-unknown-linux-${LIBC}
999e4da13eeSmacallan	exit ;;
1000e4da13eeSmacallan    s390:Linux:*:* | s390x:Linux:*:*)
1001e4da13eeSmacallan	echo ${UNAME_MACHINE}-ibm-linux
1002e4da13eeSmacallan	exit ;;
1003e4da13eeSmacallan    sh64*:Linux:*:*)
100465d490d0Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1005e4da13eeSmacallan	exit ;;
1006e4da13eeSmacallan    sh*:Linux:*:*)
100765d490d0Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1008e4da13eeSmacallan	exit ;;
1009e4da13eeSmacallan    sparc:Linux:*:* | sparc64:Linux:*:*)
101065d490d0Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
101165d490d0Smrg	exit ;;
101265d490d0Smrg    tile*:Linux:*:*)
101365d490d0Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1014e4da13eeSmacallan	exit ;;
1015e4da13eeSmacallan    vax:Linux:*:*)
101665d490d0Smrg	echo ${UNAME_MACHINE}-dec-linux-${LIBC}
1017e4da13eeSmacallan	exit ;;
1018e4da13eeSmacallan    x86_64:Linux:*:*)
101965d490d0Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1020e4da13eeSmacallan	exit ;;
1021e4da13eeSmacallan    xtensa*:Linux:*:*)
102265d490d0Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1023e4da13eeSmacallan	exit ;;
1024e4da13eeSmacallan    i*86:DYNIX/ptx:4*:*)
1025e4da13eeSmacallan	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
1026e4da13eeSmacallan	# earlier versions are messed up and put the nodename in both
1027e4da13eeSmacallan	# sysname and nodename.
1028e4da13eeSmacallan	echo i386-sequent-sysv4
1029e4da13eeSmacallan	exit ;;
1030e4da13eeSmacallan    i*86:UNIX_SV:4.2MP:2.*)
103165d490d0Smrg	# Unixware is an offshoot of SVR4, but it has its own version
103265d490d0Smrg	# number series starting with 2...
103365d490d0Smrg	# I am not positive that other SVR4 systems won't match this,
1034e4da13eeSmacallan	# I just have to hope.  -- rms.
103565d490d0Smrg	# Use sysv4.2uw... so that sysv4* matches it.
1036e4da13eeSmacallan	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
1037e4da13eeSmacallan	exit ;;
1038e4da13eeSmacallan    i*86:OS/2:*:*)
1039e4da13eeSmacallan	# If we were able to find `uname', then EMX Unix compatibility
1040e4da13eeSmacallan	# is probably installed.
1041e4da13eeSmacallan	echo ${UNAME_MACHINE}-pc-os2-emx
1042e4da13eeSmacallan	exit ;;
1043e4da13eeSmacallan    i*86:XTS-300:*:STOP)
1044e4da13eeSmacallan	echo ${UNAME_MACHINE}-unknown-stop
1045e4da13eeSmacallan	exit ;;
1046e4da13eeSmacallan    i*86:atheos:*:*)
1047e4da13eeSmacallan	echo ${UNAME_MACHINE}-unknown-atheos
1048e4da13eeSmacallan	exit ;;
1049e4da13eeSmacallan    i*86:syllable:*:*)
1050e4da13eeSmacallan	echo ${UNAME_MACHINE}-pc-syllable
1051e4da13eeSmacallan	exit ;;
105265d490d0Smrg    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
1053e4da13eeSmacallan	echo i386-unknown-lynxos${UNAME_RELEASE}
1054e4da13eeSmacallan	exit ;;
1055e4da13eeSmacallan    i*86:*DOS:*:*)
1056e4da13eeSmacallan	echo ${UNAME_MACHINE}-pc-msdosdjgpp
1057e4da13eeSmacallan	exit ;;
1058e4da13eeSmacallan    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
1059e4da13eeSmacallan	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
1060e4da13eeSmacallan	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1061e4da13eeSmacallan		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
1062e4da13eeSmacallan	else
1063e4da13eeSmacallan		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
1064e4da13eeSmacallan	fi
1065e4da13eeSmacallan	exit ;;
1066e4da13eeSmacallan    i*86:*:5:[678]*)
106765d490d0Smrg	# UnixWare 7.x, OpenUNIX and OpenServer 6.
1068e4da13eeSmacallan	case `/bin/uname -X | grep "^Machine"` in
1069e4da13eeSmacallan	    *486*)	     UNAME_MACHINE=i486 ;;
1070e4da13eeSmacallan	    *Pentium)	     UNAME_MACHINE=i586 ;;
1071e4da13eeSmacallan	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1072e4da13eeSmacallan	esac
1073e4da13eeSmacallan	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
1074e4da13eeSmacallan	exit ;;
1075e4da13eeSmacallan    i*86:*:3.2:*)
1076e4da13eeSmacallan	if test -f /usr/options/cb.name; then
1077e4da13eeSmacallan		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1078e4da13eeSmacallan		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1079e4da13eeSmacallan	elif /bin/uname -X 2>/dev/null >/dev/null ; then
1080e4da13eeSmacallan		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1081e4da13eeSmacallan		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1082e4da13eeSmacallan		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1083e4da13eeSmacallan			&& UNAME_MACHINE=i586
1084e4da13eeSmacallan		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1085e4da13eeSmacallan			&& UNAME_MACHINE=i686
1086e4da13eeSmacallan		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1087e4da13eeSmacallan			&& UNAME_MACHINE=i686
1088e4da13eeSmacallan		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1089e4da13eeSmacallan	else
1090e4da13eeSmacallan		echo ${UNAME_MACHINE}-pc-sysv32
1091e4da13eeSmacallan	fi
1092e4da13eeSmacallan	exit ;;
1093e4da13eeSmacallan    pc:*:*:*)
1094e4da13eeSmacallan	# Left here for compatibility:
109565d490d0Smrg	# uname -m prints for DJGPP always 'pc', but it prints nothing about
109665d490d0Smrg	# the processor, so we play safe by assuming i586.
109765d490d0Smrg	# Note: whatever this is, it MUST be the same as what config.sub
109865d490d0Smrg	# prints for the "djgpp" host, or else GDB configury will decide that
109965d490d0Smrg	# this is a cross-build.
110065d490d0Smrg	echo i586-pc-msdosdjgpp
110165d490d0Smrg	exit ;;
1102e4da13eeSmacallan    Intel:Mach:3*:*)
1103e4da13eeSmacallan	echo i386-pc-mach3
1104e4da13eeSmacallan	exit ;;
1105e4da13eeSmacallan    paragon:*:*:*)
1106e4da13eeSmacallan	echo i860-intel-osf1
1107e4da13eeSmacallan	exit ;;
1108e4da13eeSmacallan    i860:*:4.*:*) # i860-SVR4
1109e4da13eeSmacallan	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1110e4da13eeSmacallan	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
1111e4da13eeSmacallan	else # Add other i860-SVR4 vendors below as they are discovered.
1112e4da13eeSmacallan	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
1113e4da13eeSmacallan	fi
1114e4da13eeSmacallan	exit ;;
1115e4da13eeSmacallan    mini*:CTIX:SYS*5:*)
1116e4da13eeSmacallan	# "miniframe"
1117e4da13eeSmacallan	echo m68010-convergent-sysv
1118e4da13eeSmacallan	exit ;;
1119e4da13eeSmacallan    mc68k:UNIX:SYSTEM5:3.51m)
1120e4da13eeSmacallan	echo m68k-convergent-sysv
1121e4da13eeSmacallan	exit ;;
1122e4da13eeSmacallan    M680?0:D-NIX:5.3:*)
1123e4da13eeSmacallan	echo m68k-diab-dnix
1124e4da13eeSmacallan	exit ;;
1125e4da13eeSmacallan    M68*:*:R3V[5678]*:*)
1126e4da13eeSmacallan	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
1127e4da13eeSmacallan    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)
1128e4da13eeSmacallan	OS_REL=''
1129e4da13eeSmacallan	test -r /etc/.relid \
1130e4da13eeSmacallan	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1131e4da13eeSmacallan	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1132e4da13eeSmacallan	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1133e4da13eeSmacallan	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1134e4da13eeSmacallan	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1135e4da13eeSmacallan    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
113665d490d0Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
113765d490d0Smrg	  && { echo i486-ncr-sysv4; exit; } ;;
113865d490d0Smrg    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
113965d490d0Smrg	OS_REL='.3'
114065d490d0Smrg	test -r /etc/.relid \
114165d490d0Smrg	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
114265d490d0Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
114365d490d0Smrg	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
114465d490d0Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
114565d490d0Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
114665d490d0Smrg	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
114765d490d0Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1148e4da13eeSmacallan    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1149e4da13eeSmacallan	echo m68k-unknown-lynxos${UNAME_RELEASE}
1150e4da13eeSmacallan	exit ;;
1151e4da13eeSmacallan    mc68030:UNIX_System_V:4.*:*)
1152e4da13eeSmacallan	echo m68k-atari-sysv4
1153e4da13eeSmacallan	exit ;;
1154e4da13eeSmacallan    TSUNAMI:LynxOS:2.*:*)
1155e4da13eeSmacallan	echo sparc-unknown-lynxos${UNAME_RELEASE}
1156e4da13eeSmacallan	exit ;;
1157e4da13eeSmacallan    rs6000:LynxOS:2.*:*)
1158e4da13eeSmacallan	echo rs6000-unknown-lynxos${UNAME_RELEASE}
1159e4da13eeSmacallan	exit ;;
116065d490d0Smrg    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
1161e4da13eeSmacallan	echo powerpc-unknown-lynxos${UNAME_RELEASE}
1162e4da13eeSmacallan	exit ;;
1163e4da13eeSmacallan    SM[BE]S:UNIX_SV:*:*)
1164e4da13eeSmacallan	echo mips-dde-sysv${UNAME_RELEASE}
1165e4da13eeSmacallan	exit ;;
1166e4da13eeSmacallan    RM*:ReliantUNIX-*:*:*)
1167e4da13eeSmacallan	echo mips-sni-sysv4
1168e4da13eeSmacallan	exit ;;
1169e4da13eeSmacallan    RM*:SINIX-*:*:*)
1170e4da13eeSmacallan	echo mips-sni-sysv4
1171e4da13eeSmacallan	exit ;;
1172e4da13eeSmacallan    *:SINIX-*:*:*)
1173e4da13eeSmacallan	if uname -p 2>/dev/null >/dev/null ; then
1174e4da13eeSmacallan		UNAME_MACHINE=`(uname -p) 2>/dev/null`
1175e4da13eeSmacallan		echo ${UNAME_MACHINE}-sni-sysv4
1176e4da13eeSmacallan	else
1177e4da13eeSmacallan		echo ns32k-sni-sysv
1178e4da13eeSmacallan	fi
1179e4da13eeSmacallan	exit ;;
118065d490d0Smrg    PENTIUM:*:4.0*:*)	# Unisys `ClearPath HMP IX 4000' SVR4/MP effort
118165d490d0Smrg			# says <Richard.M.Bartel@ccMail.Census.GOV>
118265d490d0Smrg	echo i586-unisys-sysv4
118365d490d0Smrg	exit ;;
1184e4da13eeSmacallan    *:UNIX_System_V:4*:FTX*)
1185e4da13eeSmacallan	# From Gerald Hewes <hewes@openmarket.com>.
1186e4da13eeSmacallan	# How about differentiating between stratus architectures? -djm
1187e4da13eeSmacallan	echo hppa1.1-stratus-sysv4
1188e4da13eeSmacallan	exit ;;
1189e4da13eeSmacallan    *:*:*:FTX*)
1190e4da13eeSmacallan	# From seanf@swdc.stratus.com.
1191e4da13eeSmacallan	echo i860-stratus-sysv4
1192e4da13eeSmacallan	exit ;;
1193e4da13eeSmacallan    i*86:VOS:*:*)
1194e4da13eeSmacallan	# From Paul.Green@stratus.com.
1195e4da13eeSmacallan	echo ${UNAME_MACHINE}-stratus-vos
1196e4da13eeSmacallan	exit ;;
1197e4da13eeSmacallan    *:VOS:*:*)
1198e4da13eeSmacallan	# From Paul.Green@stratus.com.
1199e4da13eeSmacallan	echo hppa1.1-stratus-vos
1200e4da13eeSmacallan	exit ;;
1201e4da13eeSmacallan    mc68*:A/UX:*:*)
1202e4da13eeSmacallan	echo m68k-apple-aux${UNAME_RELEASE}
1203e4da13eeSmacallan	exit ;;
1204e4da13eeSmacallan    news*:NEWS-OS:6*:*)
1205e4da13eeSmacallan	echo mips-sony-newsos6
1206e4da13eeSmacallan	exit ;;
1207e4da13eeSmacallan    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1208e4da13eeSmacallan	if [ -d /usr/nec ]; then
120965d490d0Smrg		echo mips-nec-sysv${UNAME_RELEASE}
1210e4da13eeSmacallan	else
121165d490d0Smrg		echo mips-unknown-sysv${UNAME_RELEASE}
1212e4da13eeSmacallan	fi
121365d490d0Smrg	exit ;;
1214e4da13eeSmacallan    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
1215e4da13eeSmacallan	echo powerpc-be-beos
1216e4da13eeSmacallan	exit ;;
1217e4da13eeSmacallan    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
1218e4da13eeSmacallan	echo powerpc-apple-beos
1219e4da13eeSmacallan	exit ;;
1220e4da13eeSmacallan    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
1221e4da13eeSmacallan	echo i586-pc-beos
1222e4da13eeSmacallan	exit ;;
122365d490d0Smrg    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
122465d490d0Smrg	echo i586-pc-haiku
122565d490d0Smrg	exit ;;
122665d490d0Smrg    x86_64:Haiku:*:*)
122765d490d0Smrg	echo x86_64-unknown-haiku
122865d490d0Smrg	exit ;;
1229e4da13eeSmacallan    SX-4:SUPER-UX:*:*)
1230e4da13eeSmacallan	echo sx4-nec-superux${UNAME_RELEASE}
1231e4da13eeSmacallan	exit ;;
1232e4da13eeSmacallan    SX-5:SUPER-UX:*:*)
1233e4da13eeSmacallan	echo sx5-nec-superux${UNAME_RELEASE}
1234e4da13eeSmacallan	exit ;;
1235e4da13eeSmacallan    SX-6:SUPER-UX:*:*)
1236e4da13eeSmacallan	echo sx6-nec-superux${UNAME_RELEASE}
1237e4da13eeSmacallan	exit ;;
1238e4da13eeSmacallan    SX-7:SUPER-UX:*:*)
1239e4da13eeSmacallan	echo sx7-nec-superux${UNAME_RELEASE}
1240e4da13eeSmacallan	exit ;;
1241e4da13eeSmacallan    SX-8:SUPER-UX:*:*)
1242e4da13eeSmacallan	echo sx8-nec-superux${UNAME_RELEASE}
1243e4da13eeSmacallan	exit ;;
1244e4da13eeSmacallan    SX-8R:SUPER-UX:*:*)
1245e4da13eeSmacallan	echo sx8r-nec-superux${UNAME_RELEASE}
1246e4da13eeSmacallan	exit ;;
1247e4da13eeSmacallan    Power*:Rhapsody:*:*)
1248e4da13eeSmacallan	echo powerpc-apple-rhapsody${UNAME_RELEASE}
1249e4da13eeSmacallan	exit ;;
1250e4da13eeSmacallan    *:Rhapsody:*:*)
1251e4da13eeSmacallan	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
1252e4da13eeSmacallan	exit ;;
1253e4da13eeSmacallan    *:Darwin:*:*)
1254e4da13eeSmacallan	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
1255e4da13eeSmacallan	case $UNAME_PROCESSOR in
125665d490d0Smrg	    i386)
125765d490d0Smrg		eval $set_cc_for_build
125865d490d0Smrg		if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
125965d490d0Smrg		  if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
126065d490d0Smrg		      (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
126165d490d0Smrg		      grep IS_64BIT_ARCH >/dev/null
126265d490d0Smrg		  then
126365d490d0Smrg		      UNAME_PROCESSOR="x86_64"
126465d490d0Smrg		  fi
126565d490d0Smrg		fi ;;
1266e4da13eeSmacallan	    unknown) UNAME_PROCESSOR=powerpc ;;
1267e4da13eeSmacallan	esac
1268e4da13eeSmacallan	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
1269e4da13eeSmacallan	exit ;;
1270e4da13eeSmacallan    *:procnto*:*:* | *:QNX:[0123456789]*:*)
1271e4da13eeSmacallan	UNAME_PROCESSOR=`uname -p`
1272e4da13eeSmacallan	if test "$UNAME_PROCESSOR" = "x86"; then
1273e4da13eeSmacallan		UNAME_PROCESSOR=i386
1274e4da13eeSmacallan		UNAME_MACHINE=pc
1275e4da13eeSmacallan	fi
1276e4da13eeSmacallan	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
1277e4da13eeSmacallan	exit ;;
1278e4da13eeSmacallan    *:QNX:*:4*)
1279e4da13eeSmacallan	echo i386-pc-qnx
1280e4da13eeSmacallan	exit ;;
128165d490d0Smrg    NEO-?:NONSTOP_KERNEL:*:*)
128265d490d0Smrg	echo neo-tandem-nsk${UNAME_RELEASE}
128365d490d0Smrg	exit ;;
128465d490d0Smrg    NSE-*:NONSTOP_KERNEL:*:*)
1285e4da13eeSmacallan	echo nse-tandem-nsk${UNAME_RELEASE}
1286e4da13eeSmacallan	exit ;;
1287e4da13eeSmacallan    NSR-?:NONSTOP_KERNEL:*:*)
1288e4da13eeSmacallan	echo nsr-tandem-nsk${UNAME_RELEASE}
1289e4da13eeSmacallan	exit ;;
1290e4da13eeSmacallan    *:NonStop-UX:*:*)
1291e4da13eeSmacallan	echo mips-compaq-nonstopux
1292e4da13eeSmacallan	exit ;;
1293e4da13eeSmacallan    BS2000:POSIX*:*:*)
1294e4da13eeSmacallan	echo bs2000-siemens-sysv
1295e4da13eeSmacallan	exit ;;
1296e4da13eeSmacallan    DS/*:UNIX_System_V:*:*)
1297e4da13eeSmacallan	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
1298e4da13eeSmacallan	exit ;;
1299e4da13eeSmacallan    *:Plan9:*:*)
1300e4da13eeSmacallan	# "uname -m" is not consistent, so use $cputype instead. 386
1301e4da13eeSmacallan	# is converted to i386 for consistency with other x86
1302e4da13eeSmacallan	# operating systems.
1303e4da13eeSmacallan	if test "$cputype" = "386"; then
1304e4da13eeSmacallan	    UNAME_MACHINE=i386
1305e4da13eeSmacallan	else
1306e4da13eeSmacallan	    UNAME_MACHINE="$cputype"
1307e4da13eeSmacallan	fi
1308e4da13eeSmacallan	echo ${UNAME_MACHINE}-unknown-plan9
1309e4da13eeSmacallan	exit ;;
1310e4da13eeSmacallan    *:TOPS-10:*:*)
1311e4da13eeSmacallan	echo pdp10-unknown-tops10
1312e4da13eeSmacallan	exit ;;
1313e4da13eeSmacallan    *:TENEX:*:*)
1314e4da13eeSmacallan	echo pdp10-unknown-tenex
1315e4da13eeSmacallan	exit ;;
1316e4da13eeSmacallan    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1317e4da13eeSmacallan	echo pdp10-dec-tops20
1318e4da13eeSmacallan	exit ;;
1319e4da13eeSmacallan    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1320e4da13eeSmacallan	echo pdp10-xkl-tops20
1321e4da13eeSmacallan	exit ;;
1322e4da13eeSmacallan    *:TOPS-20:*:*)
1323e4da13eeSmacallan	echo pdp10-unknown-tops20
1324e4da13eeSmacallan	exit ;;
1325e4da13eeSmacallan    *:ITS:*:*)
1326e4da13eeSmacallan	echo pdp10-unknown-its
1327e4da13eeSmacallan	exit ;;
1328e4da13eeSmacallan    SEI:*:*:SEIUX)
132965d490d0Smrg	echo mips-sei-seiux${UNAME_RELEASE}
1330e4da13eeSmacallan	exit ;;
1331e4da13eeSmacallan    *:DragonFly:*:*)
1332e4da13eeSmacallan	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
1333e4da13eeSmacallan	exit ;;
1334e4da13eeSmacallan    *:*VMS:*:*)
133565d490d0Smrg	UNAME_MACHINE=`(uname -p) 2>/dev/null`
1336e4da13eeSmacallan	case "${UNAME_MACHINE}" in
1337e4da13eeSmacallan	    A*) echo alpha-dec-vms ; exit ;;
1338e4da13eeSmacallan	    I*) echo ia64-dec-vms ; exit ;;
1339e4da13eeSmacallan	    V*) echo vax-dec-vms ; exit ;;
1340e4da13eeSmacallan	esac ;;
1341e4da13eeSmacallan    *:XENIX:*:SysV)
1342e4da13eeSmacallan	echo i386-pc-xenix
1343e4da13eeSmacallan	exit ;;
1344e4da13eeSmacallan    i*86:skyos:*:*)
1345e4da13eeSmacallan	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
1346e4da13eeSmacallan	exit ;;
1347e4da13eeSmacallan    i*86:rdos:*:*)
1348e4da13eeSmacallan	echo ${UNAME_MACHINE}-pc-rdos
1349e4da13eeSmacallan	exit ;;
135065d490d0Smrg    i*86:AROS:*:*)
135165d490d0Smrg	echo ${UNAME_MACHINE}-pc-aros
135265d490d0Smrg	exit ;;
135365d490d0Smrg    x86_64:VMkernel:*:*)
135465d490d0Smrg	echo ${UNAME_MACHINE}-unknown-esx
135565d490d0Smrg	exit ;;
1356e4da13eeSmacallanesac
1357e4da13eeSmacallan
1358e4da13eeSmacallaneval $set_cc_for_build
1359e4da13eeSmacallancat >$dummy.c <<EOF
1360e4da13eeSmacallan#ifdef _SEQUENT_
1361e4da13eeSmacallan# include <sys/types.h>
1362e4da13eeSmacallan# include <sys/utsname.h>
1363e4da13eeSmacallan#endif
1364e4da13eeSmacallanmain ()
1365e4da13eeSmacallan{
1366e4da13eeSmacallan#if defined (sony)
1367e4da13eeSmacallan#if defined (MIPSEB)
1368e4da13eeSmacallan  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
1369e4da13eeSmacallan     I don't know....  */
1370e4da13eeSmacallan  printf ("mips-sony-bsd\n"); exit (0);
1371e4da13eeSmacallan#else
1372e4da13eeSmacallan#include <sys/param.h>
1373e4da13eeSmacallan  printf ("m68k-sony-newsos%s\n",
1374e4da13eeSmacallan#ifdef NEWSOS4
137565d490d0Smrg	"4"
1376e4da13eeSmacallan#else
137765d490d0Smrg	""
1378e4da13eeSmacallan#endif
137965d490d0Smrg	); exit (0);
1380e4da13eeSmacallan#endif
1381e4da13eeSmacallan#endif
1382e4da13eeSmacallan
1383e4da13eeSmacallan#if defined (__arm) && defined (__acorn) && defined (__unix)
1384e4da13eeSmacallan  printf ("arm-acorn-riscix\n"); exit (0);
1385e4da13eeSmacallan#endif
1386e4da13eeSmacallan
1387e4da13eeSmacallan#if defined (hp300) && !defined (hpux)
1388e4da13eeSmacallan  printf ("m68k-hp-bsd\n"); exit (0);
1389e4da13eeSmacallan#endif
1390e4da13eeSmacallan
1391e4da13eeSmacallan#if defined (NeXT)
1392e4da13eeSmacallan#if !defined (__ARCHITECTURE__)
1393e4da13eeSmacallan#define __ARCHITECTURE__ "m68k"
1394e4da13eeSmacallan#endif
1395e4da13eeSmacallan  int version;
1396e4da13eeSmacallan  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
1397e4da13eeSmacallan  if (version < 4)
1398e4da13eeSmacallan    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
1399e4da13eeSmacallan  else
1400e4da13eeSmacallan    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
1401e4da13eeSmacallan  exit (0);
1402e4da13eeSmacallan#endif
1403e4da13eeSmacallan
1404e4da13eeSmacallan#if defined (MULTIMAX) || defined (n16)
1405e4da13eeSmacallan#if defined (UMAXV)
1406e4da13eeSmacallan  printf ("ns32k-encore-sysv\n"); exit (0);
1407e4da13eeSmacallan#else
1408e4da13eeSmacallan#if defined (CMU)
1409e4da13eeSmacallan  printf ("ns32k-encore-mach\n"); exit (0);
1410e4da13eeSmacallan#else
1411e4da13eeSmacallan  printf ("ns32k-encore-bsd\n"); exit (0);
1412e4da13eeSmacallan#endif
1413e4da13eeSmacallan#endif
1414e4da13eeSmacallan#endif
1415e4da13eeSmacallan
1416e4da13eeSmacallan#if defined (__386BSD__)
1417e4da13eeSmacallan  printf ("i386-pc-bsd\n"); exit (0);
1418e4da13eeSmacallan#endif
1419e4da13eeSmacallan
1420e4da13eeSmacallan#if defined (sequent)
1421e4da13eeSmacallan#if defined (i386)
1422e4da13eeSmacallan  printf ("i386-sequent-dynix\n"); exit (0);
1423e4da13eeSmacallan#endif
1424e4da13eeSmacallan#if defined (ns32000)
1425e4da13eeSmacallan  printf ("ns32k-sequent-dynix\n"); exit (0);
1426e4da13eeSmacallan#endif
1427e4da13eeSmacallan#endif
1428e4da13eeSmacallan
1429e4da13eeSmacallan#if defined (_SEQUENT_)
1430e4da13eeSmacallan    struct utsname un;
1431e4da13eeSmacallan
1432e4da13eeSmacallan    uname(&un);
1433e4da13eeSmacallan
1434e4da13eeSmacallan    if (strncmp(un.version, "V2", 2) == 0) {
1435e4da13eeSmacallan	printf ("i386-sequent-ptx2\n"); exit (0);
1436e4da13eeSmacallan    }
1437e4da13eeSmacallan    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
1438e4da13eeSmacallan	printf ("i386-sequent-ptx1\n"); exit (0);
1439e4da13eeSmacallan    }
1440e4da13eeSmacallan    printf ("i386-sequent-ptx\n"); exit (0);
1441e4da13eeSmacallan
1442e4da13eeSmacallan#endif
1443e4da13eeSmacallan
1444e4da13eeSmacallan#if defined (vax)
1445e4da13eeSmacallan# if !defined (ultrix)
1446e4da13eeSmacallan#  include <sys/param.h>
1447e4da13eeSmacallan#  if defined (BSD)
1448e4da13eeSmacallan#   if BSD == 43
1449e4da13eeSmacallan      printf ("vax-dec-bsd4.3\n"); exit (0);
1450e4da13eeSmacallan#   else
1451e4da13eeSmacallan#    if BSD == 199006
1452e4da13eeSmacallan      printf ("vax-dec-bsd4.3reno\n"); exit (0);
1453e4da13eeSmacallan#    else
1454e4da13eeSmacallan      printf ("vax-dec-bsd\n"); exit (0);
1455e4da13eeSmacallan#    endif
1456e4da13eeSmacallan#   endif
1457e4da13eeSmacallan#  else
1458e4da13eeSmacallan    printf ("vax-dec-bsd\n"); exit (0);
1459e4da13eeSmacallan#  endif
1460e4da13eeSmacallan# else
1461e4da13eeSmacallan    printf ("vax-dec-ultrix\n"); exit (0);
1462e4da13eeSmacallan# endif
1463e4da13eeSmacallan#endif
1464e4da13eeSmacallan
1465e4da13eeSmacallan#if defined (alliant) && defined (i860)
1466e4da13eeSmacallan  printf ("i860-alliant-bsd\n"); exit (0);
1467e4da13eeSmacallan#endif
1468e4da13eeSmacallan
1469e4da13eeSmacallan  exit (1);
1470e4da13eeSmacallan}
1471e4da13eeSmacallanEOF
1472e4da13eeSmacallan
1473e4da13eeSmacallan$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
1474e4da13eeSmacallan	{ echo "$SYSTEM_NAME"; exit; }
1475e4da13eeSmacallan
1476e4da13eeSmacallan# Apollos put the system type in the environment.
1477e4da13eeSmacallan
1478e4da13eeSmacallantest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
1479e4da13eeSmacallan
1480e4da13eeSmacallan# Convex versions that predate uname can use getsysinfo(1)
1481e4da13eeSmacallan
1482e4da13eeSmacallanif [ -x /usr/convex/getsysinfo ]
1483e4da13eeSmacallanthen
1484e4da13eeSmacallan    case `getsysinfo -f cpu_type` in
1485e4da13eeSmacallan    c1*)
1486e4da13eeSmacallan	echo c1-convex-bsd
1487e4da13eeSmacallan	exit ;;
1488e4da13eeSmacallan    c2*)
1489e4da13eeSmacallan	if getsysinfo -f scalar_acc
1490e4da13eeSmacallan	then echo c32-convex-bsd
1491e4da13eeSmacallan	else echo c2-convex-bsd
1492e4da13eeSmacallan	fi
1493e4da13eeSmacallan	exit ;;
1494e4da13eeSmacallan    c34*)
1495e4da13eeSmacallan	echo c34-convex-bsd
1496e4da13eeSmacallan	exit ;;
1497e4da13eeSmacallan    c38*)
1498e4da13eeSmacallan	echo c38-convex-bsd
1499e4da13eeSmacallan	exit ;;
1500e4da13eeSmacallan    c4*)
1501e4da13eeSmacallan	echo c4-convex-bsd
1502e4da13eeSmacallan	exit ;;
1503e4da13eeSmacallan    esac
1504e4da13eeSmacallanfi
1505e4da13eeSmacallan
1506e4da13eeSmacallancat >&2 <<EOF
1507e4da13eeSmacallan$0: unable to guess system type
1508e4da13eeSmacallan
1509e4da13eeSmacallanThis script, last modified $timestamp, has failed to recognize
1510e4da13eeSmacallanthe operating system you are using. It is advised that you
1511e4da13eeSmacallandownload the most up to date version of the config scripts from
1512e4da13eeSmacallan
1513e4da13eeSmacallan  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
1514e4da13eeSmacallanand
1515e4da13eeSmacallan  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
1516e4da13eeSmacallan
1517e4da13eeSmacallanIf the version you run ($0) is already up to date, please
1518e4da13eeSmacallansend the following data and any information you think might be
1519e4da13eeSmacallanpertinent to <config-patches@gnu.org> in order to provide the needed
1520e4da13eeSmacallaninformation to handle your system.
1521e4da13eeSmacallan
1522e4da13eeSmacallanconfig.guess timestamp = $timestamp
1523e4da13eeSmacallan
1524e4da13eeSmacallanuname -m = `(uname -m) 2>/dev/null || echo unknown`
1525e4da13eeSmacallanuname -r = `(uname -r) 2>/dev/null || echo unknown`
1526e4da13eeSmacallanuname -s = `(uname -s) 2>/dev/null || echo unknown`
1527e4da13eeSmacallanuname -v = `(uname -v) 2>/dev/null || echo unknown`
1528e4da13eeSmacallan
1529e4da13eeSmacallan/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1530e4da13eeSmacallan/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
1531e4da13eeSmacallan
1532e4da13eeSmacallanhostinfo               = `(hostinfo) 2>/dev/null`
1533e4da13eeSmacallan/bin/universe          = `(/bin/universe) 2>/dev/null`
1534e4da13eeSmacallan/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
1535e4da13eeSmacallan/bin/arch              = `(/bin/arch) 2>/dev/null`
1536e4da13eeSmacallan/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
1537e4da13eeSmacallan/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1538e4da13eeSmacallan
1539e4da13eeSmacallanUNAME_MACHINE = ${UNAME_MACHINE}
1540e4da13eeSmacallanUNAME_RELEASE = ${UNAME_RELEASE}
1541e4da13eeSmacallanUNAME_SYSTEM  = ${UNAME_SYSTEM}
1542e4da13eeSmacallanUNAME_VERSION = ${UNAME_VERSION}
1543e4da13eeSmacallanEOF
1544e4da13eeSmacallan
1545e4da13eeSmacallanexit 1
1546e4da13eeSmacallan
1547e4da13eeSmacallan# Local variables:
1548e4da13eeSmacallan# eval: (add-hook 'write-file-hooks 'time-stamp)
1549e4da13eeSmacallan# time-stamp-start: "timestamp='"
1550e4da13eeSmacallan# time-stamp-format: "%:y-%02m-%02d"
1551e4da13eeSmacallan# time-stamp-end: "'"
1552e4da13eeSmacallan# End:
1553