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