config.guess revision 444c061a
1444c061aSmrg#! /bin/sh
2444c061aSmrg# Attempt to guess a canonical system name.
3444c061aSmrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4444c061aSmrg#   2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
5444c061aSmrg
6444c061aSmrgtimestamp='2005-12-13'
7444c061aSmrg
8444c061aSmrg# This file is free software; you can redistribute it and/or modify it
9444c061aSmrg# under the terms of the GNU General Public License as published by
10444c061aSmrg# the Free Software Foundation; either version 2 of the License, or
11444c061aSmrg# (at your option) any later version.
12444c061aSmrg#
13444c061aSmrg# This program is distributed in the hope that it will be useful, but
14444c061aSmrg# WITHOUT ANY WARRANTY; without even the implied warranty of
15444c061aSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16444c061aSmrg# General Public License for more details.
17444c061aSmrg#
18444c061aSmrg# You should have received a copy of the GNU General Public License
19444c061aSmrg# along with this program; if not, write to the Free Software
20444c061aSmrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
21444c061aSmrg# 02110-1301, USA.
22444c061aSmrg#
23444c061aSmrg# As a special exception to the GNU General Public License, if you
24444c061aSmrg# distribute this file as part of a program that contains a
25444c061aSmrg# configuration script generated by Autoconf, you may include it under
26444c061aSmrg# the same distribution terms that you use for the rest of that program.
27444c061aSmrg
28444c061aSmrg
29444c061aSmrg# Originally written by Per Bothner <per@bothner.com>.
30444c061aSmrg# Please send patches to <config-patches@gnu.org>.  Submit a context
31444c061aSmrg# diff and a properly formatted ChangeLog entry.
32444c061aSmrg#
33444c061aSmrg# This script attempts to guess a canonical system name similar to
34444c061aSmrg# config.sub.  If it succeeds, it prints the system name on stdout, and
35444c061aSmrg# exits with 0.  Otherwise, it exits with 1.
36444c061aSmrg#
37444c061aSmrg# The plan is that this can be called by configure scripts if you
38444c061aSmrg# don't specify an explicit build system type.
39444c061aSmrg
40444c061aSmrgme=`echo "$0" | sed -e 's,.*/,,'`
41444c061aSmrg
42444c061aSmrgusage="\
43444c061aSmrgUsage: $0 [OPTION]
44444c061aSmrg
45444c061aSmrgOutput the configuration name of the system \`$me' is run on.
46444c061aSmrg
47444c061aSmrgOperation modes:
48444c061aSmrg  -h, --help         print this help, then exit
49444c061aSmrg  -t, --time-stamp   print date of last modification, then exit
50444c061aSmrg  -v, --version      print version number, then exit
51444c061aSmrg
52444c061aSmrgReport bugs and patches to <config-patches@gnu.org>."
53444c061aSmrg
54444c061aSmrgversion="\
55444c061aSmrgGNU config.guess ($timestamp)
56444c061aSmrg
57444c061aSmrgOriginally written by Per Bothner.
58444c061aSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
59444c061aSmrgFree Software Foundation, Inc.
60444c061aSmrg
61444c061aSmrgThis is free software; see the source for copying conditions.  There is NO
62444c061aSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
63444c061aSmrg
64444c061aSmrghelp="
65444c061aSmrgTry \`$me --help' for more information."
66444c061aSmrg
67444c061aSmrg# Parse command line
68444c061aSmrgwhile test $# -gt 0 ; do
69444c061aSmrg  case $1 in
70444c061aSmrg    --time-stamp | --time* | -t )
71444c061aSmrg       echo "$timestamp" ; exit ;;
72444c061aSmrg    --version | -v )
73444c061aSmrg       echo "$version" ; exit ;;
74444c061aSmrg    --help | --h* | -h )
75444c061aSmrg       echo "$usage"; exit ;;
76444c061aSmrg    -- )     # Stop option processing
77444c061aSmrg       shift; break ;;
78444c061aSmrg    - )	# Use stdin as input.
79444c061aSmrg       break ;;
80444c061aSmrg    -* )
81444c061aSmrg       echo "$me: invalid option $1$help" >&2
82444c061aSmrg       exit 1 ;;
83444c061aSmrg    * )
84444c061aSmrg       break ;;
85444c061aSmrg  esac
86444c061aSmrgdone
87444c061aSmrg
88444c061aSmrgif test $# != 0; then
89444c061aSmrg  echo "$me: too many arguments$help" >&2
90444c061aSmrg  exit 1
91444c061aSmrgfi
92444c061aSmrg
93444c061aSmrgtrap 'exit 1' 1 2 15
94444c061aSmrg
95444c061aSmrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
96444c061aSmrg# compiler to aid in system detection is discouraged as it requires
97444c061aSmrg# temporary files to be created and, as you can see below, it is a
98444c061aSmrg# headache to deal with in a portable fashion.
99444c061aSmrg
100444c061aSmrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
101444c061aSmrg# use `HOST_CC' if defined, but it is deprecated.
102444c061aSmrg
103444c061aSmrg# Portable tmp directory creation inspired by the Autoconf team.
104444c061aSmrg
105444c061aSmrgset_cc_for_build='
106444c061aSmrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
107444c061aSmrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
108444c061aSmrg: ${TMPDIR=/tmp} ;
109444c061aSmrg { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
110444c061aSmrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
111444c061aSmrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
112444c061aSmrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
113444c061aSmrgdummy=$tmp/dummy ;
114444c061aSmrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
115444c061aSmrgcase $CC_FOR_BUILD,$HOST_CC,$CC in
116444c061aSmrg ,,)    echo "int x;" > $dummy.c ;
117444c061aSmrg	for c in cc gcc c89 c99 ; do
118444c061aSmrg	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
119444c061aSmrg	     CC_FOR_BUILD="$c"; break ;
120444c061aSmrg	  fi ;
121444c061aSmrg	done ;
122444c061aSmrg	if test x"$CC_FOR_BUILD" = x ; then
123444c061aSmrg	  CC_FOR_BUILD=no_compiler_found ;
124444c061aSmrg	fi
125444c061aSmrg	;;
126444c061aSmrg ,,*)   CC_FOR_BUILD=$CC ;;
127444c061aSmrg ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
128444c061aSmrgesac ; set_cc_for_build= ;'
129444c061aSmrg
130444c061aSmrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
131444c061aSmrg# (ghazi@noc.rutgers.edu 1994-08-24)
132444c061aSmrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then
133444c061aSmrg	PATH=$PATH:/.attbin ; export PATH
134444c061aSmrgfi
135444c061aSmrg
136444c061aSmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
137444c061aSmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
138444c061aSmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
139444c061aSmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
140444c061aSmrg
141444c061aSmrg# Note: order is significant - the case branches are not exclusive.
142444c061aSmrg
143444c061aSmrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
144444c061aSmrg    *:NetBSD:*:*)
145444c061aSmrg	# NetBSD (nbsd) targets should (where applicable) match one or
146444c061aSmrg	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
147444c061aSmrg	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
148444c061aSmrg	# switched to ELF, *-*-netbsd* would select the old
149444c061aSmrg	# object file format.  This provides both forward
150444c061aSmrg	# compatibility and a consistent mechanism for selecting the
151444c061aSmrg	# object file format.
152444c061aSmrg	#
153444c061aSmrg	# Note: NetBSD doesn't particularly care about the vendor
154444c061aSmrg	# portion of the name.  We always set it to "unknown".
155444c061aSmrg	sysctl="sysctl -n hw.machine_arch"
156444c061aSmrg	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
157444c061aSmrg	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
158444c061aSmrg	case "${UNAME_MACHINE_ARCH}" in
159444c061aSmrg	    armeb) machine=armeb-unknown ;;
160444c061aSmrg	    arm*) machine=arm-unknown ;;
161444c061aSmrg	    sh3el) machine=shl-unknown ;;
162444c061aSmrg	    sh3eb) machine=sh-unknown ;;
163444c061aSmrg	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
164444c061aSmrg	esac
165444c061aSmrg	# The Operating System including object format, if it has switched
166444c061aSmrg	# to ELF recently, or will in the future.
167444c061aSmrg	case "${UNAME_MACHINE_ARCH}" in
168444c061aSmrg	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
169444c061aSmrg		eval $set_cc_for_build
170444c061aSmrg		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
171444c061aSmrg			| grep __ELF__ >/dev/null
172444c061aSmrg		then
173444c061aSmrg		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
174444c061aSmrg		    # Return netbsd for either.  FIX?
175444c061aSmrg		    os=netbsd
176444c061aSmrg		else
177444c061aSmrg		    os=netbsdelf
178444c061aSmrg		fi
179444c061aSmrg		;;
180444c061aSmrg	    *)
181444c061aSmrg	        os=netbsd
182444c061aSmrg		;;
183444c061aSmrg	esac
184444c061aSmrg	# The OS release
185444c061aSmrg	# Debian GNU/NetBSD machines have a different userland, and
186444c061aSmrg	# thus, need a distinct triplet. However, they do not need
187444c061aSmrg	# kernel version information, so it can be replaced with a
188444c061aSmrg	# suitable tag, in the style of linux-gnu.
189444c061aSmrg	case "${UNAME_VERSION}" in
190444c061aSmrg	    Debian*)
191444c061aSmrg		release='-gnu'
192444c061aSmrg		;;
193444c061aSmrg	    *)
194444c061aSmrg		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
195444c061aSmrg		;;
196444c061aSmrg	esac
197444c061aSmrg	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
198444c061aSmrg	# contains redundant information, the shorter form:
199444c061aSmrg	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
200444c061aSmrg	echo "${machine}-${os}${release}"
201444c061aSmrg	exit ;;
202444c061aSmrg    *:OpenBSD:*:*)
203444c061aSmrg	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
204444c061aSmrg	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
205444c061aSmrg	exit ;;
206444c061aSmrg    *:ekkoBSD:*:*)
207444c061aSmrg	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
208444c061aSmrg	exit ;;
209444c061aSmrg    macppc:MirBSD:*:*)
210444c061aSmrg	echo powerppc-unknown-mirbsd${UNAME_RELEASE}
211444c061aSmrg	exit ;;
212444c061aSmrg    *:MirBSD:*:*)
213444c061aSmrg	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
214444c061aSmrg	exit ;;
215444c061aSmrg    alpha:OSF1:*:*)
216444c061aSmrg	case $UNAME_RELEASE in
217444c061aSmrg	*4.0)
218444c061aSmrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
219444c061aSmrg		;;
220444c061aSmrg	*5.*)
221444c061aSmrg	        UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
222444c061aSmrg		;;
223444c061aSmrg	esac
224444c061aSmrg	# According to Compaq, /usr/sbin/psrinfo has been available on
225444c061aSmrg	# OSF/1 and Tru64 systems produced since 1995.  I hope that
226444c061aSmrg	# covers most systems running today.  This code pipes the CPU
227444c061aSmrg	# types through head -n 1, so we only detect the type of CPU 0.
228444c061aSmrg	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
229444c061aSmrg	case "$ALPHA_CPU_TYPE" in
230444c061aSmrg	    "EV4 (21064)")
231444c061aSmrg		UNAME_MACHINE="alpha" ;;
232444c061aSmrg	    "EV4.5 (21064)")
233444c061aSmrg		UNAME_MACHINE="alpha" ;;
234444c061aSmrg	    "LCA4 (21066/21068)")
235444c061aSmrg		UNAME_MACHINE="alpha" ;;
236444c061aSmrg	    "EV5 (21164)")
237444c061aSmrg		UNAME_MACHINE="alphaev5" ;;
238444c061aSmrg	    "EV5.6 (21164A)")
239444c061aSmrg		UNAME_MACHINE="alphaev56" ;;
240444c061aSmrg	    "EV5.6 (21164PC)")
241444c061aSmrg		UNAME_MACHINE="alphapca56" ;;
242444c061aSmrg	    "EV5.7 (21164PC)")
243444c061aSmrg		UNAME_MACHINE="alphapca57" ;;
244444c061aSmrg	    "EV6 (21264)")
245444c061aSmrg		UNAME_MACHINE="alphaev6" ;;
246444c061aSmrg	    "EV6.7 (21264A)")
247444c061aSmrg		UNAME_MACHINE="alphaev67" ;;
248444c061aSmrg	    "EV6.8CB (21264C)")
249444c061aSmrg		UNAME_MACHINE="alphaev68" ;;
250444c061aSmrg	    "EV6.8AL (21264B)")
251444c061aSmrg		UNAME_MACHINE="alphaev68" ;;
252444c061aSmrg	    "EV6.8CX (21264D)")
253444c061aSmrg		UNAME_MACHINE="alphaev68" ;;
254444c061aSmrg	    "EV6.9A (21264/EV69A)")
255444c061aSmrg		UNAME_MACHINE="alphaev69" ;;
256444c061aSmrg	    "EV7 (21364)")
257444c061aSmrg		UNAME_MACHINE="alphaev7" ;;
258444c061aSmrg	    "EV7.9 (21364A)")
259444c061aSmrg		UNAME_MACHINE="alphaev79" ;;
260444c061aSmrg	esac
261444c061aSmrg	# A Pn.n version is a patched version.
262444c061aSmrg	# A Vn.n version is a released version.
263444c061aSmrg	# A Tn.n version is a released field test version.
264444c061aSmrg	# A Xn.n version is an unreleased experimental baselevel.
265444c061aSmrg	# 1.2 uses "1.2" for uname -r.
266444c061aSmrg	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
267444c061aSmrg	exit ;;
268444c061aSmrg    Alpha\ *:Windows_NT*:*)
269444c061aSmrg	# How do we know it's Interix rather than the generic POSIX subsystem?
270444c061aSmrg	# Should we change UNAME_MACHINE based on the output of uname instead
271444c061aSmrg	# of the specific Alpha model?
272444c061aSmrg	echo alpha-pc-interix
273444c061aSmrg	exit ;;
274444c061aSmrg    21064:Windows_NT:50:3)
275444c061aSmrg	echo alpha-dec-winnt3.5
276444c061aSmrg	exit ;;
277444c061aSmrg    Amiga*:UNIX_System_V:4.0:*)
278444c061aSmrg	echo m68k-unknown-sysv4
279444c061aSmrg	exit ;;
280444c061aSmrg    *:[Aa]miga[Oo][Ss]:*:*)
281444c061aSmrg	echo ${UNAME_MACHINE}-unknown-amigaos
282444c061aSmrg	exit ;;
283444c061aSmrg    *:[Mm]orph[Oo][Ss]:*:*)
284444c061aSmrg	echo ${UNAME_MACHINE}-unknown-morphos
285444c061aSmrg	exit ;;
286444c061aSmrg    *:OS/390:*:*)
287444c061aSmrg	echo i370-ibm-openedition
288444c061aSmrg	exit ;;
289444c061aSmrg    *:z/VM:*:*)
290444c061aSmrg	echo s390-ibm-zvmoe
291444c061aSmrg	exit ;;
292444c061aSmrg    *:OS400:*:*)
293444c061aSmrg        echo powerpc-ibm-os400
294444c061aSmrg	exit ;;
295444c061aSmrg    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
296444c061aSmrg	echo arm-acorn-riscix${UNAME_RELEASE}
297444c061aSmrg	exit ;;
298444c061aSmrg    arm:riscos:*:*|arm:RISCOS:*:*)
299444c061aSmrg	echo arm-unknown-riscos
300444c061aSmrg	exit ;;
301444c061aSmrg    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
302444c061aSmrg	echo hppa1.1-hitachi-hiuxmpp
303444c061aSmrg	exit ;;
304444c061aSmrg    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
305444c061aSmrg	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
306444c061aSmrg	if test "`(/bin/universe) 2>/dev/null`" = att ; then
307444c061aSmrg		echo pyramid-pyramid-sysv3
308444c061aSmrg	else
309444c061aSmrg		echo pyramid-pyramid-bsd
310444c061aSmrg	fi
311444c061aSmrg	exit ;;
312444c061aSmrg    NILE*:*:*:dcosx)
313444c061aSmrg	echo pyramid-pyramid-svr4
314444c061aSmrg	exit ;;
315444c061aSmrg    DRS?6000:unix:4.0:6*)
316444c061aSmrg	echo sparc-icl-nx6
317444c061aSmrg	exit ;;
318444c061aSmrg    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
319444c061aSmrg	case `/usr/bin/uname -p` in
320444c061aSmrg	    sparc) echo sparc-icl-nx7; exit ;;
321444c061aSmrg	esac ;;
322444c061aSmrg    sun4H:SunOS:5.*:*)
323444c061aSmrg	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
324444c061aSmrg	exit ;;
325444c061aSmrg    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
326444c061aSmrg	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
327444c061aSmrg	exit ;;
328444c061aSmrg    i86pc:SunOS:5.*:*)
329444c061aSmrg	echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
330444c061aSmrg	exit ;;
331444c061aSmrg    sun4*:SunOS:6*:*)
332444c061aSmrg	# According to config.sub, this is the proper way to canonicalize
333444c061aSmrg	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
334444c061aSmrg	# it's likely to be more like Solaris than SunOS4.
335444c061aSmrg	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
336444c061aSmrg	exit ;;
337444c061aSmrg    sun4*:SunOS:*:*)
338444c061aSmrg	case "`/usr/bin/arch -k`" in
339444c061aSmrg	    Series*|S4*)
340444c061aSmrg		UNAME_RELEASE=`uname -v`
341444c061aSmrg		;;
342444c061aSmrg	esac
343444c061aSmrg	# Japanese Language versions have a version number like `4.1.3-JL'.
344444c061aSmrg	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
345444c061aSmrg	exit ;;
346444c061aSmrg    sun3*:SunOS:*:*)
347444c061aSmrg	echo m68k-sun-sunos${UNAME_RELEASE}
348444c061aSmrg	exit ;;
349444c061aSmrg    sun*:*:4.2BSD:*)
350444c061aSmrg	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
351444c061aSmrg	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
352444c061aSmrg	case "`/bin/arch`" in
353444c061aSmrg	    sun3)
354444c061aSmrg		echo m68k-sun-sunos${UNAME_RELEASE}
355444c061aSmrg		;;
356444c061aSmrg	    sun4)
357444c061aSmrg		echo sparc-sun-sunos${UNAME_RELEASE}
358444c061aSmrg		;;
359444c061aSmrg	esac
360444c061aSmrg	exit ;;
361444c061aSmrg    aushp:SunOS:*:*)
362444c061aSmrg	echo sparc-auspex-sunos${UNAME_RELEASE}
363444c061aSmrg	exit ;;
364444c061aSmrg    # The situation for MiNT is a little confusing.  The machine name
365444c061aSmrg    # can be virtually everything (everything which is not
366444c061aSmrg    # "atarist" or "atariste" at least should have a processor
367444c061aSmrg    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
368444c061aSmrg    # to the lowercase version "mint" (or "freemint").  Finally
369444c061aSmrg    # the system name "TOS" denotes a system which is actually not
370444c061aSmrg    # MiNT.  But MiNT is downward compatible to TOS, so this should
371444c061aSmrg    # be no problem.
372444c061aSmrg    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
373444c061aSmrg        echo m68k-atari-mint${UNAME_RELEASE}
374444c061aSmrg	exit ;;
375444c061aSmrg    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
376444c061aSmrg	echo m68k-atari-mint${UNAME_RELEASE}
377444c061aSmrg        exit ;;
378444c061aSmrg    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
379444c061aSmrg        echo m68k-atari-mint${UNAME_RELEASE}
380444c061aSmrg	exit ;;
381444c061aSmrg    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
382444c061aSmrg        echo m68k-milan-mint${UNAME_RELEASE}
383444c061aSmrg        exit ;;
384444c061aSmrg    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
385444c061aSmrg        echo m68k-hades-mint${UNAME_RELEASE}
386444c061aSmrg        exit ;;
387444c061aSmrg    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
388444c061aSmrg        echo m68k-unknown-mint${UNAME_RELEASE}
389444c061aSmrg        exit ;;
390444c061aSmrg    m68k:machten:*:*)
391444c061aSmrg	echo m68k-apple-machten${UNAME_RELEASE}
392444c061aSmrg	exit ;;
393444c061aSmrg    powerpc:machten:*:*)
394444c061aSmrg	echo powerpc-apple-machten${UNAME_RELEASE}
395444c061aSmrg	exit ;;
396444c061aSmrg    RISC*:Mach:*:*)
397444c061aSmrg	echo mips-dec-mach_bsd4.3
398444c061aSmrg	exit ;;
399444c061aSmrg    RISC*:ULTRIX:*:*)
400444c061aSmrg	echo mips-dec-ultrix${UNAME_RELEASE}
401444c061aSmrg	exit ;;
402444c061aSmrg    VAX*:ULTRIX*:*:*)
403444c061aSmrg	echo vax-dec-ultrix${UNAME_RELEASE}
404444c061aSmrg	exit ;;
405444c061aSmrg    2020:CLIX:*:* | 2430:CLIX:*:*)
406444c061aSmrg	echo clipper-intergraph-clix${UNAME_RELEASE}
407444c061aSmrg	exit ;;
408444c061aSmrg    mips:*:*:UMIPS | mips:*:*:RISCos)
409444c061aSmrg	eval $set_cc_for_build
410444c061aSmrg	sed 's/^	//' << EOF >$dummy.c
411444c061aSmrg#ifdef __cplusplus
412444c061aSmrg#include <stdio.h>  /* for printf() prototype */
413444c061aSmrg	int main (int argc, char *argv[]) {
414444c061aSmrg#else
415444c061aSmrg	int main (argc, argv) int argc; char *argv[]; {
416444c061aSmrg#endif
417444c061aSmrg	#if defined (host_mips) && defined (MIPSEB)
418444c061aSmrg	#if defined (SYSTYPE_SYSV)
419444c061aSmrg	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
420444c061aSmrg	#endif
421444c061aSmrg	#if defined (SYSTYPE_SVR4)
422444c061aSmrg	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
423444c061aSmrg	#endif
424444c061aSmrg	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
425444c061aSmrg	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
426444c061aSmrg	#endif
427444c061aSmrg	#endif
428444c061aSmrg	  exit (-1);
429444c061aSmrg	}
430444c061aSmrgEOF
431444c061aSmrg	$CC_FOR_BUILD -o $dummy $dummy.c &&
432444c061aSmrg	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
433444c061aSmrg	  SYSTEM_NAME=`$dummy $dummyarg` &&
434444c061aSmrg	    { echo "$SYSTEM_NAME"; exit; }
435444c061aSmrg	echo mips-mips-riscos${UNAME_RELEASE}
436444c061aSmrg	exit ;;
437444c061aSmrg    Motorola:PowerMAX_OS:*:*)
438444c061aSmrg	echo powerpc-motorola-powermax
439444c061aSmrg	exit ;;
440444c061aSmrg    Motorola:*:4.3:PL8-*)
441444c061aSmrg	echo powerpc-harris-powermax
442444c061aSmrg	exit ;;
443444c061aSmrg    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
444444c061aSmrg	echo powerpc-harris-powermax
445444c061aSmrg	exit ;;
446444c061aSmrg    Night_Hawk:Power_UNIX:*:*)
447444c061aSmrg	echo powerpc-harris-powerunix
448444c061aSmrg	exit ;;
449444c061aSmrg    m88k:CX/UX:7*:*)
450444c061aSmrg	echo m88k-harris-cxux7
451444c061aSmrg	exit ;;
452444c061aSmrg    m88k:*:4*:R4*)
453444c061aSmrg	echo m88k-motorola-sysv4
454444c061aSmrg	exit ;;
455444c061aSmrg    m88k:*:3*:R3*)
456444c061aSmrg	echo m88k-motorola-sysv3
457444c061aSmrg	exit ;;
458444c061aSmrg    AViiON:dgux:*:*)
459444c061aSmrg        # DG/UX returns AViiON for all architectures
460444c061aSmrg        UNAME_PROCESSOR=`/usr/bin/uname -p`
461444c061aSmrg	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
462444c061aSmrg	then
463444c061aSmrg	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
464444c061aSmrg	       [ ${TARGET_BINARY_INTERFACE}x = x ]
465444c061aSmrg	    then
466444c061aSmrg		echo m88k-dg-dgux${UNAME_RELEASE}
467444c061aSmrg	    else
468444c061aSmrg		echo m88k-dg-dguxbcs${UNAME_RELEASE}
469444c061aSmrg	    fi
470444c061aSmrg	else
471444c061aSmrg	    echo i586-dg-dgux${UNAME_RELEASE}
472444c061aSmrg	fi
473444c061aSmrg 	exit ;;
474444c061aSmrg    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
475444c061aSmrg	echo m88k-dolphin-sysv3
476444c061aSmrg	exit ;;
477444c061aSmrg    M88*:*:R3*:*)
478444c061aSmrg	# Delta 88k system running SVR3
479444c061aSmrg	echo m88k-motorola-sysv3
480444c061aSmrg	exit ;;
481444c061aSmrg    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
482444c061aSmrg	echo m88k-tektronix-sysv3
483444c061aSmrg	exit ;;
484444c061aSmrg    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
485444c061aSmrg	echo m68k-tektronix-bsd
486444c061aSmrg	exit ;;
487444c061aSmrg    *:IRIX*:*:*)
488444c061aSmrg	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
489444c061aSmrg	exit ;;
490444c061aSmrg    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
491444c061aSmrg	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
492444c061aSmrg	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
493444c061aSmrg    i*86:AIX:*:*)
494444c061aSmrg	echo i386-ibm-aix
495444c061aSmrg	exit ;;
496444c061aSmrg    ia64:AIX:*:*)
497444c061aSmrg	if [ -x /usr/bin/oslevel ] ; then
498444c061aSmrg		IBM_REV=`/usr/bin/oslevel`
499444c061aSmrg	else
500444c061aSmrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
501444c061aSmrg	fi
502444c061aSmrg	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
503444c061aSmrg	exit ;;
504444c061aSmrg    *:AIX:2:3)
505444c061aSmrg	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
506444c061aSmrg		eval $set_cc_for_build
507444c061aSmrg		sed 's/^		//' << EOF >$dummy.c
508444c061aSmrg		#include <sys/systemcfg.h>
509444c061aSmrg
510444c061aSmrg		main()
511444c061aSmrg			{
512444c061aSmrg			if (!__power_pc())
513444c061aSmrg				exit(1);
514444c061aSmrg			puts("powerpc-ibm-aix3.2.5");
515444c061aSmrg			exit(0);
516444c061aSmrg			}
517444c061aSmrgEOF
518444c061aSmrg		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
519444c061aSmrg		then
520444c061aSmrg			echo "$SYSTEM_NAME"
521444c061aSmrg		else
522444c061aSmrg			echo rs6000-ibm-aix3.2.5
523444c061aSmrg		fi
524444c061aSmrg	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
525444c061aSmrg		echo rs6000-ibm-aix3.2.4
526444c061aSmrg	else
527444c061aSmrg		echo rs6000-ibm-aix3.2
528444c061aSmrg	fi
529444c061aSmrg	exit ;;
530444c061aSmrg    *:AIX:*:[45])
531444c061aSmrg	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
532444c061aSmrg	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
533444c061aSmrg		IBM_ARCH=rs6000
534444c061aSmrg	else
535444c061aSmrg		IBM_ARCH=powerpc
536444c061aSmrg	fi
537444c061aSmrg	if [ -x /usr/bin/oslevel ] ; then
538444c061aSmrg		IBM_REV=`/usr/bin/oslevel`
539444c061aSmrg	else
540444c061aSmrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
541444c061aSmrg	fi
542444c061aSmrg	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
543444c061aSmrg	exit ;;
544444c061aSmrg    *:AIX:*:*)
545444c061aSmrg	echo rs6000-ibm-aix
546444c061aSmrg	exit ;;
547444c061aSmrg    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
548444c061aSmrg	echo romp-ibm-bsd4.4
549444c061aSmrg	exit ;;
550444c061aSmrg    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
551444c061aSmrg	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
552444c061aSmrg	exit ;;                             # report: romp-ibm BSD 4.3
553444c061aSmrg    *:BOSX:*:*)
554444c061aSmrg	echo rs6000-bull-bosx
555444c061aSmrg	exit ;;
556444c061aSmrg    DPX/2?00:B.O.S.:*:*)
557444c061aSmrg	echo m68k-bull-sysv3
558444c061aSmrg	exit ;;
559444c061aSmrg    9000/[34]??:4.3bsd:1.*:*)
560444c061aSmrg	echo m68k-hp-bsd
561444c061aSmrg	exit ;;
562444c061aSmrg    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
563444c061aSmrg	echo m68k-hp-bsd4.4
564444c061aSmrg	exit ;;
565444c061aSmrg    9000/[34678]??:HP-UX:*:*)
566444c061aSmrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
567444c061aSmrg	case "${UNAME_MACHINE}" in
568444c061aSmrg	    9000/31? )            HP_ARCH=m68000 ;;
569444c061aSmrg	    9000/[34]?? )         HP_ARCH=m68k ;;
570444c061aSmrg	    9000/[678][0-9][0-9])
571444c061aSmrg		if [ -x /usr/bin/getconf ]; then
572444c061aSmrg		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
573444c061aSmrg                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
574444c061aSmrg                    case "${sc_cpu_version}" in
575444c061aSmrg                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
576444c061aSmrg                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
577444c061aSmrg                      532)                      # CPU_PA_RISC2_0
578444c061aSmrg                        case "${sc_kernel_bits}" in
579444c061aSmrg                          32) HP_ARCH="hppa2.0n" ;;
580444c061aSmrg                          64) HP_ARCH="hppa2.0w" ;;
581444c061aSmrg			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
582444c061aSmrg                        esac ;;
583444c061aSmrg                    esac
584444c061aSmrg		fi
585444c061aSmrg		if [ "${HP_ARCH}" = "" ]; then
586444c061aSmrg		    eval $set_cc_for_build
587444c061aSmrg		    sed 's/^              //' << EOF >$dummy.c
588444c061aSmrg
589444c061aSmrg              #define _HPUX_SOURCE
590444c061aSmrg              #include <stdlib.h>
591444c061aSmrg              #include <unistd.h>
592444c061aSmrg
593444c061aSmrg              int main ()
594444c061aSmrg              {
595444c061aSmrg              #if defined(_SC_KERNEL_BITS)
596444c061aSmrg                  long bits = sysconf(_SC_KERNEL_BITS);
597444c061aSmrg              #endif
598444c061aSmrg                  long cpu  = sysconf (_SC_CPU_VERSION);
599444c061aSmrg
600444c061aSmrg                  switch (cpu)
601444c061aSmrg              	{
602444c061aSmrg              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
603444c061aSmrg              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
604444c061aSmrg              	case CPU_PA_RISC2_0:
605444c061aSmrg              #if defined(_SC_KERNEL_BITS)
606444c061aSmrg              	    switch (bits)
607444c061aSmrg              		{
608444c061aSmrg              		case 64: puts ("hppa2.0w"); break;
609444c061aSmrg              		case 32: puts ("hppa2.0n"); break;
610444c061aSmrg              		default: puts ("hppa2.0"); break;
611444c061aSmrg              		} break;
612444c061aSmrg              #else  /* !defined(_SC_KERNEL_BITS) */
613444c061aSmrg              	    puts ("hppa2.0"); break;
614444c061aSmrg              #endif
615444c061aSmrg              	default: puts ("hppa1.0"); break;
616444c061aSmrg              	}
617444c061aSmrg                  exit (0);
618444c061aSmrg              }
619444c061aSmrgEOF
620444c061aSmrg		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
621444c061aSmrg		    test -z "$HP_ARCH" && HP_ARCH=hppa
622444c061aSmrg		fi ;;
623444c061aSmrg	esac
624444c061aSmrg	if [ ${HP_ARCH} = "hppa2.0w" ]
625444c061aSmrg	then
626444c061aSmrg	    eval $set_cc_for_build
627444c061aSmrg
628444c061aSmrg	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
629444c061aSmrg	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
630444c061aSmrg	    # generating 64-bit code.  GNU and HP use different nomenclature:
631444c061aSmrg	    #
632444c061aSmrg	    # $ CC_FOR_BUILD=cc ./config.guess
633444c061aSmrg	    # => hppa2.0w-hp-hpux11.23
634444c061aSmrg	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
635444c061aSmrg	    # => hppa64-hp-hpux11.23
636444c061aSmrg
637444c061aSmrg	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
638444c061aSmrg		grep __LP64__ >/dev/null
639444c061aSmrg	    then
640444c061aSmrg		HP_ARCH="hppa2.0w"
641444c061aSmrg	    else
642444c061aSmrg		HP_ARCH="hppa64"
643444c061aSmrg	    fi
644444c061aSmrg	fi
645444c061aSmrg	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
646444c061aSmrg	exit ;;
647444c061aSmrg    ia64:HP-UX:*:*)
648444c061aSmrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
649444c061aSmrg	echo ia64-hp-hpux${HPUX_REV}
650444c061aSmrg	exit ;;
651444c061aSmrg    3050*:HI-UX:*:*)
652444c061aSmrg	eval $set_cc_for_build
653444c061aSmrg	sed 's/^	//' << EOF >$dummy.c
654444c061aSmrg	#include <unistd.h>
655444c061aSmrg	int
656444c061aSmrg	main ()
657444c061aSmrg	{
658444c061aSmrg	  long cpu = sysconf (_SC_CPU_VERSION);
659444c061aSmrg	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
660444c061aSmrg	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
661444c061aSmrg	     results, however.  */
662444c061aSmrg	  if (CPU_IS_PA_RISC (cpu))
663444c061aSmrg	    {
664444c061aSmrg	      switch (cpu)
665444c061aSmrg		{
666444c061aSmrg		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
667444c061aSmrg		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
668444c061aSmrg		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
669444c061aSmrg		  default: puts ("hppa-hitachi-hiuxwe2"); break;
670444c061aSmrg		}
671444c061aSmrg	    }
672444c061aSmrg	  else if (CPU_IS_HP_MC68K (cpu))
673444c061aSmrg	    puts ("m68k-hitachi-hiuxwe2");
674444c061aSmrg	  else puts ("unknown-hitachi-hiuxwe2");
675444c061aSmrg	  exit (0);
676444c061aSmrg	}
677444c061aSmrgEOF
678444c061aSmrg	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
679444c061aSmrg		{ echo "$SYSTEM_NAME"; exit; }
680444c061aSmrg	echo unknown-hitachi-hiuxwe2
681444c061aSmrg	exit ;;
682444c061aSmrg    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
683444c061aSmrg	echo hppa1.1-hp-bsd
684444c061aSmrg	exit ;;
685444c061aSmrg    9000/8??:4.3bsd:*:*)
686444c061aSmrg	echo hppa1.0-hp-bsd
687444c061aSmrg	exit ;;
688444c061aSmrg    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
689444c061aSmrg	echo hppa1.0-hp-mpeix
690444c061aSmrg	exit ;;
691444c061aSmrg    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
692444c061aSmrg	echo hppa1.1-hp-osf
693444c061aSmrg	exit ;;
694444c061aSmrg    hp8??:OSF1:*:*)
695444c061aSmrg	echo hppa1.0-hp-osf
696444c061aSmrg	exit ;;
697444c061aSmrg    i*86:OSF1:*:*)
698444c061aSmrg	if [ -x /usr/sbin/sysversion ] ; then
699444c061aSmrg	    echo ${UNAME_MACHINE}-unknown-osf1mk
700444c061aSmrg	else
701444c061aSmrg	    echo ${UNAME_MACHINE}-unknown-osf1
702444c061aSmrg	fi
703444c061aSmrg	exit ;;
704444c061aSmrg    parisc*:Lites*:*:*)
705444c061aSmrg	echo hppa1.1-hp-lites
706444c061aSmrg	exit ;;
707444c061aSmrg    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
708444c061aSmrg	echo c1-convex-bsd
709444c061aSmrg        exit ;;
710444c061aSmrg    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
711444c061aSmrg	if getsysinfo -f scalar_acc
712444c061aSmrg	then echo c32-convex-bsd
713444c061aSmrg	else echo c2-convex-bsd
714444c061aSmrg	fi
715444c061aSmrg        exit ;;
716444c061aSmrg    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
717444c061aSmrg	echo c34-convex-bsd
718444c061aSmrg        exit ;;
719444c061aSmrg    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
720444c061aSmrg	echo c38-convex-bsd
721444c061aSmrg        exit ;;
722444c061aSmrg    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
723444c061aSmrg	echo c4-convex-bsd
724444c061aSmrg        exit ;;
725444c061aSmrg    CRAY*Y-MP:*:*:*)
726444c061aSmrg	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
727444c061aSmrg	exit ;;
728444c061aSmrg    CRAY*[A-Z]90:*:*:*)
729444c061aSmrg	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
730444c061aSmrg	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
731444c061aSmrg	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
732444c061aSmrg	      -e 's/\.[^.]*$/.X/'
733444c061aSmrg	exit ;;
734444c061aSmrg    CRAY*TS:*:*:*)
735444c061aSmrg	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
736444c061aSmrg	exit ;;
737444c061aSmrg    CRAY*T3E:*:*:*)
738444c061aSmrg	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
739444c061aSmrg	exit ;;
740444c061aSmrg    CRAY*SV1:*:*:*)
741444c061aSmrg	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
742444c061aSmrg	exit ;;
743444c061aSmrg    *:UNICOS/mp:*:*)
744444c061aSmrg	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
745444c061aSmrg	exit ;;
746444c061aSmrg    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
747444c061aSmrg	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
748444c061aSmrg        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
749444c061aSmrg        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
750444c061aSmrg        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
751444c061aSmrg        exit ;;
752444c061aSmrg    5000:UNIX_System_V:4.*:*)
753444c061aSmrg        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
754444c061aSmrg        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
755444c061aSmrg        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
756444c061aSmrg	exit ;;
757444c061aSmrg    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
758444c061aSmrg	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
759444c061aSmrg	exit ;;
760444c061aSmrg    sparc*:BSD/OS:*:*)
761444c061aSmrg	echo sparc-unknown-bsdi${UNAME_RELEASE}
762444c061aSmrg	exit ;;
763444c061aSmrg    *:BSD/OS:*:*)
764444c061aSmrg	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
765444c061aSmrg	exit ;;
766444c061aSmrg    *:FreeBSD:*:*)
767444c061aSmrg	echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
768444c061aSmrg	exit ;;
769444c061aSmrg    i*:CYGWIN*:*)
770444c061aSmrg	echo ${UNAME_MACHINE}-pc-cygwin
771444c061aSmrg	exit ;;
772444c061aSmrg    i*:MINGW*:*)
773444c061aSmrg	echo ${UNAME_MACHINE}-pc-mingw32
774444c061aSmrg	exit ;;
775444c061aSmrg    i*:windows32*:*)
776444c061aSmrg    	# uname -m includes "-pc" on this system.
777444c061aSmrg    	echo ${UNAME_MACHINE}-mingw32
778444c061aSmrg	exit ;;
779444c061aSmrg    i*:PW*:*)
780444c061aSmrg	echo ${UNAME_MACHINE}-pc-pw32
781444c061aSmrg	exit ;;
782444c061aSmrg    x86:Interix*:[345]*)
783444c061aSmrg	echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
784444c061aSmrg	exit ;;
785444c061aSmrg    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
786444c061aSmrg	echo i${UNAME_MACHINE}-pc-mks
787444c061aSmrg	exit ;;
788444c061aSmrg    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
789444c061aSmrg	# How do we know it's Interix rather than the generic POSIX subsystem?
790444c061aSmrg	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
791444c061aSmrg	# UNAME_MACHINE based on the output of uname instead of i386?
792444c061aSmrg	echo i586-pc-interix
793444c061aSmrg	exit ;;
794444c061aSmrg    i*:UWIN*:*)
795444c061aSmrg	echo ${UNAME_MACHINE}-pc-uwin
796444c061aSmrg	exit ;;
797444c061aSmrg    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
798444c061aSmrg	echo x86_64-unknown-cygwin
799444c061aSmrg	exit ;;
800444c061aSmrg    p*:CYGWIN*:*)
801444c061aSmrg	echo powerpcle-unknown-cygwin
802444c061aSmrg	exit ;;
803444c061aSmrg    prep*:SunOS:5.*:*)
804444c061aSmrg	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
805444c061aSmrg	exit ;;
806444c061aSmrg    *:GNU:*:*)
807444c061aSmrg	# the GNU system
808444c061aSmrg	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
809444c061aSmrg	exit ;;
810444c061aSmrg    *:GNU/*:*:*)
811444c061aSmrg	# other systems with GNU libc and userland
812444c061aSmrg	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
813444c061aSmrg	exit ;;
814444c061aSmrg    i*86:Minix:*:*)
815444c061aSmrg	echo ${UNAME_MACHINE}-pc-minix
816444c061aSmrg	exit ;;
817444c061aSmrg    arm*:Linux:*:*)
818444c061aSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
819444c061aSmrg	exit ;;
820444c061aSmrg    cris:Linux:*:*)
821444c061aSmrg	echo cris-axis-linux-gnu
822444c061aSmrg	exit ;;
823444c061aSmrg    crisv32:Linux:*:*)
824444c061aSmrg	echo crisv32-axis-linux-gnu
825444c061aSmrg	exit ;;
826444c061aSmrg    frv:Linux:*:*)
827444c061aSmrg    	echo frv-unknown-linux-gnu
828444c061aSmrg	exit ;;
829444c061aSmrg    ia64:Linux:*:*)
830444c061aSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
831444c061aSmrg	exit ;;
832444c061aSmrg    m32r*:Linux:*:*)
833444c061aSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
834444c061aSmrg	exit ;;
835444c061aSmrg    m68*:Linux:*:*)
836444c061aSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
837444c061aSmrg	exit ;;
838444c061aSmrg    mips:Linux:*:*)
839444c061aSmrg	eval $set_cc_for_build
840444c061aSmrg	sed 's/^	//' << EOF >$dummy.c
841444c061aSmrg	#undef CPU
842444c061aSmrg	#undef mips
843444c061aSmrg	#undef mipsel
844444c061aSmrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
845444c061aSmrg	CPU=mipsel
846444c061aSmrg	#else
847444c061aSmrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
848444c061aSmrg	CPU=mips
849444c061aSmrg	#else
850444c061aSmrg	CPU=
851444c061aSmrg	#endif
852444c061aSmrg	#endif
853444c061aSmrgEOF
854444c061aSmrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '/^CPU/{s: ::g;p;}'`"
855444c061aSmrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
856444c061aSmrg	;;
857444c061aSmrg    mips64:Linux:*:*)
858444c061aSmrg	eval $set_cc_for_build
859444c061aSmrg	sed 's/^	//' << EOF >$dummy.c
860444c061aSmrg	#undef CPU
861444c061aSmrg	#undef mips64
862444c061aSmrg	#undef mips64el
863444c061aSmrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
864444c061aSmrg	CPU=mips64el
865444c061aSmrg	#else
866444c061aSmrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
867444c061aSmrg	CPU=mips64
868444c061aSmrg	#else
869444c061aSmrg	CPU=
870444c061aSmrg	#endif
871444c061aSmrg	#endif
872444c061aSmrgEOF
873444c061aSmrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '/^CPU/{s: ::g;p;}'`"
874444c061aSmrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
875444c061aSmrg	;;
876444c061aSmrg    or32:Linux:*:*)
877444c061aSmrg	echo or32-unknown-linux-gnu
878444c061aSmrg	exit ;;
879444c061aSmrg    ppc:Linux:*:*)
880444c061aSmrg	echo powerpc-unknown-linux-gnu
881444c061aSmrg	exit ;;
882444c061aSmrg    ppc64:Linux:*:*)
883444c061aSmrg	echo powerpc64-unknown-linux-gnu
884444c061aSmrg	exit ;;
885444c061aSmrg    alpha:Linux:*:*)
886444c061aSmrg	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
887444c061aSmrg	  EV5)   UNAME_MACHINE=alphaev5 ;;
888444c061aSmrg	  EV56)  UNAME_MACHINE=alphaev56 ;;
889444c061aSmrg	  PCA56) UNAME_MACHINE=alphapca56 ;;
890444c061aSmrg	  PCA57) UNAME_MACHINE=alphapca56 ;;
891444c061aSmrg	  EV6)   UNAME_MACHINE=alphaev6 ;;
892444c061aSmrg	  EV67)  UNAME_MACHINE=alphaev67 ;;
893444c061aSmrg	  EV68*) UNAME_MACHINE=alphaev68 ;;
894444c061aSmrg        esac
895444c061aSmrg	objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
896444c061aSmrg	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
897444c061aSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
898444c061aSmrg	exit ;;
899444c061aSmrg    parisc:Linux:*:* | hppa:Linux:*:*)
900444c061aSmrg	# Look for CPU level
901444c061aSmrg	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
902444c061aSmrg	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
903444c061aSmrg	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
904444c061aSmrg	  *)    echo hppa-unknown-linux-gnu ;;
905444c061aSmrg	esac
906444c061aSmrg	exit ;;
907444c061aSmrg    parisc64:Linux:*:* | hppa64:Linux:*:*)
908444c061aSmrg	echo hppa64-unknown-linux-gnu
909444c061aSmrg	exit ;;
910444c061aSmrg    s390:Linux:*:* | s390x:Linux:*:*)
911444c061aSmrg	echo ${UNAME_MACHINE}-ibm-linux
912444c061aSmrg	exit ;;
913444c061aSmrg    sh64*:Linux:*:*)
914444c061aSmrg    	echo ${UNAME_MACHINE}-unknown-linux-gnu
915444c061aSmrg	exit ;;
916444c061aSmrg    sh*:Linux:*:*)
917444c061aSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
918444c061aSmrg	exit ;;
919444c061aSmrg    sparc:Linux:*:* | sparc64:Linux:*:*)
920444c061aSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
921444c061aSmrg	exit ;;
922444c061aSmrg    vax:Linux:*:*)
923444c061aSmrg	echo ${UNAME_MACHINE}-dec-linux-gnu
924444c061aSmrg	exit ;;
925444c061aSmrg    x86_64:Linux:*:*)
926444c061aSmrg	echo x86_64-unknown-linux-gnu
927444c061aSmrg	exit ;;
928444c061aSmrg    i*86:Linux:*:*)
929444c061aSmrg	# The BFD linker knows what the default object file format is, so
930444c061aSmrg	# first see if it will tell us. cd to the root directory to prevent
931444c061aSmrg	# problems with other programs or directories called `ld' in the path.
932444c061aSmrg	# Set LC_ALL=C to ensure ld outputs messages in English.
933444c061aSmrg	ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
934444c061aSmrg			 | sed -ne '/supported targets:/!d
935444c061aSmrg				    s/[ 	][ 	]*/ /g
936444c061aSmrg				    s/.*supported targets: *//
937444c061aSmrg				    s/ .*//
938444c061aSmrg				    p'`
939444c061aSmrg        case "$ld_supported_targets" in
940444c061aSmrg	  elf32-i386)
941444c061aSmrg		TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
942444c061aSmrg		;;
943444c061aSmrg	  a.out-i386-linux)
944444c061aSmrg		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
945444c061aSmrg		exit ;;
946444c061aSmrg	  coff-i386)
947444c061aSmrg		echo "${UNAME_MACHINE}-pc-linux-gnucoff"
948444c061aSmrg		exit ;;
949444c061aSmrg	  "")
950444c061aSmrg		# Either a pre-BFD a.out linker (linux-gnuoldld) or
951444c061aSmrg		# one that does not give us useful --help.
952444c061aSmrg		echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
953444c061aSmrg		exit ;;
954444c061aSmrg	esac
955444c061aSmrg	# Determine whether the default compiler is a.out or elf
956444c061aSmrg	eval $set_cc_for_build
957444c061aSmrg	sed 's/^	//' << EOF >$dummy.c
958444c061aSmrg	#include <features.h>
959444c061aSmrg	#ifdef __ELF__
960444c061aSmrg	# ifdef __GLIBC__
961444c061aSmrg	#  if __GLIBC__ >= 2
962444c061aSmrg	LIBC=gnu
963444c061aSmrg	#  else
964444c061aSmrg	LIBC=gnulibc1
965444c061aSmrg	#  endif
966444c061aSmrg	# else
967444c061aSmrg	LIBC=gnulibc1
968444c061aSmrg	# endif
969444c061aSmrg	#else
970444c061aSmrg	#if defined(__INTEL_COMPILER) || defined(__PGI)
971444c061aSmrg	LIBC=gnu
972444c061aSmrg	#else
973444c061aSmrg	LIBC=gnuaout
974444c061aSmrg	#endif
975444c061aSmrg	#endif
976444c061aSmrg	#ifdef __dietlibc__
977444c061aSmrg	LIBC=dietlibc
978444c061aSmrg	#endif
979444c061aSmrgEOF
980444c061aSmrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '/^LIBC/{s: ::g;p;}'`"
981444c061aSmrg	test x"${LIBC}" != x && {
982444c061aSmrg		echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
983444c061aSmrg		exit
984444c061aSmrg	}
985444c061aSmrg	test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
986444c061aSmrg	;;
987444c061aSmrg    i*86:DYNIX/ptx:4*:*)
988444c061aSmrg	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
989444c061aSmrg	# earlier versions are messed up and put the nodename in both
990444c061aSmrg	# sysname and nodename.
991444c061aSmrg	echo i386-sequent-sysv4
992444c061aSmrg	exit ;;
993444c061aSmrg    i*86:UNIX_SV:4.2MP:2.*)
994444c061aSmrg        # Unixware is an offshoot of SVR4, but it has its own version
995444c061aSmrg        # number series starting with 2...
996444c061aSmrg        # I am not positive that other SVR4 systems won't match this,
997444c061aSmrg	# I just have to hope.  -- rms.
998444c061aSmrg        # Use sysv4.2uw... so that sysv4* matches it.
999444c061aSmrg	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
1000444c061aSmrg	exit ;;
1001444c061aSmrg    i*86:OS/2:*:*)
1002444c061aSmrg	# If we were able to find `uname', then EMX Unix compatibility
1003444c061aSmrg	# is probably installed.
1004444c061aSmrg	echo ${UNAME_MACHINE}-pc-os2-emx
1005444c061aSmrg	exit ;;
1006444c061aSmrg    i*86:XTS-300:*:STOP)
1007444c061aSmrg	echo ${UNAME_MACHINE}-unknown-stop
1008444c061aSmrg	exit ;;
1009444c061aSmrg    i*86:atheos:*:*)
1010444c061aSmrg	echo ${UNAME_MACHINE}-unknown-atheos
1011444c061aSmrg	exit ;;
1012444c061aSmrg    i*86:syllable:*:*)
1013444c061aSmrg	echo ${UNAME_MACHINE}-pc-syllable
1014444c061aSmrg	exit ;;
1015444c061aSmrg    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
1016444c061aSmrg	echo i386-unknown-lynxos${UNAME_RELEASE}
1017444c061aSmrg	exit ;;
1018444c061aSmrg    i*86:*DOS:*:*)
1019444c061aSmrg	echo ${UNAME_MACHINE}-pc-msdosdjgpp
1020444c061aSmrg	exit ;;
1021444c061aSmrg    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
1022444c061aSmrg	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
1023444c061aSmrg	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1024444c061aSmrg		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
1025444c061aSmrg	else
1026444c061aSmrg		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
1027444c061aSmrg	fi
1028444c061aSmrg	exit ;;
1029444c061aSmrg    i*86:*:5:[678]*)
1030444c061aSmrg    	# UnixWare 7.x, OpenUNIX and OpenServer 6.
1031444c061aSmrg	case `/bin/uname -X | grep "^Machine"` in
1032444c061aSmrg	    *486*)	     UNAME_MACHINE=i486 ;;
1033444c061aSmrg	    *Pentium)	     UNAME_MACHINE=i586 ;;
1034444c061aSmrg	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1035444c061aSmrg	esac
1036444c061aSmrg	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
1037444c061aSmrg	exit ;;
1038444c061aSmrg    i*86:*:3.2:*)
1039444c061aSmrg	if test -f /usr/options/cb.name; then
1040444c061aSmrg		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1041444c061aSmrg		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1042444c061aSmrg	elif /bin/uname -X 2>/dev/null >/dev/null ; then
1043444c061aSmrg		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1044444c061aSmrg		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1045444c061aSmrg		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1046444c061aSmrg			&& UNAME_MACHINE=i586
1047444c061aSmrg		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1048444c061aSmrg			&& UNAME_MACHINE=i686
1049444c061aSmrg		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1050444c061aSmrg			&& UNAME_MACHINE=i686
1051444c061aSmrg		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1052444c061aSmrg	else
1053444c061aSmrg		echo ${UNAME_MACHINE}-pc-sysv32
1054444c061aSmrg	fi
1055444c061aSmrg	exit ;;
1056444c061aSmrg    pc:*:*:*)
1057444c061aSmrg	# Left here for compatibility:
1058444c061aSmrg        # uname -m prints for DJGPP always 'pc', but it prints nothing about
1059444c061aSmrg        # the processor, so we play safe by assuming i386.
1060444c061aSmrg	echo i386-pc-msdosdjgpp
1061444c061aSmrg        exit ;;
1062444c061aSmrg    Intel:Mach:3*:*)
1063444c061aSmrg	echo i386-pc-mach3
1064444c061aSmrg	exit ;;
1065444c061aSmrg    paragon:*:*:*)
1066444c061aSmrg	echo i860-intel-osf1
1067444c061aSmrg	exit ;;
1068444c061aSmrg    i860:*:4.*:*) # i860-SVR4
1069444c061aSmrg	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1070444c061aSmrg	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
1071444c061aSmrg	else # Add other i860-SVR4 vendors below as they are discovered.
1072444c061aSmrg	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
1073444c061aSmrg	fi
1074444c061aSmrg	exit ;;
1075444c061aSmrg    mini*:CTIX:SYS*5:*)
1076444c061aSmrg	# "miniframe"
1077444c061aSmrg	echo m68010-convergent-sysv
1078444c061aSmrg	exit ;;
1079444c061aSmrg    mc68k:UNIX:SYSTEM5:3.51m)
1080444c061aSmrg	echo m68k-convergent-sysv
1081444c061aSmrg	exit ;;
1082444c061aSmrg    M680?0:D-NIX:5.3:*)
1083444c061aSmrg	echo m68k-diab-dnix
1084444c061aSmrg	exit ;;
1085444c061aSmrg    M68*:*:R3V[5678]*:*)
1086444c061aSmrg	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
1087444c061aSmrg    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)
1088444c061aSmrg	OS_REL=''
1089444c061aSmrg	test -r /etc/.relid \
1090444c061aSmrg	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1091444c061aSmrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1092444c061aSmrg	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1093444c061aSmrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1094444c061aSmrg	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1095444c061aSmrg    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1096444c061aSmrg        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1097444c061aSmrg          && { echo i486-ncr-sysv4; exit; } ;;
1098444c061aSmrg    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1099444c061aSmrg	echo m68k-unknown-lynxos${UNAME_RELEASE}
1100444c061aSmrg	exit ;;
1101444c061aSmrg    mc68030:UNIX_System_V:4.*:*)
1102444c061aSmrg	echo m68k-atari-sysv4
1103444c061aSmrg	exit ;;
1104444c061aSmrg    TSUNAMI:LynxOS:2.*:*)
1105444c061aSmrg	echo sparc-unknown-lynxos${UNAME_RELEASE}
1106444c061aSmrg	exit ;;
1107444c061aSmrg    rs6000:LynxOS:2.*:*)
1108444c061aSmrg	echo rs6000-unknown-lynxos${UNAME_RELEASE}
1109444c061aSmrg	exit ;;
1110444c061aSmrg    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
1111444c061aSmrg	echo powerpc-unknown-lynxos${UNAME_RELEASE}
1112444c061aSmrg	exit ;;
1113444c061aSmrg    SM[BE]S:UNIX_SV:*:*)
1114444c061aSmrg	echo mips-dde-sysv${UNAME_RELEASE}
1115444c061aSmrg	exit ;;
1116444c061aSmrg    RM*:ReliantUNIX-*:*:*)
1117444c061aSmrg	echo mips-sni-sysv4
1118444c061aSmrg	exit ;;
1119444c061aSmrg    RM*:SINIX-*:*:*)
1120444c061aSmrg	echo mips-sni-sysv4
1121444c061aSmrg	exit ;;
1122444c061aSmrg    *:SINIX-*:*:*)
1123444c061aSmrg	if uname -p 2>/dev/null >/dev/null ; then
1124444c061aSmrg		UNAME_MACHINE=`(uname -p) 2>/dev/null`
1125444c061aSmrg		echo ${UNAME_MACHINE}-sni-sysv4
1126444c061aSmrg	else
1127444c061aSmrg		echo ns32k-sni-sysv
1128444c061aSmrg	fi
1129444c061aSmrg	exit ;;
1130444c061aSmrg    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1131444c061aSmrg                      # says <Richard.M.Bartel@ccMail.Census.GOV>
1132444c061aSmrg        echo i586-unisys-sysv4
1133444c061aSmrg        exit ;;
1134444c061aSmrg    *:UNIX_System_V:4*:FTX*)
1135444c061aSmrg	# From Gerald Hewes <hewes@openmarket.com>.
1136444c061aSmrg	# How about differentiating between stratus architectures? -djm
1137444c061aSmrg	echo hppa1.1-stratus-sysv4
1138444c061aSmrg	exit ;;
1139444c061aSmrg    *:*:*:FTX*)
1140444c061aSmrg	# From seanf@swdc.stratus.com.
1141444c061aSmrg	echo i860-stratus-sysv4
1142444c061aSmrg	exit ;;
1143444c061aSmrg    i*86:VOS:*:*)
1144444c061aSmrg	# From Paul.Green@stratus.com.
1145444c061aSmrg	echo ${UNAME_MACHINE}-stratus-vos
1146444c061aSmrg	exit ;;
1147444c061aSmrg    *:VOS:*:*)
1148444c061aSmrg	# From Paul.Green@stratus.com.
1149444c061aSmrg	echo hppa1.1-stratus-vos
1150444c061aSmrg	exit ;;
1151444c061aSmrg    mc68*:A/UX:*:*)
1152444c061aSmrg	echo m68k-apple-aux${UNAME_RELEASE}
1153444c061aSmrg	exit ;;
1154444c061aSmrg    news*:NEWS-OS:6*:*)
1155444c061aSmrg	echo mips-sony-newsos6
1156444c061aSmrg	exit ;;
1157444c061aSmrg    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1158444c061aSmrg	if [ -d /usr/nec ]; then
1159444c061aSmrg	        echo mips-nec-sysv${UNAME_RELEASE}
1160444c061aSmrg	else
1161444c061aSmrg	        echo mips-unknown-sysv${UNAME_RELEASE}
1162444c061aSmrg	fi
1163444c061aSmrg        exit ;;
1164444c061aSmrg    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
1165444c061aSmrg	echo powerpc-be-beos
1166444c061aSmrg	exit ;;
1167444c061aSmrg    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
1168444c061aSmrg	echo powerpc-apple-beos
1169444c061aSmrg	exit ;;
1170444c061aSmrg    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
1171444c061aSmrg	echo i586-pc-beos
1172444c061aSmrg	exit ;;
1173444c061aSmrg    SX-4:SUPER-UX:*:*)
1174444c061aSmrg	echo sx4-nec-superux${UNAME_RELEASE}
1175444c061aSmrg	exit ;;
1176444c061aSmrg    SX-5:SUPER-UX:*:*)
1177444c061aSmrg	echo sx5-nec-superux${UNAME_RELEASE}
1178444c061aSmrg	exit ;;
1179444c061aSmrg    SX-6:SUPER-UX:*:*)
1180444c061aSmrg	echo sx6-nec-superux${UNAME_RELEASE}
1181444c061aSmrg	exit ;;
1182444c061aSmrg    Power*:Rhapsody:*:*)
1183444c061aSmrg	echo powerpc-apple-rhapsody${UNAME_RELEASE}
1184444c061aSmrg	exit ;;
1185444c061aSmrg    *:Rhapsody:*:*)
1186444c061aSmrg	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
1187444c061aSmrg	exit ;;
1188444c061aSmrg    *:Darwin:*:*)
1189444c061aSmrg	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
1190444c061aSmrg	case $UNAME_PROCESSOR in
1191444c061aSmrg	    unknown) UNAME_PROCESSOR=powerpc ;;
1192444c061aSmrg	esac
1193444c061aSmrg	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
1194444c061aSmrg	exit ;;
1195444c061aSmrg    *:procnto*:*:* | *:QNX:[0123456789]*:*)
1196444c061aSmrg	UNAME_PROCESSOR=`uname -p`
1197444c061aSmrg	if test "$UNAME_PROCESSOR" = "x86"; then
1198444c061aSmrg		UNAME_PROCESSOR=i386
1199444c061aSmrg		UNAME_MACHINE=pc
1200444c061aSmrg	fi
1201444c061aSmrg	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
1202444c061aSmrg	exit ;;
1203444c061aSmrg    *:QNX:*:4*)
1204444c061aSmrg	echo i386-pc-qnx
1205444c061aSmrg	exit ;;
1206444c061aSmrg    NSE-?:NONSTOP_KERNEL:*:*)
1207444c061aSmrg	echo nse-tandem-nsk${UNAME_RELEASE}
1208444c061aSmrg	exit ;;
1209444c061aSmrg    NSR-?:NONSTOP_KERNEL:*:*)
1210444c061aSmrg	echo nsr-tandem-nsk${UNAME_RELEASE}
1211444c061aSmrg	exit ;;
1212444c061aSmrg    *:NonStop-UX:*:*)
1213444c061aSmrg	echo mips-compaq-nonstopux
1214444c061aSmrg	exit ;;
1215444c061aSmrg    BS2000:POSIX*:*:*)
1216444c061aSmrg	echo bs2000-siemens-sysv
1217444c061aSmrg	exit ;;
1218444c061aSmrg    DS/*:UNIX_System_V:*:*)
1219444c061aSmrg	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
1220444c061aSmrg	exit ;;
1221444c061aSmrg    *:Plan9:*:*)
1222444c061aSmrg	# "uname -m" is not consistent, so use $cputype instead. 386
1223444c061aSmrg	# is converted to i386 for consistency with other x86
1224444c061aSmrg	# operating systems.
1225444c061aSmrg	if test "$cputype" = "386"; then
1226444c061aSmrg	    UNAME_MACHINE=i386
1227444c061aSmrg	else
1228444c061aSmrg	    UNAME_MACHINE="$cputype"
1229444c061aSmrg	fi
1230444c061aSmrg	echo ${UNAME_MACHINE}-unknown-plan9
1231444c061aSmrg	exit ;;
1232444c061aSmrg    *:TOPS-10:*:*)
1233444c061aSmrg	echo pdp10-unknown-tops10
1234444c061aSmrg	exit ;;
1235444c061aSmrg    *:TENEX:*:*)
1236444c061aSmrg	echo pdp10-unknown-tenex
1237444c061aSmrg	exit ;;
1238444c061aSmrg    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1239444c061aSmrg	echo pdp10-dec-tops20
1240444c061aSmrg	exit ;;
1241444c061aSmrg    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1242444c061aSmrg	echo pdp10-xkl-tops20
1243444c061aSmrg	exit ;;
1244444c061aSmrg    *:TOPS-20:*:*)
1245444c061aSmrg	echo pdp10-unknown-tops20
1246444c061aSmrg	exit ;;
1247444c061aSmrg    *:ITS:*:*)
1248444c061aSmrg	echo pdp10-unknown-its
1249444c061aSmrg	exit ;;
1250444c061aSmrg    SEI:*:*:SEIUX)
1251444c061aSmrg        echo mips-sei-seiux${UNAME_RELEASE}
1252444c061aSmrg	exit ;;
1253444c061aSmrg    *:DragonFly:*:*)
1254444c061aSmrg	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
1255444c061aSmrg	exit ;;
1256444c061aSmrg    *:*VMS:*:*)
1257444c061aSmrg    	UNAME_MACHINE=`(uname -p) 2>/dev/null`
1258444c061aSmrg	case "${UNAME_MACHINE}" in
1259444c061aSmrg	    A*) echo alpha-dec-vms ; exit ;;
1260444c061aSmrg	    I*) echo ia64-dec-vms ; exit ;;
1261444c061aSmrg	    V*) echo vax-dec-vms ; exit ;;
1262444c061aSmrg	esac ;;
1263444c061aSmrg    *:XENIX:*:SysV)
1264444c061aSmrg	echo i386-pc-xenix
1265444c061aSmrg	exit ;;
1266444c061aSmrg    i*86:skyos:*:*)
1267444c061aSmrg	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
1268444c061aSmrg	exit ;;
1269444c061aSmrg    i*86:rdos:*:*)
1270444c061aSmrg	echo ${UNAME_MACHINE}-pc-rdos
1271444c061aSmrg	exit ;;
1272444c061aSmrgesac
1273444c061aSmrg
1274444c061aSmrg#echo '(No uname command or uname output not recognized.)' 1>&2
1275444c061aSmrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
1276444c061aSmrg
1277444c061aSmrgeval $set_cc_for_build
1278444c061aSmrgcat >$dummy.c <<EOF
1279444c061aSmrg#ifdef _SEQUENT_
1280444c061aSmrg# include <sys/types.h>
1281444c061aSmrg# include <sys/utsname.h>
1282444c061aSmrg#endif
1283444c061aSmrgmain ()
1284444c061aSmrg{
1285444c061aSmrg#if defined (sony)
1286444c061aSmrg#if defined (MIPSEB)
1287444c061aSmrg  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
1288444c061aSmrg     I don't know....  */
1289444c061aSmrg  printf ("mips-sony-bsd\n"); exit (0);
1290444c061aSmrg#else
1291444c061aSmrg#include <sys/param.h>
1292444c061aSmrg  printf ("m68k-sony-newsos%s\n",
1293444c061aSmrg#ifdef NEWSOS4
1294444c061aSmrg          "4"
1295444c061aSmrg#else
1296444c061aSmrg	  ""
1297444c061aSmrg#endif
1298444c061aSmrg         ); exit (0);
1299444c061aSmrg#endif
1300444c061aSmrg#endif
1301444c061aSmrg
1302444c061aSmrg#if defined (__arm) && defined (__acorn) && defined (__unix)
1303444c061aSmrg  printf ("arm-acorn-riscix\n"); exit (0);
1304444c061aSmrg#endif
1305444c061aSmrg
1306444c061aSmrg#if defined (hp300) && !defined (hpux)
1307444c061aSmrg  printf ("m68k-hp-bsd\n"); exit (0);
1308444c061aSmrg#endif
1309444c061aSmrg
1310444c061aSmrg#if defined (NeXT)
1311444c061aSmrg#if !defined (__ARCHITECTURE__)
1312444c061aSmrg#define __ARCHITECTURE__ "m68k"
1313444c061aSmrg#endif
1314444c061aSmrg  int version;
1315444c061aSmrg  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
1316444c061aSmrg  if (version < 4)
1317444c061aSmrg    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
1318444c061aSmrg  else
1319444c061aSmrg    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
1320444c061aSmrg  exit (0);
1321444c061aSmrg#endif
1322444c061aSmrg
1323444c061aSmrg#if defined (MULTIMAX) || defined (n16)
1324444c061aSmrg#if defined (UMAXV)
1325444c061aSmrg  printf ("ns32k-encore-sysv\n"); exit (0);
1326444c061aSmrg#else
1327444c061aSmrg#if defined (CMU)
1328444c061aSmrg  printf ("ns32k-encore-mach\n"); exit (0);
1329444c061aSmrg#else
1330444c061aSmrg  printf ("ns32k-encore-bsd\n"); exit (0);
1331444c061aSmrg#endif
1332444c061aSmrg#endif
1333444c061aSmrg#endif
1334444c061aSmrg
1335444c061aSmrg#if defined (__386BSD__)
1336444c061aSmrg  printf ("i386-pc-bsd\n"); exit (0);
1337444c061aSmrg#endif
1338444c061aSmrg
1339444c061aSmrg#if defined (sequent)
1340444c061aSmrg#if defined (i386)
1341444c061aSmrg  printf ("i386-sequent-dynix\n"); exit (0);
1342444c061aSmrg#endif
1343444c061aSmrg#if defined (ns32000)
1344444c061aSmrg  printf ("ns32k-sequent-dynix\n"); exit (0);
1345444c061aSmrg#endif
1346444c061aSmrg#endif
1347444c061aSmrg
1348444c061aSmrg#if defined (_SEQUENT_)
1349444c061aSmrg    struct utsname un;
1350444c061aSmrg
1351444c061aSmrg    uname(&un);
1352444c061aSmrg
1353444c061aSmrg    if (strncmp(un.version, "V2", 2) == 0) {
1354444c061aSmrg	printf ("i386-sequent-ptx2\n"); exit (0);
1355444c061aSmrg    }
1356444c061aSmrg    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
1357444c061aSmrg	printf ("i386-sequent-ptx1\n"); exit (0);
1358444c061aSmrg    }
1359444c061aSmrg    printf ("i386-sequent-ptx\n"); exit (0);
1360444c061aSmrg
1361444c061aSmrg#endif
1362444c061aSmrg
1363444c061aSmrg#if defined (vax)
1364444c061aSmrg# if !defined (ultrix)
1365444c061aSmrg#  include <sys/param.h>
1366444c061aSmrg#  if defined (BSD)
1367444c061aSmrg#   if BSD == 43
1368444c061aSmrg      printf ("vax-dec-bsd4.3\n"); exit (0);
1369444c061aSmrg#   else
1370444c061aSmrg#    if BSD == 199006
1371444c061aSmrg      printf ("vax-dec-bsd4.3reno\n"); exit (0);
1372444c061aSmrg#    else
1373444c061aSmrg      printf ("vax-dec-bsd\n"); exit (0);
1374444c061aSmrg#    endif
1375444c061aSmrg#   endif
1376444c061aSmrg#  else
1377444c061aSmrg    printf ("vax-dec-bsd\n"); exit (0);
1378444c061aSmrg#  endif
1379444c061aSmrg# else
1380444c061aSmrg    printf ("vax-dec-ultrix\n"); exit (0);
1381444c061aSmrg# endif
1382444c061aSmrg#endif
1383444c061aSmrg
1384444c061aSmrg#if defined (alliant) && defined (i860)
1385444c061aSmrg  printf ("i860-alliant-bsd\n"); exit (0);
1386444c061aSmrg#endif
1387444c061aSmrg
1388444c061aSmrg  exit (1);
1389444c061aSmrg}
1390444c061aSmrgEOF
1391444c061aSmrg
1392444c061aSmrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
1393444c061aSmrg	{ echo "$SYSTEM_NAME"; exit; }
1394444c061aSmrg
1395444c061aSmrg# Apollos put the system type in the environment.
1396444c061aSmrg
1397444c061aSmrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
1398444c061aSmrg
1399444c061aSmrg# Convex versions that predate uname can use getsysinfo(1)
1400444c061aSmrg
1401444c061aSmrgif [ -x /usr/convex/getsysinfo ]
1402444c061aSmrgthen
1403444c061aSmrg    case `getsysinfo -f cpu_type` in
1404444c061aSmrg    c1*)
1405444c061aSmrg	echo c1-convex-bsd
1406444c061aSmrg	exit ;;
1407444c061aSmrg    c2*)
1408444c061aSmrg	if getsysinfo -f scalar_acc
1409444c061aSmrg	then echo c32-convex-bsd
1410444c061aSmrg	else echo c2-convex-bsd
1411444c061aSmrg	fi
1412444c061aSmrg	exit ;;
1413444c061aSmrg    c34*)
1414444c061aSmrg	echo c34-convex-bsd
1415444c061aSmrg	exit ;;
1416444c061aSmrg    c38*)
1417444c061aSmrg	echo c38-convex-bsd
1418444c061aSmrg	exit ;;
1419444c061aSmrg    c4*)
1420444c061aSmrg	echo c4-convex-bsd
1421444c061aSmrg	exit ;;
1422444c061aSmrg    esac
1423444c061aSmrgfi
1424444c061aSmrg
1425444c061aSmrgcat >&2 <<EOF
1426444c061aSmrg$0: unable to guess system type
1427444c061aSmrg
1428444c061aSmrgThis script, last modified $timestamp, has failed to recognize
1429444c061aSmrgthe operating system you are using. It is advised that you
1430444c061aSmrgdownload the most up to date version of the config scripts from
1431444c061aSmrg
1432444c061aSmrg  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
1433444c061aSmrgand
1434444c061aSmrg  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
1435444c061aSmrg
1436444c061aSmrgIf the version you run ($0) is already up to date, please
1437444c061aSmrgsend the following data and any information you think might be
1438444c061aSmrgpertinent to <config-patches@gnu.org> in order to provide the needed
1439444c061aSmrginformation to handle your system.
1440444c061aSmrg
1441444c061aSmrgconfig.guess timestamp = $timestamp
1442444c061aSmrg
1443444c061aSmrguname -m = `(uname -m) 2>/dev/null || echo unknown`
1444444c061aSmrguname -r = `(uname -r) 2>/dev/null || echo unknown`
1445444c061aSmrguname -s = `(uname -s) 2>/dev/null || echo unknown`
1446444c061aSmrguname -v = `(uname -v) 2>/dev/null || echo unknown`
1447444c061aSmrg
1448444c061aSmrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1449444c061aSmrg/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
1450444c061aSmrg
1451444c061aSmrghostinfo               = `(hostinfo) 2>/dev/null`
1452444c061aSmrg/bin/universe          = `(/bin/universe) 2>/dev/null`
1453444c061aSmrg/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
1454444c061aSmrg/bin/arch              = `(/bin/arch) 2>/dev/null`
1455444c061aSmrg/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
1456444c061aSmrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1457444c061aSmrg
1458444c061aSmrgUNAME_MACHINE = ${UNAME_MACHINE}
1459444c061aSmrgUNAME_RELEASE = ${UNAME_RELEASE}
1460444c061aSmrgUNAME_SYSTEM  = ${UNAME_SYSTEM}
1461444c061aSmrgUNAME_VERSION = ${UNAME_VERSION}
1462444c061aSmrgEOF
1463444c061aSmrg
1464444c061aSmrgexit 1
1465444c061aSmrg
1466444c061aSmrg# Local variables:
1467444c061aSmrg# eval: (add-hook 'write-file-hooks 'time-stamp)
1468444c061aSmrg# time-stamp-start: "timestamp='"
1469444c061aSmrg# time-stamp-format: "%:y-%02m-%02d"
1470444c061aSmrg# time-stamp-end: "'"
1471444c061aSmrg# End:
1472