config.guess revision f3561b8b
1fc5a983dSmrg#! /bin/sh
2fc5a983dSmrg# Attempt to guess a canonical system name.
3fc5a983dSmrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4f3561b8bSmrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
5f3561b8bSmrg#   Free Software Foundation, Inc.
6fc5a983dSmrg
7f3561b8bSmrgtimestamp='2008-11-15'
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 \
173fc5a983dSmrg			| grep __ELF__ >/dev/null
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 ;;
327fc5a983dSmrg    sun4H:SunOS:5.*:*)
328fc5a983dSmrg	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
329fc5a983dSmrg	exit ;;
330fc5a983dSmrg    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
331fc5a983dSmrg	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
332fc5a983dSmrg	exit ;;
333fc5a983dSmrg    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
334f3561b8bSmrg	eval $set_cc_for_build
335f3561b8bSmrg	SUN_ARCH="i386"
336f3561b8bSmrg	# If there is a compiler, see if it is configured for 64-bit objects.
337f3561b8bSmrg	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
338f3561b8bSmrg	# This test works for both compilers.
339f3561b8bSmrg	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
340f3561b8bSmrg	    if echo '\n#ifdef __amd64\nIS_64BIT_ARCH\n#endif' | \
341f3561b8bSmrg		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
342f3561b8bSmrg		grep IS_64BIT_ARCH >/dev/null
343f3561b8bSmrg	    then
344f3561b8bSmrg		SUN_ARCH="x86_64"
345f3561b8bSmrg	    fi
346f3561b8bSmrg	fi
347f3561b8bSmrg	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
348fc5a983dSmrg	exit ;;
349fc5a983dSmrg    sun4*:SunOS:6*:*)
350fc5a983dSmrg	# According to config.sub, this is the proper way to canonicalize
351fc5a983dSmrg	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
352fc5a983dSmrg	# it's likely to be more like Solaris than SunOS4.
353fc5a983dSmrg	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
354fc5a983dSmrg	exit ;;
355fc5a983dSmrg    sun4*:SunOS:*:*)
356fc5a983dSmrg	case "`/usr/bin/arch -k`" in
357fc5a983dSmrg	    Series*|S4*)
358fc5a983dSmrg		UNAME_RELEASE=`uname -v`
359fc5a983dSmrg		;;
360fc5a983dSmrg	esac
361fc5a983dSmrg	# Japanese Language versions have a version number like `4.1.3-JL'.
362fc5a983dSmrg	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
363fc5a983dSmrg	exit ;;
364fc5a983dSmrg    sun3*:SunOS:*:*)
365fc5a983dSmrg	echo m68k-sun-sunos${UNAME_RELEASE}
366fc5a983dSmrg	exit ;;
367fc5a983dSmrg    sun*:*:4.2BSD:*)
368fc5a983dSmrg	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
369fc5a983dSmrg	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
370fc5a983dSmrg	case "`/bin/arch`" in
371fc5a983dSmrg	    sun3)
372fc5a983dSmrg		echo m68k-sun-sunos${UNAME_RELEASE}
373fc5a983dSmrg		;;
374fc5a983dSmrg	    sun4)
375fc5a983dSmrg		echo sparc-sun-sunos${UNAME_RELEASE}
376fc5a983dSmrg		;;
377fc5a983dSmrg	esac
378fc5a983dSmrg	exit ;;
379fc5a983dSmrg    aushp:SunOS:*:*)
380fc5a983dSmrg	echo sparc-auspex-sunos${UNAME_RELEASE}
381fc5a983dSmrg	exit ;;
382fc5a983dSmrg    # The situation for MiNT is a little confusing.  The machine name
383fc5a983dSmrg    # can be virtually everything (everything which is not
384fc5a983dSmrg    # "atarist" or "atariste" at least should have a processor
385fc5a983dSmrg    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
386fc5a983dSmrg    # to the lowercase version "mint" (or "freemint").  Finally
387fc5a983dSmrg    # the system name "TOS" denotes a system which is actually not
388fc5a983dSmrg    # MiNT.  But MiNT is downward compatible to TOS, so this should
389fc5a983dSmrg    # be no problem.
390fc5a983dSmrg    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
391fc5a983dSmrg        echo m68k-atari-mint${UNAME_RELEASE}
392fc5a983dSmrg	exit ;;
393fc5a983dSmrg    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
394fc5a983dSmrg	echo m68k-atari-mint${UNAME_RELEASE}
395fc5a983dSmrg        exit ;;
396fc5a983dSmrg    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
397fc5a983dSmrg        echo m68k-atari-mint${UNAME_RELEASE}
398fc5a983dSmrg	exit ;;
399fc5a983dSmrg    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
400fc5a983dSmrg        echo m68k-milan-mint${UNAME_RELEASE}
401fc5a983dSmrg        exit ;;
402fc5a983dSmrg    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
403fc5a983dSmrg        echo m68k-hades-mint${UNAME_RELEASE}
404fc5a983dSmrg        exit ;;
405fc5a983dSmrg    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
406fc5a983dSmrg        echo m68k-unknown-mint${UNAME_RELEASE}
407fc5a983dSmrg        exit ;;
408fc5a983dSmrg    m68k:machten:*:*)
409fc5a983dSmrg	echo m68k-apple-machten${UNAME_RELEASE}
410fc5a983dSmrg	exit ;;
411fc5a983dSmrg    powerpc:machten:*:*)
412fc5a983dSmrg	echo powerpc-apple-machten${UNAME_RELEASE}
413fc5a983dSmrg	exit ;;
414fc5a983dSmrg    RISC*:Mach:*:*)
415fc5a983dSmrg	echo mips-dec-mach_bsd4.3
416fc5a983dSmrg	exit ;;
417fc5a983dSmrg    RISC*:ULTRIX:*:*)
418fc5a983dSmrg	echo mips-dec-ultrix${UNAME_RELEASE}
419fc5a983dSmrg	exit ;;
420fc5a983dSmrg    VAX*:ULTRIX*:*:*)
421fc5a983dSmrg	echo vax-dec-ultrix${UNAME_RELEASE}
422fc5a983dSmrg	exit ;;
423fc5a983dSmrg    2020:CLIX:*:* | 2430:CLIX:*:*)
424fc5a983dSmrg	echo clipper-intergraph-clix${UNAME_RELEASE}
425fc5a983dSmrg	exit ;;
426fc5a983dSmrg    mips:*:*:UMIPS | mips:*:*:RISCos)
427fc5a983dSmrg	eval $set_cc_for_build
428fc5a983dSmrg	sed 's/^	//' << EOF >$dummy.c
429fc5a983dSmrg#ifdef __cplusplus
430fc5a983dSmrg#include <stdio.h>  /* for printf() prototype */
431fc5a983dSmrg	int main (int argc, char *argv[]) {
432fc5a983dSmrg#else
433fc5a983dSmrg	int main (argc, argv) int argc; char *argv[]; {
434fc5a983dSmrg#endif
435fc5a983dSmrg	#if defined (host_mips) && defined (MIPSEB)
436fc5a983dSmrg	#if defined (SYSTYPE_SYSV)
437fc5a983dSmrg	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
438fc5a983dSmrg	#endif
439fc5a983dSmrg	#if defined (SYSTYPE_SVR4)
440fc5a983dSmrg	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
441fc5a983dSmrg	#endif
442fc5a983dSmrg	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
443fc5a983dSmrg	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
444fc5a983dSmrg	#endif
445fc5a983dSmrg	#endif
446fc5a983dSmrg	  exit (-1);
447fc5a983dSmrg	}
448fc5a983dSmrgEOF
449fc5a983dSmrg	$CC_FOR_BUILD -o $dummy $dummy.c &&
450fc5a983dSmrg	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
451fc5a983dSmrg	  SYSTEM_NAME=`$dummy $dummyarg` &&
452fc5a983dSmrg	    { echo "$SYSTEM_NAME"; exit; }
453fc5a983dSmrg	echo mips-mips-riscos${UNAME_RELEASE}
454fc5a983dSmrg	exit ;;
455fc5a983dSmrg    Motorola:PowerMAX_OS:*:*)
456fc5a983dSmrg	echo powerpc-motorola-powermax
457fc5a983dSmrg	exit ;;
458fc5a983dSmrg    Motorola:*:4.3:PL8-*)
459fc5a983dSmrg	echo powerpc-harris-powermax
460fc5a983dSmrg	exit ;;
461fc5a983dSmrg    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
462fc5a983dSmrg	echo powerpc-harris-powermax
463fc5a983dSmrg	exit ;;
464fc5a983dSmrg    Night_Hawk:Power_UNIX:*:*)
465fc5a983dSmrg	echo powerpc-harris-powerunix
466fc5a983dSmrg	exit ;;
467fc5a983dSmrg    m88k:CX/UX:7*:*)
468fc5a983dSmrg	echo m88k-harris-cxux7
469fc5a983dSmrg	exit ;;
470fc5a983dSmrg    m88k:*:4*:R4*)
471fc5a983dSmrg	echo m88k-motorola-sysv4
472fc5a983dSmrg	exit ;;
473fc5a983dSmrg    m88k:*:3*:R3*)
474fc5a983dSmrg	echo m88k-motorola-sysv3
475fc5a983dSmrg	exit ;;
476fc5a983dSmrg    AViiON:dgux:*:*)
477fc5a983dSmrg        # DG/UX returns AViiON for all architectures
478fc5a983dSmrg        UNAME_PROCESSOR=`/usr/bin/uname -p`
479fc5a983dSmrg	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
480fc5a983dSmrg	then
481fc5a983dSmrg	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
482fc5a983dSmrg	       [ ${TARGET_BINARY_INTERFACE}x = x ]
483fc5a983dSmrg	    then
484fc5a983dSmrg		echo m88k-dg-dgux${UNAME_RELEASE}
485fc5a983dSmrg	    else
486fc5a983dSmrg		echo m88k-dg-dguxbcs${UNAME_RELEASE}
487fc5a983dSmrg	    fi
488fc5a983dSmrg	else
489fc5a983dSmrg	    echo i586-dg-dgux${UNAME_RELEASE}
490fc5a983dSmrg	fi
491fc5a983dSmrg 	exit ;;
492fc5a983dSmrg    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
493fc5a983dSmrg	echo m88k-dolphin-sysv3
494fc5a983dSmrg	exit ;;
495fc5a983dSmrg    M88*:*:R3*:*)
496fc5a983dSmrg	# Delta 88k system running SVR3
497fc5a983dSmrg	echo m88k-motorola-sysv3
498fc5a983dSmrg	exit ;;
499fc5a983dSmrg    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
500fc5a983dSmrg	echo m88k-tektronix-sysv3
501fc5a983dSmrg	exit ;;
502fc5a983dSmrg    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
503fc5a983dSmrg	echo m68k-tektronix-bsd
504fc5a983dSmrg	exit ;;
505fc5a983dSmrg    *:IRIX*:*:*)
506fc5a983dSmrg	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
507fc5a983dSmrg	exit ;;
508fc5a983dSmrg    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
509fc5a983dSmrg	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
510fc5a983dSmrg	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
511fc5a983dSmrg    i*86:AIX:*:*)
512fc5a983dSmrg	echo i386-ibm-aix
513fc5a983dSmrg	exit ;;
514fc5a983dSmrg    ia64:AIX:*:*)
515fc5a983dSmrg	if [ -x /usr/bin/oslevel ] ; then
516fc5a983dSmrg		IBM_REV=`/usr/bin/oslevel`
517fc5a983dSmrg	else
518fc5a983dSmrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
519fc5a983dSmrg	fi
520fc5a983dSmrg	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
521fc5a983dSmrg	exit ;;
522fc5a983dSmrg    *:AIX:2:3)
523fc5a983dSmrg	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
524fc5a983dSmrg		eval $set_cc_for_build
525fc5a983dSmrg		sed 's/^		//' << EOF >$dummy.c
526fc5a983dSmrg		#include <sys/systemcfg.h>
527fc5a983dSmrg
528fc5a983dSmrg		main()
529fc5a983dSmrg			{
530fc5a983dSmrg			if (!__power_pc())
531fc5a983dSmrg				exit(1);
532fc5a983dSmrg			puts("powerpc-ibm-aix3.2.5");
533fc5a983dSmrg			exit(0);
534fc5a983dSmrg			}
535fc5a983dSmrgEOF
536fc5a983dSmrg		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
537fc5a983dSmrg		then
538fc5a983dSmrg			echo "$SYSTEM_NAME"
539fc5a983dSmrg		else
540fc5a983dSmrg			echo rs6000-ibm-aix3.2.5
541fc5a983dSmrg		fi
542fc5a983dSmrg	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
543fc5a983dSmrg		echo rs6000-ibm-aix3.2.4
544fc5a983dSmrg	else
545fc5a983dSmrg		echo rs6000-ibm-aix3.2
546fc5a983dSmrg	fi
547fc5a983dSmrg	exit ;;
548f3561b8bSmrg    *:AIX:*:[456])
549fc5a983dSmrg	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
550fc5a983dSmrg	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
551fc5a983dSmrg		IBM_ARCH=rs6000
552fc5a983dSmrg	else
553fc5a983dSmrg		IBM_ARCH=powerpc
554fc5a983dSmrg	fi
555fc5a983dSmrg	if [ -x /usr/bin/oslevel ] ; then
556fc5a983dSmrg		IBM_REV=`/usr/bin/oslevel`
557fc5a983dSmrg	else
558fc5a983dSmrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
559fc5a983dSmrg	fi
560fc5a983dSmrg	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
561fc5a983dSmrg	exit ;;
562fc5a983dSmrg    *:AIX:*:*)
563fc5a983dSmrg	echo rs6000-ibm-aix
564fc5a983dSmrg	exit ;;
565fc5a983dSmrg    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
566fc5a983dSmrg	echo romp-ibm-bsd4.4
567fc5a983dSmrg	exit ;;
568fc5a983dSmrg    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
569fc5a983dSmrg	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
570fc5a983dSmrg	exit ;;                             # report: romp-ibm BSD 4.3
571fc5a983dSmrg    *:BOSX:*:*)
572fc5a983dSmrg	echo rs6000-bull-bosx
573fc5a983dSmrg	exit ;;
574fc5a983dSmrg    DPX/2?00:B.O.S.:*:*)
575fc5a983dSmrg	echo m68k-bull-sysv3
576fc5a983dSmrg	exit ;;
577fc5a983dSmrg    9000/[34]??:4.3bsd:1.*:*)
578fc5a983dSmrg	echo m68k-hp-bsd
579fc5a983dSmrg	exit ;;
580fc5a983dSmrg    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
581fc5a983dSmrg	echo m68k-hp-bsd4.4
582fc5a983dSmrg	exit ;;
583fc5a983dSmrg    9000/[34678]??:HP-UX:*:*)
584fc5a983dSmrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
585fc5a983dSmrg	case "${UNAME_MACHINE}" in
586fc5a983dSmrg	    9000/31? )            HP_ARCH=m68000 ;;
587fc5a983dSmrg	    9000/[34]?? )         HP_ARCH=m68k ;;
588fc5a983dSmrg	    9000/[678][0-9][0-9])
589fc5a983dSmrg		if [ -x /usr/bin/getconf ]; then
590fc5a983dSmrg		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
591fc5a983dSmrg                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
592fc5a983dSmrg                    case "${sc_cpu_version}" in
593fc5a983dSmrg                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
594fc5a983dSmrg                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
595fc5a983dSmrg                      532)                      # CPU_PA_RISC2_0
596fc5a983dSmrg                        case "${sc_kernel_bits}" in
597fc5a983dSmrg                          32) HP_ARCH="hppa2.0n" ;;
598fc5a983dSmrg                          64) HP_ARCH="hppa2.0w" ;;
599fc5a983dSmrg			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
600fc5a983dSmrg                        esac ;;
601fc5a983dSmrg                    esac
602fc5a983dSmrg		fi
603fc5a983dSmrg		if [ "${HP_ARCH}" = "" ]; then
604fc5a983dSmrg		    eval $set_cc_for_build
605fc5a983dSmrg		    sed 's/^              //' << EOF >$dummy.c
606fc5a983dSmrg
607fc5a983dSmrg              #define _HPUX_SOURCE
608fc5a983dSmrg              #include <stdlib.h>
609fc5a983dSmrg              #include <unistd.h>
610fc5a983dSmrg
611fc5a983dSmrg              int main ()
612fc5a983dSmrg              {
613fc5a983dSmrg              #if defined(_SC_KERNEL_BITS)
614fc5a983dSmrg                  long bits = sysconf(_SC_KERNEL_BITS);
615fc5a983dSmrg              #endif
616fc5a983dSmrg                  long cpu  = sysconf (_SC_CPU_VERSION);
617fc5a983dSmrg
618fc5a983dSmrg                  switch (cpu)
619fc5a983dSmrg              	{
620fc5a983dSmrg              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
621fc5a983dSmrg              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
622fc5a983dSmrg              	case CPU_PA_RISC2_0:
623fc5a983dSmrg              #if defined(_SC_KERNEL_BITS)
624fc5a983dSmrg              	    switch (bits)
625fc5a983dSmrg              		{
626fc5a983dSmrg              		case 64: puts ("hppa2.0w"); break;
627fc5a983dSmrg              		case 32: puts ("hppa2.0n"); break;
628fc5a983dSmrg              		default: puts ("hppa2.0"); break;
629fc5a983dSmrg              		} break;
630fc5a983dSmrg              #else  /* !defined(_SC_KERNEL_BITS) */
631fc5a983dSmrg              	    puts ("hppa2.0"); break;
632fc5a983dSmrg              #endif
633fc5a983dSmrg              	default: puts ("hppa1.0"); break;
634fc5a983dSmrg              	}
635fc5a983dSmrg                  exit (0);
636fc5a983dSmrg              }
637fc5a983dSmrgEOF
638fc5a983dSmrg		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
639fc5a983dSmrg		    test -z "$HP_ARCH" && HP_ARCH=hppa
640fc5a983dSmrg		fi ;;
641fc5a983dSmrg	esac
642fc5a983dSmrg	if [ ${HP_ARCH} = "hppa2.0w" ]
643fc5a983dSmrg	then
644fc5a983dSmrg	    eval $set_cc_for_build
645fc5a983dSmrg
646fc5a983dSmrg	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
647fc5a983dSmrg	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
648fc5a983dSmrg	    # generating 64-bit code.  GNU and HP use different nomenclature:
649fc5a983dSmrg	    #
650fc5a983dSmrg	    # $ CC_FOR_BUILD=cc ./config.guess
651fc5a983dSmrg	    # => hppa2.0w-hp-hpux11.23
652fc5a983dSmrg	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
653fc5a983dSmrg	    # => hppa64-hp-hpux11.23
654fc5a983dSmrg
655fc5a983dSmrg	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
656fc5a983dSmrg		grep __LP64__ >/dev/null
657fc5a983dSmrg	    then
658fc5a983dSmrg		HP_ARCH="hppa2.0w"
659fc5a983dSmrg	    else
660fc5a983dSmrg		HP_ARCH="hppa64"
661fc5a983dSmrg	    fi
662fc5a983dSmrg	fi
663fc5a983dSmrg	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
664fc5a983dSmrg	exit ;;
665fc5a983dSmrg    ia64:HP-UX:*:*)
666fc5a983dSmrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
667fc5a983dSmrg	echo ia64-hp-hpux${HPUX_REV}
668fc5a983dSmrg	exit ;;
669fc5a983dSmrg    3050*:HI-UX:*:*)
670fc5a983dSmrg	eval $set_cc_for_build
671fc5a983dSmrg	sed 's/^	//' << EOF >$dummy.c
672fc5a983dSmrg	#include <unistd.h>
673fc5a983dSmrg	int
674fc5a983dSmrg	main ()
675fc5a983dSmrg	{
676fc5a983dSmrg	  long cpu = sysconf (_SC_CPU_VERSION);
677fc5a983dSmrg	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
678fc5a983dSmrg	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
679fc5a983dSmrg	     results, however.  */
680fc5a983dSmrg	  if (CPU_IS_PA_RISC (cpu))
681fc5a983dSmrg	    {
682fc5a983dSmrg	      switch (cpu)
683fc5a983dSmrg		{
684fc5a983dSmrg		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
685fc5a983dSmrg		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
686fc5a983dSmrg		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
687fc5a983dSmrg		  default: puts ("hppa-hitachi-hiuxwe2"); break;
688fc5a983dSmrg		}
689fc5a983dSmrg	    }
690fc5a983dSmrg	  else if (CPU_IS_HP_MC68K (cpu))
691fc5a983dSmrg	    puts ("m68k-hitachi-hiuxwe2");
692fc5a983dSmrg	  else puts ("unknown-hitachi-hiuxwe2");
693fc5a983dSmrg	  exit (0);
694fc5a983dSmrg	}
695fc5a983dSmrgEOF
696fc5a983dSmrg	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
697fc5a983dSmrg		{ echo "$SYSTEM_NAME"; exit; }
698fc5a983dSmrg	echo unknown-hitachi-hiuxwe2
699fc5a983dSmrg	exit ;;
700fc5a983dSmrg    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
701fc5a983dSmrg	echo hppa1.1-hp-bsd
702fc5a983dSmrg	exit ;;
703fc5a983dSmrg    9000/8??:4.3bsd:*:*)
704fc5a983dSmrg	echo hppa1.0-hp-bsd
705fc5a983dSmrg	exit ;;
706fc5a983dSmrg    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
707fc5a983dSmrg	echo hppa1.0-hp-mpeix
708fc5a983dSmrg	exit ;;
709fc5a983dSmrg    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
710fc5a983dSmrg	echo hppa1.1-hp-osf
711fc5a983dSmrg	exit ;;
712fc5a983dSmrg    hp8??:OSF1:*:*)
713fc5a983dSmrg	echo hppa1.0-hp-osf
714fc5a983dSmrg	exit ;;
715fc5a983dSmrg    i*86:OSF1:*:*)
716fc5a983dSmrg	if [ -x /usr/sbin/sysversion ] ; then
717fc5a983dSmrg	    echo ${UNAME_MACHINE}-unknown-osf1mk
718fc5a983dSmrg	else
719fc5a983dSmrg	    echo ${UNAME_MACHINE}-unknown-osf1
720fc5a983dSmrg	fi
721fc5a983dSmrg	exit ;;
722fc5a983dSmrg    parisc*:Lites*:*:*)
723fc5a983dSmrg	echo hppa1.1-hp-lites
724fc5a983dSmrg	exit ;;
725fc5a983dSmrg    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
726fc5a983dSmrg	echo c1-convex-bsd
727fc5a983dSmrg        exit ;;
728fc5a983dSmrg    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
729fc5a983dSmrg	if getsysinfo -f scalar_acc
730fc5a983dSmrg	then echo c32-convex-bsd
731fc5a983dSmrg	else echo c2-convex-bsd
732fc5a983dSmrg	fi
733fc5a983dSmrg        exit ;;
734fc5a983dSmrg    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
735fc5a983dSmrg	echo c34-convex-bsd
736fc5a983dSmrg        exit ;;
737fc5a983dSmrg    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
738fc5a983dSmrg	echo c38-convex-bsd
739fc5a983dSmrg        exit ;;
740fc5a983dSmrg    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
741fc5a983dSmrg	echo c4-convex-bsd
742fc5a983dSmrg        exit ;;
743fc5a983dSmrg    CRAY*Y-MP:*:*:*)
744fc5a983dSmrg	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
745fc5a983dSmrg	exit ;;
746fc5a983dSmrg    CRAY*[A-Z]90:*:*:*)
747fc5a983dSmrg	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
748fc5a983dSmrg	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
749fc5a983dSmrg	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
750fc5a983dSmrg	      -e 's/\.[^.]*$/.X/'
751fc5a983dSmrg	exit ;;
752fc5a983dSmrg    CRAY*TS:*:*:*)
753fc5a983dSmrg	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
754fc5a983dSmrg	exit ;;
755fc5a983dSmrg    CRAY*T3E:*:*:*)
756fc5a983dSmrg	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
757fc5a983dSmrg	exit ;;
758fc5a983dSmrg    CRAY*SV1:*:*:*)
759fc5a983dSmrg	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
760fc5a983dSmrg	exit ;;
761fc5a983dSmrg    *:UNICOS/mp:*:*)
762fc5a983dSmrg	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
763fc5a983dSmrg	exit ;;
764fc5a983dSmrg    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
765fc5a983dSmrg	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
766fc5a983dSmrg        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
767fc5a983dSmrg        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
768fc5a983dSmrg        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
769fc5a983dSmrg        exit ;;
770fc5a983dSmrg    5000:UNIX_System_V:4.*:*)
771fc5a983dSmrg        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
772fc5a983dSmrg        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
773fc5a983dSmrg        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
774fc5a983dSmrg	exit ;;
775fc5a983dSmrg    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
776fc5a983dSmrg	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
777fc5a983dSmrg	exit ;;
778fc5a983dSmrg    sparc*:BSD/OS:*:*)
779fc5a983dSmrg	echo sparc-unknown-bsdi${UNAME_RELEASE}
780fc5a983dSmrg	exit ;;
781fc5a983dSmrg    *:BSD/OS:*:*)
782fc5a983dSmrg	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
783fc5a983dSmrg	exit ;;
784fc5a983dSmrg    *:FreeBSD:*:*)
785fc5a983dSmrg	case ${UNAME_MACHINE} in
786fc5a983dSmrg	    pc98)
787fc5a983dSmrg		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
788fc5a983dSmrg	    amd64)
789fc5a983dSmrg		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
790fc5a983dSmrg	    *)
791fc5a983dSmrg		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
792fc5a983dSmrg	esac
793fc5a983dSmrg	exit ;;
794fc5a983dSmrg    i*:CYGWIN*:*)
795fc5a983dSmrg	echo ${UNAME_MACHINE}-pc-cygwin
796fc5a983dSmrg	exit ;;
797fc5a983dSmrg    *:MINGW*:*)
798fc5a983dSmrg	echo ${UNAME_MACHINE}-pc-mingw32
799fc5a983dSmrg	exit ;;
800fc5a983dSmrg    i*:windows32*:*)
801fc5a983dSmrg    	# uname -m includes "-pc" on this system.
802fc5a983dSmrg    	echo ${UNAME_MACHINE}-mingw32
803fc5a983dSmrg	exit ;;
804fc5a983dSmrg    i*:PW*:*)
805fc5a983dSmrg	echo ${UNAME_MACHINE}-pc-pw32
806fc5a983dSmrg	exit ;;
807fc5a983dSmrg    *:Interix*:[3456]*)
808fc5a983dSmrg    	case ${UNAME_MACHINE} in
809fc5a983dSmrg	    x86)
810fc5a983dSmrg		echo i586-pc-interix${UNAME_RELEASE}
811fc5a983dSmrg		exit ;;
812f3561b8bSmrg	    EM64T | authenticamd | genuineintel)
813fc5a983dSmrg		echo x86_64-unknown-interix${UNAME_RELEASE}
814fc5a983dSmrg		exit ;;
815f3561b8bSmrg	    IA64)
816f3561b8bSmrg		echo ia64-unknown-interix${UNAME_RELEASE}
817f3561b8bSmrg		exit ;;
818fc5a983dSmrg	esac ;;
819fc5a983dSmrg    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
820fc5a983dSmrg	echo i${UNAME_MACHINE}-pc-mks
821fc5a983dSmrg	exit ;;
822fc5a983dSmrg    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
823fc5a983dSmrg	# How do we know it's Interix rather than the generic POSIX subsystem?
824fc5a983dSmrg	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
825fc5a983dSmrg	# UNAME_MACHINE based on the output of uname instead of i386?
826fc5a983dSmrg	echo i586-pc-interix
827fc5a983dSmrg	exit ;;
828fc5a983dSmrg    i*:UWIN*:*)
829fc5a983dSmrg	echo ${UNAME_MACHINE}-pc-uwin
830fc5a983dSmrg	exit ;;
831fc5a983dSmrg    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
832fc5a983dSmrg	echo x86_64-unknown-cygwin
833fc5a983dSmrg	exit ;;
834fc5a983dSmrg    p*:CYGWIN*:*)
835fc5a983dSmrg	echo powerpcle-unknown-cygwin
836fc5a983dSmrg	exit ;;
837fc5a983dSmrg    prep*:SunOS:5.*:*)
838fc5a983dSmrg	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
839fc5a983dSmrg	exit ;;
840fc5a983dSmrg    *:GNU:*:*)
841fc5a983dSmrg	# the GNU system
842fc5a983dSmrg	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
843fc5a983dSmrg	exit ;;
844fc5a983dSmrg    *:GNU/*:*:*)
845fc5a983dSmrg	# other systems with GNU libc and userland
846fc5a983dSmrg	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
847fc5a983dSmrg	exit ;;
848fc5a983dSmrg    i*86:Minix:*:*)
849fc5a983dSmrg	echo ${UNAME_MACHINE}-pc-minix
850fc5a983dSmrg	exit ;;
851fc5a983dSmrg    arm*:Linux:*:*)
852f3561b8bSmrg	eval $set_cc_for_build
853f3561b8bSmrg	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
854f3561b8bSmrg	    | grep -q __ARM_EABI__
855f3561b8bSmrg	then
856f3561b8bSmrg	    echo ${UNAME_MACHINE}-unknown-linux-gnu
857f3561b8bSmrg	else
858f3561b8bSmrg	    echo ${UNAME_MACHINE}-unknown-linux-gnueabi
859f3561b8bSmrg	fi
860fc5a983dSmrg	exit ;;
861fc5a983dSmrg    avr32*:Linux:*:*)
862f3561b8bSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
863fc5a983dSmrg	exit ;;
864fc5a983dSmrg    cris:Linux:*:*)
865f3561b8bSmrg	echo cris-axis-linux-gnu
866fc5a983dSmrg	exit ;;
867fc5a983dSmrg    crisv32:Linux:*:*)
868f3561b8bSmrg	echo crisv32-axis-linux-gnu
869fc5a983dSmrg	exit ;;
870fc5a983dSmrg    frv:Linux:*:*)
871f3561b8bSmrg    	echo frv-unknown-linux-gnu
872fc5a983dSmrg	exit ;;
873fc5a983dSmrg    ia64:Linux:*:*)
874f3561b8bSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
875fc5a983dSmrg	exit ;;
876fc5a983dSmrg    m32r*:Linux:*:*)
877f3561b8bSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
878fc5a983dSmrg	exit ;;
879fc5a983dSmrg    m68*:Linux:*:*)
880f3561b8bSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
881fc5a983dSmrg	exit ;;
882fc5a983dSmrg    mips:Linux:*:*)
883fc5a983dSmrg	eval $set_cc_for_build
884fc5a983dSmrg	sed 's/^	//' << EOF >$dummy.c
885fc5a983dSmrg	#undef CPU
886fc5a983dSmrg	#undef mips
887fc5a983dSmrg	#undef mipsel
888fc5a983dSmrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
889fc5a983dSmrg	CPU=mipsel
890fc5a983dSmrg	#else
891fc5a983dSmrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
892fc5a983dSmrg	CPU=mips
893fc5a983dSmrg	#else
894fc5a983dSmrg	CPU=
895fc5a983dSmrg	#endif
896fc5a983dSmrg	#endif
897fc5a983dSmrgEOF
898fc5a983dSmrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
899fc5a983dSmrg	    /^CPU/{
900fc5a983dSmrg		s: ::g
901fc5a983dSmrg		p
902fc5a983dSmrg	    }'`"
903f3561b8bSmrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
904fc5a983dSmrg	;;
905fc5a983dSmrg    mips64:Linux:*:*)
906fc5a983dSmrg	eval $set_cc_for_build
907fc5a983dSmrg	sed 's/^	//' << EOF >$dummy.c
908fc5a983dSmrg	#undef CPU
909fc5a983dSmrg	#undef mips64
910fc5a983dSmrg	#undef mips64el
911fc5a983dSmrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
912fc5a983dSmrg	CPU=mips64el
913fc5a983dSmrg	#else
914fc5a983dSmrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
915fc5a983dSmrg	CPU=mips64
916fc5a983dSmrg	#else
917fc5a983dSmrg	CPU=
918fc5a983dSmrg	#endif
919fc5a983dSmrg	#endif
920fc5a983dSmrgEOF
921fc5a983dSmrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
922fc5a983dSmrg	    /^CPU/{
923fc5a983dSmrg		s: ::g
924fc5a983dSmrg		p
925fc5a983dSmrg	    }'`"
926f3561b8bSmrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
927fc5a983dSmrg	;;
928fc5a983dSmrg    or32:Linux:*:*)
929f3561b8bSmrg	echo or32-unknown-linux-gnu
930fc5a983dSmrg	exit ;;
931fc5a983dSmrg    ppc:Linux:*:*)
932f3561b8bSmrg	echo powerpc-unknown-linux-gnu
933fc5a983dSmrg	exit ;;
934fc5a983dSmrg    ppc64:Linux:*:*)
935f3561b8bSmrg	echo powerpc64-unknown-linux-gnu
936fc5a983dSmrg	exit ;;
937fc5a983dSmrg    alpha:Linux:*:*)
938fc5a983dSmrg	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
939fc5a983dSmrg	  EV5)   UNAME_MACHINE=alphaev5 ;;
940fc5a983dSmrg	  EV56)  UNAME_MACHINE=alphaev56 ;;
941fc5a983dSmrg	  PCA56) UNAME_MACHINE=alphapca56 ;;
942fc5a983dSmrg	  PCA57) UNAME_MACHINE=alphapca56 ;;
943fc5a983dSmrg	  EV6)   UNAME_MACHINE=alphaev6 ;;
944fc5a983dSmrg	  EV67)  UNAME_MACHINE=alphaev67 ;;
945fc5a983dSmrg	  EV68*) UNAME_MACHINE=alphaev68 ;;
946fc5a983dSmrg        esac
947fc5a983dSmrg	objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
948f3561b8bSmrg	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
949f3561b8bSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
950f3561b8bSmrg	exit ;;
951f3561b8bSmrg    padre:Linux:*:*)
952f3561b8bSmrg	echo sparc-unknown-linux-gnu
953fc5a983dSmrg	exit ;;
954fc5a983dSmrg    parisc:Linux:*:* | hppa:Linux:*:*)
955fc5a983dSmrg	# Look for CPU level
956fc5a983dSmrg	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
957f3561b8bSmrg	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
958f3561b8bSmrg	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
959f3561b8bSmrg	  *)    echo hppa-unknown-linux-gnu ;;
960fc5a983dSmrg	esac
961fc5a983dSmrg	exit ;;
962fc5a983dSmrg    parisc64:Linux:*:* | hppa64:Linux:*:*)
963f3561b8bSmrg	echo hppa64-unknown-linux-gnu
964fc5a983dSmrg	exit ;;
965fc5a983dSmrg    s390:Linux:*:* | s390x:Linux:*:*)
966fc5a983dSmrg	echo ${UNAME_MACHINE}-ibm-linux
967fc5a983dSmrg	exit ;;
968fc5a983dSmrg    sh64*:Linux:*:*)
969f3561b8bSmrg    	echo ${UNAME_MACHINE}-unknown-linux-gnu
970fc5a983dSmrg	exit ;;
971fc5a983dSmrg    sh*:Linux:*:*)
972f3561b8bSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
973fc5a983dSmrg	exit ;;
974fc5a983dSmrg    sparc:Linux:*:* | sparc64:Linux:*:*)
975f3561b8bSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
976fc5a983dSmrg	exit ;;
977fc5a983dSmrg    vax:Linux:*:*)
978f3561b8bSmrg	echo ${UNAME_MACHINE}-dec-linux-gnu
979fc5a983dSmrg	exit ;;
980fc5a983dSmrg    x86_64:Linux:*:*)
981f3561b8bSmrg	echo x86_64-unknown-linux-gnu
982fc5a983dSmrg	exit ;;
983f3561b8bSmrg    xtensa*:Linux:*:*)
984f3561b8bSmrg    	echo ${UNAME_MACHINE}-unknown-linux-gnu
985fc5a983dSmrg	exit ;;
986fc5a983dSmrg    i*86:Linux:*:*)
987fc5a983dSmrg	# The BFD linker knows what the default object file format is, so
988fc5a983dSmrg	# first see if it will tell us. cd to the root directory to prevent
989fc5a983dSmrg	# problems with other programs or directories called `ld' in the path.
990fc5a983dSmrg	# Set LC_ALL=C to ensure ld outputs messages in English.
991fc5a983dSmrg	ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
992fc5a983dSmrg			 | sed -ne '/supported targets:/!d
993fc5a983dSmrg				    s/[ 	][ 	]*/ /g
994fc5a983dSmrg				    s/.*supported targets: *//
995fc5a983dSmrg				    s/ .*//
996fc5a983dSmrg				    p'`
997fc5a983dSmrg        case "$ld_supported_targets" in
998fc5a983dSmrg	  elf32-i386)
999f3561b8bSmrg		TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
1000fc5a983dSmrg		;;
1001fc5a983dSmrg	  a.out-i386-linux)
1002f3561b8bSmrg		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
1003fc5a983dSmrg		exit ;;
1004fc5a983dSmrg	  "")
1005fc5a983dSmrg		# Either a pre-BFD a.out linker (linux-gnuoldld) or
1006fc5a983dSmrg		# one that does not give us useful --help.
1007f3561b8bSmrg		echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
1008fc5a983dSmrg		exit ;;
1009fc5a983dSmrg	esac
1010fc5a983dSmrg	# Determine whether the default compiler is a.out or elf
1011fc5a983dSmrg	eval $set_cc_for_build
1012fc5a983dSmrg	sed 's/^	//' << EOF >$dummy.c
1013fc5a983dSmrg	#include <features.h>
1014fc5a983dSmrg	#ifdef __ELF__
1015fc5a983dSmrg	# ifdef __GLIBC__
1016fc5a983dSmrg	#  if __GLIBC__ >= 2
1017fc5a983dSmrg	LIBC=gnu
1018fc5a983dSmrg	#  else
1019fc5a983dSmrg	LIBC=gnulibc1
1020fc5a983dSmrg	#  endif
1021fc5a983dSmrg	# else
1022fc5a983dSmrg	LIBC=gnulibc1
1023fc5a983dSmrg	# endif
1024fc5a983dSmrg	#else
1025fc5a983dSmrg	#if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
1026fc5a983dSmrg	LIBC=gnu
1027fc5a983dSmrg	#else
1028fc5a983dSmrg	LIBC=gnuaout
1029fc5a983dSmrg	#endif
1030fc5a983dSmrg	#endif
1031fc5a983dSmrg	#ifdef __dietlibc__
1032fc5a983dSmrg	LIBC=dietlibc
1033fc5a983dSmrg	#endif
1034fc5a983dSmrgEOF
1035fc5a983dSmrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
1036fc5a983dSmrg	    /^LIBC/{
1037fc5a983dSmrg		s: ::g
1038fc5a983dSmrg		p
1039fc5a983dSmrg	    }'`"
1040fc5a983dSmrg	test x"${LIBC}" != x && {
1041fc5a983dSmrg		echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
1042fc5a983dSmrg		exit
1043fc5a983dSmrg	}
1044fc5a983dSmrg	test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
1045fc5a983dSmrg	;;
1046fc5a983dSmrg    i*86:DYNIX/ptx:4*:*)
1047fc5a983dSmrg	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
1048fc5a983dSmrg	# earlier versions are messed up and put the nodename in both
1049fc5a983dSmrg	# sysname and nodename.
1050fc5a983dSmrg	echo i386-sequent-sysv4
1051fc5a983dSmrg	exit ;;
1052fc5a983dSmrg    i*86:UNIX_SV:4.2MP:2.*)
1053fc5a983dSmrg        # Unixware is an offshoot of SVR4, but it has its own version
1054fc5a983dSmrg        # number series starting with 2...
1055fc5a983dSmrg        # I am not positive that other SVR4 systems won't match this,
1056fc5a983dSmrg	# I just have to hope.  -- rms.
1057fc5a983dSmrg        # Use sysv4.2uw... so that sysv4* matches it.
1058fc5a983dSmrg	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
1059fc5a983dSmrg	exit ;;
1060fc5a983dSmrg    i*86:OS/2:*:*)
1061fc5a983dSmrg	# If we were able to find `uname', then EMX Unix compatibility
1062fc5a983dSmrg	# is probably installed.
1063fc5a983dSmrg	echo ${UNAME_MACHINE}-pc-os2-emx
1064fc5a983dSmrg	exit ;;
1065fc5a983dSmrg    i*86:XTS-300:*:STOP)
1066fc5a983dSmrg	echo ${UNAME_MACHINE}-unknown-stop
1067fc5a983dSmrg	exit ;;
1068fc5a983dSmrg    i*86:atheos:*:*)
1069fc5a983dSmrg	echo ${UNAME_MACHINE}-unknown-atheos
1070fc5a983dSmrg	exit ;;
1071fc5a983dSmrg    i*86:syllable:*:*)
1072fc5a983dSmrg	echo ${UNAME_MACHINE}-pc-syllable
1073fc5a983dSmrg	exit ;;
1074fc5a983dSmrg    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
1075fc5a983dSmrg	echo i386-unknown-lynxos${UNAME_RELEASE}
1076fc5a983dSmrg	exit ;;
1077fc5a983dSmrg    i*86:*DOS:*:*)
1078fc5a983dSmrg	echo ${UNAME_MACHINE}-pc-msdosdjgpp
1079fc5a983dSmrg	exit ;;
1080fc5a983dSmrg    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
1081fc5a983dSmrg	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
1082fc5a983dSmrg	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1083fc5a983dSmrg		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
1084fc5a983dSmrg	else
1085fc5a983dSmrg		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
1086fc5a983dSmrg	fi
1087fc5a983dSmrg	exit ;;
1088fc5a983dSmrg    i*86:*:5:[678]*)
1089fc5a983dSmrg    	# UnixWare 7.x, OpenUNIX and OpenServer 6.
1090fc5a983dSmrg	case `/bin/uname -X | grep "^Machine"` in
1091fc5a983dSmrg	    *486*)	     UNAME_MACHINE=i486 ;;
1092fc5a983dSmrg	    *Pentium)	     UNAME_MACHINE=i586 ;;
1093fc5a983dSmrg	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1094fc5a983dSmrg	esac
1095fc5a983dSmrg	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
1096fc5a983dSmrg	exit ;;
1097fc5a983dSmrg    i*86:*:3.2:*)
1098fc5a983dSmrg	if test -f /usr/options/cb.name; then
1099fc5a983dSmrg		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1100fc5a983dSmrg		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1101fc5a983dSmrg	elif /bin/uname -X 2>/dev/null >/dev/null ; then
1102fc5a983dSmrg		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1103fc5a983dSmrg		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1104fc5a983dSmrg		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1105fc5a983dSmrg			&& UNAME_MACHINE=i586
1106fc5a983dSmrg		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1107fc5a983dSmrg			&& UNAME_MACHINE=i686
1108fc5a983dSmrg		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1109fc5a983dSmrg			&& UNAME_MACHINE=i686
1110fc5a983dSmrg		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1111fc5a983dSmrg	else
1112fc5a983dSmrg		echo ${UNAME_MACHINE}-pc-sysv32
1113fc5a983dSmrg	fi
1114fc5a983dSmrg	exit ;;
1115fc5a983dSmrg    pc:*:*:*)
1116fc5a983dSmrg	# Left here for compatibility:
1117fc5a983dSmrg        # uname -m prints for DJGPP always 'pc', but it prints nothing about
1118fc5a983dSmrg        # the processor, so we play safe by assuming i386.
1119fc5a983dSmrg	echo i386-pc-msdosdjgpp
1120fc5a983dSmrg        exit ;;
1121fc5a983dSmrg    Intel:Mach:3*:*)
1122fc5a983dSmrg	echo i386-pc-mach3
1123fc5a983dSmrg	exit ;;
1124fc5a983dSmrg    paragon:*:*:*)
1125fc5a983dSmrg	echo i860-intel-osf1
1126fc5a983dSmrg	exit ;;
1127fc5a983dSmrg    i860:*:4.*:*) # i860-SVR4
1128fc5a983dSmrg	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1129fc5a983dSmrg	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
1130fc5a983dSmrg	else # Add other i860-SVR4 vendors below as they are discovered.
1131fc5a983dSmrg	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
1132fc5a983dSmrg	fi
1133fc5a983dSmrg	exit ;;
1134fc5a983dSmrg    mini*:CTIX:SYS*5:*)
1135fc5a983dSmrg	# "miniframe"
1136fc5a983dSmrg	echo m68010-convergent-sysv
1137fc5a983dSmrg	exit ;;
1138fc5a983dSmrg    mc68k:UNIX:SYSTEM5:3.51m)
1139fc5a983dSmrg	echo m68k-convergent-sysv
1140fc5a983dSmrg	exit ;;
1141fc5a983dSmrg    M680?0:D-NIX:5.3:*)
1142fc5a983dSmrg	echo m68k-diab-dnix
1143fc5a983dSmrg	exit ;;
1144fc5a983dSmrg    M68*:*:R3V[5678]*:*)
1145fc5a983dSmrg	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
1146fc5a983dSmrg    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)
1147fc5a983dSmrg	OS_REL=''
1148fc5a983dSmrg	test -r /etc/.relid \
1149fc5a983dSmrg	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1150fc5a983dSmrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1151fc5a983dSmrg	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1152fc5a983dSmrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1153fc5a983dSmrg	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1154fc5a983dSmrg    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1155fc5a983dSmrg        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1156fc5a983dSmrg          && { echo i486-ncr-sysv4; exit; } ;;
1157fc5a983dSmrg    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1158fc5a983dSmrg	echo m68k-unknown-lynxos${UNAME_RELEASE}
1159fc5a983dSmrg	exit ;;
1160fc5a983dSmrg    mc68030:UNIX_System_V:4.*:*)
1161fc5a983dSmrg	echo m68k-atari-sysv4
1162fc5a983dSmrg	exit ;;
1163fc5a983dSmrg    TSUNAMI:LynxOS:2.*:*)
1164fc5a983dSmrg	echo sparc-unknown-lynxos${UNAME_RELEASE}
1165fc5a983dSmrg	exit ;;
1166fc5a983dSmrg    rs6000:LynxOS:2.*:*)
1167fc5a983dSmrg	echo rs6000-unknown-lynxos${UNAME_RELEASE}
1168fc5a983dSmrg	exit ;;
1169fc5a983dSmrg    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
1170fc5a983dSmrg	echo powerpc-unknown-lynxos${UNAME_RELEASE}
1171fc5a983dSmrg	exit ;;
1172fc5a983dSmrg    SM[BE]S:UNIX_SV:*:*)
1173fc5a983dSmrg	echo mips-dde-sysv${UNAME_RELEASE}
1174fc5a983dSmrg	exit ;;
1175fc5a983dSmrg    RM*:ReliantUNIX-*:*:*)
1176fc5a983dSmrg	echo mips-sni-sysv4
1177fc5a983dSmrg	exit ;;
1178fc5a983dSmrg    RM*:SINIX-*:*:*)
1179fc5a983dSmrg	echo mips-sni-sysv4
1180fc5a983dSmrg	exit ;;
1181fc5a983dSmrg    *:SINIX-*:*:*)
1182fc5a983dSmrg	if uname -p 2>/dev/null >/dev/null ; then
1183fc5a983dSmrg		UNAME_MACHINE=`(uname -p) 2>/dev/null`
1184fc5a983dSmrg		echo ${UNAME_MACHINE}-sni-sysv4
1185fc5a983dSmrg	else
1186fc5a983dSmrg		echo ns32k-sni-sysv
1187fc5a983dSmrg	fi
1188fc5a983dSmrg	exit ;;
1189fc5a983dSmrg    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1190fc5a983dSmrg                      # says <Richard.M.Bartel@ccMail.Census.GOV>
1191fc5a983dSmrg        echo i586-unisys-sysv4
1192fc5a983dSmrg        exit ;;
1193fc5a983dSmrg    *:UNIX_System_V:4*:FTX*)
1194fc5a983dSmrg	# From Gerald Hewes <hewes@openmarket.com>.
1195fc5a983dSmrg	# How about differentiating between stratus architectures? -djm
1196fc5a983dSmrg	echo hppa1.1-stratus-sysv4
1197fc5a983dSmrg	exit ;;
1198fc5a983dSmrg    *:*:*:FTX*)
1199fc5a983dSmrg	# From seanf@swdc.stratus.com.
1200fc5a983dSmrg	echo i860-stratus-sysv4
1201fc5a983dSmrg	exit ;;
1202fc5a983dSmrg    i*86:VOS:*:*)
1203fc5a983dSmrg	# From Paul.Green@stratus.com.
1204fc5a983dSmrg	echo ${UNAME_MACHINE}-stratus-vos
1205fc5a983dSmrg	exit ;;
1206fc5a983dSmrg    *:VOS:*:*)
1207fc5a983dSmrg	# From Paul.Green@stratus.com.
1208fc5a983dSmrg	echo hppa1.1-stratus-vos
1209fc5a983dSmrg	exit ;;
1210fc5a983dSmrg    mc68*:A/UX:*:*)
1211fc5a983dSmrg	echo m68k-apple-aux${UNAME_RELEASE}
1212fc5a983dSmrg	exit ;;
1213fc5a983dSmrg    news*:NEWS-OS:6*:*)
1214fc5a983dSmrg	echo mips-sony-newsos6
1215fc5a983dSmrg	exit ;;
1216fc5a983dSmrg    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1217fc5a983dSmrg	if [ -d /usr/nec ]; then
1218fc5a983dSmrg	        echo mips-nec-sysv${UNAME_RELEASE}
1219fc5a983dSmrg	else
1220fc5a983dSmrg	        echo mips-unknown-sysv${UNAME_RELEASE}
1221fc5a983dSmrg	fi
1222fc5a983dSmrg        exit ;;
1223fc5a983dSmrg    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
1224fc5a983dSmrg	echo powerpc-be-beos
1225fc5a983dSmrg	exit ;;
1226fc5a983dSmrg    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
1227fc5a983dSmrg	echo powerpc-apple-beos
1228fc5a983dSmrg	exit ;;
1229fc5a983dSmrg    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
1230fc5a983dSmrg	echo i586-pc-beos
1231fc5a983dSmrg	exit ;;
1232f3561b8bSmrg    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
1233f3561b8bSmrg	echo i586-pc-haiku
1234f3561b8bSmrg	exit ;;
1235fc5a983dSmrg    SX-4:SUPER-UX:*:*)
1236fc5a983dSmrg	echo sx4-nec-superux${UNAME_RELEASE}
1237fc5a983dSmrg	exit ;;
1238fc5a983dSmrg    SX-5:SUPER-UX:*:*)
1239fc5a983dSmrg	echo sx5-nec-superux${UNAME_RELEASE}
1240fc5a983dSmrg	exit ;;
1241fc5a983dSmrg    SX-6:SUPER-UX:*:*)
1242fc5a983dSmrg	echo sx6-nec-superux${UNAME_RELEASE}
1243fc5a983dSmrg	exit ;;
1244fc5a983dSmrg    SX-7:SUPER-UX:*:*)
1245fc5a983dSmrg	echo sx7-nec-superux${UNAME_RELEASE}
1246fc5a983dSmrg	exit ;;
1247fc5a983dSmrg    SX-8:SUPER-UX:*:*)
1248fc5a983dSmrg	echo sx8-nec-superux${UNAME_RELEASE}
1249fc5a983dSmrg	exit ;;
1250fc5a983dSmrg    SX-8R:SUPER-UX:*:*)
1251fc5a983dSmrg	echo sx8r-nec-superux${UNAME_RELEASE}
1252fc5a983dSmrg	exit ;;
1253fc5a983dSmrg    Power*:Rhapsody:*:*)
1254fc5a983dSmrg	echo powerpc-apple-rhapsody${UNAME_RELEASE}
1255fc5a983dSmrg	exit ;;
1256fc5a983dSmrg    *:Rhapsody:*:*)
1257fc5a983dSmrg	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
1258fc5a983dSmrg	exit ;;
1259fc5a983dSmrg    *:Darwin:*:*)
1260fc5a983dSmrg	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
1261fc5a983dSmrg	case $UNAME_PROCESSOR in
1262fc5a983dSmrg	    unknown) UNAME_PROCESSOR=powerpc ;;
1263fc5a983dSmrg	esac
1264fc5a983dSmrg	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
1265fc5a983dSmrg	exit ;;
1266fc5a983dSmrg    *:procnto*:*:* | *:QNX:[0123456789]*:*)
1267fc5a983dSmrg	UNAME_PROCESSOR=`uname -p`
1268fc5a983dSmrg	if test "$UNAME_PROCESSOR" = "x86"; then
1269fc5a983dSmrg		UNAME_PROCESSOR=i386
1270fc5a983dSmrg		UNAME_MACHINE=pc
1271fc5a983dSmrg	fi
1272fc5a983dSmrg	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
1273fc5a983dSmrg	exit ;;
1274fc5a983dSmrg    *:QNX:*:4*)
1275fc5a983dSmrg	echo i386-pc-qnx
1276fc5a983dSmrg	exit ;;
1277fc5a983dSmrg    NSE-?:NONSTOP_KERNEL:*:*)
1278fc5a983dSmrg	echo nse-tandem-nsk${UNAME_RELEASE}
1279fc5a983dSmrg	exit ;;
1280fc5a983dSmrg    NSR-?:NONSTOP_KERNEL:*:*)
1281fc5a983dSmrg	echo nsr-tandem-nsk${UNAME_RELEASE}
1282fc5a983dSmrg	exit ;;
1283fc5a983dSmrg    *:NonStop-UX:*:*)
1284fc5a983dSmrg	echo mips-compaq-nonstopux
1285fc5a983dSmrg	exit ;;
1286fc5a983dSmrg    BS2000:POSIX*:*:*)
1287fc5a983dSmrg	echo bs2000-siemens-sysv
1288fc5a983dSmrg	exit ;;
1289fc5a983dSmrg    DS/*:UNIX_System_V:*:*)
1290fc5a983dSmrg	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
1291fc5a983dSmrg	exit ;;
1292fc5a983dSmrg    *:Plan9:*:*)
1293fc5a983dSmrg	# "uname -m" is not consistent, so use $cputype instead. 386
1294fc5a983dSmrg	# is converted to i386 for consistency with other x86
1295fc5a983dSmrg	# operating systems.
1296fc5a983dSmrg	if test "$cputype" = "386"; then
1297fc5a983dSmrg	    UNAME_MACHINE=i386
1298fc5a983dSmrg	else
1299fc5a983dSmrg	    UNAME_MACHINE="$cputype"
1300fc5a983dSmrg	fi
1301fc5a983dSmrg	echo ${UNAME_MACHINE}-unknown-plan9
1302fc5a983dSmrg	exit ;;
1303fc5a983dSmrg    *:TOPS-10:*:*)
1304fc5a983dSmrg	echo pdp10-unknown-tops10
1305fc5a983dSmrg	exit ;;
1306fc5a983dSmrg    *:TENEX:*:*)
1307fc5a983dSmrg	echo pdp10-unknown-tenex
1308fc5a983dSmrg	exit ;;
1309fc5a983dSmrg    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1310fc5a983dSmrg	echo pdp10-dec-tops20
1311fc5a983dSmrg	exit ;;
1312fc5a983dSmrg    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1313fc5a983dSmrg	echo pdp10-xkl-tops20
1314fc5a983dSmrg	exit ;;
1315fc5a983dSmrg    *:TOPS-20:*:*)
1316fc5a983dSmrg	echo pdp10-unknown-tops20
1317fc5a983dSmrg	exit ;;
1318fc5a983dSmrg    *:ITS:*:*)
1319fc5a983dSmrg	echo pdp10-unknown-its
1320fc5a983dSmrg	exit ;;
1321fc5a983dSmrg    SEI:*:*:SEIUX)
1322fc5a983dSmrg        echo mips-sei-seiux${UNAME_RELEASE}
1323fc5a983dSmrg	exit ;;
1324fc5a983dSmrg    *:DragonFly:*:*)
1325fc5a983dSmrg	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
1326fc5a983dSmrg	exit ;;
1327fc5a983dSmrg    *:*VMS:*:*)
1328fc5a983dSmrg    	UNAME_MACHINE=`(uname -p) 2>/dev/null`
1329fc5a983dSmrg	case "${UNAME_MACHINE}" in
1330fc5a983dSmrg	    A*) echo alpha-dec-vms ; exit ;;
1331fc5a983dSmrg	    I*) echo ia64-dec-vms ; exit ;;
1332fc5a983dSmrg	    V*) echo vax-dec-vms ; exit ;;
1333fc5a983dSmrg	esac ;;
1334fc5a983dSmrg    *:XENIX:*:SysV)
1335fc5a983dSmrg	echo i386-pc-xenix
1336fc5a983dSmrg	exit ;;
1337fc5a983dSmrg    i*86:skyos:*:*)
1338fc5a983dSmrg	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
1339fc5a983dSmrg	exit ;;
1340fc5a983dSmrg    i*86:rdos:*:*)
1341fc5a983dSmrg	echo ${UNAME_MACHINE}-pc-rdos
1342fc5a983dSmrg	exit ;;
1343fc5a983dSmrgesac
1344fc5a983dSmrg
1345fc5a983dSmrg#echo '(No uname command or uname output not recognized.)' 1>&2
1346fc5a983dSmrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
1347fc5a983dSmrg
1348fc5a983dSmrgeval $set_cc_for_build
1349fc5a983dSmrgcat >$dummy.c <<EOF
1350fc5a983dSmrg#ifdef _SEQUENT_
1351fc5a983dSmrg# include <sys/types.h>
1352fc5a983dSmrg# include <sys/utsname.h>
1353fc5a983dSmrg#endif
1354fc5a983dSmrgmain ()
1355fc5a983dSmrg{
1356fc5a983dSmrg#if defined (sony)
1357fc5a983dSmrg#if defined (MIPSEB)
1358fc5a983dSmrg  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
1359fc5a983dSmrg     I don't know....  */
1360fc5a983dSmrg  printf ("mips-sony-bsd\n"); exit (0);
1361fc5a983dSmrg#else
1362fc5a983dSmrg#include <sys/param.h>
1363fc5a983dSmrg  printf ("m68k-sony-newsos%s\n",
1364fc5a983dSmrg#ifdef NEWSOS4
1365fc5a983dSmrg          "4"
1366fc5a983dSmrg#else
1367fc5a983dSmrg	  ""
1368fc5a983dSmrg#endif
1369fc5a983dSmrg         ); exit (0);
1370fc5a983dSmrg#endif
1371fc5a983dSmrg#endif
1372fc5a983dSmrg
1373fc5a983dSmrg#if defined (__arm) && defined (__acorn) && defined (__unix)
1374fc5a983dSmrg  printf ("arm-acorn-riscix\n"); exit (0);
1375fc5a983dSmrg#endif
1376fc5a983dSmrg
1377fc5a983dSmrg#if defined (hp300) && !defined (hpux)
1378fc5a983dSmrg  printf ("m68k-hp-bsd\n"); exit (0);
1379fc5a983dSmrg#endif
1380fc5a983dSmrg
1381fc5a983dSmrg#if defined (NeXT)
1382fc5a983dSmrg#if !defined (__ARCHITECTURE__)
1383fc5a983dSmrg#define __ARCHITECTURE__ "m68k"
1384fc5a983dSmrg#endif
1385fc5a983dSmrg  int version;
1386fc5a983dSmrg  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
1387fc5a983dSmrg  if (version < 4)
1388fc5a983dSmrg    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
1389fc5a983dSmrg  else
1390fc5a983dSmrg    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
1391fc5a983dSmrg  exit (0);
1392fc5a983dSmrg#endif
1393fc5a983dSmrg
1394fc5a983dSmrg#if defined (MULTIMAX) || defined (n16)
1395fc5a983dSmrg#if defined (UMAXV)
1396fc5a983dSmrg  printf ("ns32k-encore-sysv\n"); exit (0);
1397fc5a983dSmrg#else
1398fc5a983dSmrg#if defined (CMU)
1399fc5a983dSmrg  printf ("ns32k-encore-mach\n"); exit (0);
1400fc5a983dSmrg#else
1401fc5a983dSmrg  printf ("ns32k-encore-bsd\n"); exit (0);
1402fc5a983dSmrg#endif
1403fc5a983dSmrg#endif
1404fc5a983dSmrg#endif
1405fc5a983dSmrg
1406fc5a983dSmrg#if defined (__386BSD__)
1407fc5a983dSmrg  printf ("i386-pc-bsd\n"); exit (0);
1408fc5a983dSmrg#endif
1409fc5a983dSmrg
1410fc5a983dSmrg#if defined (sequent)
1411fc5a983dSmrg#if defined (i386)
1412fc5a983dSmrg  printf ("i386-sequent-dynix\n"); exit (0);
1413fc5a983dSmrg#endif
1414fc5a983dSmrg#if defined (ns32000)
1415fc5a983dSmrg  printf ("ns32k-sequent-dynix\n"); exit (0);
1416fc5a983dSmrg#endif
1417fc5a983dSmrg#endif
1418fc5a983dSmrg
1419fc5a983dSmrg#if defined (_SEQUENT_)
1420fc5a983dSmrg    struct utsname un;
1421fc5a983dSmrg
1422fc5a983dSmrg    uname(&un);
1423fc5a983dSmrg
1424fc5a983dSmrg    if (strncmp(un.version, "V2", 2) == 0) {
1425fc5a983dSmrg	printf ("i386-sequent-ptx2\n"); exit (0);
1426fc5a983dSmrg    }
1427fc5a983dSmrg    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
1428fc5a983dSmrg	printf ("i386-sequent-ptx1\n"); exit (0);
1429fc5a983dSmrg    }
1430fc5a983dSmrg    printf ("i386-sequent-ptx\n"); exit (0);
1431fc5a983dSmrg
1432fc5a983dSmrg#endif
1433fc5a983dSmrg
1434fc5a983dSmrg#if defined (vax)
1435fc5a983dSmrg# if !defined (ultrix)
1436fc5a983dSmrg#  include <sys/param.h>
1437fc5a983dSmrg#  if defined (BSD)
1438fc5a983dSmrg#   if BSD == 43
1439fc5a983dSmrg      printf ("vax-dec-bsd4.3\n"); exit (0);
1440fc5a983dSmrg#   else
1441fc5a983dSmrg#    if BSD == 199006
1442fc5a983dSmrg      printf ("vax-dec-bsd4.3reno\n"); exit (0);
1443fc5a983dSmrg#    else
1444fc5a983dSmrg      printf ("vax-dec-bsd\n"); exit (0);
1445fc5a983dSmrg#    endif
1446fc5a983dSmrg#   endif
1447fc5a983dSmrg#  else
1448fc5a983dSmrg    printf ("vax-dec-bsd\n"); exit (0);
1449fc5a983dSmrg#  endif
1450fc5a983dSmrg# else
1451fc5a983dSmrg    printf ("vax-dec-ultrix\n"); exit (0);
1452fc5a983dSmrg# endif
1453fc5a983dSmrg#endif
1454fc5a983dSmrg
1455fc5a983dSmrg#if defined (alliant) && defined (i860)
1456fc5a983dSmrg  printf ("i860-alliant-bsd\n"); exit (0);
1457fc5a983dSmrg#endif
1458fc5a983dSmrg
1459fc5a983dSmrg  exit (1);
1460fc5a983dSmrg}
1461fc5a983dSmrgEOF
1462fc5a983dSmrg
1463fc5a983dSmrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
1464fc5a983dSmrg	{ echo "$SYSTEM_NAME"; exit; }
1465fc5a983dSmrg
1466fc5a983dSmrg# Apollos put the system type in the environment.
1467fc5a983dSmrg
1468fc5a983dSmrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
1469fc5a983dSmrg
1470fc5a983dSmrg# Convex versions that predate uname can use getsysinfo(1)
1471fc5a983dSmrg
1472fc5a983dSmrgif [ -x /usr/convex/getsysinfo ]
1473fc5a983dSmrgthen
1474fc5a983dSmrg    case `getsysinfo -f cpu_type` in
1475fc5a983dSmrg    c1*)
1476fc5a983dSmrg	echo c1-convex-bsd
1477fc5a983dSmrg	exit ;;
1478fc5a983dSmrg    c2*)
1479fc5a983dSmrg	if getsysinfo -f scalar_acc
1480fc5a983dSmrg	then echo c32-convex-bsd
1481fc5a983dSmrg	else echo c2-convex-bsd
1482fc5a983dSmrg	fi
1483fc5a983dSmrg	exit ;;
1484fc5a983dSmrg    c34*)
1485fc5a983dSmrg	echo c34-convex-bsd
1486fc5a983dSmrg	exit ;;
1487fc5a983dSmrg    c38*)
1488fc5a983dSmrg	echo c38-convex-bsd
1489fc5a983dSmrg	exit ;;
1490fc5a983dSmrg    c4*)
1491fc5a983dSmrg	echo c4-convex-bsd
1492fc5a983dSmrg	exit ;;
1493fc5a983dSmrg    esac
1494fc5a983dSmrgfi
1495fc5a983dSmrg
1496fc5a983dSmrgcat >&2 <<EOF
1497fc5a983dSmrg$0: unable to guess system type
1498fc5a983dSmrg
1499fc5a983dSmrgThis script, last modified $timestamp, has failed to recognize
1500fc5a983dSmrgthe operating system you are using. It is advised that you
1501fc5a983dSmrgdownload the most up to date version of the config scripts from
1502fc5a983dSmrg
1503f3561b8bSmrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
1504fc5a983dSmrgand
1505f3561b8bSmrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
1506fc5a983dSmrg
1507fc5a983dSmrgIf the version you run ($0) is already up to date, please
1508fc5a983dSmrgsend the following data and any information you think might be
1509fc5a983dSmrgpertinent to <config-patches@gnu.org> in order to provide the needed
1510fc5a983dSmrginformation to handle your system.
1511fc5a983dSmrg
1512fc5a983dSmrgconfig.guess timestamp = $timestamp
1513fc5a983dSmrg
1514fc5a983dSmrguname -m = `(uname -m) 2>/dev/null || echo unknown`
1515fc5a983dSmrguname -r = `(uname -r) 2>/dev/null || echo unknown`
1516fc5a983dSmrguname -s = `(uname -s) 2>/dev/null || echo unknown`
1517fc5a983dSmrguname -v = `(uname -v) 2>/dev/null || echo unknown`
1518fc5a983dSmrg
1519fc5a983dSmrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1520fc5a983dSmrg/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
1521fc5a983dSmrg
1522fc5a983dSmrghostinfo               = `(hostinfo) 2>/dev/null`
1523fc5a983dSmrg/bin/universe          = `(/bin/universe) 2>/dev/null`
1524fc5a983dSmrg/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
1525fc5a983dSmrg/bin/arch              = `(/bin/arch) 2>/dev/null`
1526fc5a983dSmrg/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
1527fc5a983dSmrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1528fc5a983dSmrg
1529fc5a983dSmrgUNAME_MACHINE = ${UNAME_MACHINE}
1530fc5a983dSmrgUNAME_RELEASE = ${UNAME_RELEASE}
1531fc5a983dSmrgUNAME_SYSTEM  = ${UNAME_SYSTEM}
1532fc5a983dSmrgUNAME_VERSION = ${UNAME_VERSION}
1533fc5a983dSmrgEOF
1534fc5a983dSmrg
1535fc5a983dSmrgexit 1
1536fc5a983dSmrg
1537fc5a983dSmrg# Local variables:
1538fc5a983dSmrg# eval: (add-hook 'write-file-hooks 'time-stamp)
1539fc5a983dSmrg# time-stamp-start: "timestamp='"
1540fc5a983dSmrg# time-stamp-format: "%:y-%02m-%02d"
1541fc5a983dSmrg# time-stamp-end: "'"
1542fc5a983dSmrg# End:
1543