config.guess revision a1d73b4b
1c06b6b69Smrg#! /bin/sh
2c06b6b69Smrg# Attempt to guess a canonical system name.
3c06b6b69Smrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4a1d73b4bSmrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
5a1d73b4bSmrg#   2011, 2012 Free Software Foundation, Inc.
6c06b6b69Smrg
7a1d73b4bSmrgtimestamp='2012-01-01'
8c06b6b69Smrg
9c06b6b69Smrg# This file is free software; you can redistribute it and/or modify it
10c06b6b69Smrg# under the terms of the GNU General Public License as published by
11c06b6b69Smrg# the Free Software Foundation; either version 2 of the License, or
12c06b6b69Smrg# (at your option) any later version.
13c06b6b69Smrg#
14c06b6b69Smrg# This program is distributed in the hope that it will be useful, but
15c06b6b69Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of
16c06b6b69Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17c06b6b69Smrg# General Public License for more details.
18c06b6b69Smrg#
19c06b6b69Smrg# You should have received a copy of the GNU General Public License
20c06b6b69Smrg# along with this program; if not, write to the Free Software
219f4658d1Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
229f4658d1Smrg# 02110-1301, USA.
23c06b6b69Smrg#
24c06b6b69Smrg# As a special exception to the GNU General Public License, if you
25c06b6b69Smrg# distribute this file as part of a program that contains a
26c06b6b69Smrg# configuration script generated by Autoconf, you may include it under
27c06b6b69Smrg# the same distribution terms that you use for the rest of that program.
28c06b6b69Smrg
299f4658d1Smrg
307d17d341Smrg# Originally written by Per Bothner.  Please send patches (context
317d17d341Smrg# diff format) to <config-patches@gnu.org> and include a ChangeLog
327d17d341Smrg# entry.
33c06b6b69Smrg#
34c06b6b69Smrg# This script attempts to guess a canonical system name similar to
35c06b6b69Smrg# config.sub.  If it succeeds, it prints the system name on stdout, and
36c06b6b69Smrg# exits with 0.  Otherwise, it exits with 1.
37c06b6b69Smrg#
387d17d341Smrg# You can get the latest version of this script from:
397d17d341Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
40c06b6b69Smrg
41c06b6b69Smrgme=`echo "$0" | sed -e 's,.*/,,'`
42c06b6b69Smrg
43c06b6b69Smrgusage="\
44c06b6b69SmrgUsage: $0 [OPTION]
45c06b6b69Smrg
46c06b6b69SmrgOutput the configuration name of the system \`$me' is run on.
47c06b6b69Smrg
48c06b6b69SmrgOperation modes:
49c06b6b69Smrg  -h, --help         print this help, then exit
50c06b6b69Smrg  -t, --time-stamp   print date of last modification, then exit
51c06b6b69Smrg  -v, --version      print version number, then exit
52c06b6b69Smrg
53c06b6b69SmrgReport bugs and patches to <config-patches@gnu.org>."
54c06b6b69Smrg
55c06b6b69Smrgversion="\
56c06b6b69SmrgGNU config.guess ($timestamp)
57c06b6b69Smrg
58c06b6b69SmrgOriginally written by Per Bothner.
593699b6c4SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
60a1d73b4bSmrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
61a1d73b4bSmrgFree Software Foundation, Inc.
62c06b6b69Smrg
63c06b6b69SmrgThis is free software; see the source for copying conditions.  There is NO
64c06b6b69Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
65c06b6b69Smrg
66c06b6b69Smrghelp="
67c06b6b69SmrgTry \`$me --help' for more information."
68c06b6b69Smrg
69c06b6b69Smrg# Parse command line
70c06b6b69Smrgwhile test $# -gt 0 ; do
71c06b6b69Smrg  case $1 in
72c06b6b69Smrg    --time-stamp | --time* | -t )
739f4658d1Smrg       echo "$timestamp" ; exit ;;
74c06b6b69Smrg    --version | -v )
759f4658d1Smrg       echo "$version" ; exit ;;
76c06b6b69Smrg    --help | --h* | -h )
779f4658d1Smrg       echo "$usage"; exit ;;
78c06b6b69Smrg    -- )     # Stop option processing
79c06b6b69Smrg       shift; break ;;
80c06b6b69Smrg    - )	# Use stdin as input.
81c06b6b69Smrg       break ;;
82c06b6b69Smrg    -* )
83c06b6b69Smrg       echo "$me: invalid option $1$help" >&2
84c06b6b69Smrg       exit 1 ;;
85c06b6b69Smrg    * )
86c06b6b69Smrg       break ;;
87c06b6b69Smrg  esac
88c06b6b69Smrgdone
89c06b6b69Smrg
90c06b6b69Smrgif test $# != 0; then
91c06b6b69Smrg  echo "$me: too many arguments$help" >&2
92c06b6b69Smrg  exit 1
93c06b6b69Smrgfi
94c06b6b69Smrg
95c06b6b69Smrgtrap 'exit 1' 1 2 15
96c06b6b69Smrg
97c06b6b69Smrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
98c06b6b69Smrg# compiler to aid in system detection is discouraged as it requires
99c06b6b69Smrg# temporary files to be created and, as you can see below, it is a
100c06b6b69Smrg# headache to deal with in a portable fashion.
101c06b6b69Smrg
102c06b6b69Smrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
103c06b6b69Smrg# use `HOST_CC' if defined, but it is deprecated.
104c06b6b69Smrg
105c06b6b69Smrg# Portable tmp directory creation inspired by the Autoconf team.
106c06b6b69Smrg
107c06b6b69Smrgset_cc_for_build='
108c06b6b69Smrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
109c06b6b69Smrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
110c06b6b69Smrg: ${TMPDIR=/tmp} ;
1119f4658d1Smrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
112c06b6b69Smrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
113c06b6b69Smrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
114c06b6b69Smrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
115c06b6b69Smrgdummy=$tmp/dummy ;
116c06b6b69Smrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
117c06b6b69Smrgcase $CC_FOR_BUILD,$HOST_CC,$CC in
118c06b6b69Smrg ,,)    echo "int x;" > $dummy.c ;
119c06b6b69Smrg	for c in cc gcc c89 c99 ; do
120c06b6b69Smrg	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
121c06b6b69Smrg	     CC_FOR_BUILD="$c"; break ;
122c06b6b69Smrg	  fi ;
123c06b6b69Smrg	done ;
124c06b6b69Smrg	if test x"$CC_FOR_BUILD" = x ; then
125c06b6b69Smrg	  CC_FOR_BUILD=no_compiler_found ;
126c06b6b69Smrg	fi
127c06b6b69Smrg	;;
128c06b6b69Smrg ,,*)   CC_FOR_BUILD=$CC ;;
129c06b6b69Smrg ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
1309f4658d1Smrgesac ; set_cc_for_build= ;'
131c06b6b69Smrg
132c06b6b69Smrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
133c06b6b69Smrg# (ghazi@noc.rutgers.edu 1994-08-24)
134c06b6b69Smrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then
135c06b6b69Smrg	PATH=$PATH:/.attbin ; export PATH
136c06b6b69Smrgfi
137c06b6b69Smrg
138c06b6b69SmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
139c06b6b69SmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
140c06b6b69SmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
141c06b6b69SmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
142c06b6b69Smrg
143c06b6b69Smrg# Note: order is significant - the case branches are not exclusive.
144c06b6b69Smrg
145c06b6b69Smrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
146c06b6b69Smrg    *:NetBSD:*:*)
147c06b6b69Smrg	# NetBSD (nbsd) targets should (where applicable) match one or
148a1d73b4bSmrg	# more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
149c06b6b69Smrg	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
150c06b6b69Smrg	# switched to ELF, *-*-netbsd* would select the old
151c06b6b69Smrg	# object file format.  This provides both forward
152c06b6b69Smrg	# compatibility and a consistent mechanism for selecting the
153c06b6b69Smrg	# object file format.
154c06b6b69Smrg	#
155c06b6b69Smrg	# Note: NetBSD doesn't particularly care about the vendor
156c06b6b69Smrg	# portion of the name.  We always set it to "unknown".
157c06b6b69Smrg	sysctl="sysctl -n hw.machine_arch"
158c06b6b69Smrg	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
159c06b6b69Smrg	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
160c06b6b69Smrg	case "${UNAME_MACHINE_ARCH}" in
161c06b6b69Smrg	    armeb) machine=armeb-unknown ;;
162c06b6b69Smrg	    arm*) machine=arm-unknown ;;
163c06b6b69Smrg	    sh3el) machine=shl-unknown ;;
164c06b6b69Smrg	    sh3eb) machine=sh-unknown ;;
1659f4658d1Smrg	    sh5el) machine=sh5le-unknown ;;
166c06b6b69Smrg	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
167c06b6b69Smrg	esac
168c06b6b69Smrg	# The Operating System including object format, if it has switched
169c06b6b69Smrg	# to ELF recently, or will in the future.
170c06b6b69Smrg	case "${UNAME_MACHINE_ARCH}" in
171c06b6b69Smrg	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
172c06b6b69Smrg		eval $set_cc_for_build
173c06b6b69Smrg		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
1747d17d341Smrg			| grep -q __ELF__
175c06b6b69Smrg		then
176c06b6b69Smrg		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
177c06b6b69Smrg		    # Return netbsd for either.  FIX?
178c06b6b69Smrg		    os=netbsd
179c06b6b69Smrg		else
180c06b6b69Smrg		    os=netbsdelf
181c06b6b69Smrg		fi
182c06b6b69Smrg		;;
183c06b6b69Smrg	    *)
184a1d73b4bSmrg		os=netbsd
185c06b6b69Smrg		;;
186c06b6b69Smrg	esac
187c06b6b69Smrg	# The OS release
188c06b6b69Smrg	# Debian GNU/NetBSD machines have a different userland, and
189c06b6b69Smrg	# thus, need a distinct triplet. However, they do not need
190c06b6b69Smrg	# kernel version information, so it can be replaced with a
191c06b6b69Smrg	# suitable tag, in the style of linux-gnu.
192c06b6b69Smrg	case "${UNAME_VERSION}" in
193c06b6b69Smrg	    Debian*)
194c06b6b69Smrg		release='-gnu'
195c06b6b69Smrg		;;
196c06b6b69Smrg	    *)
197c06b6b69Smrg		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
198c06b6b69Smrg		;;
199c06b6b69Smrg	esac
200c06b6b69Smrg	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
201c06b6b69Smrg	# contains redundant information, the shorter form:
202c06b6b69Smrg	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
203c06b6b69Smrg	echo "${machine}-${os}${release}"
2049f4658d1Smrg	exit ;;
205c06b6b69Smrg    *:OpenBSD:*:*)
2069f4658d1Smrg	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
2079f4658d1Smrg	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
2089f4658d1Smrg	exit ;;
2099f4658d1Smrg    *:ekkoBSD:*:*)
2109f4658d1Smrg	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
2119f4658d1Smrg	exit ;;
2129f4658d1Smrg    *:SolidBSD:*:*)
2139f4658d1Smrg	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
2149f4658d1Smrg	exit ;;
2159f4658d1Smrg    macppc:MirBSD:*:*)
2169f4658d1Smrg	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
2179f4658d1Smrg	exit ;;
2189f4658d1Smrg    *:MirBSD:*:*)
2199f4658d1Smrg	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
2209f4658d1Smrg	exit ;;
221c06b6b69Smrg    alpha:OSF1:*:*)
2229f4658d1Smrg	case $UNAME_RELEASE in
2239f4658d1Smrg	*4.0)
224c06b6b69Smrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
2259f4658d1Smrg		;;
2269f4658d1Smrg	*5.*)
227a1d73b4bSmrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
2289f4658d1Smrg		;;
2299f4658d1Smrg	esac
230c06b6b69Smrg	# According to Compaq, /usr/sbin/psrinfo has been available on
231c06b6b69Smrg	# OSF/1 and Tru64 systems produced since 1995.  I hope that
232c06b6b69Smrg	# covers most systems running today.  This code pipes the CPU
233c06b6b69Smrg	# types through head -n 1, so we only detect the type of CPU 0.
234c06b6b69Smrg	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
235c06b6b69Smrg	case "$ALPHA_CPU_TYPE" in
236c06b6b69Smrg	    "EV4 (21064)")
237c06b6b69Smrg		UNAME_MACHINE="alpha" ;;
238c06b6b69Smrg	    "EV4.5 (21064)")
239c06b6b69Smrg		UNAME_MACHINE="alpha" ;;
240c06b6b69Smrg	    "LCA4 (21066/21068)")
241c06b6b69Smrg		UNAME_MACHINE="alpha" ;;
242c06b6b69Smrg	    "EV5 (21164)")
243c06b6b69Smrg		UNAME_MACHINE="alphaev5" ;;
244c06b6b69Smrg	    "EV5.6 (21164A)")
245c06b6b69Smrg		UNAME_MACHINE="alphaev56" ;;
246c06b6b69Smrg	    "EV5.6 (21164PC)")
247c06b6b69Smrg		UNAME_MACHINE="alphapca56" ;;
248c06b6b69Smrg	    "EV5.7 (21164PC)")
249c06b6b69Smrg		UNAME_MACHINE="alphapca57" ;;
250c06b6b69Smrg	    "EV6 (21264)")
251c06b6b69Smrg		UNAME_MACHINE="alphaev6" ;;
252c06b6b69Smrg	    "EV6.7 (21264A)")
253c06b6b69Smrg		UNAME_MACHINE="alphaev67" ;;
254c06b6b69Smrg	    "EV6.8CB (21264C)")
255c06b6b69Smrg		UNAME_MACHINE="alphaev68" ;;
256c06b6b69Smrg	    "EV6.8AL (21264B)")
257c06b6b69Smrg		UNAME_MACHINE="alphaev68" ;;
258c06b6b69Smrg	    "EV6.8CX (21264D)")
259c06b6b69Smrg		UNAME_MACHINE="alphaev68" ;;
260c06b6b69Smrg	    "EV6.9A (21264/EV69A)")
261c06b6b69Smrg		UNAME_MACHINE="alphaev69" ;;
262c06b6b69Smrg	    "EV7 (21364)")
263c06b6b69Smrg		UNAME_MACHINE="alphaev7" ;;
264c06b6b69Smrg	    "EV7.9 (21364A)")
265c06b6b69Smrg		UNAME_MACHINE="alphaev79" ;;
266c06b6b69Smrg	esac
2679f4658d1Smrg	# A Pn.n version is a patched version.
268c06b6b69Smrg	# A Vn.n version is a released version.
269c06b6b69Smrg	# A Tn.n version is a released field test version.
270c06b6b69Smrg	# A Xn.n version is an unreleased experimental baselevel.
271c06b6b69Smrg	# 1.2 uses "1.2" for uname -r.
2729f4658d1Smrg	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
273a1d73b4bSmrg	# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
274a1d73b4bSmrg	exitcode=$?
275a1d73b4bSmrg	trap '' 0
276a1d73b4bSmrg	exit $exitcode ;;
277c06b6b69Smrg    Alpha\ *:Windows_NT*:*)
278c06b6b69Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
279c06b6b69Smrg	# Should we change UNAME_MACHINE based on the output of uname instead
280c06b6b69Smrg	# of the specific Alpha model?
281c06b6b69Smrg	echo alpha-pc-interix
2829f4658d1Smrg	exit ;;
283c06b6b69Smrg    21064:Windows_NT:50:3)
284c06b6b69Smrg	echo alpha-dec-winnt3.5
2859f4658d1Smrg	exit ;;
286c06b6b69Smrg    Amiga*:UNIX_System_V:4.0:*)
287c06b6b69Smrg	echo m68k-unknown-sysv4
2889f4658d1Smrg	exit ;;
289c06b6b69Smrg    *:[Aa]miga[Oo][Ss]:*:*)
290c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-amigaos
2919f4658d1Smrg	exit ;;
292c06b6b69Smrg    *:[Mm]orph[Oo][Ss]:*:*)
293c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-morphos
2949f4658d1Smrg	exit ;;
295c06b6b69Smrg    *:OS/390:*:*)
296c06b6b69Smrg	echo i370-ibm-openedition
2979f4658d1Smrg	exit ;;
2989f4658d1Smrg    *:z/VM:*:*)
2999f4658d1Smrg	echo s390-ibm-zvmoe
3009f4658d1Smrg	exit ;;
3019f4658d1Smrg    *:OS400:*:*)
302a1d73b4bSmrg	echo powerpc-ibm-os400
3039f4658d1Smrg	exit ;;
304c06b6b69Smrg    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
305c06b6b69Smrg	echo arm-acorn-riscix${UNAME_RELEASE}
3069f4658d1Smrg	exit ;;
3079f4658d1Smrg    arm:riscos:*:*|arm:RISCOS:*:*)
3089f4658d1Smrg	echo arm-unknown-riscos
3099f4658d1Smrg	exit ;;
310c06b6b69Smrg    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
311c06b6b69Smrg	echo hppa1.1-hitachi-hiuxmpp
3129f4658d1Smrg	exit ;;
313c06b6b69Smrg    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
314c06b6b69Smrg	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
315c06b6b69Smrg	if test "`(/bin/universe) 2>/dev/null`" = att ; then
316c06b6b69Smrg		echo pyramid-pyramid-sysv3
317c06b6b69Smrg	else
318c06b6b69Smrg		echo pyramid-pyramid-bsd
319c06b6b69Smrg	fi
3209f4658d1Smrg	exit ;;
321c06b6b69Smrg    NILE*:*:*:dcosx)
322c06b6b69Smrg	echo pyramid-pyramid-svr4
3239f4658d1Smrg	exit ;;
324c06b6b69Smrg    DRS?6000:unix:4.0:6*)
325c06b6b69Smrg	echo sparc-icl-nx6
3269f4658d1Smrg	exit ;;
3279f4658d1Smrg    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
328c06b6b69Smrg	case `/usr/bin/uname -p` in
3299f4658d1Smrg	    sparc) echo sparc-icl-nx7; exit ;;
330c06b6b69Smrg	esac ;;
3317d17d341Smrg    s390x:SunOS:*:*)
3327d17d341Smrg	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3337d17d341Smrg	exit ;;
334c06b6b69Smrg    sun4H:SunOS:5.*:*)
335c06b6b69Smrg	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3369f4658d1Smrg	exit ;;
337c06b6b69Smrg    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
338c06b6b69Smrg	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3399f4658d1Smrg	exit ;;
3407d17d341Smrg    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
3417d17d341Smrg	echo i386-pc-auroraux${UNAME_RELEASE}
3427d17d341Smrg	exit ;;
3439f4658d1Smrg    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
344b20b881bSmrg	eval $set_cc_for_build
345b20b881bSmrg	SUN_ARCH="i386"
346b20b881bSmrg	# If there is a compiler, see if it is configured for 64-bit objects.
347b20b881bSmrg	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
348b20b881bSmrg	# This test works for both compilers.
349b20b881bSmrg	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
3507d17d341Smrg	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
351b20b881bSmrg		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
352b20b881bSmrg		grep IS_64BIT_ARCH >/dev/null
353b20b881bSmrg	    then
354b20b881bSmrg		SUN_ARCH="x86_64"
355b20b881bSmrg	    fi
356b20b881bSmrg	fi
357b20b881bSmrg	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3589f4658d1Smrg	exit ;;
359c06b6b69Smrg    sun4*:SunOS:6*:*)
360c06b6b69Smrg	# According to config.sub, this is the proper way to canonicalize
361c06b6b69Smrg	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
362c06b6b69Smrg	# it's likely to be more like Solaris than SunOS4.
363c06b6b69Smrg	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3649f4658d1Smrg	exit ;;
365c06b6b69Smrg    sun4*:SunOS:*:*)
366c06b6b69Smrg	case "`/usr/bin/arch -k`" in
367c06b6b69Smrg	    Series*|S4*)
368c06b6b69Smrg		UNAME_RELEASE=`uname -v`
369c06b6b69Smrg		;;
370c06b6b69Smrg	esac
371c06b6b69Smrg	# Japanese Language versions have a version number like `4.1.3-JL'.
372c06b6b69Smrg	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
3739f4658d1Smrg	exit ;;
374c06b6b69Smrg    sun3*:SunOS:*:*)
375c06b6b69Smrg	echo m68k-sun-sunos${UNAME_RELEASE}
3769f4658d1Smrg	exit ;;
377c06b6b69Smrg    sun*:*:4.2BSD:*)
378c06b6b69Smrg	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
379c06b6b69Smrg	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
380c06b6b69Smrg	case "`/bin/arch`" in
381c06b6b69Smrg	    sun3)
382c06b6b69Smrg		echo m68k-sun-sunos${UNAME_RELEASE}
383c06b6b69Smrg		;;
384c06b6b69Smrg	    sun4)
385c06b6b69Smrg		echo sparc-sun-sunos${UNAME_RELEASE}
386c06b6b69Smrg		;;
387c06b6b69Smrg	esac
3889f4658d1Smrg	exit ;;
389c06b6b69Smrg    aushp:SunOS:*:*)
390c06b6b69Smrg	echo sparc-auspex-sunos${UNAME_RELEASE}
3919f4658d1Smrg	exit ;;
392c06b6b69Smrg    # The situation for MiNT is a little confusing.  The machine name
393c06b6b69Smrg    # can be virtually everything (everything which is not
394c06b6b69Smrg    # "atarist" or "atariste" at least should have a processor
395c06b6b69Smrg    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
396c06b6b69Smrg    # to the lowercase version "mint" (or "freemint").  Finally
397c06b6b69Smrg    # the system name "TOS" denotes a system which is actually not
398c06b6b69Smrg    # MiNT.  But MiNT is downward compatible to TOS, so this should
399c06b6b69Smrg    # be no problem.
400c06b6b69Smrg    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
401a1d73b4bSmrg	echo m68k-atari-mint${UNAME_RELEASE}
4029f4658d1Smrg	exit ;;
403c06b6b69Smrg    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
404c06b6b69Smrg	echo m68k-atari-mint${UNAME_RELEASE}
405a1d73b4bSmrg	exit ;;
406c06b6b69Smrg    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
407a1d73b4bSmrg	echo m68k-atari-mint${UNAME_RELEASE}
4089f4658d1Smrg	exit ;;
409c06b6b69Smrg    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
410a1d73b4bSmrg	echo m68k-milan-mint${UNAME_RELEASE}
411a1d73b4bSmrg	exit ;;
412c06b6b69Smrg    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
413a1d73b4bSmrg	echo m68k-hades-mint${UNAME_RELEASE}
414a1d73b4bSmrg	exit ;;
415c06b6b69Smrg    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
416a1d73b4bSmrg	echo m68k-unknown-mint${UNAME_RELEASE}
417a1d73b4bSmrg	exit ;;
4189f4658d1Smrg    m68k:machten:*:*)
4199f4658d1Smrg	echo m68k-apple-machten${UNAME_RELEASE}
4209f4658d1Smrg	exit ;;
421c06b6b69Smrg    powerpc:machten:*:*)
422c06b6b69Smrg	echo powerpc-apple-machten${UNAME_RELEASE}
4239f4658d1Smrg	exit ;;
424c06b6b69Smrg    RISC*:Mach:*:*)
425c06b6b69Smrg	echo mips-dec-mach_bsd4.3
4269f4658d1Smrg	exit ;;
427c06b6b69Smrg    RISC*:ULTRIX:*:*)
428c06b6b69Smrg	echo mips-dec-ultrix${UNAME_RELEASE}
4299f4658d1Smrg	exit ;;
430c06b6b69Smrg    VAX*:ULTRIX*:*:*)
431c06b6b69Smrg	echo vax-dec-ultrix${UNAME_RELEASE}
4329f4658d1Smrg	exit ;;
433c06b6b69Smrg    2020:CLIX:*:* | 2430:CLIX:*:*)
434c06b6b69Smrg	echo clipper-intergraph-clix${UNAME_RELEASE}
4359f4658d1Smrg	exit ;;
436c06b6b69Smrg    mips:*:*:UMIPS | mips:*:*:RISCos)
437c06b6b69Smrg	eval $set_cc_for_build
438c06b6b69Smrg	sed 's/^	//' << EOF >$dummy.c
439c06b6b69Smrg#ifdef __cplusplus
440c06b6b69Smrg#include <stdio.h>  /* for printf() prototype */
441c06b6b69Smrg	int main (int argc, char *argv[]) {
442c06b6b69Smrg#else
443c06b6b69Smrg	int main (argc, argv) int argc; char *argv[]; {
444c06b6b69Smrg#endif
445c06b6b69Smrg	#if defined (host_mips) && defined (MIPSEB)
446c06b6b69Smrg	#if defined (SYSTYPE_SYSV)
447c06b6b69Smrg	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
448c06b6b69Smrg	#endif
449c06b6b69Smrg	#if defined (SYSTYPE_SVR4)
450c06b6b69Smrg	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
451c06b6b69Smrg	#endif
452c06b6b69Smrg	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
453c06b6b69Smrg	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
454c06b6b69Smrg	#endif
455c06b6b69Smrg	#endif
456c06b6b69Smrg	  exit (-1);
457c06b6b69Smrg	}
458c06b6b69SmrgEOF
4599f4658d1Smrg	$CC_FOR_BUILD -o $dummy $dummy.c &&
4609f4658d1Smrg	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
4619f4658d1Smrg	  SYSTEM_NAME=`$dummy $dummyarg` &&
4629f4658d1Smrg	    { echo "$SYSTEM_NAME"; exit; }
463c06b6b69Smrg	echo mips-mips-riscos${UNAME_RELEASE}
4649f4658d1Smrg	exit ;;
465c06b6b69Smrg    Motorola:PowerMAX_OS:*:*)
466c06b6b69Smrg	echo powerpc-motorola-powermax
4679f4658d1Smrg	exit ;;
468c06b6b69Smrg    Motorola:*:4.3:PL8-*)
469c06b6b69Smrg	echo powerpc-harris-powermax
4709f4658d1Smrg	exit ;;
471c06b6b69Smrg    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
472c06b6b69Smrg	echo powerpc-harris-powermax
4739f4658d1Smrg	exit ;;
474c06b6b69Smrg    Night_Hawk:Power_UNIX:*:*)
475c06b6b69Smrg	echo powerpc-harris-powerunix
4769f4658d1Smrg	exit ;;
477c06b6b69Smrg    m88k:CX/UX:7*:*)
478c06b6b69Smrg	echo m88k-harris-cxux7
4799f4658d1Smrg	exit ;;
480c06b6b69Smrg    m88k:*:4*:R4*)
481c06b6b69Smrg	echo m88k-motorola-sysv4
4829f4658d1Smrg	exit ;;
483c06b6b69Smrg    m88k:*:3*:R3*)
484c06b6b69Smrg	echo m88k-motorola-sysv3
4859f4658d1Smrg	exit ;;
486c06b6b69Smrg    AViiON:dgux:*:*)
487a1d73b4bSmrg	# DG/UX returns AViiON for all architectures
488a1d73b4bSmrg	UNAME_PROCESSOR=`/usr/bin/uname -p`
489c06b6b69Smrg	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
490c06b6b69Smrg	then
491c06b6b69Smrg	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
492c06b6b69Smrg	       [ ${TARGET_BINARY_INTERFACE}x = x ]
493c06b6b69Smrg	    then
494c06b6b69Smrg		echo m88k-dg-dgux${UNAME_RELEASE}
495c06b6b69Smrg	    else
496c06b6b69Smrg		echo m88k-dg-dguxbcs${UNAME_RELEASE}
497c06b6b69Smrg	    fi
498c06b6b69Smrg	else
499c06b6b69Smrg	    echo i586-dg-dgux${UNAME_RELEASE}
500c06b6b69Smrg	fi
501a1d73b4bSmrg	exit ;;
502c06b6b69Smrg    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
503c06b6b69Smrg	echo m88k-dolphin-sysv3
5049f4658d1Smrg	exit ;;
505c06b6b69Smrg    M88*:*:R3*:*)
506c06b6b69Smrg	# Delta 88k system running SVR3
507c06b6b69Smrg	echo m88k-motorola-sysv3
5089f4658d1Smrg	exit ;;
509c06b6b69Smrg    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
510c06b6b69Smrg	echo m88k-tektronix-sysv3
5119f4658d1Smrg	exit ;;
512c06b6b69Smrg    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
513c06b6b69Smrg	echo m68k-tektronix-bsd
5149f4658d1Smrg	exit ;;
515c06b6b69Smrg    *:IRIX*:*:*)
516c06b6b69Smrg	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
5179f4658d1Smrg	exit ;;
518c06b6b69Smrg    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
5199f4658d1Smrg	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
5209f4658d1Smrg	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
521c06b6b69Smrg    i*86:AIX:*:*)
522c06b6b69Smrg	echo i386-ibm-aix
5239f4658d1Smrg	exit ;;
524c06b6b69Smrg    ia64:AIX:*:*)
525c06b6b69Smrg	if [ -x /usr/bin/oslevel ] ; then
526c06b6b69Smrg		IBM_REV=`/usr/bin/oslevel`
527c06b6b69Smrg	else
528c06b6b69Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
529c06b6b69Smrg	fi
530c06b6b69Smrg	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
5319f4658d1Smrg	exit ;;
532c06b6b69Smrg    *:AIX:2:3)
533c06b6b69Smrg	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
534c06b6b69Smrg		eval $set_cc_for_build
535c06b6b69Smrg		sed 's/^		//' << EOF >$dummy.c
536c06b6b69Smrg		#include <sys/systemcfg.h>
537c06b6b69Smrg
538c06b6b69Smrg		main()
539c06b6b69Smrg			{
540c06b6b69Smrg			if (!__power_pc())
541c06b6b69Smrg				exit(1);
542c06b6b69Smrg			puts("powerpc-ibm-aix3.2.5");
543c06b6b69Smrg			exit(0);
544c06b6b69Smrg			}
545c06b6b69SmrgEOF
5469f4658d1Smrg		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
5479f4658d1Smrg		then
5489f4658d1Smrg			echo "$SYSTEM_NAME"
5499f4658d1Smrg		else
5509f4658d1Smrg			echo rs6000-ibm-aix3.2.5
5519f4658d1Smrg		fi
552c06b6b69Smrg	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
553c06b6b69Smrg		echo rs6000-ibm-aix3.2.4
554c06b6b69Smrg	else
555c06b6b69Smrg		echo rs6000-ibm-aix3.2
556c06b6b69Smrg	fi
5579f4658d1Smrg	exit ;;
558a1d73b4bSmrg    *:AIX:*:[4567])
559c06b6b69Smrg	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
560c06b6b69Smrg	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
561c06b6b69Smrg		IBM_ARCH=rs6000
562c06b6b69Smrg	else
563c06b6b69Smrg		IBM_ARCH=powerpc
564c06b6b69Smrg	fi
565c06b6b69Smrg	if [ -x /usr/bin/oslevel ] ; then
566c06b6b69Smrg		IBM_REV=`/usr/bin/oslevel`
567c06b6b69Smrg	else
568c06b6b69Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
569c06b6b69Smrg	fi
570c06b6b69Smrg	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
5719f4658d1Smrg	exit ;;
572c06b6b69Smrg    *:AIX:*:*)
573c06b6b69Smrg	echo rs6000-ibm-aix
5749f4658d1Smrg	exit ;;
575c06b6b69Smrg    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
576c06b6b69Smrg	echo romp-ibm-bsd4.4
5779f4658d1Smrg	exit ;;
578c06b6b69Smrg    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
579c06b6b69Smrg	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
5809f4658d1Smrg	exit ;;                             # report: romp-ibm BSD 4.3
581c06b6b69Smrg    *:BOSX:*:*)
582c06b6b69Smrg	echo rs6000-bull-bosx
5839f4658d1Smrg	exit ;;
584c06b6b69Smrg    DPX/2?00:B.O.S.:*:*)
585c06b6b69Smrg	echo m68k-bull-sysv3
5869f4658d1Smrg	exit ;;
587c06b6b69Smrg    9000/[34]??:4.3bsd:1.*:*)
588c06b6b69Smrg	echo m68k-hp-bsd
5899f4658d1Smrg	exit ;;
590c06b6b69Smrg    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
591c06b6b69Smrg	echo m68k-hp-bsd4.4
5929f4658d1Smrg	exit ;;
593c06b6b69Smrg    9000/[34678]??:HP-UX:*:*)
594c06b6b69Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
595c06b6b69Smrg	case "${UNAME_MACHINE}" in
596c06b6b69Smrg	    9000/31? )            HP_ARCH=m68000 ;;
597c06b6b69Smrg	    9000/[34]?? )         HP_ARCH=m68k ;;
598c06b6b69Smrg	    9000/[678][0-9][0-9])
599c06b6b69Smrg		if [ -x /usr/bin/getconf ]; then
600c06b6b69Smrg		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
601a1d73b4bSmrg		    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
602a1d73b4bSmrg		    case "${sc_cpu_version}" in
603a1d73b4bSmrg		      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
604a1d73b4bSmrg		      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
605a1d73b4bSmrg		      532)                      # CPU_PA_RISC2_0
606a1d73b4bSmrg			case "${sc_kernel_bits}" in
607a1d73b4bSmrg			  32) HP_ARCH="hppa2.0n" ;;
608a1d73b4bSmrg			  64) HP_ARCH="hppa2.0w" ;;
609c06b6b69Smrg			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
610a1d73b4bSmrg			esac ;;
611a1d73b4bSmrg		    esac
612c06b6b69Smrg		fi
613c06b6b69Smrg		if [ "${HP_ARCH}" = "" ]; then
614c06b6b69Smrg		    eval $set_cc_for_build
615a1d73b4bSmrg		    sed 's/^		//' << EOF >$dummy.c
616c06b6b69Smrg
617a1d73b4bSmrg		#define _HPUX_SOURCE
618a1d73b4bSmrg		#include <stdlib.h>
619a1d73b4bSmrg		#include <unistd.h>
620c06b6b69Smrg
621a1d73b4bSmrg		int main ()
622a1d73b4bSmrg		{
623a1d73b4bSmrg		#if defined(_SC_KERNEL_BITS)
624a1d73b4bSmrg		    long bits = sysconf(_SC_KERNEL_BITS);
625a1d73b4bSmrg		#endif
626a1d73b4bSmrg		    long cpu  = sysconf (_SC_CPU_VERSION);
627c06b6b69Smrg
628a1d73b4bSmrg		    switch (cpu)
629a1d73b4bSmrg			{
630a1d73b4bSmrg			case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
631a1d73b4bSmrg			case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
632a1d73b4bSmrg			case CPU_PA_RISC2_0:
633a1d73b4bSmrg		#if defined(_SC_KERNEL_BITS)
634a1d73b4bSmrg			    switch (bits)
635a1d73b4bSmrg				{
636a1d73b4bSmrg				case 64: puts ("hppa2.0w"); break;
637a1d73b4bSmrg				case 32: puts ("hppa2.0n"); break;
638a1d73b4bSmrg				default: puts ("hppa2.0"); break;
639a1d73b4bSmrg				} break;
640a1d73b4bSmrg		#else  /* !defined(_SC_KERNEL_BITS) */
641a1d73b4bSmrg			    puts ("hppa2.0"); break;
642a1d73b4bSmrg		#endif
643a1d73b4bSmrg			default: puts ("hppa1.0"); break;
644a1d73b4bSmrg			}
645a1d73b4bSmrg		    exit (0);
646a1d73b4bSmrg		}
647c06b6b69SmrgEOF
648c06b6b69Smrg		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
649c06b6b69Smrg		    test -z "$HP_ARCH" && HP_ARCH=hppa
650c06b6b69Smrg		fi ;;
651c06b6b69Smrg	esac
652c06b6b69Smrg	if [ ${HP_ARCH} = "hppa2.0w" ]
653c06b6b69Smrg	then
6549f4658d1Smrg	    eval $set_cc_for_build
6559f4658d1Smrg
6569f4658d1Smrg	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
6579f4658d1Smrg	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
6589f4658d1Smrg	    # generating 64-bit code.  GNU and HP use different nomenclature:
6599f4658d1Smrg	    #
6609f4658d1Smrg	    # $ CC_FOR_BUILD=cc ./config.guess
6619f4658d1Smrg	    # => hppa2.0w-hp-hpux11.23
6629f4658d1Smrg	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
6639f4658d1Smrg	    # => hppa64-hp-hpux11.23
6649f4658d1Smrg
6659f4658d1Smrg	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
6667d17d341Smrg		grep -q __LP64__
667c06b6b69Smrg	    then
668c06b6b69Smrg		HP_ARCH="hppa2.0w"
669c06b6b69Smrg	    else
670c06b6b69Smrg		HP_ARCH="hppa64"
671c06b6b69Smrg	    fi
672c06b6b69Smrg	fi
673c06b6b69Smrg	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
6749f4658d1Smrg	exit ;;
675c06b6b69Smrg    ia64:HP-UX:*:*)
676c06b6b69Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
677c06b6b69Smrg	echo ia64-hp-hpux${HPUX_REV}
6789f4658d1Smrg	exit ;;
679c06b6b69Smrg    3050*:HI-UX:*:*)
680c06b6b69Smrg	eval $set_cc_for_build
681c06b6b69Smrg	sed 's/^	//' << EOF >$dummy.c
682c06b6b69Smrg	#include <unistd.h>
683c06b6b69Smrg	int
684c06b6b69Smrg	main ()
685c06b6b69Smrg	{
686c06b6b69Smrg	  long cpu = sysconf (_SC_CPU_VERSION);
687c06b6b69Smrg	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
688c06b6b69Smrg	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
689c06b6b69Smrg	     results, however.  */
690c06b6b69Smrg	  if (CPU_IS_PA_RISC (cpu))
691c06b6b69Smrg	    {
692c06b6b69Smrg	      switch (cpu)
693c06b6b69Smrg		{
694c06b6b69Smrg		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
695c06b6b69Smrg		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
696c06b6b69Smrg		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
697c06b6b69Smrg		  default: puts ("hppa-hitachi-hiuxwe2"); break;
698c06b6b69Smrg		}
699c06b6b69Smrg	    }
700c06b6b69Smrg	  else if (CPU_IS_HP_MC68K (cpu))
701c06b6b69Smrg	    puts ("m68k-hitachi-hiuxwe2");
702c06b6b69Smrg	  else puts ("unknown-hitachi-hiuxwe2");
703c06b6b69Smrg	  exit (0);
704c06b6b69Smrg	}
705c06b6b69SmrgEOF
7069f4658d1Smrg	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
7079f4658d1Smrg		{ echo "$SYSTEM_NAME"; exit; }
708c06b6b69Smrg	echo unknown-hitachi-hiuxwe2
7099f4658d1Smrg	exit ;;
710c06b6b69Smrg    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
711c06b6b69Smrg	echo hppa1.1-hp-bsd
7129f4658d1Smrg	exit ;;
713c06b6b69Smrg    9000/8??:4.3bsd:*:*)
714c06b6b69Smrg	echo hppa1.0-hp-bsd
7159f4658d1Smrg	exit ;;
716c06b6b69Smrg    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
717c06b6b69Smrg	echo hppa1.0-hp-mpeix
7189f4658d1Smrg	exit ;;
719c06b6b69Smrg    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
720c06b6b69Smrg	echo hppa1.1-hp-osf
7219f4658d1Smrg	exit ;;
722c06b6b69Smrg    hp8??:OSF1:*:*)
723c06b6b69Smrg	echo hppa1.0-hp-osf
7249f4658d1Smrg	exit ;;
725c06b6b69Smrg    i*86:OSF1:*:*)
726c06b6b69Smrg	if [ -x /usr/sbin/sysversion ] ; then
727c06b6b69Smrg	    echo ${UNAME_MACHINE}-unknown-osf1mk
728c06b6b69Smrg	else
729c06b6b69Smrg	    echo ${UNAME_MACHINE}-unknown-osf1
730c06b6b69Smrg	fi
7319f4658d1Smrg	exit ;;
732c06b6b69Smrg    parisc*:Lites*:*:*)
733c06b6b69Smrg	echo hppa1.1-hp-lites
7349f4658d1Smrg	exit ;;
735c06b6b69Smrg    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
736c06b6b69Smrg	echo c1-convex-bsd
737a1d73b4bSmrg	exit ;;
738c06b6b69Smrg    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
739c06b6b69Smrg	if getsysinfo -f scalar_acc
740c06b6b69Smrg	then echo c32-convex-bsd
741c06b6b69Smrg	else echo c2-convex-bsd
742c06b6b69Smrg	fi
743a1d73b4bSmrg	exit ;;
744c06b6b69Smrg    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
745c06b6b69Smrg	echo c34-convex-bsd
746a1d73b4bSmrg	exit ;;
747c06b6b69Smrg    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
748c06b6b69Smrg	echo c38-convex-bsd
749a1d73b4bSmrg	exit ;;
750c06b6b69Smrg    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
751c06b6b69Smrg	echo c4-convex-bsd
752a1d73b4bSmrg	exit ;;
753c06b6b69Smrg    CRAY*Y-MP:*:*:*)
754c06b6b69Smrg	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7559f4658d1Smrg	exit ;;
756c06b6b69Smrg    CRAY*[A-Z]90:*:*:*)
757c06b6b69Smrg	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
758c06b6b69Smrg	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
759c06b6b69Smrg	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
760c06b6b69Smrg	      -e 's/\.[^.]*$/.X/'
7619f4658d1Smrg	exit ;;
762c06b6b69Smrg    CRAY*TS:*:*:*)
763c06b6b69Smrg	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7649f4658d1Smrg	exit ;;
765c06b6b69Smrg    CRAY*T3E:*:*:*)
766c06b6b69Smrg	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7679f4658d1Smrg	exit ;;
768c06b6b69Smrg    CRAY*SV1:*:*:*)
769c06b6b69Smrg	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7709f4658d1Smrg	exit ;;
771c06b6b69Smrg    *:UNICOS/mp:*:*)
7729f4658d1Smrg	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7739f4658d1Smrg	exit ;;
774c06b6b69Smrg    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
775c06b6b69Smrg	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
776a1d73b4bSmrg	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
777a1d73b4bSmrg	FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
778a1d73b4bSmrg	echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
779a1d73b4bSmrg	exit ;;
7809f4658d1Smrg    5000:UNIX_System_V:4.*:*)
781a1d73b4bSmrg	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
782a1d73b4bSmrg	FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
783a1d73b4bSmrg	echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
7849f4658d1Smrg	exit ;;
785c06b6b69Smrg    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
786c06b6b69Smrg	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
7879f4658d1Smrg	exit ;;
788c06b6b69Smrg    sparc*:BSD/OS:*:*)
789c06b6b69Smrg	echo sparc-unknown-bsdi${UNAME_RELEASE}
7909f4658d1Smrg	exit ;;
791c06b6b69Smrg    *:BSD/OS:*:*)
792c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
7939f4658d1Smrg	exit ;;
7949f4658d1Smrg    *:FreeBSD:*:*)
795a1d73b4bSmrg	UNAME_PROCESSOR=`/usr/bin/uname -p`
796a1d73b4bSmrg	case ${UNAME_PROCESSOR} in
7979f4658d1Smrg	    amd64)
7989f4658d1Smrg		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7999f4658d1Smrg	    *)
800a1d73b4bSmrg		echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
8019f4658d1Smrg	esac
8029f4658d1Smrg	exit ;;
803c06b6b69Smrg    i*:CYGWIN*:*)
804c06b6b69Smrg	echo ${UNAME_MACHINE}-pc-cygwin
8059f4658d1Smrg	exit ;;
8069f4658d1Smrg    *:MINGW*:*)
807c06b6b69Smrg	echo ${UNAME_MACHINE}-pc-mingw32
8089f4658d1Smrg	exit ;;
809a1d73b4bSmrg    i*:MSYS*:*)
810a1d73b4bSmrg	echo ${UNAME_MACHINE}-pc-msys
811a1d73b4bSmrg	exit ;;
8129f4658d1Smrg    i*:windows32*:*)
813a1d73b4bSmrg	# uname -m includes "-pc" on this system.
814a1d73b4bSmrg	echo ${UNAME_MACHINE}-mingw32
8159f4658d1Smrg	exit ;;
816c06b6b69Smrg    i*:PW*:*)
817c06b6b69Smrg	echo ${UNAME_MACHINE}-pc-pw32
8189f4658d1Smrg	exit ;;
8197d17d341Smrg    *:Interix*:*)
820a1d73b4bSmrg	case ${UNAME_MACHINE} in
8219f4658d1Smrg	    x86)
8229f4658d1Smrg		echo i586-pc-interix${UNAME_RELEASE}
8239f4658d1Smrg		exit ;;
8247d17d341Smrg	    authenticamd | genuineintel | EM64T)
8259f4658d1Smrg		echo x86_64-unknown-interix${UNAME_RELEASE}
8269f4658d1Smrg		exit ;;
8279f4658d1Smrg	    IA64)
8289f4658d1Smrg		echo ia64-unknown-interix${UNAME_RELEASE}
8299f4658d1Smrg		exit ;;
8309f4658d1Smrg	esac ;;
831c06b6b69Smrg    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
832c06b6b69Smrg	echo i${UNAME_MACHINE}-pc-mks
8339f4658d1Smrg	exit ;;
8347d17d341Smrg    8664:Windows_NT:*)
8357d17d341Smrg	echo x86_64-pc-mks
8367d17d341Smrg	exit ;;
837c06b6b69Smrg    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
838c06b6b69Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
839c06b6b69Smrg	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
840c06b6b69Smrg	# UNAME_MACHINE based on the output of uname instead of i386?
841c06b6b69Smrg	echo i586-pc-interix
8429f4658d1Smrg	exit ;;
843c06b6b69Smrg    i*:UWIN*:*)
844c06b6b69Smrg	echo ${UNAME_MACHINE}-pc-uwin
8459f4658d1Smrg	exit ;;
8469f4658d1Smrg    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
8479f4658d1Smrg	echo x86_64-unknown-cygwin
8489f4658d1Smrg	exit ;;
849c06b6b69Smrg    p*:CYGWIN*:*)
850c06b6b69Smrg	echo powerpcle-unknown-cygwin
8519f4658d1Smrg	exit ;;
852c06b6b69Smrg    prep*:SunOS:5.*:*)
853c06b6b69Smrg	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
8549f4658d1Smrg	exit ;;
855c06b6b69Smrg    *:GNU:*:*)
8569f4658d1Smrg	# the GNU system
857c06b6b69Smrg	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
8589f4658d1Smrg	exit ;;
8599f4658d1Smrg    *:GNU/*:*:*)
8609f4658d1Smrg	# other systems with GNU libc and userland
8619f4658d1Smrg	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
8629f4658d1Smrg	exit ;;
863c06b6b69Smrg    i*86:Minix:*:*)
864c06b6b69Smrg	echo ${UNAME_MACHINE}-pc-minix
8659f4658d1Smrg	exit ;;
8667d17d341Smrg    alpha:Linux:*:*)
8677d17d341Smrg	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
8687d17d341Smrg	  EV5)   UNAME_MACHINE=alphaev5 ;;
8697d17d341Smrg	  EV56)  UNAME_MACHINE=alphaev56 ;;
8707d17d341Smrg	  PCA56) UNAME_MACHINE=alphapca56 ;;
8717d17d341Smrg	  PCA57) UNAME_MACHINE=alphapca56 ;;
8727d17d341Smrg	  EV6)   UNAME_MACHINE=alphaev6 ;;
8737d17d341Smrg	  EV67)  UNAME_MACHINE=alphaev67 ;;
8747d17d341Smrg	  EV68*) UNAME_MACHINE=alphaev68 ;;
875a1d73b4bSmrg	esac
8767d17d341Smrg	objdump --private-headers /bin/sh | grep -q ld.so.1
8777d17d341Smrg	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
8787d17d341Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
8797d17d341Smrg	exit ;;
880c06b6b69Smrg    arm*:Linux:*:*)
8819f4658d1Smrg	eval $set_cc_for_build
8829f4658d1Smrg	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
8839f4658d1Smrg	    | grep -q __ARM_EABI__
8849f4658d1Smrg	then
8859f4658d1Smrg	    echo ${UNAME_MACHINE}-unknown-linux-gnu
8869f4658d1Smrg	else
887a1d73b4bSmrg	    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
888a1d73b4bSmrg		| grep -q __ARM_PCS_VFP
889a1d73b4bSmrg	    then
890a1d73b4bSmrg		echo ${UNAME_MACHINE}-unknown-linux-gnueabi
891a1d73b4bSmrg	    else
892a1d73b4bSmrg		echo ${UNAME_MACHINE}-unknown-linux-gnueabihf
893a1d73b4bSmrg	    fi
8949f4658d1Smrg	fi
8959f4658d1Smrg	exit ;;
8969f4658d1Smrg    avr32*:Linux:*:*)
897c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
8989f4658d1Smrg	exit ;;
899c06b6b69Smrg    cris:Linux:*:*)
900a1d73b4bSmrg	echo ${UNAME_MACHINE}-axis-linux-gnu
9019f4658d1Smrg	exit ;;
9029f4658d1Smrg    crisv32:Linux:*:*)
903a1d73b4bSmrg	echo ${UNAME_MACHINE}-axis-linux-gnu
9049f4658d1Smrg	exit ;;
9059f4658d1Smrg    frv:Linux:*:*)
906a1d73b4bSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
907a1d73b4bSmrg	exit ;;
908a1d73b4bSmrg    hexagon:Linux:*:*)
909a1d73b4bSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9109f4658d1Smrg	exit ;;
9117d17d341Smrg    i*86:Linux:*:*)
9127d17d341Smrg	LIBC=gnu
9137d17d341Smrg	eval $set_cc_for_build
9147d17d341Smrg	sed 's/^	//' << EOF >$dummy.c
9157d17d341Smrg	#ifdef __dietlibc__
9167d17d341Smrg	LIBC=dietlibc
9177d17d341Smrg	#endif
9187d17d341SmrgEOF
9197d17d341Smrg	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
9207d17d341Smrg	echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
9217d17d341Smrg	exit ;;
922c06b6b69Smrg    ia64:Linux:*:*)
9239f4658d1Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9249f4658d1Smrg	exit ;;
9259f4658d1Smrg    m32r*:Linux:*:*)
9269f4658d1Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9279f4658d1Smrg	exit ;;
928c06b6b69Smrg    m68*:Linux:*:*)
929c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9309f4658d1Smrg	exit ;;
9317d17d341Smrg    mips:Linux:*:* | mips64:Linux:*:*)
932c06b6b69Smrg	eval $set_cc_for_build
933c06b6b69Smrg	sed 's/^	//' << EOF >$dummy.c
934c06b6b69Smrg	#undef CPU
9357d17d341Smrg	#undef ${UNAME_MACHINE}
9367d17d341Smrg	#undef ${UNAME_MACHINE}el
937c06b6b69Smrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
9387d17d341Smrg	CPU=${UNAME_MACHINE}el
939c06b6b69Smrg	#else
940c06b6b69Smrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
9417d17d341Smrg	CPU=${UNAME_MACHINE}
942c06b6b69Smrg	#else
943c06b6b69Smrg	CPU=
944c06b6b69Smrg	#endif
945c06b6b69Smrg	#endif
946c06b6b69SmrgEOF
9477d17d341Smrg	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
9489f4658d1Smrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
949c06b6b69Smrg	;;
9509f4658d1Smrg    or32:Linux:*:*)
951a1d73b4bSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9529f4658d1Smrg	exit ;;
953b20b881bSmrg    padre:Linux:*:*)
954b20b881bSmrg	echo sparc-unknown-linux-gnu
955b20b881bSmrg	exit ;;
9567d17d341Smrg    parisc64:Linux:*:* | hppa64:Linux:*:*)
9577d17d341Smrg	echo hppa64-unknown-linux-gnu
9587d17d341Smrg	exit ;;
959c06b6b69Smrg    parisc:Linux:*:* | hppa:Linux:*:*)
960c06b6b69Smrg	# Look for CPU level
961c06b6b69Smrg	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
962c06b6b69Smrg	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
963c06b6b69Smrg	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
964c06b6b69Smrg	  *)    echo hppa-unknown-linux-gnu ;;
965c06b6b69Smrg	esac
9669f4658d1Smrg	exit ;;
9677d17d341Smrg    ppc64:Linux:*:*)
9687d17d341Smrg	echo powerpc64-unknown-linux-gnu
9697d17d341Smrg	exit ;;
9707d17d341Smrg    ppc:Linux:*:*)
9717d17d341Smrg	echo powerpc-unknown-linux-gnu
9729f4658d1Smrg	exit ;;
973c06b6b69Smrg    s390:Linux:*:* | s390x:Linux:*:*)
9749f4658d1Smrg	echo ${UNAME_MACHINE}-ibm-linux
9759f4658d1Smrg	exit ;;
976c06b6b69Smrg    sh64*:Linux:*:*)
977a1d73b4bSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9789f4658d1Smrg	exit ;;
979c06b6b69Smrg    sh*:Linux:*:*)
980c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9819f4658d1Smrg	exit ;;
982c06b6b69Smrg    sparc:Linux:*:* | sparc64:Linux:*:*)
983c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9849f4658d1Smrg	exit ;;
985a1d73b4bSmrg    tile*:Linux:*:*)
986a1d73b4bSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
987a1d73b4bSmrg	exit ;;
9889f4658d1Smrg    vax:Linux:*:*)
9899f4658d1Smrg	echo ${UNAME_MACHINE}-dec-linux-gnu
9909f4658d1Smrg	exit ;;
991c06b6b69Smrg    x86_64:Linux:*:*)
992a1d73b4bSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9939f4658d1Smrg	exit ;;
9949f4658d1Smrg    xtensa*:Linux:*:*)
995a1d73b4bSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9969f4658d1Smrg	exit ;;
997c06b6b69Smrg    i*86:DYNIX/ptx:4*:*)
998c06b6b69Smrg	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
999c06b6b69Smrg	# earlier versions are messed up and put the nodename in both
1000c06b6b69Smrg	# sysname and nodename.
1001c06b6b69Smrg	echo i386-sequent-sysv4
10029f4658d1Smrg	exit ;;
1003c06b6b69Smrg    i*86:UNIX_SV:4.2MP:2.*)
1004a1d73b4bSmrg	# Unixware is an offshoot of SVR4, but it has its own version
1005a1d73b4bSmrg	# number series starting with 2...
1006a1d73b4bSmrg	# I am not positive that other SVR4 systems won't match this,
1007c06b6b69Smrg	# I just have to hope.  -- rms.
1008a1d73b4bSmrg	# Use sysv4.2uw... so that sysv4* matches it.
1009c06b6b69Smrg	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
10109f4658d1Smrg	exit ;;
1011c06b6b69Smrg    i*86:OS/2:*:*)
1012c06b6b69Smrg	# If we were able to find `uname', then EMX Unix compatibility
1013c06b6b69Smrg	# is probably installed.
1014c06b6b69Smrg	echo ${UNAME_MACHINE}-pc-os2-emx
10159f4658d1Smrg	exit ;;
1016c06b6b69Smrg    i*86:XTS-300:*:STOP)
1017c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-stop
10189f4658d1Smrg	exit ;;
1019c06b6b69Smrg    i*86:atheos:*:*)
1020c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-atheos
10219f4658d1Smrg	exit ;;
10229f4658d1Smrg    i*86:syllable:*:*)
10239f4658d1Smrg	echo ${UNAME_MACHINE}-pc-syllable
10249f4658d1Smrg	exit ;;
10257d17d341Smrg    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
1026c06b6b69Smrg	echo i386-unknown-lynxos${UNAME_RELEASE}
10279f4658d1Smrg	exit ;;
1028c06b6b69Smrg    i*86:*DOS:*:*)
1029c06b6b69Smrg	echo ${UNAME_MACHINE}-pc-msdosdjgpp
10309f4658d1Smrg	exit ;;
1031c06b6b69Smrg    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
1032c06b6b69Smrg	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
1033c06b6b69Smrg	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1034c06b6b69Smrg		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
1035c06b6b69Smrg	else
1036c06b6b69Smrg		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
1037c06b6b69Smrg	fi
10389f4658d1Smrg	exit ;;
10399f4658d1Smrg    i*86:*:5:[678]*)
1040a1d73b4bSmrg	# UnixWare 7.x, OpenUNIX and OpenServer 6.
1041c06b6b69Smrg	case `/bin/uname -X | grep "^Machine"` in
1042c06b6b69Smrg	    *486*)	     UNAME_MACHINE=i486 ;;
1043c06b6b69Smrg	    *Pentium)	     UNAME_MACHINE=i586 ;;
1044c06b6b69Smrg	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1045c06b6b69Smrg	esac
1046c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
10479f4658d1Smrg	exit ;;
1048c06b6b69Smrg    i*86:*:3.2:*)
1049c06b6b69Smrg	if test -f /usr/options/cb.name; then
1050c06b6b69Smrg		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1051c06b6b69Smrg		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1052c06b6b69Smrg	elif /bin/uname -X 2>/dev/null >/dev/null ; then
1053c06b6b69Smrg		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1054c06b6b69Smrg		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1055c06b6b69Smrg		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1056c06b6b69Smrg			&& UNAME_MACHINE=i586
1057c06b6b69Smrg		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1058c06b6b69Smrg			&& UNAME_MACHINE=i686
1059c06b6b69Smrg		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1060c06b6b69Smrg			&& UNAME_MACHINE=i686
1061c06b6b69Smrg		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1062c06b6b69Smrg	else
1063c06b6b69Smrg		echo ${UNAME_MACHINE}-pc-sysv32
1064c06b6b69Smrg	fi
10659f4658d1Smrg	exit ;;
1066c06b6b69Smrg    pc:*:*:*)
1067c06b6b69Smrg	# Left here for compatibility:
1068a1d73b4bSmrg	# uname -m prints for DJGPP always 'pc', but it prints nothing about
1069a1d73b4bSmrg	# the processor, so we play safe by assuming i586.
10707d17d341Smrg	# Note: whatever this is, it MUST be the same as what config.sub
10717d17d341Smrg	# prints for the "djgpp" host, or else GDB configury will decide that
10727d17d341Smrg	# this is a cross-build.
10737d17d341Smrg	echo i586-pc-msdosdjgpp
1074a1d73b4bSmrg	exit ;;
1075c06b6b69Smrg    Intel:Mach:3*:*)
1076c06b6b69Smrg	echo i386-pc-mach3
10779f4658d1Smrg	exit ;;
1078c06b6b69Smrg    paragon:*:*:*)
1079c06b6b69Smrg	echo i860-intel-osf1
10809f4658d1Smrg	exit ;;
1081c06b6b69Smrg    i860:*:4.*:*) # i860-SVR4
1082c06b6b69Smrg	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1083c06b6b69Smrg	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
1084c06b6b69Smrg	else # Add other i860-SVR4 vendors below as they are discovered.
1085c06b6b69Smrg	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
1086c06b6b69Smrg	fi
10879f4658d1Smrg	exit ;;
1088c06b6b69Smrg    mini*:CTIX:SYS*5:*)
1089c06b6b69Smrg	# "miniframe"
1090c06b6b69Smrg	echo m68010-convergent-sysv
10919f4658d1Smrg	exit ;;
1092c06b6b69Smrg    mc68k:UNIX:SYSTEM5:3.51m)
1093c06b6b69Smrg	echo m68k-convergent-sysv
10949f4658d1Smrg	exit ;;
1095c06b6b69Smrg    M680?0:D-NIX:5.3:*)
1096c06b6b69Smrg	echo m68k-diab-dnix
10979f4658d1Smrg	exit ;;
10989f4658d1Smrg    M68*:*:R3V[5678]*:*)
10999f4658d1Smrg	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
11009f4658d1Smrg    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)
1101c06b6b69Smrg	OS_REL=''
1102c06b6b69Smrg	test -r /etc/.relid \
1103c06b6b69Smrg	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1104c06b6b69Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
11059f4658d1Smrg	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1106c06b6b69Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
11079f4658d1Smrg	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1108c06b6b69Smrg    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1109a1d73b4bSmrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1110a1d73b4bSmrg	  && { echo i486-ncr-sysv4; exit; } ;;
11117d17d341Smrg    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
11127d17d341Smrg	OS_REL='.3'
11137d17d341Smrg	test -r /etc/.relid \
11147d17d341Smrg	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
11157d17d341Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
11167d17d341Smrg	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
11177d17d341Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
11187d17d341Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
11197d17d341Smrg	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
11207d17d341Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1121c06b6b69Smrg    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1122c06b6b69Smrg	echo m68k-unknown-lynxos${UNAME_RELEASE}
11239f4658d1Smrg	exit ;;
1124c06b6b69Smrg    mc68030:UNIX_System_V:4.*:*)
1125c06b6b69Smrg	echo m68k-atari-sysv4
11269f4658d1Smrg	exit ;;
1127c06b6b69Smrg    TSUNAMI:LynxOS:2.*:*)
1128c06b6b69Smrg	echo sparc-unknown-lynxos${UNAME_RELEASE}
11299f4658d1Smrg	exit ;;
1130c06b6b69Smrg    rs6000:LynxOS:2.*:*)
1131c06b6b69Smrg	echo rs6000-unknown-lynxos${UNAME_RELEASE}
11329f4658d1Smrg	exit ;;
11337d17d341Smrg    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
1134c06b6b69Smrg	echo powerpc-unknown-lynxos${UNAME_RELEASE}
11359f4658d1Smrg	exit ;;
1136c06b6b69Smrg    SM[BE]S:UNIX_SV:*:*)
1137c06b6b69Smrg	echo mips-dde-sysv${UNAME_RELEASE}
11389f4658d1Smrg	exit ;;
1139c06b6b69Smrg    RM*:ReliantUNIX-*:*:*)
1140c06b6b69Smrg	echo mips-sni-sysv4
11419f4658d1Smrg	exit ;;
1142c06b6b69Smrg    RM*:SINIX-*:*:*)
1143c06b6b69Smrg	echo mips-sni-sysv4
11449f4658d1Smrg	exit ;;
1145c06b6b69Smrg    *:SINIX-*:*:*)
1146c06b6b69Smrg	if uname -p 2>/dev/null >/dev/null ; then
1147c06b6b69Smrg		UNAME_MACHINE=`(uname -p) 2>/dev/null`
1148c06b6b69Smrg		echo ${UNAME_MACHINE}-sni-sysv4
1149c06b6b69Smrg	else
1150c06b6b69Smrg		echo ns32k-sni-sysv
1151c06b6b69Smrg	fi
11529f4658d1Smrg	exit ;;
1153a1d73b4bSmrg    PENTIUM:*:4.0*:*)	# Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1154a1d73b4bSmrg			# says <Richard.M.Bartel@ccMail.Census.GOV>
1155a1d73b4bSmrg	echo i586-unisys-sysv4
1156a1d73b4bSmrg	exit ;;
1157c06b6b69Smrg    *:UNIX_System_V:4*:FTX*)
1158c06b6b69Smrg	# From Gerald Hewes <hewes@openmarket.com>.
1159c06b6b69Smrg	# How about differentiating between stratus architectures? -djm
1160c06b6b69Smrg	echo hppa1.1-stratus-sysv4
11619f4658d1Smrg	exit ;;
1162c06b6b69Smrg    *:*:*:FTX*)
1163c06b6b69Smrg	# From seanf@swdc.stratus.com.
1164c06b6b69Smrg	echo i860-stratus-sysv4
11659f4658d1Smrg	exit ;;
11669f4658d1Smrg    i*86:VOS:*:*)
11679f4658d1Smrg	# From Paul.Green@stratus.com.
11689f4658d1Smrg	echo ${UNAME_MACHINE}-stratus-vos
11699f4658d1Smrg	exit ;;
1170c06b6b69Smrg    *:VOS:*:*)
1171c06b6b69Smrg	# From Paul.Green@stratus.com.
1172c06b6b69Smrg	echo hppa1.1-stratus-vos
11739f4658d1Smrg	exit ;;
1174c06b6b69Smrg    mc68*:A/UX:*:*)
1175c06b6b69Smrg	echo m68k-apple-aux${UNAME_RELEASE}
11769f4658d1Smrg	exit ;;
1177c06b6b69Smrg    news*:NEWS-OS:6*:*)
1178c06b6b69Smrg	echo mips-sony-newsos6
11799f4658d1Smrg	exit ;;
1180c06b6b69Smrg    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1181c06b6b69Smrg	if [ -d /usr/nec ]; then
1182a1d73b4bSmrg		echo mips-nec-sysv${UNAME_RELEASE}
1183c06b6b69Smrg	else
1184a1d73b4bSmrg		echo mips-unknown-sysv${UNAME_RELEASE}
1185c06b6b69Smrg	fi
1186a1d73b4bSmrg	exit ;;
1187c06b6b69Smrg    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
1188c06b6b69Smrg	echo powerpc-be-beos
11899f4658d1Smrg	exit ;;
1190c06b6b69Smrg    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
1191c06b6b69Smrg	echo powerpc-apple-beos
11929f4658d1Smrg	exit ;;
1193c06b6b69Smrg    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
1194c06b6b69Smrg	echo i586-pc-beos
11959f4658d1Smrg	exit ;;
1196b20b881bSmrg    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
1197b20b881bSmrg	echo i586-pc-haiku
1198b20b881bSmrg	exit ;;
1199c06b6b69Smrg    SX-4:SUPER-UX:*:*)
1200c06b6b69Smrg	echo sx4-nec-superux${UNAME_RELEASE}
12019f4658d1Smrg	exit ;;
1202c06b6b69Smrg    SX-5:SUPER-UX:*:*)
1203c06b6b69Smrg	echo sx5-nec-superux${UNAME_RELEASE}
12049f4658d1Smrg	exit ;;
1205c06b6b69Smrg    SX-6:SUPER-UX:*:*)
1206c06b6b69Smrg	echo sx6-nec-superux${UNAME_RELEASE}
12079f4658d1Smrg	exit ;;
12089f4658d1Smrg    SX-7:SUPER-UX:*:*)
12099f4658d1Smrg	echo sx7-nec-superux${UNAME_RELEASE}
12109f4658d1Smrg	exit ;;
12119f4658d1Smrg    SX-8:SUPER-UX:*:*)
12129f4658d1Smrg	echo sx8-nec-superux${UNAME_RELEASE}
12139f4658d1Smrg	exit ;;
12149f4658d1Smrg    SX-8R:SUPER-UX:*:*)
12159f4658d1Smrg	echo sx8r-nec-superux${UNAME_RELEASE}
12169f4658d1Smrg	exit ;;
1217c06b6b69Smrg    Power*:Rhapsody:*:*)
1218c06b6b69Smrg	echo powerpc-apple-rhapsody${UNAME_RELEASE}
12199f4658d1Smrg	exit ;;
1220c06b6b69Smrg    *:Rhapsody:*:*)
1221c06b6b69Smrg	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
12229f4658d1Smrg	exit ;;
1223c06b6b69Smrg    *:Darwin:*:*)
12249f4658d1Smrg	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
12259f4658d1Smrg	case $UNAME_PROCESSOR in
12267d17d341Smrg	    i386)
12277d17d341Smrg		eval $set_cc_for_build
12287d17d341Smrg		if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
12297d17d341Smrg		  if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
12307d17d341Smrg		      (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
12317d17d341Smrg		      grep IS_64BIT_ARCH >/dev/null
12327d17d341Smrg		  then
12337d17d341Smrg		      UNAME_PROCESSOR="x86_64"
12347d17d341Smrg		  fi
12357d17d341Smrg		fi ;;
12369f4658d1Smrg	    unknown) UNAME_PROCESSOR=powerpc ;;
1237c06b6b69Smrg	esac
1238c06b6b69Smrg	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
12399f4658d1Smrg	exit ;;
1240c06b6b69Smrg    *:procnto*:*:* | *:QNX:[0123456789]*:*)
1241c06b6b69Smrg	UNAME_PROCESSOR=`uname -p`
1242c06b6b69Smrg	if test "$UNAME_PROCESSOR" = "x86"; then
1243c06b6b69Smrg		UNAME_PROCESSOR=i386
1244c06b6b69Smrg		UNAME_MACHINE=pc
1245c06b6b69Smrg	fi
1246c06b6b69Smrg	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
12479f4658d1Smrg	exit ;;
1248c06b6b69Smrg    *:QNX:*:4*)
1249c06b6b69Smrg	echo i386-pc-qnx
12509f4658d1Smrg	exit ;;
1251a1d73b4bSmrg    NEO-?:NONSTOP_KERNEL:*:*)
1252a1d73b4bSmrg	echo neo-tandem-nsk${UNAME_RELEASE}
1253a1d73b4bSmrg	exit ;;
12549f4658d1Smrg    NSE-?:NONSTOP_KERNEL:*:*)
12559f4658d1Smrg	echo nse-tandem-nsk${UNAME_RELEASE}
12569f4658d1Smrg	exit ;;
12579f4658d1Smrg    NSR-?:NONSTOP_KERNEL:*:*)
1258c06b6b69Smrg	echo nsr-tandem-nsk${UNAME_RELEASE}
12599f4658d1Smrg	exit ;;
1260c06b6b69Smrg    *:NonStop-UX:*:*)
1261c06b6b69Smrg	echo mips-compaq-nonstopux
12629f4658d1Smrg	exit ;;
1263c06b6b69Smrg    BS2000:POSIX*:*:*)
1264c06b6b69Smrg	echo bs2000-siemens-sysv
12659f4658d1Smrg	exit ;;
1266c06b6b69Smrg    DS/*:UNIX_System_V:*:*)
1267c06b6b69Smrg	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
12689f4658d1Smrg	exit ;;
1269c06b6b69Smrg    *:Plan9:*:*)
1270c06b6b69Smrg	# "uname -m" is not consistent, so use $cputype instead. 386
1271c06b6b69Smrg	# is converted to i386 for consistency with other x86
1272c06b6b69Smrg	# operating systems.
1273c06b6b69Smrg	if test "$cputype" = "386"; then
1274c06b6b69Smrg	    UNAME_MACHINE=i386
1275c06b6b69Smrg	else
1276c06b6b69Smrg	    UNAME_MACHINE="$cputype"
1277c06b6b69Smrg	fi
1278c06b6b69Smrg	echo ${UNAME_MACHINE}-unknown-plan9
12799f4658d1Smrg	exit ;;
1280c06b6b69Smrg    *:TOPS-10:*:*)
1281c06b6b69Smrg	echo pdp10-unknown-tops10
12829f4658d1Smrg	exit ;;
1283c06b6b69Smrg    *:TENEX:*:*)
1284c06b6b69Smrg	echo pdp10-unknown-tenex
12859f4658d1Smrg	exit ;;
1286c06b6b69Smrg    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1287c06b6b69Smrg	echo pdp10-dec-tops20
12889f4658d1Smrg	exit ;;
1289c06b6b69Smrg    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1290c06b6b69Smrg	echo pdp10-xkl-tops20
12919f4658d1Smrg	exit ;;
1292c06b6b69Smrg    *:TOPS-20:*:*)
1293c06b6b69Smrg	echo pdp10-unknown-tops20
12949f4658d1Smrg	exit ;;
1295c06b6b69Smrg    *:ITS:*:*)
1296c06b6b69Smrg	echo pdp10-unknown-its
12979f4658d1Smrg	exit ;;
1298c06b6b69Smrg    SEI:*:*:SEIUX)
1299a1d73b4bSmrg	echo mips-sei-seiux${UNAME_RELEASE}
13009f4658d1Smrg	exit ;;
13019f4658d1Smrg    *:DragonFly:*:*)
13029f4658d1Smrg	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
13039f4658d1Smrg	exit ;;
13049f4658d1Smrg    *:*VMS:*:*)
1305a1d73b4bSmrg	UNAME_MACHINE=`(uname -p) 2>/dev/null`
13069f4658d1Smrg	case "${UNAME_MACHINE}" in
13079f4658d1Smrg	    A*) echo alpha-dec-vms ; exit ;;
13089f4658d1Smrg	    I*) echo ia64-dec-vms ; exit ;;
13099f4658d1Smrg	    V*) echo vax-dec-vms ; exit ;;
13109f4658d1Smrg	esac ;;
13119f4658d1Smrg    *:XENIX:*:SysV)
13129f4658d1Smrg	echo i386-pc-xenix
13139f4658d1Smrg	exit ;;
13149f4658d1Smrg    i*86:skyos:*:*)
13159f4658d1Smrg	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
13169f4658d1Smrg	exit ;;
13179f4658d1Smrg    i*86:rdos:*:*)
13189f4658d1Smrg	echo ${UNAME_MACHINE}-pc-rdos
13199f4658d1Smrg	exit ;;
13207d17d341Smrg    i*86:AROS:*:*)
13217d17d341Smrg	echo ${UNAME_MACHINE}-pc-aros
13227d17d341Smrg	exit ;;
1323c06b6b69Smrgesac
1324c06b6b69Smrg
1325c06b6b69Smrg#echo '(No uname command or uname output not recognized.)' 1>&2
1326c06b6b69Smrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
1327c06b6b69Smrg
1328c06b6b69Smrgeval $set_cc_for_build
1329c06b6b69Smrgcat >$dummy.c <<EOF
1330c06b6b69Smrg#ifdef _SEQUENT_
1331c06b6b69Smrg# include <sys/types.h>
1332c06b6b69Smrg# include <sys/utsname.h>
1333c06b6b69Smrg#endif
1334c06b6b69Smrgmain ()
1335c06b6b69Smrg{
1336c06b6b69Smrg#if defined (sony)
1337c06b6b69Smrg#if defined (MIPSEB)
1338c06b6b69Smrg  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
1339c06b6b69Smrg     I don't know....  */
1340c06b6b69Smrg  printf ("mips-sony-bsd\n"); exit (0);
1341c06b6b69Smrg#else
1342c06b6b69Smrg#include <sys/param.h>
1343c06b6b69Smrg  printf ("m68k-sony-newsos%s\n",
1344c06b6b69Smrg#ifdef NEWSOS4
1345a1d73b4bSmrg	"4"
1346c06b6b69Smrg#else
1347a1d73b4bSmrg	""
1348c06b6b69Smrg#endif
1349a1d73b4bSmrg	); exit (0);
1350c06b6b69Smrg#endif
1351c06b6b69Smrg#endif
1352c06b6b69Smrg
1353c06b6b69Smrg#if defined (__arm) && defined (__acorn) && defined (__unix)
13549f4658d1Smrg  printf ("arm-acorn-riscix\n"); exit (0);
1355c06b6b69Smrg#endif
1356c06b6b69Smrg
1357c06b6b69Smrg#if defined (hp300) && !defined (hpux)
1358c06b6b69Smrg  printf ("m68k-hp-bsd\n"); exit (0);
1359c06b6b69Smrg#endif
1360c06b6b69Smrg
1361c06b6b69Smrg#if defined (NeXT)
1362c06b6b69Smrg#if !defined (__ARCHITECTURE__)
1363c06b6b69Smrg#define __ARCHITECTURE__ "m68k"
1364c06b6b69Smrg#endif
1365c06b6b69Smrg  int version;
1366c06b6b69Smrg  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
1367c06b6b69Smrg  if (version < 4)
1368c06b6b69Smrg    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
1369c06b6b69Smrg  else
1370c06b6b69Smrg    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
1371c06b6b69Smrg  exit (0);
1372c06b6b69Smrg#endif
1373c06b6b69Smrg
1374c06b6b69Smrg#if defined (MULTIMAX) || defined (n16)
1375c06b6b69Smrg#if defined (UMAXV)
1376c06b6b69Smrg  printf ("ns32k-encore-sysv\n"); exit (0);
1377c06b6b69Smrg#else
1378c06b6b69Smrg#if defined (CMU)
1379c06b6b69Smrg  printf ("ns32k-encore-mach\n"); exit (0);
1380c06b6b69Smrg#else
1381c06b6b69Smrg  printf ("ns32k-encore-bsd\n"); exit (0);
1382c06b6b69Smrg#endif
1383c06b6b69Smrg#endif
1384c06b6b69Smrg#endif
1385c06b6b69Smrg
1386c06b6b69Smrg#if defined (__386BSD__)
1387c06b6b69Smrg  printf ("i386-pc-bsd\n"); exit (0);
1388c06b6b69Smrg#endif
1389c06b6b69Smrg
1390c06b6b69Smrg#if defined (sequent)
1391c06b6b69Smrg#if defined (i386)
1392c06b6b69Smrg  printf ("i386-sequent-dynix\n"); exit (0);
1393c06b6b69Smrg#endif
1394c06b6b69Smrg#if defined (ns32000)
1395c06b6b69Smrg  printf ("ns32k-sequent-dynix\n"); exit (0);
1396c06b6b69Smrg#endif
1397c06b6b69Smrg#endif
1398c06b6b69Smrg
1399c06b6b69Smrg#if defined (_SEQUENT_)
1400c06b6b69Smrg    struct utsname un;
1401c06b6b69Smrg
1402c06b6b69Smrg    uname(&un);
1403c06b6b69Smrg
1404c06b6b69Smrg    if (strncmp(un.version, "V2", 2) == 0) {
1405c06b6b69Smrg	printf ("i386-sequent-ptx2\n"); exit (0);
1406c06b6b69Smrg    }
1407c06b6b69Smrg    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
1408c06b6b69Smrg	printf ("i386-sequent-ptx1\n"); exit (0);
1409c06b6b69Smrg    }
1410c06b6b69Smrg    printf ("i386-sequent-ptx\n"); exit (0);
1411c06b6b69Smrg
1412c06b6b69Smrg#endif
1413c06b6b69Smrg
1414c06b6b69Smrg#if defined (vax)
1415c06b6b69Smrg# if !defined (ultrix)
1416c06b6b69Smrg#  include <sys/param.h>
1417c06b6b69Smrg#  if defined (BSD)
1418c06b6b69Smrg#   if BSD == 43
1419c06b6b69Smrg      printf ("vax-dec-bsd4.3\n"); exit (0);
1420c06b6b69Smrg#   else
1421c06b6b69Smrg#    if BSD == 199006
1422c06b6b69Smrg      printf ("vax-dec-bsd4.3reno\n"); exit (0);
1423c06b6b69Smrg#    else
1424c06b6b69Smrg      printf ("vax-dec-bsd\n"); exit (0);
1425c06b6b69Smrg#    endif
1426c06b6b69Smrg#   endif
1427c06b6b69Smrg#  else
1428c06b6b69Smrg    printf ("vax-dec-bsd\n"); exit (0);
1429c06b6b69Smrg#  endif
1430c06b6b69Smrg# else
1431c06b6b69Smrg    printf ("vax-dec-ultrix\n"); exit (0);
1432c06b6b69Smrg# endif
1433c06b6b69Smrg#endif
1434c06b6b69Smrg
1435c06b6b69Smrg#if defined (alliant) && defined (i860)
1436c06b6b69Smrg  printf ("i860-alliant-bsd\n"); exit (0);
1437c06b6b69Smrg#endif
1438c06b6b69Smrg
1439c06b6b69Smrg  exit (1);
1440c06b6b69Smrg}
1441c06b6b69SmrgEOF
1442c06b6b69Smrg
14439f4658d1Smrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
14449f4658d1Smrg	{ echo "$SYSTEM_NAME"; exit; }
1445c06b6b69Smrg
1446c06b6b69Smrg# Apollos put the system type in the environment.
1447c06b6b69Smrg
14489f4658d1Smrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
1449c06b6b69Smrg
1450c06b6b69Smrg# Convex versions that predate uname can use getsysinfo(1)
1451c06b6b69Smrg
1452c06b6b69Smrgif [ -x /usr/convex/getsysinfo ]
1453c06b6b69Smrgthen
1454c06b6b69Smrg    case `getsysinfo -f cpu_type` in
1455c06b6b69Smrg    c1*)
1456c06b6b69Smrg	echo c1-convex-bsd
14579f4658d1Smrg	exit ;;
1458c06b6b69Smrg    c2*)
1459c06b6b69Smrg	if getsysinfo -f scalar_acc
1460c06b6b69Smrg	then echo c32-convex-bsd
1461c06b6b69Smrg	else echo c2-convex-bsd
1462c06b6b69Smrg	fi
14639f4658d1Smrg	exit ;;
1464c06b6b69Smrg    c34*)
1465c06b6b69Smrg	echo c34-convex-bsd
14669f4658d1Smrg	exit ;;
1467c06b6b69Smrg    c38*)
1468c06b6b69Smrg	echo c38-convex-bsd
14699f4658d1Smrg	exit ;;
1470c06b6b69Smrg    c4*)
1471c06b6b69Smrg	echo c4-convex-bsd
14729f4658d1Smrg	exit ;;
1473c06b6b69Smrg    esac
1474c06b6b69Smrgfi
1475c06b6b69Smrg
1476c06b6b69Smrgcat >&2 <<EOF
1477c06b6b69Smrg$0: unable to guess system type
1478c06b6b69Smrg
1479c06b6b69SmrgThis script, last modified $timestamp, has failed to recognize
1480c06b6b69Smrgthe operating system you are using. It is advised that you
1481c06b6b69Smrgdownload the most up to date version of the config scripts from
1482c06b6b69Smrg
14839f4658d1Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
14849f4658d1Smrgand
14859f4658d1Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
1486c06b6b69Smrg
1487c06b6b69SmrgIf the version you run ($0) is already up to date, please
1488c06b6b69Smrgsend the following data and any information you think might be
1489c06b6b69Smrgpertinent to <config-patches@gnu.org> in order to provide the needed
1490c06b6b69Smrginformation to handle your system.
1491c06b6b69Smrg
1492c06b6b69Smrgconfig.guess timestamp = $timestamp
1493c06b6b69Smrg
1494c06b6b69Smrguname -m = `(uname -m) 2>/dev/null || echo unknown`
1495c06b6b69Smrguname -r = `(uname -r) 2>/dev/null || echo unknown`
1496c06b6b69Smrguname -s = `(uname -s) 2>/dev/null || echo unknown`
1497c06b6b69Smrguname -v = `(uname -v) 2>/dev/null || echo unknown`
1498c06b6b69Smrg
1499c06b6b69Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1500c06b6b69Smrg/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
1501c06b6b69Smrg
1502c06b6b69Smrghostinfo               = `(hostinfo) 2>/dev/null`
1503c06b6b69Smrg/bin/universe          = `(/bin/universe) 2>/dev/null`
1504c06b6b69Smrg/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
1505c06b6b69Smrg/bin/arch              = `(/bin/arch) 2>/dev/null`
1506c06b6b69Smrg/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
1507c06b6b69Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1508c06b6b69Smrg
1509c06b6b69SmrgUNAME_MACHINE = ${UNAME_MACHINE}
1510c06b6b69SmrgUNAME_RELEASE = ${UNAME_RELEASE}
1511c06b6b69SmrgUNAME_SYSTEM  = ${UNAME_SYSTEM}
1512c06b6b69SmrgUNAME_VERSION = ${UNAME_VERSION}
1513c06b6b69SmrgEOF
1514c06b6b69Smrg
1515c06b6b69Smrgexit 1
1516c06b6b69Smrg
1517c06b6b69Smrg# Local variables:
1518c06b6b69Smrg# eval: (add-hook 'write-file-hooks 'time-stamp)
1519c06b6b69Smrg# time-stamp-start: "timestamp='"
1520c06b6b69Smrg# time-stamp-format: "%:y-%02m-%02d"
1521c06b6b69Smrg# time-stamp-end: "'"
1522c06b6b69Smrg# End:
1523