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