config.guess revision b20b881b
1c06b6b69Smrg#! /bin/sh
2c06b6b69Smrg# Attempt to guess a canonical system name.
3c06b6b69Smrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
49f4658d1Smrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
59f4658d1Smrg#   Free Software Foundation, Inc.
6c06b6b69Smrg
7b20b881bSmrgtimestamp='2008-11-15'
8c06b6b69Smrg
9c06b6b69Smrg# This file is free software; you can redistribute it and/or modify it
10c06b6b69Smrg# under the terms of the GNU General Public License as published by
11c06b6b69Smrg# the Free Software Foundation; either version 2 of the License, or
12c06b6b69Smrg# (at your option) any later version.
13c06b6b69Smrg#
14c06b6b69Smrg# This program is distributed in the hope that it will be useful, but
15c06b6b69Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of
16c06b6b69Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17c06b6b69Smrg# General Public License for more details.
18c06b6b69Smrg#
19c06b6b69Smrg# You should have received a copy of the GNU General Public License
20c06b6b69Smrg# along with this program; if not, write to the Free Software
219f4658d1Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
229f4658d1Smrg# 02110-1301, USA.
23c06b6b69Smrg#
24c06b6b69Smrg# As a special exception to the GNU General Public License, if you
25c06b6b69Smrg# distribute this file as part of a program that contains a
26c06b6b69Smrg# configuration script generated by Autoconf, you may include it under
27c06b6b69Smrg# the same distribution terms that you use for the rest of that program.
28c06b6b69Smrg
299f4658d1Smrg
30c06b6b69Smrg# Originally written by Per Bothner <per@bothner.com>.
31c06b6b69Smrg# Please send patches to <config-patches@gnu.org>.  Submit a context
32c06b6b69Smrg# diff and a properly formatted ChangeLog entry.
33c06b6b69Smrg#
34c06b6b69Smrg# This script attempts to guess a canonical system name similar to
35c06b6b69Smrg# config.sub.  If it succeeds, it prints the system name on stdout, and
36c06b6b69Smrg# exits with 0.  Otherwise, it exits with 1.
37c06b6b69Smrg#
38c06b6b69Smrg# The plan is that this can be called by configure scripts if you
39c06b6b69Smrg# don't specify an explicit build system type.
40c06b6b69Smrg
41c06b6b69Smrgme=`echo "$0" | sed -e 's,.*/,,'`
42c06b6b69Smrg
43c06b6b69Smrgusage="\
44c06b6b69SmrgUsage: $0 [OPTION]
45c06b6b69Smrg
46c06b6b69SmrgOutput the configuration name of the system \`$me' is run on.
47c06b6b69Smrg
48c06b6b69SmrgOperation modes:
49c06b6b69Smrg  -h, --help         print this help, then exit
50c06b6b69Smrg  -t, --time-stamp   print date of last modification, then exit
51c06b6b69Smrg  -v, --version      print version number, then exit
52c06b6b69Smrg
53c06b6b69SmrgReport bugs and patches to <config-patches@gnu.org>."
54c06b6b69Smrg
55c06b6b69Smrgversion="\
56c06b6b69SmrgGNU config.guess ($timestamp)
57c06b6b69Smrg
58c06b6b69SmrgOriginally written by Per Bothner.
599f4658d1SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
609f4658d1Smrg2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
61c06b6b69Smrg
62c06b6b69SmrgThis is free software; see the source for copying conditions.  There is NO
63c06b6b69Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
64c06b6b69Smrg
65c06b6b69Smrghelp="
66c06b6b69SmrgTry \`$me --help' for more information."
67c06b6b69Smrg
68c06b6b69Smrg# Parse command line
69c06b6b69Smrgwhile test $# -gt 0 ; do
70c06b6b69Smrg  case $1 in
71c06b6b69Smrg    --time-stamp | --time* | -t )
729f4658d1Smrg       echo "$timestamp" ; exit ;;
73c06b6b69Smrg    --version | -v )
749f4658d1Smrg       echo "$version" ; exit ;;
75c06b6b69Smrg    --help | --h* | -h )
769f4658d1Smrg       echo "$usage"; exit ;;
77c06b6b69Smrg    -- )     # Stop option processing
78c06b6b69Smrg       shift; break ;;
79c06b6b69Smrg    - )	# Use stdin as input.
80c06b6b69Smrg       break ;;
81c06b6b69Smrg    -* )
82c06b6b69Smrg       echo "$me: invalid option $1$help" >&2
83c06b6b69Smrg       exit 1 ;;
84c06b6b69Smrg    * )
85c06b6b69Smrg       break ;;
86c06b6b69Smrg  esac
87c06b6b69Smrgdone
88c06b6b69Smrg
89c06b6b69Smrgif test $# != 0; then
90c06b6b69Smrg  echo "$me: too many arguments$help" >&2
91c06b6b69Smrg  exit 1
92c06b6b69Smrgfi
93c06b6b69Smrg
94c06b6b69Smrgtrap 'exit 1' 1 2 15
95c06b6b69Smrg
96c06b6b69Smrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
97c06b6b69Smrg# compiler to aid in system detection is discouraged as it requires
98c06b6b69Smrg# temporary files to be created and, as you can see below, it is a
99c06b6b69Smrg# headache to deal with in a portable fashion.
100c06b6b69Smrg
101c06b6b69Smrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
102c06b6b69Smrg# use `HOST_CC' if defined, but it is deprecated.
103c06b6b69Smrg
104c06b6b69Smrg# Portable tmp directory creation inspired by the Autoconf team.
105c06b6b69Smrg
106c06b6b69Smrgset_cc_for_build='
107c06b6b69Smrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
108c06b6b69Smrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
109c06b6b69Smrg: ${TMPDIR=/tmp} ;
1109f4658d1Smrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
111c06b6b69Smrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
112c06b6b69Smrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
113c06b6b69Smrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
114c06b6b69Smrgdummy=$tmp/dummy ;
115c06b6b69Smrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
116c06b6b69Smrgcase $CC_FOR_BUILD,$HOST_CC,$CC in
117c06b6b69Smrg ,,)    echo "int x;" > $dummy.c ;
118c06b6b69Smrg	for c in cc gcc c89 c99 ; do
119c06b6b69Smrg	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
120c06b6b69Smrg	     CC_FOR_BUILD="$c"; break ;
121c06b6b69Smrg	  fi ;
122c06b6b69Smrg	done ;
123c06b6b69Smrg	if test x"$CC_FOR_BUILD" = x ; then
124c06b6b69Smrg	  CC_FOR_BUILD=no_compiler_found ;
125c06b6b69Smrg	fi
126c06b6b69Smrg	;;
127c06b6b69Smrg ,,*)   CC_FOR_BUILD=$CC ;;
128c06b6b69Smrg ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
1299f4658d1Smrgesac ; set_cc_for_build= ;'
130c06b6b69Smrg
131c06b6b69Smrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
132c06b6b69Smrg# (ghazi@noc.rutgers.edu 1994-08-24)
133c06b6b69Smrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then
134c06b6b69Smrg	PATH=$PATH:/.attbin ; export PATH
135c06b6b69Smrgfi
136c06b6b69Smrg
137c06b6b69SmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
138c06b6b69SmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
139c06b6b69SmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
140c06b6b69SmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
141c06b6b69Smrg
142c06b6b69Smrg# Note: order is significant - the case branches are not exclusive.
143c06b6b69Smrg
144c06b6b69Smrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
145c06b6b69Smrg    *:NetBSD:*:*)
146c06b6b69Smrg	# NetBSD (nbsd) targets should (where applicable) match one or
147c06b6b69Smrg	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
148c06b6b69Smrg	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
149c06b6b69Smrg	# switched to ELF, *-*-netbsd* would select the old
150c06b6b69Smrg	# object file format.  This provides both forward
151c06b6b69Smrg	# compatibility and a consistent mechanism for selecting the
152c06b6b69Smrg	# object file format.
153c06b6b69Smrg	#
154c06b6b69Smrg	# Note: NetBSD doesn't particularly care about the vendor
155c06b6b69Smrg	# portion of the name.  We always set it to "unknown".
156c06b6b69Smrg	sysctl="sysctl -n hw.machine_arch"
157c06b6b69Smrg	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
158c06b6b69Smrg	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
159c06b6b69Smrg	case "${UNAME_MACHINE_ARCH}" in
160c06b6b69Smrg	    armeb) machine=armeb-unknown ;;
161c06b6b69Smrg	    arm*) machine=arm-unknown ;;
162c06b6b69Smrg	    sh3el) machine=shl-unknown ;;
163c06b6b69Smrg	    sh3eb) machine=sh-unknown ;;
1649f4658d1Smrg	    sh5el) machine=sh5le-unknown ;;
165c06b6b69Smrg	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
166c06b6b69Smrg	esac
167c06b6b69Smrg	# The Operating System including object format, if it has switched
168c06b6b69Smrg	# to ELF recently, or will in the future.
169c06b6b69Smrg	case "${UNAME_MACHINE_ARCH}" in
170c06b6b69Smrg	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
171c06b6b69Smrg		eval $set_cc_for_build
172c06b6b69Smrg		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
173c06b6b69Smrg			| grep __ELF__ >/dev/null
174c06b6b69Smrg		then
175c06b6b69Smrg		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
176c06b6b69Smrg		    # Return netbsd for either.  FIX?
177c06b6b69Smrg		    os=netbsd
178c06b6b69Smrg		else
179c06b6b69Smrg		    os=netbsdelf
180c06b6b69Smrg		fi
181c06b6b69Smrg		;;
182c06b6b69Smrg	    *)
183c06b6b69Smrg	        os=netbsd
184c06b6b69Smrg		;;
185c06b6b69Smrg	esac
186c06b6b69Smrg	# The OS release
187c06b6b69Smrg	# Debian GNU/NetBSD machines have a different userland, and
188c06b6b69Smrg	# thus, need a distinct triplet. However, they do not need
189c06b6b69Smrg	# kernel version information, so it can be replaced with a
190c06b6b69Smrg	# suitable tag, in the style of linux-gnu.
191c06b6b69Smrg	case "${UNAME_VERSION}" in
192c06b6b69Smrg	    Debian*)
193c06b6b69Smrg		release='-gnu'
194c06b6b69Smrg		;;
195c06b6b69Smrg	    *)
196c06b6b69Smrg		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
197c06b6b69Smrg		;;
198c06b6b69Smrg	esac
199c06b6b69Smrg	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
200c06b6b69Smrg	# contains redundant information, the shorter form:
201c06b6b69Smrg	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
202c06b6b69Smrg	echo "${machine}-${os}${release}"
2039f4658d1Smrg	exit ;;
204c06b6b69Smrg    *:OpenBSD:*:*)
2059f4658d1Smrg	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
2069f4658d1Smrg	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
2079f4658d1Smrg	exit ;;
2089f4658d1Smrg    *:ekkoBSD:*:*)
2099f4658d1Smrg	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
2109f4658d1Smrg	exit ;;
2119f4658d1Smrg    *:SolidBSD:*:*)
2129f4658d1Smrg	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
2139f4658d1Smrg	exit ;;
2149f4658d1Smrg    macppc:MirBSD:*:*)
2159f4658d1Smrg	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
2169f4658d1Smrg	exit ;;
2179f4658d1Smrg    *:MirBSD:*:*)
2189f4658d1Smrg	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
2199f4658d1Smrg	exit ;;
220c06b6b69Smrg    alpha:OSF1:*:*)
2219f4658d1Smrg	case $UNAME_RELEASE in
2229f4658d1Smrg	*4.0)
223c06b6b69Smrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
2249f4658d1Smrg		;;
2259f4658d1Smrg	*5.*)
2269f4658d1Smrg	        UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
2279f4658d1Smrg		;;
2289f4658d1Smrg	esac
229c06b6b69Smrg	# According to Compaq, /usr/sbin/psrinfo has been available on
230c06b6b69Smrg	# OSF/1 and Tru64 systems produced since 1995.  I hope that
231c06b6b69Smrg	# covers most systems running today.  This code pipes the CPU
232c06b6b69Smrg	# types through head -n 1, so we only detect the type of CPU 0.
233c06b6b69Smrg	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
234c06b6b69Smrg	case "$ALPHA_CPU_TYPE" in
235c06b6b69Smrg	    "EV4 (21064)")
236c06b6b69Smrg		UNAME_MACHINE="alpha" ;;
237c06b6b69Smrg	    "EV4.5 (21064)")
238c06b6b69Smrg		UNAME_MACHINE="alpha" ;;
239c06b6b69Smrg	    "LCA4 (21066/21068)")
240c06b6b69Smrg		UNAME_MACHINE="alpha" ;;
241c06b6b69Smrg	    "EV5 (21164)")
242c06b6b69Smrg		UNAME_MACHINE="alphaev5" ;;
243c06b6b69Smrg	    "EV5.6 (21164A)")
244c06b6b69Smrg		UNAME_MACHINE="alphaev56" ;;
245c06b6b69Smrg	    "EV5.6 (21164PC)")
246c06b6b69Smrg		UNAME_MACHINE="alphapca56" ;;
247c06b6b69Smrg	    "EV5.7 (21164PC)")
248c06b6b69Smrg		UNAME_MACHINE="alphapca57" ;;
249c06b6b69Smrg	    "EV6 (21264)")
250c06b6b69Smrg		UNAME_MACHINE="alphaev6" ;;
251c06b6b69Smrg	    "EV6.7 (21264A)")
252c06b6b69Smrg		UNAME_MACHINE="alphaev67" ;;
253c06b6b69Smrg	    "EV6.8CB (21264C)")
254c06b6b69Smrg		UNAME_MACHINE="alphaev68" ;;
255c06b6b69Smrg	    "EV6.8AL (21264B)")
256c06b6b69Smrg		UNAME_MACHINE="alphaev68" ;;
257c06b6b69Smrg	    "EV6.8CX (21264D)")
258c06b6b69Smrg		UNAME_MACHINE="alphaev68" ;;
259c06b6b69Smrg	    "EV6.9A (21264/EV69A)")
260c06b6b69Smrg		UNAME_MACHINE="alphaev69" ;;
261c06b6b69Smrg	    "EV7 (21364)")
262c06b6b69Smrg		UNAME_MACHINE="alphaev7" ;;
263c06b6b69Smrg	    "EV7.9 (21364A)")
264c06b6b69Smrg		UNAME_MACHINE="alphaev79" ;;
265c06b6b69Smrg	esac
2669f4658d1Smrg	# A Pn.n version is a patched version.
267c06b6b69Smrg	# A Vn.n version is a released version.
268c06b6b69Smrg	# A Tn.n version is a released field test version.
269c06b6b69Smrg	# A Xn.n version is an unreleased experimental baselevel.
270c06b6b69Smrg	# 1.2 uses "1.2" for uname -r.
2719f4658d1Smrg	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
2729f4658d1Smrg	exit ;;
273c06b6b69Smrg    Alpha\ *:Windows_NT*:*)
274c06b6b69Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
275c06b6b69Smrg	# Should we change UNAME_MACHINE based on the output of uname instead
276c06b6b69Smrg	# of the specific Alpha model?
277c06b6b69Smrg	echo alpha-pc-interix
2789f4658d1Smrg	exit ;;
279c06b6b69Smrg    21064:Windows_NT:50:3)
280c06b6b69Smrg	echo alpha-dec-winnt3.5
2819f4658d1Smrg	exit ;;
282c06b6b69Smrg    Amiga*:UNIX_System_V:4.0:*)
283c06b6b69Smrg	echo m68k-unknown-sysv4
2849f4658d1Smrg	exit ;;
285c06b6b69Smrg    *:[Aa]miga[Oo][Ss]:*:*)
286c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-amigaos
2879f4658d1Smrg	exit ;;
288c06b6b69Smrg    *:[Mm]orph[Oo][Ss]:*:*)
289c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-morphos
2909f4658d1Smrg	exit ;;
291c06b6b69Smrg    *:OS/390:*:*)
292c06b6b69Smrg	echo i370-ibm-openedition
2939f4658d1Smrg	exit ;;
2949f4658d1Smrg    *:z/VM:*:*)
2959f4658d1Smrg	echo s390-ibm-zvmoe
2969f4658d1Smrg	exit ;;
2979f4658d1Smrg    *:OS400:*:*)
2989f4658d1Smrg        echo powerpc-ibm-os400
2999f4658d1Smrg	exit ;;
300c06b6b69Smrg    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
301c06b6b69Smrg	echo arm-acorn-riscix${UNAME_RELEASE}
3029f4658d1Smrg	exit ;;
3039f4658d1Smrg    arm:riscos:*:*|arm:RISCOS:*:*)
3049f4658d1Smrg	echo arm-unknown-riscos
3059f4658d1Smrg	exit ;;
306c06b6b69Smrg    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
307c06b6b69Smrg	echo hppa1.1-hitachi-hiuxmpp
3089f4658d1Smrg	exit ;;
309c06b6b69Smrg    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
310c06b6b69Smrg	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
311c06b6b69Smrg	if test "`(/bin/universe) 2>/dev/null`" = att ; then
312c06b6b69Smrg		echo pyramid-pyramid-sysv3
313c06b6b69Smrg	else
314c06b6b69Smrg		echo pyramid-pyramid-bsd
315c06b6b69Smrg	fi
3169f4658d1Smrg	exit ;;
317c06b6b69Smrg    NILE*:*:*:dcosx)
318c06b6b69Smrg	echo pyramid-pyramid-svr4
3199f4658d1Smrg	exit ;;
320c06b6b69Smrg    DRS?6000:unix:4.0:6*)
321c06b6b69Smrg	echo sparc-icl-nx6
3229f4658d1Smrg	exit ;;
3239f4658d1Smrg    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
324c06b6b69Smrg	case `/usr/bin/uname -p` in
3259f4658d1Smrg	    sparc) echo sparc-icl-nx7; exit ;;
326c06b6b69Smrg	esac ;;
327c06b6b69Smrg    sun4H:SunOS:5.*:*)
328c06b6b69Smrg	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3299f4658d1Smrg	exit ;;
330c06b6b69Smrg    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
331c06b6b69Smrg	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3329f4658d1Smrg	exit ;;
3339f4658d1Smrg    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
334b20b881bSmrg	eval $set_cc_for_build
335b20b881bSmrg	SUN_ARCH="i386"
336b20b881bSmrg	# If there is a compiler, see if it is configured for 64-bit objects.
337b20b881bSmrg	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
338b20b881bSmrg	# This test works for both compilers.
339b20b881bSmrg	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
340b20b881bSmrg	    if echo '\n#ifdef __amd64\nIS_64BIT_ARCH\n#endif' | \
341b20b881bSmrg		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
342b20b881bSmrg		grep IS_64BIT_ARCH >/dev/null
343b20b881bSmrg	    then
344b20b881bSmrg		SUN_ARCH="x86_64"
345b20b881bSmrg	    fi
346b20b881bSmrg	fi
347b20b881bSmrg	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3489f4658d1Smrg	exit ;;
349c06b6b69Smrg    sun4*:SunOS:6*:*)
350c06b6b69Smrg	# According to config.sub, this is the proper way to canonicalize
351c06b6b69Smrg	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
352c06b6b69Smrg	# it's likely to be more like Solaris than SunOS4.
353c06b6b69Smrg	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3549f4658d1Smrg	exit ;;
355c06b6b69Smrg    sun4*:SunOS:*:*)
356c06b6b69Smrg	case "`/usr/bin/arch -k`" in
357c06b6b69Smrg	    Series*|S4*)
358c06b6b69Smrg		UNAME_RELEASE=`uname -v`
359c06b6b69Smrg		;;
360c06b6b69Smrg	esac
361c06b6b69Smrg	# Japanese Language versions have a version number like `4.1.3-JL'.
362c06b6b69Smrg	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
3639f4658d1Smrg	exit ;;
364c06b6b69Smrg    sun3*:SunOS:*:*)
365c06b6b69Smrg	echo m68k-sun-sunos${UNAME_RELEASE}
3669f4658d1Smrg	exit ;;
367c06b6b69Smrg    sun*:*:4.2BSD:*)
368c06b6b69Smrg	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
369c06b6b69Smrg	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
370c06b6b69Smrg	case "`/bin/arch`" in
371c06b6b69Smrg	    sun3)
372c06b6b69Smrg		echo m68k-sun-sunos${UNAME_RELEASE}
373c06b6b69Smrg		;;
374c06b6b69Smrg	    sun4)
375c06b6b69Smrg		echo sparc-sun-sunos${UNAME_RELEASE}
376c06b6b69Smrg		;;
377c06b6b69Smrg	esac
3789f4658d1Smrg	exit ;;
379c06b6b69Smrg    aushp:SunOS:*:*)
380c06b6b69Smrg	echo sparc-auspex-sunos${UNAME_RELEASE}
3819f4658d1Smrg	exit ;;
382c06b6b69Smrg    # The situation for MiNT is a little confusing.  The machine name
383c06b6b69Smrg    # can be virtually everything (everything which is not
384c06b6b69Smrg    # "atarist" or "atariste" at least should have a processor
385c06b6b69Smrg    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
386c06b6b69Smrg    # to the lowercase version "mint" (or "freemint").  Finally
387c06b6b69Smrg    # the system name "TOS" denotes a system which is actually not
388c06b6b69Smrg    # MiNT.  But MiNT is downward compatible to TOS, so this should
389c06b6b69Smrg    # be no problem.
390c06b6b69Smrg    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
391c06b6b69Smrg        echo m68k-atari-mint${UNAME_RELEASE}
3929f4658d1Smrg	exit ;;
393c06b6b69Smrg    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
394c06b6b69Smrg	echo m68k-atari-mint${UNAME_RELEASE}
3959f4658d1Smrg        exit ;;
396c06b6b69Smrg    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
397c06b6b69Smrg        echo m68k-atari-mint${UNAME_RELEASE}
3989f4658d1Smrg	exit ;;
399c06b6b69Smrg    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
400c06b6b69Smrg        echo m68k-milan-mint${UNAME_RELEASE}
4019f4658d1Smrg        exit ;;
402c06b6b69Smrg    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
403c06b6b69Smrg        echo m68k-hades-mint${UNAME_RELEASE}
4049f4658d1Smrg        exit ;;
405c06b6b69Smrg    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
406c06b6b69Smrg        echo m68k-unknown-mint${UNAME_RELEASE}
4079f4658d1Smrg        exit ;;
4089f4658d1Smrg    m68k:machten:*:*)
4099f4658d1Smrg	echo m68k-apple-machten${UNAME_RELEASE}
4109f4658d1Smrg	exit ;;
411c06b6b69Smrg    powerpc:machten:*:*)
412c06b6b69Smrg	echo powerpc-apple-machten${UNAME_RELEASE}
4139f4658d1Smrg	exit ;;
414c06b6b69Smrg    RISC*:Mach:*:*)
415c06b6b69Smrg	echo mips-dec-mach_bsd4.3
4169f4658d1Smrg	exit ;;
417c06b6b69Smrg    RISC*:ULTRIX:*:*)
418c06b6b69Smrg	echo mips-dec-ultrix${UNAME_RELEASE}
4199f4658d1Smrg	exit ;;
420c06b6b69Smrg    VAX*:ULTRIX*:*:*)
421c06b6b69Smrg	echo vax-dec-ultrix${UNAME_RELEASE}
4229f4658d1Smrg	exit ;;
423c06b6b69Smrg    2020:CLIX:*:* | 2430:CLIX:*:*)
424c06b6b69Smrg	echo clipper-intergraph-clix${UNAME_RELEASE}
4259f4658d1Smrg	exit ;;
426c06b6b69Smrg    mips:*:*:UMIPS | mips:*:*:RISCos)
427c06b6b69Smrg	eval $set_cc_for_build
428c06b6b69Smrg	sed 's/^	//' << EOF >$dummy.c
429c06b6b69Smrg#ifdef __cplusplus
430c06b6b69Smrg#include <stdio.h>  /* for printf() prototype */
431c06b6b69Smrg	int main (int argc, char *argv[]) {
432c06b6b69Smrg#else
433c06b6b69Smrg	int main (argc, argv) int argc; char *argv[]; {
434c06b6b69Smrg#endif
435c06b6b69Smrg	#if defined (host_mips) && defined (MIPSEB)
436c06b6b69Smrg	#if defined (SYSTYPE_SYSV)
437c06b6b69Smrg	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
438c06b6b69Smrg	#endif
439c06b6b69Smrg	#if defined (SYSTYPE_SVR4)
440c06b6b69Smrg	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
441c06b6b69Smrg	#endif
442c06b6b69Smrg	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
443c06b6b69Smrg	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
444c06b6b69Smrg	#endif
445c06b6b69Smrg	#endif
446c06b6b69Smrg	  exit (-1);
447c06b6b69Smrg	}
448c06b6b69SmrgEOF
4499f4658d1Smrg	$CC_FOR_BUILD -o $dummy $dummy.c &&
4509f4658d1Smrg	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
4519f4658d1Smrg	  SYSTEM_NAME=`$dummy $dummyarg` &&
4529f4658d1Smrg	    { echo "$SYSTEM_NAME"; exit; }
453c06b6b69Smrg	echo mips-mips-riscos${UNAME_RELEASE}
4549f4658d1Smrg	exit ;;
455c06b6b69Smrg    Motorola:PowerMAX_OS:*:*)
456c06b6b69Smrg	echo powerpc-motorola-powermax
4579f4658d1Smrg	exit ;;
458c06b6b69Smrg    Motorola:*:4.3:PL8-*)
459c06b6b69Smrg	echo powerpc-harris-powermax
4609f4658d1Smrg	exit ;;
461c06b6b69Smrg    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
462c06b6b69Smrg	echo powerpc-harris-powermax
4639f4658d1Smrg	exit ;;
464c06b6b69Smrg    Night_Hawk:Power_UNIX:*:*)
465c06b6b69Smrg	echo powerpc-harris-powerunix
4669f4658d1Smrg	exit ;;
467c06b6b69Smrg    m88k:CX/UX:7*:*)
468c06b6b69Smrg	echo m88k-harris-cxux7
4699f4658d1Smrg	exit ;;
470c06b6b69Smrg    m88k:*:4*:R4*)
471c06b6b69Smrg	echo m88k-motorola-sysv4
4729f4658d1Smrg	exit ;;
473c06b6b69Smrg    m88k:*:3*:R3*)
474c06b6b69Smrg	echo m88k-motorola-sysv3
4759f4658d1Smrg	exit ;;
476c06b6b69Smrg    AViiON:dgux:*:*)
477c06b6b69Smrg        # DG/UX returns AViiON for all architectures
478c06b6b69Smrg        UNAME_PROCESSOR=`/usr/bin/uname -p`
479c06b6b69Smrg	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
480c06b6b69Smrg	then
481c06b6b69Smrg	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
482c06b6b69Smrg	       [ ${TARGET_BINARY_INTERFACE}x = x ]
483c06b6b69Smrg	    then
484c06b6b69Smrg		echo m88k-dg-dgux${UNAME_RELEASE}
485c06b6b69Smrg	    else
486c06b6b69Smrg		echo m88k-dg-dguxbcs${UNAME_RELEASE}
487c06b6b69Smrg	    fi
488c06b6b69Smrg	else
489c06b6b69Smrg	    echo i586-dg-dgux${UNAME_RELEASE}
490c06b6b69Smrg	fi
4919f4658d1Smrg 	exit ;;
492c06b6b69Smrg    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
493c06b6b69Smrg	echo m88k-dolphin-sysv3
4949f4658d1Smrg	exit ;;
495c06b6b69Smrg    M88*:*:R3*:*)
496c06b6b69Smrg	# Delta 88k system running SVR3
497c06b6b69Smrg	echo m88k-motorola-sysv3
4989f4658d1Smrg	exit ;;
499c06b6b69Smrg    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
500c06b6b69Smrg	echo m88k-tektronix-sysv3
5019f4658d1Smrg	exit ;;
502c06b6b69Smrg    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
503c06b6b69Smrg	echo m68k-tektronix-bsd
5049f4658d1Smrg	exit ;;
505c06b6b69Smrg    *:IRIX*:*:*)
506c06b6b69Smrg	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
5079f4658d1Smrg	exit ;;
508c06b6b69Smrg    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
5099f4658d1Smrg	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
5109f4658d1Smrg	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
511c06b6b69Smrg    i*86:AIX:*:*)
512c06b6b69Smrg	echo i386-ibm-aix
5139f4658d1Smrg	exit ;;
514c06b6b69Smrg    ia64:AIX:*:*)
515c06b6b69Smrg	if [ -x /usr/bin/oslevel ] ; then
516c06b6b69Smrg		IBM_REV=`/usr/bin/oslevel`
517c06b6b69Smrg	else
518c06b6b69Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
519c06b6b69Smrg	fi
520c06b6b69Smrg	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
5219f4658d1Smrg	exit ;;
522c06b6b69Smrg    *:AIX:2:3)
523c06b6b69Smrg	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
524c06b6b69Smrg		eval $set_cc_for_build
525c06b6b69Smrg		sed 's/^		//' << EOF >$dummy.c
526c06b6b69Smrg		#include <sys/systemcfg.h>
527c06b6b69Smrg
528c06b6b69Smrg		main()
529c06b6b69Smrg			{
530c06b6b69Smrg			if (!__power_pc())
531c06b6b69Smrg				exit(1);
532c06b6b69Smrg			puts("powerpc-ibm-aix3.2.5");
533c06b6b69Smrg			exit(0);
534c06b6b69Smrg			}
535c06b6b69SmrgEOF
5369f4658d1Smrg		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
5379f4658d1Smrg		then
5389f4658d1Smrg			echo "$SYSTEM_NAME"
5399f4658d1Smrg		else
5409f4658d1Smrg			echo rs6000-ibm-aix3.2.5
5419f4658d1Smrg		fi
542c06b6b69Smrg	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
543c06b6b69Smrg		echo rs6000-ibm-aix3.2.4
544c06b6b69Smrg	else
545c06b6b69Smrg		echo rs6000-ibm-aix3.2
546c06b6b69Smrg	fi
5479f4658d1Smrg	exit ;;
5489f4658d1Smrg    *:AIX:*:[456])
549c06b6b69Smrg	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
550c06b6b69Smrg	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
551c06b6b69Smrg		IBM_ARCH=rs6000
552c06b6b69Smrg	else
553c06b6b69Smrg		IBM_ARCH=powerpc
554c06b6b69Smrg	fi
555c06b6b69Smrg	if [ -x /usr/bin/oslevel ] ; then
556c06b6b69Smrg		IBM_REV=`/usr/bin/oslevel`
557c06b6b69Smrg	else
558c06b6b69Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
559c06b6b69Smrg	fi
560c06b6b69Smrg	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
5619f4658d1Smrg	exit ;;
562c06b6b69Smrg    *:AIX:*:*)
563c06b6b69Smrg	echo rs6000-ibm-aix
5649f4658d1Smrg	exit ;;
565c06b6b69Smrg    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
566c06b6b69Smrg	echo romp-ibm-bsd4.4
5679f4658d1Smrg	exit ;;
568c06b6b69Smrg    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
569c06b6b69Smrg	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
5709f4658d1Smrg	exit ;;                             # report: romp-ibm BSD 4.3
571c06b6b69Smrg    *:BOSX:*:*)
572c06b6b69Smrg	echo rs6000-bull-bosx
5739f4658d1Smrg	exit ;;
574c06b6b69Smrg    DPX/2?00:B.O.S.:*:*)
575c06b6b69Smrg	echo m68k-bull-sysv3
5769f4658d1Smrg	exit ;;
577c06b6b69Smrg    9000/[34]??:4.3bsd:1.*:*)
578c06b6b69Smrg	echo m68k-hp-bsd
5799f4658d1Smrg	exit ;;
580c06b6b69Smrg    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
581c06b6b69Smrg	echo m68k-hp-bsd4.4
5829f4658d1Smrg	exit ;;
583c06b6b69Smrg    9000/[34678]??:HP-UX:*:*)
584c06b6b69Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
585c06b6b69Smrg	case "${UNAME_MACHINE}" in
586c06b6b69Smrg	    9000/31? )            HP_ARCH=m68000 ;;
587c06b6b69Smrg	    9000/[34]?? )         HP_ARCH=m68k ;;
588c06b6b69Smrg	    9000/[678][0-9][0-9])
589c06b6b69Smrg		if [ -x /usr/bin/getconf ]; then
590c06b6b69Smrg		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
591c06b6b69Smrg                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
592c06b6b69Smrg                    case "${sc_cpu_version}" in
593c06b6b69Smrg                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
594c06b6b69Smrg                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
595c06b6b69Smrg                      532)                      # CPU_PA_RISC2_0
596c06b6b69Smrg                        case "${sc_kernel_bits}" in
597c06b6b69Smrg                          32) HP_ARCH="hppa2.0n" ;;
598c06b6b69Smrg                          64) HP_ARCH="hppa2.0w" ;;
599c06b6b69Smrg			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
600c06b6b69Smrg                        esac ;;
601c06b6b69Smrg                    esac
602c06b6b69Smrg		fi
603c06b6b69Smrg		if [ "${HP_ARCH}" = "" ]; then
604c06b6b69Smrg		    eval $set_cc_for_build
605c06b6b69Smrg		    sed 's/^              //' << EOF >$dummy.c
606c06b6b69Smrg
607c06b6b69Smrg              #define _HPUX_SOURCE
608c06b6b69Smrg              #include <stdlib.h>
609c06b6b69Smrg              #include <unistd.h>
610c06b6b69Smrg
611c06b6b69Smrg              int main ()
612c06b6b69Smrg              {
613c06b6b69Smrg              #if defined(_SC_KERNEL_BITS)
614c06b6b69Smrg                  long bits = sysconf(_SC_KERNEL_BITS);
615c06b6b69Smrg              #endif
616c06b6b69Smrg                  long cpu  = sysconf (_SC_CPU_VERSION);
617c06b6b69Smrg
618c06b6b69Smrg                  switch (cpu)
619c06b6b69Smrg              	{
620c06b6b69Smrg              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
621c06b6b69Smrg              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
622c06b6b69Smrg              	case CPU_PA_RISC2_0:
623c06b6b69Smrg              #if defined(_SC_KERNEL_BITS)
624c06b6b69Smrg              	    switch (bits)
625c06b6b69Smrg              		{
626c06b6b69Smrg              		case 64: puts ("hppa2.0w"); break;
627c06b6b69Smrg              		case 32: puts ("hppa2.0n"); break;
628c06b6b69Smrg              		default: puts ("hppa2.0"); break;
629c06b6b69Smrg              		} break;
630c06b6b69Smrg              #else  /* !defined(_SC_KERNEL_BITS) */
631c06b6b69Smrg              	    puts ("hppa2.0"); break;
632c06b6b69Smrg              #endif
633c06b6b69Smrg              	default: puts ("hppa1.0"); break;
634c06b6b69Smrg              	}
635c06b6b69Smrg                  exit (0);
636c06b6b69Smrg              }
637c06b6b69SmrgEOF
638c06b6b69Smrg		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
639c06b6b69Smrg		    test -z "$HP_ARCH" && HP_ARCH=hppa
640c06b6b69Smrg		fi ;;
641c06b6b69Smrg	esac
642c06b6b69Smrg	if [ ${HP_ARCH} = "hppa2.0w" ]
643c06b6b69Smrg	then
6449f4658d1Smrg	    eval $set_cc_for_build
6459f4658d1Smrg
6469f4658d1Smrg	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
6479f4658d1Smrg	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
6489f4658d1Smrg	    # generating 64-bit code.  GNU and HP use different nomenclature:
6499f4658d1Smrg	    #
6509f4658d1Smrg	    # $ CC_FOR_BUILD=cc ./config.guess
6519f4658d1Smrg	    # => hppa2.0w-hp-hpux11.23
6529f4658d1Smrg	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
6539f4658d1Smrg	    # => hppa64-hp-hpux11.23
6549f4658d1Smrg
6559f4658d1Smrg	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
6569f4658d1Smrg		grep __LP64__ >/dev/null
657c06b6b69Smrg	    then
658c06b6b69Smrg		HP_ARCH="hppa2.0w"
659c06b6b69Smrg	    else
660c06b6b69Smrg		HP_ARCH="hppa64"
661c06b6b69Smrg	    fi
662c06b6b69Smrg	fi
663c06b6b69Smrg	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
6649f4658d1Smrg	exit ;;
665c06b6b69Smrg    ia64:HP-UX:*:*)
666c06b6b69Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
667c06b6b69Smrg	echo ia64-hp-hpux${HPUX_REV}
6689f4658d1Smrg	exit ;;
669c06b6b69Smrg    3050*:HI-UX:*:*)
670c06b6b69Smrg	eval $set_cc_for_build
671c06b6b69Smrg	sed 's/^	//' << EOF >$dummy.c
672c06b6b69Smrg	#include <unistd.h>
673c06b6b69Smrg	int
674c06b6b69Smrg	main ()
675c06b6b69Smrg	{
676c06b6b69Smrg	  long cpu = sysconf (_SC_CPU_VERSION);
677c06b6b69Smrg	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
678c06b6b69Smrg	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
679c06b6b69Smrg	     results, however.  */
680c06b6b69Smrg	  if (CPU_IS_PA_RISC (cpu))
681c06b6b69Smrg	    {
682c06b6b69Smrg	      switch (cpu)
683c06b6b69Smrg		{
684c06b6b69Smrg		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
685c06b6b69Smrg		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
686c06b6b69Smrg		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
687c06b6b69Smrg		  default: puts ("hppa-hitachi-hiuxwe2"); break;
688c06b6b69Smrg		}
689c06b6b69Smrg	    }
690c06b6b69Smrg	  else if (CPU_IS_HP_MC68K (cpu))
691c06b6b69Smrg	    puts ("m68k-hitachi-hiuxwe2");
692c06b6b69Smrg	  else puts ("unknown-hitachi-hiuxwe2");
693c06b6b69Smrg	  exit (0);
694c06b6b69Smrg	}
695c06b6b69SmrgEOF
6969f4658d1Smrg	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
6979f4658d1Smrg		{ echo "$SYSTEM_NAME"; exit; }
698c06b6b69Smrg	echo unknown-hitachi-hiuxwe2
6999f4658d1Smrg	exit ;;
700c06b6b69Smrg    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
701c06b6b69Smrg	echo hppa1.1-hp-bsd
7029f4658d1Smrg	exit ;;
703c06b6b69Smrg    9000/8??:4.3bsd:*:*)
704c06b6b69Smrg	echo hppa1.0-hp-bsd
7059f4658d1Smrg	exit ;;
706c06b6b69Smrg    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
707c06b6b69Smrg	echo hppa1.0-hp-mpeix
7089f4658d1Smrg	exit ;;
709c06b6b69Smrg    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
710c06b6b69Smrg	echo hppa1.1-hp-osf
7119f4658d1Smrg	exit ;;
712c06b6b69Smrg    hp8??:OSF1:*:*)
713c06b6b69Smrg	echo hppa1.0-hp-osf
7149f4658d1Smrg	exit ;;
715c06b6b69Smrg    i*86:OSF1:*:*)
716c06b6b69Smrg	if [ -x /usr/sbin/sysversion ] ; then
717c06b6b69Smrg	    echo ${UNAME_MACHINE}-unknown-osf1mk
718c06b6b69Smrg	else
719c06b6b69Smrg	    echo ${UNAME_MACHINE}-unknown-osf1
720c06b6b69Smrg	fi
7219f4658d1Smrg	exit ;;
722c06b6b69Smrg    parisc*:Lites*:*:*)
723c06b6b69Smrg	echo hppa1.1-hp-lites
7249f4658d1Smrg	exit ;;
725c06b6b69Smrg    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
726c06b6b69Smrg	echo c1-convex-bsd
7279f4658d1Smrg        exit ;;
728c06b6b69Smrg    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
729c06b6b69Smrg	if getsysinfo -f scalar_acc
730c06b6b69Smrg	then echo c32-convex-bsd
731c06b6b69Smrg	else echo c2-convex-bsd
732c06b6b69Smrg	fi
7339f4658d1Smrg        exit ;;
734c06b6b69Smrg    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
735c06b6b69Smrg	echo c34-convex-bsd
7369f4658d1Smrg        exit ;;
737c06b6b69Smrg    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
738c06b6b69Smrg	echo c38-convex-bsd
7399f4658d1Smrg        exit ;;
740c06b6b69Smrg    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
741c06b6b69Smrg	echo c4-convex-bsd
7429f4658d1Smrg        exit ;;
743c06b6b69Smrg    CRAY*Y-MP:*:*:*)
744c06b6b69Smrg	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7459f4658d1Smrg	exit ;;
746c06b6b69Smrg    CRAY*[A-Z]90:*:*:*)
747c06b6b69Smrg	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
748c06b6b69Smrg	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
749c06b6b69Smrg	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
750c06b6b69Smrg	      -e 's/\.[^.]*$/.X/'
7519f4658d1Smrg	exit ;;
752c06b6b69Smrg    CRAY*TS:*:*:*)
753c06b6b69Smrg	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7549f4658d1Smrg	exit ;;
755c06b6b69Smrg    CRAY*T3E:*:*:*)
756c06b6b69Smrg	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7579f4658d1Smrg	exit ;;
758c06b6b69Smrg    CRAY*SV1:*:*:*)
759c06b6b69Smrg	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7609f4658d1Smrg	exit ;;
761c06b6b69Smrg    *:UNICOS/mp:*:*)
7629f4658d1Smrg	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7639f4658d1Smrg	exit ;;
764c06b6b69Smrg    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
765c06b6b69Smrg	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
766c06b6b69Smrg        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
767c06b6b69Smrg        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
768c06b6b69Smrg        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
7699f4658d1Smrg        exit ;;
7709f4658d1Smrg    5000:UNIX_System_V:4.*:*)
7719f4658d1Smrg        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
7729f4658d1Smrg        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
7739f4658d1Smrg        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
7749f4658d1Smrg	exit ;;
775c06b6b69Smrg    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
776c06b6b69Smrg	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
7779f4658d1Smrg	exit ;;
778c06b6b69Smrg    sparc*:BSD/OS:*:*)
779c06b6b69Smrg	echo sparc-unknown-bsdi${UNAME_RELEASE}
7809f4658d1Smrg	exit ;;
781c06b6b69Smrg    *:BSD/OS:*:*)
782c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
7839f4658d1Smrg	exit ;;
7849f4658d1Smrg    *:FreeBSD:*:*)
7859f4658d1Smrg	case ${UNAME_MACHINE} in
7869f4658d1Smrg	    pc98)
7879f4658d1Smrg		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7889f4658d1Smrg	    amd64)
7899f4658d1Smrg		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7909f4658d1Smrg	    *)
7919f4658d1Smrg		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7929f4658d1Smrg	esac
7939f4658d1Smrg	exit ;;
794c06b6b69Smrg    i*:CYGWIN*:*)
795c06b6b69Smrg	echo ${UNAME_MACHINE}-pc-cygwin
7969f4658d1Smrg	exit ;;
7979f4658d1Smrg    *:MINGW*:*)
798c06b6b69Smrg	echo ${UNAME_MACHINE}-pc-mingw32
7999f4658d1Smrg	exit ;;
8009f4658d1Smrg    i*:windows32*:*)
8019f4658d1Smrg    	# uname -m includes "-pc" on this system.
8029f4658d1Smrg    	echo ${UNAME_MACHINE}-mingw32
8039f4658d1Smrg	exit ;;
804c06b6b69Smrg    i*:PW*:*)
805c06b6b69Smrg	echo ${UNAME_MACHINE}-pc-pw32
8069f4658d1Smrg	exit ;;
8079f4658d1Smrg    *:Interix*:[3456]*)
8089f4658d1Smrg    	case ${UNAME_MACHINE} in
8099f4658d1Smrg	    x86)
8109f4658d1Smrg		echo i586-pc-interix${UNAME_RELEASE}
8119f4658d1Smrg		exit ;;
812b20b881bSmrg	    EM64T | authenticamd | genuineintel)
8139f4658d1Smrg		echo x86_64-unknown-interix${UNAME_RELEASE}
8149f4658d1Smrg		exit ;;
8159f4658d1Smrg	    IA64)
8169f4658d1Smrg		echo ia64-unknown-interix${UNAME_RELEASE}
8179f4658d1Smrg		exit ;;
8189f4658d1Smrg	esac ;;
819c06b6b69Smrg    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
820c06b6b69Smrg	echo i${UNAME_MACHINE}-pc-mks
8219f4658d1Smrg	exit ;;
822c06b6b69Smrg    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
823c06b6b69Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
824c06b6b69Smrg	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
825c06b6b69Smrg	# UNAME_MACHINE based on the output of uname instead of i386?
826c06b6b69Smrg	echo i586-pc-interix
8279f4658d1Smrg	exit ;;
828c06b6b69Smrg    i*:UWIN*:*)
829c06b6b69Smrg	echo ${UNAME_MACHINE}-pc-uwin
8309f4658d1Smrg	exit ;;
8319f4658d1Smrg    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
8329f4658d1Smrg	echo x86_64-unknown-cygwin
8339f4658d1Smrg	exit ;;
834c06b6b69Smrg    p*:CYGWIN*:*)
835c06b6b69Smrg	echo powerpcle-unknown-cygwin
8369f4658d1Smrg	exit ;;
837c06b6b69Smrg    prep*:SunOS:5.*:*)
838c06b6b69Smrg	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
8399f4658d1Smrg	exit ;;
840c06b6b69Smrg    *:GNU:*:*)
8419f4658d1Smrg	# the GNU system
842c06b6b69Smrg	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
8439f4658d1Smrg	exit ;;
8449f4658d1Smrg    *:GNU/*:*:*)
8459f4658d1Smrg	# other systems with GNU libc and userland
8469f4658d1Smrg	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
8479f4658d1Smrg	exit ;;
848c06b6b69Smrg    i*86:Minix:*:*)
849c06b6b69Smrg	echo ${UNAME_MACHINE}-pc-minix
8509f4658d1Smrg	exit ;;
851c06b6b69Smrg    arm*:Linux:*:*)
8529f4658d1Smrg	eval $set_cc_for_build
8539f4658d1Smrg	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
8549f4658d1Smrg	    | grep -q __ARM_EABI__
8559f4658d1Smrg	then
8569f4658d1Smrg	    echo ${UNAME_MACHINE}-unknown-linux-gnu
8579f4658d1Smrg	else
8589f4658d1Smrg	    echo ${UNAME_MACHINE}-unknown-linux-gnueabi
8599f4658d1Smrg	fi
8609f4658d1Smrg	exit ;;
8619f4658d1Smrg    avr32*:Linux:*:*)
862c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
8639f4658d1Smrg	exit ;;
864c06b6b69Smrg    cris:Linux:*:*)
865c06b6b69Smrg	echo cris-axis-linux-gnu
8669f4658d1Smrg	exit ;;
8679f4658d1Smrg    crisv32:Linux:*:*)
8689f4658d1Smrg	echo crisv32-axis-linux-gnu
8699f4658d1Smrg	exit ;;
8709f4658d1Smrg    frv:Linux:*:*)
8719f4658d1Smrg    	echo frv-unknown-linux-gnu
8729f4658d1Smrg	exit ;;
873c06b6b69Smrg    ia64:Linux:*:*)
8749f4658d1Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
8759f4658d1Smrg	exit ;;
8769f4658d1Smrg    m32r*:Linux:*:*)
8779f4658d1Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
8789f4658d1Smrg	exit ;;
879c06b6b69Smrg    m68*:Linux:*:*)
880c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
8819f4658d1Smrg	exit ;;
882c06b6b69Smrg    mips:Linux:*:*)
883c06b6b69Smrg	eval $set_cc_for_build
884c06b6b69Smrg	sed 's/^	//' << EOF >$dummy.c
885c06b6b69Smrg	#undef CPU
886c06b6b69Smrg	#undef mips
887c06b6b69Smrg	#undef mipsel
888c06b6b69Smrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
889c06b6b69Smrg	CPU=mipsel
890c06b6b69Smrg	#else
891c06b6b69Smrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
892c06b6b69Smrg	CPU=mips
893c06b6b69Smrg	#else
894c06b6b69Smrg	CPU=
895c06b6b69Smrg	#endif
896c06b6b69Smrg	#endif
897c06b6b69SmrgEOF
8989f4658d1Smrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
8999f4658d1Smrg	    /^CPU/{
9009f4658d1Smrg		s: ::g
9019f4658d1Smrg		p
9029f4658d1Smrg	    }'`"
9039f4658d1Smrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
904c06b6b69Smrg	;;
905c06b6b69Smrg    mips64:Linux:*:*)
906c06b6b69Smrg	eval $set_cc_for_build
907c06b6b69Smrg	sed 's/^	//' << EOF >$dummy.c
908c06b6b69Smrg	#undef CPU
909c06b6b69Smrg	#undef mips64
910c06b6b69Smrg	#undef mips64el
911c06b6b69Smrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
912c06b6b69Smrg	CPU=mips64el
913c06b6b69Smrg	#else
914c06b6b69Smrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
915c06b6b69Smrg	CPU=mips64
916c06b6b69Smrg	#else
917c06b6b69Smrg	CPU=
918c06b6b69Smrg	#endif
919c06b6b69Smrg	#endif
920c06b6b69SmrgEOF
9219f4658d1Smrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
9229f4658d1Smrg	    /^CPU/{
9239f4658d1Smrg		s: ::g
9249f4658d1Smrg		p
9259f4658d1Smrg	    }'`"
9269f4658d1Smrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
927c06b6b69Smrg	;;
9289f4658d1Smrg    or32:Linux:*:*)
9299f4658d1Smrg	echo or32-unknown-linux-gnu
9309f4658d1Smrg	exit ;;
931c06b6b69Smrg    ppc:Linux:*:*)
9329f4658d1Smrg	echo powerpc-unknown-linux-gnu
9339f4658d1Smrg	exit ;;
934c06b6b69Smrg    ppc64:Linux:*:*)
9359f4658d1Smrg	echo powerpc64-unknown-linux-gnu
9369f4658d1Smrg	exit ;;
937c06b6b69Smrg    alpha:Linux:*:*)
938c06b6b69Smrg	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
939c06b6b69Smrg	  EV5)   UNAME_MACHINE=alphaev5 ;;
940c06b6b69Smrg	  EV56)  UNAME_MACHINE=alphaev56 ;;
941c06b6b69Smrg	  PCA56) UNAME_MACHINE=alphapca56 ;;
942c06b6b69Smrg	  PCA57) UNAME_MACHINE=alphapca56 ;;
943c06b6b69Smrg	  EV6)   UNAME_MACHINE=alphaev6 ;;
944c06b6b69Smrg	  EV67)  UNAME_MACHINE=alphaev67 ;;
945c06b6b69Smrg	  EV68*) UNAME_MACHINE=alphaev68 ;;
946c06b6b69Smrg        esac
947c06b6b69Smrg	objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
948c06b6b69Smrg	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
949c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
9509f4658d1Smrg	exit ;;
951b20b881bSmrg    padre:Linux:*:*)
952b20b881bSmrg	echo sparc-unknown-linux-gnu
953b20b881bSmrg	exit ;;
954c06b6b69Smrg    parisc:Linux:*:* | hppa:Linux:*:*)
955c06b6b69Smrg	# Look for CPU level
956c06b6b69Smrg	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
957c06b6b69Smrg	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
958c06b6b69Smrg	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
959c06b6b69Smrg	  *)    echo hppa-unknown-linux-gnu ;;
960c06b6b69Smrg	esac
9619f4658d1Smrg	exit ;;
962c06b6b69Smrg    parisc64:Linux:*:* | hppa64:Linux:*:*)
963c06b6b69Smrg	echo hppa64-unknown-linux-gnu
9649f4658d1Smrg	exit ;;
965c06b6b69Smrg    s390:Linux:*:* | s390x:Linux:*:*)
9669f4658d1Smrg	echo ${UNAME_MACHINE}-ibm-linux
9679f4658d1Smrg	exit ;;
968c06b6b69Smrg    sh64*:Linux:*:*)
969c06b6b69Smrg    	echo ${UNAME_MACHINE}-unknown-linux-gnu
9709f4658d1Smrg	exit ;;
971c06b6b69Smrg    sh*:Linux:*:*)
972c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9739f4658d1Smrg	exit ;;
974c06b6b69Smrg    sparc:Linux:*:* | sparc64:Linux:*:*)
975c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9769f4658d1Smrg	exit ;;
9779f4658d1Smrg    vax:Linux:*:*)
9789f4658d1Smrg	echo ${UNAME_MACHINE}-dec-linux-gnu
9799f4658d1Smrg	exit ;;
980c06b6b69Smrg    x86_64:Linux:*:*)
9819f4658d1Smrg	echo x86_64-unknown-linux-gnu
9829f4658d1Smrg	exit ;;
9839f4658d1Smrg    xtensa*:Linux:*:*)
9849f4658d1Smrg    	echo ${UNAME_MACHINE}-unknown-linux-gnu
9859f4658d1Smrg	exit ;;
986c06b6b69Smrg    i*86:Linux:*:*)
987c06b6b69Smrg	# The BFD linker knows what the default object file format is, so
988c06b6b69Smrg	# first see if it will tell us. cd to the root directory to prevent
989c06b6b69Smrg	# problems with other programs or directories called `ld' in the path.
990c06b6b69Smrg	# Set LC_ALL=C to ensure ld outputs messages in English.
991c06b6b69Smrg	ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
992c06b6b69Smrg			 | sed -ne '/supported targets:/!d
993c06b6b69Smrg				    s/[ 	][ 	]*/ /g
994c06b6b69Smrg				    s/.*supported targets: *//
995c06b6b69Smrg				    s/ .*//
996c06b6b69Smrg				    p'`
997c06b6b69Smrg        case "$ld_supported_targets" in
998c06b6b69Smrg	  elf32-i386)
999c06b6b69Smrg		TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
1000c06b6b69Smrg		;;
1001c06b6b69Smrg	  a.out-i386-linux)
1002c06b6b69Smrg		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
10039f4658d1Smrg		exit ;;
1004c06b6b69Smrg	  "")
1005c06b6b69Smrg		# Either a pre-BFD a.out linker (linux-gnuoldld) or
1006c06b6b69Smrg		# one that does not give us useful --help.
1007c06b6b69Smrg		echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
10089f4658d1Smrg		exit ;;
1009c06b6b69Smrg	esac
1010c06b6b69Smrg	# Determine whether the default compiler is a.out or elf
1011c06b6b69Smrg	eval $set_cc_for_build
1012c06b6b69Smrg	sed 's/^	//' << EOF >$dummy.c
1013c06b6b69Smrg	#include <features.h>
1014c06b6b69Smrg	#ifdef __ELF__
1015c06b6b69Smrg	# ifdef __GLIBC__
1016c06b6b69Smrg	#  if __GLIBC__ >= 2
1017c06b6b69Smrg	LIBC=gnu
1018c06b6b69Smrg	#  else
1019c06b6b69Smrg	LIBC=gnulibc1
1020c06b6b69Smrg	#  endif
1021c06b6b69Smrg	# else
1022c06b6b69Smrg	LIBC=gnulibc1
1023c06b6b69Smrg	# endif
1024c06b6b69Smrg	#else
10259f4658d1Smrg	#if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
1026c06b6b69Smrg	LIBC=gnu
1027c06b6b69Smrg	#else
1028c06b6b69Smrg	LIBC=gnuaout
1029c06b6b69Smrg	#endif
1030c06b6b69Smrg	#endif
10319f4658d1Smrg	#ifdef __dietlibc__
10329f4658d1Smrg	LIBC=dietlibc
10339f4658d1Smrg	#endif
1034c06b6b69SmrgEOF
10359f4658d1Smrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
10369f4658d1Smrg	    /^LIBC/{
10379f4658d1Smrg		s: ::g
10389f4658d1Smrg		p
10399f4658d1Smrg	    }'`"
10409f4658d1Smrg	test x"${LIBC}" != x && {
10419f4658d1Smrg		echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
10429f4658d1Smrg		exit
10439f4658d1Smrg	}
10449f4658d1Smrg	test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
1045c06b6b69Smrg	;;
1046c06b6b69Smrg    i*86:DYNIX/ptx:4*:*)
1047c06b6b69Smrg	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
1048c06b6b69Smrg	# earlier versions are messed up and put the nodename in both
1049c06b6b69Smrg	# sysname and nodename.
1050c06b6b69Smrg	echo i386-sequent-sysv4
10519f4658d1Smrg	exit ;;
1052c06b6b69Smrg    i*86:UNIX_SV:4.2MP:2.*)
1053c06b6b69Smrg        # Unixware is an offshoot of SVR4, but it has its own version
1054c06b6b69Smrg        # number series starting with 2...
1055c06b6b69Smrg        # I am not positive that other SVR4 systems won't match this,
1056c06b6b69Smrg	# I just have to hope.  -- rms.
1057c06b6b69Smrg        # Use sysv4.2uw... so that sysv4* matches it.
1058c06b6b69Smrg	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
10599f4658d1Smrg	exit ;;
1060c06b6b69Smrg    i*86:OS/2:*:*)
1061c06b6b69Smrg	# If we were able to find `uname', then EMX Unix compatibility
1062c06b6b69Smrg	# is probably installed.
1063c06b6b69Smrg	echo ${UNAME_MACHINE}-pc-os2-emx
10649f4658d1Smrg	exit ;;
1065c06b6b69Smrg    i*86:XTS-300:*:STOP)
1066c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-stop
10679f4658d1Smrg	exit ;;
1068c06b6b69Smrg    i*86:atheos:*:*)
1069c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-atheos
10709f4658d1Smrg	exit ;;
10719f4658d1Smrg    i*86:syllable:*:*)
10729f4658d1Smrg	echo ${UNAME_MACHINE}-pc-syllable
10739f4658d1Smrg	exit ;;
1074c06b6b69Smrg    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
1075c06b6b69Smrg	echo i386-unknown-lynxos${UNAME_RELEASE}
10769f4658d1Smrg	exit ;;
1077c06b6b69Smrg    i*86:*DOS:*:*)
1078c06b6b69Smrg	echo ${UNAME_MACHINE}-pc-msdosdjgpp
10799f4658d1Smrg	exit ;;
1080c06b6b69Smrg    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
1081c06b6b69Smrg	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
1082c06b6b69Smrg	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1083c06b6b69Smrg		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
1084c06b6b69Smrg	else
1085c06b6b69Smrg		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
1086c06b6b69Smrg	fi
10879f4658d1Smrg	exit ;;
10889f4658d1Smrg    i*86:*:5:[678]*)
10899f4658d1Smrg    	# UnixWare 7.x, OpenUNIX and OpenServer 6.
1090c06b6b69Smrg	case `/bin/uname -X | grep "^Machine"` in
1091c06b6b69Smrg	    *486*)	     UNAME_MACHINE=i486 ;;
1092c06b6b69Smrg	    *Pentium)	     UNAME_MACHINE=i586 ;;
1093c06b6b69Smrg	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1094c06b6b69Smrg	esac
1095c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
10969f4658d1Smrg	exit ;;
1097c06b6b69Smrg    i*86:*:3.2:*)
1098c06b6b69Smrg	if test -f /usr/options/cb.name; then
1099c06b6b69Smrg		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1100c06b6b69Smrg		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1101c06b6b69Smrg	elif /bin/uname -X 2>/dev/null >/dev/null ; then
1102c06b6b69Smrg		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1103c06b6b69Smrg		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1104c06b6b69Smrg		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1105c06b6b69Smrg			&& UNAME_MACHINE=i586
1106c06b6b69Smrg		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1107c06b6b69Smrg			&& UNAME_MACHINE=i686
1108c06b6b69Smrg		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1109c06b6b69Smrg			&& UNAME_MACHINE=i686
1110c06b6b69Smrg		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1111c06b6b69Smrg	else
1112c06b6b69Smrg		echo ${UNAME_MACHINE}-pc-sysv32
1113c06b6b69Smrg	fi
11149f4658d1Smrg	exit ;;
1115c06b6b69Smrg    pc:*:*:*)
1116c06b6b69Smrg	# Left here for compatibility:
1117c06b6b69Smrg        # uname -m prints for DJGPP always 'pc', but it prints nothing about
1118c06b6b69Smrg        # the processor, so we play safe by assuming i386.
1119c06b6b69Smrg	echo i386-pc-msdosdjgpp
11209f4658d1Smrg        exit ;;
1121c06b6b69Smrg    Intel:Mach:3*:*)
1122c06b6b69Smrg	echo i386-pc-mach3
11239f4658d1Smrg	exit ;;
1124c06b6b69Smrg    paragon:*:*:*)
1125c06b6b69Smrg	echo i860-intel-osf1
11269f4658d1Smrg	exit ;;
1127c06b6b69Smrg    i860:*:4.*:*) # i860-SVR4
1128c06b6b69Smrg	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1129c06b6b69Smrg	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
1130c06b6b69Smrg	else # Add other i860-SVR4 vendors below as they are discovered.
1131c06b6b69Smrg	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
1132c06b6b69Smrg	fi
11339f4658d1Smrg	exit ;;
1134c06b6b69Smrg    mini*:CTIX:SYS*5:*)
1135c06b6b69Smrg	# "miniframe"
1136c06b6b69Smrg	echo m68010-convergent-sysv
11379f4658d1Smrg	exit ;;
1138c06b6b69Smrg    mc68k:UNIX:SYSTEM5:3.51m)
1139c06b6b69Smrg	echo m68k-convergent-sysv
11409f4658d1Smrg	exit ;;
1141c06b6b69Smrg    M680?0:D-NIX:5.3:*)
1142c06b6b69Smrg	echo m68k-diab-dnix
11439f4658d1Smrg	exit ;;
11449f4658d1Smrg    M68*:*:R3V[5678]*:*)
11459f4658d1Smrg	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
11469f4658d1Smrg    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)
1147c06b6b69Smrg	OS_REL=''
1148c06b6b69Smrg	test -r /etc/.relid \
1149c06b6b69Smrg	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1150c06b6b69Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
11519f4658d1Smrg	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1152c06b6b69Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
11539f4658d1Smrg	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1154c06b6b69Smrg    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1155c06b6b69Smrg        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
11569f4658d1Smrg          && { echo i486-ncr-sysv4; exit; } ;;
1157c06b6b69Smrg    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1158c06b6b69Smrg	echo m68k-unknown-lynxos${UNAME_RELEASE}
11599f4658d1Smrg	exit ;;
1160c06b6b69Smrg    mc68030:UNIX_System_V:4.*:*)
1161c06b6b69Smrg	echo m68k-atari-sysv4
11629f4658d1Smrg	exit ;;
1163c06b6b69Smrg    TSUNAMI:LynxOS:2.*:*)
1164c06b6b69Smrg	echo sparc-unknown-lynxos${UNAME_RELEASE}
11659f4658d1Smrg	exit ;;
1166c06b6b69Smrg    rs6000:LynxOS:2.*:*)
1167c06b6b69Smrg	echo rs6000-unknown-lynxos${UNAME_RELEASE}
11689f4658d1Smrg	exit ;;
1169c06b6b69Smrg    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
1170c06b6b69Smrg	echo powerpc-unknown-lynxos${UNAME_RELEASE}
11719f4658d1Smrg	exit ;;
1172c06b6b69Smrg    SM[BE]S:UNIX_SV:*:*)
1173c06b6b69Smrg	echo mips-dde-sysv${UNAME_RELEASE}
11749f4658d1Smrg	exit ;;
1175c06b6b69Smrg    RM*:ReliantUNIX-*:*:*)
1176c06b6b69Smrg	echo mips-sni-sysv4
11779f4658d1Smrg	exit ;;
1178c06b6b69Smrg    RM*:SINIX-*:*:*)
1179c06b6b69Smrg	echo mips-sni-sysv4
11809f4658d1Smrg	exit ;;
1181c06b6b69Smrg    *:SINIX-*:*:*)
1182c06b6b69Smrg	if uname -p 2>/dev/null >/dev/null ; then
1183c06b6b69Smrg		UNAME_MACHINE=`(uname -p) 2>/dev/null`
1184c06b6b69Smrg		echo ${UNAME_MACHINE}-sni-sysv4
1185c06b6b69Smrg	else
1186c06b6b69Smrg		echo ns32k-sni-sysv
1187c06b6b69Smrg	fi
11889f4658d1Smrg	exit ;;
1189c06b6b69Smrg    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1190c06b6b69Smrg                      # says <Richard.M.Bartel@ccMail.Census.GOV>
1191c06b6b69Smrg        echo i586-unisys-sysv4
11929f4658d1Smrg        exit ;;
1193c06b6b69Smrg    *:UNIX_System_V:4*:FTX*)
1194c06b6b69Smrg	# From Gerald Hewes <hewes@openmarket.com>.
1195c06b6b69Smrg	# How about differentiating between stratus architectures? -djm
1196c06b6b69Smrg	echo hppa1.1-stratus-sysv4
11979f4658d1Smrg	exit ;;
1198c06b6b69Smrg    *:*:*:FTX*)
1199c06b6b69Smrg	# From seanf@swdc.stratus.com.
1200c06b6b69Smrg	echo i860-stratus-sysv4
12019f4658d1Smrg	exit ;;
12029f4658d1Smrg    i*86:VOS:*:*)
12039f4658d1Smrg	# From Paul.Green@stratus.com.
12049f4658d1Smrg	echo ${UNAME_MACHINE}-stratus-vos
12059f4658d1Smrg	exit ;;
1206c06b6b69Smrg    *:VOS:*:*)
1207c06b6b69Smrg	# From Paul.Green@stratus.com.
1208c06b6b69Smrg	echo hppa1.1-stratus-vos
12099f4658d1Smrg	exit ;;
1210c06b6b69Smrg    mc68*:A/UX:*:*)
1211c06b6b69Smrg	echo m68k-apple-aux${UNAME_RELEASE}
12129f4658d1Smrg	exit ;;
1213c06b6b69Smrg    news*:NEWS-OS:6*:*)
1214c06b6b69Smrg	echo mips-sony-newsos6
12159f4658d1Smrg	exit ;;
1216c06b6b69Smrg    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1217c06b6b69Smrg	if [ -d /usr/nec ]; then
1218c06b6b69Smrg	        echo mips-nec-sysv${UNAME_RELEASE}
1219c06b6b69Smrg	else
1220c06b6b69Smrg	        echo mips-unknown-sysv${UNAME_RELEASE}
1221c06b6b69Smrg	fi
12229f4658d1Smrg        exit ;;
1223c06b6b69Smrg    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
1224c06b6b69Smrg	echo powerpc-be-beos
12259f4658d1Smrg	exit ;;
1226c06b6b69Smrg    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
1227c06b6b69Smrg	echo powerpc-apple-beos
12289f4658d1Smrg	exit ;;
1229c06b6b69Smrg    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
1230c06b6b69Smrg	echo i586-pc-beos
12319f4658d1Smrg	exit ;;
1232b20b881bSmrg    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
1233b20b881bSmrg	echo i586-pc-haiku
1234b20b881bSmrg	exit ;;
1235c06b6b69Smrg    SX-4:SUPER-UX:*:*)
1236c06b6b69Smrg	echo sx4-nec-superux${UNAME_RELEASE}
12379f4658d1Smrg	exit ;;
1238c06b6b69Smrg    SX-5:SUPER-UX:*:*)
1239c06b6b69Smrg	echo sx5-nec-superux${UNAME_RELEASE}
12409f4658d1Smrg	exit ;;
1241c06b6b69Smrg    SX-6:SUPER-UX:*:*)
1242c06b6b69Smrg	echo sx6-nec-superux${UNAME_RELEASE}
12439f4658d1Smrg	exit ;;
12449f4658d1Smrg    SX-7:SUPER-UX:*:*)
12459f4658d1Smrg	echo sx7-nec-superux${UNAME_RELEASE}
12469f4658d1Smrg	exit ;;
12479f4658d1Smrg    SX-8:SUPER-UX:*:*)
12489f4658d1Smrg	echo sx8-nec-superux${UNAME_RELEASE}
12499f4658d1Smrg	exit ;;
12509f4658d1Smrg    SX-8R:SUPER-UX:*:*)
12519f4658d1Smrg	echo sx8r-nec-superux${UNAME_RELEASE}
12529f4658d1Smrg	exit ;;
1253c06b6b69Smrg    Power*:Rhapsody:*:*)
1254c06b6b69Smrg	echo powerpc-apple-rhapsody${UNAME_RELEASE}
12559f4658d1Smrg	exit ;;
1256c06b6b69Smrg    *:Rhapsody:*:*)
1257c06b6b69Smrg	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
12589f4658d1Smrg	exit ;;
1259c06b6b69Smrg    *:Darwin:*:*)
12609f4658d1Smrg	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
12619f4658d1Smrg	case $UNAME_PROCESSOR in
12629f4658d1Smrg	    unknown) UNAME_PROCESSOR=powerpc ;;
1263c06b6b69Smrg	esac
1264c06b6b69Smrg	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
12659f4658d1Smrg	exit ;;
1266c06b6b69Smrg    *:procnto*:*:* | *:QNX:[0123456789]*:*)
1267c06b6b69Smrg	UNAME_PROCESSOR=`uname -p`
1268c06b6b69Smrg	if test "$UNAME_PROCESSOR" = "x86"; then
1269c06b6b69Smrg		UNAME_PROCESSOR=i386
1270c06b6b69Smrg		UNAME_MACHINE=pc
1271c06b6b69Smrg	fi
1272c06b6b69Smrg	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
12739f4658d1Smrg	exit ;;
1274c06b6b69Smrg    *:QNX:*:4*)
1275c06b6b69Smrg	echo i386-pc-qnx
12769f4658d1Smrg	exit ;;
12779f4658d1Smrg    NSE-?:NONSTOP_KERNEL:*:*)
12789f4658d1Smrg	echo nse-tandem-nsk${UNAME_RELEASE}
12799f4658d1Smrg	exit ;;
12809f4658d1Smrg    NSR-?:NONSTOP_KERNEL:*:*)
1281c06b6b69Smrg	echo nsr-tandem-nsk${UNAME_RELEASE}
12829f4658d1Smrg	exit ;;
1283c06b6b69Smrg    *:NonStop-UX:*:*)
1284c06b6b69Smrg	echo mips-compaq-nonstopux
12859f4658d1Smrg	exit ;;
1286c06b6b69Smrg    BS2000:POSIX*:*:*)
1287c06b6b69Smrg	echo bs2000-siemens-sysv
12889f4658d1Smrg	exit ;;
1289c06b6b69Smrg    DS/*:UNIX_System_V:*:*)
1290c06b6b69Smrg	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
12919f4658d1Smrg	exit ;;
1292c06b6b69Smrg    *:Plan9:*:*)
1293c06b6b69Smrg	# "uname -m" is not consistent, so use $cputype instead. 386
1294c06b6b69Smrg	# is converted to i386 for consistency with other x86
1295c06b6b69Smrg	# operating systems.
1296c06b6b69Smrg	if test "$cputype" = "386"; then
1297c06b6b69Smrg	    UNAME_MACHINE=i386
1298c06b6b69Smrg	else
1299c06b6b69Smrg	    UNAME_MACHINE="$cputype"
1300c06b6b69Smrg	fi
1301c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-plan9
13029f4658d1Smrg	exit ;;
1303c06b6b69Smrg    *:TOPS-10:*:*)
1304c06b6b69Smrg	echo pdp10-unknown-tops10
13059f4658d1Smrg	exit ;;
1306c06b6b69Smrg    *:TENEX:*:*)
1307c06b6b69Smrg	echo pdp10-unknown-tenex
13089f4658d1Smrg	exit ;;
1309c06b6b69Smrg    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1310c06b6b69Smrg	echo pdp10-dec-tops20
13119f4658d1Smrg	exit ;;
1312c06b6b69Smrg    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1313c06b6b69Smrg	echo pdp10-xkl-tops20
13149f4658d1Smrg	exit ;;
1315c06b6b69Smrg    *:TOPS-20:*:*)
1316c06b6b69Smrg	echo pdp10-unknown-tops20
13179f4658d1Smrg	exit ;;
1318c06b6b69Smrg    *:ITS:*:*)
1319c06b6b69Smrg	echo pdp10-unknown-its
13209f4658d1Smrg	exit ;;
1321c06b6b69Smrg    SEI:*:*:SEIUX)
1322c06b6b69Smrg        echo mips-sei-seiux${UNAME_RELEASE}
13239f4658d1Smrg	exit ;;
13249f4658d1Smrg    *:DragonFly:*:*)
13259f4658d1Smrg	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
13269f4658d1Smrg	exit ;;
13279f4658d1Smrg    *:*VMS:*:*)
13289f4658d1Smrg    	UNAME_MACHINE=`(uname -p) 2>/dev/null`
13299f4658d1Smrg	case "${UNAME_MACHINE}" in
13309f4658d1Smrg	    A*) echo alpha-dec-vms ; exit ;;
13319f4658d1Smrg	    I*) echo ia64-dec-vms ; exit ;;
13329f4658d1Smrg	    V*) echo vax-dec-vms ; exit ;;
13339f4658d1Smrg	esac ;;
13349f4658d1Smrg    *:XENIX:*:SysV)
13359f4658d1Smrg	echo i386-pc-xenix
13369f4658d1Smrg	exit ;;
13379f4658d1Smrg    i*86:skyos:*:*)
13389f4658d1Smrg	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
13399f4658d1Smrg	exit ;;
13409f4658d1Smrg    i*86:rdos:*:*)
13419f4658d1Smrg	echo ${UNAME_MACHINE}-pc-rdos
13429f4658d1Smrg	exit ;;
1343c06b6b69Smrgesac
1344c06b6b69Smrg
1345c06b6b69Smrg#echo '(No uname command or uname output not recognized.)' 1>&2
1346c06b6b69Smrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
1347c06b6b69Smrg
1348c06b6b69Smrgeval $set_cc_for_build
1349c06b6b69Smrgcat >$dummy.c <<EOF
1350c06b6b69Smrg#ifdef _SEQUENT_
1351c06b6b69Smrg# include <sys/types.h>
1352c06b6b69Smrg# include <sys/utsname.h>
1353c06b6b69Smrg#endif
1354c06b6b69Smrgmain ()
1355c06b6b69Smrg{
1356c06b6b69Smrg#if defined (sony)
1357c06b6b69Smrg#if defined (MIPSEB)
1358c06b6b69Smrg  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
1359c06b6b69Smrg     I don't know....  */
1360c06b6b69Smrg  printf ("mips-sony-bsd\n"); exit (0);
1361c06b6b69Smrg#else
1362c06b6b69Smrg#include <sys/param.h>
1363c06b6b69Smrg  printf ("m68k-sony-newsos%s\n",
1364c06b6b69Smrg#ifdef NEWSOS4
1365c06b6b69Smrg          "4"
1366c06b6b69Smrg#else
1367c06b6b69Smrg	  ""
1368c06b6b69Smrg#endif
1369c06b6b69Smrg         ); exit (0);
1370c06b6b69Smrg#endif
1371c06b6b69Smrg#endif
1372c06b6b69Smrg
1373c06b6b69Smrg#if defined (__arm) && defined (__acorn) && defined (__unix)
13749f4658d1Smrg  printf ("arm-acorn-riscix\n"); exit (0);
1375c06b6b69Smrg#endif
1376c06b6b69Smrg
1377c06b6b69Smrg#if defined (hp300) && !defined (hpux)
1378c06b6b69Smrg  printf ("m68k-hp-bsd\n"); exit (0);
1379c06b6b69Smrg#endif
1380c06b6b69Smrg
1381c06b6b69Smrg#if defined (NeXT)
1382c06b6b69Smrg#if !defined (__ARCHITECTURE__)
1383c06b6b69Smrg#define __ARCHITECTURE__ "m68k"
1384c06b6b69Smrg#endif
1385c06b6b69Smrg  int version;
1386c06b6b69Smrg  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
1387c06b6b69Smrg  if (version < 4)
1388c06b6b69Smrg    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
1389c06b6b69Smrg  else
1390c06b6b69Smrg    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
1391c06b6b69Smrg  exit (0);
1392c06b6b69Smrg#endif
1393c06b6b69Smrg
1394c06b6b69Smrg#if defined (MULTIMAX) || defined (n16)
1395c06b6b69Smrg#if defined (UMAXV)
1396c06b6b69Smrg  printf ("ns32k-encore-sysv\n"); exit (0);
1397c06b6b69Smrg#else
1398c06b6b69Smrg#if defined (CMU)
1399c06b6b69Smrg  printf ("ns32k-encore-mach\n"); exit (0);
1400c06b6b69Smrg#else
1401c06b6b69Smrg  printf ("ns32k-encore-bsd\n"); exit (0);
1402c06b6b69Smrg#endif
1403c06b6b69Smrg#endif
1404c06b6b69Smrg#endif
1405c06b6b69Smrg
1406c06b6b69Smrg#if defined (__386BSD__)
1407c06b6b69Smrg  printf ("i386-pc-bsd\n"); exit (0);
1408c06b6b69Smrg#endif
1409c06b6b69Smrg
1410c06b6b69Smrg#if defined (sequent)
1411c06b6b69Smrg#if defined (i386)
1412c06b6b69Smrg  printf ("i386-sequent-dynix\n"); exit (0);
1413c06b6b69Smrg#endif
1414c06b6b69Smrg#if defined (ns32000)
1415c06b6b69Smrg  printf ("ns32k-sequent-dynix\n"); exit (0);
1416c06b6b69Smrg#endif
1417c06b6b69Smrg#endif
1418c06b6b69Smrg
1419c06b6b69Smrg#if defined (_SEQUENT_)
1420c06b6b69Smrg    struct utsname un;
1421c06b6b69Smrg
1422c06b6b69Smrg    uname(&un);
1423c06b6b69Smrg
1424c06b6b69Smrg    if (strncmp(un.version, "V2", 2) == 0) {
1425c06b6b69Smrg	printf ("i386-sequent-ptx2\n"); exit (0);
1426c06b6b69Smrg    }
1427c06b6b69Smrg    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
1428c06b6b69Smrg	printf ("i386-sequent-ptx1\n"); exit (0);
1429c06b6b69Smrg    }
1430c06b6b69Smrg    printf ("i386-sequent-ptx\n"); exit (0);
1431c06b6b69Smrg
1432c06b6b69Smrg#endif
1433c06b6b69Smrg
1434c06b6b69Smrg#if defined (vax)
1435c06b6b69Smrg# if !defined (ultrix)
1436c06b6b69Smrg#  include <sys/param.h>
1437c06b6b69Smrg#  if defined (BSD)
1438c06b6b69Smrg#   if BSD == 43
1439c06b6b69Smrg      printf ("vax-dec-bsd4.3\n"); exit (0);
1440c06b6b69Smrg#   else
1441c06b6b69Smrg#    if BSD == 199006
1442c06b6b69Smrg      printf ("vax-dec-bsd4.3reno\n"); exit (0);
1443c06b6b69Smrg#    else
1444c06b6b69Smrg      printf ("vax-dec-bsd\n"); exit (0);
1445c06b6b69Smrg#    endif
1446c06b6b69Smrg#   endif
1447c06b6b69Smrg#  else
1448c06b6b69Smrg    printf ("vax-dec-bsd\n"); exit (0);
1449c06b6b69Smrg#  endif
1450c06b6b69Smrg# else
1451c06b6b69Smrg    printf ("vax-dec-ultrix\n"); exit (0);
1452c06b6b69Smrg# endif
1453c06b6b69Smrg#endif
1454c06b6b69Smrg
1455c06b6b69Smrg#if defined (alliant) && defined (i860)
1456c06b6b69Smrg  printf ("i860-alliant-bsd\n"); exit (0);
1457c06b6b69Smrg#endif
1458c06b6b69Smrg
1459c06b6b69Smrg  exit (1);
1460c06b6b69Smrg}
1461c06b6b69SmrgEOF
1462c06b6b69Smrg
14639f4658d1Smrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
14649f4658d1Smrg	{ echo "$SYSTEM_NAME"; exit; }
1465c06b6b69Smrg
1466c06b6b69Smrg# Apollos put the system type in the environment.
1467c06b6b69Smrg
14689f4658d1Smrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
1469c06b6b69Smrg
1470c06b6b69Smrg# Convex versions that predate uname can use getsysinfo(1)
1471c06b6b69Smrg
1472c06b6b69Smrgif [ -x /usr/convex/getsysinfo ]
1473c06b6b69Smrgthen
1474c06b6b69Smrg    case `getsysinfo -f cpu_type` in
1475c06b6b69Smrg    c1*)
1476c06b6b69Smrg	echo c1-convex-bsd
14779f4658d1Smrg	exit ;;
1478c06b6b69Smrg    c2*)
1479c06b6b69Smrg	if getsysinfo -f scalar_acc
1480c06b6b69Smrg	then echo c32-convex-bsd
1481c06b6b69Smrg	else echo c2-convex-bsd
1482c06b6b69Smrg	fi
14839f4658d1Smrg	exit ;;
1484c06b6b69Smrg    c34*)
1485c06b6b69Smrg	echo c34-convex-bsd
14869f4658d1Smrg	exit ;;
1487c06b6b69Smrg    c38*)
1488c06b6b69Smrg	echo c38-convex-bsd
14899f4658d1Smrg	exit ;;
1490c06b6b69Smrg    c4*)
1491c06b6b69Smrg	echo c4-convex-bsd
14929f4658d1Smrg	exit ;;
1493c06b6b69Smrg    esac
1494c06b6b69Smrgfi
1495c06b6b69Smrg
1496c06b6b69Smrgcat >&2 <<EOF
1497c06b6b69Smrg$0: unable to guess system type
1498c06b6b69Smrg
1499c06b6b69SmrgThis script, last modified $timestamp, has failed to recognize
1500c06b6b69Smrgthe operating system you are using. It is advised that you
1501c06b6b69Smrgdownload the most up to date version of the config scripts from
1502c06b6b69Smrg
15039f4658d1Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
15049f4658d1Smrgand
15059f4658d1Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
1506c06b6b69Smrg
1507c06b6b69SmrgIf the version you run ($0) is already up to date, please
1508c06b6b69Smrgsend the following data and any information you think might be
1509c06b6b69Smrgpertinent to <config-patches@gnu.org> in order to provide the needed
1510c06b6b69Smrginformation to handle your system.
1511c06b6b69Smrg
1512c06b6b69Smrgconfig.guess timestamp = $timestamp
1513c06b6b69Smrg
1514c06b6b69Smrguname -m = `(uname -m) 2>/dev/null || echo unknown`
1515c06b6b69Smrguname -r = `(uname -r) 2>/dev/null || echo unknown`
1516c06b6b69Smrguname -s = `(uname -s) 2>/dev/null || echo unknown`
1517c06b6b69Smrguname -v = `(uname -v) 2>/dev/null || echo unknown`
1518c06b6b69Smrg
1519c06b6b69Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1520c06b6b69Smrg/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
1521c06b6b69Smrg
1522c06b6b69Smrghostinfo               = `(hostinfo) 2>/dev/null`
1523c06b6b69Smrg/bin/universe          = `(/bin/universe) 2>/dev/null`
1524c06b6b69Smrg/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
1525c06b6b69Smrg/bin/arch              = `(/bin/arch) 2>/dev/null`
1526c06b6b69Smrg/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
1527c06b6b69Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1528c06b6b69Smrg
1529c06b6b69SmrgUNAME_MACHINE = ${UNAME_MACHINE}
1530c06b6b69SmrgUNAME_RELEASE = ${UNAME_RELEASE}
1531c06b6b69SmrgUNAME_SYSTEM  = ${UNAME_SYSTEM}
1532c06b6b69SmrgUNAME_VERSION = ${UNAME_VERSION}
1533c06b6b69SmrgEOF
1534c06b6b69Smrg
1535c06b6b69Smrgexit 1
1536c06b6b69Smrg
1537c06b6b69Smrg# Local variables:
1538c06b6b69Smrg# eval: (add-hook 'write-file-hooks 'time-stamp)
1539c06b6b69Smrg# time-stamp-start: "timestamp='"
1540c06b6b69Smrg# time-stamp-format: "%:y-%02m-%02d"
1541c06b6b69Smrg# time-stamp-end: "'"
1542c06b6b69Smrg# End:
1543