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