config.guess revision 7e4fd55a
1b8f75c19Smrg#! /bin/sh
2b8f75c19Smrg# Attempt to guess a canonical system name.
3b8f75c19Smrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
47e4fd55aSmrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
57e4fd55aSmrg#   Free Software Foundation, Inc.
6b8f75c19Smrg
77e4fd55aSmrgtimestamp='2010-08-21'
8b8f75c19Smrg
9b8f75c19Smrg# This file is free software; you can redistribute it and/or modify it
10b8f75c19Smrg# under the terms of the GNU General Public License as published by
11b8f75c19Smrg# the Free Software Foundation; either version 2 of the License, or
12b8f75c19Smrg# (at your option) any later version.
13b8f75c19Smrg#
14b8f75c19Smrg# This program is distributed in the hope that it will be useful, but
15b8f75c19Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of
16b8f75c19Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17b8f75c19Smrg# General Public License for more details.
18b8f75c19Smrg#
19b8f75c19Smrg# You should have received a copy of the GNU General Public License
20b8f75c19Smrg# along with this program; if not, write to the Free Software
217e4fd55aSmrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
227e4fd55aSmrg# 02110-1301, USA.
23b8f75c19Smrg#
24b8f75c19Smrg# As a special exception to the GNU General Public License, if you
25b8f75c19Smrg# distribute this file as part of a program that contains a
26b8f75c19Smrg# configuration script generated by Autoconf, you may include it under
27b8f75c19Smrg# the same distribution terms that you use for the rest of that program.
28b8f75c19Smrg
297e4fd55aSmrg
307e4fd55aSmrg# Originally written by Per Bothner.  Please send patches (context
317e4fd55aSmrg# diff format) to <config-patches@gnu.org> and include a ChangeLog
327e4fd55aSmrg# entry.
33b8f75c19Smrg#
34b8f75c19Smrg# This script attempts to guess a canonical system name similar to
35b8f75c19Smrg# config.sub.  If it succeeds, it prints the system name on stdout, and
36b8f75c19Smrg# exits with 0.  Otherwise, it exits with 1.
37b8f75c19Smrg#
387e4fd55aSmrg# You can get the latest version of this script from:
397e4fd55aSmrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
40b8f75c19Smrg
41b8f75c19Smrgme=`echo "$0" | sed -e 's,.*/,,'`
42b8f75c19Smrg
43b8f75c19Smrgusage="\
44b8f75c19SmrgUsage: $0 [OPTION]
45b8f75c19Smrg
46b8f75c19SmrgOutput the configuration name of the system \`$me' is run on.
47b8f75c19Smrg
48b8f75c19SmrgOperation modes:
49b8f75c19Smrg  -h, --help         print this help, then exit
50b8f75c19Smrg  -t, --time-stamp   print date of last modification, then exit
51b8f75c19Smrg  -v, --version      print version number, then exit
52b8f75c19Smrg
53b8f75c19SmrgReport bugs and patches to <config-patches@gnu.org>."
54b8f75c19Smrg
55b8f75c19Smrgversion="\
56b8f75c19SmrgGNU config.guess ($timestamp)
57b8f75c19Smrg
58b8f75c19SmrgOriginally written by Per Bothner.
597e4fd55aSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
607e4fd55aSmrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free
617e4fd55aSmrgSoftware Foundation, Inc.
62b8f75c19Smrg
63b8f75c19SmrgThis is free software; see the source for copying conditions.  There is NO
64b8f75c19Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
65b8f75c19Smrg
66b8f75c19Smrghelp="
67b8f75c19SmrgTry \`$me --help' for more information."
68b8f75c19Smrg
69b8f75c19Smrg# Parse command line
70b8f75c19Smrgwhile test $# -gt 0 ; do
71b8f75c19Smrg  case $1 in
72b8f75c19Smrg    --time-stamp | --time* | -t )
737e4fd55aSmrg       echo "$timestamp" ; exit ;;
74b8f75c19Smrg    --version | -v )
757e4fd55aSmrg       echo "$version" ; exit ;;
76b8f75c19Smrg    --help | --h* | -h )
777e4fd55aSmrg       echo "$usage"; exit ;;
78b8f75c19Smrg    -- )     # Stop option processing
79b8f75c19Smrg       shift; break ;;
80b8f75c19Smrg    - )	# Use stdin as input.
81b8f75c19Smrg       break ;;
82b8f75c19Smrg    -* )
83b8f75c19Smrg       echo "$me: invalid option $1$help" >&2
84b8f75c19Smrg       exit 1 ;;
85b8f75c19Smrg    * )
86b8f75c19Smrg       break ;;
87b8f75c19Smrg  esac
88b8f75c19Smrgdone
89b8f75c19Smrg
90b8f75c19Smrgif test $# != 0; then
91b8f75c19Smrg  echo "$me: too many arguments$help" >&2
92b8f75c19Smrg  exit 1
93b8f75c19Smrgfi
94b8f75c19Smrg
957e4fd55aSmrgtrap 'exit 1' HUP INT TERM
96b8f75c19Smrg
97b8f75c19Smrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
98b8f75c19Smrg# compiler to aid in system detection is discouraged as it requires
99b8f75c19Smrg# temporary files to be created and, as you can see below, it is a
100b8f75c19Smrg# headache to deal with in a portable fashion.
101b8f75c19Smrg
102b8f75c19Smrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
103b8f75c19Smrg# use `HOST_CC' if defined, but it is deprecated.
104b8f75c19Smrg
105b8f75c19Smrg# Portable tmp directory creation inspired by the Autoconf team.
106b8f75c19Smrg
107b8f75c19Smrgset_cc_for_build='
108b8f75c19Smrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
1097e4fd55aSmrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" HUP INT PIPE TERM ;
110b8f75c19Smrg: ${TMPDIR=/tmp} ;
1117e4fd55aSmrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
112b8f75c19Smrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
113b8f75c19Smrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
114b8f75c19Smrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
115b8f75c19Smrgdummy=$tmp/dummy ;
116b8f75c19Smrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
117b8f75c19Smrgcase $CC_FOR_BUILD,$HOST_CC,$CC in
118b8f75c19Smrg ,,)    echo "int x;" > $dummy.c ;
119b8f75c19Smrg	for c in cc gcc c89 c99 ; do
120b8f75c19Smrg	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
121b8f75c19Smrg	     CC_FOR_BUILD="$c"; break ;
122b8f75c19Smrg	  fi ;
123b8f75c19Smrg	done ;
124b8f75c19Smrg	if test x"$CC_FOR_BUILD" = x ; then
125b8f75c19Smrg	  CC_FOR_BUILD=no_compiler_found ;
126b8f75c19Smrg	fi
127b8f75c19Smrg	;;
128b8f75c19Smrg ,,*)   CC_FOR_BUILD=$CC ;;
129b8f75c19Smrg ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
1307e4fd55aSmrgesac ; set_cc_for_build= ;'
131b8f75c19Smrg
132b8f75c19Smrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
133b8f75c19Smrg# (ghazi@noc.rutgers.edu 1994-08-24)
134b8f75c19Smrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then
135b8f75c19Smrg	PATH=$PATH:/.attbin ; export PATH
136b8f75c19Smrgfi
137b8f75c19Smrg
138b8f75c19SmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
139b8f75c19SmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
140b8f75c19SmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
141b8f75c19SmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
142b8f75c19Smrg
143b8f75c19Smrg# Note: order is significant - the case branches are not exclusive.
144b8f75c19Smrg
145b8f75c19Smrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
146b8f75c19Smrg    *:NetBSD:*:*)
147b8f75c19Smrg	# NetBSD (nbsd) targets should (where applicable) match one or
148b8f75c19Smrg	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
149b8f75c19Smrg	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
150b8f75c19Smrg	# switched to ELF, *-*-netbsd* would select the old
151b8f75c19Smrg	# object file format.  This provides both forward
152b8f75c19Smrg	# compatibility and a consistent mechanism for selecting the
153b8f75c19Smrg	# object file format.
154b8f75c19Smrg	#
155b8f75c19Smrg	# Note: NetBSD doesn't particularly care about the vendor
156b8f75c19Smrg	# portion of the name.  We always set it to "unknown".
157b8f75c19Smrg	sysctl="sysctl -n hw.machine_arch"
158b8f75c19Smrg	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
159b8f75c19Smrg	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
160b8f75c19Smrg	case "${UNAME_MACHINE_ARCH}" in
161b8f75c19Smrg	    armeb) machine=armeb-unknown ;;
162b8f75c19Smrg	    arm*) machine=arm-unknown ;;
163b8f75c19Smrg	    sh3el) machine=shl-unknown ;;
164b8f75c19Smrg	    sh3eb) machine=sh-unknown ;;
1657e4fd55aSmrg	    sh5el) machine=sh5le-unknown ;;
166b8f75c19Smrg	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
167b8f75c19Smrg	esac
168b8f75c19Smrg	# The Operating System including object format, if it has switched
169b8f75c19Smrg	# to ELF recently, or will in the future.
170b8f75c19Smrg	case "${UNAME_MACHINE_ARCH}" in
171b8f75c19Smrg	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
172b8f75c19Smrg		eval $set_cc_for_build
173b8f75c19Smrg		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
1747e4fd55aSmrg			| grep -q __ELF__
175b8f75c19Smrg		then
176b8f75c19Smrg		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
177b8f75c19Smrg		    # Return netbsd for either.  FIX?
178b8f75c19Smrg		    os=netbsd
179b8f75c19Smrg		else
180b8f75c19Smrg		    os=netbsdelf
181b8f75c19Smrg		fi
182b8f75c19Smrg		;;
183b8f75c19Smrg	    *)
184b8f75c19Smrg	        os=netbsd
185b8f75c19Smrg		;;
186b8f75c19Smrg	esac
187b8f75c19Smrg	# The OS release
188b8f75c19Smrg	# Debian GNU/NetBSD machines have a different userland, and
189b8f75c19Smrg	# thus, need a distinct triplet. However, they do not need
190b8f75c19Smrg	# kernel version information, so it can be replaced with a
191b8f75c19Smrg	# suitable tag, in the style of linux-gnu.
192b8f75c19Smrg	case "${UNAME_VERSION}" in
193b8f75c19Smrg	    Debian*)
194b8f75c19Smrg		release='-gnu'
195b8f75c19Smrg		;;
196b8f75c19Smrg	    *)
197b8f75c19Smrg		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
198b8f75c19Smrg		;;
199b8f75c19Smrg	esac
200b8f75c19Smrg	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
201b8f75c19Smrg	# contains redundant information, the shorter form:
202b8f75c19Smrg	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
203b8f75c19Smrg	echo "${machine}-${os}${release}"
2047e4fd55aSmrg	exit ;;
205b8f75c19Smrg    *:OpenBSD:*:*)
2067e4fd55aSmrg	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
2077e4fd55aSmrg	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
2087e4fd55aSmrg	exit ;;
2097e4fd55aSmrg    *:ekkoBSD:*:*)
2107e4fd55aSmrg	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
2117e4fd55aSmrg	exit ;;
2127e4fd55aSmrg    *:SolidBSD:*:*)
2137e4fd55aSmrg	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
2147e4fd55aSmrg	exit ;;
2157e4fd55aSmrg    macppc:MirBSD:*:*)
2167e4fd55aSmrg	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
2177e4fd55aSmrg	exit ;;
2187e4fd55aSmrg    *:MirBSD:*:*)
2197e4fd55aSmrg	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
2207e4fd55aSmrg	exit ;;
221b8f75c19Smrg    alpha:OSF1:*:*)
2227e4fd55aSmrg	case $UNAME_RELEASE in
2237e4fd55aSmrg	*4.0)
224b8f75c19Smrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
2257e4fd55aSmrg		;;
2267e4fd55aSmrg	*5.*)
2277e4fd55aSmrg	        UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
2287e4fd55aSmrg		;;
2297e4fd55aSmrg	esac
230b8f75c19Smrg	# According to Compaq, /usr/sbin/psrinfo has been available on
231b8f75c19Smrg	# OSF/1 and Tru64 systems produced since 1995.  I hope that
232b8f75c19Smrg	# covers most systems running today.  This code pipes the CPU
233b8f75c19Smrg	# types through head -n 1, so we only detect the type of CPU 0.
234b8f75c19Smrg	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
235b8f75c19Smrg	case "$ALPHA_CPU_TYPE" in
236b8f75c19Smrg	    "EV4 (21064)")
237b8f75c19Smrg		UNAME_MACHINE="alpha" ;;
238b8f75c19Smrg	    "EV4.5 (21064)")
239b8f75c19Smrg		UNAME_MACHINE="alpha" ;;
240b8f75c19Smrg	    "LCA4 (21066/21068)")
241b8f75c19Smrg		UNAME_MACHINE="alpha" ;;
242b8f75c19Smrg	    "EV5 (21164)")
243b8f75c19Smrg		UNAME_MACHINE="alphaev5" ;;
244b8f75c19Smrg	    "EV5.6 (21164A)")
245b8f75c19Smrg		UNAME_MACHINE="alphaev56" ;;
246b8f75c19Smrg	    "EV5.6 (21164PC)")
247b8f75c19Smrg		UNAME_MACHINE="alphapca56" ;;
248b8f75c19Smrg	    "EV5.7 (21164PC)")
249b8f75c19Smrg		UNAME_MACHINE="alphapca57" ;;
250b8f75c19Smrg	    "EV6 (21264)")
251b8f75c19Smrg		UNAME_MACHINE="alphaev6" ;;
252b8f75c19Smrg	    "EV6.7 (21264A)")
253b8f75c19Smrg		UNAME_MACHINE="alphaev67" ;;
254b8f75c19Smrg	    "EV6.8CB (21264C)")
255b8f75c19Smrg		UNAME_MACHINE="alphaev68" ;;
256b8f75c19Smrg	    "EV6.8AL (21264B)")
257b8f75c19Smrg		UNAME_MACHINE="alphaev68" ;;
258b8f75c19Smrg	    "EV6.8CX (21264D)")
259b8f75c19Smrg		UNAME_MACHINE="alphaev68" ;;
260b8f75c19Smrg	    "EV6.9A (21264/EV69A)")
261b8f75c19Smrg		UNAME_MACHINE="alphaev69" ;;
262b8f75c19Smrg	    "EV7 (21364)")
263b8f75c19Smrg		UNAME_MACHINE="alphaev7" ;;
264b8f75c19Smrg	    "EV7.9 (21364A)")
265b8f75c19Smrg		UNAME_MACHINE="alphaev79" ;;
266b8f75c19Smrg	esac
2677e4fd55aSmrg	# A Pn.n version is a patched version.
268b8f75c19Smrg	# A Vn.n version is a released version.
269b8f75c19Smrg	# A Tn.n version is a released field test version.
270b8f75c19Smrg	# A Xn.n version is an unreleased experimental baselevel.
271b8f75c19Smrg	# 1.2 uses "1.2" for uname -r.
2727e4fd55aSmrg	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
2737e4fd55aSmrg	exit ;;
274b8f75c19Smrg    Alpha\ *:Windows_NT*:*)
275b8f75c19Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
276b8f75c19Smrg	# Should we change UNAME_MACHINE based on the output of uname instead
277b8f75c19Smrg	# of the specific Alpha model?
278b8f75c19Smrg	echo alpha-pc-interix
2797e4fd55aSmrg	exit ;;
280b8f75c19Smrg    21064:Windows_NT:50:3)
281b8f75c19Smrg	echo alpha-dec-winnt3.5
2827e4fd55aSmrg	exit ;;
283b8f75c19Smrg    Amiga*:UNIX_System_V:4.0:*)
284b8f75c19Smrg	echo m68k-unknown-sysv4
2857e4fd55aSmrg	exit ;;
286b8f75c19Smrg    *:[Aa]miga[Oo][Ss]:*:*)
287b8f75c19Smrg	echo ${UNAME_MACHINE}-unknown-amigaos
2887e4fd55aSmrg	exit ;;
289b8f75c19Smrg    *:[Mm]orph[Oo][Ss]:*:*)
290b8f75c19Smrg	echo ${UNAME_MACHINE}-unknown-morphos
2917e4fd55aSmrg	exit ;;
292b8f75c19Smrg    *:OS/390:*:*)
293b8f75c19Smrg	echo i370-ibm-openedition
2947e4fd55aSmrg	exit ;;
2957e4fd55aSmrg    *:z/VM:*:*)
2967e4fd55aSmrg	echo s390-ibm-zvmoe
2977e4fd55aSmrg	exit ;;
2987e4fd55aSmrg    *:OS400:*:*)
2997e4fd55aSmrg        echo powerpc-ibm-os400
3007e4fd55aSmrg	exit ;;
301b8f75c19Smrg    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
302b8f75c19Smrg	echo arm-acorn-riscix${UNAME_RELEASE}
3037e4fd55aSmrg	exit ;;
3047e4fd55aSmrg    arm:riscos:*:*|arm:RISCOS:*:*)
3057e4fd55aSmrg	echo arm-unknown-riscos
3067e4fd55aSmrg	exit ;;
307b8f75c19Smrg    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
308b8f75c19Smrg	echo hppa1.1-hitachi-hiuxmpp
3097e4fd55aSmrg	exit ;;
310b8f75c19Smrg    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
311b8f75c19Smrg	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
312b8f75c19Smrg	if test "`(/bin/universe) 2>/dev/null`" = att ; then
313b8f75c19Smrg		echo pyramid-pyramid-sysv3
314b8f75c19Smrg	else
315b8f75c19Smrg		echo pyramid-pyramid-bsd
316b8f75c19Smrg	fi
3177e4fd55aSmrg	exit ;;
318b8f75c19Smrg    NILE*:*:*:dcosx)
319b8f75c19Smrg	echo pyramid-pyramid-svr4
3207e4fd55aSmrg	exit ;;
321b8f75c19Smrg    DRS?6000:unix:4.0:6*)
322b8f75c19Smrg	echo sparc-icl-nx6
3237e4fd55aSmrg	exit ;;
3247e4fd55aSmrg    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
325b8f75c19Smrg	case `/usr/bin/uname -p` in
3267e4fd55aSmrg	    sparc) echo sparc-icl-nx7; exit ;;
327b8f75c19Smrg	esac ;;
3287e4fd55aSmrg    s390x:SunOS:*:*)
3297e4fd55aSmrg	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3307e4fd55aSmrg	exit ;;
331b8f75c19Smrg    sun4H:SunOS:5.*:*)
332b8f75c19Smrg	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3337e4fd55aSmrg	exit ;;
334b8f75c19Smrg    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
335b8f75c19Smrg	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3367e4fd55aSmrg	exit ;;
3377e4fd55aSmrg    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
3387e4fd55aSmrg	echo i386-pc-auroraux${UNAME_RELEASE}
3397e4fd55aSmrg	exit ;;
3407e4fd55aSmrg    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
3417e4fd55aSmrg	eval $set_cc_for_build
3427e4fd55aSmrg	SUN_ARCH="i386"
3437e4fd55aSmrg	# If there is a compiler, see if it is configured for 64-bit objects.
3447e4fd55aSmrg	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
3457e4fd55aSmrg	# This test works for both compilers.
3467e4fd55aSmrg	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
3477e4fd55aSmrg	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
3487e4fd55aSmrg		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
3497e4fd55aSmrg		grep IS_64BIT_ARCH >/dev/null
3507e4fd55aSmrg	    then
3517e4fd55aSmrg		SUN_ARCH="x86_64"
3527e4fd55aSmrg	    fi
3537e4fd55aSmrg	fi
3547e4fd55aSmrg	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3557e4fd55aSmrg	exit ;;
356b8f75c19Smrg    sun4*:SunOS:6*:*)
357b8f75c19Smrg	# According to config.sub, this is the proper way to canonicalize
358b8f75c19Smrg	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
359b8f75c19Smrg	# it's likely to be more like Solaris than SunOS4.
360b8f75c19Smrg	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3617e4fd55aSmrg	exit ;;
362b8f75c19Smrg    sun4*:SunOS:*:*)
363b8f75c19Smrg	case "`/usr/bin/arch -k`" in
364b8f75c19Smrg	    Series*|S4*)
365b8f75c19Smrg		UNAME_RELEASE=`uname -v`
366b8f75c19Smrg		;;
367b8f75c19Smrg	esac
368b8f75c19Smrg	# Japanese Language versions have a version number like `4.1.3-JL'.
369b8f75c19Smrg	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
3707e4fd55aSmrg	exit ;;
371b8f75c19Smrg    sun3*:SunOS:*:*)
372b8f75c19Smrg	echo m68k-sun-sunos${UNAME_RELEASE}
3737e4fd55aSmrg	exit ;;
374b8f75c19Smrg    sun*:*:4.2BSD:*)
375b8f75c19Smrg	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
376b8f75c19Smrg	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
377b8f75c19Smrg	case "`/bin/arch`" in
378b8f75c19Smrg	    sun3)
379b8f75c19Smrg		echo m68k-sun-sunos${UNAME_RELEASE}
380b8f75c19Smrg		;;
381b8f75c19Smrg	    sun4)
382b8f75c19Smrg		echo sparc-sun-sunos${UNAME_RELEASE}
383b8f75c19Smrg		;;
384b8f75c19Smrg	esac
3857e4fd55aSmrg	exit ;;
386b8f75c19Smrg    aushp:SunOS:*:*)
387b8f75c19Smrg	echo sparc-auspex-sunos${UNAME_RELEASE}
3887e4fd55aSmrg	exit ;;
389b8f75c19Smrg    # The situation for MiNT is a little confusing.  The machine name
390b8f75c19Smrg    # can be virtually everything (everything which is not
391b8f75c19Smrg    # "atarist" or "atariste" at least should have a processor
392b8f75c19Smrg    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
393b8f75c19Smrg    # to the lowercase version "mint" (or "freemint").  Finally
394b8f75c19Smrg    # the system name "TOS" denotes a system which is actually not
395b8f75c19Smrg    # MiNT.  But MiNT is downward compatible to TOS, so this should
396b8f75c19Smrg    # be no problem.
397b8f75c19Smrg    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
398b8f75c19Smrg        echo m68k-atari-mint${UNAME_RELEASE}
3997e4fd55aSmrg	exit ;;
400b8f75c19Smrg    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
401b8f75c19Smrg	echo m68k-atari-mint${UNAME_RELEASE}
4027e4fd55aSmrg        exit ;;
403b8f75c19Smrg    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
404b8f75c19Smrg        echo m68k-atari-mint${UNAME_RELEASE}
4057e4fd55aSmrg	exit ;;
406b8f75c19Smrg    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
407b8f75c19Smrg        echo m68k-milan-mint${UNAME_RELEASE}
4087e4fd55aSmrg        exit ;;
409b8f75c19Smrg    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
410b8f75c19Smrg        echo m68k-hades-mint${UNAME_RELEASE}
4117e4fd55aSmrg        exit ;;
412b8f75c19Smrg    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
413b8f75c19Smrg        echo m68k-unknown-mint${UNAME_RELEASE}
4147e4fd55aSmrg        exit ;;
4157e4fd55aSmrg    m68k:machten:*:*)
4167e4fd55aSmrg	echo m68k-apple-machten${UNAME_RELEASE}
4177e4fd55aSmrg	exit ;;
418b8f75c19Smrg    powerpc:machten:*:*)
419b8f75c19Smrg	echo powerpc-apple-machten${UNAME_RELEASE}
4207e4fd55aSmrg	exit ;;
421b8f75c19Smrg    RISC*:Mach:*:*)
422b8f75c19Smrg	echo mips-dec-mach_bsd4.3
4237e4fd55aSmrg	exit ;;
424b8f75c19Smrg    RISC*:ULTRIX:*:*)
425b8f75c19Smrg	echo mips-dec-ultrix${UNAME_RELEASE}
4267e4fd55aSmrg	exit ;;
427b8f75c19Smrg    VAX*:ULTRIX*:*:*)
428b8f75c19Smrg	echo vax-dec-ultrix${UNAME_RELEASE}
4297e4fd55aSmrg	exit ;;
430b8f75c19Smrg    2020:CLIX:*:* | 2430:CLIX:*:*)
431b8f75c19Smrg	echo clipper-intergraph-clix${UNAME_RELEASE}
4327e4fd55aSmrg	exit ;;
433b8f75c19Smrg    mips:*:*:UMIPS | mips:*:*:RISCos)
434b8f75c19Smrg	eval $set_cc_for_build
435b8f75c19Smrg	sed 's/^	//' << EOF >$dummy.c
436b8f75c19Smrg#ifdef __cplusplus
437b8f75c19Smrg#include <stdio.h>  /* for printf() prototype */
438b8f75c19Smrg	int main (int argc, char *argv[]) {
439b8f75c19Smrg#else
440b8f75c19Smrg	int main (argc, argv) int argc; char *argv[]; {
441b8f75c19Smrg#endif
442b8f75c19Smrg	#if defined (host_mips) && defined (MIPSEB)
443b8f75c19Smrg	#if defined (SYSTYPE_SYSV)
444b8f75c19Smrg	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
445b8f75c19Smrg	#endif
446b8f75c19Smrg	#if defined (SYSTYPE_SVR4)
447b8f75c19Smrg	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
448b8f75c19Smrg	#endif
449b8f75c19Smrg	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
450b8f75c19Smrg	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
451b8f75c19Smrg	#endif
452b8f75c19Smrg	#endif
453b8f75c19Smrg	  exit (-1);
454b8f75c19Smrg	}
455b8f75c19SmrgEOF
4567e4fd55aSmrg	$CC_FOR_BUILD -o $dummy $dummy.c &&
4577e4fd55aSmrg	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
4587e4fd55aSmrg	  SYSTEM_NAME=`$dummy $dummyarg` &&
4597e4fd55aSmrg	    { echo "$SYSTEM_NAME"; exit; }
460b8f75c19Smrg	echo mips-mips-riscos${UNAME_RELEASE}
4617e4fd55aSmrg	exit ;;
462b8f75c19Smrg    Motorola:PowerMAX_OS:*:*)
463b8f75c19Smrg	echo powerpc-motorola-powermax
4647e4fd55aSmrg	exit ;;
465b8f75c19Smrg    Motorola:*:4.3:PL8-*)
466b8f75c19Smrg	echo powerpc-harris-powermax
4677e4fd55aSmrg	exit ;;
468b8f75c19Smrg    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
469b8f75c19Smrg	echo powerpc-harris-powermax
4707e4fd55aSmrg	exit ;;
471b8f75c19Smrg    Night_Hawk:Power_UNIX:*:*)
472b8f75c19Smrg	echo powerpc-harris-powerunix
4737e4fd55aSmrg	exit ;;
474b8f75c19Smrg    m88k:CX/UX:7*:*)
475b8f75c19Smrg	echo m88k-harris-cxux7
4767e4fd55aSmrg	exit ;;
477b8f75c19Smrg    m88k:*:4*:R4*)
478b8f75c19Smrg	echo m88k-motorola-sysv4
4797e4fd55aSmrg	exit ;;
480b8f75c19Smrg    m88k:*:3*:R3*)
481b8f75c19Smrg	echo m88k-motorola-sysv3
4827e4fd55aSmrg	exit ;;
483b8f75c19Smrg    AViiON:dgux:*:*)
484b8f75c19Smrg        # DG/UX returns AViiON for all architectures
485b8f75c19Smrg        UNAME_PROCESSOR=`/usr/bin/uname -p`
486b8f75c19Smrg	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
487b8f75c19Smrg	then
488b8f75c19Smrg	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
489b8f75c19Smrg	       [ ${TARGET_BINARY_INTERFACE}x = x ]
490b8f75c19Smrg	    then
491b8f75c19Smrg		echo m88k-dg-dgux${UNAME_RELEASE}
492b8f75c19Smrg	    else
493b8f75c19Smrg		echo m88k-dg-dguxbcs${UNAME_RELEASE}
494b8f75c19Smrg	    fi
495b8f75c19Smrg	else
496b8f75c19Smrg	    echo i586-dg-dgux${UNAME_RELEASE}
497b8f75c19Smrg	fi
4987e4fd55aSmrg 	exit ;;
499b8f75c19Smrg    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
500b8f75c19Smrg	echo m88k-dolphin-sysv3
5017e4fd55aSmrg	exit ;;
502b8f75c19Smrg    M88*:*:R3*:*)
503b8f75c19Smrg	# Delta 88k system running SVR3
504b8f75c19Smrg	echo m88k-motorola-sysv3
5057e4fd55aSmrg	exit ;;
506b8f75c19Smrg    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
507b8f75c19Smrg	echo m88k-tektronix-sysv3
5087e4fd55aSmrg	exit ;;
509b8f75c19Smrg    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
510b8f75c19Smrg	echo m68k-tektronix-bsd
5117e4fd55aSmrg	exit ;;
512b8f75c19Smrg    *:IRIX*:*:*)
513b8f75c19Smrg	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
5147e4fd55aSmrg	exit ;;
515b8f75c19Smrg    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
5167e4fd55aSmrg	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
5177e4fd55aSmrg	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
518b8f75c19Smrg    i*86:AIX:*:*)
519b8f75c19Smrg	echo i386-ibm-aix
5207e4fd55aSmrg	exit ;;
521b8f75c19Smrg    ia64:AIX:*:*)
522b8f75c19Smrg	if [ -x /usr/bin/oslevel ] ; then
523b8f75c19Smrg		IBM_REV=`/usr/bin/oslevel`
524b8f75c19Smrg	else
525b8f75c19Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
526b8f75c19Smrg	fi
527b8f75c19Smrg	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
5287e4fd55aSmrg	exit ;;
529b8f75c19Smrg    *:AIX:2:3)
530b8f75c19Smrg	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
531b8f75c19Smrg		eval $set_cc_for_build
532b8f75c19Smrg		sed 's/^		//' << EOF >$dummy.c
533b8f75c19Smrg		#include <sys/systemcfg.h>
534b8f75c19Smrg
535b8f75c19Smrg		main()
536b8f75c19Smrg			{
537b8f75c19Smrg			if (!__power_pc())
538b8f75c19Smrg				exit(1);
539b8f75c19Smrg			puts("powerpc-ibm-aix3.2.5");
540b8f75c19Smrg			exit(0);
541b8f75c19Smrg			}
542b8f75c19SmrgEOF
5437e4fd55aSmrg		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
5447e4fd55aSmrg		then
5457e4fd55aSmrg			echo "$SYSTEM_NAME"
5467e4fd55aSmrg		else
5477e4fd55aSmrg			echo rs6000-ibm-aix3.2.5
5487e4fd55aSmrg		fi
549b8f75c19Smrg	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
550b8f75c19Smrg		echo rs6000-ibm-aix3.2.4
551b8f75c19Smrg	else
552b8f75c19Smrg		echo rs6000-ibm-aix3.2
553b8f75c19Smrg	fi
5547e4fd55aSmrg	exit ;;
5557e4fd55aSmrg    *:AIX:*:[4567])
556b8f75c19Smrg	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
557b8f75c19Smrg	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
558b8f75c19Smrg		IBM_ARCH=rs6000
559b8f75c19Smrg	else
560b8f75c19Smrg		IBM_ARCH=powerpc
561b8f75c19Smrg	fi
562b8f75c19Smrg	if [ -x /usr/bin/oslevel ] ; then
563b8f75c19Smrg		IBM_REV=`/usr/bin/oslevel`
564b8f75c19Smrg	else
565b8f75c19Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
566b8f75c19Smrg	fi
567b8f75c19Smrg	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
5687e4fd55aSmrg	exit ;;
569b8f75c19Smrg    *:AIX:*:*)
570b8f75c19Smrg	echo rs6000-ibm-aix
5717e4fd55aSmrg	exit ;;
572b8f75c19Smrg    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
573b8f75c19Smrg	echo romp-ibm-bsd4.4
5747e4fd55aSmrg	exit ;;
575b8f75c19Smrg    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
576b8f75c19Smrg	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
5777e4fd55aSmrg	exit ;;                             # report: romp-ibm BSD 4.3
578b8f75c19Smrg    *:BOSX:*:*)
579b8f75c19Smrg	echo rs6000-bull-bosx
5807e4fd55aSmrg	exit ;;
581b8f75c19Smrg    DPX/2?00:B.O.S.:*:*)
582b8f75c19Smrg	echo m68k-bull-sysv3
5837e4fd55aSmrg	exit ;;
584b8f75c19Smrg    9000/[34]??:4.3bsd:1.*:*)
585b8f75c19Smrg	echo m68k-hp-bsd
5867e4fd55aSmrg	exit ;;
587b8f75c19Smrg    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
588b8f75c19Smrg	echo m68k-hp-bsd4.4
5897e4fd55aSmrg	exit ;;
590b8f75c19Smrg    9000/[34678]??:HP-UX:*:*)
591b8f75c19Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
592b8f75c19Smrg	case "${UNAME_MACHINE}" in
593b8f75c19Smrg	    9000/31? )            HP_ARCH=m68000 ;;
594b8f75c19Smrg	    9000/[34]?? )         HP_ARCH=m68k ;;
595b8f75c19Smrg	    9000/[678][0-9][0-9])
596b8f75c19Smrg		if [ -x /usr/bin/getconf ]; then
597b8f75c19Smrg		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
598b8f75c19Smrg                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
599b8f75c19Smrg                    case "${sc_cpu_version}" in
600b8f75c19Smrg                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
601b8f75c19Smrg                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
602b8f75c19Smrg                      532)                      # CPU_PA_RISC2_0
603b8f75c19Smrg                        case "${sc_kernel_bits}" in
604b8f75c19Smrg                          32) HP_ARCH="hppa2.0n" ;;
605b8f75c19Smrg                          64) HP_ARCH="hppa2.0w" ;;
606b8f75c19Smrg			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
607b8f75c19Smrg                        esac ;;
608b8f75c19Smrg                    esac
609b8f75c19Smrg		fi
610b8f75c19Smrg		if [ "${HP_ARCH}" = "" ]; then
611b8f75c19Smrg		    eval $set_cc_for_build
612b8f75c19Smrg		    sed 's/^              //' << EOF >$dummy.c
613b8f75c19Smrg
614b8f75c19Smrg              #define _HPUX_SOURCE
615b8f75c19Smrg              #include <stdlib.h>
616b8f75c19Smrg              #include <unistd.h>
617b8f75c19Smrg
618b8f75c19Smrg              int main ()
619b8f75c19Smrg              {
620b8f75c19Smrg              #if defined(_SC_KERNEL_BITS)
621b8f75c19Smrg                  long bits = sysconf(_SC_KERNEL_BITS);
622b8f75c19Smrg              #endif
623b8f75c19Smrg                  long cpu  = sysconf (_SC_CPU_VERSION);
624b8f75c19Smrg
625b8f75c19Smrg                  switch (cpu)
626b8f75c19Smrg              	{
627b8f75c19Smrg              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
628b8f75c19Smrg              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
629b8f75c19Smrg              	case CPU_PA_RISC2_0:
630b8f75c19Smrg              #if defined(_SC_KERNEL_BITS)
631b8f75c19Smrg              	    switch (bits)
632b8f75c19Smrg              		{
633b8f75c19Smrg              		case 64: puts ("hppa2.0w"); break;
634b8f75c19Smrg              		case 32: puts ("hppa2.0n"); break;
635b8f75c19Smrg              		default: puts ("hppa2.0"); break;
636b8f75c19Smrg              		} break;
637b8f75c19Smrg              #else  /* !defined(_SC_KERNEL_BITS) */
638b8f75c19Smrg              	    puts ("hppa2.0"); break;
639b8f75c19Smrg              #endif
640b8f75c19Smrg              	default: puts ("hppa1.0"); break;
641b8f75c19Smrg              	}
642b8f75c19Smrg                  exit (0);
643b8f75c19Smrg              }
644b8f75c19SmrgEOF
645b8f75c19Smrg		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
646b8f75c19Smrg		    test -z "$HP_ARCH" && HP_ARCH=hppa
647b8f75c19Smrg		fi ;;
648b8f75c19Smrg	esac
649b8f75c19Smrg	if [ ${HP_ARCH} = "hppa2.0w" ]
650b8f75c19Smrg	then
6517e4fd55aSmrg	    eval $set_cc_for_build
6527e4fd55aSmrg
6537e4fd55aSmrg	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
6547e4fd55aSmrg	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
6557e4fd55aSmrg	    # generating 64-bit code.  GNU and HP use different nomenclature:
6567e4fd55aSmrg	    #
6577e4fd55aSmrg	    # $ CC_FOR_BUILD=cc ./config.guess
6587e4fd55aSmrg	    # => hppa2.0w-hp-hpux11.23
6597e4fd55aSmrg	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
6607e4fd55aSmrg	    # => hppa64-hp-hpux11.23
6617e4fd55aSmrg
6627e4fd55aSmrg	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
6637e4fd55aSmrg		grep -q __LP64__
664b8f75c19Smrg	    then
665b8f75c19Smrg		HP_ARCH="hppa2.0w"
666b8f75c19Smrg	    else
667b8f75c19Smrg		HP_ARCH="hppa64"
668b8f75c19Smrg	    fi
669b8f75c19Smrg	fi
670b8f75c19Smrg	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
6717e4fd55aSmrg	exit ;;
672b8f75c19Smrg    ia64:HP-UX:*:*)
673b8f75c19Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
674b8f75c19Smrg	echo ia64-hp-hpux${HPUX_REV}
6757e4fd55aSmrg	exit ;;
676b8f75c19Smrg    3050*:HI-UX:*:*)
677b8f75c19Smrg	eval $set_cc_for_build
678b8f75c19Smrg	sed 's/^	//' << EOF >$dummy.c
679b8f75c19Smrg	#include <unistd.h>
680b8f75c19Smrg	int
681b8f75c19Smrg	main ()
682b8f75c19Smrg	{
683b8f75c19Smrg	  long cpu = sysconf (_SC_CPU_VERSION);
684b8f75c19Smrg	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
685b8f75c19Smrg	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
686b8f75c19Smrg	     results, however.  */
687b8f75c19Smrg	  if (CPU_IS_PA_RISC (cpu))
688b8f75c19Smrg	    {
689b8f75c19Smrg	      switch (cpu)
690b8f75c19Smrg		{
691b8f75c19Smrg		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
692b8f75c19Smrg		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
693b8f75c19Smrg		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
694b8f75c19Smrg		  default: puts ("hppa-hitachi-hiuxwe2"); break;
695b8f75c19Smrg		}
696b8f75c19Smrg	    }
697b8f75c19Smrg	  else if (CPU_IS_HP_MC68K (cpu))
698b8f75c19Smrg	    puts ("m68k-hitachi-hiuxwe2");
699b8f75c19Smrg	  else puts ("unknown-hitachi-hiuxwe2");
700b8f75c19Smrg	  exit (0);
701b8f75c19Smrg	}
702b8f75c19SmrgEOF
7037e4fd55aSmrg	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
7047e4fd55aSmrg		{ echo "$SYSTEM_NAME"; exit; }
705b8f75c19Smrg	echo unknown-hitachi-hiuxwe2
7067e4fd55aSmrg	exit ;;
707b8f75c19Smrg    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
708b8f75c19Smrg	echo hppa1.1-hp-bsd
7097e4fd55aSmrg	exit ;;
710b8f75c19Smrg    9000/8??:4.3bsd:*:*)
711b8f75c19Smrg	echo hppa1.0-hp-bsd
7127e4fd55aSmrg	exit ;;
713b8f75c19Smrg    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
714b8f75c19Smrg	echo hppa1.0-hp-mpeix
7157e4fd55aSmrg	exit ;;
716b8f75c19Smrg    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
717b8f75c19Smrg	echo hppa1.1-hp-osf
7187e4fd55aSmrg	exit ;;
719b8f75c19Smrg    hp8??:OSF1:*:*)
720b8f75c19Smrg	echo hppa1.0-hp-osf
7217e4fd55aSmrg	exit ;;
722b8f75c19Smrg    i*86:OSF1:*:*)
723b8f75c19Smrg	if [ -x /usr/sbin/sysversion ] ; then
724b8f75c19Smrg	    echo ${UNAME_MACHINE}-unknown-osf1mk
725b8f75c19Smrg	else
726b8f75c19Smrg	    echo ${UNAME_MACHINE}-unknown-osf1
727b8f75c19Smrg	fi
7287e4fd55aSmrg	exit ;;
729b8f75c19Smrg    parisc*:Lites*:*:*)
730b8f75c19Smrg	echo hppa1.1-hp-lites
7317e4fd55aSmrg	exit ;;
732b8f75c19Smrg    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
733b8f75c19Smrg	echo c1-convex-bsd
7347e4fd55aSmrg        exit ;;
735b8f75c19Smrg    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
736b8f75c19Smrg	if getsysinfo -f scalar_acc
737b8f75c19Smrg	then echo c32-convex-bsd
738b8f75c19Smrg	else echo c2-convex-bsd
739b8f75c19Smrg	fi
7407e4fd55aSmrg        exit ;;
741b8f75c19Smrg    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
742b8f75c19Smrg	echo c34-convex-bsd
7437e4fd55aSmrg        exit ;;
744b8f75c19Smrg    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
745b8f75c19Smrg	echo c38-convex-bsd
7467e4fd55aSmrg        exit ;;
747b8f75c19Smrg    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
748b8f75c19Smrg	echo c4-convex-bsd
7497e4fd55aSmrg        exit ;;
750b8f75c19Smrg    CRAY*Y-MP:*:*:*)
751b8f75c19Smrg	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7527e4fd55aSmrg	exit ;;
753b8f75c19Smrg    CRAY*[A-Z]90:*:*:*)
754b8f75c19Smrg	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
755b8f75c19Smrg	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
756b8f75c19Smrg	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
757b8f75c19Smrg	      -e 's/\.[^.]*$/.X/'
7587e4fd55aSmrg	exit ;;
759b8f75c19Smrg    CRAY*TS:*:*:*)
760b8f75c19Smrg	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7617e4fd55aSmrg	exit ;;
762b8f75c19Smrg    CRAY*T3E:*:*:*)
763b8f75c19Smrg	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7647e4fd55aSmrg	exit ;;
765b8f75c19Smrg    CRAY*SV1:*:*:*)
766b8f75c19Smrg	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7677e4fd55aSmrg	exit ;;
768b8f75c19Smrg    *:UNICOS/mp:*:*)
7697e4fd55aSmrg	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7707e4fd55aSmrg	exit ;;
771b8f75c19Smrg    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
772b8f75c19Smrg	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
773b8f75c19Smrg        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
774b8f75c19Smrg        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
775b8f75c19Smrg        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
7767e4fd55aSmrg        exit ;;
7777e4fd55aSmrg    5000:UNIX_System_V:4.*:*)
7787e4fd55aSmrg        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
7797e4fd55aSmrg        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
7807e4fd55aSmrg        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
7817e4fd55aSmrg	exit ;;
782b8f75c19Smrg    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
783b8f75c19Smrg	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
7847e4fd55aSmrg	exit ;;
785b8f75c19Smrg    sparc*:BSD/OS:*:*)
786b8f75c19Smrg	echo sparc-unknown-bsdi${UNAME_RELEASE}
7877e4fd55aSmrg	exit ;;
788b8f75c19Smrg    *:BSD/OS:*:*)
789b8f75c19Smrg	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
7907e4fd55aSmrg	exit ;;
7917e4fd55aSmrg    *:FreeBSD:*:*)
7927e4fd55aSmrg	case ${UNAME_MACHINE} in
7937e4fd55aSmrg	    pc98)
7947e4fd55aSmrg		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7957e4fd55aSmrg	    amd64)
7967e4fd55aSmrg		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7977e4fd55aSmrg	    *)
7987e4fd55aSmrg		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7997e4fd55aSmrg	esac
8007e4fd55aSmrg	exit ;;
801b8f75c19Smrg    i*:CYGWIN*:*)
802b8f75c19Smrg	echo ${UNAME_MACHINE}-pc-cygwin
8037e4fd55aSmrg	exit ;;
8047e4fd55aSmrg    *:MINGW*:*)
805b8f75c19Smrg	echo ${UNAME_MACHINE}-pc-mingw32
8067e4fd55aSmrg	exit ;;
8077e4fd55aSmrg    i*:windows32*:*)
8087e4fd55aSmrg    	# uname -m includes "-pc" on this system.
8097e4fd55aSmrg    	echo ${UNAME_MACHINE}-mingw32
8107e4fd55aSmrg	exit ;;
811b8f75c19Smrg    i*:PW*:*)
812b8f75c19Smrg	echo ${UNAME_MACHINE}-pc-pw32
8137e4fd55aSmrg	exit ;;
8147e4fd55aSmrg    *:Interix*:*)
8157e4fd55aSmrg    	case ${UNAME_MACHINE} in
8167e4fd55aSmrg	    x86)
8177e4fd55aSmrg		echo i586-pc-interix${UNAME_RELEASE}
8187e4fd55aSmrg		exit ;;
8197e4fd55aSmrg	    authenticamd | genuineintel | EM64T)
8207e4fd55aSmrg		echo x86_64-unknown-interix${UNAME_RELEASE}
8217e4fd55aSmrg		exit ;;
8227e4fd55aSmrg	    IA64)
8237e4fd55aSmrg		echo ia64-unknown-interix${UNAME_RELEASE}
8247e4fd55aSmrg		exit ;;
8257e4fd55aSmrg	esac ;;
826b8f75c19Smrg    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
827b8f75c19Smrg	echo i${UNAME_MACHINE}-pc-mks
8287e4fd55aSmrg	exit ;;
8297e4fd55aSmrg    8664:Windows_NT:*)
8307e4fd55aSmrg	echo x86_64-pc-mks
8317e4fd55aSmrg	exit ;;
832b8f75c19Smrg    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
833b8f75c19Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
834b8f75c19Smrg	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
835b8f75c19Smrg	# UNAME_MACHINE based on the output of uname instead of i386?
836b8f75c19Smrg	echo i586-pc-interix
8377e4fd55aSmrg	exit ;;
838b8f75c19Smrg    i*:UWIN*:*)
839b8f75c19Smrg	echo ${UNAME_MACHINE}-pc-uwin
8407e4fd55aSmrg	exit ;;
8417e4fd55aSmrg    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
8427e4fd55aSmrg	echo x86_64-unknown-cygwin
8437e4fd55aSmrg	exit ;;
844b8f75c19Smrg    p*:CYGWIN*:*)
845b8f75c19Smrg	echo powerpcle-unknown-cygwin
8467e4fd55aSmrg	exit ;;
847b8f75c19Smrg    prep*:SunOS:5.*:*)
848b8f75c19Smrg	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
8497e4fd55aSmrg	exit ;;
850b8f75c19Smrg    *:GNU:*:*)
8517e4fd55aSmrg	# the GNU system
852b8f75c19Smrg	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
8537e4fd55aSmrg	exit ;;
8547e4fd55aSmrg    *:GNU/*:*:*)
8557e4fd55aSmrg	# other systems with GNU libc and userland
8567e4fd55aSmrg	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
8577e4fd55aSmrg	exit ;;
858b8f75c19Smrg    i*86:Minix:*:*)
859b8f75c19Smrg	echo ${UNAME_MACHINE}-pc-minix
8607e4fd55aSmrg	exit ;;
8617e4fd55aSmrg    alpha:Linux:*:*)
8627e4fd55aSmrg	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
8637e4fd55aSmrg	  EV5)   UNAME_MACHINE=alphaev5 ;;
8647e4fd55aSmrg	  EV56)  UNAME_MACHINE=alphaev56 ;;
8657e4fd55aSmrg	  PCA56) UNAME_MACHINE=alphapca56 ;;
8667e4fd55aSmrg	  PCA57) UNAME_MACHINE=alphapca56 ;;
8677e4fd55aSmrg	  EV6)   UNAME_MACHINE=alphaev6 ;;
8687e4fd55aSmrg	  EV67)  UNAME_MACHINE=alphaev67 ;;
8697e4fd55aSmrg	  EV68*) UNAME_MACHINE=alphaev68 ;;
8707e4fd55aSmrg        esac
8717e4fd55aSmrg	objdump --private-headers /bin/sh | grep -q ld.so.1
8727e4fd55aSmrg	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
8737e4fd55aSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
8747e4fd55aSmrg	exit ;;
875b8f75c19Smrg    arm*:Linux:*:*)
8767e4fd55aSmrg	eval $set_cc_for_build
8777e4fd55aSmrg	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
8787e4fd55aSmrg	    | grep -q __ARM_EABI__
8797e4fd55aSmrg	then
8807e4fd55aSmrg	    echo ${UNAME_MACHINE}-unknown-linux-gnu
8817e4fd55aSmrg	else
8827e4fd55aSmrg	    echo ${UNAME_MACHINE}-unknown-linux-gnueabi
8837e4fd55aSmrg	fi
8847e4fd55aSmrg	exit ;;
8857e4fd55aSmrg    avr32*:Linux:*:*)
886b8f75c19Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
8877e4fd55aSmrg	exit ;;
888b8f75c19Smrg    cris:Linux:*:*)
889b8f75c19Smrg	echo cris-axis-linux-gnu
8907e4fd55aSmrg	exit ;;
8917e4fd55aSmrg    crisv32:Linux:*:*)
8927e4fd55aSmrg	echo crisv32-axis-linux-gnu
8937e4fd55aSmrg	exit ;;
8947e4fd55aSmrg    frv:Linux:*:*)
8957e4fd55aSmrg    	echo frv-unknown-linux-gnu
8967e4fd55aSmrg	exit ;;
8977e4fd55aSmrg    i*86:Linux:*:*)
8987e4fd55aSmrg	LIBC=gnu
899b8f75c19Smrg	eval $set_cc_for_build
900b8f75c19Smrg	sed 's/^	//' << EOF >$dummy.c
9017e4fd55aSmrg	#ifdef __dietlibc__
9027e4fd55aSmrg	LIBC=dietlibc
903b8f75c19Smrg	#endif
904b8f75c19SmrgEOF
9057e4fd55aSmrg	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
9067e4fd55aSmrg	echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
9077e4fd55aSmrg	exit ;;
9087e4fd55aSmrg    ia64:Linux:*:*)
9097e4fd55aSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9107e4fd55aSmrg	exit ;;
9117e4fd55aSmrg    m32r*:Linux:*:*)
9127e4fd55aSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9137e4fd55aSmrg	exit ;;
9147e4fd55aSmrg    m68*:Linux:*:*)
9157e4fd55aSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9167e4fd55aSmrg	exit ;;
9177e4fd55aSmrg    mips:Linux:*:* | mips64:Linux:*:*)
918b8f75c19Smrg	eval $set_cc_for_build
919b8f75c19Smrg	sed 's/^	//' << EOF >$dummy.c
920b8f75c19Smrg	#undef CPU
9217e4fd55aSmrg	#undef ${UNAME_MACHINE}
9227e4fd55aSmrg	#undef ${UNAME_MACHINE}el
923b8f75c19Smrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
9247e4fd55aSmrg	CPU=${UNAME_MACHINE}el
925b8f75c19Smrg	#else
926b8f75c19Smrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
9277e4fd55aSmrg	CPU=${UNAME_MACHINE}
928b8f75c19Smrg	#else
929b8f75c19Smrg	CPU=
930b8f75c19Smrg	#endif
931b8f75c19Smrg	#endif
932b8f75c19SmrgEOF
9337e4fd55aSmrg	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
9347e4fd55aSmrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
935b8f75c19Smrg	;;
9367e4fd55aSmrg    or32:Linux:*:*)
9377e4fd55aSmrg	echo or32-unknown-linux-gnu
9387e4fd55aSmrg	exit ;;
9397e4fd55aSmrg    padre:Linux:*:*)
9407e4fd55aSmrg	echo sparc-unknown-linux-gnu
9417e4fd55aSmrg	exit ;;
9427e4fd55aSmrg    parisc64:Linux:*:* | hppa64:Linux:*:*)
9437e4fd55aSmrg	echo hppa64-unknown-linux-gnu
9447e4fd55aSmrg	exit ;;
945b8f75c19Smrg    parisc:Linux:*:* | hppa:Linux:*:*)
946b8f75c19Smrg	# Look for CPU level
947b8f75c19Smrg	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
948b8f75c19Smrg	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
949b8f75c19Smrg	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
950b8f75c19Smrg	  *)    echo hppa-unknown-linux-gnu ;;
951b8f75c19Smrg	esac
9527e4fd55aSmrg	exit ;;
9537e4fd55aSmrg    ppc64:Linux:*:*)
9547e4fd55aSmrg	echo powerpc64-unknown-linux-gnu
9557e4fd55aSmrg	exit ;;
9567e4fd55aSmrg    ppc:Linux:*:*)
9577e4fd55aSmrg	echo powerpc-unknown-linux-gnu
9587e4fd55aSmrg	exit ;;
959b8f75c19Smrg    s390:Linux:*:* | s390x:Linux:*:*)
9607e4fd55aSmrg	echo ${UNAME_MACHINE}-ibm-linux
9617e4fd55aSmrg	exit ;;
962b8f75c19Smrg    sh64*:Linux:*:*)
963b8f75c19Smrg    	echo ${UNAME_MACHINE}-unknown-linux-gnu
9647e4fd55aSmrg	exit ;;
965b8f75c19Smrg    sh*:Linux:*:*)
966b8f75c19Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9677e4fd55aSmrg	exit ;;
968b8f75c19Smrg    sparc:Linux:*:* | sparc64:Linux:*:*)
969b8f75c19Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9707e4fd55aSmrg	exit ;;
9717e4fd55aSmrg    tile*:Linux:*:*)
9727e4fd55aSmrg	echo ${UNAME_MACHINE}-tilera-linux-gnu
9737e4fd55aSmrg	exit ;;
9747e4fd55aSmrg    vax:Linux:*:*)
9757e4fd55aSmrg	echo ${UNAME_MACHINE}-dec-linux-gnu
9767e4fd55aSmrg	exit ;;
977b8f75c19Smrg    x86_64:Linux:*:*)
9787e4fd55aSmrg	echo x86_64-unknown-linux-gnu
9797e4fd55aSmrg	exit ;;
9807e4fd55aSmrg    xtensa*:Linux:*:*)
9817e4fd55aSmrg    	echo ${UNAME_MACHINE}-unknown-linux-gnu
9827e4fd55aSmrg	exit ;;
983b8f75c19Smrg    i*86:DYNIX/ptx:4*:*)
984b8f75c19Smrg	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
985b8f75c19Smrg	# earlier versions are messed up and put the nodename in both
986b8f75c19Smrg	# sysname and nodename.
987b8f75c19Smrg	echo i386-sequent-sysv4
9887e4fd55aSmrg	exit ;;
989b8f75c19Smrg    i*86:UNIX_SV:4.2MP:2.*)
990b8f75c19Smrg        # Unixware is an offshoot of SVR4, but it has its own version
991b8f75c19Smrg        # number series starting with 2...
992b8f75c19Smrg        # I am not positive that other SVR4 systems won't match this,
993b8f75c19Smrg	# I just have to hope.  -- rms.
994b8f75c19Smrg        # Use sysv4.2uw... so that sysv4* matches it.
995b8f75c19Smrg	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
9967e4fd55aSmrg	exit ;;
997b8f75c19Smrg    i*86:OS/2:*:*)
998b8f75c19Smrg	# If we were able to find `uname', then EMX Unix compatibility
999b8f75c19Smrg	# is probably installed.
1000b8f75c19Smrg	echo ${UNAME_MACHINE}-pc-os2-emx
10017e4fd55aSmrg	exit ;;
1002b8f75c19Smrg    i*86:XTS-300:*:STOP)
1003b8f75c19Smrg	echo ${UNAME_MACHINE}-unknown-stop
10047e4fd55aSmrg	exit ;;
1005b8f75c19Smrg    i*86:atheos:*:*)
1006b8f75c19Smrg	echo ${UNAME_MACHINE}-unknown-atheos
10077e4fd55aSmrg	exit ;;
10087e4fd55aSmrg    i*86:syllable:*:*)
10097e4fd55aSmrg	echo ${UNAME_MACHINE}-pc-syllable
10107e4fd55aSmrg	exit ;;
10117e4fd55aSmrg    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
1012b8f75c19Smrg	echo i386-unknown-lynxos${UNAME_RELEASE}
10137e4fd55aSmrg	exit ;;
1014b8f75c19Smrg    i*86:*DOS:*:*)
1015b8f75c19Smrg	echo ${UNAME_MACHINE}-pc-msdosdjgpp
10167e4fd55aSmrg	exit ;;
1017b8f75c19Smrg    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
1018b8f75c19Smrg	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
1019b8f75c19Smrg	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1020b8f75c19Smrg		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
1021b8f75c19Smrg	else
1022b8f75c19Smrg		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
1023b8f75c19Smrg	fi
10247e4fd55aSmrg	exit ;;
10257e4fd55aSmrg    i*86:*:5:[678]*)
10267e4fd55aSmrg    	# UnixWare 7.x, OpenUNIX and OpenServer 6.
1027b8f75c19Smrg	case `/bin/uname -X | grep "^Machine"` in
1028b8f75c19Smrg	    *486*)	     UNAME_MACHINE=i486 ;;
1029b8f75c19Smrg	    *Pentium)	     UNAME_MACHINE=i586 ;;
1030b8f75c19Smrg	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1031b8f75c19Smrg	esac
1032b8f75c19Smrg	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
10337e4fd55aSmrg	exit ;;
1034b8f75c19Smrg    i*86:*:3.2:*)
1035b8f75c19Smrg	if test -f /usr/options/cb.name; then
1036b8f75c19Smrg		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1037b8f75c19Smrg		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1038b8f75c19Smrg	elif /bin/uname -X 2>/dev/null >/dev/null ; then
1039b8f75c19Smrg		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1040b8f75c19Smrg		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1041b8f75c19Smrg		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1042b8f75c19Smrg			&& UNAME_MACHINE=i586
1043b8f75c19Smrg		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1044b8f75c19Smrg			&& UNAME_MACHINE=i686
1045b8f75c19Smrg		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1046b8f75c19Smrg			&& UNAME_MACHINE=i686
1047b8f75c19Smrg		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1048b8f75c19Smrg	else
1049b8f75c19Smrg		echo ${UNAME_MACHINE}-pc-sysv32
1050b8f75c19Smrg	fi
10517e4fd55aSmrg	exit ;;
1052b8f75c19Smrg    pc:*:*:*)
1053b8f75c19Smrg	# Left here for compatibility:
1054b8f75c19Smrg        # uname -m prints for DJGPP always 'pc', but it prints nothing about
10557e4fd55aSmrg        # the processor, so we play safe by assuming i586.
10567e4fd55aSmrg	# Note: whatever this is, it MUST be the same as what config.sub
10577e4fd55aSmrg	# prints for the "djgpp" host, or else GDB configury will decide that
10587e4fd55aSmrg	# this is a cross-build.
10597e4fd55aSmrg	echo i586-pc-msdosdjgpp
10607e4fd55aSmrg        exit ;;
1061b8f75c19Smrg    Intel:Mach:3*:*)
1062b8f75c19Smrg	echo i386-pc-mach3
10637e4fd55aSmrg	exit ;;
1064b8f75c19Smrg    paragon:*:*:*)
1065b8f75c19Smrg	echo i860-intel-osf1
10667e4fd55aSmrg	exit ;;
1067b8f75c19Smrg    i860:*:4.*:*) # i860-SVR4
1068b8f75c19Smrg	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1069b8f75c19Smrg	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
1070b8f75c19Smrg	else # Add other i860-SVR4 vendors below as they are discovered.
1071b8f75c19Smrg	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
1072b8f75c19Smrg	fi
10737e4fd55aSmrg	exit ;;
1074b8f75c19Smrg    mini*:CTIX:SYS*5:*)
1075b8f75c19Smrg	# "miniframe"
1076b8f75c19Smrg	echo m68010-convergent-sysv
10777e4fd55aSmrg	exit ;;
1078b8f75c19Smrg    mc68k:UNIX:SYSTEM5:3.51m)
1079b8f75c19Smrg	echo m68k-convergent-sysv
10807e4fd55aSmrg	exit ;;
1081b8f75c19Smrg    M680?0:D-NIX:5.3:*)
1082b8f75c19Smrg	echo m68k-diab-dnix
10837e4fd55aSmrg	exit ;;
10847e4fd55aSmrg    M68*:*:R3V[5678]*:*)
10857e4fd55aSmrg	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
10867e4fd55aSmrg    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)
1087b8f75c19Smrg	OS_REL=''
1088b8f75c19Smrg	test -r /etc/.relid \
1089b8f75c19Smrg	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1090b8f75c19Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
10917e4fd55aSmrg	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1092b8f75c19Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
10937e4fd55aSmrg	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1094b8f75c19Smrg    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1095b8f75c19Smrg        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
10967e4fd55aSmrg          && { echo i486-ncr-sysv4; exit; } ;;
10977e4fd55aSmrg    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
10987e4fd55aSmrg	OS_REL='.3'
10997e4fd55aSmrg	test -r /etc/.relid \
11007e4fd55aSmrg	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
11017e4fd55aSmrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
11027e4fd55aSmrg	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
11037e4fd55aSmrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
11047e4fd55aSmrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
11057e4fd55aSmrg	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
11067e4fd55aSmrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1107b8f75c19Smrg    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1108b8f75c19Smrg	echo m68k-unknown-lynxos${UNAME_RELEASE}
11097e4fd55aSmrg	exit ;;
1110b8f75c19Smrg    mc68030:UNIX_System_V:4.*:*)
1111b8f75c19Smrg	echo m68k-atari-sysv4
11127e4fd55aSmrg	exit ;;
1113b8f75c19Smrg    TSUNAMI:LynxOS:2.*:*)
1114b8f75c19Smrg	echo sparc-unknown-lynxos${UNAME_RELEASE}
11157e4fd55aSmrg	exit ;;
1116b8f75c19Smrg    rs6000:LynxOS:2.*:*)
1117b8f75c19Smrg	echo rs6000-unknown-lynxos${UNAME_RELEASE}
11187e4fd55aSmrg	exit ;;
11197e4fd55aSmrg    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
1120b8f75c19Smrg	echo powerpc-unknown-lynxos${UNAME_RELEASE}
11217e4fd55aSmrg	exit ;;
1122b8f75c19Smrg    SM[BE]S:UNIX_SV:*:*)
1123b8f75c19Smrg	echo mips-dde-sysv${UNAME_RELEASE}
11247e4fd55aSmrg	exit ;;
1125b8f75c19Smrg    RM*:ReliantUNIX-*:*:*)
1126b8f75c19Smrg	echo mips-sni-sysv4
11277e4fd55aSmrg	exit ;;
1128b8f75c19Smrg    RM*:SINIX-*:*:*)
1129b8f75c19Smrg	echo mips-sni-sysv4
11307e4fd55aSmrg	exit ;;
1131b8f75c19Smrg    *:SINIX-*:*:*)
1132b8f75c19Smrg	if uname -p 2>/dev/null >/dev/null ; then
1133b8f75c19Smrg		UNAME_MACHINE=`(uname -p) 2>/dev/null`
1134b8f75c19Smrg		echo ${UNAME_MACHINE}-sni-sysv4
1135b8f75c19Smrg	else
1136b8f75c19Smrg		echo ns32k-sni-sysv
1137b8f75c19Smrg	fi
11387e4fd55aSmrg	exit ;;
1139b8f75c19Smrg    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1140b8f75c19Smrg                      # says <Richard.M.Bartel@ccMail.Census.GOV>
1141b8f75c19Smrg        echo i586-unisys-sysv4
11427e4fd55aSmrg        exit ;;
1143b8f75c19Smrg    *:UNIX_System_V:4*:FTX*)
1144b8f75c19Smrg	# From Gerald Hewes <hewes@openmarket.com>.
1145b8f75c19Smrg	# How about differentiating between stratus architectures? -djm
1146b8f75c19Smrg	echo hppa1.1-stratus-sysv4
11477e4fd55aSmrg	exit ;;
1148b8f75c19Smrg    *:*:*:FTX*)
1149b8f75c19Smrg	# From seanf@swdc.stratus.com.
1150b8f75c19Smrg	echo i860-stratus-sysv4
11517e4fd55aSmrg	exit ;;
11527e4fd55aSmrg    i*86:VOS:*:*)
11537e4fd55aSmrg	# From Paul.Green@stratus.com.
11547e4fd55aSmrg	echo ${UNAME_MACHINE}-stratus-vos
11557e4fd55aSmrg	exit ;;
1156b8f75c19Smrg    *:VOS:*:*)
1157b8f75c19Smrg	# From Paul.Green@stratus.com.
1158b8f75c19Smrg	echo hppa1.1-stratus-vos
11597e4fd55aSmrg	exit ;;
1160b8f75c19Smrg    mc68*:A/UX:*:*)
1161b8f75c19Smrg	echo m68k-apple-aux${UNAME_RELEASE}
11627e4fd55aSmrg	exit ;;
1163b8f75c19Smrg    news*:NEWS-OS:6*:*)
1164b8f75c19Smrg	echo mips-sony-newsos6
11657e4fd55aSmrg	exit ;;
1166b8f75c19Smrg    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1167b8f75c19Smrg	if [ -d /usr/nec ]; then
1168b8f75c19Smrg	        echo mips-nec-sysv${UNAME_RELEASE}
1169b8f75c19Smrg	else
1170b8f75c19Smrg	        echo mips-unknown-sysv${UNAME_RELEASE}
1171b8f75c19Smrg	fi
11727e4fd55aSmrg        exit ;;
1173b8f75c19Smrg    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
1174b8f75c19Smrg	echo powerpc-be-beos
11757e4fd55aSmrg	exit ;;
1176b8f75c19Smrg    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
1177b8f75c19Smrg	echo powerpc-apple-beos
11787e4fd55aSmrg	exit ;;
1179b8f75c19Smrg    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
1180b8f75c19Smrg	echo i586-pc-beos
11817e4fd55aSmrg	exit ;;
11827e4fd55aSmrg    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
11837e4fd55aSmrg	echo i586-pc-haiku
11847e4fd55aSmrg	exit ;;
1185b8f75c19Smrg    SX-4:SUPER-UX:*:*)
1186b8f75c19Smrg	echo sx4-nec-superux${UNAME_RELEASE}
11877e4fd55aSmrg	exit ;;
1188b8f75c19Smrg    SX-5:SUPER-UX:*:*)
1189b8f75c19Smrg	echo sx5-nec-superux${UNAME_RELEASE}
11907e4fd55aSmrg	exit ;;
1191b8f75c19Smrg    SX-6:SUPER-UX:*:*)
1192b8f75c19Smrg	echo sx6-nec-superux${UNAME_RELEASE}
11937e4fd55aSmrg	exit ;;
11947e4fd55aSmrg    SX-7:SUPER-UX:*:*)
11957e4fd55aSmrg	echo sx7-nec-superux${UNAME_RELEASE}
11967e4fd55aSmrg	exit ;;
11977e4fd55aSmrg    SX-8:SUPER-UX:*:*)
11987e4fd55aSmrg	echo sx8-nec-superux${UNAME_RELEASE}
11997e4fd55aSmrg	exit ;;
12007e4fd55aSmrg    SX-8R:SUPER-UX:*:*)
12017e4fd55aSmrg	echo sx8r-nec-superux${UNAME_RELEASE}
12027e4fd55aSmrg	exit ;;
1203b8f75c19Smrg    Power*:Rhapsody:*:*)
1204b8f75c19Smrg	echo powerpc-apple-rhapsody${UNAME_RELEASE}
12057e4fd55aSmrg	exit ;;
1206b8f75c19Smrg    *:Rhapsody:*:*)
1207b8f75c19Smrg	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
12087e4fd55aSmrg	exit ;;
1209b8f75c19Smrg    *:Darwin:*:*)
12107e4fd55aSmrg	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
12117e4fd55aSmrg	case $UNAME_PROCESSOR in
12127e4fd55aSmrg	    i386)
12137e4fd55aSmrg		eval $set_cc_for_build
12147e4fd55aSmrg		if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
12157e4fd55aSmrg		  if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
12167e4fd55aSmrg		      (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
12177e4fd55aSmrg		      grep IS_64BIT_ARCH >/dev/null
12187e4fd55aSmrg		  then
12197e4fd55aSmrg		      UNAME_PROCESSOR="x86_64"
12207e4fd55aSmrg		  fi
12217e4fd55aSmrg		fi ;;
12227e4fd55aSmrg	    unknown) UNAME_PROCESSOR=powerpc ;;
1223b8f75c19Smrg	esac
1224b8f75c19Smrg	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
12257e4fd55aSmrg	exit ;;
1226b8f75c19Smrg    *:procnto*:*:* | *:QNX:[0123456789]*:*)
1227b8f75c19Smrg	UNAME_PROCESSOR=`uname -p`
1228b8f75c19Smrg	if test "$UNAME_PROCESSOR" = "x86"; then
1229b8f75c19Smrg		UNAME_PROCESSOR=i386
1230b8f75c19Smrg		UNAME_MACHINE=pc
1231b8f75c19Smrg	fi
1232b8f75c19Smrg	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
12337e4fd55aSmrg	exit ;;
1234b8f75c19Smrg    *:QNX:*:4*)
1235b8f75c19Smrg	echo i386-pc-qnx
12367e4fd55aSmrg	exit ;;
12377e4fd55aSmrg    NSE-?:NONSTOP_KERNEL:*:*)
12387e4fd55aSmrg	echo nse-tandem-nsk${UNAME_RELEASE}
12397e4fd55aSmrg	exit ;;
12407e4fd55aSmrg    NSR-?:NONSTOP_KERNEL:*:*)
1241b8f75c19Smrg	echo nsr-tandem-nsk${UNAME_RELEASE}
12427e4fd55aSmrg	exit ;;
1243b8f75c19Smrg    *:NonStop-UX:*:*)
1244b8f75c19Smrg	echo mips-compaq-nonstopux
12457e4fd55aSmrg	exit ;;
1246b8f75c19Smrg    BS2000:POSIX*:*:*)
1247b8f75c19Smrg	echo bs2000-siemens-sysv
12487e4fd55aSmrg	exit ;;
1249b8f75c19Smrg    DS/*:UNIX_System_V:*:*)
1250b8f75c19Smrg	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
12517e4fd55aSmrg	exit ;;
1252b8f75c19Smrg    *:Plan9:*:*)
1253b8f75c19Smrg	# "uname -m" is not consistent, so use $cputype instead. 386
1254b8f75c19Smrg	# is converted to i386 for consistency with other x86
1255b8f75c19Smrg	# operating systems.
1256b8f75c19Smrg	if test "$cputype" = "386"; then
1257b8f75c19Smrg	    UNAME_MACHINE=i386
1258b8f75c19Smrg	else
1259b8f75c19Smrg	    UNAME_MACHINE="$cputype"
1260b8f75c19Smrg	fi
1261b8f75c19Smrg	echo ${UNAME_MACHINE}-unknown-plan9
12627e4fd55aSmrg	exit ;;
1263b8f75c19Smrg    *:TOPS-10:*:*)
1264b8f75c19Smrg	echo pdp10-unknown-tops10
12657e4fd55aSmrg	exit ;;
1266b8f75c19Smrg    *:TENEX:*:*)
1267b8f75c19Smrg	echo pdp10-unknown-tenex
12687e4fd55aSmrg	exit ;;
1269b8f75c19Smrg    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1270b8f75c19Smrg	echo pdp10-dec-tops20
12717e4fd55aSmrg	exit ;;
1272b8f75c19Smrg    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1273b8f75c19Smrg	echo pdp10-xkl-tops20
12747e4fd55aSmrg	exit ;;
1275b8f75c19Smrg    *:TOPS-20:*:*)
1276b8f75c19Smrg	echo pdp10-unknown-tops20
12777e4fd55aSmrg	exit ;;
1278b8f75c19Smrg    *:ITS:*:*)
1279b8f75c19Smrg	echo pdp10-unknown-its
12807e4fd55aSmrg	exit ;;
1281b8f75c19Smrg    SEI:*:*:SEIUX)
1282b8f75c19Smrg        echo mips-sei-seiux${UNAME_RELEASE}
12837e4fd55aSmrg	exit ;;
12847e4fd55aSmrg    *:DragonFly:*:*)
12857e4fd55aSmrg	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
12867e4fd55aSmrg	exit ;;
12877e4fd55aSmrg    *:*VMS:*:*)
12887e4fd55aSmrg    	UNAME_MACHINE=`(uname -p) 2>/dev/null`
12897e4fd55aSmrg	case "${UNAME_MACHINE}" in
12907e4fd55aSmrg	    A*) echo alpha-dec-vms ; exit ;;
12917e4fd55aSmrg	    I*) echo ia64-dec-vms ; exit ;;
12927e4fd55aSmrg	    V*) echo vax-dec-vms ; exit ;;
12937e4fd55aSmrg	esac ;;
12947e4fd55aSmrg    *:XENIX:*:SysV)
12957e4fd55aSmrg	echo i386-pc-xenix
12967e4fd55aSmrg	exit ;;
12977e4fd55aSmrg    i*86:skyos:*:*)
12987e4fd55aSmrg	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
12997e4fd55aSmrg	exit ;;
13007e4fd55aSmrg    i*86:rdos:*:*)
13017e4fd55aSmrg	echo ${UNAME_MACHINE}-pc-rdos
13027e4fd55aSmrg	exit ;;
13037e4fd55aSmrg    i*86:AROS:*:*)
13047e4fd55aSmrg	echo ${UNAME_MACHINE}-pc-aros
13057e4fd55aSmrg	exit ;;
1306b8f75c19Smrgesac
1307b8f75c19Smrg
1308b8f75c19Smrg#echo '(No uname command or uname output not recognized.)' 1>&2
1309b8f75c19Smrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
1310b8f75c19Smrg
1311b8f75c19Smrgeval $set_cc_for_build
1312b8f75c19Smrgcat >$dummy.c <<EOF
1313b8f75c19Smrg#ifdef _SEQUENT_
1314b8f75c19Smrg# include <sys/types.h>
1315b8f75c19Smrg# include <sys/utsname.h>
1316b8f75c19Smrg#endif
1317b8f75c19Smrgmain ()
1318b8f75c19Smrg{
1319b8f75c19Smrg#if defined (sony)
1320b8f75c19Smrg#if defined (MIPSEB)
1321b8f75c19Smrg  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
1322b8f75c19Smrg     I don't know....  */
1323b8f75c19Smrg  printf ("mips-sony-bsd\n"); exit (0);
1324b8f75c19Smrg#else
1325b8f75c19Smrg#include <sys/param.h>
1326b8f75c19Smrg  printf ("m68k-sony-newsos%s\n",
1327b8f75c19Smrg#ifdef NEWSOS4
1328b8f75c19Smrg          "4"
1329b8f75c19Smrg#else
1330b8f75c19Smrg	  ""
1331b8f75c19Smrg#endif
1332b8f75c19Smrg         ); exit (0);
1333b8f75c19Smrg#endif
1334b8f75c19Smrg#endif
1335b8f75c19Smrg
1336b8f75c19Smrg#if defined (__arm) && defined (__acorn) && defined (__unix)
13377e4fd55aSmrg  printf ("arm-acorn-riscix\n"); exit (0);
1338b8f75c19Smrg#endif
1339b8f75c19Smrg
1340b8f75c19Smrg#if defined (hp300) && !defined (hpux)
1341b8f75c19Smrg  printf ("m68k-hp-bsd\n"); exit (0);
1342b8f75c19Smrg#endif
1343b8f75c19Smrg
1344b8f75c19Smrg#if defined (NeXT)
1345b8f75c19Smrg#if !defined (__ARCHITECTURE__)
1346b8f75c19Smrg#define __ARCHITECTURE__ "m68k"
1347b8f75c19Smrg#endif
1348b8f75c19Smrg  int version;
1349b8f75c19Smrg  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
1350b8f75c19Smrg  if (version < 4)
1351b8f75c19Smrg    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
1352b8f75c19Smrg  else
1353b8f75c19Smrg    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
1354b8f75c19Smrg  exit (0);
1355b8f75c19Smrg#endif
1356b8f75c19Smrg
1357b8f75c19Smrg#if defined (MULTIMAX) || defined (n16)
1358b8f75c19Smrg#if defined (UMAXV)
1359b8f75c19Smrg  printf ("ns32k-encore-sysv\n"); exit (0);
1360b8f75c19Smrg#else
1361b8f75c19Smrg#if defined (CMU)
1362b8f75c19Smrg  printf ("ns32k-encore-mach\n"); exit (0);
1363b8f75c19Smrg#else
1364b8f75c19Smrg  printf ("ns32k-encore-bsd\n"); exit (0);
1365b8f75c19Smrg#endif
1366b8f75c19Smrg#endif
1367b8f75c19Smrg#endif
1368b8f75c19Smrg
1369b8f75c19Smrg#if defined (__386BSD__)
1370b8f75c19Smrg  printf ("i386-pc-bsd\n"); exit (0);
1371b8f75c19Smrg#endif
1372b8f75c19Smrg
1373b8f75c19Smrg#if defined (sequent)
1374b8f75c19Smrg#if defined (i386)
1375b8f75c19Smrg  printf ("i386-sequent-dynix\n"); exit (0);
1376b8f75c19Smrg#endif
1377b8f75c19Smrg#if defined (ns32000)
1378b8f75c19Smrg  printf ("ns32k-sequent-dynix\n"); exit (0);
1379b8f75c19Smrg#endif
1380b8f75c19Smrg#endif
1381b8f75c19Smrg
1382b8f75c19Smrg#if defined (_SEQUENT_)
1383b8f75c19Smrg    struct utsname un;
1384b8f75c19Smrg
1385b8f75c19Smrg    uname(&un);
1386b8f75c19Smrg
1387b8f75c19Smrg    if (strncmp(un.version, "V2", 2) == 0) {
1388b8f75c19Smrg	printf ("i386-sequent-ptx2\n"); exit (0);
1389b8f75c19Smrg    }
1390b8f75c19Smrg    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
1391b8f75c19Smrg	printf ("i386-sequent-ptx1\n"); exit (0);
1392b8f75c19Smrg    }
1393b8f75c19Smrg    printf ("i386-sequent-ptx\n"); exit (0);
1394b8f75c19Smrg
1395b8f75c19Smrg#endif
1396b8f75c19Smrg
1397b8f75c19Smrg#if defined (vax)
1398b8f75c19Smrg# if !defined (ultrix)
1399b8f75c19Smrg#  include <sys/param.h>
1400b8f75c19Smrg#  if defined (BSD)
1401b8f75c19Smrg#   if BSD == 43
1402b8f75c19Smrg      printf ("vax-dec-bsd4.3\n"); exit (0);
1403b8f75c19Smrg#   else
1404b8f75c19Smrg#    if BSD == 199006
1405b8f75c19Smrg      printf ("vax-dec-bsd4.3reno\n"); exit (0);
1406b8f75c19Smrg#    else
1407b8f75c19Smrg      printf ("vax-dec-bsd\n"); exit (0);
1408b8f75c19Smrg#    endif
1409b8f75c19Smrg#   endif
1410b8f75c19Smrg#  else
1411b8f75c19Smrg    printf ("vax-dec-bsd\n"); exit (0);
1412b8f75c19Smrg#  endif
1413b8f75c19Smrg# else
1414b8f75c19Smrg    printf ("vax-dec-ultrix\n"); exit (0);
1415b8f75c19Smrg# endif
1416b8f75c19Smrg#endif
1417b8f75c19Smrg
1418b8f75c19Smrg#if defined (alliant) && defined (i860)
1419b8f75c19Smrg  printf ("i860-alliant-bsd\n"); exit (0);
1420b8f75c19Smrg#endif
1421b8f75c19Smrg
1422b8f75c19Smrg  exit (1);
1423b8f75c19Smrg}
1424b8f75c19SmrgEOF
1425b8f75c19Smrg
14267e4fd55aSmrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
14277e4fd55aSmrg	{ echo "$SYSTEM_NAME"; exit; }
1428b8f75c19Smrg
1429b8f75c19Smrg# Apollos put the system type in the environment.
1430b8f75c19Smrg
14317e4fd55aSmrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
1432b8f75c19Smrg
1433b8f75c19Smrg# Convex versions that predate uname can use getsysinfo(1)
1434b8f75c19Smrg
1435b8f75c19Smrgif [ -x /usr/convex/getsysinfo ]
1436b8f75c19Smrgthen
1437b8f75c19Smrg    case `getsysinfo -f cpu_type` in
1438b8f75c19Smrg    c1*)
1439b8f75c19Smrg	echo c1-convex-bsd
14407e4fd55aSmrg	exit ;;
1441b8f75c19Smrg    c2*)
1442b8f75c19Smrg	if getsysinfo -f scalar_acc
1443b8f75c19Smrg	then echo c32-convex-bsd
1444b8f75c19Smrg	else echo c2-convex-bsd
1445b8f75c19Smrg	fi
14467e4fd55aSmrg	exit ;;
1447b8f75c19Smrg    c34*)
1448b8f75c19Smrg	echo c34-convex-bsd
14497e4fd55aSmrg	exit ;;
1450b8f75c19Smrg    c38*)
1451b8f75c19Smrg	echo c38-convex-bsd
14527e4fd55aSmrg	exit ;;
1453b8f75c19Smrg    c4*)
1454b8f75c19Smrg	echo c4-convex-bsd
14557e4fd55aSmrg	exit ;;
1456b8f75c19Smrg    esac
1457b8f75c19Smrgfi
1458b8f75c19Smrg
1459b8f75c19Smrgcat >&2 <<EOF
1460b8f75c19Smrg$0: unable to guess system type
1461b8f75c19Smrg
1462b8f75c19SmrgThis script, last modified $timestamp, has failed to recognize
1463b8f75c19Smrgthe operating system you are using. It is advised that you
1464b8f75c19Smrgdownload the most up to date version of the config scripts from
1465b8f75c19Smrg
14667e4fd55aSmrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
14677e4fd55aSmrgand
14687e4fd55aSmrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
1469b8f75c19Smrg
1470b8f75c19SmrgIf the version you run ($0) is already up to date, please
1471b8f75c19Smrgsend the following data and any information you think might be
1472b8f75c19Smrgpertinent to <config-patches@gnu.org> in order to provide the needed
1473b8f75c19Smrginformation to handle your system.
1474b8f75c19Smrg
1475b8f75c19Smrgconfig.guess timestamp = $timestamp
1476b8f75c19Smrg
1477b8f75c19Smrguname -m = `(uname -m) 2>/dev/null || echo unknown`
1478b8f75c19Smrguname -r = `(uname -r) 2>/dev/null || echo unknown`
1479b8f75c19Smrguname -s = `(uname -s) 2>/dev/null || echo unknown`
1480b8f75c19Smrguname -v = `(uname -v) 2>/dev/null || echo unknown`
1481b8f75c19Smrg
1482b8f75c19Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1483b8f75c19Smrg/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
1484b8f75c19Smrg
1485b8f75c19Smrghostinfo               = `(hostinfo) 2>/dev/null`
1486b8f75c19Smrg/bin/universe          = `(/bin/universe) 2>/dev/null`
1487b8f75c19Smrg/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
1488b8f75c19Smrg/bin/arch              = `(/bin/arch) 2>/dev/null`
1489b8f75c19Smrg/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
1490b8f75c19Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1491b8f75c19Smrg
1492b8f75c19SmrgUNAME_MACHINE = ${UNAME_MACHINE}
1493b8f75c19SmrgUNAME_RELEASE = ${UNAME_RELEASE}
1494b8f75c19SmrgUNAME_SYSTEM  = ${UNAME_SYSTEM}
1495b8f75c19SmrgUNAME_VERSION = ${UNAME_VERSION}
1496b8f75c19SmrgEOF
1497b8f75c19Smrg
1498b8f75c19Smrgexit 1
1499b8f75c19Smrg
1500b8f75c19Smrg# Local variables:
1501b8f75c19Smrg# eval: (add-hook 'write-file-hooks 'time-stamp)
1502b8f75c19Smrg# time-stamp-start: "timestamp='"
1503b8f75c19Smrg# time-stamp-format: "%:y-%02m-%02d"
1504b8f75c19Smrg# time-stamp-end: "'"
1505b8f75c19Smrg# End:
1506