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