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