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