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