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