1357bfbb2Smrg#! /bin/sh
2357bfbb2Smrg# Attempt to guess a canonical system name.
3357bfbb2Smrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
483e03a40Smrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
583e03a40Smrg#   2011 Free Software Foundation, Inc.
6357bfbb2Smrg
783e03a40Smrgtimestamp='2011-05-11'
8357bfbb2Smrg
9357bfbb2Smrg# This file is free software; you can redistribute it and/or modify it
10357bfbb2Smrg# under the terms of the GNU General Public License as published by
11357bfbb2Smrg# the Free Software Foundation; either version 2 of the License, or
12357bfbb2Smrg# (at your option) any later version.
13357bfbb2Smrg#
14357bfbb2Smrg# This program is distributed in the hope that it will be useful, but
15357bfbb2Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of
16357bfbb2Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17357bfbb2Smrg# General Public License for more details.
18357bfbb2Smrg#
19357bfbb2Smrg# You should have received a copy of the GNU General Public License
20357bfbb2Smrg# along with this program; if not, write to the Free Software
21357bfbb2Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
22357bfbb2Smrg# 02110-1301, USA.
23357bfbb2Smrg#
24357bfbb2Smrg# As a special exception to the GNU General Public License, if you
25357bfbb2Smrg# distribute this file as part of a program that contains a
26357bfbb2Smrg# configuration script generated by Autoconf, you may include it under
27357bfbb2Smrg# the same distribution terms that you use for the rest of that program.
28357bfbb2Smrg
29357bfbb2Smrg
3083e03a40Smrg# Originally written by Per Bothner.  Please send patches (context
3183e03a40Smrg# diff format) to <config-patches@gnu.org> and include a ChangeLog
3283e03a40Smrg# entry.
33357bfbb2Smrg#
34357bfbb2Smrg# This script attempts to guess a canonical system name similar to
35357bfbb2Smrg# config.sub.  If it succeeds, it prints the system name on stdout, and
36357bfbb2Smrg# exits with 0.  Otherwise, it exits with 1.
37357bfbb2Smrg#
3883e03a40Smrg# You can get the latest version of this script from:
3983e03a40Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
40357bfbb2Smrg
41357bfbb2Smrgme=`echo "$0" | sed -e 's,.*/,,'`
42357bfbb2Smrg
43357bfbb2Smrgusage="\
44357bfbb2SmrgUsage: $0 [OPTION]
45357bfbb2Smrg
46357bfbb2SmrgOutput the configuration name of the system \`$me' is run on.
47357bfbb2Smrg
48357bfbb2SmrgOperation modes:
49357bfbb2Smrg  -h, --help         print this help, then exit
50357bfbb2Smrg  -t, --time-stamp   print date of last modification, then exit
51357bfbb2Smrg  -v, --version      print version number, then exit
52357bfbb2Smrg
53357bfbb2SmrgReport bugs and patches to <config-patches@gnu.org>."
54357bfbb2Smrg
55357bfbb2Smrgversion="\
56357bfbb2SmrgGNU config.guess ($timestamp)
57357bfbb2Smrg
58357bfbb2SmrgOriginally written by Per Bothner.
5983e03a40SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
6083e03a40Smrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free
6183e03a40SmrgSoftware Foundation, Inc.
62357bfbb2Smrg
63357bfbb2SmrgThis is free software; see the source for copying conditions.  There is NO
64357bfbb2Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
65357bfbb2Smrg
66357bfbb2Smrghelp="
67357bfbb2SmrgTry \`$me --help' for more information."
68357bfbb2Smrg
69357bfbb2Smrg# Parse command line
70357bfbb2Smrgwhile test $# -gt 0 ; do
71357bfbb2Smrg  case $1 in
72357bfbb2Smrg    --time-stamp | --time* | -t )
73357bfbb2Smrg       echo "$timestamp" ; exit ;;
74357bfbb2Smrg    --version | -v )
75357bfbb2Smrg       echo "$version" ; exit ;;
76357bfbb2Smrg    --help | --h* | -h )
77357bfbb2Smrg       echo "$usage"; exit ;;
78357bfbb2Smrg    -- )     # Stop option processing
79357bfbb2Smrg       shift; break ;;
80357bfbb2Smrg    - )	# Use stdin as input.
81357bfbb2Smrg       break ;;
82357bfbb2Smrg    -* )
83357bfbb2Smrg       echo "$me: invalid option $1$help" >&2
84357bfbb2Smrg       exit 1 ;;
85357bfbb2Smrg    * )
86357bfbb2Smrg       break ;;
87357bfbb2Smrg  esac
88357bfbb2Smrgdone
89357bfbb2Smrg
90357bfbb2Smrgif test $# != 0; then
91357bfbb2Smrg  echo "$me: too many arguments$help" >&2
92357bfbb2Smrg  exit 1
93357bfbb2Smrgfi
94357bfbb2Smrg
95357bfbb2Smrgtrap 'exit 1' 1 2 15
96357bfbb2Smrg
97357bfbb2Smrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
98357bfbb2Smrg# compiler to aid in system detection is discouraged as it requires
99357bfbb2Smrg# temporary files to be created and, as you can see below, it is a
100357bfbb2Smrg# headache to deal with in a portable fashion.
101357bfbb2Smrg
102357bfbb2Smrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
103357bfbb2Smrg# use `HOST_CC' if defined, but it is deprecated.
104357bfbb2Smrg
105357bfbb2Smrg# Portable tmp directory creation inspired by the Autoconf team.
106357bfbb2Smrg
107357bfbb2Smrgset_cc_for_build='
108357bfbb2Smrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
109357bfbb2Smrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
110357bfbb2Smrg: ${TMPDIR=/tmp} ;
11183e03a40Smrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
112357bfbb2Smrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
113357bfbb2Smrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
114357bfbb2Smrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
115357bfbb2Smrgdummy=$tmp/dummy ;
116357bfbb2Smrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
117357bfbb2Smrgcase $CC_FOR_BUILD,$HOST_CC,$CC in
118357bfbb2Smrg ,,)    echo "int x;" > $dummy.c ;
119357bfbb2Smrg	for c in cc gcc c89 c99 ; do
120357bfbb2Smrg	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
121357bfbb2Smrg	     CC_FOR_BUILD="$c"; break ;
122357bfbb2Smrg	  fi ;
123357bfbb2Smrg	done ;
124357bfbb2Smrg	if test x"$CC_FOR_BUILD" = x ; then
125357bfbb2Smrg	  CC_FOR_BUILD=no_compiler_found ;
126357bfbb2Smrg	fi
127357bfbb2Smrg	;;
128357bfbb2Smrg ,,*)   CC_FOR_BUILD=$CC ;;
129357bfbb2Smrg ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
1305d713044Smrgesac ; set_cc_for_build= ;'
131357bfbb2Smrg
132357bfbb2Smrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
133357bfbb2Smrg# (ghazi@noc.rutgers.edu 1994-08-24)
134357bfbb2Smrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then
135357bfbb2Smrg	PATH=$PATH:/.attbin ; export PATH
136357bfbb2Smrgfi
137357bfbb2Smrg
138357bfbb2SmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
139357bfbb2SmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
140357bfbb2SmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
141357bfbb2SmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
142357bfbb2Smrg
143357bfbb2Smrg# Note: order is significant - the case branches are not exclusive.
144357bfbb2Smrg
145357bfbb2Smrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
146357bfbb2Smrg    *:NetBSD:*:*)
147357bfbb2Smrg	# NetBSD (nbsd) targets should (where applicable) match one or
148357bfbb2Smrg	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
149357bfbb2Smrg	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
150357bfbb2Smrg	# switched to ELF, *-*-netbsd* would select the old
151357bfbb2Smrg	# object file format.  This provides both forward
152357bfbb2Smrg	# compatibility and a consistent mechanism for selecting the
153357bfbb2Smrg	# object file format.
154357bfbb2Smrg	#
155357bfbb2Smrg	# Note: NetBSD doesn't particularly care about the vendor
156357bfbb2Smrg	# portion of the name.  We always set it to "unknown".
157357bfbb2Smrg	sysctl="sysctl -n hw.machine_arch"
158357bfbb2Smrg	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
159357bfbb2Smrg	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
160357bfbb2Smrg	case "${UNAME_MACHINE_ARCH}" in
161357bfbb2Smrg	    armeb) machine=armeb-unknown ;;
162357bfbb2Smrg	    arm*) machine=arm-unknown ;;
163357bfbb2Smrg	    sh3el) machine=shl-unknown ;;
164357bfbb2Smrg	    sh3eb) machine=sh-unknown ;;
16583e03a40Smrg	    sh5el) machine=sh5le-unknown ;;
166357bfbb2Smrg	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
167357bfbb2Smrg	esac
168357bfbb2Smrg	# The Operating System including object format, if it has switched
169357bfbb2Smrg	# to ELF recently, or will in the future.
170357bfbb2Smrg	case "${UNAME_MACHINE_ARCH}" in
171357bfbb2Smrg	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
172357bfbb2Smrg		eval $set_cc_for_build
173357bfbb2Smrg		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
17483e03a40Smrg			| grep -q __ELF__
175357bfbb2Smrg		then
176357bfbb2Smrg		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
177357bfbb2Smrg		    # Return netbsd for either.  FIX?
178357bfbb2Smrg		    os=netbsd
179357bfbb2Smrg		else
180357bfbb2Smrg		    os=netbsdelf
181357bfbb2Smrg		fi
182357bfbb2Smrg		;;
183357bfbb2Smrg	    *)
18483e03a40Smrg		os=netbsd
185357bfbb2Smrg		;;
186357bfbb2Smrg	esac
187357bfbb2Smrg	# The OS release
188357bfbb2Smrg	# Debian GNU/NetBSD machines have a different userland, and
189357bfbb2Smrg	# thus, need a distinct triplet. However, they do not need
190357bfbb2Smrg	# kernel version information, so it can be replaced with a
191357bfbb2Smrg	# suitable tag, in the style of linux-gnu.
192357bfbb2Smrg	case "${UNAME_VERSION}" in
193357bfbb2Smrg	    Debian*)
194357bfbb2Smrg		release='-gnu'
195357bfbb2Smrg		;;
196357bfbb2Smrg	    *)
197357bfbb2Smrg		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
198357bfbb2Smrg		;;
199357bfbb2Smrg	esac
200357bfbb2Smrg	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
201357bfbb2Smrg	# contains redundant information, the shorter form:
202357bfbb2Smrg	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
203357bfbb2Smrg	echo "${machine}-${os}${release}"
204357bfbb2Smrg	exit ;;
205357bfbb2Smrg    *:OpenBSD:*:*)
206357bfbb2Smrg	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
207357bfbb2Smrg	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
208357bfbb2Smrg	exit ;;
209357bfbb2Smrg    *:ekkoBSD:*:*)
210357bfbb2Smrg	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
211357bfbb2Smrg	exit ;;
21283e03a40Smrg    *:SolidBSD:*:*)
21383e03a40Smrg	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
21483e03a40Smrg	exit ;;
215357bfbb2Smrg    macppc:MirBSD:*:*)
21683e03a40Smrg	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
217357bfbb2Smrg	exit ;;
218357bfbb2Smrg    *:MirBSD:*:*)
219357bfbb2Smrg	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
220357bfbb2Smrg	exit ;;
221357bfbb2Smrg    alpha:OSF1:*:*)
222357bfbb2Smrg	case $UNAME_RELEASE in
223357bfbb2Smrg	*4.0)
224357bfbb2Smrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
225357bfbb2Smrg		;;
226357bfbb2Smrg	*5.*)
22783e03a40Smrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
228357bfbb2Smrg		;;
229357bfbb2Smrg	esac
230357bfbb2Smrg	# According to Compaq, /usr/sbin/psrinfo has been available on
231357bfbb2Smrg	# OSF/1 and Tru64 systems produced since 1995.  I hope that
232357bfbb2Smrg	# covers most systems running today.  This code pipes the CPU
233357bfbb2Smrg	# types through head -n 1, so we only detect the type of CPU 0.
234357bfbb2Smrg	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
235357bfbb2Smrg	case "$ALPHA_CPU_TYPE" in
236357bfbb2Smrg	    "EV4 (21064)")
237357bfbb2Smrg		UNAME_MACHINE="alpha" ;;
238357bfbb2Smrg	    "EV4.5 (21064)")
239357bfbb2Smrg		UNAME_MACHINE="alpha" ;;
240357bfbb2Smrg	    "LCA4 (21066/21068)")
241357bfbb2Smrg		UNAME_MACHINE="alpha" ;;
242357bfbb2Smrg	    "EV5 (21164)")
243357bfbb2Smrg		UNAME_MACHINE="alphaev5" ;;
244357bfbb2Smrg	    "EV5.6 (21164A)")
245357bfbb2Smrg		UNAME_MACHINE="alphaev56" ;;
246357bfbb2Smrg	    "EV5.6 (21164PC)")
247357bfbb2Smrg		UNAME_MACHINE="alphapca56" ;;
248357bfbb2Smrg	    "EV5.7 (21164PC)")
249357bfbb2Smrg		UNAME_MACHINE="alphapca57" ;;
250357bfbb2Smrg	    "EV6 (21264)")
251357bfbb2Smrg		UNAME_MACHINE="alphaev6" ;;
252357bfbb2Smrg	    "EV6.7 (21264A)")
253357bfbb2Smrg		UNAME_MACHINE="alphaev67" ;;
254357bfbb2Smrg	    "EV6.8CB (21264C)")
255357bfbb2Smrg		UNAME_MACHINE="alphaev68" ;;
256357bfbb2Smrg	    "EV6.8AL (21264B)")
257357bfbb2Smrg		UNAME_MACHINE="alphaev68" ;;
258357bfbb2Smrg	    "EV6.8CX (21264D)")
259357bfbb2Smrg		UNAME_MACHINE="alphaev68" ;;
260357bfbb2Smrg	    "EV6.9A (21264/EV69A)")
261357bfbb2Smrg		UNAME_MACHINE="alphaev69" ;;
262357bfbb2Smrg	    "EV7 (21364)")
263357bfbb2Smrg		UNAME_MACHINE="alphaev7" ;;
264357bfbb2Smrg	    "EV7.9 (21364A)")
265357bfbb2Smrg		UNAME_MACHINE="alphaev79" ;;
266357bfbb2Smrg	esac
267357bfbb2Smrg	# A Pn.n version is a patched version.
268357bfbb2Smrg	# A Vn.n version is a released version.
269357bfbb2Smrg	# A Tn.n version is a released field test version.
270357bfbb2Smrg	# A Xn.n version is an unreleased experimental baselevel.
271357bfbb2Smrg	# 1.2 uses "1.2" for uname -r.
272357bfbb2Smrg	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
27383e03a40Smrg	# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
27483e03a40Smrg	exitcode=$?
27583e03a40Smrg	trap '' 0
27683e03a40Smrg	exit $exitcode ;;
277357bfbb2Smrg    Alpha\ *:Windows_NT*:*)
278357bfbb2Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
279357bfbb2Smrg	# Should we change UNAME_MACHINE based on the output of uname instead
280357bfbb2Smrg	# of the specific Alpha model?
281357bfbb2Smrg	echo alpha-pc-interix
282357bfbb2Smrg	exit ;;
283357bfbb2Smrg    21064:Windows_NT:50:3)
284357bfbb2Smrg	echo alpha-dec-winnt3.5
285357bfbb2Smrg	exit ;;
286357bfbb2Smrg    Amiga*:UNIX_System_V:4.0:*)
287357bfbb2Smrg	echo m68k-unknown-sysv4
288357bfbb2Smrg	exit ;;
289357bfbb2Smrg    *:[Aa]miga[Oo][Ss]:*:*)
290357bfbb2Smrg	echo ${UNAME_MACHINE}-unknown-amigaos
291357bfbb2Smrg	exit ;;
292357bfbb2Smrg    *:[Mm]orph[Oo][Ss]:*:*)
293357bfbb2Smrg	echo ${UNAME_MACHINE}-unknown-morphos
294357bfbb2Smrg	exit ;;
295357bfbb2Smrg    *:OS/390:*:*)
296357bfbb2Smrg	echo i370-ibm-openedition
297357bfbb2Smrg	exit ;;
298357bfbb2Smrg    *:z/VM:*:*)
299357bfbb2Smrg	echo s390-ibm-zvmoe
300357bfbb2Smrg	exit ;;
301357bfbb2Smrg    *:OS400:*:*)
30283e03a40Smrg	echo powerpc-ibm-os400
303357bfbb2Smrg	exit ;;
304357bfbb2Smrg    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
305357bfbb2Smrg	echo arm-acorn-riscix${UNAME_RELEASE}
306357bfbb2Smrg	exit ;;
307357bfbb2Smrg    arm:riscos:*:*|arm:RISCOS:*:*)
308357bfbb2Smrg	echo arm-unknown-riscos
309357bfbb2Smrg	exit ;;
310357bfbb2Smrg    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
311357bfbb2Smrg	echo hppa1.1-hitachi-hiuxmpp
312357bfbb2Smrg	exit ;;
313357bfbb2Smrg    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
314357bfbb2Smrg	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
315357bfbb2Smrg	if test "`(/bin/universe) 2>/dev/null`" = att ; then
316357bfbb2Smrg		echo pyramid-pyramid-sysv3
317357bfbb2Smrg	else
318357bfbb2Smrg		echo pyramid-pyramid-bsd
319357bfbb2Smrg	fi
320357bfbb2Smrg	exit ;;
321357bfbb2Smrg    NILE*:*:*:dcosx)
322357bfbb2Smrg	echo pyramid-pyramid-svr4
323357bfbb2Smrg	exit ;;
324357bfbb2Smrg    DRS?6000:unix:4.0:6*)
325357bfbb2Smrg	echo sparc-icl-nx6
326357bfbb2Smrg	exit ;;
327357bfbb2Smrg    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
328357bfbb2Smrg	case `/usr/bin/uname -p` in
329357bfbb2Smrg	    sparc) echo sparc-icl-nx7; exit ;;
330357bfbb2Smrg	esac ;;
33183e03a40Smrg    s390x:SunOS:*:*)
33283e03a40Smrg	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
33383e03a40Smrg	exit ;;
334357bfbb2Smrg    sun4H:SunOS:5.*:*)
335357bfbb2Smrg	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
336357bfbb2Smrg	exit ;;
337357bfbb2Smrg    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
338357bfbb2Smrg	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
339357bfbb2Smrg	exit ;;
34083e03a40Smrg    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
34183e03a40Smrg	echo i386-pc-auroraux${UNAME_RELEASE}
34283e03a40Smrg	exit ;;
34383e03a40Smrg    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
34483e03a40Smrg	eval $set_cc_for_build
34583e03a40Smrg	SUN_ARCH="i386"
34683e03a40Smrg	# If there is a compiler, see if it is configured for 64-bit objects.
34783e03a40Smrg	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
34883e03a40Smrg	# This test works for both compilers.
34983e03a40Smrg	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
35083e03a40Smrg	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
35183e03a40Smrg		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
35283e03a40Smrg		grep IS_64BIT_ARCH >/dev/null
35383e03a40Smrg	    then
35483e03a40Smrg		SUN_ARCH="x86_64"
35583e03a40Smrg	    fi
35683e03a40Smrg	fi
35783e03a40Smrg	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
358357bfbb2Smrg	exit ;;
359357bfbb2Smrg    sun4*:SunOS:6*:*)
360357bfbb2Smrg	# According to config.sub, this is the proper way to canonicalize
361357bfbb2Smrg	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
362357bfbb2Smrg	# it's likely to be more like Solaris than SunOS4.
363357bfbb2Smrg	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
364357bfbb2Smrg	exit ;;
365357bfbb2Smrg    sun4*:SunOS:*:*)
366357bfbb2Smrg	case "`/usr/bin/arch -k`" in
367357bfbb2Smrg	    Series*|S4*)
368357bfbb2Smrg		UNAME_RELEASE=`uname -v`
369357bfbb2Smrg		;;
370357bfbb2Smrg	esac
371357bfbb2Smrg	# Japanese Language versions have a version number like `4.1.3-JL'.
372357bfbb2Smrg	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
373357bfbb2Smrg	exit ;;
374357bfbb2Smrg    sun3*:SunOS:*:*)
375357bfbb2Smrg	echo m68k-sun-sunos${UNAME_RELEASE}
376357bfbb2Smrg	exit ;;
377357bfbb2Smrg    sun*:*:4.2BSD:*)
378357bfbb2Smrg	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
379357bfbb2Smrg	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
380357bfbb2Smrg	case "`/bin/arch`" in
381357bfbb2Smrg	    sun3)
382357bfbb2Smrg		echo m68k-sun-sunos${UNAME_RELEASE}
383357bfbb2Smrg		;;
384357bfbb2Smrg	    sun4)
385357bfbb2Smrg		echo sparc-sun-sunos${UNAME_RELEASE}
386357bfbb2Smrg		;;
387357bfbb2Smrg	esac
388357bfbb2Smrg	exit ;;
389357bfbb2Smrg    aushp:SunOS:*:*)
390357bfbb2Smrg	echo sparc-auspex-sunos${UNAME_RELEASE}
391357bfbb2Smrg	exit ;;
392357bfbb2Smrg    # The situation for MiNT is a little confusing.  The machine name
393357bfbb2Smrg    # can be virtually everything (everything which is not
394357bfbb2Smrg    # "atarist" or "atariste" at least should have a processor
395357bfbb2Smrg    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
396357bfbb2Smrg    # to the lowercase version "mint" (or "freemint").  Finally
397357bfbb2Smrg    # the system name "TOS" denotes a system which is actually not
398357bfbb2Smrg    # MiNT.  But MiNT is downward compatible to TOS, so this should
399357bfbb2Smrg    # be no problem.
400357bfbb2Smrg    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
40183e03a40Smrg	echo m68k-atari-mint${UNAME_RELEASE}
402357bfbb2Smrg	exit ;;
403357bfbb2Smrg    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
404357bfbb2Smrg	echo m68k-atari-mint${UNAME_RELEASE}
40583e03a40Smrg	exit ;;
406357bfbb2Smrg    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
40783e03a40Smrg	echo m68k-atari-mint${UNAME_RELEASE}
408357bfbb2Smrg	exit ;;
409357bfbb2Smrg    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
41083e03a40Smrg	echo m68k-milan-mint${UNAME_RELEASE}
41183e03a40Smrg	exit ;;
412357bfbb2Smrg    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
41383e03a40Smrg	echo m68k-hades-mint${UNAME_RELEASE}
41483e03a40Smrg	exit ;;
415357bfbb2Smrg    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
41683e03a40Smrg	echo m68k-unknown-mint${UNAME_RELEASE}
41783e03a40Smrg	exit ;;
418357bfbb2Smrg    m68k:machten:*:*)
419357bfbb2Smrg	echo m68k-apple-machten${UNAME_RELEASE}
420357bfbb2Smrg	exit ;;
421357bfbb2Smrg    powerpc:machten:*:*)
422357bfbb2Smrg	echo powerpc-apple-machten${UNAME_RELEASE}
423357bfbb2Smrg	exit ;;
424357bfbb2Smrg    RISC*:Mach:*:*)
425357bfbb2Smrg	echo mips-dec-mach_bsd4.3
426357bfbb2Smrg	exit ;;
427357bfbb2Smrg    RISC*:ULTRIX:*:*)
428357bfbb2Smrg	echo mips-dec-ultrix${UNAME_RELEASE}
429357bfbb2Smrg	exit ;;
430357bfbb2Smrg    VAX*:ULTRIX*:*:*)
431357bfbb2Smrg	echo vax-dec-ultrix${UNAME_RELEASE}
432357bfbb2Smrg	exit ;;
433357bfbb2Smrg    2020:CLIX:*:* | 2430:CLIX:*:*)
434357bfbb2Smrg	echo clipper-intergraph-clix${UNAME_RELEASE}
435357bfbb2Smrg	exit ;;
436357bfbb2Smrg    mips:*:*:UMIPS | mips:*:*:RISCos)
437357bfbb2Smrg	eval $set_cc_for_build
438357bfbb2Smrg	sed 's/^	//' << EOF >$dummy.c
439357bfbb2Smrg#ifdef __cplusplus
440357bfbb2Smrg#include <stdio.h>  /* for printf() prototype */
441357bfbb2Smrg	int main (int argc, char *argv[]) {
442357bfbb2Smrg#else
443357bfbb2Smrg	int main (argc, argv) int argc; char *argv[]; {
444357bfbb2Smrg#endif
445357bfbb2Smrg	#if defined (host_mips) && defined (MIPSEB)
446357bfbb2Smrg	#if defined (SYSTYPE_SYSV)
447357bfbb2Smrg	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
448357bfbb2Smrg	#endif
449357bfbb2Smrg	#if defined (SYSTYPE_SVR4)
450357bfbb2Smrg	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
451357bfbb2Smrg	#endif
452357bfbb2Smrg	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
453357bfbb2Smrg	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
454357bfbb2Smrg	#endif
455357bfbb2Smrg	#endif
456357bfbb2Smrg	  exit (-1);
457357bfbb2Smrg	}
458357bfbb2SmrgEOF
459357bfbb2Smrg	$CC_FOR_BUILD -o $dummy $dummy.c &&
460357bfbb2Smrg	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
461357bfbb2Smrg	  SYSTEM_NAME=`$dummy $dummyarg` &&
462357bfbb2Smrg	    { echo "$SYSTEM_NAME"; exit; }
463357bfbb2Smrg	echo mips-mips-riscos${UNAME_RELEASE}
464357bfbb2Smrg	exit ;;
465357bfbb2Smrg    Motorola:PowerMAX_OS:*:*)
466357bfbb2Smrg	echo powerpc-motorola-powermax
467357bfbb2Smrg	exit ;;
468357bfbb2Smrg    Motorola:*:4.3:PL8-*)
469357bfbb2Smrg	echo powerpc-harris-powermax
470357bfbb2Smrg	exit ;;
471357bfbb2Smrg    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
472357bfbb2Smrg	echo powerpc-harris-powermax
473357bfbb2Smrg	exit ;;
474357bfbb2Smrg    Night_Hawk:Power_UNIX:*:*)
475357bfbb2Smrg	echo powerpc-harris-powerunix
476357bfbb2Smrg	exit ;;
477357bfbb2Smrg    m88k:CX/UX:7*:*)
478357bfbb2Smrg	echo m88k-harris-cxux7
479357bfbb2Smrg	exit ;;
480357bfbb2Smrg    m88k:*:4*:R4*)
481357bfbb2Smrg	echo m88k-motorola-sysv4
482357bfbb2Smrg	exit ;;
483357bfbb2Smrg    m88k:*:3*:R3*)
484357bfbb2Smrg	echo m88k-motorola-sysv3
485357bfbb2Smrg	exit ;;
486357bfbb2Smrg    AViiON:dgux:*:*)
48783e03a40Smrg	# DG/UX returns AViiON for all architectures
48883e03a40Smrg	UNAME_PROCESSOR=`/usr/bin/uname -p`
489357bfbb2Smrg	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
490357bfbb2Smrg	then
491357bfbb2Smrg	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
492357bfbb2Smrg	       [ ${TARGET_BINARY_INTERFACE}x = x ]
493357bfbb2Smrg	    then
494357bfbb2Smrg		echo m88k-dg-dgux${UNAME_RELEASE}
495357bfbb2Smrg	    else
496357bfbb2Smrg		echo m88k-dg-dguxbcs${UNAME_RELEASE}
497357bfbb2Smrg	    fi
498357bfbb2Smrg	else
499357bfbb2Smrg	    echo i586-dg-dgux${UNAME_RELEASE}
500357bfbb2Smrg	fi
50183e03a40Smrg	exit ;;
502357bfbb2Smrg    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
503357bfbb2Smrg	echo m88k-dolphin-sysv3
504357bfbb2Smrg	exit ;;
505357bfbb2Smrg    M88*:*:R3*:*)
506357bfbb2Smrg	# Delta 88k system running SVR3
507357bfbb2Smrg	echo m88k-motorola-sysv3
508357bfbb2Smrg	exit ;;
509357bfbb2Smrg    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
510357bfbb2Smrg	echo m88k-tektronix-sysv3
511357bfbb2Smrg	exit ;;
512357bfbb2Smrg    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
513357bfbb2Smrg	echo m68k-tektronix-bsd
514357bfbb2Smrg	exit ;;
515357bfbb2Smrg    *:IRIX*:*:*)
516357bfbb2Smrg	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
517357bfbb2Smrg	exit ;;
518357bfbb2Smrg    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
519357bfbb2Smrg	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
520357bfbb2Smrg	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
521357bfbb2Smrg    i*86:AIX:*:*)
522357bfbb2Smrg	echo i386-ibm-aix
523357bfbb2Smrg	exit ;;
524357bfbb2Smrg    ia64:AIX:*:*)
525357bfbb2Smrg	if [ -x /usr/bin/oslevel ] ; then
526357bfbb2Smrg		IBM_REV=`/usr/bin/oslevel`
527357bfbb2Smrg	else
528357bfbb2Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
529357bfbb2Smrg	fi
530357bfbb2Smrg	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
531357bfbb2Smrg	exit ;;
532357bfbb2Smrg    *:AIX:2:3)
533357bfbb2Smrg	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
534357bfbb2Smrg		eval $set_cc_for_build
535357bfbb2Smrg		sed 's/^		//' << EOF >$dummy.c
536357bfbb2Smrg		#include <sys/systemcfg.h>
537357bfbb2Smrg
538357bfbb2Smrg		main()
539357bfbb2Smrg			{
540357bfbb2Smrg			if (!__power_pc())
541357bfbb2Smrg				exit(1);
542357bfbb2Smrg			puts("powerpc-ibm-aix3.2.5");
543357bfbb2Smrg			exit(0);
544357bfbb2Smrg			}
545357bfbb2SmrgEOF
546357bfbb2Smrg		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
547357bfbb2Smrg		then
548357bfbb2Smrg			echo "$SYSTEM_NAME"
549357bfbb2Smrg		else
550357bfbb2Smrg			echo rs6000-ibm-aix3.2.5
551357bfbb2Smrg		fi
552357bfbb2Smrg	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
553357bfbb2Smrg		echo rs6000-ibm-aix3.2.4
554357bfbb2Smrg	else
555357bfbb2Smrg		echo rs6000-ibm-aix3.2
556357bfbb2Smrg	fi
557357bfbb2Smrg	exit ;;
55883e03a40Smrg    *:AIX:*:[4567])
559357bfbb2Smrg	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
560357bfbb2Smrg	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
561357bfbb2Smrg		IBM_ARCH=rs6000
562357bfbb2Smrg	else
563357bfbb2Smrg		IBM_ARCH=powerpc
564357bfbb2Smrg	fi
565357bfbb2Smrg	if [ -x /usr/bin/oslevel ] ; then
566357bfbb2Smrg		IBM_REV=`/usr/bin/oslevel`
567357bfbb2Smrg	else
568357bfbb2Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
569357bfbb2Smrg	fi
570357bfbb2Smrg	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
571357bfbb2Smrg	exit ;;
572357bfbb2Smrg    *:AIX:*:*)
573357bfbb2Smrg	echo rs6000-ibm-aix
574357bfbb2Smrg	exit ;;
575357bfbb2Smrg    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
576357bfbb2Smrg	echo romp-ibm-bsd4.4
577357bfbb2Smrg	exit ;;
578357bfbb2Smrg    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
579357bfbb2Smrg	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
580357bfbb2Smrg	exit ;;                             # report: romp-ibm BSD 4.3
581357bfbb2Smrg    *:BOSX:*:*)
582357bfbb2Smrg	echo rs6000-bull-bosx
583357bfbb2Smrg	exit ;;
584357bfbb2Smrg    DPX/2?00:B.O.S.:*:*)
585357bfbb2Smrg	echo m68k-bull-sysv3
586357bfbb2Smrg	exit ;;
587357bfbb2Smrg    9000/[34]??:4.3bsd:1.*:*)
588357bfbb2Smrg	echo m68k-hp-bsd
589357bfbb2Smrg	exit ;;
590357bfbb2Smrg    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
591357bfbb2Smrg	echo m68k-hp-bsd4.4
592357bfbb2Smrg	exit ;;
593357bfbb2Smrg    9000/[34678]??:HP-UX:*:*)
594357bfbb2Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
595357bfbb2Smrg	case "${UNAME_MACHINE}" in
596357bfbb2Smrg	    9000/31? )            HP_ARCH=m68000 ;;
597357bfbb2Smrg	    9000/[34]?? )         HP_ARCH=m68k ;;
598357bfbb2Smrg	    9000/[678][0-9][0-9])
599357bfbb2Smrg		if [ -x /usr/bin/getconf ]; then
600357bfbb2Smrg		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
60183e03a40Smrg		    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
60283e03a40Smrg		    case "${sc_cpu_version}" in
60383e03a40Smrg		      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
60483e03a40Smrg		      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
60583e03a40Smrg		      532)                      # CPU_PA_RISC2_0
60683e03a40Smrg			case "${sc_kernel_bits}" in
60783e03a40Smrg			  32) HP_ARCH="hppa2.0n" ;;
60883e03a40Smrg			  64) HP_ARCH="hppa2.0w" ;;
609357bfbb2Smrg			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
61083e03a40Smrg			esac ;;
61183e03a40Smrg		    esac
612357bfbb2Smrg		fi
613357bfbb2Smrg		if [ "${HP_ARCH}" = "" ]; then
614357bfbb2Smrg		    eval $set_cc_for_build
61583e03a40Smrg		    sed 's/^		//' << EOF >$dummy.c
616357bfbb2Smrg
61783e03a40Smrg		#define _HPUX_SOURCE
61883e03a40Smrg		#include <stdlib.h>
61983e03a40Smrg		#include <unistd.h>
620357bfbb2Smrg
62183e03a40Smrg		int main ()
62283e03a40Smrg		{
62383e03a40Smrg		#if defined(_SC_KERNEL_BITS)
62483e03a40Smrg		    long bits = sysconf(_SC_KERNEL_BITS);
62583e03a40Smrg		#endif
62683e03a40Smrg		    long cpu  = sysconf (_SC_CPU_VERSION);
627357bfbb2Smrg
62883e03a40Smrg		    switch (cpu)
62983e03a40Smrg			{
63083e03a40Smrg			case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
63183e03a40Smrg			case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
63283e03a40Smrg			case CPU_PA_RISC2_0:
63383e03a40Smrg		#if defined(_SC_KERNEL_BITS)
63483e03a40Smrg			    switch (bits)
63583e03a40Smrg				{
63683e03a40Smrg				case 64: puts ("hppa2.0w"); break;
63783e03a40Smrg				case 32: puts ("hppa2.0n"); break;
63883e03a40Smrg				default: puts ("hppa2.0"); break;
63983e03a40Smrg				} break;
64083e03a40Smrg		#else  /* !defined(_SC_KERNEL_BITS) */
64183e03a40Smrg			    puts ("hppa2.0"); break;
64283e03a40Smrg		#endif
64383e03a40Smrg			default: puts ("hppa1.0"); break;
64483e03a40Smrg			}
64583e03a40Smrg		    exit (0);
64683e03a40Smrg		}
647357bfbb2SmrgEOF
648357bfbb2Smrg		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
649357bfbb2Smrg		    test -z "$HP_ARCH" && HP_ARCH=hppa
650357bfbb2Smrg		fi ;;
651357bfbb2Smrg	esac
652357bfbb2Smrg	if [ ${HP_ARCH} = "hppa2.0w" ]
653357bfbb2Smrg	then
6545d713044Smrg	    eval $set_cc_for_build
655357bfbb2Smrg
656357bfbb2Smrg	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
657357bfbb2Smrg	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
658357bfbb2Smrg	    # generating 64-bit code.  GNU and HP use different nomenclature:
659357bfbb2Smrg	    #
660357bfbb2Smrg	    # $ CC_FOR_BUILD=cc ./config.guess
661357bfbb2Smrg	    # => hppa2.0w-hp-hpux11.23
662357bfbb2Smrg	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
663357bfbb2Smrg	    # => hppa64-hp-hpux11.23
664357bfbb2Smrg
665357bfbb2Smrg	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
66683e03a40Smrg		grep -q __LP64__
667357bfbb2Smrg	    then
668357bfbb2Smrg		HP_ARCH="hppa2.0w"
669357bfbb2Smrg	    else
670357bfbb2Smrg		HP_ARCH="hppa64"
671357bfbb2Smrg	    fi
672357bfbb2Smrg	fi
673357bfbb2Smrg	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
674357bfbb2Smrg	exit ;;
675357bfbb2Smrg    ia64:HP-UX:*:*)
676357bfbb2Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
677357bfbb2Smrg	echo ia64-hp-hpux${HPUX_REV}
678357bfbb2Smrg	exit ;;
679357bfbb2Smrg    3050*:HI-UX:*:*)
680357bfbb2Smrg	eval $set_cc_for_build
681357bfbb2Smrg	sed 's/^	//' << EOF >$dummy.c
682357bfbb2Smrg	#include <unistd.h>
683357bfbb2Smrg	int
684357bfbb2Smrg	main ()
685357bfbb2Smrg	{
686357bfbb2Smrg	  long cpu = sysconf (_SC_CPU_VERSION);
687357bfbb2Smrg	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
688357bfbb2Smrg	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
689357bfbb2Smrg	     results, however.  */
690357bfbb2Smrg	  if (CPU_IS_PA_RISC (cpu))
691357bfbb2Smrg	    {
692357bfbb2Smrg	      switch (cpu)
693357bfbb2Smrg		{
694357bfbb2Smrg		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
695357bfbb2Smrg		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
696357bfbb2Smrg		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
697357bfbb2Smrg		  default: puts ("hppa-hitachi-hiuxwe2"); break;
698357bfbb2Smrg		}
699357bfbb2Smrg	    }
700357bfbb2Smrg	  else if (CPU_IS_HP_MC68K (cpu))
701357bfbb2Smrg	    puts ("m68k-hitachi-hiuxwe2");
702357bfbb2Smrg	  else puts ("unknown-hitachi-hiuxwe2");
703357bfbb2Smrg	  exit (0);
704357bfbb2Smrg	}
705357bfbb2SmrgEOF
706357bfbb2Smrg	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
707357bfbb2Smrg		{ echo "$SYSTEM_NAME"; exit; }
708357bfbb2Smrg	echo unknown-hitachi-hiuxwe2
709357bfbb2Smrg	exit ;;
710357bfbb2Smrg    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
711357bfbb2Smrg	echo hppa1.1-hp-bsd
712357bfbb2Smrg	exit ;;
713357bfbb2Smrg    9000/8??:4.3bsd:*:*)
714357bfbb2Smrg	echo hppa1.0-hp-bsd
715357bfbb2Smrg	exit ;;
716357bfbb2Smrg    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
717357bfbb2Smrg	echo hppa1.0-hp-mpeix
718357bfbb2Smrg	exit ;;
719357bfbb2Smrg    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
720357bfbb2Smrg	echo hppa1.1-hp-osf
721357bfbb2Smrg	exit ;;
722357bfbb2Smrg    hp8??:OSF1:*:*)
723357bfbb2Smrg	echo hppa1.0-hp-osf
724357bfbb2Smrg	exit ;;
725357bfbb2Smrg    i*86:OSF1:*:*)
726357bfbb2Smrg	if [ -x /usr/sbin/sysversion ] ; then
727357bfbb2Smrg	    echo ${UNAME_MACHINE}-unknown-osf1mk
728357bfbb2Smrg	else
729357bfbb2Smrg	    echo ${UNAME_MACHINE}-unknown-osf1
730357bfbb2Smrg	fi
731357bfbb2Smrg	exit ;;
732357bfbb2Smrg    parisc*:Lites*:*:*)
733357bfbb2Smrg	echo hppa1.1-hp-lites
734357bfbb2Smrg	exit ;;
735357bfbb2Smrg    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
736357bfbb2Smrg	echo c1-convex-bsd
73783e03a40Smrg	exit ;;
738357bfbb2Smrg    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
739357bfbb2Smrg	if getsysinfo -f scalar_acc
740357bfbb2Smrg	then echo c32-convex-bsd
741357bfbb2Smrg	else echo c2-convex-bsd
742357bfbb2Smrg	fi
74383e03a40Smrg	exit ;;
744357bfbb2Smrg    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
745357bfbb2Smrg	echo c34-convex-bsd
74683e03a40Smrg	exit ;;
747357bfbb2Smrg    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
748357bfbb2Smrg	echo c38-convex-bsd
74983e03a40Smrg	exit ;;
750357bfbb2Smrg    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
751357bfbb2Smrg	echo c4-convex-bsd
75283e03a40Smrg	exit ;;
753357bfbb2Smrg    CRAY*Y-MP:*:*:*)
754357bfbb2Smrg	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
755357bfbb2Smrg	exit ;;
756357bfbb2Smrg    CRAY*[A-Z]90:*:*:*)
757357bfbb2Smrg	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
758357bfbb2Smrg	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
759357bfbb2Smrg	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
760357bfbb2Smrg	      -e 's/\.[^.]*$/.X/'
761357bfbb2Smrg	exit ;;
762357bfbb2Smrg    CRAY*TS:*:*:*)
763357bfbb2Smrg	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
764357bfbb2Smrg	exit ;;
765357bfbb2Smrg    CRAY*T3E:*:*:*)
766357bfbb2Smrg	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
767357bfbb2Smrg	exit ;;
768357bfbb2Smrg    CRAY*SV1:*:*:*)
769357bfbb2Smrg	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
770357bfbb2Smrg	exit ;;
771357bfbb2Smrg    *:UNICOS/mp:*:*)
772357bfbb2Smrg	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
773357bfbb2Smrg	exit ;;
774357bfbb2Smrg    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
775357bfbb2Smrg	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
77683e03a40Smrg	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
77783e03a40Smrg	FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
77883e03a40Smrg	echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
77983e03a40Smrg	exit ;;
780357bfbb2Smrg    5000:UNIX_System_V:4.*:*)
78183e03a40Smrg	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
78283e03a40Smrg	FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
78383e03a40Smrg	echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
784357bfbb2Smrg	exit ;;
785357bfbb2Smrg    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
786357bfbb2Smrg	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
787357bfbb2Smrg	exit ;;
788357bfbb2Smrg    sparc*:BSD/OS:*:*)
789357bfbb2Smrg	echo sparc-unknown-bsdi${UNAME_RELEASE}
790357bfbb2Smrg	exit ;;
791357bfbb2Smrg    *:BSD/OS:*:*)
792357bfbb2Smrg	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
793357bfbb2Smrg	exit ;;
794357bfbb2Smrg    *:FreeBSD:*:*)
79583e03a40Smrg	case ${UNAME_MACHINE} in
79683e03a40Smrg	    pc98)
79783e03a40Smrg		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
79883e03a40Smrg	    amd64)
79983e03a40Smrg		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
80083e03a40Smrg	    *)
80183e03a40Smrg		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
80283e03a40Smrg	esac
803357bfbb2Smrg	exit ;;
804357bfbb2Smrg    i*:CYGWIN*:*)
805357bfbb2Smrg	echo ${UNAME_MACHINE}-pc-cygwin
806357bfbb2Smrg	exit ;;
80783e03a40Smrg    *:MINGW*:*)
808357bfbb2Smrg	echo ${UNAME_MACHINE}-pc-mingw32
809357bfbb2Smrg	exit ;;
810357bfbb2Smrg    i*:windows32*:*)
81183e03a40Smrg	# uname -m includes "-pc" on this system.
81283e03a40Smrg	echo ${UNAME_MACHINE}-mingw32
813357bfbb2Smrg	exit ;;
814357bfbb2Smrg    i*:PW*:*)
815357bfbb2Smrg	echo ${UNAME_MACHINE}-pc-pw32
816357bfbb2Smrg	exit ;;
81783e03a40Smrg    *:Interix*:*)
81883e03a40Smrg	case ${UNAME_MACHINE} in
81983e03a40Smrg	    x86)
82083e03a40Smrg		echo i586-pc-interix${UNAME_RELEASE}
82183e03a40Smrg		exit ;;
82283e03a40Smrg	    authenticamd | genuineintel | EM64T)
82383e03a40Smrg		echo x86_64-unknown-interix${UNAME_RELEASE}
82483e03a40Smrg		exit ;;
82583e03a40Smrg	    IA64)
82683e03a40Smrg		echo ia64-unknown-interix${UNAME_RELEASE}
82783e03a40Smrg		exit ;;
82883e03a40Smrg	esac ;;
829357bfbb2Smrg    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
830357bfbb2Smrg	echo i${UNAME_MACHINE}-pc-mks
831357bfbb2Smrg	exit ;;
83283e03a40Smrg    8664:Windows_NT:*)
83383e03a40Smrg	echo x86_64-pc-mks
83483e03a40Smrg	exit ;;
835357bfbb2Smrg    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
836357bfbb2Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
837357bfbb2Smrg	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
838357bfbb2Smrg	# UNAME_MACHINE based on the output of uname instead of i386?
839357bfbb2Smrg	echo i586-pc-interix
840357bfbb2Smrg	exit ;;
841357bfbb2Smrg    i*:UWIN*:*)
842357bfbb2Smrg	echo ${UNAME_MACHINE}-pc-uwin
843357bfbb2Smrg	exit ;;
84483e03a40Smrg    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
845357bfbb2Smrg	echo x86_64-unknown-cygwin
846357bfbb2Smrg	exit ;;
847357bfbb2Smrg    p*:CYGWIN*:*)
848357bfbb2Smrg	echo powerpcle-unknown-cygwin
849357bfbb2Smrg	exit ;;
850357bfbb2Smrg    prep*:SunOS:5.*:*)
851357bfbb2Smrg	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
852357bfbb2Smrg	exit ;;
853357bfbb2Smrg    *:GNU:*:*)
854357bfbb2Smrg	# the GNU system
855357bfbb2Smrg	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
856357bfbb2Smrg	exit ;;
857357bfbb2Smrg    *:GNU/*:*:*)
858357bfbb2Smrg	# other systems with GNU libc and userland
859357bfbb2Smrg	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
860357bfbb2Smrg	exit ;;
861357bfbb2Smrg    i*86:Minix:*:*)
862357bfbb2Smrg	echo ${UNAME_MACHINE}-pc-minix
863357bfbb2Smrg	exit ;;
86483e03a40Smrg    alpha:Linux:*:*)
86583e03a40Smrg	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
86683e03a40Smrg	  EV5)   UNAME_MACHINE=alphaev5 ;;
86783e03a40Smrg	  EV56)  UNAME_MACHINE=alphaev56 ;;
86883e03a40Smrg	  PCA56) UNAME_MACHINE=alphapca56 ;;
86983e03a40Smrg	  PCA57) UNAME_MACHINE=alphapca56 ;;
87083e03a40Smrg	  EV6)   UNAME_MACHINE=alphaev6 ;;
87183e03a40Smrg	  EV67)  UNAME_MACHINE=alphaev67 ;;
87283e03a40Smrg	  EV68*) UNAME_MACHINE=alphaev68 ;;
87383e03a40Smrg	esac
87483e03a40Smrg	objdump --private-headers /bin/sh | grep -q ld.so.1
87583e03a40Smrg	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
87683e03a40Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
87783e03a40Smrg	exit ;;
878357bfbb2Smrg    arm*:Linux:*:*)
87983e03a40Smrg	eval $set_cc_for_build
88083e03a40Smrg	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
88183e03a40Smrg	    | grep -q __ARM_EABI__
88283e03a40Smrg	then
88383e03a40Smrg	    echo ${UNAME_MACHINE}-unknown-linux-gnu
88483e03a40Smrg	else
88583e03a40Smrg	    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
88683e03a40Smrg		| grep -q __ARM_PCS_VFP
88783e03a40Smrg	    then
88883e03a40Smrg		echo ${UNAME_MACHINE}-unknown-linux-gnueabi
88983e03a40Smrg	    else
89083e03a40Smrg		echo ${UNAME_MACHINE}-unknown-linux-gnueabihf
89183e03a40Smrg	    fi
89283e03a40Smrg	fi
89383e03a40Smrg	exit ;;
89483e03a40Smrg    avr32*:Linux:*:*)
895357bfbb2Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
896357bfbb2Smrg	exit ;;
897357bfbb2Smrg    cris:Linux:*:*)
898357bfbb2Smrg	echo cris-axis-linux-gnu
899357bfbb2Smrg	exit ;;
900357bfbb2Smrg    crisv32:Linux:*:*)
901357bfbb2Smrg	echo crisv32-axis-linux-gnu
902357bfbb2Smrg	exit ;;
903357bfbb2Smrg    frv:Linux:*:*)
90483e03a40Smrg	echo frv-unknown-linux-gnu
90583e03a40Smrg	exit ;;
90683e03a40Smrg    i*86:Linux:*:*)
90783e03a40Smrg	LIBC=gnu
90883e03a40Smrg	eval $set_cc_for_build
90983e03a40Smrg	sed 's/^	//' << EOF >$dummy.c
91083e03a40Smrg	#ifdef __dietlibc__
91183e03a40Smrg	LIBC=dietlibc
91283e03a40Smrg	#endif
91383e03a40SmrgEOF
91483e03a40Smrg	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
91583e03a40Smrg	echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
916357bfbb2Smrg	exit ;;
917357bfbb2Smrg    ia64:Linux:*:*)
918357bfbb2Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
919357bfbb2Smrg	exit ;;
920357bfbb2Smrg    m32r*:Linux:*:*)
921357bfbb2Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
922357bfbb2Smrg	exit ;;
923357bfbb2Smrg    m68*:Linux:*:*)
924357bfbb2Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
925357bfbb2Smrg	exit ;;
92683e03a40Smrg    mips:Linux:*:* | mips64:Linux:*:*)
927357bfbb2Smrg	eval $set_cc_for_build
928357bfbb2Smrg	sed 's/^	//' << EOF >$dummy.c
929357bfbb2Smrg	#undef CPU
93083e03a40Smrg	#undef ${UNAME_MACHINE}
93183e03a40Smrg	#undef ${UNAME_MACHINE}el
932357bfbb2Smrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
93383e03a40Smrg	CPU=${UNAME_MACHINE}el
934357bfbb2Smrg	#else
935357bfbb2Smrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
93683e03a40Smrg	CPU=${UNAME_MACHINE}
937357bfbb2Smrg	#else
938357bfbb2Smrg	CPU=
939357bfbb2Smrg	#endif
940357bfbb2Smrg	#endif
941357bfbb2SmrgEOF
94283e03a40Smrg	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
943357bfbb2Smrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
944357bfbb2Smrg	;;
94583e03a40Smrg    or32:Linux:*:*)
94683e03a40Smrg	echo or32-unknown-linux-gnu
947357bfbb2Smrg	exit ;;
94883e03a40Smrg    padre:Linux:*:*)
94983e03a40Smrg	echo sparc-unknown-linux-gnu
950357bfbb2Smrg	exit ;;
95183e03a40Smrg    parisc64:Linux:*:* | hppa64:Linux:*:*)
95283e03a40Smrg	echo hppa64-unknown-linux-gnu
953357bfbb2Smrg	exit ;;
954357bfbb2Smrg    parisc:Linux:*:* | hppa:Linux:*:*)
955357bfbb2Smrg	# Look for CPU level
956357bfbb2Smrg	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
957357bfbb2Smrg	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
958357bfbb2Smrg	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
959357bfbb2Smrg	  *)    echo hppa-unknown-linux-gnu ;;
960357bfbb2Smrg	esac
961357bfbb2Smrg	exit ;;
96283e03a40Smrg    ppc64:Linux:*:*)
96383e03a40Smrg	echo powerpc64-unknown-linux-gnu
96483e03a40Smrg	exit ;;
96583e03a40Smrg    ppc:Linux:*:*)
96683e03a40Smrg	echo powerpc-unknown-linux-gnu
967357bfbb2Smrg	exit ;;
968357bfbb2Smrg    s390:Linux:*:* | s390x:Linux:*:*)
969357bfbb2Smrg	echo ${UNAME_MACHINE}-ibm-linux
970357bfbb2Smrg	exit ;;
971357bfbb2Smrg    sh64*:Linux:*:*)
97283e03a40Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
973357bfbb2Smrg	exit ;;
974357bfbb2Smrg    sh*:Linux:*:*)
975357bfbb2Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
976357bfbb2Smrg	exit ;;
977357bfbb2Smrg    sparc:Linux:*:* | sparc64:Linux:*:*)
978357bfbb2Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
979357bfbb2Smrg	exit ;;
98083e03a40Smrg    tile*:Linux:*:*)
98183e03a40Smrg	echo ${UNAME_MACHINE}-tilera-linux-gnu
98283e03a40Smrg	exit ;;
98383e03a40Smrg    vax:Linux:*:*)
98483e03a40Smrg	echo ${UNAME_MACHINE}-dec-linux-gnu
98583e03a40Smrg	exit ;;
986357bfbb2Smrg    x86_64:Linux:*:*)
987357bfbb2Smrg	echo x86_64-unknown-linux-gnu
988357bfbb2Smrg	exit ;;
98983e03a40Smrg    xtensa*:Linux:*:*)
99083e03a40Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
99183e03a40Smrg	exit ;;
992357bfbb2Smrg    i*86:DYNIX/ptx:4*:*)
993357bfbb2Smrg	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
994357bfbb2Smrg	# earlier versions are messed up and put the nodename in both
995357bfbb2Smrg	# sysname and nodename.
996357bfbb2Smrg	echo i386-sequent-sysv4
997357bfbb2Smrg	exit ;;
998357bfbb2Smrg    i*86:UNIX_SV:4.2MP:2.*)
99983e03a40Smrg	# Unixware is an offshoot of SVR4, but it has its own version
100083e03a40Smrg	# number series starting with 2...
100183e03a40Smrg	# I am not positive that other SVR4 systems won't match this,
1002357bfbb2Smrg	# I just have to hope.  -- rms.
100383e03a40Smrg	# Use sysv4.2uw... so that sysv4* matches it.
1004357bfbb2Smrg	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
1005357bfbb2Smrg	exit ;;
1006357bfbb2Smrg    i*86:OS/2:*:*)
1007357bfbb2Smrg	# If we were able to find `uname', then EMX Unix compatibility
1008357bfbb2Smrg	# is probably installed.
1009357bfbb2Smrg	echo ${UNAME_MACHINE}-pc-os2-emx
1010357bfbb2Smrg	exit ;;
1011357bfbb2Smrg    i*86:XTS-300:*:STOP)
1012357bfbb2Smrg	echo ${UNAME_MACHINE}-unknown-stop
1013357bfbb2Smrg	exit ;;
1014357bfbb2Smrg    i*86:atheos:*:*)
1015357bfbb2Smrg	echo ${UNAME_MACHINE}-unknown-atheos
1016357bfbb2Smrg	exit ;;
1017357bfbb2Smrg    i*86:syllable:*:*)
1018357bfbb2Smrg	echo ${UNAME_MACHINE}-pc-syllable
1019357bfbb2Smrg	exit ;;
102083e03a40Smrg    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
1021357bfbb2Smrg	echo i386-unknown-lynxos${UNAME_RELEASE}
1022357bfbb2Smrg	exit ;;
1023357bfbb2Smrg    i*86:*DOS:*:*)
1024357bfbb2Smrg	echo ${UNAME_MACHINE}-pc-msdosdjgpp
1025357bfbb2Smrg	exit ;;
1026357bfbb2Smrg    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
1027357bfbb2Smrg	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
1028357bfbb2Smrg	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1029357bfbb2Smrg		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
1030357bfbb2Smrg	else
1031357bfbb2Smrg		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
1032357bfbb2Smrg	fi
1033357bfbb2Smrg	exit ;;
1034357bfbb2Smrg    i*86:*:5:[678]*)
103583e03a40Smrg	# UnixWare 7.x, OpenUNIX and OpenServer 6.
1036357bfbb2Smrg	case `/bin/uname -X | grep "^Machine"` in
1037357bfbb2Smrg	    *486*)	     UNAME_MACHINE=i486 ;;
1038357bfbb2Smrg	    *Pentium)	     UNAME_MACHINE=i586 ;;
1039357bfbb2Smrg	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1040357bfbb2Smrg	esac
1041357bfbb2Smrg	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
1042357bfbb2Smrg	exit ;;
1043357bfbb2Smrg    i*86:*:3.2:*)
1044357bfbb2Smrg	if test -f /usr/options/cb.name; then
1045357bfbb2Smrg		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1046357bfbb2Smrg		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1047357bfbb2Smrg	elif /bin/uname -X 2>/dev/null >/dev/null ; then
1048357bfbb2Smrg		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1049357bfbb2Smrg		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1050357bfbb2Smrg		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1051357bfbb2Smrg			&& UNAME_MACHINE=i586
1052357bfbb2Smrg		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1053357bfbb2Smrg			&& UNAME_MACHINE=i686
1054357bfbb2Smrg		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1055357bfbb2Smrg			&& UNAME_MACHINE=i686
1056357bfbb2Smrg		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1057357bfbb2Smrg	else
1058357bfbb2Smrg		echo ${UNAME_MACHINE}-pc-sysv32
1059357bfbb2Smrg	fi
1060357bfbb2Smrg	exit ;;
1061357bfbb2Smrg    pc:*:*:*)
1062357bfbb2Smrg	# Left here for compatibility:
106383e03a40Smrg	# uname -m prints for DJGPP always 'pc', but it prints nothing about
106483e03a40Smrg	# the processor, so we play safe by assuming i586.
106583e03a40Smrg	# Note: whatever this is, it MUST be the same as what config.sub
106683e03a40Smrg	# prints for the "djgpp" host, or else GDB configury will decide that
106783e03a40Smrg	# this is a cross-build.
106883e03a40Smrg	echo i586-pc-msdosdjgpp
106983e03a40Smrg	exit ;;
1070357bfbb2Smrg    Intel:Mach:3*:*)
1071357bfbb2Smrg	echo i386-pc-mach3
1072357bfbb2Smrg	exit ;;
1073357bfbb2Smrg    paragon:*:*:*)
1074357bfbb2Smrg	echo i860-intel-osf1
1075357bfbb2Smrg	exit ;;
1076357bfbb2Smrg    i860:*:4.*:*) # i860-SVR4
1077357bfbb2Smrg	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1078357bfbb2Smrg	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
1079357bfbb2Smrg	else # Add other i860-SVR4 vendors below as they are discovered.
1080357bfbb2Smrg	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
1081357bfbb2Smrg	fi
1082357bfbb2Smrg	exit ;;
1083357bfbb2Smrg    mini*:CTIX:SYS*5:*)
1084357bfbb2Smrg	# "miniframe"
1085357bfbb2Smrg	echo m68010-convergent-sysv
1086357bfbb2Smrg	exit ;;
1087357bfbb2Smrg    mc68k:UNIX:SYSTEM5:3.51m)
1088357bfbb2Smrg	echo m68k-convergent-sysv
1089357bfbb2Smrg	exit ;;
1090357bfbb2Smrg    M680?0:D-NIX:5.3:*)
1091357bfbb2Smrg	echo m68k-diab-dnix
1092357bfbb2Smrg	exit ;;
1093357bfbb2Smrg    M68*:*:R3V[5678]*:*)
1094357bfbb2Smrg	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
1095357bfbb2Smrg    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)
1096357bfbb2Smrg	OS_REL=''
1097357bfbb2Smrg	test -r /etc/.relid \
1098357bfbb2Smrg	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1099357bfbb2Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1100357bfbb2Smrg	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1101357bfbb2Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1102357bfbb2Smrg	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1103357bfbb2Smrg    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
110483e03a40Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
110583e03a40Smrg	  && { echo i486-ncr-sysv4; exit; } ;;
110683e03a40Smrg    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
110783e03a40Smrg	OS_REL='.3'
110883e03a40Smrg	test -r /etc/.relid \
110983e03a40Smrg	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
111083e03a40Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
111183e03a40Smrg	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
111283e03a40Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
111383e03a40Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
111483e03a40Smrg	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
111583e03a40Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1116357bfbb2Smrg    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1117357bfbb2Smrg	echo m68k-unknown-lynxos${UNAME_RELEASE}
1118357bfbb2Smrg	exit ;;
1119357bfbb2Smrg    mc68030:UNIX_System_V:4.*:*)
1120357bfbb2Smrg	echo m68k-atari-sysv4
1121357bfbb2Smrg	exit ;;
1122357bfbb2Smrg    TSUNAMI:LynxOS:2.*:*)
1123357bfbb2Smrg	echo sparc-unknown-lynxos${UNAME_RELEASE}
1124357bfbb2Smrg	exit ;;
1125357bfbb2Smrg    rs6000:LynxOS:2.*:*)
1126357bfbb2Smrg	echo rs6000-unknown-lynxos${UNAME_RELEASE}
1127357bfbb2Smrg	exit ;;
112883e03a40Smrg    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
1129357bfbb2Smrg	echo powerpc-unknown-lynxos${UNAME_RELEASE}
1130357bfbb2Smrg	exit ;;
1131357bfbb2Smrg    SM[BE]S:UNIX_SV:*:*)
1132357bfbb2Smrg	echo mips-dde-sysv${UNAME_RELEASE}
1133357bfbb2Smrg	exit ;;
1134357bfbb2Smrg    RM*:ReliantUNIX-*:*:*)
1135357bfbb2Smrg	echo mips-sni-sysv4
1136357bfbb2Smrg	exit ;;
1137357bfbb2Smrg    RM*:SINIX-*:*:*)
1138357bfbb2Smrg	echo mips-sni-sysv4
1139357bfbb2Smrg	exit ;;
1140357bfbb2Smrg    *:SINIX-*:*:*)
1141357bfbb2Smrg	if uname -p 2>/dev/null >/dev/null ; then
1142357bfbb2Smrg		UNAME_MACHINE=`(uname -p) 2>/dev/null`
1143357bfbb2Smrg		echo ${UNAME_MACHINE}-sni-sysv4
1144357bfbb2Smrg	else
1145357bfbb2Smrg		echo ns32k-sni-sysv
1146357bfbb2Smrg	fi
1147357bfbb2Smrg	exit ;;
114883e03a40Smrg    PENTIUM:*:4.0*:*)	# Unisys `ClearPath HMP IX 4000' SVR4/MP effort
114983e03a40Smrg			# says <Richard.M.Bartel@ccMail.Census.GOV>
115083e03a40Smrg	echo i586-unisys-sysv4
115183e03a40Smrg	exit ;;
1152357bfbb2Smrg    *:UNIX_System_V:4*:FTX*)
1153357bfbb2Smrg	# From Gerald Hewes <hewes@openmarket.com>.
1154357bfbb2Smrg	# How about differentiating between stratus architectures? -djm
1155357bfbb2Smrg	echo hppa1.1-stratus-sysv4
1156357bfbb2Smrg	exit ;;
1157357bfbb2Smrg    *:*:*:FTX*)
1158357bfbb2Smrg	# From seanf@swdc.stratus.com.
1159357bfbb2Smrg	echo i860-stratus-sysv4
1160357bfbb2Smrg	exit ;;
1161357bfbb2Smrg    i*86:VOS:*:*)
1162357bfbb2Smrg	# From Paul.Green@stratus.com.
1163357bfbb2Smrg	echo ${UNAME_MACHINE}-stratus-vos
1164357bfbb2Smrg	exit ;;
1165357bfbb2Smrg    *:VOS:*:*)
1166357bfbb2Smrg	# From Paul.Green@stratus.com.
1167357bfbb2Smrg	echo hppa1.1-stratus-vos
1168357bfbb2Smrg	exit ;;
1169357bfbb2Smrg    mc68*:A/UX:*:*)
1170357bfbb2Smrg	echo m68k-apple-aux${UNAME_RELEASE}
1171357bfbb2Smrg	exit ;;
1172357bfbb2Smrg    news*:NEWS-OS:6*:*)
1173357bfbb2Smrg	echo mips-sony-newsos6
1174357bfbb2Smrg	exit ;;
1175357bfbb2Smrg    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1176357bfbb2Smrg	if [ -d /usr/nec ]; then
117783e03a40Smrg		echo mips-nec-sysv${UNAME_RELEASE}
1178357bfbb2Smrg	else
117983e03a40Smrg		echo mips-unknown-sysv${UNAME_RELEASE}
1180357bfbb2Smrg	fi
118183e03a40Smrg	exit ;;
1182357bfbb2Smrg    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
1183357bfbb2Smrg	echo powerpc-be-beos
1184357bfbb2Smrg	exit ;;
1185357bfbb2Smrg    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
1186357bfbb2Smrg	echo powerpc-apple-beos
1187357bfbb2Smrg	exit ;;
1188357bfbb2Smrg    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
1189357bfbb2Smrg	echo i586-pc-beos
1190357bfbb2Smrg	exit ;;
119183e03a40Smrg    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
119283e03a40Smrg	echo i586-pc-haiku
119383e03a40Smrg	exit ;;
1194357bfbb2Smrg    SX-4:SUPER-UX:*:*)
1195357bfbb2Smrg	echo sx4-nec-superux${UNAME_RELEASE}
1196357bfbb2Smrg	exit ;;
1197357bfbb2Smrg    SX-5:SUPER-UX:*:*)
1198357bfbb2Smrg	echo sx5-nec-superux${UNAME_RELEASE}
1199357bfbb2Smrg	exit ;;
1200357bfbb2Smrg    SX-6:SUPER-UX:*:*)
1201357bfbb2Smrg	echo sx6-nec-superux${UNAME_RELEASE}
1202357bfbb2Smrg	exit ;;
120383e03a40Smrg    SX-7:SUPER-UX:*:*)
120483e03a40Smrg	echo sx7-nec-superux${UNAME_RELEASE}
120583e03a40Smrg	exit ;;
120683e03a40Smrg    SX-8:SUPER-UX:*:*)
120783e03a40Smrg	echo sx8-nec-superux${UNAME_RELEASE}
120883e03a40Smrg	exit ;;
120983e03a40Smrg    SX-8R:SUPER-UX:*:*)
121083e03a40Smrg	echo sx8r-nec-superux${UNAME_RELEASE}
121183e03a40Smrg	exit ;;
1212357bfbb2Smrg    Power*:Rhapsody:*:*)
1213357bfbb2Smrg	echo powerpc-apple-rhapsody${UNAME_RELEASE}
1214357bfbb2Smrg	exit ;;
1215357bfbb2Smrg    *:Rhapsody:*:*)
1216357bfbb2Smrg	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
1217357bfbb2Smrg	exit ;;
1218357bfbb2Smrg    *:Darwin:*:*)
1219357bfbb2Smrg	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
1220357bfbb2Smrg	case $UNAME_PROCESSOR in
122183e03a40Smrg	    i386)
122283e03a40Smrg		eval $set_cc_for_build
122383e03a40Smrg		if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
122483e03a40Smrg		  if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
122583e03a40Smrg		      (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
122683e03a40Smrg		      grep IS_64BIT_ARCH >/dev/null
122783e03a40Smrg		  then
122883e03a40Smrg		      UNAME_PROCESSOR="x86_64"
122983e03a40Smrg		  fi
123083e03a40Smrg		fi ;;
1231357bfbb2Smrg	    unknown) UNAME_PROCESSOR=powerpc ;;
1232357bfbb2Smrg	esac
1233357bfbb2Smrg	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
1234357bfbb2Smrg	exit ;;
1235357bfbb2Smrg    *:procnto*:*:* | *:QNX:[0123456789]*:*)
1236357bfbb2Smrg	UNAME_PROCESSOR=`uname -p`
1237357bfbb2Smrg	if test "$UNAME_PROCESSOR" = "x86"; then
1238357bfbb2Smrg		UNAME_PROCESSOR=i386
1239357bfbb2Smrg		UNAME_MACHINE=pc
1240357bfbb2Smrg	fi
1241357bfbb2Smrg	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
1242357bfbb2Smrg	exit ;;
1243357bfbb2Smrg    *:QNX:*:4*)
1244357bfbb2Smrg	echo i386-pc-qnx
1245357bfbb2Smrg	exit ;;
124683e03a40Smrg    NEO-?:NONSTOP_KERNEL:*:*)
124783e03a40Smrg	echo neo-tandem-nsk${UNAME_RELEASE}
124883e03a40Smrg	exit ;;
1249357bfbb2Smrg    NSE-?:NONSTOP_KERNEL:*:*)
1250357bfbb2Smrg	echo nse-tandem-nsk${UNAME_RELEASE}
1251357bfbb2Smrg	exit ;;
1252357bfbb2Smrg    NSR-?:NONSTOP_KERNEL:*:*)
1253357bfbb2Smrg	echo nsr-tandem-nsk${UNAME_RELEASE}
1254357bfbb2Smrg	exit ;;
1255357bfbb2Smrg    *:NonStop-UX:*:*)
1256357bfbb2Smrg	echo mips-compaq-nonstopux
1257357bfbb2Smrg	exit ;;
1258357bfbb2Smrg    BS2000:POSIX*:*:*)
1259357bfbb2Smrg	echo bs2000-siemens-sysv
1260357bfbb2Smrg	exit ;;
1261357bfbb2Smrg    DS/*:UNIX_System_V:*:*)
1262357bfbb2Smrg	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
1263357bfbb2Smrg	exit ;;
1264357bfbb2Smrg    *:Plan9:*:*)
1265357bfbb2Smrg	# "uname -m" is not consistent, so use $cputype instead. 386
1266357bfbb2Smrg	# is converted to i386 for consistency with other x86
1267357bfbb2Smrg	# operating systems.
1268357bfbb2Smrg	if test "$cputype" = "386"; then
1269357bfbb2Smrg	    UNAME_MACHINE=i386
1270357bfbb2Smrg	else
1271357bfbb2Smrg	    UNAME_MACHINE="$cputype"
1272357bfbb2Smrg	fi
1273357bfbb2Smrg	echo ${UNAME_MACHINE}-unknown-plan9
1274357bfbb2Smrg	exit ;;
1275357bfbb2Smrg    *:TOPS-10:*:*)
1276357bfbb2Smrg	echo pdp10-unknown-tops10
1277357bfbb2Smrg	exit ;;
1278357bfbb2Smrg    *:TENEX:*:*)
1279357bfbb2Smrg	echo pdp10-unknown-tenex
1280357bfbb2Smrg	exit ;;
1281357bfbb2Smrg    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1282357bfbb2Smrg	echo pdp10-dec-tops20
1283357bfbb2Smrg	exit ;;
1284357bfbb2Smrg    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1285357bfbb2Smrg	echo pdp10-xkl-tops20
1286357bfbb2Smrg	exit ;;
1287357bfbb2Smrg    *:TOPS-20:*:*)
1288357bfbb2Smrg	echo pdp10-unknown-tops20
1289357bfbb2Smrg	exit ;;
1290357bfbb2Smrg    *:ITS:*:*)
1291357bfbb2Smrg	echo pdp10-unknown-its
1292357bfbb2Smrg	exit ;;
1293357bfbb2Smrg    SEI:*:*:SEIUX)
129483e03a40Smrg	echo mips-sei-seiux${UNAME_RELEASE}
1295357bfbb2Smrg	exit ;;
1296357bfbb2Smrg    *:DragonFly:*:*)
1297357bfbb2Smrg	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
1298357bfbb2Smrg	exit ;;
1299357bfbb2Smrg    *:*VMS:*:*)
130083e03a40Smrg	UNAME_MACHINE=`(uname -p) 2>/dev/null`
1301357bfbb2Smrg	case "${UNAME_MACHINE}" in
1302357bfbb2Smrg	    A*) echo alpha-dec-vms ; exit ;;
1303357bfbb2Smrg	    I*) echo ia64-dec-vms ; exit ;;
1304357bfbb2Smrg	    V*) echo vax-dec-vms ; exit ;;
1305357bfbb2Smrg	esac ;;
1306357bfbb2Smrg    *:XENIX:*:SysV)
1307357bfbb2Smrg	echo i386-pc-xenix
1308357bfbb2Smrg	exit ;;
1309357bfbb2Smrg    i*86:skyos:*:*)
1310357bfbb2Smrg	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
1311357bfbb2Smrg	exit ;;
131283e03a40Smrg    i*86:rdos:*:*)
131383e03a40Smrg	echo ${UNAME_MACHINE}-pc-rdos
131483e03a40Smrg	exit ;;
131583e03a40Smrg    i*86:AROS:*:*)
131683e03a40Smrg	echo ${UNAME_MACHINE}-pc-aros
131783e03a40Smrg	exit ;;
1318357bfbb2Smrgesac
1319357bfbb2Smrg
1320357bfbb2Smrg#echo '(No uname command or uname output not recognized.)' 1>&2
1321357bfbb2Smrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
1322357bfbb2Smrg
1323357bfbb2Smrgeval $set_cc_for_build
1324357bfbb2Smrgcat >$dummy.c <<EOF
1325357bfbb2Smrg#ifdef _SEQUENT_
1326357bfbb2Smrg# include <sys/types.h>
1327357bfbb2Smrg# include <sys/utsname.h>
1328357bfbb2Smrg#endif
1329357bfbb2Smrgmain ()
1330357bfbb2Smrg{
1331357bfbb2Smrg#if defined (sony)
1332357bfbb2Smrg#if defined (MIPSEB)
1333357bfbb2Smrg  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
1334357bfbb2Smrg     I don't know....  */
1335357bfbb2Smrg  printf ("mips-sony-bsd\n"); exit (0);
1336357bfbb2Smrg#else
1337357bfbb2Smrg#include <sys/param.h>
1338357bfbb2Smrg  printf ("m68k-sony-newsos%s\n",
1339357bfbb2Smrg#ifdef NEWSOS4
134083e03a40Smrg	"4"
1341357bfbb2Smrg#else
134283e03a40Smrg	""
1343357bfbb2Smrg#endif
134483e03a40Smrg	); exit (0);
1345357bfbb2Smrg#endif
1346357bfbb2Smrg#endif
1347357bfbb2Smrg
1348357bfbb2Smrg#if defined (__arm) && defined (__acorn) && defined (__unix)
1349357bfbb2Smrg  printf ("arm-acorn-riscix\n"); exit (0);
1350357bfbb2Smrg#endif
1351357bfbb2Smrg
1352357bfbb2Smrg#if defined (hp300) && !defined (hpux)
1353357bfbb2Smrg  printf ("m68k-hp-bsd\n"); exit (0);
1354357bfbb2Smrg#endif
1355357bfbb2Smrg
1356357bfbb2Smrg#if defined (NeXT)
1357357bfbb2Smrg#if !defined (__ARCHITECTURE__)
1358357bfbb2Smrg#define __ARCHITECTURE__ "m68k"
1359357bfbb2Smrg#endif
1360357bfbb2Smrg  int version;
1361357bfbb2Smrg  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
1362357bfbb2Smrg  if (version < 4)
1363357bfbb2Smrg    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
1364357bfbb2Smrg  else
1365357bfbb2Smrg    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
1366357bfbb2Smrg  exit (0);
1367357bfbb2Smrg#endif
1368357bfbb2Smrg
1369357bfbb2Smrg#if defined (MULTIMAX) || defined (n16)
1370357bfbb2Smrg#if defined (UMAXV)
1371357bfbb2Smrg  printf ("ns32k-encore-sysv\n"); exit (0);
1372357bfbb2Smrg#else
1373357bfbb2Smrg#if defined (CMU)
1374357bfbb2Smrg  printf ("ns32k-encore-mach\n"); exit (0);
1375357bfbb2Smrg#else
1376357bfbb2Smrg  printf ("ns32k-encore-bsd\n"); exit (0);
1377357bfbb2Smrg#endif
1378357bfbb2Smrg#endif
1379357bfbb2Smrg#endif
1380357bfbb2Smrg
1381357bfbb2Smrg#if defined (__386BSD__)
1382357bfbb2Smrg  printf ("i386-pc-bsd\n"); exit (0);
1383357bfbb2Smrg#endif
1384357bfbb2Smrg
1385357bfbb2Smrg#if defined (sequent)
1386357bfbb2Smrg#if defined (i386)
1387357bfbb2Smrg  printf ("i386-sequent-dynix\n"); exit (0);
1388357bfbb2Smrg#endif
1389357bfbb2Smrg#if defined (ns32000)
1390357bfbb2Smrg  printf ("ns32k-sequent-dynix\n"); exit (0);
1391357bfbb2Smrg#endif
1392357bfbb2Smrg#endif
1393357bfbb2Smrg
1394357bfbb2Smrg#if defined (_SEQUENT_)
1395357bfbb2Smrg    struct utsname un;
1396357bfbb2Smrg
1397357bfbb2Smrg    uname(&un);
1398357bfbb2Smrg
1399357bfbb2Smrg    if (strncmp(un.version, "V2", 2) == 0) {
1400357bfbb2Smrg	printf ("i386-sequent-ptx2\n"); exit (0);
1401357bfbb2Smrg    }
1402357bfbb2Smrg    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
1403357bfbb2Smrg	printf ("i386-sequent-ptx1\n"); exit (0);
1404357bfbb2Smrg    }
1405357bfbb2Smrg    printf ("i386-sequent-ptx\n"); exit (0);
1406357bfbb2Smrg
1407357bfbb2Smrg#endif
1408357bfbb2Smrg
1409357bfbb2Smrg#if defined (vax)
1410357bfbb2Smrg# if !defined (ultrix)
1411357bfbb2Smrg#  include <sys/param.h>
1412357bfbb2Smrg#  if defined (BSD)
1413357bfbb2Smrg#   if BSD == 43
1414357bfbb2Smrg      printf ("vax-dec-bsd4.3\n"); exit (0);
1415357bfbb2Smrg#   else
1416357bfbb2Smrg#    if BSD == 199006
1417357bfbb2Smrg      printf ("vax-dec-bsd4.3reno\n"); exit (0);
1418357bfbb2Smrg#    else
1419357bfbb2Smrg      printf ("vax-dec-bsd\n"); exit (0);
1420357bfbb2Smrg#    endif
1421357bfbb2Smrg#   endif
1422357bfbb2Smrg#  else
1423357bfbb2Smrg    printf ("vax-dec-bsd\n"); exit (0);
1424357bfbb2Smrg#  endif
1425357bfbb2Smrg# else
1426357bfbb2Smrg    printf ("vax-dec-ultrix\n"); exit (0);
1427357bfbb2Smrg# endif
1428357bfbb2Smrg#endif
1429357bfbb2Smrg
1430357bfbb2Smrg#if defined (alliant) && defined (i860)
1431357bfbb2Smrg  printf ("i860-alliant-bsd\n"); exit (0);
1432357bfbb2Smrg#endif
1433357bfbb2Smrg
1434357bfbb2Smrg  exit (1);
1435357bfbb2Smrg}
1436357bfbb2SmrgEOF
1437357bfbb2Smrg
1438357bfbb2Smrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
1439357bfbb2Smrg	{ echo "$SYSTEM_NAME"; exit; }
1440357bfbb2Smrg
1441357bfbb2Smrg# Apollos put the system type in the environment.
1442357bfbb2Smrg
1443357bfbb2Smrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
1444357bfbb2Smrg
1445357bfbb2Smrg# Convex versions that predate uname can use getsysinfo(1)
1446357bfbb2Smrg
1447357bfbb2Smrgif [ -x /usr/convex/getsysinfo ]
1448357bfbb2Smrgthen
1449357bfbb2Smrg    case `getsysinfo -f cpu_type` in
1450357bfbb2Smrg    c1*)
1451357bfbb2Smrg	echo c1-convex-bsd
1452357bfbb2Smrg	exit ;;
1453357bfbb2Smrg    c2*)
1454357bfbb2Smrg	if getsysinfo -f scalar_acc
1455357bfbb2Smrg	then echo c32-convex-bsd
1456357bfbb2Smrg	else echo c2-convex-bsd
1457357bfbb2Smrg	fi
1458357bfbb2Smrg	exit ;;
1459357bfbb2Smrg    c34*)
1460357bfbb2Smrg	echo c34-convex-bsd
1461357bfbb2Smrg	exit ;;
1462357bfbb2Smrg    c38*)
1463357bfbb2Smrg	echo c38-convex-bsd
1464357bfbb2Smrg	exit ;;
1465357bfbb2Smrg    c4*)
1466357bfbb2Smrg	echo c4-convex-bsd
1467357bfbb2Smrg	exit ;;
1468357bfbb2Smrg    esac
1469357bfbb2Smrgfi
1470357bfbb2Smrg
1471357bfbb2Smrgcat >&2 <<EOF
1472357bfbb2Smrg$0: unable to guess system type
1473357bfbb2Smrg
1474357bfbb2SmrgThis script, last modified $timestamp, has failed to recognize
1475357bfbb2Smrgthe operating system you are using. It is advised that you
1476357bfbb2Smrgdownload the most up to date version of the config scripts from
1477357bfbb2Smrg
147883e03a40Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
1479357bfbb2Smrgand
148083e03a40Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
1481357bfbb2Smrg
1482357bfbb2SmrgIf the version you run ($0) is already up to date, please
1483357bfbb2Smrgsend the following data and any information you think might be
1484357bfbb2Smrgpertinent to <config-patches@gnu.org> in order to provide the needed
1485357bfbb2Smrginformation to handle your system.
1486357bfbb2Smrg
1487357bfbb2Smrgconfig.guess timestamp = $timestamp
1488357bfbb2Smrg
1489357bfbb2Smrguname -m = `(uname -m) 2>/dev/null || echo unknown`
1490357bfbb2Smrguname -r = `(uname -r) 2>/dev/null || echo unknown`
1491357bfbb2Smrguname -s = `(uname -s) 2>/dev/null || echo unknown`
1492357bfbb2Smrguname -v = `(uname -v) 2>/dev/null || echo unknown`
1493357bfbb2Smrg
1494357bfbb2Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1495357bfbb2Smrg/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
1496357bfbb2Smrg
1497357bfbb2Smrghostinfo               = `(hostinfo) 2>/dev/null`
1498357bfbb2Smrg/bin/universe          = `(/bin/universe) 2>/dev/null`
1499357bfbb2Smrg/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
1500357bfbb2Smrg/bin/arch              = `(/bin/arch) 2>/dev/null`
1501357bfbb2Smrg/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
1502357bfbb2Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1503357bfbb2Smrg
1504357bfbb2SmrgUNAME_MACHINE = ${UNAME_MACHINE}
1505357bfbb2SmrgUNAME_RELEASE = ${UNAME_RELEASE}
1506357bfbb2SmrgUNAME_SYSTEM  = ${UNAME_SYSTEM}
1507357bfbb2SmrgUNAME_VERSION = ${UNAME_VERSION}
1508357bfbb2SmrgEOF
1509357bfbb2Smrg
1510357bfbb2Smrgexit 1
1511357bfbb2Smrg
1512357bfbb2Smrg# Local variables:
1513357bfbb2Smrg# eval: (add-hook 'write-file-hooks 'time-stamp)
1514357bfbb2Smrg# time-stamp-start: "timestamp='"
1515357bfbb2Smrg# time-stamp-format: "%:y-%02m-%02d"
1516357bfbb2Smrg# time-stamp-end: "'"
1517357bfbb2Smrg# End:
1518