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