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