config.guess revision 2ddb6cf1
1a1d141d5Smrg#! /bin/sh
2a1d141d5Smrg# Attempt to guess a canonical system name.
3a1d141d5Smrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
42ddb6cf1Smrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
52ddb6cf1Smrg#   Free Software Foundation, Inc.
6a1d141d5Smrg
72ddb6cf1Smrgtimestamp='2009-08-19'
8a1d141d5Smrg
9a1d141d5Smrg# This file is free software; you can redistribute it and/or modify it
10a1d141d5Smrg# under the terms of the GNU General Public License as published by
11a1d141d5Smrg# the Free Software Foundation; either version 2 of the License, or
12a1d141d5Smrg# (at your option) any later version.
13a1d141d5Smrg#
14a1d141d5Smrg# This program is distributed in the hope that it will be useful, but
15a1d141d5Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of
16a1d141d5Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17a1d141d5Smrg# General Public License for more details.
18a1d141d5Smrg#
19a1d141d5Smrg# You should have received a copy of the GNU General Public License
20a1d141d5Smrg# along with this program; if not, write to the Free Software
212ddb6cf1Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
222ddb6cf1Smrg# 02110-1301, USA.
23a1d141d5Smrg#
24a1d141d5Smrg# As a special exception to the GNU General Public License, if you
25a1d141d5Smrg# distribute this file as part of a program that contains a
26a1d141d5Smrg# configuration script generated by Autoconf, you may include it under
27a1d141d5Smrg# the same distribution terms that you use for the rest of that program.
28a1d141d5Smrg
292ddb6cf1Smrg
302ddb6cf1Smrg# Originally written by Per Bothner.  Please send patches (context
312ddb6cf1Smrg# diff format) to <config-patches@gnu.org> and include a ChangeLog
322ddb6cf1Smrg# entry.
33a1d141d5Smrg#
34a1d141d5Smrg# This script attempts to guess a canonical system name similar to
35a1d141d5Smrg# config.sub.  If it succeeds, it prints the system name on stdout, and
36a1d141d5Smrg# exits with 0.  Otherwise, it exits with 1.
37a1d141d5Smrg#
382ddb6cf1Smrg# You can get the latest version of this script from:
392ddb6cf1Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
40a1d141d5Smrg
41a1d141d5Smrgme=`echo "$0" | sed -e 's,.*/,,'`
42a1d141d5Smrg
43a1d141d5Smrgusage="\
44a1d141d5SmrgUsage: $0 [OPTION]
45a1d141d5Smrg
46a1d141d5SmrgOutput the configuration name of the system \`$me' is run on.
47a1d141d5Smrg
48a1d141d5SmrgOperation modes:
49a1d141d5Smrg  -h, --help         print this help, then exit
50a1d141d5Smrg  -t, --time-stamp   print date of last modification, then exit
51a1d141d5Smrg  -v, --version      print version number, then exit
52a1d141d5Smrg
53a1d141d5SmrgReport bugs and patches to <config-patches@gnu.org>."
54a1d141d5Smrg
55a1d141d5Smrgversion="\
56a1d141d5SmrgGNU config.guess ($timestamp)
57a1d141d5Smrg
58a1d141d5SmrgOriginally written by Per Bothner.
592ddb6cf1SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
602ddb6cf1Smrg2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
61a1d141d5Smrg
62a1d141d5SmrgThis is free software; see the source for copying conditions.  There is NO
63a1d141d5Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
64a1d141d5Smrg
65a1d141d5Smrghelp="
66a1d141d5SmrgTry \`$me --help' for more information."
67a1d141d5Smrg
68a1d141d5Smrg# Parse command line
69a1d141d5Smrgwhile test $# -gt 0 ; do
70a1d141d5Smrg  case $1 in
71a1d141d5Smrg    --time-stamp | --time* | -t )
722ddb6cf1Smrg       echo "$timestamp" ; exit ;;
73a1d141d5Smrg    --version | -v )
742ddb6cf1Smrg       echo "$version" ; exit ;;
75a1d141d5Smrg    --help | --h* | -h )
762ddb6cf1Smrg       echo "$usage"; exit ;;
77a1d141d5Smrg    -- )     # Stop option processing
78a1d141d5Smrg       shift; break ;;
79a1d141d5Smrg    - )	# Use stdin as input.
80a1d141d5Smrg       break ;;
81a1d141d5Smrg    -* )
82a1d141d5Smrg       echo "$me: invalid option $1$help" >&2
83a1d141d5Smrg       exit 1 ;;
84a1d141d5Smrg    * )
85a1d141d5Smrg       break ;;
86a1d141d5Smrg  esac
87a1d141d5Smrgdone
88a1d141d5Smrg
89a1d141d5Smrgif test $# != 0; then
90a1d141d5Smrg  echo "$me: too many arguments$help" >&2
91a1d141d5Smrg  exit 1
92a1d141d5Smrgfi
93a1d141d5Smrg
94a1d141d5Smrgtrap 'exit 1' 1 2 15
95a1d141d5Smrg
96a1d141d5Smrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
97a1d141d5Smrg# compiler to aid in system detection is discouraged as it requires
98a1d141d5Smrg# temporary files to be created and, as you can see below, it is a
99a1d141d5Smrg# headache to deal with in a portable fashion.
100a1d141d5Smrg
101a1d141d5Smrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
102a1d141d5Smrg# use `HOST_CC' if defined, but it is deprecated.
103a1d141d5Smrg
104a1d141d5Smrg# Portable tmp directory creation inspired by the Autoconf team.
105a1d141d5Smrg
106a1d141d5Smrgset_cc_for_build='
107a1d141d5Smrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
108a1d141d5Smrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
109a1d141d5Smrg: ${TMPDIR=/tmp} ;
1102ddb6cf1Smrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
111a1d141d5Smrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
112a1d141d5Smrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
113a1d141d5Smrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
114a1d141d5Smrgdummy=$tmp/dummy ;
115a1d141d5Smrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
116a1d141d5Smrgcase $CC_FOR_BUILD,$HOST_CC,$CC in
117a1d141d5Smrg ,,)    echo "int x;" > $dummy.c ;
118a1d141d5Smrg	for c in cc gcc c89 c99 ; do
119a1d141d5Smrg	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
120a1d141d5Smrg	     CC_FOR_BUILD="$c"; break ;
121a1d141d5Smrg	  fi ;
122a1d141d5Smrg	done ;
123a1d141d5Smrg	if test x"$CC_FOR_BUILD" = x ; then
124a1d141d5Smrg	  CC_FOR_BUILD=no_compiler_found ;
125a1d141d5Smrg	fi
126a1d141d5Smrg	;;
127a1d141d5Smrg ,,*)   CC_FOR_BUILD=$CC ;;
128a1d141d5Smrg ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
1292ddb6cf1Smrgesac ; set_cc_for_build= ;'
130a1d141d5Smrg
131a1d141d5Smrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
132a1d141d5Smrg# (ghazi@noc.rutgers.edu 1994-08-24)
133a1d141d5Smrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then
134a1d141d5Smrg	PATH=$PATH:/.attbin ; export PATH
135a1d141d5Smrgfi
136a1d141d5Smrg
137a1d141d5SmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
138a1d141d5SmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
139a1d141d5SmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
140a1d141d5SmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
141a1d141d5Smrg
1422ddb6cf1Smrgcase "${UNAME_SYSTEM}" in
1432ddb6cf1SmrgLinux|GNU/*)
1442ddb6cf1Smrg	eval $set_cc_for_build
1452ddb6cf1Smrg	cat << EOF > $dummy.c
1462ddb6cf1Smrg	#include <features.h>
1472ddb6cf1Smrg	#ifdef __UCLIBC__
1482ddb6cf1Smrg	# ifdef __UCLIBC_CONFIG_VERSION__
1492ddb6cf1Smrg	LIBC=uclibc __UCLIBC_CONFIG_VERSION__
1502ddb6cf1Smrg	# else
1512ddb6cf1Smrg	LIBC=uclibc
1522ddb6cf1Smrg	# endif
1532ddb6cf1Smrg	#else
1542ddb6cf1Smrg	LIBC=gnu
1552ddb6cf1Smrg	#endif
1562ddb6cf1SmrgEOF
1572ddb6cf1Smrg	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep LIBC= | sed -e 's: ::g'`
1582ddb6cf1Smrg	;;
1592ddb6cf1Smrgesac
160a1d141d5Smrg
161a1d141d5Smrg# Note: order is significant - the case branches are not exclusive.
162a1d141d5Smrg
163a1d141d5Smrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
164a1d141d5Smrg    *:NetBSD:*:*)
165a1d141d5Smrg	# NetBSD (nbsd) targets should (where applicable) match one or
166a1d141d5Smrg	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
167a1d141d5Smrg	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
168a1d141d5Smrg	# switched to ELF, *-*-netbsd* would select the old
169a1d141d5Smrg	# object file format.  This provides both forward
170a1d141d5Smrg	# compatibility and a consistent mechanism for selecting the
171a1d141d5Smrg	# object file format.
172a1d141d5Smrg	#
173a1d141d5Smrg	# Note: NetBSD doesn't particularly care about the vendor
174a1d141d5Smrg	# portion of the name.  We always set it to "unknown".
175a1d141d5Smrg	sysctl="sysctl -n hw.machine_arch"
176a1d141d5Smrg	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
177a1d141d5Smrg	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
178a1d141d5Smrg	case "${UNAME_MACHINE_ARCH}" in
179a1d141d5Smrg	    armeb) machine=armeb-unknown ;;
180a1d141d5Smrg	    arm*) machine=arm-unknown ;;
181a1d141d5Smrg	    sh3el) machine=shl-unknown ;;
182a1d141d5Smrg	    sh3eb) machine=sh-unknown ;;
1832ddb6cf1Smrg	    sh5el) machine=sh5le-unknown ;;
184a1d141d5Smrg	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
185a1d141d5Smrg	esac
186a1d141d5Smrg	# The Operating System including object format, if it has switched
187a1d141d5Smrg	# to ELF recently, or will in the future.
188a1d141d5Smrg	case "${UNAME_MACHINE_ARCH}" in
189a1d141d5Smrg	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
190a1d141d5Smrg		eval $set_cc_for_build
191a1d141d5Smrg		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
1922ddb6cf1Smrg			| grep -q __ELF__
193a1d141d5Smrg		then
194a1d141d5Smrg		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
195a1d141d5Smrg		    # Return netbsd for either.  FIX?
196a1d141d5Smrg		    os=netbsd
197a1d141d5Smrg		else
198a1d141d5Smrg		    os=netbsdelf
199a1d141d5Smrg		fi
200a1d141d5Smrg		;;
201a1d141d5Smrg	    *)
202a1d141d5Smrg	        os=netbsd
203a1d141d5Smrg		;;
204a1d141d5Smrg	esac
205a1d141d5Smrg	# The OS release
206a1d141d5Smrg	# Debian GNU/NetBSD machines have a different userland, and
207a1d141d5Smrg	# thus, need a distinct triplet. However, they do not need
208a1d141d5Smrg	# kernel version information, so it can be replaced with a
209a1d141d5Smrg	# suitable tag, in the style of linux-gnu.
210a1d141d5Smrg	case "${UNAME_VERSION}" in
211a1d141d5Smrg	    Debian*)
212a1d141d5Smrg		release='-gnu'
213a1d141d5Smrg		;;
214a1d141d5Smrg	    *)
215a1d141d5Smrg		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
216a1d141d5Smrg		;;
217a1d141d5Smrg	esac
218a1d141d5Smrg	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
219a1d141d5Smrg	# contains redundant information, the shorter form:
220a1d141d5Smrg	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
221a1d141d5Smrg	echo "${machine}-${os}${release}"
2222ddb6cf1Smrg	exit ;;
223a1d141d5Smrg    *:OpenBSD:*:*)
2242ddb6cf1Smrg	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
2252ddb6cf1Smrg	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
2262ddb6cf1Smrg	exit ;;
2272ddb6cf1Smrg    *:ekkoBSD:*:*)
2282ddb6cf1Smrg	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
2292ddb6cf1Smrg	exit ;;
2302ddb6cf1Smrg    *:SolidBSD:*:*)
2312ddb6cf1Smrg	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
2322ddb6cf1Smrg	exit ;;
2332ddb6cf1Smrg    macppc:MirBSD:*:*)
2342ddb6cf1Smrg	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
2352ddb6cf1Smrg	exit ;;
2362ddb6cf1Smrg    *:MirBSD:*:*)
2372ddb6cf1Smrg	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
2382ddb6cf1Smrg	exit ;;
239a1d141d5Smrg    alpha:OSF1:*:*)
2402ddb6cf1Smrg	case $UNAME_RELEASE in
2412ddb6cf1Smrg	*4.0)
242a1d141d5Smrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
2432ddb6cf1Smrg		;;
2442ddb6cf1Smrg	*5.*)
2452ddb6cf1Smrg	        UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
2462ddb6cf1Smrg		;;
2472ddb6cf1Smrg	esac
248a1d141d5Smrg	# According to Compaq, /usr/sbin/psrinfo has been available on
249a1d141d5Smrg	# OSF/1 and Tru64 systems produced since 1995.  I hope that
250a1d141d5Smrg	# covers most systems running today.  This code pipes the CPU
251a1d141d5Smrg	# types through head -n 1, so we only detect the type of CPU 0.
252a1d141d5Smrg	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
253a1d141d5Smrg	case "$ALPHA_CPU_TYPE" in
254a1d141d5Smrg	    "EV4 (21064)")
255a1d141d5Smrg		UNAME_MACHINE="alpha" ;;
256a1d141d5Smrg	    "EV4.5 (21064)")
257a1d141d5Smrg		UNAME_MACHINE="alpha" ;;
258a1d141d5Smrg	    "LCA4 (21066/21068)")
259a1d141d5Smrg		UNAME_MACHINE="alpha" ;;
260a1d141d5Smrg	    "EV5 (21164)")
261a1d141d5Smrg		UNAME_MACHINE="alphaev5" ;;
262a1d141d5Smrg	    "EV5.6 (21164A)")
263a1d141d5Smrg		UNAME_MACHINE="alphaev56" ;;
264a1d141d5Smrg	    "EV5.6 (21164PC)")
265a1d141d5Smrg		UNAME_MACHINE="alphapca56" ;;
266a1d141d5Smrg	    "EV5.7 (21164PC)")
267a1d141d5Smrg		UNAME_MACHINE="alphapca57" ;;
268a1d141d5Smrg	    "EV6 (21264)")
269a1d141d5Smrg		UNAME_MACHINE="alphaev6" ;;
270a1d141d5Smrg	    "EV6.7 (21264A)")
271a1d141d5Smrg		UNAME_MACHINE="alphaev67" ;;
272a1d141d5Smrg	    "EV6.8CB (21264C)")
273a1d141d5Smrg		UNAME_MACHINE="alphaev68" ;;
274a1d141d5Smrg	    "EV6.8AL (21264B)")
275a1d141d5Smrg		UNAME_MACHINE="alphaev68" ;;
276a1d141d5Smrg	    "EV6.8CX (21264D)")
277a1d141d5Smrg		UNAME_MACHINE="alphaev68" ;;
278a1d141d5Smrg	    "EV6.9A (21264/EV69A)")
279a1d141d5Smrg		UNAME_MACHINE="alphaev69" ;;
280a1d141d5Smrg	    "EV7 (21364)")
281a1d141d5Smrg		UNAME_MACHINE="alphaev7" ;;
282a1d141d5Smrg	    "EV7.9 (21364A)")
283a1d141d5Smrg		UNAME_MACHINE="alphaev79" ;;
284a1d141d5Smrg	esac
2852ddb6cf1Smrg	# A Pn.n version is a patched version.
286a1d141d5Smrg	# A Vn.n version is a released version.
287a1d141d5Smrg	# A Tn.n version is a released field test version.
288a1d141d5Smrg	# A Xn.n version is an unreleased experimental baselevel.
289a1d141d5Smrg	# 1.2 uses "1.2" for uname -r.
2902ddb6cf1Smrg	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
2912ddb6cf1Smrg	exit ;;
292a1d141d5Smrg    Alpha\ *:Windows_NT*:*)
293a1d141d5Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
294a1d141d5Smrg	# Should we change UNAME_MACHINE based on the output of uname instead
295a1d141d5Smrg	# of the specific Alpha model?
296a1d141d5Smrg	echo alpha-pc-interix
2972ddb6cf1Smrg	exit ;;
298a1d141d5Smrg    21064:Windows_NT:50:3)
299a1d141d5Smrg	echo alpha-dec-winnt3.5
3002ddb6cf1Smrg	exit ;;
301a1d141d5Smrg    Amiga*:UNIX_System_V:4.0:*)
302a1d141d5Smrg	echo m68k-unknown-sysv4
3032ddb6cf1Smrg	exit ;;
304a1d141d5Smrg    *:[Aa]miga[Oo][Ss]:*:*)
305a1d141d5Smrg	echo ${UNAME_MACHINE}-unknown-amigaos
3062ddb6cf1Smrg	exit ;;
307a1d141d5Smrg    *:[Mm]orph[Oo][Ss]:*:*)
308a1d141d5Smrg	echo ${UNAME_MACHINE}-unknown-morphos
3092ddb6cf1Smrg	exit ;;
310a1d141d5Smrg    *:OS/390:*:*)
311a1d141d5Smrg	echo i370-ibm-openedition
3122ddb6cf1Smrg	exit ;;
3132ddb6cf1Smrg    *:z/VM:*:*)
3142ddb6cf1Smrg	echo s390-ibm-zvmoe
3152ddb6cf1Smrg	exit ;;
3162ddb6cf1Smrg    *:OS400:*:*)
3172ddb6cf1Smrg        echo powerpc-ibm-os400
3182ddb6cf1Smrg	exit ;;
319a1d141d5Smrg    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
320a1d141d5Smrg	echo arm-acorn-riscix${UNAME_RELEASE}
3212ddb6cf1Smrg	exit ;;
3222ddb6cf1Smrg    arm:riscos:*:*|arm:RISCOS:*:*)
3232ddb6cf1Smrg	echo arm-unknown-riscos
3242ddb6cf1Smrg	exit ;;
325a1d141d5Smrg    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
326a1d141d5Smrg	echo hppa1.1-hitachi-hiuxmpp
3272ddb6cf1Smrg	exit ;;
328a1d141d5Smrg    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
329a1d141d5Smrg	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
330a1d141d5Smrg	if test "`(/bin/universe) 2>/dev/null`" = att ; then
331a1d141d5Smrg		echo pyramid-pyramid-sysv3
332a1d141d5Smrg	else
333a1d141d5Smrg		echo pyramid-pyramid-bsd
334a1d141d5Smrg	fi
3352ddb6cf1Smrg	exit ;;
336a1d141d5Smrg    NILE*:*:*:dcosx)
337a1d141d5Smrg	echo pyramid-pyramid-svr4
3382ddb6cf1Smrg	exit ;;
339a1d141d5Smrg    DRS?6000:unix:4.0:6*)
340a1d141d5Smrg	echo sparc-icl-nx6
3412ddb6cf1Smrg	exit ;;
3422ddb6cf1Smrg    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
343a1d141d5Smrg	case `/usr/bin/uname -p` in
3442ddb6cf1Smrg	    sparc) echo sparc-icl-nx7; exit ;;
345a1d141d5Smrg	esac ;;
3462ddb6cf1Smrg    s390x:SunOS:*:*)
3472ddb6cf1Smrg	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3482ddb6cf1Smrg	exit ;;
349a1d141d5Smrg    sun4H:SunOS:5.*:*)
350a1d141d5Smrg	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3512ddb6cf1Smrg	exit ;;
352a1d141d5Smrg    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
353a1d141d5Smrg	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3542ddb6cf1Smrg	exit ;;
3552ddb6cf1Smrg    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
3562ddb6cf1Smrg	eval $set_cc_for_build
3572ddb6cf1Smrg	SUN_ARCH="i386"
3582ddb6cf1Smrg	# If there is a compiler, see if it is configured for 64-bit objects.
3592ddb6cf1Smrg	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
3602ddb6cf1Smrg	# This test works for both compilers.
3612ddb6cf1Smrg	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
3622ddb6cf1Smrg	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
3632ddb6cf1Smrg		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
3642ddb6cf1Smrg		grep IS_64BIT_ARCH >/dev/null
3652ddb6cf1Smrg	    then
3662ddb6cf1Smrg		SUN_ARCH="x86_64"
3672ddb6cf1Smrg	    fi
3682ddb6cf1Smrg	fi
3692ddb6cf1Smrg	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3702ddb6cf1Smrg	exit ;;
371a1d141d5Smrg    sun4*:SunOS:6*:*)
372a1d141d5Smrg	# According to config.sub, this is the proper way to canonicalize
373a1d141d5Smrg	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
374a1d141d5Smrg	# it's likely to be more like Solaris than SunOS4.
375a1d141d5Smrg	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3762ddb6cf1Smrg	exit ;;
377a1d141d5Smrg    sun4*:SunOS:*:*)
378a1d141d5Smrg	case "`/usr/bin/arch -k`" in
379a1d141d5Smrg	    Series*|S4*)
380a1d141d5Smrg		UNAME_RELEASE=`uname -v`
381a1d141d5Smrg		;;
382a1d141d5Smrg	esac
383a1d141d5Smrg	# Japanese Language versions have a version number like `4.1.3-JL'.
384a1d141d5Smrg	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
3852ddb6cf1Smrg	exit ;;
386a1d141d5Smrg    sun3*:SunOS:*:*)
387a1d141d5Smrg	echo m68k-sun-sunos${UNAME_RELEASE}
3882ddb6cf1Smrg	exit ;;
389a1d141d5Smrg    sun*:*:4.2BSD:*)
390a1d141d5Smrg	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
391a1d141d5Smrg	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
392a1d141d5Smrg	case "`/bin/arch`" in
393a1d141d5Smrg	    sun3)
394a1d141d5Smrg		echo m68k-sun-sunos${UNAME_RELEASE}
395a1d141d5Smrg		;;
396a1d141d5Smrg	    sun4)
397a1d141d5Smrg		echo sparc-sun-sunos${UNAME_RELEASE}
398a1d141d5Smrg		;;
399a1d141d5Smrg	esac
4002ddb6cf1Smrg	exit ;;
401a1d141d5Smrg    aushp:SunOS:*:*)
402a1d141d5Smrg	echo sparc-auspex-sunos${UNAME_RELEASE}
4032ddb6cf1Smrg	exit ;;
404a1d141d5Smrg    # The situation for MiNT is a little confusing.  The machine name
405a1d141d5Smrg    # can be virtually everything (everything which is not
406a1d141d5Smrg    # "atarist" or "atariste" at least should have a processor
407a1d141d5Smrg    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
408a1d141d5Smrg    # to the lowercase version "mint" (or "freemint").  Finally
409a1d141d5Smrg    # the system name "TOS" denotes a system which is actually not
410a1d141d5Smrg    # MiNT.  But MiNT is downward compatible to TOS, so this should
411a1d141d5Smrg    # be no problem.
412a1d141d5Smrg    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
413a1d141d5Smrg        echo m68k-atari-mint${UNAME_RELEASE}
4142ddb6cf1Smrg	exit ;;
415a1d141d5Smrg    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
416a1d141d5Smrg	echo m68k-atari-mint${UNAME_RELEASE}
4172ddb6cf1Smrg        exit ;;
418a1d141d5Smrg    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
419a1d141d5Smrg        echo m68k-atari-mint${UNAME_RELEASE}
4202ddb6cf1Smrg	exit ;;
421a1d141d5Smrg    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
422a1d141d5Smrg        echo m68k-milan-mint${UNAME_RELEASE}
4232ddb6cf1Smrg        exit ;;
424a1d141d5Smrg    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
425a1d141d5Smrg        echo m68k-hades-mint${UNAME_RELEASE}
4262ddb6cf1Smrg        exit ;;
427a1d141d5Smrg    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
428a1d141d5Smrg        echo m68k-unknown-mint${UNAME_RELEASE}
4292ddb6cf1Smrg        exit ;;
4302ddb6cf1Smrg    m68k:machten:*:*)
4312ddb6cf1Smrg	echo m68k-apple-machten${UNAME_RELEASE}
4322ddb6cf1Smrg	exit ;;
433a1d141d5Smrg    powerpc:machten:*:*)
434a1d141d5Smrg	echo powerpc-apple-machten${UNAME_RELEASE}
4352ddb6cf1Smrg	exit ;;
436a1d141d5Smrg    RISC*:Mach:*:*)
437a1d141d5Smrg	echo mips-dec-mach_bsd4.3
4382ddb6cf1Smrg	exit ;;
439a1d141d5Smrg    RISC*:ULTRIX:*:*)
440a1d141d5Smrg	echo mips-dec-ultrix${UNAME_RELEASE}
4412ddb6cf1Smrg	exit ;;
442a1d141d5Smrg    VAX*:ULTRIX*:*:*)
443a1d141d5Smrg	echo vax-dec-ultrix${UNAME_RELEASE}
4442ddb6cf1Smrg	exit ;;
445a1d141d5Smrg    2020:CLIX:*:* | 2430:CLIX:*:*)
446a1d141d5Smrg	echo clipper-intergraph-clix${UNAME_RELEASE}
4472ddb6cf1Smrg	exit ;;
448a1d141d5Smrg    mips:*:*:UMIPS | mips:*:*:RISCos)
449a1d141d5Smrg	eval $set_cc_for_build
450a1d141d5Smrg	sed 's/^	//' << EOF >$dummy.c
451a1d141d5Smrg#ifdef __cplusplus
452a1d141d5Smrg#include <stdio.h>  /* for printf() prototype */
453a1d141d5Smrg	int main (int argc, char *argv[]) {
454a1d141d5Smrg#else
455a1d141d5Smrg	int main (argc, argv) int argc; char *argv[]; {
456a1d141d5Smrg#endif
457a1d141d5Smrg	#if defined (host_mips) && defined (MIPSEB)
458a1d141d5Smrg	#if defined (SYSTYPE_SYSV)
459a1d141d5Smrg	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
460a1d141d5Smrg	#endif
461a1d141d5Smrg	#if defined (SYSTYPE_SVR4)
462a1d141d5Smrg	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
463a1d141d5Smrg	#endif
464a1d141d5Smrg	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
465a1d141d5Smrg	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
466a1d141d5Smrg	#endif
467a1d141d5Smrg	#endif
468a1d141d5Smrg	  exit (-1);
469a1d141d5Smrg	}
470a1d141d5SmrgEOF
4712ddb6cf1Smrg	$CC_FOR_BUILD -o $dummy $dummy.c &&
4722ddb6cf1Smrg	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
4732ddb6cf1Smrg	  SYSTEM_NAME=`$dummy $dummyarg` &&
4742ddb6cf1Smrg	    { echo "$SYSTEM_NAME"; exit; }
475a1d141d5Smrg	echo mips-mips-riscos${UNAME_RELEASE}
4762ddb6cf1Smrg	exit ;;
477a1d141d5Smrg    Motorola:PowerMAX_OS:*:*)
478a1d141d5Smrg	echo powerpc-motorola-powermax
4792ddb6cf1Smrg	exit ;;
480a1d141d5Smrg    Motorola:*:4.3:PL8-*)
481a1d141d5Smrg	echo powerpc-harris-powermax
4822ddb6cf1Smrg	exit ;;
483a1d141d5Smrg    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
484a1d141d5Smrg	echo powerpc-harris-powermax
4852ddb6cf1Smrg	exit ;;
486a1d141d5Smrg    Night_Hawk:Power_UNIX:*:*)
487a1d141d5Smrg	echo powerpc-harris-powerunix
4882ddb6cf1Smrg	exit ;;
489a1d141d5Smrg    m88k:CX/UX:7*:*)
490a1d141d5Smrg	echo m88k-harris-cxux7
4912ddb6cf1Smrg	exit ;;
492a1d141d5Smrg    m88k:*:4*:R4*)
493a1d141d5Smrg	echo m88k-motorola-sysv4
4942ddb6cf1Smrg	exit ;;
495a1d141d5Smrg    m88k:*:3*:R3*)
496a1d141d5Smrg	echo m88k-motorola-sysv3
4972ddb6cf1Smrg	exit ;;
498a1d141d5Smrg    AViiON:dgux:*:*)
499a1d141d5Smrg        # DG/UX returns AViiON for all architectures
500a1d141d5Smrg        UNAME_PROCESSOR=`/usr/bin/uname -p`
501a1d141d5Smrg	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
502a1d141d5Smrg	then
503a1d141d5Smrg	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
504a1d141d5Smrg	       [ ${TARGET_BINARY_INTERFACE}x = x ]
505a1d141d5Smrg	    then
506a1d141d5Smrg		echo m88k-dg-dgux${UNAME_RELEASE}
507a1d141d5Smrg	    else
508a1d141d5Smrg		echo m88k-dg-dguxbcs${UNAME_RELEASE}
509a1d141d5Smrg	    fi
510a1d141d5Smrg	else
511a1d141d5Smrg	    echo i586-dg-dgux${UNAME_RELEASE}
512a1d141d5Smrg	fi
5132ddb6cf1Smrg 	exit ;;
514a1d141d5Smrg    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
515a1d141d5Smrg	echo m88k-dolphin-sysv3
5162ddb6cf1Smrg	exit ;;
517a1d141d5Smrg    M88*:*:R3*:*)
518a1d141d5Smrg	# Delta 88k system running SVR3
519a1d141d5Smrg	echo m88k-motorola-sysv3
5202ddb6cf1Smrg	exit ;;
521a1d141d5Smrg    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
522a1d141d5Smrg	echo m88k-tektronix-sysv3
5232ddb6cf1Smrg	exit ;;
524a1d141d5Smrg    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
525a1d141d5Smrg	echo m68k-tektronix-bsd
5262ddb6cf1Smrg	exit ;;
527a1d141d5Smrg    *:IRIX*:*:*)
528a1d141d5Smrg	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
5292ddb6cf1Smrg	exit ;;
530a1d141d5Smrg    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
5312ddb6cf1Smrg	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
5322ddb6cf1Smrg	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
533a1d141d5Smrg    i*86:AIX:*:*)
534a1d141d5Smrg	echo i386-ibm-aix
5352ddb6cf1Smrg	exit ;;
536a1d141d5Smrg    ia64:AIX:*:*)
537a1d141d5Smrg	if [ -x /usr/bin/oslevel ] ; then
538a1d141d5Smrg		IBM_REV=`/usr/bin/oslevel`
539a1d141d5Smrg	else
540a1d141d5Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
541a1d141d5Smrg	fi
542a1d141d5Smrg	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
5432ddb6cf1Smrg	exit ;;
544a1d141d5Smrg    *:AIX:2:3)
545a1d141d5Smrg	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
546a1d141d5Smrg		eval $set_cc_for_build
547a1d141d5Smrg		sed 's/^		//' << EOF >$dummy.c
548a1d141d5Smrg		#include <sys/systemcfg.h>
549a1d141d5Smrg
550a1d141d5Smrg		main()
551a1d141d5Smrg			{
552a1d141d5Smrg			if (!__power_pc())
553a1d141d5Smrg				exit(1);
554a1d141d5Smrg			puts("powerpc-ibm-aix3.2.5");
555a1d141d5Smrg			exit(0);
556a1d141d5Smrg			}
557a1d141d5SmrgEOF
5582ddb6cf1Smrg		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
5592ddb6cf1Smrg		then
5602ddb6cf1Smrg			echo "$SYSTEM_NAME"
5612ddb6cf1Smrg		else
5622ddb6cf1Smrg			echo rs6000-ibm-aix3.2.5
5632ddb6cf1Smrg		fi
564a1d141d5Smrg	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
565a1d141d5Smrg		echo rs6000-ibm-aix3.2.4
566a1d141d5Smrg	else
567a1d141d5Smrg		echo rs6000-ibm-aix3.2
568a1d141d5Smrg	fi
5692ddb6cf1Smrg	exit ;;
5702ddb6cf1Smrg    *:AIX:*:[456])
571a1d141d5Smrg	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
572a1d141d5Smrg	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
573a1d141d5Smrg		IBM_ARCH=rs6000
574a1d141d5Smrg	else
575a1d141d5Smrg		IBM_ARCH=powerpc
576a1d141d5Smrg	fi
577a1d141d5Smrg	if [ -x /usr/bin/oslevel ] ; then
578a1d141d5Smrg		IBM_REV=`/usr/bin/oslevel`
579a1d141d5Smrg	else
580a1d141d5Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
581a1d141d5Smrg	fi
582a1d141d5Smrg	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
5832ddb6cf1Smrg	exit ;;
584a1d141d5Smrg    *:AIX:*:*)
585a1d141d5Smrg	echo rs6000-ibm-aix
5862ddb6cf1Smrg	exit ;;
587a1d141d5Smrg    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
588a1d141d5Smrg	echo romp-ibm-bsd4.4
5892ddb6cf1Smrg	exit ;;
590a1d141d5Smrg    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
591a1d141d5Smrg	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
5922ddb6cf1Smrg	exit ;;                             # report: romp-ibm BSD 4.3
593a1d141d5Smrg    *:BOSX:*:*)
594a1d141d5Smrg	echo rs6000-bull-bosx
5952ddb6cf1Smrg	exit ;;
596a1d141d5Smrg    DPX/2?00:B.O.S.:*:*)
597a1d141d5Smrg	echo m68k-bull-sysv3
5982ddb6cf1Smrg	exit ;;
599a1d141d5Smrg    9000/[34]??:4.3bsd:1.*:*)
600a1d141d5Smrg	echo m68k-hp-bsd
6012ddb6cf1Smrg	exit ;;
602a1d141d5Smrg    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
603a1d141d5Smrg	echo m68k-hp-bsd4.4
6042ddb6cf1Smrg	exit ;;
605a1d141d5Smrg    9000/[34678]??:HP-UX:*:*)
606a1d141d5Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
607a1d141d5Smrg	case "${UNAME_MACHINE}" in
608a1d141d5Smrg	    9000/31? )            HP_ARCH=m68000 ;;
609a1d141d5Smrg	    9000/[34]?? )         HP_ARCH=m68k ;;
610a1d141d5Smrg	    9000/[678][0-9][0-9])
611a1d141d5Smrg		if [ -x /usr/bin/getconf ]; then
612a1d141d5Smrg		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
613a1d141d5Smrg                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
614a1d141d5Smrg                    case "${sc_cpu_version}" in
615a1d141d5Smrg                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
616a1d141d5Smrg                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
617a1d141d5Smrg                      532)                      # CPU_PA_RISC2_0
618a1d141d5Smrg                        case "${sc_kernel_bits}" in
619a1d141d5Smrg                          32) HP_ARCH="hppa2.0n" ;;
620a1d141d5Smrg                          64) HP_ARCH="hppa2.0w" ;;
621a1d141d5Smrg			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
622a1d141d5Smrg                        esac ;;
623a1d141d5Smrg                    esac
624a1d141d5Smrg		fi
625a1d141d5Smrg		if [ "${HP_ARCH}" = "" ]; then
626a1d141d5Smrg		    eval $set_cc_for_build
627a1d141d5Smrg		    sed 's/^              //' << EOF >$dummy.c
628a1d141d5Smrg
629a1d141d5Smrg              #define _HPUX_SOURCE
630a1d141d5Smrg              #include <stdlib.h>
631a1d141d5Smrg              #include <unistd.h>
632a1d141d5Smrg
633a1d141d5Smrg              int main ()
634a1d141d5Smrg              {
635a1d141d5Smrg              #if defined(_SC_KERNEL_BITS)
636a1d141d5Smrg                  long bits = sysconf(_SC_KERNEL_BITS);
637a1d141d5Smrg              #endif
638a1d141d5Smrg                  long cpu  = sysconf (_SC_CPU_VERSION);
639a1d141d5Smrg
640a1d141d5Smrg                  switch (cpu)
641a1d141d5Smrg              	{
642a1d141d5Smrg              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
643a1d141d5Smrg              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
644a1d141d5Smrg              	case CPU_PA_RISC2_0:
645a1d141d5Smrg              #if defined(_SC_KERNEL_BITS)
646a1d141d5Smrg              	    switch (bits)
647a1d141d5Smrg              		{
648a1d141d5Smrg              		case 64: puts ("hppa2.0w"); break;
649a1d141d5Smrg              		case 32: puts ("hppa2.0n"); break;
650a1d141d5Smrg              		default: puts ("hppa2.0"); break;
651a1d141d5Smrg              		} break;
652a1d141d5Smrg              #else  /* !defined(_SC_KERNEL_BITS) */
653a1d141d5Smrg              	    puts ("hppa2.0"); break;
654a1d141d5Smrg              #endif
655a1d141d5Smrg              	default: puts ("hppa1.0"); break;
656a1d141d5Smrg              	}
657a1d141d5Smrg                  exit (0);
658a1d141d5Smrg              }
659a1d141d5SmrgEOF
660a1d141d5Smrg		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
661a1d141d5Smrg		    test -z "$HP_ARCH" && HP_ARCH=hppa
662a1d141d5Smrg		fi ;;
663a1d141d5Smrg	esac
664a1d141d5Smrg	if [ ${HP_ARCH} = "hppa2.0w" ]
665a1d141d5Smrg	then
6662ddb6cf1Smrg	    eval $set_cc_for_build
6672ddb6cf1Smrg
6682ddb6cf1Smrg	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
6692ddb6cf1Smrg	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
6702ddb6cf1Smrg	    # generating 64-bit code.  GNU and HP use different nomenclature:
6712ddb6cf1Smrg	    #
6722ddb6cf1Smrg	    # $ CC_FOR_BUILD=cc ./config.guess
6732ddb6cf1Smrg	    # => hppa2.0w-hp-hpux11.23
6742ddb6cf1Smrg	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
6752ddb6cf1Smrg	    # => hppa64-hp-hpux11.23
6762ddb6cf1Smrg
6772ddb6cf1Smrg	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
6782ddb6cf1Smrg		grep -q __LP64__
679a1d141d5Smrg	    then
680a1d141d5Smrg		HP_ARCH="hppa2.0w"
681a1d141d5Smrg	    else
682a1d141d5Smrg		HP_ARCH="hppa64"
683a1d141d5Smrg	    fi
684a1d141d5Smrg	fi
685a1d141d5Smrg	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
6862ddb6cf1Smrg	exit ;;
687a1d141d5Smrg    ia64:HP-UX:*:*)
688a1d141d5Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
689a1d141d5Smrg	echo ia64-hp-hpux${HPUX_REV}
6902ddb6cf1Smrg	exit ;;
691a1d141d5Smrg    3050*:HI-UX:*:*)
692a1d141d5Smrg	eval $set_cc_for_build
693a1d141d5Smrg	sed 's/^	//' << EOF >$dummy.c
694a1d141d5Smrg	#include <unistd.h>
695a1d141d5Smrg	int
696a1d141d5Smrg	main ()
697a1d141d5Smrg	{
698a1d141d5Smrg	  long cpu = sysconf (_SC_CPU_VERSION);
699a1d141d5Smrg	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
700a1d141d5Smrg	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
701a1d141d5Smrg	     results, however.  */
702a1d141d5Smrg	  if (CPU_IS_PA_RISC (cpu))
703a1d141d5Smrg	    {
704a1d141d5Smrg	      switch (cpu)
705a1d141d5Smrg		{
706a1d141d5Smrg		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
707a1d141d5Smrg		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
708a1d141d5Smrg		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
709a1d141d5Smrg		  default: puts ("hppa-hitachi-hiuxwe2"); break;
710a1d141d5Smrg		}
711a1d141d5Smrg	    }
712a1d141d5Smrg	  else if (CPU_IS_HP_MC68K (cpu))
713a1d141d5Smrg	    puts ("m68k-hitachi-hiuxwe2");
714a1d141d5Smrg	  else puts ("unknown-hitachi-hiuxwe2");
715a1d141d5Smrg	  exit (0);
716a1d141d5Smrg	}
717a1d141d5SmrgEOF
7182ddb6cf1Smrg	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
7192ddb6cf1Smrg		{ echo "$SYSTEM_NAME"; exit; }
720a1d141d5Smrg	echo unknown-hitachi-hiuxwe2
7212ddb6cf1Smrg	exit ;;
722a1d141d5Smrg    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
723a1d141d5Smrg	echo hppa1.1-hp-bsd
7242ddb6cf1Smrg	exit ;;
725a1d141d5Smrg    9000/8??:4.3bsd:*:*)
726a1d141d5Smrg	echo hppa1.0-hp-bsd
7272ddb6cf1Smrg	exit ;;
728a1d141d5Smrg    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
729a1d141d5Smrg	echo hppa1.0-hp-mpeix
7302ddb6cf1Smrg	exit ;;
731a1d141d5Smrg    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
732a1d141d5Smrg	echo hppa1.1-hp-osf
7332ddb6cf1Smrg	exit ;;
734a1d141d5Smrg    hp8??:OSF1:*:*)
735a1d141d5Smrg	echo hppa1.0-hp-osf
7362ddb6cf1Smrg	exit ;;
737a1d141d5Smrg    i*86:OSF1:*:*)
738a1d141d5Smrg	if [ -x /usr/sbin/sysversion ] ; then
739a1d141d5Smrg	    echo ${UNAME_MACHINE}-unknown-osf1mk
740a1d141d5Smrg	else
741a1d141d5Smrg	    echo ${UNAME_MACHINE}-unknown-osf1
742a1d141d5Smrg	fi
7432ddb6cf1Smrg	exit ;;
744a1d141d5Smrg    parisc*:Lites*:*:*)
745a1d141d5Smrg	echo hppa1.1-hp-lites
7462ddb6cf1Smrg	exit ;;
747a1d141d5Smrg    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
748a1d141d5Smrg	echo c1-convex-bsd
7492ddb6cf1Smrg        exit ;;
750a1d141d5Smrg    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
751a1d141d5Smrg	if getsysinfo -f scalar_acc
752a1d141d5Smrg	then echo c32-convex-bsd
753a1d141d5Smrg	else echo c2-convex-bsd
754a1d141d5Smrg	fi
7552ddb6cf1Smrg        exit ;;
756a1d141d5Smrg    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
757a1d141d5Smrg	echo c34-convex-bsd
7582ddb6cf1Smrg        exit ;;
759a1d141d5Smrg    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
760a1d141d5Smrg	echo c38-convex-bsd
7612ddb6cf1Smrg        exit ;;
762a1d141d5Smrg    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
763a1d141d5Smrg	echo c4-convex-bsd
7642ddb6cf1Smrg        exit ;;
765a1d141d5Smrg    CRAY*Y-MP:*:*:*)
766a1d141d5Smrg	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7672ddb6cf1Smrg	exit ;;
768a1d141d5Smrg    CRAY*[A-Z]90:*:*:*)
769a1d141d5Smrg	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
770a1d141d5Smrg	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
771a1d141d5Smrg	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
772a1d141d5Smrg	      -e 's/\.[^.]*$/.X/'
7732ddb6cf1Smrg	exit ;;
774a1d141d5Smrg    CRAY*TS:*:*:*)
775a1d141d5Smrg	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7762ddb6cf1Smrg	exit ;;
777a1d141d5Smrg    CRAY*T3E:*:*:*)
778a1d141d5Smrg	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7792ddb6cf1Smrg	exit ;;
780a1d141d5Smrg    CRAY*SV1:*:*:*)
781a1d141d5Smrg	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7822ddb6cf1Smrg	exit ;;
783a1d141d5Smrg    *:UNICOS/mp:*:*)
7842ddb6cf1Smrg	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7852ddb6cf1Smrg	exit ;;
786a1d141d5Smrg    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
787a1d141d5Smrg	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
788a1d141d5Smrg        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
789a1d141d5Smrg        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
790a1d141d5Smrg        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
7912ddb6cf1Smrg        exit ;;
7922ddb6cf1Smrg    5000:UNIX_System_V:4.*:*)
7932ddb6cf1Smrg        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
7942ddb6cf1Smrg        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
7952ddb6cf1Smrg        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
7962ddb6cf1Smrg	exit ;;
797a1d141d5Smrg    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
798a1d141d5Smrg	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
7992ddb6cf1Smrg	exit ;;
800a1d141d5Smrg    sparc*:BSD/OS:*:*)
801a1d141d5Smrg	echo sparc-unknown-bsdi${UNAME_RELEASE}
8022ddb6cf1Smrg	exit ;;
803a1d141d5Smrg    *:BSD/OS:*:*)
804a1d141d5Smrg	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
8052ddb6cf1Smrg	exit ;;
8062ddb6cf1Smrg    *:FreeBSD:*:*)
8072ddb6cf1Smrg	case ${UNAME_MACHINE} in
8082ddb6cf1Smrg	    pc98)
8092ddb6cf1Smrg		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
8102ddb6cf1Smrg	    amd64)
8112ddb6cf1Smrg		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
8122ddb6cf1Smrg	    *)
8132ddb6cf1Smrg		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
8142ddb6cf1Smrg	esac
8152ddb6cf1Smrg	exit ;;
816a1d141d5Smrg    i*:CYGWIN*:*)
817a1d141d5Smrg	echo ${UNAME_MACHINE}-pc-cygwin
8182ddb6cf1Smrg	exit ;;
8192ddb6cf1Smrg    *:MINGW*:*)
820a1d141d5Smrg	echo ${UNAME_MACHINE}-pc-mingw32
8212ddb6cf1Smrg	exit ;;
8222ddb6cf1Smrg    i*:windows32*:*)
8232ddb6cf1Smrg    	# uname -m includes "-pc" on this system.
8242ddb6cf1Smrg    	echo ${UNAME_MACHINE}-mingw32
8252ddb6cf1Smrg	exit ;;
826a1d141d5Smrg    i*:PW*:*)
827a1d141d5Smrg	echo ${UNAME_MACHINE}-pc-pw32
8282ddb6cf1Smrg	exit ;;
8292ddb6cf1Smrg    *:Interix*:[3456]*)
8302ddb6cf1Smrg    	case ${UNAME_MACHINE} in
8312ddb6cf1Smrg	    x86)
8322ddb6cf1Smrg		echo i586-pc-interix${UNAME_RELEASE}
8332ddb6cf1Smrg		exit ;;
8342ddb6cf1Smrg	    EM64T | authenticamd | genuineintel)
8352ddb6cf1Smrg		echo x86_64-unknown-interix${UNAME_RELEASE}
8362ddb6cf1Smrg		exit ;;
8372ddb6cf1Smrg	    IA64)
8382ddb6cf1Smrg		echo ia64-unknown-interix${UNAME_RELEASE}
8392ddb6cf1Smrg		exit ;;
8402ddb6cf1Smrg	esac ;;
841a1d141d5Smrg    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
842a1d141d5Smrg	echo i${UNAME_MACHINE}-pc-mks
8432ddb6cf1Smrg	exit ;;
8442ddb6cf1Smrg    8664:Windows_NT:*)
8452ddb6cf1Smrg	echo x86_64-pc-mks
8462ddb6cf1Smrg	exit ;;
847a1d141d5Smrg    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
848a1d141d5Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
849a1d141d5Smrg	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
850a1d141d5Smrg	# UNAME_MACHINE based on the output of uname instead of i386?
851a1d141d5Smrg	echo i586-pc-interix
8522ddb6cf1Smrg	exit ;;
853a1d141d5Smrg    i*:UWIN*:*)
854a1d141d5Smrg	echo ${UNAME_MACHINE}-pc-uwin
8552ddb6cf1Smrg	exit ;;
8562ddb6cf1Smrg    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
8572ddb6cf1Smrg	echo x86_64-unknown-cygwin
8582ddb6cf1Smrg	exit ;;
859a1d141d5Smrg    p*:CYGWIN*:*)
860a1d141d5Smrg	echo powerpcle-unknown-cygwin
8612ddb6cf1Smrg	exit ;;
862a1d141d5Smrg    prep*:SunOS:5.*:*)
863a1d141d5Smrg	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
8642ddb6cf1Smrg	exit ;;
865a1d141d5Smrg    *:GNU:*:*)
8662ddb6cf1Smrg	# the GNU system
867a1d141d5Smrg	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
8682ddb6cf1Smrg	exit ;;
8692ddb6cf1Smrg    *:GNU/*:*:*)
8702ddb6cf1Smrg	# other systems with GNU libc and userland
8712ddb6cf1Smrg	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
8722ddb6cf1Smrg	exit ;;
873a1d141d5Smrg    i*86:Minix:*:*)
874a1d141d5Smrg	echo ${UNAME_MACHINE}-pc-minix
8752ddb6cf1Smrg	exit ;;
876a1d141d5Smrg    arm*:Linux:*:*)
8772ddb6cf1Smrg	eval $set_cc_for_build
8782ddb6cf1Smrg	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
8792ddb6cf1Smrg	    | grep -q __ARM_EABI__
8802ddb6cf1Smrg	then
8812ddb6cf1Smrg	    echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
8822ddb6cf1Smrg	else
8832ddb6cf1Smrg	    echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
8842ddb6cf1Smrg	fi
8852ddb6cf1Smrg	exit ;;
8862ddb6cf1Smrg    avr32*:Linux:*:*)
8872ddb6cf1Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
8882ddb6cf1Smrg	exit ;;
889a1d141d5Smrg    cris:Linux:*:*)
8902ddb6cf1Smrg	echo cris-axis-linux-${LIBC}
8912ddb6cf1Smrg	exit ;;
8922ddb6cf1Smrg    crisv32:Linux:*:*)
8932ddb6cf1Smrg	echo crisv32-axis-linux-${LIBC}
8942ddb6cf1Smrg	exit ;;
8952ddb6cf1Smrg    frv:Linux:*:*)
8962ddb6cf1Smrg    	echo frv-unknown-linux-${LIBC}
8972ddb6cf1Smrg	exit ;;
898a1d141d5Smrg    ia64:Linux:*:*)
8992ddb6cf1Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
9002ddb6cf1Smrg	exit ;;
9012ddb6cf1Smrg    m32r*:Linux:*:*)
9022ddb6cf1Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
9032ddb6cf1Smrg	exit ;;
904a1d141d5Smrg    m68*:Linux:*:*)
9052ddb6cf1Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
9062ddb6cf1Smrg	exit ;;
9072ddb6cf1Smrg    mips:Linux:*:* | mips64:Linux:*:*)
908a1d141d5Smrg	eval $set_cc_for_build
909a1d141d5Smrg	sed 's/^	//' << EOF >$dummy.c
910a1d141d5Smrg	#undef CPU
9112ddb6cf1Smrg	#undef ${UNAME_MACHINE}
9122ddb6cf1Smrg	#undef ${UNAME_MACHINE}el
913a1d141d5Smrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
9142ddb6cf1Smrg	CPU=${UNAME_MACHINE}el
915a1d141d5Smrg	#else
916a1d141d5Smrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
9172ddb6cf1Smrg	CPU=${UNAME_MACHINE}
918a1d141d5Smrg	#else
919a1d141d5Smrg	CPU=
920a1d141d5Smrg	#endif
921a1d141d5Smrg	#endif
922a1d141d5SmrgEOF
9232ddb6cf1Smrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
9242ddb6cf1Smrg	    /^CPU/{
9252ddb6cf1Smrg		s: ::g
9262ddb6cf1Smrg		p
9272ddb6cf1Smrg	    }'`"
9282ddb6cf1Smrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
929a1d141d5Smrg	;;
9302ddb6cf1Smrg    or32:Linux:*:*)
9312ddb6cf1Smrg	echo or32-unknown-linux-${LIBC}
9322ddb6cf1Smrg	exit ;;
933a1d141d5Smrg    ppc:Linux:*:*)
9342ddb6cf1Smrg	echo powerpc-unknown-linux-${LIBC}
9352ddb6cf1Smrg	exit ;;
936a1d141d5Smrg    ppc64:Linux:*:*)
9372ddb6cf1Smrg	echo powerpc64-unknown-linux-${LIBC}
9382ddb6cf1Smrg	exit ;;
939a1d141d5Smrg    alpha:Linux:*:*)
940a1d141d5Smrg	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
941a1d141d5Smrg	  EV5)   UNAME_MACHINE=alphaev5 ;;
942a1d141d5Smrg	  EV56)  UNAME_MACHINE=alphaev56 ;;
943a1d141d5Smrg	  PCA56) UNAME_MACHINE=alphapca56 ;;
944a1d141d5Smrg	  PCA57) UNAME_MACHINE=alphapca56 ;;
945a1d141d5Smrg	  EV6)   UNAME_MACHINE=alphaev6 ;;
946a1d141d5Smrg	  EV67)  UNAME_MACHINE=alphaev67 ;;
947a1d141d5Smrg	  EV68*) UNAME_MACHINE=alphaev68 ;;
948a1d141d5Smrg        esac
9492ddb6cf1Smrg	objdump --private-headers /bin/sh | grep -q ld.so.1
9502ddb6cf1Smrg	if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
9512ddb6cf1Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
9522ddb6cf1Smrg	exit ;;
9532ddb6cf1Smrg    padre:Linux:*:*)
9542ddb6cf1Smrg	echo sparc-unknown-linux-${LIBC}
9552ddb6cf1Smrg	exit ;;
956a1d141d5Smrg    parisc:Linux:*:* | hppa:Linux:*:*)
957a1d141d5Smrg	# Look for CPU level
958a1d141d5Smrg	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
9592ddb6cf1Smrg	  PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
9602ddb6cf1Smrg	  PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
9612ddb6cf1Smrg	  *)    echo hppa-unknown-linux-${LIBC} ;;
962a1d141d5Smrg	esac
9632ddb6cf1Smrg	exit ;;
964a1d141d5Smrg    parisc64:Linux:*:* | hppa64:Linux:*:*)
9652ddb6cf1Smrg	echo hppa64-unknown-linux-${LIBC}
9662ddb6cf1Smrg	exit ;;
967a1d141d5Smrg    s390:Linux:*:* | s390x:Linux:*:*)
9682ddb6cf1Smrg	echo ${UNAME_MACHINE}-ibm-linux
9692ddb6cf1Smrg	exit ;;
970a1d141d5Smrg    sh64*:Linux:*:*)
9712ddb6cf1Smrg    	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
9722ddb6cf1Smrg	exit ;;
973a1d141d5Smrg    sh*:Linux:*:*)
9742ddb6cf1Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
9752ddb6cf1Smrg	exit ;;
976a1d141d5Smrg    sparc:Linux:*:* | sparc64:Linux:*:*)
9772ddb6cf1Smrg	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
9782ddb6cf1Smrg	exit ;;
9792ddb6cf1Smrg    vax:Linux:*:*)
9802ddb6cf1Smrg	echo ${UNAME_MACHINE}-dec-linux-${LIBC}
9812ddb6cf1Smrg	exit ;;
982a1d141d5Smrg    x86_64:Linux:*:*)
9832ddb6cf1Smrg	echo x86_64-unknown-linux-${LIBC}
9842ddb6cf1Smrg	exit ;;
9852ddb6cf1Smrg    xtensa*:Linux:*:*)
9862ddb6cf1Smrg    	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
9872ddb6cf1Smrg	exit ;;
988a1d141d5Smrg    i*86:Linux:*:*)
989a1d141d5Smrg	# The BFD linker knows what the default object file format is, so
990a1d141d5Smrg	# first see if it will tell us. cd to the root directory to prevent
991a1d141d5Smrg	# problems with other programs or directories called `ld' in the path.
992a1d141d5Smrg	# Set LC_ALL=C to ensure ld outputs messages in English.
993a1d141d5Smrg	ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
994a1d141d5Smrg			 | sed -ne '/supported targets:/!d
995a1d141d5Smrg				    s/[ 	][ 	]*/ /g
996a1d141d5Smrg				    s/.*supported targets: *//
997a1d141d5Smrg				    s/ .*//
998a1d141d5Smrg				    p'`
999a1d141d5Smrg        case "$ld_supported_targets" in
1000a1d141d5Smrg	  elf32-i386)
10012ddb6cf1Smrg		TENTATIVE="${UNAME_MACHINE}-pc-linux-${LIBC}"
1002a1d141d5Smrg		;;
1003a1d141d5Smrg	esac
10042ddb6cf1Smrg	# This should get integrated into the C code below, but now we hack
10052ddb6cf1Smrg	if [ "$LIBC" != "gnu" ] ; then echo "$TENTATIVE" && exit 0 ; fi
1006a1d141d5Smrg	# Determine whether the default compiler is a.out or elf
1007a1d141d5Smrg	eval $set_cc_for_build
1008a1d141d5Smrg	sed 's/^	//' << EOF >$dummy.c
1009a1d141d5Smrg	#include <features.h>
1010a1d141d5Smrg	#ifdef __ELF__
1011a1d141d5Smrg	# ifdef __GLIBC__
1012a1d141d5Smrg	#  if __GLIBC__ >= 2
1013a1d141d5Smrg	LIBC=gnu
1014a1d141d5Smrg	#  else
1015a1d141d5Smrg	LIBC=gnulibc1
1016a1d141d5Smrg	#  endif
1017a1d141d5Smrg	# else
1018a1d141d5Smrg	LIBC=gnulibc1
1019a1d141d5Smrg	# endif
1020a1d141d5Smrg	#else
10212ddb6cf1Smrg	#if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
1022a1d141d5Smrg	LIBC=gnu
1023a1d141d5Smrg	#else
1024a1d141d5Smrg	LIBC=gnuaout
1025a1d141d5Smrg	#endif
1026a1d141d5Smrg	#endif
10272ddb6cf1Smrg	#ifdef __dietlibc__
10282ddb6cf1Smrg	LIBC=dietlibc
10292ddb6cf1Smrg	#endif
1030a1d141d5SmrgEOF
10312ddb6cf1Smrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
10322ddb6cf1Smrg	    /^LIBC/{
10332ddb6cf1Smrg		s: ::g
10342ddb6cf1Smrg		p
10352ddb6cf1Smrg	    }'`"
10362ddb6cf1Smrg	test x"${LIBC}" != x && {
10372ddb6cf1Smrg		echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
10382ddb6cf1Smrg		exit
10392ddb6cf1Smrg	}
10402ddb6cf1Smrg	test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
1041a1d141d5Smrg	;;
1042a1d141d5Smrg    i*86:DYNIX/ptx:4*:*)
1043a1d141d5Smrg	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
1044a1d141d5Smrg	# earlier versions are messed up and put the nodename in both
1045a1d141d5Smrg	# sysname and nodename.
1046a1d141d5Smrg	echo i386-sequent-sysv4
10472ddb6cf1Smrg	exit ;;
1048a1d141d5Smrg    i*86:UNIX_SV:4.2MP:2.*)
1049a1d141d5Smrg        # Unixware is an offshoot of SVR4, but it has its own version
1050a1d141d5Smrg        # number series starting with 2...
1051a1d141d5Smrg        # I am not positive that other SVR4 systems won't match this,
1052a1d141d5Smrg	# I just have to hope.  -- rms.
1053a1d141d5Smrg        # Use sysv4.2uw... so that sysv4* matches it.
1054a1d141d5Smrg	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
10552ddb6cf1Smrg	exit ;;
1056a1d141d5Smrg    i*86:OS/2:*:*)
1057a1d141d5Smrg	# If we were able to find `uname', then EMX Unix compatibility
1058a1d141d5Smrg	# is probably installed.
1059a1d141d5Smrg	echo ${UNAME_MACHINE}-pc-os2-emx
10602ddb6cf1Smrg	exit ;;
1061a1d141d5Smrg    i*86:XTS-300:*:STOP)
1062a1d141d5Smrg	echo ${UNAME_MACHINE}-unknown-stop
10632ddb6cf1Smrg	exit ;;
1064a1d141d5Smrg    i*86:atheos:*:*)
1065a1d141d5Smrg	echo ${UNAME_MACHINE}-unknown-atheos
10662ddb6cf1Smrg	exit ;;
10672ddb6cf1Smrg    i*86:syllable:*:*)
10682ddb6cf1Smrg	echo ${UNAME_MACHINE}-pc-syllable
10692ddb6cf1Smrg	exit ;;
10702ddb6cf1Smrg    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
1071a1d141d5Smrg	echo i386-unknown-lynxos${UNAME_RELEASE}
10722ddb6cf1Smrg	exit ;;
1073a1d141d5Smrg    i*86:*DOS:*:*)
1074a1d141d5Smrg	echo ${UNAME_MACHINE}-pc-msdosdjgpp
10752ddb6cf1Smrg	exit ;;
1076a1d141d5Smrg    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
1077a1d141d5Smrg	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
1078a1d141d5Smrg	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1079a1d141d5Smrg		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
1080a1d141d5Smrg	else
1081a1d141d5Smrg		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
1082a1d141d5Smrg	fi
10832ddb6cf1Smrg	exit ;;
10842ddb6cf1Smrg    i*86:*:5:[678]*)
10852ddb6cf1Smrg    	# UnixWare 7.x, OpenUNIX and OpenServer 6.
1086a1d141d5Smrg	case `/bin/uname -X | grep "^Machine"` in
1087a1d141d5Smrg	    *486*)	     UNAME_MACHINE=i486 ;;
1088a1d141d5Smrg	    *Pentium)	     UNAME_MACHINE=i586 ;;
1089a1d141d5Smrg	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1090a1d141d5Smrg	esac
1091a1d141d5Smrg	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
10922ddb6cf1Smrg	exit ;;
1093a1d141d5Smrg    i*86:*:3.2:*)
1094a1d141d5Smrg	if test -f /usr/options/cb.name; then
1095a1d141d5Smrg		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1096a1d141d5Smrg		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1097a1d141d5Smrg	elif /bin/uname -X 2>/dev/null >/dev/null ; then
1098a1d141d5Smrg		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1099a1d141d5Smrg		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1100a1d141d5Smrg		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1101a1d141d5Smrg			&& UNAME_MACHINE=i586
1102a1d141d5Smrg		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1103a1d141d5Smrg			&& UNAME_MACHINE=i686
1104a1d141d5Smrg		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1105a1d141d5Smrg			&& UNAME_MACHINE=i686
1106a1d141d5Smrg		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1107a1d141d5Smrg	else
1108a1d141d5Smrg		echo ${UNAME_MACHINE}-pc-sysv32
1109a1d141d5Smrg	fi
11102ddb6cf1Smrg	exit ;;
1111a1d141d5Smrg    pc:*:*:*)
1112a1d141d5Smrg	# Left here for compatibility:
1113a1d141d5Smrg        # uname -m prints for DJGPP always 'pc', but it prints nothing about
11142ddb6cf1Smrg        # the processor, so we play safe by assuming i586.
11152ddb6cf1Smrg	# Note: whatever this is, it MUST be the same as what config.sub
11162ddb6cf1Smrg	# prints for the "djgpp" host, or else GDB configury will decide that
11172ddb6cf1Smrg	# this is a cross-build.
11182ddb6cf1Smrg	echo i586-pc-msdosdjgpp
11192ddb6cf1Smrg        exit ;;
1120a1d141d5Smrg    Intel:Mach:3*:*)
1121a1d141d5Smrg	echo i386-pc-mach3
11222ddb6cf1Smrg	exit ;;
1123a1d141d5Smrg    paragon:*:*:*)
1124a1d141d5Smrg	echo i860-intel-osf1
11252ddb6cf1Smrg	exit ;;
1126a1d141d5Smrg    i860:*:4.*:*) # i860-SVR4
1127a1d141d5Smrg	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1128a1d141d5Smrg	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
1129a1d141d5Smrg	else # Add other i860-SVR4 vendors below as they are discovered.
1130a1d141d5Smrg	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
1131a1d141d5Smrg	fi
11322ddb6cf1Smrg	exit ;;
1133a1d141d5Smrg    mini*:CTIX:SYS*5:*)
1134a1d141d5Smrg	# "miniframe"
1135a1d141d5Smrg	echo m68010-convergent-sysv
11362ddb6cf1Smrg	exit ;;
1137a1d141d5Smrg    mc68k:UNIX:SYSTEM5:3.51m)
1138a1d141d5Smrg	echo m68k-convergent-sysv
11392ddb6cf1Smrg	exit ;;
1140a1d141d5Smrg    M680?0:D-NIX:5.3:*)
1141a1d141d5Smrg	echo m68k-diab-dnix
11422ddb6cf1Smrg	exit ;;
11432ddb6cf1Smrg    M68*:*:R3V[5678]*:*)
11442ddb6cf1Smrg	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
11452ddb6cf1Smrg    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)
1146a1d141d5Smrg	OS_REL=''
1147a1d141d5Smrg	test -r /etc/.relid \
1148a1d141d5Smrg	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1149a1d141d5Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
11502ddb6cf1Smrg	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1151a1d141d5Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
11522ddb6cf1Smrg	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1153a1d141d5Smrg    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1154a1d141d5Smrg        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
11552ddb6cf1Smrg          && { echo i486-ncr-sysv4; exit; } ;;
11562ddb6cf1Smrg    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
11572ddb6cf1Smrg	OS_REL='.3'
11582ddb6cf1Smrg	test -r /etc/.relid \
11592ddb6cf1Smrg	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
11602ddb6cf1Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
11612ddb6cf1Smrg	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
11622ddb6cf1Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
11632ddb6cf1Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
11642ddb6cf1Smrg	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
11652ddb6cf1Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1166a1d141d5Smrg    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1167a1d141d5Smrg	echo m68k-unknown-lynxos${UNAME_RELEASE}
11682ddb6cf1Smrg	exit ;;
1169a1d141d5Smrg    mc68030:UNIX_System_V:4.*:*)
1170a1d141d5Smrg	echo m68k-atari-sysv4
11712ddb6cf1Smrg	exit ;;
1172a1d141d5Smrg    TSUNAMI:LynxOS:2.*:*)
1173a1d141d5Smrg	echo sparc-unknown-lynxos${UNAME_RELEASE}
11742ddb6cf1Smrg	exit ;;
1175a1d141d5Smrg    rs6000:LynxOS:2.*:*)
1176a1d141d5Smrg	echo rs6000-unknown-lynxos${UNAME_RELEASE}
11772ddb6cf1Smrg	exit ;;
11782ddb6cf1Smrg    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
1179a1d141d5Smrg	echo powerpc-unknown-lynxos${UNAME_RELEASE}
11802ddb6cf1Smrg	exit ;;
1181a1d141d5Smrg    SM[BE]S:UNIX_SV:*:*)
1182a1d141d5Smrg	echo mips-dde-sysv${UNAME_RELEASE}
11832ddb6cf1Smrg	exit ;;
1184a1d141d5Smrg    RM*:ReliantUNIX-*:*:*)
1185a1d141d5Smrg	echo mips-sni-sysv4
11862ddb6cf1Smrg	exit ;;
1187a1d141d5Smrg    RM*:SINIX-*:*:*)
1188a1d141d5Smrg	echo mips-sni-sysv4
11892ddb6cf1Smrg	exit ;;
1190a1d141d5Smrg    *:SINIX-*:*:*)
1191a1d141d5Smrg	if uname -p 2>/dev/null >/dev/null ; then
1192a1d141d5Smrg		UNAME_MACHINE=`(uname -p) 2>/dev/null`
1193a1d141d5Smrg		echo ${UNAME_MACHINE}-sni-sysv4
1194a1d141d5Smrg	else
1195a1d141d5Smrg		echo ns32k-sni-sysv
1196a1d141d5Smrg	fi
11972ddb6cf1Smrg	exit ;;
1198a1d141d5Smrg    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1199a1d141d5Smrg                      # says <Richard.M.Bartel@ccMail.Census.GOV>
1200a1d141d5Smrg        echo i586-unisys-sysv4
12012ddb6cf1Smrg        exit ;;
1202a1d141d5Smrg    *:UNIX_System_V:4*:FTX*)
1203a1d141d5Smrg	# From Gerald Hewes <hewes@openmarket.com>.
1204a1d141d5Smrg	# How about differentiating between stratus architectures? -djm
1205a1d141d5Smrg	echo hppa1.1-stratus-sysv4
12062ddb6cf1Smrg	exit ;;
1207a1d141d5Smrg    *:*:*:FTX*)
1208a1d141d5Smrg	# From seanf@swdc.stratus.com.
1209a1d141d5Smrg	echo i860-stratus-sysv4
12102ddb6cf1Smrg	exit ;;
12112ddb6cf1Smrg    i*86:VOS:*:*)
12122ddb6cf1Smrg	# From Paul.Green@stratus.com.
12132ddb6cf1Smrg	echo ${UNAME_MACHINE}-stratus-vos
12142ddb6cf1Smrg	exit ;;
1215a1d141d5Smrg    *:VOS:*:*)
1216a1d141d5Smrg	# From Paul.Green@stratus.com.
1217a1d141d5Smrg	echo hppa1.1-stratus-vos
12182ddb6cf1Smrg	exit ;;
1219a1d141d5Smrg    mc68*:A/UX:*:*)
1220a1d141d5Smrg	echo m68k-apple-aux${UNAME_RELEASE}
12212ddb6cf1Smrg	exit ;;
1222a1d141d5Smrg    news*:NEWS-OS:6*:*)
1223a1d141d5Smrg	echo mips-sony-newsos6
12242ddb6cf1Smrg	exit ;;
1225a1d141d5Smrg    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1226a1d141d5Smrg	if [ -d /usr/nec ]; then
1227a1d141d5Smrg	        echo mips-nec-sysv${UNAME_RELEASE}
1228a1d141d5Smrg	else
1229a1d141d5Smrg	        echo mips-unknown-sysv${UNAME_RELEASE}
1230a1d141d5Smrg	fi
12312ddb6cf1Smrg        exit ;;
1232a1d141d5Smrg    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
1233a1d141d5Smrg	echo powerpc-be-beos
12342ddb6cf1Smrg	exit ;;
1235a1d141d5Smrg    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
1236a1d141d5Smrg	echo powerpc-apple-beos
12372ddb6cf1Smrg	exit ;;
1238a1d141d5Smrg    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
1239a1d141d5Smrg	echo i586-pc-beos
12402ddb6cf1Smrg	exit ;;
12412ddb6cf1Smrg    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
12422ddb6cf1Smrg	echo i586-pc-haiku
12432ddb6cf1Smrg	exit ;;
1244a1d141d5Smrg    SX-4:SUPER-UX:*:*)
1245a1d141d5Smrg	echo sx4-nec-superux${UNAME_RELEASE}
12462ddb6cf1Smrg	exit ;;
1247a1d141d5Smrg    SX-5:SUPER-UX:*:*)
1248a1d141d5Smrg	echo sx5-nec-superux${UNAME_RELEASE}
12492ddb6cf1Smrg	exit ;;
1250a1d141d5Smrg    SX-6:SUPER-UX:*:*)
1251a1d141d5Smrg	echo sx6-nec-superux${UNAME_RELEASE}
12522ddb6cf1Smrg	exit ;;
12532ddb6cf1Smrg    SX-7:SUPER-UX:*:*)
12542ddb6cf1Smrg	echo sx7-nec-superux${UNAME_RELEASE}
12552ddb6cf1Smrg	exit ;;
12562ddb6cf1Smrg    SX-8:SUPER-UX:*:*)
12572ddb6cf1Smrg	echo sx8-nec-superux${UNAME_RELEASE}
12582ddb6cf1Smrg	exit ;;
12592ddb6cf1Smrg    SX-8R:SUPER-UX:*:*)
12602ddb6cf1Smrg	echo sx8r-nec-superux${UNAME_RELEASE}
12612ddb6cf1Smrg	exit ;;
1262a1d141d5Smrg    Power*:Rhapsody:*:*)
1263a1d141d5Smrg	echo powerpc-apple-rhapsody${UNAME_RELEASE}
12642ddb6cf1Smrg	exit ;;
1265a1d141d5Smrg    *:Rhapsody:*:*)
1266a1d141d5Smrg	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
12672ddb6cf1Smrg	exit ;;
1268a1d141d5Smrg    *:Darwin:*:*)
12692ddb6cf1Smrg	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
12702ddb6cf1Smrg	case $UNAME_PROCESSOR in
12712ddb6cf1Smrg	    unknown) UNAME_PROCESSOR=powerpc ;;
1272a1d141d5Smrg	esac
1273a1d141d5Smrg	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
12742ddb6cf1Smrg	exit ;;
1275a1d141d5Smrg    *:procnto*:*:* | *:QNX:[0123456789]*:*)
1276a1d141d5Smrg	UNAME_PROCESSOR=`uname -p`
1277a1d141d5Smrg	if test "$UNAME_PROCESSOR" = "x86"; then
1278a1d141d5Smrg		UNAME_PROCESSOR=i386
1279a1d141d5Smrg		UNAME_MACHINE=pc
1280a1d141d5Smrg	fi
1281a1d141d5Smrg	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
12822ddb6cf1Smrg	exit ;;
1283a1d141d5Smrg    *:QNX:*:4*)
1284a1d141d5Smrg	echo i386-pc-qnx
12852ddb6cf1Smrg	exit ;;
12862ddb6cf1Smrg    NSE-?:NONSTOP_KERNEL:*:*)
12872ddb6cf1Smrg	echo nse-tandem-nsk${UNAME_RELEASE}
12882ddb6cf1Smrg	exit ;;
12892ddb6cf1Smrg    NSR-?:NONSTOP_KERNEL:*:*)
1290a1d141d5Smrg	echo nsr-tandem-nsk${UNAME_RELEASE}
12912ddb6cf1Smrg	exit ;;
1292a1d141d5Smrg    *:NonStop-UX:*:*)
1293a1d141d5Smrg	echo mips-compaq-nonstopux
12942ddb6cf1Smrg	exit ;;
1295a1d141d5Smrg    BS2000:POSIX*:*:*)
1296a1d141d5Smrg	echo bs2000-siemens-sysv
12972ddb6cf1Smrg	exit ;;
1298a1d141d5Smrg    DS/*:UNIX_System_V:*:*)
1299a1d141d5Smrg	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
13002ddb6cf1Smrg	exit ;;
1301a1d141d5Smrg    *:Plan9:*:*)
1302a1d141d5Smrg	# "uname -m" is not consistent, so use $cputype instead. 386
1303a1d141d5Smrg	# is converted to i386 for consistency with other x86
1304a1d141d5Smrg	# operating systems.
1305a1d141d5Smrg	if test "$cputype" = "386"; then
1306a1d141d5Smrg	    UNAME_MACHINE=i386
1307a1d141d5Smrg	else
1308a1d141d5Smrg	    UNAME_MACHINE="$cputype"
1309a1d141d5Smrg	fi
1310a1d141d5Smrg	echo ${UNAME_MACHINE}-unknown-plan9
13112ddb6cf1Smrg	exit ;;
1312a1d141d5Smrg    *:TOPS-10:*:*)
1313a1d141d5Smrg	echo pdp10-unknown-tops10
13142ddb6cf1Smrg	exit ;;
1315a1d141d5Smrg    *:TENEX:*:*)
1316a1d141d5Smrg	echo pdp10-unknown-tenex
13172ddb6cf1Smrg	exit ;;
1318a1d141d5Smrg    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1319a1d141d5Smrg	echo pdp10-dec-tops20
13202ddb6cf1Smrg	exit ;;
1321a1d141d5Smrg    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1322a1d141d5Smrg	echo pdp10-xkl-tops20
13232ddb6cf1Smrg	exit ;;
1324a1d141d5Smrg    *:TOPS-20:*:*)
1325a1d141d5Smrg	echo pdp10-unknown-tops20
13262ddb6cf1Smrg	exit ;;
1327a1d141d5Smrg    *:ITS:*:*)
1328a1d141d5Smrg	echo pdp10-unknown-its
13292ddb6cf1Smrg	exit ;;
1330a1d141d5Smrg    SEI:*:*:SEIUX)
1331a1d141d5Smrg        echo mips-sei-seiux${UNAME_RELEASE}
13322ddb6cf1Smrg	exit ;;
13332ddb6cf1Smrg    *:DragonFly:*:*)
13342ddb6cf1Smrg	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
13352ddb6cf1Smrg	exit ;;
13362ddb6cf1Smrg    *:*VMS:*:*)
13372ddb6cf1Smrg    	UNAME_MACHINE=`(uname -p) 2>/dev/null`
13382ddb6cf1Smrg	case "${UNAME_MACHINE}" in
13392ddb6cf1Smrg	    A*) echo alpha-dec-vms ; exit ;;
13402ddb6cf1Smrg	    I*) echo ia64-dec-vms ; exit ;;
13412ddb6cf1Smrg	    V*) echo vax-dec-vms ; exit ;;
13422ddb6cf1Smrg	esac ;;
13432ddb6cf1Smrg    *:XENIX:*:SysV)
13442ddb6cf1Smrg	echo i386-pc-xenix
13452ddb6cf1Smrg	exit ;;
13462ddb6cf1Smrg    i*86:skyos:*:*)
13472ddb6cf1Smrg	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
13482ddb6cf1Smrg	exit ;;
13492ddb6cf1Smrg    i*86:rdos:*:*)
13502ddb6cf1Smrg	echo ${UNAME_MACHINE}-pc-rdos
13512ddb6cf1Smrg	exit ;;
13522ddb6cf1Smrg    i*86:AROS:*:*)
13532ddb6cf1Smrg	echo ${UNAME_MACHINE}-pc-aros
13542ddb6cf1Smrg	exit ;;
1355a1d141d5Smrgesac
1356a1d141d5Smrg
1357a1d141d5Smrg#echo '(No uname command or uname output not recognized.)' 1>&2
1358a1d141d5Smrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
1359a1d141d5Smrg
1360a1d141d5Smrgeval $set_cc_for_build
1361a1d141d5Smrgcat >$dummy.c <<EOF
1362a1d141d5Smrg#ifdef _SEQUENT_
1363a1d141d5Smrg# include <sys/types.h>
1364a1d141d5Smrg# include <sys/utsname.h>
1365a1d141d5Smrg#endif
1366a1d141d5Smrgmain ()
1367a1d141d5Smrg{
1368a1d141d5Smrg#if defined (sony)
1369a1d141d5Smrg#if defined (MIPSEB)
1370a1d141d5Smrg  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
1371a1d141d5Smrg     I don't know....  */
1372a1d141d5Smrg  printf ("mips-sony-bsd\n"); exit (0);
1373a1d141d5Smrg#else
1374a1d141d5Smrg#include <sys/param.h>
1375a1d141d5Smrg  printf ("m68k-sony-newsos%s\n",
1376a1d141d5Smrg#ifdef NEWSOS4
1377a1d141d5Smrg          "4"
1378a1d141d5Smrg#else
1379a1d141d5Smrg	  ""
1380a1d141d5Smrg#endif
1381a1d141d5Smrg         ); exit (0);
1382a1d141d5Smrg#endif
1383a1d141d5Smrg#endif
1384a1d141d5Smrg
1385a1d141d5Smrg#if defined (__arm) && defined (__acorn) && defined (__unix)
13862ddb6cf1Smrg  printf ("arm-acorn-riscix\n"); exit (0);
1387a1d141d5Smrg#endif
1388a1d141d5Smrg
1389a1d141d5Smrg#if defined (hp300) && !defined (hpux)
1390a1d141d5Smrg  printf ("m68k-hp-bsd\n"); exit (0);
1391a1d141d5Smrg#endif
1392a1d141d5Smrg
1393a1d141d5Smrg#if defined (NeXT)
1394a1d141d5Smrg#if !defined (__ARCHITECTURE__)
1395a1d141d5Smrg#define __ARCHITECTURE__ "m68k"
1396a1d141d5Smrg#endif
1397a1d141d5Smrg  int version;
1398a1d141d5Smrg  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
1399a1d141d5Smrg  if (version < 4)
1400a1d141d5Smrg    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
1401a1d141d5Smrg  else
1402a1d141d5Smrg    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
1403a1d141d5Smrg  exit (0);
1404a1d141d5Smrg#endif
1405a1d141d5Smrg
1406a1d141d5Smrg#if defined (MULTIMAX) || defined (n16)
1407a1d141d5Smrg#if defined (UMAXV)
1408a1d141d5Smrg  printf ("ns32k-encore-sysv\n"); exit (0);
1409a1d141d5Smrg#else
1410a1d141d5Smrg#if defined (CMU)
1411a1d141d5Smrg  printf ("ns32k-encore-mach\n"); exit (0);
1412a1d141d5Smrg#else
1413a1d141d5Smrg  printf ("ns32k-encore-bsd\n"); exit (0);
1414a1d141d5Smrg#endif
1415a1d141d5Smrg#endif
1416a1d141d5Smrg#endif
1417a1d141d5Smrg
1418a1d141d5Smrg#if defined (__386BSD__)
1419a1d141d5Smrg  printf ("i386-pc-bsd\n"); exit (0);
1420a1d141d5Smrg#endif
1421a1d141d5Smrg
1422a1d141d5Smrg#if defined (sequent)
1423a1d141d5Smrg#if defined (i386)
1424a1d141d5Smrg  printf ("i386-sequent-dynix\n"); exit (0);
1425a1d141d5Smrg#endif
1426a1d141d5Smrg#if defined (ns32000)
1427a1d141d5Smrg  printf ("ns32k-sequent-dynix\n"); exit (0);
1428a1d141d5Smrg#endif
1429a1d141d5Smrg#endif
1430a1d141d5Smrg
1431a1d141d5Smrg#if defined (_SEQUENT_)
1432a1d141d5Smrg    struct utsname un;
1433a1d141d5Smrg
1434a1d141d5Smrg    uname(&un);
1435a1d141d5Smrg
1436a1d141d5Smrg    if (strncmp(un.version, "V2", 2) == 0) {
1437a1d141d5Smrg	printf ("i386-sequent-ptx2\n"); exit (0);
1438a1d141d5Smrg    }
1439a1d141d5Smrg    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
1440a1d141d5Smrg	printf ("i386-sequent-ptx1\n"); exit (0);
1441a1d141d5Smrg    }
1442a1d141d5Smrg    printf ("i386-sequent-ptx\n"); exit (0);
1443a1d141d5Smrg
1444a1d141d5Smrg#endif
1445a1d141d5Smrg
1446a1d141d5Smrg#if defined (vax)
1447a1d141d5Smrg# if !defined (ultrix)
1448a1d141d5Smrg#  include <sys/param.h>
1449a1d141d5Smrg#  if defined (BSD)
1450a1d141d5Smrg#   if BSD == 43
1451a1d141d5Smrg      printf ("vax-dec-bsd4.3\n"); exit (0);
1452a1d141d5Smrg#   else
1453a1d141d5Smrg#    if BSD == 199006
1454a1d141d5Smrg      printf ("vax-dec-bsd4.3reno\n"); exit (0);
1455a1d141d5Smrg#    else
1456a1d141d5Smrg      printf ("vax-dec-bsd\n"); exit (0);
1457a1d141d5Smrg#    endif
1458a1d141d5Smrg#   endif
1459a1d141d5Smrg#  else
1460a1d141d5Smrg    printf ("vax-dec-bsd\n"); exit (0);
1461a1d141d5Smrg#  endif
1462a1d141d5Smrg# else
1463a1d141d5Smrg    printf ("vax-dec-ultrix\n"); exit (0);
1464a1d141d5Smrg# endif
1465a1d141d5Smrg#endif
1466a1d141d5Smrg
1467a1d141d5Smrg#if defined (alliant) && defined (i860)
1468a1d141d5Smrg  printf ("i860-alliant-bsd\n"); exit (0);
1469a1d141d5Smrg#endif
1470a1d141d5Smrg
1471a1d141d5Smrg  exit (1);
1472a1d141d5Smrg}
1473a1d141d5SmrgEOF
1474a1d141d5Smrg
14752ddb6cf1Smrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
14762ddb6cf1Smrg	{ echo "$SYSTEM_NAME"; exit; }
1477a1d141d5Smrg
1478a1d141d5Smrg# Apollos put the system type in the environment.
1479a1d141d5Smrg
14802ddb6cf1Smrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
1481a1d141d5Smrg
1482a1d141d5Smrg# Convex versions that predate uname can use getsysinfo(1)
1483a1d141d5Smrg
1484a1d141d5Smrgif [ -x /usr/convex/getsysinfo ]
1485a1d141d5Smrgthen
1486a1d141d5Smrg    case `getsysinfo -f cpu_type` in
1487a1d141d5Smrg    c1*)
1488a1d141d5Smrg	echo c1-convex-bsd
14892ddb6cf1Smrg	exit ;;
1490a1d141d5Smrg    c2*)
1491a1d141d5Smrg	if getsysinfo -f scalar_acc
1492a1d141d5Smrg	then echo c32-convex-bsd
1493a1d141d5Smrg	else echo c2-convex-bsd
1494a1d141d5Smrg	fi
14952ddb6cf1Smrg	exit ;;
1496a1d141d5Smrg    c34*)
1497a1d141d5Smrg	echo c34-convex-bsd
14982ddb6cf1Smrg	exit ;;
1499a1d141d5Smrg    c38*)
1500a1d141d5Smrg	echo c38-convex-bsd
15012ddb6cf1Smrg	exit ;;
1502a1d141d5Smrg    c4*)
1503a1d141d5Smrg	echo c4-convex-bsd
15042ddb6cf1Smrg	exit ;;
1505a1d141d5Smrg    esac
1506a1d141d5Smrgfi
1507a1d141d5Smrg
1508a1d141d5Smrgcat >&2 <<EOF
1509a1d141d5Smrg$0: unable to guess system type
1510a1d141d5Smrg
1511a1d141d5SmrgThis script, last modified $timestamp, has failed to recognize
1512a1d141d5Smrgthe operating system you are using. It is advised that you
1513a1d141d5Smrgdownload the most up to date version of the config scripts from
1514a1d141d5Smrg
15152ddb6cf1Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
15162ddb6cf1Smrgand
15172ddb6cf1Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
1518a1d141d5Smrg
1519a1d141d5SmrgIf the version you run ($0) is already up to date, please
1520a1d141d5Smrgsend the following data and any information you think might be
1521a1d141d5Smrgpertinent to <config-patches@gnu.org> in order to provide the needed
1522a1d141d5Smrginformation to handle your system.
1523a1d141d5Smrg
1524a1d141d5Smrgconfig.guess timestamp = $timestamp
1525a1d141d5Smrg
1526a1d141d5Smrguname -m = `(uname -m) 2>/dev/null || echo unknown`
1527a1d141d5Smrguname -r = `(uname -r) 2>/dev/null || echo unknown`
1528a1d141d5Smrguname -s = `(uname -s) 2>/dev/null || echo unknown`
1529a1d141d5Smrguname -v = `(uname -v) 2>/dev/null || echo unknown`
1530a1d141d5Smrg
1531a1d141d5Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1532a1d141d5Smrg/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
1533a1d141d5Smrg
1534a1d141d5Smrghostinfo               = `(hostinfo) 2>/dev/null`
1535a1d141d5Smrg/bin/universe          = `(/bin/universe) 2>/dev/null`
1536a1d141d5Smrg/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
1537a1d141d5Smrg/bin/arch              = `(/bin/arch) 2>/dev/null`
1538a1d141d5Smrg/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
1539a1d141d5Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1540a1d141d5Smrg
1541a1d141d5SmrgUNAME_MACHINE = ${UNAME_MACHINE}
1542a1d141d5SmrgUNAME_RELEASE = ${UNAME_RELEASE}
1543a1d141d5SmrgUNAME_SYSTEM  = ${UNAME_SYSTEM}
1544a1d141d5SmrgUNAME_VERSION = ${UNAME_VERSION}
1545a1d141d5SmrgEOF
1546a1d141d5Smrg
1547a1d141d5Smrgexit 1
1548a1d141d5Smrg
1549a1d141d5Smrg# Local variables:
1550a1d141d5Smrg# eval: (add-hook 'write-file-hooks 'time-stamp)
1551a1d141d5Smrg# time-stamp-start: "timestamp='"
1552a1d141d5Smrg# time-stamp-format: "%:y-%02m-%02d"
1553a1d141d5Smrg# time-stamp-end: "'"
1554a1d141d5Smrg# End:
1555