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