config.guess revision 966b534a
1a0d3b6eaSmrg#! /bin/sh
2a0d3b6eaSmrg# Attempt to guess a canonical system name.
3a0d3b6eaSmrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4966b534aSmrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
5966b534aSmrg#   2011, 2012 Free Software Foundation, Inc.
6a0d3b6eaSmrg
7966b534aSmrgtimestamp='2012-02-10'
8a0d3b6eaSmrg
9a0d3b6eaSmrg# This file is free software; you can redistribute it and/or modify it
10a0d3b6eaSmrg# under the terms of the GNU General Public License as published by
11a0d3b6eaSmrg# the Free Software Foundation; either version 2 of the License, or
12a0d3b6eaSmrg# (at your option) any later version.
13a0d3b6eaSmrg#
14a0d3b6eaSmrg# This program is distributed in the hope that it will be useful, but
15a0d3b6eaSmrg# WITHOUT ANY WARRANTY; without even the implied warranty of
16a0d3b6eaSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17a0d3b6eaSmrg# General Public License for more details.
18a0d3b6eaSmrg#
19a0d3b6eaSmrg# You should have received a copy of the GNU General Public License
20966b534aSmrg# along with this program; if not, see <http://www.gnu.org/licenses/>.
21a0d3b6eaSmrg#
22a0d3b6eaSmrg# As a special exception to the GNU General Public License, if you
23a0d3b6eaSmrg# distribute this file as part of a program that contains a
24a0d3b6eaSmrg# configuration script generated by Autoconf, you may include it under
25a0d3b6eaSmrg# the same distribution terms that you use for the rest of that program.
26a0d3b6eaSmrg
27a0d3b6eaSmrg
28f8a31ee4Smrg# Originally written by Per Bothner.  Please send patches (context
29f8a31ee4Smrg# diff format) to <config-patches@gnu.org> and include a ChangeLog
30f8a31ee4Smrg# entry.
31a0d3b6eaSmrg#
32a0d3b6eaSmrg# This script attempts to guess a canonical system name similar to
33a0d3b6eaSmrg# config.sub.  If it succeeds, it prints the system name on stdout, and
34a0d3b6eaSmrg# exits with 0.  Otherwise, it exits with 1.
35a0d3b6eaSmrg#
36f8a31ee4Smrg# You can get the latest version of this script from:
37f8a31ee4Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
38a0d3b6eaSmrg
39a0d3b6eaSmrgme=`echo "$0" | sed -e 's,.*/,,'`
40a0d3b6eaSmrg
41a0d3b6eaSmrgusage="\
42a0d3b6eaSmrgUsage: $0 [OPTION]
43a0d3b6eaSmrg
44a0d3b6eaSmrgOutput the configuration name of the system \`$me' is run on.
45a0d3b6eaSmrg
46a0d3b6eaSmrgOperation modes:
47a0d3b6eaSmrg  -h, --help         print this help, then exit
48a0d3b6eaSmrg  -t, --time-stamp   print date of last modification, then exit
49a0d3b6eaSmrg  -v, --version      print version number, then exit
50a0d3b6eaSmrg
51a0d3b6eaSmrgReport bugs and patches to <config-patches@gnu.org>."
52a0d3b6eaSmrg
53a0d3b6eaSmrgversion="\
54a0d3b6eaSmrgGNU config.guess ($timestamp)
55a0d3b6eaSmrg
56a0d3b6eaSmrgOriginally written by Per Bothner.
57f8a31ee4SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
58966b534aSmrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
59966b534aSmrgFree Software Foundation, Inc.
60a0d3b6eaSmrg
61a0d3b6eaSmrgThis is free software; see the source for copying conditions.  There is NO
62a0d3b6eaSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
63a0d3b6eaSmrg
64a0d3b6eaSmrghelp="
65a0d3b6eaSmrgTry \`$me --help' for more information."
66a0d3b6eaSmrg
67a0d3b6eaSmrg# Parse command line
68a0d3b6eaSmrgwhile test $# -gt 0 ; do
69a0d3b6eaSmrg  case $1 in
70a0d3b6eaSmrg    --time-stamp | --time* | -t )
71a0d3b6eaSmrg       echo "$timestamp" ; exit ;;
72a0d3b6eaSmrg    --version | -v )
73a0d3b6eaSmrg       echo "$version" ; exit ;;
74a0d3b6eaSmrg    --help | --h* | -h )
75a0d3b6eaSmrg       echo "$usage"; exit ;;
76a0d3b6eaSmrg    -- )     # Stop option processing
77a0d3b6eaSmrg       shift; break ;;
78a0d3b6eaSmrg    - )	# Use stdin as input.
79a0d3b6eaSmrg       break ;;
80a0d3b6eaSmrg    -* )
81a0d3b6eaSmrg       echo "$me: invalid option $1$help" >&2
82a0d3b6eaSmrg       exit 1 ;;
83a0d3b6eaSmrg    * )
84a0d3b6eaSmrg       break ;;
85a0d3b6eaSmrg  esac
86a0d3b6eaSmrgdone
87a0d3b6eaSmrg
88a0d3b6eaSmrgif test $# != 0; then
89a0d3b6eaSmrg  echo "$me: too many arguments$help" >&2
90a0d3b6eaSmrg  exit 1
91a0d3b6eaSmrgfi
92a0d3b6eaSmrg
93966b534aSmrgtrap 'exit 1' 1 2 15
94a0d3b6eaSmrg
95a0d3b6eaSmrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
96a0d3b6eaSmrg# compiler to aid in system detection is discouraged as it requires
97a0d3b6eaSmrg# temporary files to be created and, as you can see below, it is a
98a0d3b6eaSmrg# headache to deal with in a portable fashion.
99a0d3b6eaSmrg
100a0d3b6eaSmrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
101a0d3b6eaSmrg# use `HOST_CC' if defined, but it is deprecated.
102a0d3b6eaSmrg
103a0d3b6eaSmrg# Portable tmp directory creation inspired by the Autoconf team.
104a0d3b6eaSmrg
105a0d3b6eaSmrgset_cc_for_build='
106a0d3b6eaSmrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
107966b534aSmrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
108a0d3b6eaSmrg: ${TMPDIR=/tmp} ;
109a0d3b6eaSmrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
110a0d3b6eaSmrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
111a0d3b6eaSmrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
112a0d3b6eaSmrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
113a0d3b6eaSmrgdummy=$tmp/dummy ;
114a0d3b6eaSmrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
115a0d3b6eaSmrgcase $CC_FOR_BUILD,$HOST_CC,$CC in
116a0d3b6eaSmrg ,,)    echo "int x;" > $dummy.c ;
117a0d3b6eaSmrg	for c in cc gcc c89 c99 ; do
118a0d3b6eaSmrg	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
119a0d3b6eaSmrg	     CC_FOR_BUILD="$c"; break ;
120a0d3b6eaSmrg	  fi ;
121a0d3b6eaSmrg	done ;
122a0d3b6eaSmrg	if test x"$CC_FOR_BUILD" = x ; then
123a0d3b6eaSmrg	  CC_FOR_BUILD=no_compiler_found ;
124a0d3b6eaSmrg	fi
125a0d3b6eaSmrg	;;
126a0d3b6eaSmrg ,,*)   CC_FOR_BUILD=$CC ;;
127a0d3b6eaSmrg ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
128a0d3b6eaSmrgesac ; set_cc_for_build= ;'
129a0d3b6eaSmrg
130a0d3b6eaSmrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
131a0d3b6eaSmrg# (ghazi@noc.rutgers.edu 1994-08-24)
132a0d3b6eaSmrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then
133a0d3b6eaSmrg	PATH=$PATH:/.attbin ; export PATH
134a0d3b6eaSmrgfi
135a0d3b6eaSmrg
136a0d3b6eaSmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
137a0d3b6eaSmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
138a0d3b6eaSmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
139a0d3b6eaSmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
140a0d3b6eaSmrg
141a0d3b6eaSmrg# Note: order is significant - the case branches are not exclusive.
142a0d3b6eaSmrg
143a0d3b6eaSmrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
144a0d3b6eaSmrg    *:NetBSD:*:*)
145a0d3b6eaSmrg	# NetBSD (nbsd) targets should (where applicable) match one or
146966b534aSmrg	# more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
147a0d3b6eaSmrg	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
148a0d3b6eaSmrg	# switched to ELF, *-*-netbsd* would select the old
149a0d3b6eaSmrg	# object file format.  This provides both forward
150a0d3b6eaSmrg	# compatibility and a consistent mechanism for selecting the
151a0d3b6eaSmrg	# object file format.
152a0d3b6eaSmrg	#
153a0d3b6eaSmrg	# Note: NetBSD doesn't particularly care about the vendor
154a0d3b6eaSmrg	# portion of the name.  We always set it to "unknown".
155a0d3b6eaSmrg	sysctl="sysctl -n hw.machine_arch"
156a0d3b6eaSmrg	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
157a0d3b6eaSmrg	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
158a0d3b6eaSmrg	case "${UNAME_MACHINE_ARCH}" in
159a0d3b6eaSmrg	    armeb) machine=armeb-unknown ;;
160a0d3b6eaSmrg	    arm*) machine=arm-unknown ;;
161a0d3b6eaSmrg	    sh3el) machine=shl-unknown ;;
162a0d3b6eaSmrg	    sh3eb) machine=sh-unknown ;;
163f8a31ee4Smrg	    sh5el) machine=sh5le-unknown ;;
164a0d3b6eaSmrg	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
165a0d3b6eaSmrg	esac
166a0d3b6eaSmrg	# The Operating System including object format, if it has switched
167a0d3b6eaSmrg	# to ELF recently, or will in the future.
168a0d3b6eaSmrg	case "${UNAME_MACHINE_ARCH}" in
169a0d3b6eaSmrg	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
170a0d3b6eaSmrg		eval $set_cc_for_build
171a0d3b6eaSmrg		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
172f8a31ee4Smrg			| grep -q __ELF__
173a0d3b6eaSmrg		then
174a0d3b6eaSmrg		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
175a0d3b6eaSmrg		    # Return netbsd for either.  FIX?
176a0d3b6eaSmrg		    os=netbsd
177a0d3b6eaSmrg		else
178a0d3b6eaSmrg		    os=netbsdelf
179a0d3b6eaSmrg		fi
180a0d3b6eaSmrg		;;
181a0d3b6eaSmrg	    *)
182966b534aSmrg		os=netbsd
183a0d3b6eaSmrg		;;
184a0d3b6eaSmrg	esac
185a0d3b6eaSmrg	# The OS release
186a0d3b6eaSmrg	# Debian GNU/NetBSD machines have a different userland, and
187a0d3b6eaSmrg	# thus, need a distinct triplet. However, they do not need
188a0d3b6eaSmrg	# kernel version information, so it can be replaced with a
189a0d3b6eaSmrg	# suitable tag, in the style of linux-gnu.
190a0d3b6eaSmrg	case "${UNAME_VERSION}" in
191a0d3b6eaSmrg	    Debian*)
192a0d3b6eaSmrg		release='-gnu'
193a0d3b6eaSmrg		;;
194a0d3b6eaSmrg	    *)
195a0d3b6eaSmrg		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
196a0d3b6eaSmrg		;;
197a0d3b6eaSmrg	esac
198a0d3b6eaSmrg	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
199a0d3b6eaSmrg	# contains redundant information, the shorter form:
200a0d3b6eaSmrg	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
201a0d3b6eaSmrg	echo "${machine}-${os}${release}"
202a0d3b6eaSmrg	exit ;;
203a0d3b6eaSmrg    *:OpenBSD:*:*)
204a0d3b6eaSmrg	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
205a0d3b6eaSmrg	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
206a0d3b6eaSmrg	exit ;;
207a0d3b6eaSmrg    *:ekkoBSD:*:*)
208a0d3b6eaSmrg	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
209a0d3b6eaSmrg	exit ;;
210a0d3b6eaSmrg    *:SolidBSD:*:*)
211a0d3b6eaSmrg	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
212a0d3b6eaSmrg	exit ;;
213a0d3b6eaSmrg    macppc:MirBSD:*:*)
214a0d3b6eaSmrg	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
215a0d3b6eaSmrg	exit ;;
216a0d3b6eaSmrg    *:MirBSD:*:*)
217a0d3b6eaSmrg	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
218a0d3b6eaSmrg	exit ;;
219a0d3b6eaSmrg    alpha:OSF1:*:*)
220a0d3b6eaSmrg	case $UNAME_RELEASE in
221a0d3b6eaSmrg	*4.0)
222a0d3b6eaSmrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
223a0d3b6eaSmrg		;;
224a0d3b6eaSmrg	*5.*)
225966b534aSmrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
226a0d3b6eaSmrg		;;
227a0d3b6eaSmrg	esac
228a0d3b6eaSmrg	# According to Compaq, /usr/sbin/psrinfo has been available on
229a0d3b6eaSmrg	# OSF/1 and Tru64 systems produced since 1995.  I hope that
230a0d3b6eaSmrg	# covers most systems running today.  This code pipes the CPU
231a0d3b6eaSmrg	# types through head -n 1, so we only detect the type of CPU 0.
232a0d3b6eaSmrg	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
233a0d3b6eaSmrg	case "$ALPHA_CPU_TYPE" in
234a0d3b6eaSmrg	    "EV4 (21064)")
235a0d3b6eaSmrg		UNAME_MACHINE="alpha" ;;
236a0d3b6eaSmrg	    "EV4.5 (21064)")
237a0d3b6eaSmrg		UNAME_MACHINE="alpha" ;;
238a0d3b6eaSmrg	    "LCA4 (21066/21068)")
239a0d3b6eaSmrg		UNAME_MACHINE="alpha" ;;
240a0d3b6eaSmrg	    "EV5 (21164)")
241a0d3b6eaSmrg		UNAME_MACHINE="alphaev5" ;;
242a0d3b6eaSmrg	    "EV5.6 (21164A)")
243a0d3b6eaSmrg		UNAME_MACHINE="alphaev56" ;;
244a0d3b6eaSmrg	    "EV5.6 (21164PC)")
245a0d3b6eaSmrg		UNAME_MACHINE="alphapca56" ;;
246a0d3b6eaSmrg	    "EV5.7 (21164PC)")
247a0d3b6eaSmrg		UNAME_MACHINE="alphapca57" ;;
248a0d3b6eaSmrg	    "EV6 (21264)")
249a0d3b6eaSmrg		UNAME_MACHINE="alphaev6" ;;
250a0d3b6eaSmrg	    "EV6.7 (21264A)")
251a0d3b6eaSmrg		UNAME_MACHINE="alphaev67" ;;
252a0d3b6eaSmrg	    "EV6.8CB (21264C)")
253a0d3b6eaSmrg		UNAME_MACHINE="alphaev68" ;;
254a0d3b6eaSmrg	    "EV6.8AL (21264B)")
255a0d3b6eaSmrg		UNAME_MACHINE="alphaev68" ;;
256a0d3b6eaSmrg	    "EV6.8CX (21264D)")
257a0d3b6eaSmrg		UNAME_MACHINE="alphaev68" ;;
258a0d3b6eaSmrg	    "EV6.9A (21264/EV69A)")
259a0d3b6eaSmrg		UNAME_MACHINE="alphaev69" ;;
260a0d3b6eaSmrg	    "EV7 (21364)")
261a0d3b6eaSmrg		UNAME_MACHINE="alphaev7" ;;
262a0d3b6eaSmrg	    "EV7.9 (21364A)")
263a0d3b6eaSmrg		UNAME_MACHINE="alphaev79" ;;
264a0d3b6eaSmrg	esac
265a0d3b6eaSmrg	# A Pn.n version is a patched version.
266a0d3b6eaSmrg	# A Vn.n version is a released version.
267a0d3b6eaSmrg	# A Tn.n version is a released field test version.
268a0d3b6eaSmrg	# A Xn.n version is an unreleased experimental baselevel.
269a0d3b6eaSmrg	# 1.2 uses "1.2" for uname -r.
270a0d3b6eaSmrg	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
271966b534aSmrg	# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
272966b534aSmrg	exitcode=$?
273966b534aSmrg	trap '' 0
274966b534aSmrg	exit $exitcode ;;
275a0d3b6eaSmrg    Alpha\ *:Windows_NT*:*)
276a0d3b6eaSmrg	# How do we know it's Interix rather than the generic POSIX subsystem?
277a0d3b6eaSmrg	# Should we change UNAME_MACHINE based on the output of uname instead
278a0d3b6eaSmrg	# of the specific Alpha model?
279a0d3b6eaSmrg	echo alpha-pc-interix
280a0d3b6eaSmrg	exit ;;
281a0d3b6eaSmrg    21064:Windows_NT:50:3)
282a0d3b6eaSmrg	echo alpha-dec-winnt3.5
283a0d3b6eaSmrg	exit ;;
284a0d3b6eaSmrg    Amiga*:UNIX_System_V:4.0:*)
285a0d3b6eaSmrg	echo m68k-unknown-sysv4
286a0d3b6eaSmrg	exit ;;
287a0d3b6eaSmrg    *:[Aa]miga[Oo][Ss]:*:*)
288a0d3b6eaSmrg	echo ${UNAME_MACHINE}-unknown-amigaos
289a0d3b6eaSmrg	exit ;;
290a0d3b6eaSmrg    *:[Mm]orph[Oo][Ss]:*:*)
291a0d3b6eaSmrg	echo ${UNAME_MACHINE}-unknown-morphos
292a0d3b6eaSmrg	exit ;;
293a0d3b6eaSmrg    *:OS/390:*:*)
294a0d3b6eaSmrg	echo i370-ibm-openedition
295a0d3b6eaSmrg	exit ;;
296a0d3b6eaSmrg    *:z/VM:*:*)
297a0d3b6eaSmrg	echo s390-ibm-zvmoe
298a0d3b6eaSmrg	exit ;;
299a0d3b6eaSmrg    *:OS400:*:*)
300966b534aSmrg	echo powerpc-ibm-os400
301a0d3b6eaSmrg	exit ;;
302a0d3b6eaSmrg    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
303a0d3b6eaSmrg	echo arm-acorn-riscix${UNAME_RELEASE}
304a0d3b6eaSmrg	exit ;;
305a0d3b6eaSmrg    arm:riscos:*:*|arm:RISCOS:*:*)
306a0d3b6eaSmrg	echo arm-unknown-riscos
307a0d3b6eaSmrg	exit ;;
308a0d3b6eaSmrg    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
309a0d3b6eaSmrg	echo hppa1.1-hitachi-hiuxmpp
310a0d3b6eaSmrg	exit ;;
311a0d3b6eaSmrg    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
312a0d3b6eaSmrg	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
313a0d3b6eaSmrg	if test "`(/bin/universe) 2>/dev/null`" = att ; then
314a0d3b6eaSmrg		echo pyramid-pyramid-sysv3
315a0d3b6eaSmrg	else
316a0d3b6eaSmrg		echo pyramid-pyramid-bsd
317a0d3b6eaSmrg	fi
318a0d3b6eaSmrg	exit ;;
319a0d3b6eaSmrg    NILE*:*:*:dcosx)
320a0d3b6eaSmrg	echo pyramid-pyramid-svr4
321a0d3b6eaSmrg	exit ;;
322a0d3b6eaSmrg    DRS?6000:unix:4.0:6*)
323a0d3b6eaSmrg	echo sparc-icl-nx6
324a0d3b6eaSmrg	exit ;;
325a0d3b6eaSmrg    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
326a0d3b6eaSmrg	case `/usr/bin/uname -p` in
327a0d3b6eaSmrg	    sparc) echo sparc-icl-nx7; exit ;;
328a0d3b6eaSmrg	esac ;;
329f8a31ee4Smrg    s390x:SunOS:*:*)
330f8a31ee4Smrg	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
331f8a31ee4Smrg	exit ;;
332a0d3b6eaSmrg    sun4H:SunOS:5.*:*)
333a0d3b6eaSmrg	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
334a0d3b6eaSmrg	exit ;;
335a0d3b6eaSmrg    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
336a0d3b6eaSmrg	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
337a0d3b6eaSmrg	exit ;;
338f8a31ee4Smrg    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
339f8a31ee4Smrg	echo i386-pc-auroraux${UNAME_RELEASE}
340f8a31ee4Smrg	exit ;;
341f8a31ee4Smrg    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
342f8a31ee4Smrg	eval $set_cc_for_build
343f8a31ee4Smrg	SUN_ARCH="i386"
344f8a31ee4Smrg	# If there is a compiler, see if it is configured for 64-bit objects.
345f8a31ee4Smrg	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
346f8a31ee4Smrg	# This test works for both compilers.
347f8a31ee4Smrg	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
348f8a31ee4Smrg	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
349f8a31ee4Smrg		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
350f8a31ee4Smrg		grep IS_64BIT_ARCH >/dev/null
351f8a31ee4Smrg	    then
352f8a31ee4Smrg		SUN_ARCH="x86_64"
353f8a31ee4Smrg	    fi
354f8a31ee4Smrg	fi
355f8a31ee4Smrg	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
356a0d3b6eaSmrg	exit ;;
357a0d3b6eaSmrg    sun4*:SunOS:6*:*)
358a0d3b6eaSmrg	# According to config.sub, this is the proper way to canonicalize
359a0d3b6eaSmrg	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
360a0d3b6eaSmrg	# it's likely to be more like Solaris than SunOS4.
361a0d3b6eaSmrg	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
362a0d3b6eaSmrg	exit ;;
363a0d3b6eaSmrg    sun4*:SunOS:*:*)
364a0d3b6eaSmrg	case "`/usr/bin/arch -k`" in
365a0d3b6eaSmrg	    Series*|S4*)
366a0d3b6eaSmrg		UNAME_RELEASE=`uname -v`
367a0d3b6eaSmrg		;;
368a0d3b6eaSmrg	esac
369a0d3b6eaSmrg	# Japanese Language versions have a version number like `4.1.3-JL'.
370a0d3b6eaSmrg	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
371a0d3b6eaSmrg	exit ;;
372a0d3b6eaSmrg    sun3*:SunOS:*:*)
373a0d3b6eaSmrg	echo m68k-sun-sunos${UNAME_RELEASE}
374a0d3b6eaSmrg	exit ;;
375a0d3b6eaSmrg    sun*:*:4.2BSD:*)
376a0d3b6eaSmrg	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
377a0d3b6eaSmrg	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
378a0d3b6eaSmrg	case "`/bin/arch`" in
379a0d3b6eaSmrg	    sun3)
380a0d3b6eaSmrg		echo m68k-sun-sunos${UNAME_RELEASE}
381a0d3b6eaSmrg		;;
382a0d3b6eaSmrg	    sun4)
383a0d3b6eaSmrg		echo sparc-sun-sunos${UNAME_RELEASE}
384a0d3b6eaSmrg		;;
385a0d3b6eaSmrg	esac
386a0d3b6eaSmrg	exit ;;
387a0d3b6eaSmrg    aushp:SunOS:*:*)
388a0d3b6eaSmrg	echo sparc-auspex-sunos${UNAME_RELEASE}
389a0d3b6eaSmrg	exit ;;
390a0d3b6eaSmrg    # The situation for MiNT is a little confusing.  The machine name
391a0d3b6eaSmrg    # can be virtually everything (everything which is not
392a0d3b6eaSmrg    # "atarist" or "atariste" at least should have a processor
393a0d3b6eaSmrg    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
394a0d3b6eaSmrg    # to the lowercase version "mint" (or "freemint").  Finally
395a0d3b6eaSmrg    # the system name "TOS" denotes a system which is actually not
396a0d3b6eaSmrg    # MiNT.  But MiNT is downward compatible to TOS, so this should
397a0d3b6eaSmrg    # be no problem.
398a0d3b6eaSmrg    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
399966b534aSmrg	echo m68k-atari-mint${UNAME_RELEASE}
400a0d3b6eaSmrg	exit ;;
401a0d3b6eaSmrg    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
402a0d3b6eaSmrg	echo m68k-atari-mint${UNAME_RELEASE}
403966b534aSmrg	exit ;;
404a0d3b6eaSmrg    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
405966b534aSmrg	echo m68k-atari-mint${UNAME_RELEASE}
406a0d3b6eaSmrg	exit ;;
407a0d3b6eaSmrg    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
408966b534aSmrg	echo m68k-milan-mint${UNAME_RELEASE}
409966b534aSmrg	exit ;;
410a0d3b6eaSmrg    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
411966b534aSmrg	echo m68k-hades-mint${UNAME_RELEASE}
412966b534aSmrg	exit ;;
413a0d3b6eaSmrg    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
414966b534aSmrg	echo m68k-unknown-mint${UNAME_RELEASE}
415966b534aSmrg	exit ;;
416a0d3b6eaSmrg    m68k:machten:*:*)
417a0d3b6eaSmrg	echo m68k-apple-machten${UNAME_RELEASE}
418a0d3b6eaSmrg	exit ;;
419a0d3b6eaSmrg    powerpc:machten:*:*)
420a0d3b6eaSmrg	echo powerpc-apple-machten${UNAME_RELEASE}
421a0d3b6eaSmrg	exit ;;
422a0d3b6eaSmrg    RISC*:Mach:*:*)
423a0d3b6eaSmrg	echo mips-dec-mach_bsd4.3
424a0d3b6eaSmrg	exit ;;
425a0d3b6eaSmrg    RISC*:ULTRIX:*:*)
426a0d3b6eaSmrg	echo mips-dec-ultrix${UNAME_RELEASE}
427a0d3b6eaSmrg	exit ;;
428a0d3b6eaSmrg    VAX*:ULTRIX*:*:*)
429a0d3b6eaSmrg	echo vax-dec-ultrix${UNAME_RELEASE}
430a0d3b6eaSmrg	exit ;;
431a0d3b6eaSmrg    2020:CLIX:*:* | 2430:CLIX:*:*)
432a0d3b6eaSmrg	echo clipper-intergraph-clix${UNAME_RELEASE}
433a0d3b6eaSmrg	exit ;;
434a0d3b6eaSmrg    mips:*:*:UMIPS | mips:*:*:RISCos)
435a0d3b6eaSmrg	eval $set_cc_for_build
436a0d3b6eaSmrg	sed 's/^	//' << EOF >$dummy.c
437a0d3b6eaSmrg#ifdef __cplusplus
438a0d3b6eaSmrg#include <stdio.h>  /* for printf() prototype */
439a0d3b6eaSmrg	int main (int argc, char *argv[]) {
440a0d3b6eaSmrg#else
441a0d3b6eaSmrg	int main (argc, argv) int argc; char *argv[]; {
442a0d3b6eaSmrg#endif
443a0d3b6eaSmrg	#if defined (host_mips) && defined (MIPSEB)
444a0d3b6eaSmrg	#if defined (SYSTYPE_SYSV)
445a0d3b6eaSmrg	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
446a0d3b6eaSmrg	#endif
447a0d3b6eaSmrg	#if defined (SYSTYPE_SVR4)
448a0d3b6eaSmrg	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
449a0d3b6eaSmrg	#endif
450a0d3b6eaSmrg	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
451a0d3b6eaSmrg	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
452a0d3b6eaSmrg	#endif
453a0d3b6eaSmrg	#endif
454a0d3b6eaSmrg	  exit (-1);
455a0d3b6eaSmrg	}
456a0d3b6eaSmrgEOF
457a0d3b6eaSmrg	$CC_FOR_BUILD -o $dummy $dummy.c &&
458a0d3b6eaSmrg	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
459a0d3b6eaSmrg	  SYSTEM_NAME=`$dummy $dummyarg` &&
460a0d3b6eaSmrg	    { echo "$SYSTEM_NAME"; exit; }
461a0d3b6eaSmrg	echo mips-mips-riscos${UNAME_RELEASE}
462a0d3b6eaSmrg	exit ;;
463a0d3b6eaSmrg    Motorola:PowerMAX_OS:*:*)
464a0d3b6eaSmrg	echo powerpc-motorola-powermax
465a0d3b6eaSmrg	exit ;;
466a0d3b6eaSmrg    Motorola:*:4.3:PL8-*)
467a0d3b6eaSmrg	echo powerpc-harris-powermax
468a0d3b6eaSmrg	exit ;;
469a0d3b6eaSmrg    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
470a0d3b6eaSmrg	echo powerpc-harris-powermax
471a0d3b6eaSmrg	exit ;;
472a0d3b6eaSmrg    Night_Hawk:Power_UNIX:*:*)
473a0d3b6eaSmrg	echo powerpc-harris-powerunix
474a0d3b6eaSmrg	exit ;;
475a0d3b6eaSmrg    m88k:CX/UX:7*:*)
476a0d3b6eaSmrg	echo m88k-harris-cxux7
477a0d3b6eaSmrg	exit ;;
478a0d3b6eaSmrg    m88k:*:4*:R4*)
479a0d3b6eaSmrg	echo m88k-motorola-sysv4
480a0d3b6eaSmrg	exit ;;
481a0d3b6eaSmrg    m88k:*:3*:R3*)
482a0d3b6eaSmrg	echo m88k-motorola-sysv3
483a0d3b6eaSmrg	exit ;;
484a0d3b6eaSmrg    AViiON:dgux:*:*)
485966b534aSmrg	# DG/UX returns AViiON for all architectures
486966b534aSmrg	UNAME_PROCESSOR=`/usr/bin/uname -p`
487a0d3b6eaSmrg	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
488a0d3b6eaSmrg	then
489a0d3b6eaSmrg	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
490a0d3b6eaSmrg	       [ ${TARGET_BINARY_INTERFACE}x = x ]
491a0d3b6eaSmrg	    then
492a0d3b6eaSmrg		echo m88k-dg-dgux${UNAME_RELEASE}
493a0d3b6eaSmrg	    else
494a0d3b6eaSmrg		echo m88k-dg-dguxbcs${UNAME_RELEASE}
495a0d3b6eaSmrg	    fi
496a0d3b6eaSmrg	else
497a0d3b6eaSmrg	    echo i586-dg-dgux${UNAME_RELEASE}
498a0d3b6eaSmrg	fi
499966b534aSmrg	exit ;;
500a0d3b6eaSmrg    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
501a0d3b6eaSmrg	echo m88k-dolphin-sysv3
502a0d3b6eaSmrg	exit ;;
503a0d3b6eaSmrg    M88*:*:R3*:*)
504a0d3b6eaSmrg	# Delta 88k system running SVR3
505a0d3b6eaSmrg	echo m88k-motorola-sysv3
506a0d3b6eaSmrg	exit ;;
507a0d3b6eaSmrg    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
508a0d3b6eaSmrg	echo m88k-tektronix-sysv3
509a0d3b6eaSmrg	exit ;;
510a0d3b6eaSmrg    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
511a0d3b6eaSmrg	echo m68k-tektronix-bsd
512a0d3b6eaSmrg	exit ;;
513a0d3b6eaSmrg    *:IRIX*:*:*)
514a0d3b6eaSmrg	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
515a0d3b6eaSmrg	exit ;;
516a0d3b6eaSmrg    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
517a0d3b6eaSmrg	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
518a0d3b6eaSmrg	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
519a0d3b6eaSmrg    i*86:AIX:*:*)
520a0d3b6eaSmrg	echo i386-ibm-aix
521a0d3b6eaSmrg	exit ;;
522a0d3b6eaSmrg    ia64:AIX:*:*)
523a0d3b6eaSmrg	if [ -x /usr/bin/oslevel ] ; then
524a0d3b6eaSmrg		IBM_REV=`/usr/bin/oslevel`
525a0d3b6eaSmrg	else
526a0d3b6eaSmrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
527a0d3b6eaSmrg	fi
528a0d3b6eaSmrg	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
529a0d3b6eaSmrg	exit ;;
530a0d3b6eaSmrg    *:AIX:2:3)
531a0d3b6eaSmrg	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
532a0d3b6eaSmrg		eval $set_cc_for_build
533a0d3b6eaSmrg		sed 's/^		//' << EOF >$dummy.c
534a0d3b6eaSmrg		#include <sys/systemcfg.h>
535a0d3b6eaSmrg
536a0d3b6eaSmrg		main()
537a0d3b6eaSmrg			{
538a0d3b6eaSmrg			if (!__power_pc())
539a0d3b6eaSmrg				exit(1);
540a0d3b6eaSmrg			puts("powerpc-ibm-aix3.2.5");
541a0d3b6eaSmrg			exit(0);
542a0d3b6eaSmrg			}
543a0d3b6eaSmrgEOF
544a0d3b6eaSmrg		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
545a0d3b6eaSmrg		then
546a0d3b6eaSmrg			echo "$SYSTEM_NAME"
547a0d3b6eaSmrg		else
548a0d3b6eaSmrg			echo rs6000-ibm-aix3.2.5
549a0d3b6eaSmrg		fi
550a0d3b6eaSmrg	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
551a0d3b6eaSmrg		echo rs6000-ibm-aix3.2.4
552a0d3b6eaSmrg	else
553a0d3b6eaSmrg		echo rs6000-ibm-aix3.2
554a0d3b6eaSmrg	fi
555a0d3b6eaSmrg	exit ;;
5564def10e6Smrg    *:AIX:*:[4567])
557a0d3b6eaSmrg	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
558a0d3b6eaSmrg	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
559a0d3b6eaSmrg		IBM_ARCH=rs6000
560a0d3b6eaSmrg	else
561a0d3b6eaSmrg		IBM_ARCH=powerpc
562a0d3b6eaSmrg	fi
563a0d3b6eaSmrg	if [ -x /usr/bin/oslevel ] ; then
564a0d3b6eaSmrg		IBM_REV=`/usr/bin/oslevel`
565a0d3b6eaSmrg	else
566a0d3b6eaSmrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
567a0d3b6eaSmrg	fi
568a0d3b6eaSmrg	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
569a0d3b6eaSmrg	exit ;;
570a0d3b6eaSmrg    *:AIX:*:*)
571a0d3b6eaSmrg	echo rs6000-ibm-aix
572a0d3b6eaSmrg	exit ;;
573a0d3b6eaSmrg    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
574a0d3b6eaSmrg	echo romp-ibm-bsd4.4
575a0d3b6eaSmrg	exit ;;
576a0d3b6eaSmrg    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
577a0d3b6eaSmrg	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
578a0d3b6eaSmrg	exit ;;                             # report: romp-ibm BSD 4.3
579a0d3b6eaSmrg    *:BOSX:*:*)
580a0d3b6eaSmrg	echo rs6000-bull-bosx
581a0d3b6eaSmrg	exit ;;
582a0d3b6eaSmrg    DPX/2?00:B.O.S.:*:*)
583a0d3b6eaSmrg	echo m68k-bull-sysv3
584a0d3b6eaSmrg	exit ;;
585a0d3b6eaSmrg    9000/[34]??:4.3bsd:1.*:*)
586a0d3b6eaSmrg	echo m68k-hp-bsd
587a0d3b6eaSmrg	exit ;;
588a0d3b6eaSmrg    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
589a0d3b6eaSmrg	echo m68k-hp-bsd4.4
590a0d3b6eaSmrg	exit ;;
591a0d3b6eaSmrg    9000/[34678]??:HP-UX:*:*)
592a0d3b6eaSmrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
593a0d3b6eaSmrg	case "${UNAME_MACHINE}" in
594a0d3b6eaSmrg	    9000/31? )            HP_ARCH=m68000 ;;
595a0d3b6eaSmrg	    9000/[34]?? )         HP_ARCH=m68k ;;
596a0d3b6eaSmrg	    9000/[678][0-9][0-9])
597a0d3b6eaSmrg		if [ -x /usr/bin/getconf ]; then
598a0d3b6eaSmrg		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
599966b534aSmrg		    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
600966b534aSmrg		    case "${sc_cpu_version}" in
601966b534aSmrg		      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
602966b534aSmrg		      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
603966b534aSmrg		      532)                      # CPU_PA_RISC2_0
604966b534aSmrg			case "${sc_kernel_bits}" in
605966b534aSmrg			  32) HP_ARCH="hppa2.0n" ;;
606966b534aSmrg			  64) HP_ARCH="hppa2.0w" ;;
607a0d3b6eaSmrg			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
608966b534aSmrg			esac ;;
609966b534aSmrg		    esac
610a0d3b6eaSmrg		fi
611a0d3b6eaSmrg		if [ "${HP_ARCH}" = "" ]; then
612a0d3b6eaSmrg		    eval $set_cc_for_build
613966b534aSmrg		    sed 's/^		//' << EOF >$dummy.c
614a0d3b6eaSmrg
615966b534aSmrg		#define _HPUX_SOURCE
616966b534aSmrg		#include <stdlib.h>
617966b534aSmrg		#include <unistd.h>
618a0d3b6eaSmrg
619966b534aSmrg		int main ()
620966b534aSmrg		{
621966b534aSmrg		#if defined(_SC_KERNEL_BITS)
622966b534aSmrg		    long bits = sysconf(_SC_KERNEL_BITS);
623966b534aSmrg		#endif
624966b534aSmrg		    long cpu  = sysconf (_SC_CPU_VERSION);
625a0d3b6eaSmrg
626966b534aSmrg		    switch (cpu)
627966b534aSmrg			{
628966b534aSmrg			case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
629966b534aSmrg			case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
630966b534aSmrg			case CPU_PA_RISC2_0:
631966b534aSmrg		#if defined(_SC_KERNEL_BITS)
632966b534aSmrg			    switch (bits)
633966b534aSmrg				{
634966b534aSmrg				case 64: puts ("hppa2.0w"); break;
635966b534aSmrg				case 32: puts ("hppa2.0n"); break;
636966b534aSmrg				default: puts ("hppa2.0"); break;
637966b534aSmrg				} break;
638966b534aSmrg		#else  /* !defined(_SC_KERNEL_BITS) */
639966b534aSmrg			    puts ("hppa2.0"); break;
640966b534aSmrg		#endif
641966b534aSmrg			default: puts ("hppa1.0"); break;
642966b534aSmrg			}
643966b534aSmrg		    exit (0);
644966b534aSmrg		}
645a0d3b6eaSmrgEOF
646a0d3b6eaSmrg		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
647a0d3b6eaSmrg		    test -z "$HP_ARCH" && HP_ARCH=hppa
648a0d3b6eaSmrg		fi ;;
649a0d3b6eaSmrg	esac
650a0d3b6eaSmrg	if [ ${HP_ARCH} = "hppa2.0w" ]
651a0d3b6eaSmrg	then
652a0d3b6eaSmrg	    eval $set_cc_for_build
653a0d3b6eaSmrg
654a0d3b6eaSmrg	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
655a0d3b6eaSmrg	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
656a0d3b6eaSmrg	    # generating 64-bit code.  GNU and HP use different nomenclature:
657a0d3b6eaSmrg	    #
658a0d3b6eaSmrg	    # $ CC_FOR_BUILD=cc ./config.guess
659a0d3b6eaSmrg	    # => hppa2.0w-hp-hpux11.23
660a0d3b6eaSmrg	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
661a0d3b6eaSmrg	    # => hppa64-hp-hpux11.23
662a0d3b6eaSmrg
663a0d3b6eaSmrg	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
664f8a31ee4Smrg		grep -q __LP64__
665a0d3b6eaSmrg	    then
666a0d3b6eaSmrg		HP_ARCH="hppa2.0w"
667a0d3b6eaSmrg	    else
668a0d3b6eaSmrg		HP_ARCH="hppa64"
669a0d3b6eaSmrg	    fi
670a0d3b6eaSmrg	fi
671a0d3b6eaSmrg	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
672a0d3b6eaSmrg	exit ;;
673a0d3b6eaSmrg    ia64:HP-UX:*:*)
674a0d3b6eaSmrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
675a0d3b6eaSmrg	echo ia64-hp-hpux${HPUX_REV}
676a0d3b6eaSmrg	exit ;;
677a0d3b6eaSmrg    3050*:HI-UX:*:*)
678a0d3b6eaSmrg	eval $set_cc_for_build
679a0d3b6eaSmrg	sed 's/^	//' << EOF >$dummy.c
680a0d3b6eaSmrg	#include <unistd.h>
681a0d3b6eaSmrg	int
682a0d3b6eaSmrg	main ()
683a0d3b6eaSmrg	{
684a0d3b6eaSmrg	  long cpu = sysconf (_SC_CPU_VERSION);
685a0d3b6eaSmrg	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
686a0d3b6eaSmrg	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
687a0d3b6eaSmrg	     results, however.  */
688a0d3b6eaSmrg	  if (CPU_IS_PA_RISC (cpu))
689a0d3b6eaSmrg	    {
690a0d3b6eaSmrg	      switch (cpu)
691a0d3b6eaSmrg		{
692a0d3b6eaSmrg		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
693a0d3b6eaSmrg		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
694a0d3b6eaSmrg		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
695a0d3b6eaSmrg		  default: puts ("hppa-hitachi-hiuxwe2"); break;
696a0d3b6eaSmrg		}
697a0d3b6eaSmrg	    }
698a0d3b6eaSmrg	  else if (CPU_IS_HP_MC68K (cpu))
699a0d3b6eaSmrg	    puts ("m68k-hitachi-hiuxwe2");
700a0d3b6eaSmrg	  else puts ("unknown-hitachi-hiuxwe2");
701a0d3b6eaSmrg	  exit (0);
702a0d3b6eaSmrg	}
703a0d3b6eaSmrgEOF
704a0d3b6eaSmrg	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
705a0d3b6eaSmrg		{ echo "$SYSTEM_NAME"; exit; }
706a0d3b6eaSmrg	echo unknown-hitachi-hiuxwe2
707a0d3b6eaSmrg	exit ;;
708a0d3b6eaSmrg    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
709a0d3b6eaSmrg	echo hppa1.1-hp-bsd
710a0d3b6eaSmrg	exit ;;
711a0d3b6eaSmrg    9000/8??:4.3bsd:*:*)
712a0d3b6eaSmrg	echo hppa1.0-hp-bsd
713a0d3b6eaSmrg	exit ;;
714a0d3b6eaSmrg    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
715a0d3b6eaSmrg	echo hppa1.0-hp-mpeix
716a0d3b6eaSmrg	exit ;;
717a0d3b6eaSmrg    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
718a0d3b6eaSmrg	echo hppa1.1-hp-osf
719a0d3b6eaSmrg	exit ;;
720a0d3b6eaSmrg    hp8??:OSF1:*:*)
721a0d3b6eaSmrg	echo hppa1.0-hp-osf
722a0d3b6eaSmrg	exit ;;
723a0d3b6eaSmrg    i*86:OSF1:*:*)
724a0d3b6eaSmrg	if [ -x /usr/sbin/sysversion ] ; then
725a0d3b6eaSmrg	    echo ${UNAME_MACHINE}-unknown-osf1mk
726a0d3b6eaSmrg	else
727a0d3b6eaSmrg	    echo ${UNAME_MACHINE}-unknown-osf1
728a0d3b6eaSmrg	fi
729a0d3b6eaSmrg	exit ;;
730a0d3b6eaSmrg    parisc*:Lites*:*:*)
731a0d3b6eaSmrg	echo hppa1.1-hp-lites
732a0d3b6eaSmrg	exit ;;
733a0d3b6eaSmrg    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
734a0d3b6eaSmrg	echo c1-convex-bsd
735966b534aSmrg	exit ;;
736a0d3b6eaSmrg    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
737a0d3b6eaSmrg	if getsysinfo -f scalar_acc
738a0d3b6eaSmrg	then echo c32-convex-bsd
739a0d3b6eaSmrg	else echo c2-convex-bsd
740a0d3b6eaSmrg	fi
741966b534aSmrg	exit ;;
742a0d3b6eaSmrg    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
743a0d3b6eaSmrg	echo c34-convex-bsd
744966b534aSmrg	exit ;;
745a0d3b6eaSmrg    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
746a0d3b6eaSmrg	echo c38-convex-bsd
747966b534aSmrg	exit ;;
748a0d3b6eaSmrg    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
749a0d3b6eaSmrg	echo c4-convex-bsd
750966b534aSmrg	exit ;;
751a0d3b6eaSmrg    CRAY*Y-MP:*:*:*)
752a0d3b6eaSmrg	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
753a0d3b6eaSmrg	exit ;;
754a0d3b6eaSmrg    CRAY*[A-Z]90:*:*:*)
755a0d3b6eaSmrg	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
756a0d3b6eaSmrg	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
757a0d3b6eaSmrg	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
758a0d3b6eaSmrg	      -e 's/\.[^.]*$/.X/'
759a0d3b6eaSmrg	exit ;;
760a0d3b6eaSmrg    CRAY*TS:*:*:*)
761a0d3b6eaSmrg	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
762a0d3b6eaSmrg	exit ;;
763a0d3b6eaSmrg    CRAY*T3E:*:*:*)
764a0d3b6eaSmrg	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
765a0d3b6eaSmrg	exit ;;
766a0d3b6eaSmrg    CRAY*SV1:*:*:*)
767a0d3b6eaSmrg	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
768a0d3b6eaSmrg	exit ;;
769a0d3b6eaSmrg    *:UNICOS/mp:*:*)
770a0d3b6eaSmrg	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
771a0d3b6eaSmrg	exit ;;
772a0d3b6eaSmrg    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
773a0d3b6eaSmrg	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
774966b534aSmrg	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
775966b534aSmrg	FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
776966b534aSmrg	echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
777966b534aSmrg	exit ;;
778a0d3b6eaSmrg    5000:UNIX_System_V:4.*:*)
779966b534aSmrg	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
780966b534aSmrg	FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
781966b534aSmrg	echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
782a0d3b6eaSmrg	exit ;;
783a0d3b6eaSmrg    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
784a0d3b6eaSmrg	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
785a0d3b6eaSmrg	exit ;;
786a0d3b6eaSmrg    sparc*:BSD/OS:*:*)
787a0d3b6eaSmrg	echo sparc-unknown-bsdi${UNAME_RELEASE}
788a0d3b6eaSmrg	exit ;;
789a0d3b6eaSmrg    *:BSD/OS:*:*)
790a0d3b6eaSmrg	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
791a0d3b6eaSmrg	exit ;;
792a0d3b6eaSmrg    *:FreeBSD:*:*)
793966b534aSmrg	UNAME_PROCESSOR=`/usr/bin/uname -p`
794966b534aSmrg	case ${UNAME_PROCESSOR} in
795a0d3b6eaSmrg	    amd64)
796a0d3b6eaSmrg		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
797a0d3b6eaSmrg	    *)
798966b534aSmrg		echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
799a0d3b6eaSmrg	esac
800a0d3b6eaSmrg	exit ;;
801a0d3b6eaSmrg    i*:CYGWIN*:*)
802a0d3b6eaSmrg	echo ${UNAME_MACHINE}-pc-cygwin
803a0d3b6eaSmrg	exit ;;
804f8a31ee4Smrg    *:MINGW*:*)
805a0d3b6eaSmrg	echo ${UNAME_MACHINE}-pc-mingw32
806a0d3b6eaSmrg	exit ;;
807966b534aSmrg    i*:MSYS*:*)
808966b534aSmrg	echo ${UNAME_MACHINE}-pc-msys
809966b534aSmrg	exit ;;
810a0d3b6eaSmrg    i*:windows32*:*)
811966b534aSmrg	# uname -m includes "-pc" on this system.
812966b534aSmrg	echo ${UNAME_MACHINE}-mingw32
813a0d3b6eaSmrg	exit ;;
814a0d3b6eaSmrg    i*:PW*:*)
815a0d3b6eaSmrg	echo ${UNAME_MACHINE}-pc-pw32
816a0d3b6eaSmrg	exit ;;
817f8a31ee4Smrg    *:Interix*:*)
818966b534aSmrg	case ${UNAME_MACHINE} in
819f8a31ee4Smrg	    x86)
820f8a31ee4Smrg		echo i586-pc-interix${UNAME_RELEASE}
821f8a31ee4Smrg		exit ;;
822f8a31ee4Smrg	    authenticamd | genuineintel | EM64T)
823f8a31ee4Smrg		echo x86_64-unknown-interix${UNAME_RELEASE}
824f8a31ee4Smrg		exit ;;
825f8a31ee4Smrg	    IA64)
826f8a31ee4Smrg		echo ia64-unknown-interix${UNAME_RELEASE}
827f8a31ee4Smrg		exit ;;
828f8a31ee4Smrg	esac ;;
829a0d3b6eaSmrg    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
830a0d3b6eaSmrg	echo i${UNAME_MACHINE}-pc-mks
831a0d3b6eaSmrg	exit ;;
832f8a31ee4Smrg    8664:Windows_NT:*)
833f8a31ee4Smrg	echo x86_64-pc-mks
834f8a31ee4Smrg	exit ;;
835a0d3b6eaSmrg    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
836a0d3b6eaSmrg	# How do we know it's Interix rather than the generic POSIX subsystem?
837a0d3b6eaSmrg	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
838a0d3b6eaSmrg	# UNAME_MACHINE based on the output of uname instead of i386?
839a0d3b6eaSmrg	echo i586-pc-interix
840a0d3b6eaSmrg	exit ;;
841a0d3b6eaSmrg    i*:UWIN*:*)
842a0d3b6eaSmrg	echo ${UNAME_MACHINE}-pc-uwin
843a0d3b6eaSmrg	exit ;;
844a0d3b6eaSmrg    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
845a0d3b6eaSmrg	echo x86_64-unknown-cygwin
846a0d3b6eaSmrg	exit ;;
847a0d3b6eaSmrg    p*:CYGWIN*:*)
848a0d3b6eaSmrg	echo powerpcle-unknown-cygwin
849a0d3b6eaSmrg	exit ;;
850a0d3b6eaSmrg    prep*:SunOS:5.*:*)
851a0d3b6eaSmrg	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
852a0d3b6eaSmrg	exit ;;
853a0d3b6eaSmrg    *:GNU:*:*)
854a0d3b6eaSmrg	# the GNU system
855a0d3b6eaSmrg	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
856a0d3b6eaSmrg	exit ;;
857a0d3b6eaSmrg    *:GNU/*:*:*)
858a0d3b6eaSmrg	# other systems with GNU libc and userland
859a0d3b6eaSmrg	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
860a0d3b6eaSmrg	exit ;;
861a0d3b6eaSmrg    i*86:Minix:*:*)
862a0d3b6eaSmrg	echo ${UNAME_MACHINE}-pc-minix
863a0d3b6eaSmrg	exit ;;
864966b534aSmrg    aarch64:Linux:*:*)
865966b534aSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
866966b534aSmrg	exit ;;
867966b534aSmrg    aarch64_be:Linux:*:*)
868966b534aSmrg	UNAME_MACHINE=aarch64_be
869966b534aSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
870966b534aSmrg	exit ;;
871f8a31ee4Smrg    alpha:Linux:*:*)
872f8a31ee4Smrg	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
873f8a31ee4Smrg	  EV5)   UNAME_MACHINE=alphaev5 ;;
874f8a31ee4Smrg	  EV56)  UNAME_MACHINE=alphaev56 ;;
875f8a31ee4Smrg	  PCA56) UNAME_MACHINE=alphapca56 ;;
876f8a31ee4Smrg	  PCA57) UNAME_MACHINE=alphapca56 ;;
877f8a31ee4Smrg	  EV6)   UNAME_MACHINE=alphaev6 ;;
878f8a31ee4Smrg	  EV67)  UNAME_MACHINE=alphaev67 ;;
879f8a31ee4Smrg	  EV68*) UNAME_MACHINE=alphaev68 ;;
880966b534aSmrg	esac
881f8a31ee4Smrg	objdump --private-headers /bin/sh | grep -q ld.so.1
882f8a31ee4Smrg	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
883f8a31ee4Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
884f8a31ee4Smrg	exit ;;
885a0d3b6eaSmrg    arm*:Linux:*:*)
886f8a31ee4Smrg	eval $set_cc_for_build
887f8a31ee4Smrg	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
888f8a31ee4Smrg	    | grep -q __ARM_EABI__
889f8a31ee4Smrg	then
890f8a31ee4Smrg	    echo ${UNAME_MACHINE}-unknown-linux-gnu
891f8a31ee4Smrg	else
892966b534aSmrg	    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
893966b534aSmrg		| grep -q __ARM_PCS_VFP
894966b534aSmrg	    then
895966b534aSmrg		echo ${UNAME_MACHINE}-unknown-linux-gnueabi
896966b534aSmrg	    else
897966b534aSmrg		echo ${UNAME_MACHINE}-unknown-linux-gnueabihf
898966b534aSmrg	    fi
899f8a31ee4Smrg	fi
900a0d3b6eaSmrg	exit ;;
901a0d3b6eaSmrg    avr32*:Linux:*:*)
902a0d3b6eaSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
903a0d3b6eaSmrg	exit ;;
904a0d3b6eaSmrg    cris:Linux:*:*)
905966b534aSmrg	echo ${UNAME_MACHINE}-axis-linux-gnu
906a0d3b6eaSmrg	exit ;;
907a0d3b6eaSmrg    crisv32:Linux:*:*)
908966b534aSmrg	echo ${UNAME_MACHINE}-axis-linux-gnu
909a0d3b6eaSmrg	exit ;;
910a0d3b6eaSmrg    frv:Linux:*:*)
911966b534aSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
912966b534aSmrg	exit ;;
913966b534aSmrg    hexagon:Linux:*:*)
914966b534aSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
915f8a31ee4Smrg	exit ;;
916f8a31ee4Smrg    i*86:Linux:*:*)
917f8a31ee4Smrg	LIBC=gnu
918f8a31ee4Smrg	eval $set_cc_for_build
919f8a31ee4Smrg	sed 's/^	//' << EOF >$dummy.c
920f8a31ee4Smrg	#ifdef __dietlibc__
921f8a31ee4Smrg	LIBC=dietlibc
922f8a31ee4Smrg	#endif
923f8a31ee4SmrgEOF
924f8a31ee4Smrg	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
925f8a31ee4Smrg	echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
926a0d3b6eaSmrg	exit ;;
927a0d3b6eaSmrg    ia64:Linux:*:*)
928f8a31ee4Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
929a0d3b6eaSmrg	exit ;;
930a0d3b6eaSmrg    m32r*:Linux:*:*)
931f8a31ee4Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
932a0d3b6eaSmrg	exit ;;
933a0d3b6eaSmrg    m68*:Linux:*:*)
934f8a31ee4Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
935a0d3b6eaSmrg	exit ;;
936f8a31ee4Smrg    mips:Linux:*:* | mips64:Linux:*:*)
937a0d3b6eaSmrg	eval $set_cc_for_build
938a0d3b6eaSmrg	sed 's/^	//' << EOF >$dummy.c
939a0d3b6eaSmrg	#undef CPU
940f8a31ee4Smrg	#undef ${UNAME_MACHINE}
941f8a31ee4Smrg	#undef ${UNAME_MACHINE}el
942a0d3b6eaSmrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
943f8a31ee4Smrg	CPU=${UNAME_MACHINE}el
944a0d3b6eaSmrg	#else
945a0d3b6eaSmrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
946f8a31ee4Smrg	CPU=${UNAME_MACHINE}
947a0d3b6eaSmrg	#else
948a0d3b6eaSmrg	CPU=
949a0d3b6eaSmrg	#endif
950a0d3b6eaSmrg	#endif
951a0d3b6eaSmrgEOF
952f8a31ee4Smrg	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
953f8a31ee4Smrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
954a0d3b6eaSmrg	;;
955a0d3b6eaSmrg    or32:Linux:*:*)
956966b534aSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
957a0d3b6eaSmrg	exit ;;
958f8a31ee4Smrg    padre:Linux:*:*)
959f8a31ee4Smrg	echo sparc-unknown-linux-gnu
960a0d3b6eaSmrg	exit ;;
961f8a31ee4Smrg    parisc64:Linux:*:* | hppa64:Linux:*:*)
962f8a31ee4Smrg	echo hppa64-unknown-linux-gnu
96362df5ad0Smrg	exit ;;
964a0d3b6eaSmrg    parisc:Linux:*:* | hppa:Linux:*:*)
965a0d3b6eaSmrg	# Look for CPU level
966a0d3b6eaSmrg	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
967f8a31ee4Smrg	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
968f8a31ee4Smrg	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
969f8a31ee4Smrg	  *)    echo hppa-unknown-linux-gnu ;;
970a0d3b6eaSmrg	esac
971a0d3b6eaSmrg	exit ;;
972f8a31ee4Smrg    ppc64:Linux:*:*)
973f8a31ee4Smrg	echo powerpc64-unknown-linux-gnu
974f8a31ee4Smrg	exit ;;
975f8a31ee4Smrg    ppc:Linux:*:*)
976f8a31ee4Smrg	echo powerpc-unknown-linux-gnu
977a0d3b6eaSmrg	exit ;;
978a0d3b6eaSmrg    s390:Linux:*:* | s390x:Linux:*:*)
979a0d3b6eaSmrg	echo ${UNAME_MACHINE}-ibm-linux
980a0d3b6eaSmrg	exit ;;
981a0d3b6eaSmrg    sh64*:Linux:*:*)
982966b534aSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
983a0d3b6eaSmrg	exit ;;
984a0d3b6eaSmrg    sh*:Linux:*:*)
985f8a31ee4Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
986a0d3b6eaSmrg	exit ;;
987a0d3b6eaSmrg    sparc:Linux:*:* | sparc64:Linux:*:*)
988f8a31ee4Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
989a0d3b6eaSmrg	exit ;;
9904def10e6Smrg    tile*:Linux:*:*)
991966b534aSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9924def10e6Smrg	exit ;;
993a0d3b6eaSmrg    vax:Linux:*:*)
994a0d3b6eaSmrg	echo ${UNAME_MACHINE}-dec-linux-gnu
995a0d3b6eaSmrg	exit ;;
996a0d3b6eaSmrg    x86_64:Linux:*:*)
997966b534aSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
998f8a31ee4Smrg	exit ;;
999f8a31ee4Smrg    xtensa*:Linux:*:*)
1000966b534aSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
1001a0d3b6eaSmrg	exit ;;
1002a0d3b6eaSmrg    i*86:DYNIX/ptx:4*:*)
1003a0d3b6eaSmrg	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
1004a0d3b6eaSmrg	# earlier versions are messed up and put the nodename in both
1005a0d3b6eaSmrg	# sysname and nodename.
1006a0d3b6eaSmrg	echo i386-sequent-sysv4
1007a0d3b6eaSmrg	exit ;;
1008a0d3b6eaSmrg    i*86:UNIX_SV:4.2MP:2.*)
1009966b534aSmrg	# Unixware is an offshoot of SVR4, but it has its own version
1010966b534aSmrg	# number series starting with 2...
1011966b534aSmrg	# I am not positive that other SVR4 systems won't match this,
1012a0d3b6eaSmrg	# I just have to hope.  -- rms.
1013966b534aSmrg	# Use sysv4.2uw... so that sysv4* matches it.
1014a0d3b6eaSmrg	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
1015a0d3b6eaSmrg	exit ;;
1016a0d3b6eaSmrg    i*86:OS/2:*:*)
1017a0d3b6eaSmrg	# If we were able to find `uname', then EMX Unix compatibility
1018a0d3b6eaSmrg	# is probably installed.
1019a0d3b6eaSmrg	echo ${UNAME_MACHINE}-pc-os2-emx
1020a0d3b6eaSmrg	exit ;;
1021a0d3b6eaSmrg    i*86:XTS-300:*:STOP)
1022a0d3b6eaSmrg	echo ${UNAME_MACHINE}-unknown-stop
1023a0d3b6eaSmrg	exit ;;
1024a0d3b6eaSmrg    i*86:atheos:*:*)
1025a0d3b6eaSmrg	echo ${UNAME_MACHINE}-unknown-atheos
1026a0d3b6eaSmrg	exit ;;
1027a0d3b6eaSmrg    i*86:syllable:*:*)
1028a0d3b6eaSmrg	echo ${UNAME_MACHINE}-pc-syllable
1029a0d3b6eaSmrg	exit ;;
1030f8a31ee4Smrg    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
1031a0d3b6eaSmrg	echo i386-unknown-lynxos${UNAME_RELEASE}
1032a0d3b6eaSmrg	exit ;;
1033a0d3b6eaSmrg    i*86:*DOS:*:*)
1034a0d3b6eaSmrg	echo ${UNAME_MACHINE}-pc-msdosdjgpp
1035a0d3b6eaSmrg	exit ;;
1036a0d3b6eaSmrg    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
1037a0d3b6eaSmrg	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
1038a0d3b6eaSmrg	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1039a0d3b6eaSmrg		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
1040a0d3b6eaSmrg	else
1041a0d3b6eaSmrg		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
1042a0d3b6eaSmrg	fi
1043a0d3b6eaSmrg	exit ;;
1044a0d3b6eaSmrg    i*86:*:5:[678]*)
1045966b534aSmrg	# UnixWare 7.x, OpenUNIX and OpenServer 6.
1046a0d3b6eaSmrg	case `/bin/uname -X | grep "^Machine"` in
1047a0d3b6eaSmrg	    *486*)	     UNAME_MACHINE=i486 ;;
1048a0d3b6eaSmrg	    *Pentium)	     UNAME_MACHINE=i586 ;;
1049a0d3b6eaSmrg	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1050a0d3b6eaSmrg	esac
1051a0d3b6eaSmrg	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
1052a0d3b6eaSmrg	exit ;;
1053a0d3b6eaSmrg    i*86:*:3.2:*)
1054a0d3b6eaSmrg	if test -f /usr/options/cb.name; then
1055a0d3b6eaSmrg		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1056a0d3b6eaSmrg		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1057a0d3b6eaSmrg	elif /bin/uname -X 2>/dev/null >/dev/null ; then
1058a0d3b6eaSmrg		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1059a0d3b6eaSmrg		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1060a0d3b6eaSmrg		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1061a0d3b6eaSmrg			&& UNAME_MACHINE=i586
1062a0d3b6eaSmrg		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1063a0d3b6eaSmrg			&& UNAME_MACHINE=i686
1064a0d3b6eaSmrg		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1065a0d3b6eaSmrg			&& UNAME_MACHINE=i686
1066a0d3b6eaSmrg		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1067a0d3b6eaSmrg	else
1068a0d3b6eaSmrg		echo ${UNAME_MACHINE}-pc-sysv32
1069a0d3b6eaSmrg	fi
1070a0d3b6eaSmrg	exit ;;
1071a0d3b6eaSmrg    pc:*:*:*)
1072a0d3b6eaSmrg	# Left here for compatibility:
1073966b534aSmrg	# uname -m prints for DJGPP always 'pc', but it prints nothing about
1074966b534aSmrg	# the processor, so we play safe by assuming i586.
1075f8a31ee4Smrg	# Note: whatever this is, it MUST be the same as what config.sub
1076f8a31ee4Smrg	# prints for the "djgpp" host, or else GDB configury will decide that
1077f8a31ee4Smrg	# this is a cross-build.
1078f8a31ee4Smrg	echo i586-pc-msdosdjgpp
1079966b534aSmrg	exit ;;
1080a0d3b6eaSmrg    Intel:Mach:3*:*)
1081a0d3b6eaSmrg	echo i386-pc-mach3
1082a0d3b6eaSmrg	exit ;;
1083a0d3b6eaSmrg    paragon:*:*:*)
1084a0d3b6eaSmrg	echo i860-intel-osf1
1085a0d3b6eaSmrg	exit ;;
1086a0d3b6eaSmrg    i860:*:4.*:*) # i860-SVR4
1087a0d3b6eaSmrg	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1088a0d3b6eaSmrg	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
1089a0d3b6eaSmrg	else # Add other i860-SVR4 vendors below as they are discovered.
1090a0d3b6eaSmrg	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
1091a0d3b6eaSmrg	fi
1092a0d3b6eaSmrg	exit ;;
1093a0d3b6eaSmrg    mini*:CTIX:SYS*5:*)
1094a0d3b6eaSmrg	# "miniframe"
1095a0d3b6eaSmrg	echo m68010-convergent-sysv
1096a0d3b6eaSmrg	exit ;;
1097a0d3b6eaSmrg    mc68k:UNIX:SYSTEM5:3.51m)
1098a0d3b6eaSmrg	echo m68k-convergent-sysv
1099a0d3b6eaSmrg	exit ;;
1100a0d3b6eaSmrg    M680?0:D-NIX:5.3:*)
1101a0d3b6eaSmrg	echo m68k-diab-dnix
1102a0d3b6eaSmrg	exit ;;
1103a0d3b6eaSmrg    M68*:*:R3V[5678]*:*)
1104a0d3b6eaSmrg	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
1105a0d3b6eaSmrg    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)
1106a0d3b6eaSmrg	OS_REL=''
1107a0d3b6eaSmrg	test -r /etc/.relid \
1108a0d3b6eaSmrg	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1109a0d3b6eaSmrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1110a0d3b6eaSmrg	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1111a0d3b6eaSmrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1112a0d3b6eaSmrg	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1113a0d3b6eaSmrg    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1114966b534aSmrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1115966b534aSmrg	  && { echo i486-ncr-sysv4; exit; } ;;
1116f8a31ee4Smrg    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
1117f8a31ee4Smrg	OS_REL='.3'
1118f8a31ee4Smrg	test -r /etc/.relid \
1119f8a31ee4Smrg	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1120f8a31ee4Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1121f8a31ee4Smrg	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1122f8a31ee4Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1123f8a31ee4Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
1124f8a31ee4Smrg	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
1125f8a31ee4Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1126a0d3b6eaSmrg    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1127a0d3b6eaSmrg	echo m68k-unknown-lynxos${UNAME_RELEASE}
1128a0d3b6eaSmrg	exit ;;
1129a0d3b6eaSmrg    mc68030:UNIX_System_V:4.*:*)
1130a0d3b6eaSmrg	echo m68k-atari-sysv4
1131a0d3b6eaSmrg	exit ;;
1132a0d3b6eaSmrg    TSUNAMI:LynxOS:2.*:*)
1133a0d3b6eaSmrg	echo sparc-unknown-lynxos${UNAME_RELEASE}
1134a0d3b6eaSmrg	exit ;;
1135a0d3b6eaSmrg    rs6000:LynxOS:2.*:*)
1136a0d3b6eaSmrg	echo rs6000-unknown-lynxos${UNAME_RELEASE}
1137a0d3b6eaSmrg	exit ;;
1138f8a31ee4Smrg    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
1139a0d3b6eaSmrg	echo powerpc-unknown-lynxos${UNAME_RELEASE}
1140a0d3b6eaSmrg	exit ;;
1141a0d3b6eaSmrg    SM[BE]S:UNIX_SV:*:*)
1142a0d3b6eaSmrg	echo mips-dde-sysv${UNAME_RELEASE}
1143a0d3b6eaSmrg	exit ;;
1144a0d3b6eaSmrg    RM*:ReliantUNIX-*:*:*)
1145a0d3b6eaSmrg	echo mips-sni-sysv4
1146a0d3b6eaSmrg	exit ;;
1147a0d3b6eaSmrg    RM*:SINIX-*:*:*)
1148a0d3b6eaSmrg	echo mips-sni-sysv4
1149a0d3b6eaSmrg	exit ;;
1150a0d3b6eaSmrg    *:SINIX-*:*:*)
1151a0d3b6eaSmrg	if uname -p 2>/dev/null >/dev/null ; then
1152a0d3b6eaSmrg		UNAME_MACHINE=`(uname -p) 2>/dev/null`
1153a0d3b6eaSmrg		echo ${UNAME_MACHINE}-sni-sysv4
1154a0d3b6eaSmrg	else
1155a0d3b6eaSmrg		echo ns32k-sni-sysv
1156a0d3b6eaSmrg	fi
1157a0d3b6eaSmrg	exit ;;
1158966b534aSmrg    PENTIUM:*:4.0*:*)	# Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1159966b534aSmrg			# says <Richard.M.Bartel@ccMail.Census.GOV>
1160966b534aSmrg	echo i586-unisys-sysv4
1161966b534aSmrg	exit ;;
1162a0d3b6eaSmrg    *:UNIX_System_V:4*:FTX*)
1163a0d3b6eaSmrg	# From Gerald Hewes <hewes@openmarket.com>.
1164a0d3b6eaSmrg	# How about differentiating between stratus architectures? -djm
1165a0d3b6eaSmrg	echo hppa1.1-stratus-sysv4
1166a0d3b6eaSmrg	exit ;;
1167a0d3b6eaSmrg    *:*:*:FTX*)
1168a0d3b6eaSmrg	# From seanf@swdc.stratus.com.
1169a0d3b6eaSmrg	echo i860-stratus-sysv4
1170a0d3b6eaSmrg	exit ;;
1171a0d3b6eaSmrg    i*86:VOS:*:*)
1172a0d3b6eaSmrg	# From Paul.Green@stratus.com.
1173a0d3b6eaSmrg	echo ${UNAME_MACHINE}-stratus-vos
1174a0d3b6eaSmrg	exit ;;
1175a0d3b6eaSmrg    *:VOS:*:*)
1176a0d3b6eaSmrg	# From Paul.Green@stratus.com.
1177a0d3b6eaSmrg	echo hppa1.1-stratus-vos
1178a0d3b6eaSmrg	exit ;;
1179a0d3b6eaSmrg    mc68*:A/UX:*:*)
1180a0d3b6eaSmrg	echo m68k-apple-aux${UNAME_RELEASE}
1181a0d3b6eaSmrg	exit ;;
1182a0d3b6eaSmrg    news*:NEWS-OS:6*:*)
1183a0d3b6eaSmrg	echo mips-sony-newsos6
1184a0d3b6eaSmrg	exit ;;
1185a0d3b6eaSmrg    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1186a0d3b6eaSmrg	if [ -d /usr/nec ]; then
1187966b534aSmrg		echo mips-nec-sysv${UNAME_RELEASE}
1188a0d3b6eaSmrg	else
1189966b534aSmrg		echo mips-unknown-sysv${UNAME_RELEASE}
1190a0d3b6eaSmrg	fi
1191966b534aSmrg	exit ;;
1192a0d3b6eaSmrg    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
1193a0d3b6eaSmrg	echo powerpc-be-beos
1194a0d3b6eaSmrg	exit ;;
1195a0d3b6eaSmrg    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
1196a0d3b6eaSmrg	echo powerpc-apple-beos
1197a0d3b6eaSmrg	exit ;;
1198a0d3b6eaSmrg    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
1199a0d3b6eaSmrg	echo i586-pc-beos
1200a0d3b6eaSmrg	exit ;;
1201f8a31ee4Smrg    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
1202f8a31ee4Smrg	echo i586-pc-haiku
1203f8a31ee4Smrg	exit ;;
1204a0d3b6eaSmrg    SX-4:SUPER-UX:*:*)
1205a0d3b6eaSmrg	echo sx4-nec-superux${UNAME_RELEASE}
1206a0d3b6eaSmrg	exit ;;
1207a0d3b6eaSmrg    SX-5:SUPER-UX:*:*)
1208a0d3b6eaSmrg	echo sx5-nec-superux${UNAME_RELEASE}
1209a0d3b6eaSmrg	exit ;;
1210a0d3b6eaSmrg    SX-6:SUPER-UX:*:*)
1211a0d3b6eaSmrg	echo sx6-nec-superux${UNAME_RELEASE}
1212a0d3b6eaSmrg	exit ;;
1213f8a31ee4Smrg    SX-7:SUPER-UX:*:*)
1214f8a31ee4Smrg	echo sx7-nec-superux${UNAME_RELEASE}
1215f8a31ee4Smrg	exit ;;
1216f8a31ee4Smrg    SX-8:SUPER-UX:*:*)
1217f8a31ee4Smrg	echo sx8-nec-superux${UNAME_RELEASE}
1218f8a31ee4Smrg	exit ;;
1219f8a31ee4Smrg    SX-8R:SUPER-UX:*:*)
1220f8a31ee4Smrg	echo sx8r-nec-superux${UNAME_RELEASE}
1221f8a31ee4Smrg	exit ;;
1222a0d3b6eaSmrg    Power*:Rhapsody:*:*)
1223a0d3b6eaSmrg	echo powerpc-apple-rhapsody${UNAME_RELEASE}
1224a0d3b6eaSmrg	exit ;;
1225a0d3b6eaSmrg    *:Rhapsody:*:*)
1226a0d3b6eaSmrg	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
1227a0d3b6eaSmrg	exit ;;
1228a0d3b6eaSmrg    *:Darwin:*:*)
1229a0d3b6eaSmrg	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
1230a0d3b6eaSmrg	case $UNAME_PROCESSOR in
1231f8a31ee4Smrg	    i386)
1232f8a31ee4Smrg		eval $set_cc_for_build
1233f8a31ee4Smrg		if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
1234f8a31ee4Smrg		  if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
1235f8a31ee4Smrg		      (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
1236f8a31ee4Smrg		      grep IS_64BIT_ARCH >/dev/null
1237f8a31ee4Smrg		  then
1238f8a31ee4Smrg		      UNAME_PROCESSOR="x86_64"
1239f8a31ee4Smrg		  fi
1240f8a31ee4Smrg		fi ;;
1241a0d3b6eaSmrg	    unknown) UNAME_PROCESSOR=powerpc ;;
1242a0d3b6eaSmrg	esac
1243a0d3b6eaSmrg	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
1244a0d3b6eaSmrg	exit ;;
1245a0d3b6eaSmrg    *:procnto*:*:* | *:QNX:[0123456789]*:*)
1246a0d3b6eaSmrg	UNAME_PROCESSOR=`uname -p`
1247a0d3b6eaSmrg	if test "$UNAME_PROCESSOR" = "x86"; then
1248a0d3b6eaSmrg		UNAME_PROCESSOR=i386
1249a0d3b6eaSmrg		UNAME_MACHINE=pc
1250a0d3b6eaSmrg	fi
1251a0d3b6eaSmrg	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
1252a0d3b6eaSmrg	exit ;;
1253a0d3b6eaSmrg    *:QNX:*:4*)
1254a0d3b6eaSmrg	echo i386-pc-qnx
1255a0d3b6eaSmrg	exit ;;
1256966b534aSmrg    NEO-?:NONSTOP_KERNEL:*:*)
1257966b534aSmrg	echo neo-tandem-nsk${UNAME_RELEASE}
1258966b534aSmrg	exit ;;
1259a0d3b6eaSmrg    NSE-?:NONSTOP_KERNEL:*:*)
1260a0d3b6eaSmrg	echo nse-tandem-nsk${UNAME_RELEASE}
1261a0d3b6eaSmrg	exit ;;
1262a0d3b6eaSmrg    NSR-?:NONSTOP_KERNEL:*:*)
1263a0d3b6eaSmrg	echo nsr-tandem-nsk${UNAME_RELEASE}
1264a0d3b6eaSmrg	exit ;;
1265a0d3b6eaSmrg    *:NonStop-UX:*:*)
1266a0d3b6eaSmrg	echo mips-compaq-nonstopux
1267a0d3b6eaSmrg	exit ;;
1268a0d3b6eaSmrg    BS2000:POSIX*:*:*)
1269a0d3b6eaSmrg	echo bs2000-siemens-sysv
1270a0d3b6eaSmrg	exit ;;
1271a0d3b6eaSmrg    DS/*:UNIX_System_V:*:*)
1272a0d3b6eaSmrg	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
1273a0d3b6eaSmrg	exit ;;
1274a0d3b6eaSmrg    *:Plan9:*:*)
1275a0d3b6eaSmrg	# "uname -m" is not consistent, so use $cputype instead. 386
1276a0d3b6eaSmrg	# is converted to i386 for consistency with other x86
1277a0d3b6eaSmrg	# operating systems.
1278a0d3b6eaSmrg	if test "$cputype" = "386"; then
1279a0d3b6eaSmrg	    UNAME_MACHINE=i386
1280a0d3b6eaSmrg	else
1281a0d3b6eaSmrg	    UNAME_MACHINE="$cputype"
1282a0d3b6eaSmrg	fi
1283a0d3b6eaSmrg	echo ${UNAME_MACHINE}-unknown-plan9
1284a0d3b6eaSmrg	exit ;;
1285a0d3b6eaSmrg    *:TOPS-10:*:*)
1286a0d3b6eaSmrg	echo pdp10-unknown-tops10
1287a0d3b6eaSmrg	exit ;;
1288a0d3b6eaSmrg    *:TENEX:*:*)
1289a0d3b6eaSmrg	echo pdp10-unknown-tenex
1290a0d3b6eaSmrg	exit ;;
1291a0d3b6eaSmrg    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1292a0d3b6eaSmrg	echo pdp10-dec-tops20
1293a0d3b6eaSmrg	exit ;;
1294a0d3b6eaSmrg    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1295a0d3b6eaSmrg	echo pdp10-xkl-tops20
1296a0d3b6eaSmrg	exit ;;
1297a0d3b6eaSmrg    *:TOPS-20:*:*)
1298a0d3b6eaSmrg	echo pdp10-unknown-tops20
1299a0d3b6eaSmrg	exit ;;
1300a0d3b6eaSmrg    *:ITS:*:*)
1301a0d3b6eaSmrg	echo pdp10-unknown-its
1302a0d3b6eaSmrg	exit ;;
1303a0d3b6eaSmrg    SEI:*:*:SEIUX)
1304966b534aSmrg	echo mips-sei-seiux${UNAME_RELEASE}
1305a0d3b6eaSmrg	exit ;;
1306a0d3b6eaSmrg    *:DragonFly:*:*)
1307a0d3b6eaSmrg	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
1308a0d3b6eaSmrg	exit ;;
1309a0d3b6eaSmrg    *:*VMS:*:*)
1310966b534aSmrg	UNAME_MACHINE=`(uname -p) 2>/dev/null`
1311a0d3b6eaSmrg	case "${UNAME_MACHINE}" in
1312a0d3b6eaSmrg	    A*) echo alpha-dec-vms ; exit ;;
1313a0d3b6eaSmrg	    I*) echo ia64-dec-vms ; exit ;;
1314a0d3b6eaSmrg	    V*) echo vax-dec-vms ; exit ;;
1315a0d3b6eaSmrg	esac ;;
1316a0d3b6eaSmrg    *:XENIX:*:SysV)
1317a0d3b6eaSmrg	echo i386-pc-xenix
1318a0d3b6eaSmrg	exit ;;
1319a0d3b6eaSmrg    i*86:skyos:*:*)
1320a0d3b6eaSmrg	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
1321a0d3b6eaSmrg	exit ;;
1322a0d3b6eaSmrg    i*86:rdos:*:*)
1323a0d3b6eaSmrg	echo ${UNAME_MACHINE}-pc-rdos
1324a0d3b6eaSmrg	exit ;;
1325f8a31ee4Smrg    i*86:AROS:*:*)
1326f8a31ee4Smrg	echo ${UNAME_MACHINE}-pc-aros
1327f8a31ee4Smrg	exit ;;
1328966b534aSmrg    x86_64:VMkernel:*:*)
1329966b534aSmrg	echo ${UNAME_MACHINE}-unknown-esx
1330966b534aSmrg	exit ;;
1331a0d3b6eaSmrgesac
1332a0d3b6eaSmrg
1333a0d3b6eaSmrg#echo '(No uname command or uname output not recognized.)' 1>&2
1334a0d3b6eaSmrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
1335a0d3b6eaSmrg
1336a0d3b6eaSmrgeval $set_cc_for_build
1337a0d3b6eaSmrgcat >$dummy.c <<EOF
1338a0d3b6eaSmrg#ifdef _SEQUENT_
1339a0d3b6eaSmrg# include <sys/types.h>
1340a0d3b6eaSmrg# include <sys/utsname.h>
1341a0d3b6eaSmrg#endif
1342a0d3b6eaSmrgmain ()
1343a0d3b6eaSmrg{
1344a0d3b6eaSmrg#if defined (sony)
1345a0d3b6eaSmrg#if defined (MIPSEB)
1346a0d3b6eaSmrg  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
1347a0d3b6eaSmrg     I don't know....  */
1348a0d3b6eaSmrg  printf ("mips-sony-bsd\n"); exit (0);
1349a0d3b6eaSmrg#else
1350a0d3b6eaSmrg#include <sys/param.h>
1351a0d3b6eaSmrg  printf ("m68k-sony-newsos%s\n",
1352a0d3b6eaSmrg#ifdef NEWSOS4
1353966b534aSmrg	"4"
1354a0d3b6eaSmrg#else
1355966b534aSmrg	""
1356a0d3b6eaSmrg#endif
1357966b534aSmrg	); exit (0);
1358a0d3b6eaSmrg#endif
1359a0d3b6eaSmrg#endif
1360a0d3b6eaSmrg
1361a0d3b6eaSmrg#if defined (__arm) && defined (__acorn) && defined (__unix)
1362a0d3b6eaSmrg  printf ("arm-acorn-riscix\n"); exit (0);
1363a0d3b6eaSmrg#endif
1364a0d3b6eaSmrg
1365a0d3b6eaSmrg#if defined (hp300) && !defined (hpux)
1366a0d3b6eaSmrg  printf ("m68k-hp-bsd\n"); exit (0);
1367a0d3b6eaSmrg#endif
1368a0d3b6eaSmrg
1369a0d3b6eaSmrg#if defined (NeXT)
1370a0d3b6eaSmrg#if !defined (__ARCHITECTURE__)
1371a0d3b6eaSmrg#define __ARCHITECTURE__ "m68k"
1372a0d3b6eaSmrg#endif
1373a0d3b6eaSmrg  int version;
1374a0d3b6eaSmrg  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
1375a0d3b6eaSmrg  if (version < 4)
1376a0d3b6eaSmrg    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
1377a0d3b6eaSmrg  else
1378a0d3b6eaSmrg    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
1379a0d3b6eaSmrg  exit (0);
1380a0d3b6eaSmrg#endif
1381a0d3b6eaSmrg
1382a0d3b6eaSmrg#if defined (MULTIMAX) || defined (n16)
1383a0d3b6eaSmrg#if defined (UMAXV)
1384a0d3b6eaSmrg  printf ("ns32k-encore-sysv\n"); exit (0);
1385a0d3b6eaSmrg#else
1386a0d3b6eaSmrg#if defined (CMU)
1387a0d3b6eaSmrg  printf ("ns32k-encore-mach\n"); exit (0);
1388a0d3b6eaSmrg#else
1389a0d3b6eaSmrg  printf ("ns32k-encore-bsd\n"); exit (0);
1390a0d3b6eaSmrg#endif
1391a0d3b6eaSmrg#endif
1392a0d3b6eaSmrg#endif
1393a0d3b6eaSmrg
1394a0d3b6eaSmrg#if defined (__386BSD__)
1395a0d3b6eaSmrg  printf ("i386-pc-bsd\n"); exit (0);
1396a0d3b6eaSmrg#endif
1397a0d3b6eaSmrg
1398a0d3b6eaSmrg#if defined (sequent)
1399a0d3b6eaSmrg#if defined (i386)
1400a0d3b6eaSmrg  printf ("i386-sequent-dynix\n"); exit (0);
1401a0d3b6eaSmrg#endif
1402a0d3b6eaSmrg#if defined (ns32000)
1403a0d3b6eaSmrg  printf ("ns32k-sequent-dynix\n"); exit (0);
1404a0d3b6eaSmrg#endif
1405a0d3b6eaSmrg#endif
1406a0d3b6eaSmrg
1407a0d3b6eaSmrg#if defined (_SEQUENT_)
1408a0d3b6eaSmrg    struct utsname un;
1409a0d3b6eaSmrg
1410a0d3b6eaSmrg    uname(&un);
1411a0d3b6eaSmrg
1412a0d3b6eaSmrg    if (strncmp(un.version, "V2", 2) == 0) {
1413a0d3b6eaSmrg	printf ("i386-sequent-ptx2\n"); exit (0);
1414a0d3b6eaSmrg    }
1415a0d3b6eaSmrg    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
1416a0d3b6eaSmrg	printf ("i386-sequent-ptx1\n"); exit (0);
1417a0d3b6eaSmrg    }
1418a0d3b6eaSmrg    printf ("i386-sequent-ptx\n"); exit (0);
1419a0d3b6eaSmrg
1420a0d3b6eaSmrg#endif
1421a0d3b6eaSmrg
1422a0d3b6eaSmrg#if defined (vax)
1423a0d3b6eaSmrg# if !defined (ultrix)
1424a0d3b6eaSmrg#  include <sys/param.h>
1425a0d3b6eaSmrg#  if defined (BSD)
1426a0d3b6eaSmrg#   if BSD == 43
1427a0d3b6eaSmrg      printf ("vax-dec-bsd4.3\n"); exit (0);
1428a0d3b6eaSmrg#   else
1429a0d3b6eaSmrg#    if BSD == 199006
1430a0d3b6eaSmrg      printf ("vax-dec-bsd4.3reno\n"); exit (0);
1431a0d3b6eaSmrg#    else
1432a0d3b6eaSmrg      printf ("vax-dec-bsd\n"); exit (0);
1433a0d3b6eaSmrg#    endif
1434a0d3b6eaSmrg#   endif
1435a0d3b6eaSmrg#  else
1436a0d3b6eaSmrg    printf ("vax-dec-bsd\n"); exit (0);
1437a0d3b6eaSmrg#  endif
1438a0d3b6eaSmrg# else
1439a0d3b6eaSmrg    printf ("vax-dec-ultrix\n"); exit (0);
1440a0d3b6eaSmrg# endif
1441a0d3b6eaSmrg#endif
1442a0d3b6eaSmrg
1443a0d3b6eaSmrg#if defined (alliant) && defined (i860)
1444a0d3b6eaSmrg  printf ("i860-alliant-bsd\n"); exit (0);
1445a0d3b6eaSmrg#endif
1446a0d3b6eaSmrg
1447a0d3b6eaSmrg  exit (1);
1448a0d3b6eaSmrg}
1449a0d3b6eaSmrgEOF
1450a0d3b6eaSmrg
1451a0d3b6eaSmrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
1452a0d3b6eaSmrg	{ echo "$SYSTEM_NAME"; exit; }
1453a0d3b6eaSmrg
1454a0d3b6eaSmrg# Apollos put the system type in the environment.
1455a0d3b6eaSmrg
1456a0d3b6eaSmrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
1457a0d3b6eaSmrg
1458a0d3b6eaSmrg# Convex versions that predate uname can use getsysinfo(1)
1459a0d3b6eaSmrg
1460a0d3b6eaSmrgif [ -x /usr/convex/getsysinfo ]
1461a0d3b6eaSmrgthen
1462a0d3b6eaSmrg    case `getsysinfo -f cpu_type` in
1463a0d3b6eaSmrg    c1*)
1464a0d3b6eaSmrg	echo c1-convex-bsd
1465a0d3b6eaSmrg	exit ;;
1466a0d3b6eaSmrg    c2*)
1467a0d3b6eaSmrg	if getsysinfo -f scalar_acc
1468a0d3b6eaSmrg	then echo c32-convex-bsd
1469a0d3b6eaSmrg	else echo c2-convex-bsd
1470a0d3b6eaSmrg	fi
1471a0d3b6eaSmrg	exit ;;
1472a0d3b6eaSmrg    c34*)
1473a0d3b6eaSmrg	echo c34-convex-bsd
1474a0d3b6eaSmrg	exit ;;
1475a0d3b6eaSmrg    c38*)
1476a0d3b6eaSmrg	echo c38-convex-bsd
1477a0d3b6eaSmrg	exit ;;
1478a0d3b6eaSmrg    c4*)
1479a0d3b6eaSmrg	echo c4-convex-bsd
1480a0d3b6eaSmrg	exit ;;
1481a0d3b6eaSmrg    esac
1482a0d3b6eaSmrgfi
1483a0d3b6eaSmrg
1484a0d3b6eaSmrgcat >&2 <<EOF
1485a0d3b6eaSmrg$0: unable to guess system type
1486a0d3b6eaSmrg
1487a0d3b6eaSmrgThis script, last modified $timestamp, has failed to recognize
1488a0d3b6eaSmrgthe operating system you are using. It is advised that you
1489a0d3b6eaSmrgdownload the most up to date version of the config scripts from
1490a0d3b6eaSmrg
1491f8a31ee4Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
1492a0d3b6eaSmrgand
1493f8a31ee4Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
1494a0d3b6eaSmrg
1495a0d3b6eaSmrgIf the version you run ($0) is already up to date, please
1496a0d3b6eaSmrgsend the following data and any information you think might be
1497a0d3b6eaSmrgpertinent to <config-patches@gnu.org> in order to provide the needed
1498a0d3b6eaSmrginformation to handle your system.
1499a0d3b6eaSmrg
1500a0d3b6eaSmrgconfig.guess timestamp = $timestamp
1501a0d3b6eaSmrg
1502a0d3b6eaSmrguname -m = `(uname -m) 2>/dev/null || echo unknown`
1503a0d3b6eaSmrguname -r = `(uname -r) 2>/dev/null || echo unknown`
1504a0d3b6eaSmrguname -s = `(uname -s) 2>/dev/null || echo unknown`
1505a0d3b6eaSmrguname -v = `(uname -v) 2>/dev/null || echo unknown`
1506a0d3b6eaSmrg
1507a0d3b6eaSmrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1508a0d3b6eaSmrg/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
1509a0d3b6eaSmrg
1510a0d3b6eaSmrghostinfo               = `(hostinfo) 2>/dev/null`
1511a0d3b6eaSmrg/bin/universe          = `(/bin/universe) 2>/dev/null`
1512a0d3b6eaSmrg/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
1513a0d3b6eaSmrg/bin/arch              = `(/bin/arch) 2>/dev/null`
1514a0d3b6eaSmrg/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
1515a0d3b6eaSmrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1516a0d3b6eaSmrg
1517a0d3b6eaSmrgUNAME_MACHINE = ${UNAME_MACHINE}
1518a0d3b6eaSmrgUNAME_RELEASE = ${UNAME_RELEASE}
1519a0d3b6eaSmrgUNAME_SYSTEM  = ${UNAME_SYSTEM}
1520a0d3b6eaSmrgUNAME_VERSION = ${UNAME_VERSION}
1521a0d3b6eaSmrgEOF
1522a0d3b6eaSmrg
1523a0d3b6eaSmrgexit 1
1524a0d3b6eaSmrg
1525a0d3b6eaSmrg# Local variables:
1526a0d3b6eaSmrg# eval: (add-hook 'write-file-hooks 'time-stamp)
1527a0d3b6eaSmrg# time-stamp-start: "timestamp='"
1528a0d3b6eaSmrg# time-stamp-format: "%:y-%02m-%02d"
1529a0d3b6eaSmrg# time-stamp-end: "'"
1530a0d3b6eaSmrg# End:
1531