config.guess revision 1b1389ee
1bccedf53Smrg#! /bin/sh
2bccedf53Smrg# Attempt to guess a canonical system name.
3bccedf53Smrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
41b1389eeSmrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
51b1389eeSmrg#   2011 Free Software Foundation, Inc.
6bccedf53Smrg
71b1389eeSmrgtimestamp='2011-11-11'
8bccedf53Smrg
9bccedf53Smrg# This file is free software; you can redistribute it and/or modify it
10bccedf53Smrg# under the terms of the GNU General Public License as published by
11bccedf53Smrg# the Free Software Foundation; either version 2 of the License, or
12bccedf53Smrg# (at your option) any later version.
13bccedf53Smrg#
14bccedf53Smrg# This program is distributed in the hope that it will be useful, but
15bccedf53Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of
16bccedf53Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17bccedf53Smrg# General Public License for more details.
18bccedf53Smrg#
19bccedf53Smrg# You should have received a copy of the GNU General Public License
20bccedf53Smrg# along with this program; if not, write to the Free Software
217c5f6000Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
227c5f6000Smrg# 02110-1301, USA.
23bccedf53Smrg#
24bccedf53Smrg# As a special exception to the GNU General Public License, if you
25bccedf53Smrg# distribute this file as part of a program that contains a
26bccedf53Smrg# configuration script generated by Autoconf, you may include it under
27bccedf53Smrg# the same distribution terms that you use for the rest of that program.
28bccedf53Smrg
297c5f6000Smrg
30f7ada8ddSmrg# Originally written by Per Bothner.  Please send patches (context
31f7ada8ddSmrg# diff format) to <config-patches@gnu.org> and include a ChangeLog
32f7ada8ddSmrg# entry.
33bccedf53Smrg#
34bccedf53Smrg# This script attempts to guess a canonical system name similar to
35bccedf53Smrg# config.sub.  If it succeeds, it prints the system name on stdout, and
36bccedf53Smrg# exits with 0.  Otherwise, it exits with 1.
37bccedf53Smrg#
38f7ada8ddSmrg# You can get the latest version of this script from:
39f7ada8ddSmrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
40bccedf53Smrg
41bccedf53Smrgme=`echo "$0" | sed -e 's,.*/,,'`
42bccedf53Smrg
43bccedf53Smrgusage="\
44bccedf53SmrgUsage: $0 [OPTION]
45bccedf53Smrg
46bccedf53SmrgOutput the configuration name of the system \`$me' is run on.
47bccedf53Smrg
48bccedf53SmrgOperation modes:
49bccedf53Smrg  -h, --help         print this help, then exit
50bccedf53Smrg  -t, --time-stamp   print date of last modification, then exit
51bccedf53Smrg  -v, --version      print version number, then exit
52bccedf53Smrg
53bccedf53SmrgReport bugs and patches to <config-patches@gnu.org>."
54bccedf53Smrg
55bccedf53Smrgversion="\
56bccedf53SmrgGNU config.guess ($timestamp)
57bccedf53Smrg
58bccedf53SmrgOriginally written by Per Bothner.
59f7ada8ddSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
601b1389eeSmrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free
61f7ada8ddSmrgSoftware Foundation, Inc.
62bccedf53Smrg
63bccedf53SmrgThis is free software; see the source for copying conditions.  There is NO
64bccedf53Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
65bccedf53Smrg
66bccedf53Smrghelp="
67bccedf53SmrgTry \`$me --help' for more information."
68bccedf53Smrg
69bccedf53Smrg# Parse command line
70bccedf53Smrgwhile test $# -gt 0 ; do
71bccedf53Smrg  case $1 in
72bccedf53Smrg    --time-stamp | --time* | -t )
737c5f6000Smrg       echo "$timestamp" ; exit ;;
74bccedf53Smrg    --version | -v )
757c5f6000Smrg       echo "$version" ; exit ;;
76bccedf53Smrg    --help | --h* | -h )
777c5f6000Smrg       echo "$usage"; exit ;;
78bccedf53Smrg    -- )     # Stop option processing
79bccedf53Smrg       shift; break ;;
80bccedf53Smrg    - )	# Use stdin as input.
81bccedf53Smrg       break ;;
82bccedf53Smrg    -* )
83bccedf53Smrg       echo "$me: invalid option $1$help" >&2
84bccedf53Smrg       exit 1 ;;
85bccedf53Smrg    * )
86bccedf53Smrg       break ;;
87bccedf53Smrg  esac
88bccedf53Smrgdone
89bccedf53Smrg
90bccedf53Smrgif test $# != 0; then
91bccedf53Smrg  echo "$me: too many arguments$help" >&2
92bccedf53Smrg  exit 1
93bccedf53Smrgfi
94bccedf53Smrg
951b1389eeSmrgtrap 'exit 1' 1 2 15
96bccedf53Smrg
97bccedf53Smrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
98bccedf53Smrg# compiler to aid in system detection is discouraged as it requires
99bccedf53Smrg# temporary files to be created and, as you can see below, it is a
100bccedf53Smrg# headache to deal with in a portable fashion.
101bccedf53Smrg
102bccedf53Smrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
103bccedf53Smrg# use `HOST_CC' if defined, but it is deprecated.
104bccedf53Smrg
105bccedf53Smrg# Portable tmp directory creation inspired by the Autoconf team.
106bccedf53Smrg
107bccedf53Smrgset_cc_for_build='
108bccedf53Smrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
1091b1389eeSmrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
110bccedf53Smrg: ${TMPDIR=/tmp} ;
1117c5f6000Smrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
112bccedf53Smrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
113bccedf53Smrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
114bccedf53Smrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
115bccedf53Smrgdummy=$tmp/dummy ;
116bccedf53Smrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
117bccedf53Smrgcase $CC_FOR_BUILD,$HOST_CC,$CC in
118bccedf53Smrg ,,)    echo "int x;" > $dummy.c ;
119bccedf53Smrg	for c in cc gcc c89 c99 ; do
120bccedf53Smrg	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
121bccedf53Smrg	     CC_FOR_BUILD="$c"; break ;
122bccedf53Smrg	  fi ;
123bccedf53Smrg	done ;
124bccedf53Smrg	if test x"$CC_FOR_BUILD" = x ; then
125bccedf53Smrg	  CC_FOR_BUILD=no_compiler_found ;
126bccedf53Smrg	fi
127bccedf53Smrg	;;
128bccedf53Smrg ,,*)   CC_FOR_BUILD=$CC ;;
129bccedf53Smrg ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
1307c5f6000Smrgesac ; set_cc_for_build= ;'
131bccedf53Smrg
132bccedf53Smrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
133bccedf53Smrg# (ghazi@noc.rutgers.edu 1994-08-24)
134bccedf53Smrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then
135bccedf53Smrg	PATH=$PATH:/.attbin ; export PATH
136bccedf53Smrgfi
137bccedf53Smrg
138bccedf53SmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
139bccedf53SmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
140bccedf53SmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
141bccedf53SmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
142bccedf53Smrg
143bccedf53Smrg# Note: order is significant - the case branches are not exclusive.
144bccedf53Smrg
145bccedf53Smrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
146bccedf53Smrg    *:NetBSD:*:*)
147bccedf53Smrg	# NetBSD (nbsd) targets should (where applicable) match one or
148bccedf53Smrg	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
149bccedf53Smrg	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
150bccedf53Smrg	# switched to ELF, *-*-netbsd* would select the old
151bccedf53Smrg	# object file format.  This provides both forward
152bccedf53Smrg	# compatibility and a consistent mechanism for selecting the
153bccedf53Smrg	# object file format.
154bccedf53Smrg	#
155bccedf53Smrg	# Note: NetBSD doesn't particularly care about the vendor
156bccedf53Smrg	# portion of the name.  We always set it to "unknown".
157bccedf53Smrg	sysctl="sysctl -n hw.machine_arch"
158bccedf53Smrg	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
159bccedf53Smrg	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
160bccedf53Smrg	case "${UNAME_MACHINE_ARCH}" in
161bccedf53Smrg	    armeb) machine=armeb-unknown ;;
162bccedf53Smrg	    arm*) machine=arm-unknown ;;
163bccedf53Smrg	    sh3el) machine=shl-unknown ;;
164bccedf53Smrg	    sh3eb) machine=sh-unknown ;;
1657c5f6000Smrg	    sh5el) machine=sh5le-unknown ;;
166bccedf53Smrg	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
167bccedf53Smrg	esac
168bccedf53Smrg	# The Operating System including object format, if it has switched
169bccedf53Smrg	# to ELF recently, or will in the future.
170bccedf53Smrg	case "${UNAME_MACHINE_ARCH}" in
171bccedf53Smrg	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
172bccedf53Smrg		eval $set_cc_for_build
173bccedf53Smrg		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
174f7ada8ddSmrg			| grep -q __ELF__
175bccedf53Smrg		then
176bccedf53Smrg		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
177bccedf53Smrg		    # Return netbsd for either.  FIX?
178bccedf53Smrg		    os=netbsd
179bccedf53Smrg		else
180bccedf53Smrg		    os=netbsdelf
181bccedf53Smrg		fi
182bccedf53Smrg		;;
183bccedf53Smrg	    *)
1841b1389eeSmrg		os=netbsd
185bccedf53Smrg		;;
186bccedf53Smrg	esac
187bccedf53Smrg	# The OS release
188bccedf53Smrg	# Debian GNU/NetBSD machines have a different userland, and
189bccedf53Smrg	# thus, need a distinct triplet. However, they do not need
190bccedf53Smrg	# kernel version information, so it can be replaced with a
191bccedf53Smrg	# suitable tag, in the style of linux-gnu.
192bccedf53Smrg	case "${UNAME_VERSION}" in
193bccedf53Smrg	    Debian*)
194bccedf53Smrg		release='-gnu'
195bccedf53Smrg		;;
196bccedf53Smrg	    *)
197bccedf53Smrg		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
198bccedf53Smrg		;;
199bccedf53Smrg	esac
200bccedf53Smrg	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
201bccedf53Smrg	# contains redundant information, the shorter form:
202bccedf53Smrg	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
203bccedf53Smrg	echo "${machine}-${os}${release}"
2047c5f6000Smrg	exit ;;
205bccedf53Smrg    *:OpenBSD:*:*)
2067c5f6000Smrg	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
2077c5f6000Smrg	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
2087c5f6000Smrg	exit ;;
2097c5f6000Smrg    *:ekkoBSD:*:*)
2107c5f6000Smrg	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
2117c5f6000Smrg	exit ;;
2127c5f6000Smrg    *:SolidBSD:*:*)
2137c5f6000Smrg	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
2147c5f6000Smrg	exit ;;
2157c5f6000Smrg    macppc:MirBSD:*:*)
2167c5f6000Smrg	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
2177c5f6000Smrg	exit ;;
2187c5f6000Smrg    *:MirBSD:*:*)
2197c5f6000Smrg	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
2207c5f6000Smrg	exit ;;
221bccedf53Smrg    alpha:OSF1:*:*)
2227c5f6000Smrg	case $UNAME_RELEASE in
2237c5f6000Smrg	*4.0)
224bccedf53Smrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
2257c5f6000Smrg		;;
2267c5f6000Smrg	*5.*)
2271b1389eeSmrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
2287c5f6000Smrg		;;
2297c5f6000Smrg	esac
230bccedf53Smrg	# According to Compaq, /usr/sbin/psrinfo has been available on
231bccedf53Smrg	# OSF/1 and Tru64 systems produced since 1995.  I hope that
232bccedf53Smrg	# covers most systems running today.  This code pipes the CPU
233bccedf53Smrg	# types through head -n 1, so we only detect the type of CPU 0.
234bccedf53Smrg	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
235bccedf53Smrg	case "$ALPHA_CPU_TYPE" in
236bccedf53Smrg	    "EV4 (21064)")
237bccedf53Smrg		UNAME_MACHINE="alpha" ;;
238bccedf53Smrg	    "EV4.5 (21064)")
239bccedf53Smrg		UNAME_MACHINE="alpha" ;;
240bccedf53Smrg	    "LCA4 (21066/21068)")
241bccedf53Smrg		UNAME_MACHINE="alpha" ;;
242bccedf53Smrg	    "EV5 (21164)")
243bccedf53Smrg		UNAME_MACHINE="alphaev5" ;;
244bccedf53Smrg	    "EV5.6 (21164A)")
245bccedf53Smrg		UNAME_MACHINE="alphaev56" ;;
246bccedf53Smrg	    "EV5.6 (21164PC)")
247bccedf53Smrg		UNAME_MACHINE="alphapca56" ;;
248bccedf53Smrg	    "EV5.7 (21164PC)")
249bccedf53Smrg		UNAME_MACHINE="alphapca57" ;;
250bccedf53Smrg	    "EV6 (21264)")
251bccedf53Smrg		UNAME_MACHINE="alphaev6" ;;
252bccedf53Smrg	    "EV6.7 (21264A)")
253bccedf53Smrg		UNAME_MACHINE="alphaev67" ;;
254bccedf53Smrg	    "EV6.8CB (21264C)")
255bccedf53Smrg		UNAME_MACHINE="alphaev68" ;;
256bccedf53Smrg	    "EV6.8AL (21264B)")
257bccedf53Smrg		UNAME_MACHINE="alphaev68" ;;
258bccedf53Smrg	    "EV6.8CX (21264D)")
259bccedf53Smrg		UNAME_MACHINE="alphaev68" ;;
260bccedf53Smrg	    "EV6.9A (21264/EV69A)")
261bccedf53Smrg		UNAME_MACHINE="alphaev69" ;;
262bccedf53Smrg	    "EV7 (21364)")
263bccedf53Smrg		UNAME_MACHINE="alphaev7" ;;
264bccedf53Smrg	    "EV7.9 (21364A)")
265bccedf53Smrg		UNAME_MACHINE="alphaev79" ;;
266bccedf53Smrg	esac
2677c5f6000Smrg	# A Pn.n version is a patched version.
268bccedf53Smrg	# A Vn.n version is a released version.
269bccedf53Smrg	# A Tn.n version is a released field test version.
270bccedf53Smrg	# A Xn.n version is an unreleased experimental baselevel.
271bccedf53Smrg	# 1.2 uses "1.2" for uname -r.
2727c5f6000Smrg	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
2731b1389eeSmrg	# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
2741b1389eeSmrg	exitcode=$?
2751b1389eeSmrg	trap '' 0
2761b1389eeSmrg	exit $exitcode ;;
277bccedf53Smrg    Alpha\ *:Windows_NT*:*)
278bccedf53Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
279bccedf53Smrg	# Should we change UNAME_MACHINE based on the output of uname instead
280bccedf53Smrg	# of the specific Alpha model?
281bccedf53Smrg	echo alpha-pc-interix
2827c5f6000Smrg	exit ;;
283bccedf53Smrg    21064:Windows_NT:50:3)
284bccedf53Smrg	echo alpha-dec-winnt3.5
2857c5f6000Smrg	exit ;;
286bccedf53Smrg    Amiga*:UNIX_System_V:4.0:*)
287bccedf53Smrg	echo m68k-unknown-sysv4
2887c5f6000Smrg	exit ;;
289bccedf53Smrg    *:[Aa]miga[Oo][Ss]:*:*)
290bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-amigaos
2917c5f6000Smrg	exit ;;
292bccedf53Smrg    *:[Mm]orph[Oo][Ss]:*:*)
293bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-morphos
2947c5f6000Smrg	exit ;;
295bccedf53Smrg    *:OS/390:*:*)
296bccedf53Smrg	echo i370-ibm-openedition
2977c5f6000Smrg	exit ;;
2987c5f6000Smrg    *:z/VM:*:*)
2997c5f6000Smrg	echo s390-ibm-zvmoe
3007c5f6000Smrg	exit ;;
3017c5f6000Smrg    *:OS400:*:*)
3021b1389eeSmrg	echo powerpc-ibm-os400
3037c5f6000Smrg	exit ;;
304bccedf53Smrg    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
305bccedf53Smrg	echo arm-acorn-riscix${UNAME_RELEASE}
3067c5f6000Smrg	exit ;;
3077c5f6000Smrg    arm:riscos:*:*|arm:RISCOS:*:*)
3087c5f6000Smrg	echo arm-unknown-riscos
3097c5f6000Smrg	exit ;;
310bccedf53Smrg    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
311bccedf53Smrg	echo hppa1.1-hitachi-hiuxmpp
3127c5f6000Smrg	exit ;;
313bccedf53Smrg    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
314bccedf53Smrg	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
315bccedf53Smrg	if test "`(/bin/universe) 2>/dev/null`" = att ; then
316bccedf53Smrg		echo pyramid-pyramid-sysv3
317bccedf53Smrg	else
318bccedf53Smrg		echo pyramid-pyramid-bsd
319bccedf53Smrg	fi
3207c5f6000Smrg	exit ;;
321bccedf53Smrg    NILE*:*:*:dcosx)
322bccedf53Smrg	echo pyramid-pyramid-svr4
3237c5f6000Smrg	exit ;;
324bccedf53Smrg    DRS?6000:unix:4.0:6*)
325bccedf53Smrg	echo sparc-icl-nx6
3267c5f6000Smrg	exit ;;
3277c5f6000Smrg    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
328bccedf53Smrg	case `/usr/bin/uname -p` in
3297c5f6000Smrg	    sparc) echo sparc-icl-nx7; exit ;;
330bccedf53Smrg	esac ;;
3317c5f6000Smrg    s390x:SunOS:*:*)
3327c5f6000Smrg	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3337c5f6000Smrg	exit ;;
334bccedf53Smrg    sun4H:SunOS:5.*:*)
335bccedf53Smrg	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3367c5f6000Smrg	exit ;;
337bccedf53Smrg    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
338bccedf53Smrg	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3397c5f6000Smrg	exit ;;
340f7ada8ddSmrg    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
341f7ada8ddSmrg	echo i386-pc-auroraux${UNAME_RELEASE}
342f7ada8ddSmrg	exit ;;
3437c5f6000Smrg    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
3447c5f6000Smrg	eval $set_cc_for_build
3457c5f6000Smrg	SUN_ARCH="i386"
3467c5f6000Smrg	# If there is a compiler, see if it is configured for 64-bit objects.
3477c5f6000Smrg	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
3487c5f6000Smrg	# This test works for both compilers.
3497c5f6000Smrg	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
3507c5f6000Smrg	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
3517c5f6000Smrg		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
3527c5f6000Smrg		grep IS_64BIT_ARCH >/dev/null
3537c5f6000Smrg	    then
3547c5f6000Smrg		SUN_ARCH="x86_64"
3557c5f6000Smrg	    fi
3567c5f6000Smrg	fi
3577c5f6000Smrg	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3587c5f6000Smrg	exit ;;
359bccedf53Smrg    sun4*:SunOS:6*:*)
360bccedf53Smrg	# According to config.sub, this is the proper way to canonicalize
361bccedf53Smrg	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
362bccedf53Smrg	# it's likely to be more like Solaris than SunOS4.
363bccedf53Smrg	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3647c5f6000Smrg	exit ;;
365bccedf53Smrg    sun4*:SunOS:*:*)
366bccedf53Smrg	case "`/usr/bin/arch -k`" in
367bccedf53Smrg	    Series*|S4*)
368bccedf53Smrg		UNAME_RELEASE=`uname -v`
369bccedf53Smrg		;;
370bccedf53Smrg	esac
371bccedf53Smrg	# Japanese Language versions have a version number like `4.1.3-JL'.
372bccedf53Smrg	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
3737c5f6000Smrg	exit ;;
374bccedf53Smrg    sun3*:SunOS:*:*)
375bccedf53Smrg	echo m68k-sun-sunos${UNAME_RELEASE}
3767c5f6000Smrg	exit ;;
377bccedf53Smrg    sun*:*:4.2BSD:*)
378bccedf53Smrg	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
379bccedf53Smrg	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
380bccedf53Smrg	case "`/bin/arch`" in
381bccedf53Smrg	    sun3)
382bccedf53Smrg		echo m68k-sun-sunos${UNAME_RELEASE}
383bccedf53Smrg		;;
384bccedf53Smrg	    sun4)
385bccedf53Smrg		echo sparc-sun-sunos${UNAME_RELEASE}
386bccedf53Smrg		;;
387bccedf53Smrg	esac
3887c5f6000Smrg	exit ;;
389bccedf53Smrg    aushp:SunOS:*:*)
390bccedf53Smrg	echo sparc-auspex-sunos${UNAME_RELEASE}
3917c5f6000Smrg	exit ;;
392bccedf53Smrg    # The situation for MiNT is a little confusing.  The machine name
393bccedf53Smrg    # can be virtually everything (everything which is not
394bccedf53Smrg    # "atarist" or "atariste" at least should have a processor
395bccedf53Smrg    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
396bccedf53Smrg    # to the lowercase version "mint" (or "freemint").  Finally
397bccedf53Smrg    # the system name "TOS" denotes a system which is actually not
398bccedf53Smrg    # MiNT.  But MiNT is downward compatible to TOS, so this should
399bccedf53Smrg    # be no problem.
400bccedf53Smrg    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
4011b1389eeSmrg	echo m68k-atari-mint${UNAME_RELEASE}
4027c5f6000Smrg	exit ;;
403bccedf53Smrg    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
404bccedf53Smrg	echo m68k-atari-mint${UNAME_RELEASE}
4051b1389eeSmrg	exit ;;
406bccedf53Smrg    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
4071b1389eeSmrg	echo m68k-atari-mint${UNAME_RELEASE}
4087c5f6000Smrg	exit ;;
409bccedf53Smrg    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
4101b1389eeSmrg	echo m68k-milan-mint${UNAME_RELEASE}
4111b1389eeSmrg	exit ;;
412bccedf53Smrg    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
4131b1389eeSmrg	echo m68k-hades-mint${UNAME_RELEASE}
4141b1389eeSmrg	exit ;;
415bccedf53Smrg    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
4161b1389eeSmrg	echo m68k-unknown-mint${UNAME_RELEASE}
4171b1389eeSmrg	exit ;;
4187c5f6000Smrg    m68k:machten:*:*)
4197c5f6000Smrg	echo m68k-apple-machten${UNAME_RELEASE}
4207c5f6000Smrg	exit ;;
421bccedf53Smrg    powerpc:machten:*:*)
422bccedf53Smrg	echo powerpc-apple-machten${UNAME_RELEASE}
4237c5f6000Smrg	exit ;;
424bccedf53Smrg    RISC*:Mach:*:*)
425bccedf53Smrg	echo mips-dec-mach_bsd4.3
4267c5f6000Smrg	exit ;;
427bccedf53Smrg    RISC*:ULTRIX:*:*)
428bccedf53Smrg	echo mips-dec-ultrix${UNAME_RELEASE}
4297c5f6000Smrg	exit ;;
430bccedf53Smrg    VAX*:ULTRIX*:*:*)
431bccedf53Smrg	echo vax-dec-ultrix${UNAME_RELEASE}
4327c5f6000Smrg	exit ;;
433bccedf53Smrg    2020:CLIX:*:* | 2430:CLIX:*:*)
434bccedf53Smrg	echo clipper-intergraph-clix${UNAME_RELEASE}
4357c5f6000Smrg	exit ;;
436bccedf53Smrg    mips:*:*:UMIPS | mips:*:*:RISCos)
437bccedf53Smrg	eval $set_cc_for_build
438bccedf53Smrg	sed 's/^	//' << EOF >$dummy.c
439bccedf53Smrg#ifdef __cplusplus
440bccedf53Smrg#include <stdio.h>  /* for printf() prototype */
441bccedf53Smrg	int main (int argc, char *argv[]) {
442bccedf53Smrg#else
443bccedf53Smrg	int main (argc, argv) int argc; char *argv[]; {
444bccedf53Smrg#endif
445bccedf53Smrg	#if defined (host_mips) && defined (MIPSEB)
446bccedf53Smrg	#if defined (SYSTYPE_SYSV)
447bccedf53Smrg	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
448bccedf53Smrg	#endif
449bccedf53Smrg	#if defined (SYSTYPE_SVR4)
450bccedf53Smrg	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
451bccedf53Smrg	#endif
452bccedf53Smrg	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
453bccedf53Smrg	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
454bccedf53Smrg	#endif
455bccedf53Smrg	#endif
456bccedf53Smrg	  exit (-1);
457bccedf53Smrg	}
458bccedf53SmrgEOF
4597c5f6000Smrg	$CC_FOR_BUILD -o $dummy $dummy.c &&
4607c5f6000Smrg	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
4617c5f6000Smrg	  SYSTEM_NAME=`$dummy $dummyarg` &&
4627c5f6000Smrg	    { echo "$SYSTEM_NAME"; exit; }
463bccedf53Smrg	echo mips-mips-riscos${UNAME_RELEASE}
4647c5f6000Smrg	exit ;;
465bccedf53Smrg    Motorola:PowerMAX_OS:*:*)
466bccedf53Smrg	echo powerpc-motorola-powermax
4677c5f6000Smrg	exit ;;
468bccedf53Smrg    Motorola:*:4.3:PL8-*)
469bccedf53Smrg	echo powerpc-harris-powermax
4707c5f6000Smrg	exit ;;
471bccedf53Smrg    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
472bccedf53Smrg	echo powerpc-harris-powermax
4737c5f6000Smrg	exit ;;
474bccedf53Smrg    Night_Hawk:Power_UNIX:*:*)
475bccedf53Smrg	echo powerpc-harris-powerunix
4767c5f6000Smrg	exit ;;
477bccedf53Smrg    m88k:CX/UX:7*:*)
478bccedf53Smrg	echo m88k-harris-cxux7
4797c5f6000Smrg	exit ;;
480bccedf53Smrg    m88k:*:4*:R4*)
481bccedf53Smrg	echo m88k-motorola-sysv4
4827c5f6000Smrg	exit ;;
483bccedf53Smrg    m88k:*:3*:R3*)
484bccedf53Smrg	echo m88k-motorola-sysv3
4857c5f6000Smrg	exit ;;
486bccedf53Smrg    AViiON:dgux:*:*)
4871b1389eeSmrg	# DG/UX returns AViiON for all architectures
4881b1389eeSmrg	UNAME_PROCESSOR=`/usr/bin/uname -p`
489bccedf53Smrg	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
490bccedf53Smrg	then
491bccedf53Smrg	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
492bccedf53Smrg	       [ ${TARGET_BINARY_INTERFACE}x = x ]
493bccedf53Smrg	    then
494bccedf53Smrg		echo m88k-dg-dgux${UNAME_RELEASE}
495bccedf53Smrg	    else
496bccedf53Smrg		echo m88k-dg-dguxbcs${UNAME_RELEASE}
497bccedf53Smrg	    fi
498bccedf53Smrg	else
499bccedf53Smrg	    echo i586-dg-dgux${UNAME_RELEASE}
500bccedf53Smrg	fi
5011b1389eeSmrg	exit ;;
502bccedf53Smrg    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
503bccedf53Smrg	echo m88k-dolphin-sysv3
5047c5f6000Smrg	exit ;;
505bccedf53Smrg    M88*:*:R3*:*)
506bccedf53Smrg	# Delta 88k system running SVR3
507bccedf53Smrg	echo m88k-motorola-sysv3
5087c5f6000Smrg	exit ;;
509bccedf53Smrg    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
510bccedf53Smrg	echo m88k-tektronix-sysv3
5117c5f6000Smrg	exit ;;
512bccedf53Smrg    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
513bccedf53Smrg	echo m68k-tektronix-bsd
5147c5f6000Smrg	exit ;;
515bccedf53Smrg    *:IRIX*:*:*)
516bccedf53Smrg	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
5177c5f6000Smrg	exit ;;
518bccedf53Smrg    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
5197c5f6000Smrg	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
5207c5f6000Smrg	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
521bccedf53Smrg    i*86:AIX:*:*)
522bccedf53Smrg	echo i386-ibm-aix
5237c5f6000Smrg	exit ;;
524bccedf53Smrg    ia64:AIX:*:*)
525bccedf53Smrg	if [ -x /usr/bin/oslevel ] ; then
526bccedf53Smrg		IBM_REV=`/usr/bin/oslevel`
527bccedf53Smrg	else
528bccedf53Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
529bccedf53Smrg	fi
530bccedf53Smrg	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
5317c5f6000Smrg	exit ;;
532bccedf53Smrg    *:AIX:2:3)
533bccedf53Smrg	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
534bccedf53Smrg		eval $set_cc_for_build
535bccedf53Smrg		sed 's/^		//' << EOF >$dummy.c
536bccedf53Smrg		#include <sys/systemcfg.h>
537bccedf53Smrg
538bccedf53Smrg		main()
539bccedf53Smrg			{
540bccedf53Smrg			if (!__power_pc())
541bccedf53Smrg				exit(1);
542bccedf53Smrg			puts("powerpc-ibm-aix3.2.5");
543bccedf53Smrg			exit(0);
544bccedf53Smrg			}
545bccedf53SmrgEOF
5467c5f6000Smrg		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
5477c5f6000Smrg		then
5487c5f6000Smrg			echo "$SYSTEM_NAME"
5497c5f6000Smrg		else
5507c5f6000Smrg			echo rs6000-ibm-aix3.2.5
5517c5f6000Smrg		fi
552bccedf53Smrg	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
553bccedf53Smrg		echo rs6000-ibm-aix3.2.4
554bccedf53Smrg	else
555bccedf53Smrg		echo rs6000-ibm-aix3.2
556bccedf53Smrg	fi
5577c5f6000Smrg	exit ;;
558f7ada8ddSmrg    *:AIX:*:[4567])
559bccedf53Smrg	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
560bccedf53Smrg	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
561bccedf53Smrg		IBM_ARCH=rs6000
562bccedf53Smrg	else
563bccedf53Smrg		IBM_ARCH=powerpc
564bccedf53Smrg	fi
565bccedf53Smrg	if [ -x /usr/bin/oslevel ] ; then
566bccedf53Smrg		IBM_REV=`/usr/bin/oslevel`
567bccedf53Smrg	else
568bccedf53Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
569bccedf53Smrg	fi
570bccedf53Smrg	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
5717c5f6000Smrg	exit ;;
572bccedf53Smrg    *:AIX:*:*)
573bccedf53Smrg	echo rs6000-ibm-aix
5747c5f6000Smrg	exit ;;
575bccedf53Smrg    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
576bccedf53Smrg	echo romp-ibm-bsd4.4
5777c5f6000Smrg	exit ;;
578bccedf53Smrg    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
579bccedf53Smrg	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
5807c5f6000Smrg	exit ;;                             # report: romp-ibm BSD 4.3
581bccedf53Smrg    *:BOSX:*:*)
582bccedf53Smrg	echo rs6000-bull-bosx
5837c5f6000Smrg	exit ;;
584bccedf53Smrg    DPX/2?00:B.O.S.:*:*)
585bccedf53Smrg	echo m68k-bull-sysv3
5867c5f6000Smrg	exit ;;
587bccedf53Smrg    9000/[34]??:4.3bsd:1.*:*)
588bccedf53Smrg	echo m68k-hp-bsd
5897c5f6000Smrg	exit ;;
590bccedf53Smrg    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
591bccedf53Smrg	echo m68k-hp-bsd4.4
5927c5f6000Smrg	exit ;;
593bccedf53Smrg    9000/[34678]??:HP-UX:*:*)
594bccedf53Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
595bccedf53Smrg	case "${UNAME_MACHINE}" in
596bccedf53Smrg	    9000/31? )            HP_ARCH=m68000 ;;
597bccedf53Smrg	    9000/[34]?? )         HP_ARCH=m68k ;;
598bccedf53Smrg	    9000/[678][0-9][0-9])
599bccedf53Smrg		if [ -x /usr/bin/getconf ]; then
600bccedf53Smrg		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
6011b1389eeSmrg		    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
6021b1389eeSmrg		    case "${sc_cpu_version}" in
6031b1389eeSmrg		      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
6041b1389eeSmrg		      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
6051b1389eeSmrg		      532)                      # CPU_PA_RISC2_0
6061b1389eeSmrg			case "${sc_kernel_bits}" in
6071b1389eeSmrg			  32) HP_ARCH="hppa2.0n" ;;
6081b1389eeSmrg			  64) HP_ARCH="hppa2.0w" ;;
609bccedf53Smrg			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
6101b1389eeSmrg			esac ;;
6111b1389eeSmrg		    esac
612bccedf53Smrg		fi
613bccedf53Smrg		if [ "${HP_ARCH}" = "" ]; then
614bccedf53Smrg		    eval $set_cc_for_build
6151b1389eeSmrg		    sed 's/^		//' << EOF >$dummy.c
616bccedf53Smrg
6171b1389eeSmrg		#define _HPUX_SOURCE
6181b1389eeSmrg		#include <stdlib.h>
6191b1389eeSmrg		#include <unistd.h>
620bccedf53Smrg
6211b1389eeSmrg		int main ()
6221b1389eeSmrg		{
6231b1389eeSmrg		#if defined(_SC_KERNEL_BITS)
6241b1389eeSmrg		    long bits = sysconf(_SC_KERNEL_BITS);
6251b1389eeSmrg		#endif
6261b1389eeSmrg		    long cpu  = sysconf (_SC_CPU_VERSION);
627bccedf53Smrg
6281b1389eeSmrg		    switch (cpu)
6291b1389eeSmrg			{
6301b1389eeSmrg			case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
6311b1389eeSmrg			case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
6321b1389eeSmrg			case CPU_PA_RISC2_0:
6331b1389eeSmrg		#if defined(_SC_KERNEL_BITS)
6341b1389eeSmrg			    switch (bits)
6351b1389eeSmrg				{
6361b1389eeSmrg				case 64: puts ("hppa2.0w"); break;
6371b1389eeSmrg				case 32: puts ("hppa2.0n"); break;
6381b1389eeSmrg				default: puts ("hppa2.0"); break;
6391b1389eeSmrg				} break;
6401b1389eeSmrg		#else  /* !defined(_SC_KERNEL_BITS) */
6411b1389eeSmrg			    puts ("hppa2.0"); break;
6421b1389eeSmrg		#endif
6431b1389eeSmrg			default: puts ("hppa1.0"); break;
6441b1389eeSmrg			}
6451b1389eeSmrg		    exit (0);
6461b1389eeSmrg		}
647bccedf53SmrgEOF
648bccedf53Smrg		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
649bccedf53Smrg		    test -z "$HP_ARCH" && HP_ARCH=hppa
650bccedf53Smrg		fi ;;
651bccedf53Smrg	esac
652bccedf53Smrg	if [ ${HP_ARCH} = "hppa2.0w" ]
653bccedf53Smrg	then
6547c5f6000Smrg	    eval $set_cc_for_build
6557c5f6000Smrg
6567c5f6000Smrg	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
6577c5f6000Smrg	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
6587c5f6000Smrg	    # generating 64-bit code.  GNU and HP use different nomenclature:
6597c5f6000Smrg	    #
6607c5f6000Smrg	    # $ CC_FOR_BUILD=cc ./config.guess
6617c5f6000Smrg	    # => hppa2.0w-hp-hpux11.23
6627c5f6000Smrg	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
6637c5f6000Smrg	    # => hppa64-hp-hpux11.23
6647c5f6000Smrg
6657c5f6000Smrg	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
666f7ada8ddSmrg		grep -q __LP64__
667bccedf53Smrg	    then
668bccedf53Smrg		HP_ARCH="hppa2.0w"
669bccedf53Smrg	    else
670bccedf53Smrg		HP_ARCH="hppa64"
671bccedf53Smrg	    fi
672bccedf53Smrg	fi
673bccedf53Smrg	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
6747c5f6000Smrg	exit ;;
675bccedf53Smrg    ia64:HP-UX:*:*)
676bccedf53Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
677bccedf53Smrg	echo ia64-hp-hpux${HPUX_REV}
6787c5f6000Smrg	exit ;;
679bccedf53Smrg    3050*:HI-UX:*:*)
680bccedf53Smrg	eval $set_cc_for_build
681bccedf53Smrg	sed 's/^	//' << EOF >$dummy.c
682bccedf53Smrg	#include <unistd.h>
683bccedf53Smrg	int
684bccedf53Smrg	main ()
685bccedf53Smrg	{
686bccedf53Smrg	  long cpu = sysconf (_SC_CPU_VERSION);
687bccedf53Smrg	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
688bccedf53Smrg	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
689bccedf53Smrg	     results, however.  */
690bccedf53Smrg	  if (CPU_IS_PA_RISC (cpu))
691bccedf53Smrg	    {
692bccedf53Smrg	      switch (cpu)
693bccedf53Smrg		{
694bccedf53Smrg		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
695bccedf53Smrg		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
696bccedf53Smrg		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
697bccedf53Smrg		  default: puts ("hppa-hitachi-hiuxwe2"); break;
698bccedf53Smrg		}
699bccedf53Smrg	    }
700bccedf53Smrg	  else if (CPU_IS_HP_MC68K (cpu))
701bccedf53Smrg	    puts ("m68k-hitachi-hiuxwe2");
702bccedf53Smrg	  else puts ("unknown-hitachi-hiuxwe2");
703bccedf53Smrg	  exit (0);
704bccedf53Smrg	}
705bccedf53SmrgEOF
7067c5f6000Smrg	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
7077c5f6000Smrg		{ echo "$SYSTEM_NAME"; exit; }
708bccedf53Smrg	echo unknown-hitachi-hiuxwe2
7097c5f6000Smrg	exit ;;
710bccedf53Smrg    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
711bccedf53Smrg	echo hppa1.1-hp-bsd
7127c5f6000Smrg	exit ;;
713bccedf53Smrg    9000/8??:4.3bsd:*:*)
714bccedf53Smrg	echo hppa1.0-hp-bsd
7157c5f6000Smrg	exit ;;
716bccedf53Smrg    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
717bccedf53Smrg	echo hppa1.0-hp-mpeix
7187c5f6000Smrg	exit ;;
719bccedf53Smrg    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
720bccedf53Smrg	echo hppa1.1-hp-osf
7217c5f6000Smrg	exit ;;
722bccedf53Smrg    hp8??:OSF1:*:*)
723bccedf53Smrg	echo hppa1.0-hp-osf
7247c5f6000Smrg	exit ;;
725bccedf53Smrg    i*86:OSF1:*:*)
726bccedf53Smrg	if [ -x /usr/sbin/sysversion ] ; then
727bccedf53Smrg	    echo ${UNAME_MACHINE}-unknown-osf1mk
728bccedf53Smrg	else
729bccedf53Smrg	    echo ${UNAME_MACHINE}-unknown-osf1
730bccedf53Smrg	fi
7317c5f6000Smrg	exit ;;
732bccedf53Smrg    parisc*:Lites*:*:*)
733bccedf53Smrg	echo hppa1.1-hp-lites
7347c5f6000Smrg	exit ;;
735bccedf53Smrg    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
736bccedf53Smrg	echo c1-convex-bsd
7371b1389eeSmrg	exit ;;
738bccedf53Smrg    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
739bccedf53Smrg	if getsysinfo -f scalar_acc
740bccedf53Smrg	then echo c32-convex-bsd
741bccedf53Smrg	else echo c2-convex-bsd
742bccedf53Smrg	fi
7431b1389eeSmrg	exit ;;
744bccedf53Smrg    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
745bccedf53Smrg	echo c34-convex-bsd
7461b1389eeSmrg	exit ;;
747bccedf53Smrg    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
748bccedf53Smrg	echo c38-convex-bsd
7491b1389eeSmrg	exit ;;
750bccedf53Smrg    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
751bccedf53Smrg	echo c4-convex-bsd
7521b1389eeSmrg	exit ;;
753bccedf53Smrg    CRAY*Y-MP:*:*:*)
754bccedf53Smrg	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7557c5f6000Smrg	exit ;;
756bccedf53Smrg    CRAY*[A-Z]90:*:*:*)
757bccedf53Smrg	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
758bccedf53Smrg	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
759bccedf53Smrg	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
760bccedf53Smrg	      -e 's/\.[^.]*$/.X/'
7617c5f6000Smrg	exit ;;
762bccedf53Smrg    CRAY*TS:*:*:*)
763bccedf53Smrg	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7647c5f6000Smrg	exit ;;
765bccedf53Smrg    CRAY*T3E:*:*:*)
766bccedf53Smrg	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7677c5f6000Smrg	exit ;;
768bccedf53Smrg    CRAY*SV1:*:*:*)
769bccedf53Smrg	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7707c5f6000Smrg	exit ;;
771bccedf53Smrg    *:UNICOS/mp:*:*)
7727c5f6000Smrg	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7737c5f6000Smrg	exit ;;
774bccedf53Smrg    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
775bccedf53Smrg	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
7761b1389eeSmrg	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
7771b1389eeSmrg	FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
7781b1389eeSmrg	echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
7791b1389eeSmrg	exit ;;
7807c5f6000Smrg    5000:UNIX_System_V:4.*:*)
7811b1389eeSmrg	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
7821b1389eeSmrg	FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
7831b1389eeSmrg	echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
7847c5f6000Smrg	exit ;;
785bccedf53Smrg    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
786bccedf53Smrg	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
7877c5f6000Smrg	exit ;;
788bccedf53Smrg    sparc*:BSD/OS:*:*)
789bccedf53Smrg	echo sparc-unknown-bsdi${UNAME_RELEASE}
7907c5f6000Smrg	exit ;;
791bccedf53Smrg    *:BSD/OS:*:*)
792bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
7937c5f6000Smrg	exit ;;
7947c5f6000Smrg    *:FreeBSD:*:*)
7951b1389eeSmrg	UNAME_PROCESSOR=`/usr/bin/uname -p`
7961b1389eeSmrg	case ${UNAME_PROCESSOR} in
7977c5f6000Smrg	    amd64)
7987c5f6000Smrg		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7997c5f6000Smrg	    *)
8001b1389eeSmrg		echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
8017c5f6000Smrg	esac
8027c5f6000Smrg	exit ;;
803bccedf53Smrg    i*:CYGWIN*:*)
804bccedf53Smrg	echo ${UNAME_MACHINE}-pc-cygwin
8057c5f6000Smrg	exit ;;
8067c5f6000Smrg    *:MINGW*:*)
807bccedf53Smrg	echo ${UNAME_MACHINE}-pc-mingw32
8087c5f6000Smrg	exit ;;
8091b1389eeSmrg    i*:MSYS*:*)
8101b1389eeSmrg	echo ${UNAME_MACHINE}-pc-msys
8111b1389eeSmrg	exit ;;
8127c5f6000Smrg    i*:windows32*:*)
8131b1389eeSmrg	# uname -m includes "-pc" on this system.
8141b1389eeSmrg	echo ${UNAME_MACHINE}-mingw32
8157c5f6000Smrg	exit ;;
816bccedf53Smrg    i*:PW*:*)
817bccedf53Smrg	echo ${UNAME_MACHINE}-pc-pw32
8187c5f6000Smrg	exit ;;
819f7ada8ddSmrg    *:Interix*:*)
8201b1389eeSmrg	case ${UNAME_MACHINE} in
8217c5f6000Smrg	    x86)
8227c5f6000Smrg		echo i586-pc-interix${UNAME_RELEASE}
8237c5f6000Smrg		exit ;;
824f7ada8ddSmrg	    authenticamd | genuineintel | EM64T)
8257c5f6000Smrg		echo x86_64-unknown-interix${UNAME_RELEASE}
8267c5f6000Smrg		exit ;;
8277c5f6000Smrg	    IA64)
8287c5f6000Smrg		echo ia64-unknown-interix${UNAME_RELEASE}
8297c5f6000Smrg		exit ;;
8307c5f6000Smrg	esac ;;
831bccedf53Smrg    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
832bccedf53Smrg	echo i${UNAME_MACHINE}-pc-mks
8337c5f6000Smrg	exit ;;
834f7ada8ddSmrg    8664:Windows_NT:*)
835f7ada8ddSmrg	echo x86_64-pc-mks
836f7ada8ddSmrg	exit ;;
837bccedf53Smrg    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
838bccedf53Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
839bccedf53Smrg	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
840bccedf53Smrg	# UNAME_MACHINE based on the output of uname instead of i386?
841bccedf53Smrg	echo i586-pc-interix
8427c5f6000Smrg	exit ;;
843bccedf53Smrg    i*:UWIN*:*)
844bccedf53Smrg	echo ${UNAME_MACHINE}-pc-uwin
8457c5f6000Smrg	exit ;;
8467c5f6000Smrg    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
8477c5f6000Smrg	echo x86_64-unknown-cygwin
8487c5f6000Smrg	exit ;;
849bccedf53Smrg    p*:CYGWIN*:*)
850bccedf53Smrg	echo powerpcle-unknown-cygwin
8517c5f6000Smrg	exit ;;
852bccedf53Smrg    prep*:SunOS:5.*:*)
853bccedf53Smrg	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
8547c5f6000Smrg	exit ;;
855bccedf53Smrg    *:GNU:*:*)
8567c5f6000Smrg	# the GNU system
857bccedf53Smrg	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
8587c5f6000Smrg	exit ;;
8597c5f6000Smrg    *:GNU/*:*:*)
8607c5f6000Smrg	# other systems with GNU libc and userland
8617c5f6000Smrg	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
8627c5f6000Smrg	exit ;;
863bccedf53Smrg    i*86:Minix:*:*)
864bccedf53Smrg	echo ${UNAME_MACHINE}-pc-minix
8657c5f6000Smrg	exit ;;
866f7ada8ddSmrg    alpha:Linux:*:*)
867f7ada8ddSmrg	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
868f7ada8ddSmrg	  EV5)   UNAME_MACHINE=alphaev5 ;;
869f7ada8ddSmrg	  EV56)  UNAME_MACHINE=alphaev56 ;;
870f7ada8ddSmrg	  PCA56) UNAME_MACHINE=alphapca56 ;;
871f7ada8ddSmrg	  PCA57) UNAME_MACHINE=alphapca56 ;;
872f7ada8ddSmrg	  EV6)   UNAME_MACHINE=alphaev6 ;;
873f7ada8ddSmrg	  EV67)  UNAME_MACHINE=alphaev67 ;;
874f7ada8ddSmrg	  EV68*) UNAME_MACHINE=alphaev68 ;;
8751b1389eeSmrg	esac
876f7ada8ddSmrg	objdump --private-headers /bin/sh | grep -q ld.so.1
877f7ada8ddSmrg	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
878f7ada8ddSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
879f7ada8ddSmrg	exit ;;
880bccedf53Smrg    arm*:Linux:*:*)
8817c5f6000Smrg	eval $set_cc_for_build
8827c5f6000Smrg	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
8837c5f6000Smrg	    | grep -q __ARM_EABI__
8847c5f6000Smrg	then
8857c5f6000Smrg	    echo ${UNAME_MACHINE}-unknown-linux-gnu
8867c5f6000Smrg	else
8871b1389eeSmrg	    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
8881b1389eeSmrg		| grep -q __ARM_PCS_VFP
8891b1389eeSmrg	    then
8901b1389eeSmrg		echo ${UNAME_MACHINE}-unknown-linux-gnueabi
8911b1389eeSmrg	    else
8921b1389eeSmrg		echo ${UNAME_MACHINE}-unknown-linux-gnueabihf
8931b1389eeSmrg	    fi
8947c5f6000Smrg	fi
8957c5f6000Smrg	exit ;;
8967c5f6000Smrg    avr32*:Linux:*:*)
897bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
8987c5f6000Smrg	exit ;;
899bccedf53Smrg    cris:Linux:*:*)
900bccedf53Smrg	echo cris-axis-linux-gnu
9017c5f6000Smrg	exit ;;
9027c5f6000Smrg    crisv32:Linux:*:*)
9037c5f6000Smrg	echo crisv32-axis-linux-gnu
9047c5f6000Smrg	exit ;;
9057c5f6000Smrg    frv:Linux:*:*)
9061b1389eeSmrg	echo frv-unknown-linux-gnu
9071b1389eeSmrg	exit ;;
9081b1389eeSmrg    hexagon:Linux:*:*)
9091b1389eeSmrg	echo hexagon-unknown-linux-gnu
9107c5f6000Smrg	exit ;;
911f7ada8ddSmrg    i*86:Linux:*:*)
912f7ada8ddSmrg	LIBC=gnu
913f7ada8ddSmrg	eval $set_cc_for_build
914f7ada8ddSmrg	sed 's/^	//' << EOF >$dummy.c
915f7ada8ddSmrg	#ifdef __dietlibc__
916f7ada8ddSmrg	LIBC=dietlibc
917f7ada8ddSmrg	#endif
918f7ada8ddSmrgEOF
919f7ada8ddSmrg	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
920f7ada8ddSmrg	echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
921f7ada8ddSmrg	exit ;;
922bccedf53Smrg    ia64:Linux:*:*)
9237c5f6000Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9247c5f6000Smrg	exit ;;
9257c5f6000Smrg    m32r*:Linux:*:*)
9267c5f6000Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9277c5f6000Smrg	exit ;;
928bccedf53Smrg    m68*:Linux:*:*)
929bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9307c5f6000Smrg	exit ;;
931f7ada8ddSmrg    mips:Linux:*:* | mips64:Linux:*:*)
932bccedf53Smrg	eval $set_cc_for_build
933bccedf53Smrg	sed 's/^	//' << EOF >$dummy.c
934bccedf53Smrg	#undef CPU
935f7ada8ddSmrg	#undef ${UNAME_MACHINE}
936f7ada8ddSmrg	#undef ${UNAME_MACHINE}el
937bccedf53Smrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
938f7ada8ddSmrg	CPU=${UNAME_MACHINE}el
939bccedf53Smrg	#else
940bccedf53Smrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
941f7ada8ddSmrg	CPU=${UNAME_MACHINE}
942bccedf53Smrg	#else
943bccedf53Smrg	CPU=
944bccedf53Smrg	#endif
945bccedf53Smrg	#endif
946bccedf53SmrgEOF
947f7ada8ddSmrg	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
9487c5f6000Smrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
949bccedf53Smrg	;;
9507c5f6000Smrg    or32:Linux:*:*)
9517c5f6000Smrg	echo or32-unknown-linux-gnu
9527c5f6000Smrg	exit ;;
9537c5f6000Smrg    padre:Linux:*:*)
9547c5f6000Smrg	echo sparc-unknown-linux-gnu
9557c5f6000Smrg	exit ;;
956f7ada8ddSmrg    parisc64:Linux:*:* | hppa64:Linux:*:*)
957f7ada8ddSmrg	echo hppa64-unknown-linux-gnu
958f7ada8ddSmrg	exit ;;
959bccedf53Smrg    parisc:Linux:*:* | hppa:Linux:*:*)
960bccedf53Smrg	# Look for CPU level
961bccedf53Smrg	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
962bccedf53Smrg	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
963bccedf53Smrg	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
964bccedf53Smrg	  *)    echo hppa-unknown-linux-gnu ;;
965bccedf53Smrg	esac
9667c5f6000Smrg	exit ;;
967f7ada8ddSmrg    ppc64:Linux:*:*)
968f7ada8ddSmrg	echo powerpc64-unknown-linux-gnu
969f7ada8ddSmrg	exit ;;
970f7ada8ddSmrg    ppc:Linux:*:*)
971f7ada8ddSmrg	echo powerpc-unknown-linux-gnu
9727c5f6000Smrg	exit ;;
973bccedf53Smrg    s390:Linux:*:* | s390x:Linux:*:*)
9747c5f6000Smrg	echo ${UNAME_MACHINE}-ibm-linux
9757c5f6000Smrg	exit ;;
976bccedf53Smrg    sh64*:Linux:*:*)
9771b1389eeSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9787c5f6000Smrg	exit ;;
979bccedf53Smrg    sh*:Linux:*:*)
980bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9817c5f6000Smrg	exit ;;
982bccedf53Smrg    sparc:Linux:*:* | sparc64:Linux:*:*)
983bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9847c5f6000Smrg	exit ;;
985f7ada8ddSmrg    tile*:Linux:*:*)
9861b1389eeSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
987f7ada8ddSmrg	exit ;;
9887c5f6000Smrg    vax:Linux:*:*)
9897c5f6000Smrg	echo ${UNAME_MACHINE}-dec-linux-gnu
9907c5f6000Smrg	exit ;;
991bccedf53Smrg    x86_64:Linux:*:*)
9927c5f6000Smrg	echo x86_64-unknown-linux-gnu
9937c5f6000Smrg	exit ;;
9947c5f6000Smrg    xtensa*:Linux:*:*)
9951b1389eeSmrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9967c5f6000Smrg	exit ;;
997bccedf53Smrg    i*86:DYNIX/ptx:4*:*)
998bccedf53Smrg	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
999bccedf53Smrg	# earlier versions are messed up and put the nodename in both
1000bccedf53Smrg	# sysname and nodename.
1001bccedf53Smrg	echo i386-sequent-sysv4
10027c5f6000Smrg	exit ;;
1003bccedf53Smrg    i*86:UNIX_SV:4.2MP:2.*)
10041b1389eeSmrg	# Unixware is an offshoot of SVR4, but it has its own version
10051b1389eeSmrg	# number series starting with 2...
10061b1389eeSmrg	# I am not positive that other SVR4 systems won't match this,
1007bccedf53Smrg	# I just have to hope.  -- rms.
10081b1389eeSmrg	# Use sysv4.2uw... so that sysv4* matches it.
1009bccedf53Smrg	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
10107c5f6000Smrg	exit ;;
1011bccedf53Smrg    i*86:OS/2:*:*)
1012bccedf53Smrg	# If we were able to find `uname', then EMX Unix compatibility
1013bccedf53Smrg	# is probably installed.
1014bccedf53Smrg	echo ${UNAME_MACHINE}-pc-os2-emx
10157c5f6000Smrg	exit ;;
1016bccedf53Smrg    i*86:XTS-300:*:STOP)
1017bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-stop
10187c5f6000Smrg	exit ;;
1019bccedf53Smrg    i*86:atheos:*:*)
1020bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-atheos
10217c5f6000Smrg	exit ;;
10227c5f6000Smrg    i*86:syllable:*:*)
10237c5f6000Smrg	echo ${UNAME_MACHINE}-pc-syllable
10247c5f6000Smrg	exit ;;
1025f7ada8ddSmrg    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
1026bccedf53Smrg	echo i386-unknown-lynxos${UNAME_RELEASE}
10277c5f6000Smrg	exit ;;
1028bccedf53Smrg    i*86:*DOS:*:*)
1029bccedf53Smrg	echo ${UNAME_MACHINE}-pc-msdosdjgpp
10307c5f6000Smrg	exit ;;
1031bccedf53Smrg    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
1032bccedf53Smrg	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
1033bccedf53Smrg	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1034bccedf53Smrg		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
1035bccedf53Smrg	else
1036bccedf53Smrg		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
1037bccedf53Smrg	fi
10387c5f6000Smrg	exit ;;
10397c5f6000Smrg    i*86:*:5:[678]*)
10401b1389eeSmrg	# UnixWare 7.x, OpenUNIX and OpenServer 6.
1041bccedf53Smrg	case `/bin/uname -X | grep "^Machine"` in
1042bccedf53Smrg	    *486*)	     UNAME_MACHINE=i486 ;;
1043bccedf53Smrg	    *Pentium)	     UNAME_MACHINE=i586 ;;
1044bccedf53Smrg	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1045bccedf53Smrg	esac
1046bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
10477c5f6000Smrg	exit ;;
1048bccedf53Smrg    i*86:*:3.2:*)
1049bccedf53Smrg	if test -f /usr/options/cb.name; then
1050bccedf53Smrg		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1051bccedf53Smrg		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1052bccedf53Smrg	elif /bin/uname -X 2>/dev/null >/dev/null ; then
1053bccedf53Smrg		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1054bccedf53Smrg		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1055bccedf53Smrg		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1056bccedf53Smrg			&& UNAME_MACHINE=i586
1057bccedf53Smrg		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1058bccedf53Smrg			&& UNAME_MACHINE=i686
1059bccedf53Smrg		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1060bccedf53Smrg			&& UNAME_MACHINE=i686
1061bccedf53Smrg		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1062bccedf53Smrg	else
1063bccedf53Smrg		echo ${UNAME_MACHINE}-pc-sysv32
1064bccedf53Smrg	fi
10657c5f6000Smrg	exit ;;
1066bccedf53Smrg    pc:*:*:*)
1067bccedf53Smrg	# Left here for compatibility:
10681b1389eeSmrg	# uname -m prints for DJGPP always 'pc', but it prints nothing about
10691b1389eeSmrg	# the processor, so we play safe by assuming i586.
10707c5f6000Smrg	# Note: whatever this is, it MUST be the same as what config.sub
10717c5f6000Smrg	# prints for the "djgpp" host, or else GDB configury will decide that
10727c5f6000Smrg	# this is a cross-build.
10737c5f6000Smrg	echo i586-pc-msdosdjgpp
10741b1389eeSmrg	exit ;;
1075bccedf53Smrg    Intel:Mach:3*:*)
1076bccedf53Smrg	echo i386-pc-mach3
10777c5f6000Smrg	exit ;;
1078bccedf53Smrg    paragon:*:*:*)
1079bccedf53Smrg	echo i860-intel-osf1
10807c5f6000Smrg	exit ;;
1081bccedf53Smrg    i860:*:4.*:*) # i860-SVR4
1082bccedf53Smrg	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1083bccedf53Smrg	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
1084bccedf53Smrg	else # Add other i860-SVR4 vendors below as they are discovered.
1085bccedf53Smrg	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
1086bccedf53Smrg	fi
10877c5f6000Smrg	exit ;;
1088bccedf53Smrg    mini*:CTIX:SYS*5:*)
1089bccedf53Smrg	# "miniframe"
1090bccedf53Smrg	echo m68010-convergent-sysv
10917c5f6000Smrg	exit ;;
1092bccedf53Smrg    mc68k:UNIX:SYSTEM5:3.51m)
1093bccedf53Smrg	echo m68k-convergent-sysv
10947c5f6000Smrg	exit ;;
1095bccedf53Smrg    M680?0:D-NIX:5.3:*)
1096bccedf53Smrg	echo m68k-diab-dnix
10977c5f6000Smrg	exit ;;
10987c5f6000Smrg    M68*:*:R3V[5678]*:*)
10997c5f6000Smrg	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
11007c5f6000Smrg    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)
1101bccedf53Smrg	OS_REL=''
1102bccedf53Smrg	test -r /etc/.relid \
1103bccedf53Smrg	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1104bccedf53Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
11057c5f6000Smrg	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1106bccedf53Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
11077c5f6000Smrg	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1108bccedf53Smrg    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
11091b1389eeSmrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
11101b1389eeSmrg	  && { echo i486-ncr-sysv4; exit; } ;;
11117c5f6000Smrg    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
11127c5f6000Smrg	OS_REL='.3'
11137c5f6000Smrg	test -r /etc/.relid \
11147c5f6000Smrg	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
11157c5f6000Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
11167c5f6000Smrg	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
11177c5f6000Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
11187c5f6000Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
11197c5f6000Smrg	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
11207c5f6000Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1121bccedf53Smrg    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1122bccedf53Smrg	echo m68k-unknown-lynxos${UNAME_RELEASE}
11237c5f6000Smrg	exit ;;
1124bccedf53Smrg    mc68030:UNIX_System_V:4.*:*)
1125bccedf53Smrg	echo m68k-atari-sysv4
11267c5f6000Smrg	exit ;;
1127bccedf53Smrg    TSUNAMI:LynxOS:2.*:*)
1128bccedf53Smrg	echo sparc-unknown-lynxos${UNAME_RELEASE}
11297c5f6000Smrg	exit ;;
1130bccedf53Smrg    rs6000:LynxOS:2.*:*)
1131bccedf53Smrg	echo rs6000-unknown-lynxos${UNAME_RELEASE}
11327c5f6000Smrg	exit ;;
1133f7ada8ddSmrg    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
1134bccedf53Smrg	echo powerpc-unknown-lynxos${UNAME_RELEASE}
11357c5f6000Smrg	exit ;;
1136bccedf53Smrg    SM[BE]S:UNIX_SV:*:*)
1137bccedf53Smrg	echo mips-dde-sysv${UNAME_RELEASE}
11387c5f6000Smrg	exit ;;
1139bccedf53Smrg    RM*:ReliantUNIX-*:*:*)
1140bccedf53Smrg	echo mips-sni-sysv4
11417c5f6000Smrg	exit ;;
1142bccedf53Smrg    RM*:SINIX-*:*:*)
1143bccedf53Smrg	echo mips-sni-sysv4
11447c5f6000Smrg	exit ;;
1145bccedf53Smrg    *:SINIX-*:*:*)
1146bccedf53Smrg	if uname -p 2>/dev/null >/dev/null ; then
1147bccedf53Smrg		UNAME_MACHINE=`(uname -p) 2>/dev/null`
1148bccedf53Smrg		echo ${UNAME_MACHINE}-sni-sysv4
1149bccedf53Smrg	else
1150bccedf53Smrg		echo ns32k-sni-sysv
1151bccedf53Smrg	fi
11527c5f6000Smrg	exit ;;
11531b1389eeSmrg    PENTIUM:*:4.0*:*)	# Unisys `ClearPath HMP IX 4000' SVR4/MP effort
11541b1389eeSmrg			# says <Richard.M.Bartel@ccMail.Census.GOV>
11551b1389eeSmrg	echo i586-unisys-sysv4
11561b1389eeSmrg	exit ;;
1157bccedf53Smrg    *:UNIX_System_V:4*:FTX*)
1158bccedf53Smrg	# From Gerald Hewes <hewes@openmarket.com>.
1159bccedf53Smrg	# How about differentiating between stratus architectures? -djm
1160bccedf53Smrg	echo hppa1.1-stratus-sysv4
11617c5f6000Smrg	exit ;;
1162bccedf53Smrg    *:*:*:FTX*)
1163bccedf53Smrg	# From seanf@swdc.stratus.com.
1164bccedf53Smrg	echo i860-stratus-sysv4
11657c5f6000Smrg	exit ;;
11667c5f6000Smrg    i*86:VOS:*:*)
11677c5f6000Smrg	# From Paul.Green@stratus.com.
11687c5f6000Smrg	echo ${UNAME_MACHINE}-stratus-vos
11697c5f6000Smrg	exit ;;
1170bccedf53Smrg    *:VOS:*:*)
1171bccedf53Smrg	# From Paul.Green@stratus.com.
1172bccedf53Smrg	echo hppa1.1-stratus-vos
11737c5f6000Smrg	exit ;;
1174bccedf53Smrg    mc68*:A/UX:*:*)
1175bccedf53Smrg	echo m68k-apple-aux${UNAME_RELEASE}
11767c5f6000Smrg	exit ;;
1177bccedf53Smrg    news*:NEWS-OS:6*:*)
1178bccedf53Smrg	echo mips-sony-newsos6
11797c5f6000Smrg	exit ;;
1180bccedf53Smrg    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1181bccedf53Smrg	if [ -d /usr/nec ]; then
11821b1389eeSmrg		echo mips-nec-sysv${UNAME_RELEASE}
1183bccedf53Smrg	else
11841b1389eeSmrg		echo mips-unknown-sysv${UNAME_RELEASE}
1185bccedf53Smrg	fi
11861b1389eeSmrg	exit ;;
1187bccedf53Smrg    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
1188bccedf53Smrg	echo powerpc-be-beos
11897c5f6000Smrg	exit ;;
1190bccedf53Smrg    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
1191bccedf53Smrg	echo powerpc-apple-beos
11927c5f6000Smrg	exit ;;
1193bccedf53Smrg    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
1194bccedf53Smrg	echo i586-pc-beos
11957c5f6000Smrg	exit ;;
11967c5f6000Smrg    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
11977c5f6000Smrg	echo i586-pc-haiku
11987c5f6000Smrg	exit ;;
1199bccedf53Smrg    SX-4:SUPER-UX:*:*)
1200bccedf53Smrg	echo sx4-nec-superux${UNAME_RELEASE}
12017c5f6000Smrg	exit ;;
1202bccedf53Smrg    SX-5:SUPER-UX:*:*)
1203bccedf53Smrg	echo sx5-nec-superux${UNAME_RELEASE}
12047c5f6000Smrg	exit ;;
1205bccedf53Smrg    SX-6:SUPER-UX:*:*)
1206bccedf53Smrg	echo sx6-nec-superux${UNAME_RELEASE}
12077c5f6000Smrg	exit ;;
12087c5f6000Smrg    SX-7:SUPER-UX:*:*)
12097c5f6000Smrg	echo sx7-nec-superux${UNAME_RELEASE}
12107c5f6000Smrg	exit ;;
12117c5f6000Smrg    SX-8:SUPER-UX:*:*)
12127c5f6000Smrg	echo sx8-nec-superux${UNAME_RELEASE}
12137c5f6000Smrg	exit ;;
12147c5f6000Smrg    SX-8R:SUPER-UX:*:*)
12157c5f6000Smrg	echo sx8r-nec-superux${UNAME_RELEASE}
12167c5f6000Smrg	exit ;;
1217bccedf53Smrg    Power*:Rhapsody:*:*)
1218bccedf53Smrg	echo powerpc-apple-rhapsody${UNAME_RELEASE}
12197c5f6000Smrg	exit ;;
1220bccedf53Smrg    *:Rhapsody:*:*)
1221bccedf53Smrg	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
12227c5f6000Smrg	exit ;;
1223bccedf53Smrg    *:Darwin:*:*)
12247c5f6000Smrg	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
12257c5f6000Smrg	case $UNAME_PROCESSOR in
1226f7ada8ddSmrg	    i386)
1227f7ada8ddSmrg		eval $set_cc_for_build
1228f7ada8ddSmrg		if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
1229f7ada8ddSmrg		  if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
1230f7ada8ddSmrg		      (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
1231f7ada8ddSmrg		      grep IS_64BIT_ARCH >/dev/null
1232f7ada8ddSmrg		  then
1233f7ada8ddSmrg		      UNAME_PROCESSOR="x86_64"
1234f7ada8ddSmrg		  fi
1235f7ada8ddSmrg		fi ;;
12367c5f6000Smrg	    unknown) UNAME_PROCESSOR=powerpc ;;
1237bccedf53Smrg	esac
1238bccedf53Smrg	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
12397c5f6000Smrg	exit ;;
1240bccedf53Smrg    *:procnto*:*:* | *:QNX:[0123456789]*:*)
1241bccedf53Smrg	UNAME_PROCESSOR=`uname -p`
1242bccedf53Smrg	if test "$UNAME_PROCESSOR" = "x86"; then
1243bccedf53Smrg		UNAME_PROCESSOR=i386
1244bccedf53Smrg		UNAME_MACHINE=pc
1245bccedf53Smrg	fi
1246bccedf53Smrg	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
12477c5f6000Smrg	exit ;;
1248bccedf53Smrg    *:QNX:*:4*)
1249bccedf53Smrg	echo i386-pc-qnx
12507c5f6000Smrg	exit ;;
12511b1389eeSmrg    NEO-?:NONSTOP_KERNEL:*:*)
12521b1389eeSmrg	echo neo-tandem-nsk${UNAME_RELEASE}
12531b1389eeSmrg	exit ;;
12547c5f6000Smrg    NSE-?:NONSTOP_KERNEL:*:*)
12557c5f6000Smrg	echo nse-tandem-nsk${UNAME_RELEASE}
12567c5f6000Smrg	exit ;;
12577c5f6000Smrg    NSR-?:NONSTOP_KERNEL:*:*)
1258bccedf53Smrg	echo nsr-tandem-nsk${UNAME_RELEASE}
12597c5f6000Smrg	exit ;;
1260bccedf53Smrg    *:NonStop-UX:*:*)
1261bccedf53Smrg	echo mips-compaq-nonstopux
12627c5f6000Smrg	exit ;;
1263bccedf53Smrg    BS2000:POSIX*:*:*)
1264bccedf53Smrg	echo bs2000-siemens-sysv
12657c5f6000Smrg	exit ;;
1266bccedf53Smrg    DS/*:UNIX_System_V:*:*)
1267bccedf53Smrg	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
12687c5f6000Smrg	exit ;;
1269bccedf53Smrg    *:Plan9:*:*)
1270bccedf53Smrg	# "uname -m" is not consistent, so use $cputype instead. 386
1271bccedf53Smrg	# is converted to i386 for consistency with other x86
1272bccedf53Smrg	# operating systems.
1273bccedf53Smrg	if test "$cputype" = "386"; then
1274bccedf53Smrg	    UNAME_MACHINE=i386
1275bccedf53Smrg	else
1276bccedf53Smrg	    UNAME_MACHINE="$cputype"
1277bccedf53Smrg	fi
1278bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-plan9
12797c5f6000Smrg	exit ;;
1280bccedf53Smrg    *:TOPS-10:*:*)
1281bccedf53Smrg	echo pdp10-unknown-tops10
12827c5f6000Smrg	exit ;;
1283bccedf53Smrg    *:TENEX:*:*)
1284bccedf53Smrg	echo pdp10-unknown-tenex
12857c5f6000Smrg	exit ;;
1286bccedf53Smrg    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1287bccedf53Smrg	echo pdp10-dec-tops20
12887c5f6000Smrg	exit ;;
1289bccedf53Smrg    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1290bccedf53Smrg	echo pdp10-xkl-tops20
12917c5f6000Smrg	exit ;;
1292bccedf53Smrg    *:TOPS-20:*:*)
1293bccedf53Smrg	echo pdp10-unknown-tops20
12947c5f6000Smrg	exit ;;
1295bccedf53Smrg    *:ITS:*:*)
1296bccedf53Smrg	echo pdp10-unknown-its
12977c5f6000Smrg	exit ;;
1298bccedf53Smrg    SEI:*:*:SEIUX)
12991b1389eeSmrg	echo mips-sei-seiux${UNAME_RELEASE}
13007c5f6000Smrg	exit ;;
13017c5f6000Smrg    *:DragonFly:*:*)
13027c5f6000Smrg	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
13037c5f6000Smrg	exit ;;
13047c5f6000Smrg    *:*VMS:*:*)
13051b1389eeSmrg	UNAME_MACHINE=`(uname -p) 2>/dev/null`
13067c5f6000Smrg	case "${UNAME_MACHINE}" in
13077c5f6000Smrg	    A*) echo alpha-dec-vms ; exit ;;
13087c5f6000Smrg	    I*) echo ia64-dec-vms ; exit ;;
13097c5f6000Smrg	    V*) echo vax-dec-vms ; exit ;;
13107c5f6000Smrg	esac ;;
13117c5f6000Smrg    *:XENIX:*:SysV)
13127c5f6000Smrg	echo i386-pc-xenix
13137c5f6000Smrg	exit ;;
13147c5f6000Smrg    i*86:skyos:*:*)
13157c5f6000Smrg	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
13167c5f6000Smrg	exit ;;
13177c5f6000Smrg    i*86:rdos:*:*)
13187c5f6000Smrg	echo ${UNAME_MACHINE}-pc-rdos
13197c5f6000Smrg	exit ;;
13207c5f6000Smrg    i*86:AROS:*:*)
13217c5f6000Smrg	echo ${UNAME_MACHINE}-pc-aros
13227c5f6000Smrg	exit ;;
1323bccedf53Smrgesac
1324bccedf53Smrg
1325bccedf53Smrg#echo '(No uname command or uname output not recognized.)' 1>&2
1326bccedf53Smrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
1327bccedf53Smrg
1328bccedf53Smrgeval $set_cc_for_build
1329bccedf53Smrgcat >$dummy.c <<EOF
1330bccedf53Smrg#ifdef _SEQUENT_
1331bccedf53Smrg# include <sys/types.h>
1332bccedf53Smrg# include <sys/utsname.h>
1333bccedf53Smrg#endif
1334bccedf53Smrgmain ()
1335bccedf53Smrg{
1336bccedf53Smrg#if defined (sony)
1337bccedf53Smrg#if defined (MIPSEB)
1338bccedf53Smrg  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
1339bccedf53Smrg     I don't know....  */
1340bccedf53Smrg  printf ("mips-sony-bsd\n"); exit (0);
1341bccedf53Smrg#else
1342bccedf53Smrg#include <sys/param.h>
1343bccedf53Smrg  printf ("m68k-sony-newsos%s\n",
1344bccedf53Smrg#ifdef NEWSOS4
13451b1389eeSmrg	"4"
1346bccedf53Smrg#else
13471b1389eeSmrg	""
1348bccedf53Smrg#endif
13491b1389eeSmrg	); exit (0);
1350bccedf53Smrg#endif
1351bccedf53Smrg#endif
1352bccedf53Smrg
1353bccedf53Smrg#if defined (__arm) && defined (__acorn) && defined (__unix)
13547c5f6000Smrg  printf ("arm-acorn-riscix\n"); exit (0);
1355bccedf53Smrg#endif
1356bccedf53Smrg
1357bccedf53Smrg#if defined (hp300) && !defined (hpux)
1358bccedf53Smrg  printf ("m68k-hp-bsd\n"); exit (0);
1359bccedf53Smrg#endif
1360bccedf53Smrg
1361bccedf53Smrg#if defined (NeXT)
1362bccedf53Smrg#if !defined (__ARCHITECTURE__)
1363bccedf53Smrg#define __ARCHITECTURE__ "m68k"
1364bccedf53Smrg#endif
1365bccedf53Smrg  int version;
1366bccedf53Smrg  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
1367bccedf53Smrg  if (version < 4)
1368bccedf53Smrg    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
1369bccedf53Smrg  else
1370bccedf53Smrg    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
1371bccedf53Smrg  exit (0);
1372bccedf53Smrg#endif
1373bccedf53Smrg
1374bccedf53Smrg#if defined (MULTIMAX) || defined (n16)
1375bccedf53Smrg#if defined (UMAXV)
1376bccedf53Smrg  printf ("ns32k-encore-sysv\n"); exit (0);
1377bccedf53Smrg#else
1378bccedf53Smrg#if defined (CMU)
1379bccedf53Smrg  printf ("ns32k-encore-mach\n"); exit (0);
1380bccedf53Smrg#else
1381bccedf53Smrg  printf ("ns32k-encore-bsd\n"); exit (0);
1382bccedf53Smrg#endif
1383bccedf53Smrg#endif
1384bccedf53Smrg#endif
1385bccedf53Smrg
1386bccedf53Smrg#if defined (__386BSD__)
1387bccedf53Smrg  printf ("i386-pc-bsd\n"); exit (0);
1388bccedf53Smrg#endif
1389bccedf53Smrg
1390bccedf53Smrg#if defined (sequent)
1391bccedf53Smrg#if defined (i386)
1392bccedf53Smrg  printf ("i386-sequent-dynix\n"); exit (0);
1393bccedf53Smrg#endif
1394bccedf53Smrg#if defined (ns32000)
1395bccedf53Smrg  printf ("ns32k-sequent-dynix\n"); exit (0);
1396bccedf53Smrg#endif
1397bccedf53Smrg#endif
1398bccedf53Smrg
1399bccedf53Smrg#if defined (_SEQUENT_)
1400bccedf53Smrg    struct utsname un;
1401bccedf53Smrg
1402bccedf53Smrg    uname(&un);
1403bccedf53Smrg
1404bccedf53Smrg    if (strncmp(un.version, "V2", 2) == 0) {
1405bccedf53Smrg	printf ("i386-sequent-ptx2\n"); exit (0);
1406bccedf53Smrg    }
1407bccedf53Smrg    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
1408bccedf53Smrg	printf ("i386-sequent-ptx1\n"); exit (0);
1409bccedf53Smrg    }
1410bccedf53Smrg    printf ("i386-sequent-ptx\n"); exit (0);
1411bccedf53Smrg
1412bccedf53Smrg#endif
1413bccedf53Smrg
1414bccedf53Smrg#if defined (vax)
1415bccedf53Smrg# if !defined (ultrix)
1416bccedf53Smrg#  include <sys/param.h>
1417bccedf53Smrg#  if defined (BSD)
1418bccedf53Smrg#   if BSD == 43
1419bccedf53Smrg      printf ("vax-dec-bsd4.3\n"); exit (0);
1420bccedf53Smrg#   else
1421bccedf53Smrg#    if BSD == 199006
1422bccedf53Smrg      printf ("vax-dec-bsd4.3reno\n"); exit (0);
1423bccedf53Smrg#    else
1424bccedf53Smrg      printf ("vax-dec-bsd\n"); exit (0);
1425bccedf53Smrg#    endif
1426bccedf53Smrg#   endif
1427bccedf53Smrg#  else
1428bccedf53Smrg    printf ("vax-dec-bsd\n"); exit (0);
1429bccedf53Smrg#  endif
1430bccedf53Smrg# else
1431bccedf53Smrg    printf ("vax-dec-ultrix\n"); exit (0);
1432bccedf53Smrg# endif
1433bccedf53Smrg#endif
1434bccedf53Smrg
1435bccedf53Smrg#if defined (alliant) && defined (i860)
1436bccedf53Smrg  printf ("i860-alliant-bsd\n"); exit (0);
1437bccedf53Smrg#endif
1438bccedf53Smrg
1439bccedf53Smrg  exit (1);
1440bccedf53Smrg}
1441bccedf53SmrgEOF
1442bccedf53Smrg
14437c5f6000Smrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
14447c5f6000Smrg	{ echo "$SYSTEM_NAME"; exit; }
1445bccedf53Smrg
1446bccedf53Smrg# Apollos put the system type in the environment.
1447bccedf53Smrg
14487c5f6000Smrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
1449bccedf53Smrg
1450bccedf53Smrg# Convex versions that predate uname can use getsysinfo(1)
1451bccedf53Smrg
1452bccedf53Smrgif [ -x /usr/convex/getsysinfo ]
1453bccedf53Smrgthen
1454bccedf53Smrg    case `getsysinfo -f cpu_type` in
1455bccedf53Smrg    c1*)
1456bccedf53Smrg	echo c1-convex-bsd
14577c5f6000Smrg	exit ;;
1458bccedf53Smrg    c2*)
1459bccedf53Smrg	if getsysinfo -f scalar_acc
1460bccedf53Smrg	then echo c32-convex-bsd
1461bccedf53Smrg	else echo c2-convex-bsd
1462bccedf53Smrg	fi
14637c5f6000Smrg	exit ;;
1464bccedf53Smrg    c34*)
1465bccedf53Smrg	echo c34-convex-bsd
14667c5f6000Smrg	exit ;;
1467bccedf53Smrg    c38*)
1468bccedf53Smrg	echo c38-convex-bsd
14697c5f6000Smrg	exit ;;
1470bccedf53Smrg    c4*)
1471bccedf53Smrg	echo c4-convex-bsd
14727c5f6000Smrg	exit ;;
1473bccedf53Smrg    esac
1474bccedf53Smrgfi
1475bccedf53Smrg
1476bccedf53Smrgcat >&2 <<EOF
1477bccedf53Smrg$0: unable to guess system type
1478bccedf53Smrg
1479bccedf53SmrgThis script, last modified $timestamp, has failed to recognize
1480bccedf53Smrgthe operating system you are using. It is advised that you
1481bccedf53Smrgdownload the most up to date version of the config scripts from
1482bccedf53Smrg
14837c5f6000Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
14847c5f6000Smrgand
14857c5f6000Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
1486bccedf53Smrg
1487bccedf53SmrgIf the version you run ($0) is already up to date, please
1488bccedf53Smrgsend the following data and any information you think might be
1489bccedf53Smrgpertinent to <config-patches@gnu.org> in order to provide the needed
1490bccedf53Smrginformation to handle your system.
1491bccedf53Smrg
1492bccedf53Smrgconfig.guess timestamp = $timestamp
1493bccedf53Smrg
1494bccedf53Smrguname -m = `(uname -m) 2>/dev/null || echo unknown`
1495bccedf53Smrguname -r = `(uname -r) 2>/dev/null || echo unknown`
1496bccedf53Smrguname -s = `(uname -s) 2>/dev/null || echo unknown`
1497bccedf53Smrguname -v = `(uname -v) 2>/dev/null || echo unknown`
1498bccedf53Smrg
1499bccedf53Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1500bccedf53Smrg/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
1501bccedf53Smrg
1502bccedf53Smrghostinfo               = `(hostinfo) 2>/dev/null`
1503bccedf53Smrg/bin/universe          = `(/bin/universe) 2>/dev/null`
1504bccedf53Smrg/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
1505bccedf53Smrg/bin/arch              = `(/bin/arch) 2>/dev/null`
1506bccedf53Smrg/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
1507bccedf53Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1508bccedf53Smrg
1509bccedf53SmrgUNAME_MACHINE = ${UNAME_MACHINE}
1510bccedf53SmrgUNAME_RELEASE = ${UNAME_RELEASE}
1511bccedf53SmrgUNAME_SYSTEM  = ${UNAME_SYSTEM}
1512bccedf53SmrgUNAME_VERSION = ${UNAME_VERSION}
1513bccedf53SmrgEOF
1514bccedf53Smrg
1515bccedf53Smrgexit 1
1516bccedf53Smrg
1517bccedf53Smrg# Local variables:
1518bccedf53Smrg# eval: (add-hook 'write-file-hooks 'time-stamp)
1519bccedf53Smrg# time-stamp-start: "timestamp='"
1520bccedf53Smrg# time-stamp-format: "%:y-%02m-%02d"
1521bccedf53Smrg# time-stamp-end: "'"
1522bccedf53Smrg# End:
1523