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