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