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