config.guess revision 7c5f6000
1bccedf53Smrg#! /bin/sh
2bccedf53Smrg# Attempt to guess a canonical system name.
3bccedf53Smrg#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
47c5f6000Smrg#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
57c5f6000Smrg#   Free Software Foundation, Inc.
6bccedf53Smrg
77c5f6000Smrgtimestamp='2009-04-27'
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
30bccedf53Smrg# Originally written by Per Bothner <per@bothner.com>.
31bccedf53Smrg# Please send patches to <config-patches@gnu.org>.  Submit a context
32bccedf53Smrg# diff and a properly formatted ChangeLog 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#
38bccedf53Smrg# The plan is that this can be called by configure scripts if you
39bccedf53Smrg# don't specify an explicit build system type.
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.
597c5f6000SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
607c5f6000Smrg2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
61bccedf53Smrg
62bccedf53SmrgThis is free software; see the source for copying conditions.  There is NO
63bccedf53Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
64bccedf53Smrg
65bccedf53Smrghelp="
66bccedf53SmrgTry \`$me --help' for more information."
67bccedf53Smrg
68bccedf53Smrg# Parse command line
69bccedf53Smrgwhile test $# -gt 0 ; do
70bccedf53Smrg  case $1 in
71bccedf53Smrg    --time-stamp | --time* | -t )
727c5f6000Smrg       echo "$timestamp" ; exit ;;
73bccedf53Smrg    --version | -v )
747c5f6000Smrg       echo "$version" ; exit ;;
75bccedf53Smrg    --help | --h* | -h )
767c5f6000Smrg       echo "$usage"; exit ;;
77bccedf53Smrg    -- )     # Stop option processing
78bccedf53Smrg       shift; break ;;
79bccedf53Smrg    - )	# Use stdin as input.
80bccedf53Smrg       break ;;
81bccedf53Smrg    -* )
82bccedf53Smrg       echo "$me: invalid option $1$help" >&2
83bccedf53Smrg       exit 1 ;;
84bccedf53Smrg    * )
85bccedf53Smrg       break ;;
86bccedf53Smrg  esac
87bccedf53Smrgdone
88bccedf53Smrg
89bccedf53Smrgif test $# != 0; then
90bccedf53Smrg  echo "$me: too many arguments$help" >&2
91bccedf53Smrg  exit 1
92bccedf53Smrgfi
93bccedf53Smrg
94bccedf53Smrgtrap 'exit 1' 1 2 15
95bccedf53Smrg
96bccedf53Smrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
97bccedf53Smrg# compiler to aid in system detection is discouraged as it requires
98bccedf53Smrg# temporary files to be created and, as you can see below, it is a
99bccedf53Smrg# headache to deal with in a portable fashion.
100bccedf53Smrg
101bccedf53Smrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
102bccedf53Smrg# use `HOST_CC' if defined, but it is deprecated.
103bccedf53Smrg
104bccedf53Smrg# Portable tmp directory creation inspired by the Autoconf team.
105bccedf53Smrg
106bccedf53Smrgset_cc_for_build='
107bccedf53Smrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
108bccedf53Smrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
109bccedf53Smrg: ${TMPDIR=/tmp} ;
1107c5f6000Smrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
111bccedf53Smrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
112bccedf53Smrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
113bccedf53Smrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
114bccedf53Smrgdummy=$tmp/dummy ;
115bccedf53Smrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
116bccedf53Smrgcase $CC_FOR_BUILD,$HOST_CC,$CC in
117bccedf53Smrg ,,)    echo "int x;" > $dummy.c ;
118bccedf53Smrg	for c in cc gcc c89 c99 ; do
119bccedf53Smrg	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
120bccedf53Smrg	     CC_FOR_BUILD="$c"; break ;
121bccedf53Smrg	  fi ;
122bccedf53Smrg	done ;
123bccedf53Smrg	if test x"$CC_FOR_BUILD" = x ; then
124bccedf53Smrg	  CC_FOR_BUILD=no_compiler_found ;
125bccedf53Smrg	fi
126bccedf53Smrg	;;
127bccedf53Smrg ,,*)   CC_FOR_BUILD=$CC ;;
128bccedf53Smrg ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
1297c5f6000Smrgesac ; set_cc_for_build= ;'
130bccedf53Smrg
131bccedf53Smrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
132bccedf53Smrg# (ghazi@noc.rutgers.edu 1994-08-24)
133bccedf53Smrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then
134bccedf53Smrg	PATH=$PATH:/.attbin ; export PATH
135bccedf53Smrgfi
136bccedf53Smrg
137bccedf53SmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
138bccedf53SmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
139bccedf53SmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
140bccedf53SmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
141bccedf53Smrg
142bccedf53Smrg# Note: order is significant - the case branches are not exclusive.
143bccedf53Smrg
144bccedf53Smrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
145bccedf53Smrg    *:NetBSD:*:*)
146bccedf53Smrg	# NetBSD (nbsd) targets should (where applicable) match one or
147bccedf53Smrg	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
148bccedf53Smrg	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
149bccedf53Smrg	# switched to ELF, *-*-netbsd* would select the old
150bccedf53Smrg	# object file format.  This provides both forward
151bccedf53Smrg	# compatibility and a consistent mechanism for selecting the
152bccedf53Smrg	# object file format.
153bccedf53Smrg	#
154bccedf53Smrg	# Note: NetBSD doesn't particularly care about the vendor
155bccedf53Smrg	# portion of the name.  We always set it to "unknown".
156bccedf53Smrg	sysctl="sysctl -n hw.machine_arch"
157bccedf53Smrg	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
158bccedf53Smrg	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
159bccedf53Smrg	case "${UNAME_MACHINE_ARCH}" in
160bccedf53Smrg	    armeb) machine=armeb-unknown ;;
161bccedf53Smrg	    arm*) machine=arm-unknown ;;
162bccedf53Smrg	    sh3el) machine=shl-unknown ;;
163bccedf53Smrg	    sh3eb) machine=sh-unknown ;;
1647c5f6000Smrg	    sh5el) machine=sh5le-unknown ;;
165bccedf53Smrg	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
166bccedf53Smrg	esac
167bccedf53Smrg	# The Operating System including object format, if it has switched
168bccedf53Smrg	# to ELF recently, or will in the future.
169bccedf53Smrg	case "${UNAME_MACHINE_ARCH}" in
170bccedf53Smrg	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
171bccedf53Smrg		eval $set_cc_for_build
172bccedf53Smrg		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
173bccedf53Smrg			| grep __ELF__ >/dev/null
174bccedf53Smrg		then
175bccedf53Smrg		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
176bccedf53Smrg		    # Return netbsd for either.  FIX?
177bccedf53Smrg		    os=netbsd
178bccedf53Smrg		else
179bccedf53Smrg		    os=netbsdelf
180bccedf53Smrg		fi
181bccedf53Smrg		;;
182bccedf53Smrg	    *)
183bccedf53Smrg	        os=netbsd
184bccedf53Smrg		;;
185bccedf53Smrg	esac
186bccedf53Smrg	# The OS release
187bccedf53Smrg	# Debian GNU/NetBSD machines have a different userland, and
188bccedf53Smrg	# thus, need a distinct triplet. However, they do not need
189bccedf53Smrg	# kernel version information, so it can be replaced with a
190bccedf53Smrg	# suitable tag, in the style of linux-gnu.
191bccedf53Smrg	case "${UNAME_VERSION}" in
192bccedf53Smrg	    Debian*)
193bccedf53Smrg		release='-gnu'
194bccedf53Smrg		;;
195bccedf53Smrg	    *)
196bccedf53Smrg		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
197bccedf53Smrg		;;
198bccedf53Smrg	esac
199bccedf53Smrg	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
200bccedf53Smrg	# contains redundant information, the shorter form:
201bccedf53Smrg	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
202bccedf53Smrg	echo "${machine}-${os}${release}"
2037c5f6000Smrg	exit ;;
204bccedf53Smrg    *:OpenBSD:*:*)
2057c5f6000Smrg	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
2067c5f6000Smrg	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
2077c5f6000Smrg	exit ;;
2087c5f6000Smrg    *:ekkoBSD:*:*)
2097c5f6000Smrg	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
2107c5f6000Smrg	exit ;;
2117c5f6000Smrg    *:SolidBSD:*:*)
2127c5f6000Smrg	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
2137c5f6000Smrg	exit ;;
2147c5f6000Smrg    macppc:MirBSD:*:*)
2157c5f6000Smrg	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
2167c5f6000Smrg	exit ;;
2177c5f6000Smrg    *:MirBSD:*:*)
2187c5f6000Smrg	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
2197c5f6000Smrg	exit ;;
220bccedf53Smrg    alpha:OSF1:*:*)
2217c5f6000Smrg	case $UNAME_RELEASE in
2227c5f6000Smrg	*4.0)
223bccedf53Smrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
2247c5f6000Smrg		;;
2257c5f6000Smrg	*5.*)
2267c5f6000Smrg	        UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
2277c5f6000Smrg		;;
2287c5f6000Smrg	esac
229bccedf53Smrg	# According to Compaq, /usr/sbin/psrinfo has been available on
230bccedf53Smrg	# OSF/1 and Tru64 systems produced since 1995.  I hope that
231bccedf53Smrg	# covers most systems running today.  This code pipes the CPU
232bccedf53Smrg	# types through head -n 1, so we only detect the type of CPU 0.
233bccedf53Smrg	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
234bccedf53Smrg	case "$ALPHA_CPU_TYPE" in
235bccedf53Smrg	    "EV4 (21064)")
236bccedf53Smrg		UNAME_MACHINE="alpha" ;;
237bccedf53Smrg	    "EV4.5 (21064)")
238bccedf53Smrg		UNAME_MACHINE="alpha" ;;
239bccedf53Smrg	    "LCA4 (21066/21068)")
240bccedf53Smrg		UNAME_MACHINE="alpha" ;;
241bccedf53Smrg	    "EV5 (21164)")
242bccedf53Smrg		UNAME_MACHINE="alphaev5" ;;
243bccedf53Smrg	    "EV5.6 (21164A)")
244bccedf53Smrg		UNAME_MACHINE="alphaev56" ;;
245bccedf53Smrg	    "EV5.6 (21164PC)")
246bccedf53Smrg		UNAME_MACHINE="alphapca56" ;;
247bccedf53Smrg	    "EV5.7 (21164PC)")
248bccedf53Smrg		UNAME_MACHINE="alphapca57" ;;
249bccedf53Smrg	    "EV6 (21264)")
250bccedf53Smrg		UNAME_MACHINE="alphaev6" ;;
251bccedf53Smrg	    "EV6.7 (21264A)")
252bccedf53Smrg		UNAME_MACHINE="alphaev67" ;;
253bccedf53Smrg	    "EV6.8CB (21264C)")
254bccedf53Smrg		UNAME_MACHINE="alphaev68" ;;
255bccedf53Smrg	    "EV6.8AL (21264B)")
256bccedf53Smrg		UNAME_MACHINE="alphaev68" ;;
257bccedf53Smrg	    "EV6.8CX (21264D)")
258bccedf53Smrg		UNAME_MACHINE="alphaev68" ;;
259bccedf53Smrg	    "EV6.9A (21264/EV69A)")
260bccedf53Smrg		UNAME_MACHINE="alphaev69" ;;
261bccedf53Smrg	    "EV7 (21364)")
262bccedf53Smrg		UNAME_MACHINE="alphaev7" ;;
263bccedf53Smrg	    "EV7.9 (21364A)")
264bccedf53Smrg		UNAME_MACHINE="alphaev79" ;;
265bccedf53Smrg	esac
2667c5f6000Smrg	# A Pn.n version is a patched version.
267bccedf53Smrg	# A Vn.n version is a released version.
268bccedf53Smrg	# A Tn.n version is a released field test version.
269bccedf53Smrg	# A Xn.n version is an unreleased experimental baselevel.
270bccedf53Smrg	# 1.2 uses "1.2" for uname -r.
2717c5f6000Smrg	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
2727c5f6000Smrg	exit ;;
273bccedf53Smrg    Alpha\ *:Windows_NT*:*)
274bccedf53Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
275bccedf53Smrg	# Should we change UNAME_MACHINE based on the output of uname instead
276bccedf53Smrg	# of the specific Alpha model?
277bccedf53Smrg	echo alpha-pc-interix
2787c5f6000Smrg	exit ;;
279bccedf53Smrg    21064:Windows_NT:50:3)
280bccedf53Smrg	echo alpha-dec-winnt3.5
2817c5f6000Smrg	exit ;;
282bccedf53Smrg    Amiga*:UNIX_System_V:4.0:*)
283bccedf53Smrg	echo m68k-unknown-sysv4
2847c5f6000Smrg	exit ;;
285bccedf53Smrg    *:[Aa]miga[Oo][Ss]:*:*)
286bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-amigaos
2877c5f6000Smrg	exit ;;
288bccedf53Smrg    *:[Mm]orph[Oo][Ss]:*:*)
289bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-morphos
2907c5f6000Smrg	exit ;;
291bccedf53Smrg    *:OS/390:*:*)
292bccedf53Smrg	echo i370-ibm-openedition
2937c5f6000Smrg	exit ;;
2947c5f6000Smrg    *:z/VM:*:*)
2957c5f6000Smrg	echo s390-ibm-zvmoe
2967c5f6000Smrg	exit ;;
2977c5f6000Smrg    *:OS400:*:*)
2987c5f6000Smrg        echo powerpc-ibm-os400
2997c5f6000Smrg	exit ;;
300bccedf53Smrg    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
301bccedf53Smrg	echo arm-acorn-riscix${UNAME_RELEASE}
3027c5f6000Smrg	exit ;;
3037c5f6000Smrg    arm:riscos:*:*|arm:RISCOS:*:*)
3047c5f6000Smrg	echo arm-unknown-riscos
3057c5f6000Smrg	exit ;;
306bccedf53Smrg    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
307bccedf53Smrg	echo hppa1.1-hitachi-hiuxmpp
3087c5f6000Smrg	exit ;;
309bccedf53Smrg    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
310bccedf53Smrg	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
311bccedf53Smrg	if test "`(/bin/universe) 2>/dev/null`" = att ; then
312bccedf53Smrg		echo pyramid-pyramid-sysv3
313bccedf53Smrg	else
314bccedf53Smrg		echo pyramid-pyramid-bsd
315bccedf53Smrg	fi
3167c5f6000Smrg	exit ;;
317bccedf53Smrg    NILE*:*:*:dcosx)
318bccedf53Smrg	echo pyramid-pyramid-svr4
3197c5f6000Smrg	exit ;;
320bccedf53Smrg    DRS?6000:unix:4.0:6*)
321bccedf53Smrg	echo sparc-icl-nx6
3227c5f6000Smrg	exit ;;
3237c5f6000Smrg    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
324bccedf53Smrg	case `/usr/bin/uname -p` in
3257c5f6000Smrg	    sparc) echo sparc-icl-nx7; exit ;;
326bccedf53Smrg	esac ;;
3277c5f6000Smrg    s390x:SunOS:*:*)
3287c5f6000Smrg	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3297c5f6000Smrg	exit ;;
330bccedf53Smrg    sun4H:SunOS:5.*:*)
331bccedf53Smrg	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3327c5f6000Smrg	exit ;;
333bccedf53Smrg    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
334bccedf53Smrg	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3357c5f6000Smrg	exit ;;
3367c5f6000Smrg    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
3377c5f6000Smrg	eval $set_cc_for_build
3387c5f6000Smrg	SUN_ARCH="i386"
3397c5f6000Smrg	# If there is a compiler, see if it is configured for 64-bit objects.
3407c5f6000Smrg	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
3417c5f6000Smrg	# This test works for both compilers.
3427c5f6000Smrg	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
3437c5f6000Smrg	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
3447c5f6000Smrg		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
3457c5f6000Smrg		grep IS_64BIT_ARCH >/dev/null
3467c5f6000Smrg	    then
3477c5f6000Smrg		SUN_ARCH="x86_64"
3487c5f6000Smrg	    fi
3497c5f6000Smrg	fi
3507c5f6000Smrg	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3517c5f6000Smrg	exit ;;
352bccedf53Smrg    sun4*:SunOS:6*:*)
353bccedf53Smrg	# According to config.sub, this is the proper way to canonicalize
354bccedf53Smrg	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
355bccedf53Smrg	# it's likely to be more like Solaris than SunOS4.
356bccedf53Smrg	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
3577c5f6000Smrg	exit ;;
358bccedf53Smrg    sun4*:SunOS:*:*)
359bccedf53Smrg	case "`/usr/bin/arch -k`" in
360bccedf53Smrg	    Series*|S4*)
361bccedf53Smrg		UNAME_RELEASE=`uname -v`
362bccedf53Smrg		;;
363bccedf53Smrg	esac
364bccedf53Smrg	# Japanese Language versions have a version number like `4.1.3-JL'.
365bccedf53Smrg	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
3667c5f6000Smrg	exit ;;
367bccedf53Smrg    sun3*:SunOS:*:*)
368bccedf53Smrg	echo m68k-sun-sunos${UNAME_RELEASE}
3697c5f6000Smrg	exit ;;
370bccedf53Smrg    sun*:*:4.2BSD:*)
371bccedf53Smrg	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
372bccedf53Smrg	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
373bccedf53Smrg	case "`/bin/arch`" in
374bccedf53Smrg	    sun3)
375bccedf53Smrg		echo m68k-sun-sunos${UNAME_RELEASE}
376bccedf53Smrg		;;
377bccedf53Smrg	    sun4)
378bccedf53Smrg		echo sparc-sun-sunos${UNAME_RELEASE}
379bccedf53Smrg		;;
380bccedf53Smrg	esac
3817c5f6000Smrg	exit ;;
382bccedf53Smrg    aushp:SunOS:*:*)
383bccedf53Smrg	echo sparc-auspex-sunos${UNAME_RELEASE}
3847c5f6000Smrg	exit ;;
385bccedf53Smrg    # The situation for MiNT is a little confusing.  The machine name
386bccedf53Smrg    # can be virtually everything (everything which is not
387bccedf53Smrg    # "atarist" or "atariste" at least should have a processor
388bccedf53Smrg    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
389bccedf53Smrg    # to the lowercase version "mint" (or "freemint").  Finally
390bccedf53Smrg    # the system name "TOS" denotes a system which is actually not
391bccedf53Smrg    # MiNT.  But MiNT is downward compatible to TOS, so this should
392bccedf53Smrg    # be no problem.
393bccedf53Smrg    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
394bccedf53Smrg        echo m68k-atari-mint${UNAME_RELEASE}
3957c5f6000Smrg	exit ;;
396bccedf53Smrg    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
397bccedf53Smrg	echo m68k-atari-mint${UNAME_RELEASE}
3987c5f6000Smrg        exit ;;
399bccedf53Smrg    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
400bccedf53Smrg        echo m68k-atari-mint${UNAME_RELEASE}
4017c5f6000Smrg	exit ;;
402bccedf53Smrg    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
403bccedf53Smrg        echo m68k-milan-mint${UNAME_RELEASE}
4047c5f6000Smrg        exit ;;
405bccedf53Smrg    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
406bccedf53Smrg        echo m68k-hades-mint${UNAME_RELEASE}
4077c5f6000Smrg        exit ;;
408bccedf53Smrg    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
409bccedf53Smrg        echo m68k-unknown-mint${UNAME_RELEASE}
4107c5f6000Smrg        exit ;;
4117c5f6000Smrg    m68k:machten:*:*)
4127c5f6000Smrg	echo m68k-apple-machten${UNAME_RELEASE}
4137c5f6000Smrg	exit ;;
414bccedf53Smrg    powerpc:machten:*:*)
415bccedf53Smrg	echo powerpc-apple-machten${UNAME_RELEASE}
4167c5f6000Smrg	exit ;;
417bccedf53Smrg    RISC*:Mach:*:*)
418bccedf53Smrg	echo mips-dec-mach_bsd4.3
4197c5f6000Smrg	exit ;;
420bccedf53Smrg    RISC*:ULTRIX:*:*)
421bccedf53Smrg	echo mips-dec-ultrix${UNAME_RELEASE}
4227c5f6000Smrg	exit ;;
423bccedf53Smrg    VAX*:ULTRIX*:*:*)
424bccedf53Smrg	echo vax-dec-ultrix${UNAME_RELEASE}
4257c5f6000Smrg	exit ;;
426bccedf53Smrg    2020:CLIX:*:* | 2430:CLIX:*:*)
427bccedf53Smrg	echo clipper-intergraph-clix${UNAME_RELEASE}
4287c5f6000Smrg	exit ;;
429bccedf53Smrg    mips:*:*:UMIPS | mips:*:*:RISCos)
430bccedf53Smrg	eval $set_cc_for_build
431bccedf53Smrg	sed 's/^	//' << EOF >$dummy.c
432bccedf53Smrg#ifdef __cplusplus
433bccedf53Smrg#include <stdio.h>  /* for printf() prototype */
434bccedf53Smrg	int main (int argc, char *argv[]) {
435bccedf53Smrg#else
436bccedf53Smrg	int main (argc, argv) int argc; char *argv[]; {
437bccedf53Smrg#endif
438bccedf53Smrg	#if defined (host_mips) && defined (MIPSEB)
439bccedf53Smrg	#if defined (SYSTYPE_SYSV)
440bccedf53Smrg	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
441bccedf53Smrg	#endif
442bccedf53Smrg	#if defined (SYSTYPE_SVR4)
443bccedf53Smrg	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
444bccedf53Smrg	#endif
445bccedf53Smrg	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
446bccedf53Smrg	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
447bccedf53Smrg	#endif
448bccedf53Smrg	#endif
449bccedf53Smrg	  exit (-1);
450bccedf53Smrg	}
451bccedf53SmrgEOF
4527c5f6000Smrg	$CC_FOR_BUILD -o $dummy $dummy.c &&
4537c5f6000Smrg	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
4547c5f6000Smrg	  SYSTEM_NAME=`$dummy $dummyarg` &&
4557c5f6000Smrg	    { echo "$SYSTEM_NAME"; exit; }
456bccedf53Smrg	echo mips-mips-riscos${UNAME_RELEASE}
4577c5f6000Smrg	exit ;;
458bccedf53Smrg    Motorola:PowerMAX_OS:*:*)
459bccedf53Smrg	echo powerpc-motorola-powermax
4607c5f6000Smrg	exit ;;
461bccedf53Smrg    Motorola:*:4.3:PL8-*)
462bccedf53Smrg	echo powerpc-harris-powermax
4637c5f6000Smrg	exit ;;
464bccedf53Smrg    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
465bccedf53Smrg	echo powerpc-harris-powermax
4667c5f6000Smrg	exit ;;
467bccedf53Smrg    Night_Hawk:Power_UNIX:*:*)
468bccedf53Smrg	echo powerpc-harris-powerunix
4697c5f6000Smrg	exit ;;
470bccedf53Smrg    m88k:CX/UX:7*:*)
471bccedf53Smrg	echo m88k-harris-cxux7
4727c5f6000Smrg	exit ;;
473bccedf53Smrg    m88k:*:4*:R4*)
474bccedf53Smrg	echo m88k-motorola-sysv4
4757c5f6000Smrg	exit ;;
476bccedf53Smrg    m88k:*:3*:R3*)
477bccedf53Smrg	echo m88k-motorola-sysv3
4787c5f6000Smrg	exit ;;
479bccedf53Smrg    AViiON:dgux:*:*)
480bccedf53Smrg        # DG/UX returns AViiON for all architectures
481bccedf53Smrg        UNAME_PROCESSOR=`/usr/bin/uname -p`
482bccedf53Smrg	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
483bccedf53Smrg	then
484bccedf53Smrg	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
485bccedf53Smrg	       [ ${TARGET_BINARY_INTERFACE}x = x ]
486bccedf53Smrg	    then
487bccedf53Smrg		echo m88k-dg-dgux${UNAME_RELEASE}
488bccedf53Smrg	    else
489bccedf53Smrg		echo m88k-dg-dguxbcs${UNAME_RELEASE}
490bccedf53Smrg	    fi
491bccedf53Smrg	else
492bccedf53Smrg	    echo i586-dg-dgux${UNAME_RELEASE}
493bccedf53Smrg	fi
4947c5f6000Smrg 	exit ;;
495bccedf53Smrg    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
496bccedf53Smrg	echo m88k-dolphin-sysv3
4977c5f6000Smrg	exit ;;
498bccedf53Smrg    M88*:*:R3*:*)
499bccedf53Smrg	# Delta 88k system running SVR3
500bccedf53Smrg	echo m88k-motorola-sysv3
5017c5f6000Smrg	exit ;;
502bccedf53Smrg    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
503bccedf53Smrg	echo m88k-tektronix-sysv3
5047c5f6000Smrg	exit ;;
505bccedf53Smrg    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
506bccedf53Smrg	echo m68k-tektronix-bsd
5077c5f6000Smrg	exit ;;
508bccedf53Smrg    *:IRIX*:*:*)
509bccedf53Smrg	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
5107c5f6000Smrg	exit ;;
511bccedf53Smrg    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
5127c5f6000Smrg	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
5137c5f6000Smrg	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
514bccedf53Smrg    i*86:AIX:*:*)
515bccedf53Smrg	echo i386-ibm-aix
5167c5f6000Smrg	exit ;;
517bccedf53Smrg    ia64:AIX:*:*)
518bccedf53Smrg	if [ -x /usr/bin/oslevel ] ; then
519bccedf53Smrg		IBM_REV=`/usr/bin/oslevel`
520bccedf53Smrg	else
521bccedf53Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
522bccedf53Smrg	fi
523bccedf53Smrg	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
5247c5f6000Smrg	exit ;;
525bccedf53Smrg    *:AIX:2:3)
526bccedf53Smrg	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
527bccedf53Smrg		eval $set_cc_for_build
528bccedf53Smrg		sed 's/^		//' << EOF >$dummy.c
529bccedf53Smrg		#include <sys/systemcfg.h>
530bccedf53Smrg
531bccedf53Smrg		main()
532bccedf53Smrg			{
533bccedf53Smrg			if (!__power_pc())
534bccedf53Smrg				exit(1);
535bccedf53Smrg			puts("powerpc-ibm-aix3.2.5");
536bccedf53Smrg			exit(0);
537bccedf53Smrg			}
538bccedf53SmrgEOF
5397c5f6000Smrg		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
5407c5f6000Smrg		then
5417c5f6000Smrg			echo "$SYSTEM_NAME"
5427c5f6000Smrg		else
5437c5f6000Smrg			echo rs6000-ibm-aix3.2.5
5447c5f6000Smrg		fi
545bccedf53Smrg	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
546bccedf53Smrg		echo rs6000-ibm-aix3.2.4
547bccedf53Smrg	else
548bccedf53Smrg		echo rs6000-ibm-aix3.2
549bccedf53Smrg	fi
5507c5f6000Smrg	exit ;;
5517c5f6000Smrg    *:AIX:*:[456])
552bccedf53Smrg	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
553bccedf53Smrg	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
554bccedf53Smrg		IBM_ARCH=rs6000
555bccedf53Smrg	else
556bccedf53Smrg		IBM_ARCH=powerpc
557bccedf53Smrg	fi
558bccedf53Smrg	if [ -x /usr/bin/oslevel ] ; then
559bccedf53Smrg		IBM_REV=`/usr/bin/oslevel`
560bccedf53Smrg	else
561bccedf53Smrg		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
562bccedf53Smrg	fi
563bccedf53Smrg	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
5647c5f6000Smrg	exit ;;
565bccedf53Smrg    *:AIX:*:*)
566bccedf53Smrg	echo rs6000-ibm-aix
5677c5f6000Smrg	exit ;;
568bccedf53Smrg    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
569bccedf53Smrg	echo romp-ibm-bsd4.4
5707c5f6000Smrg	exit ;;
571bccedf53Smrg    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
572bccedf53Smrg	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
5737c5f6000Smrg	exit ;;                             # report: romp-ibm BSD 4.3
574bccedf53Smrg    *:BOSX:*:*)
575bccedf53Smrg	echo rs6000-bull-bosx
5767c5f6000Smrg	exit ;;
577bccedf53Smrg    DPX/2?00:B.O.S.:*:*)
578bccedf53Smrg	echo m68k-bull-sysv3
5797c5f6000Smrg	exit ;;
580bccedf53Smrg    9000/[34]??:4.3bsd:1.*:*)
581bccedf53Smrg	echo m68k-hp-bsd
5827c5f6000Smrg	exit ;;
583bccedf53Smrg    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
584bccedf53Smrg	echo m68k-hp-bsd4.4
5857c5f6000Smrg	exit ;;
586bccedf53Smrg    9000/[34678]??:HP-UX:*:*)
587bccedf53Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
588bccedf53Smrg	case "${UNAME_MACHINE}" in
589bccedf53Smrg	    9000/31? )            HP_ARCH=m68000 ;;
590bccedf53Smrg	    9000/[34]?? )         HP_ARCH=m68k ;;
591bccedf53Smrg	    9000/[678][0-9][0-9])
592bccedf53Smrg		if [ -x /usr/bin/getconf ]; then
593bccedf53Smrg		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
594bccedf53Smrg                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
595bccedf53Smrg                    case "${sc_cpu_version}" in
596bccedf53Smrg                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
597bccedf53Smrg                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
598bccedf53Smrg                      532)                      # CPU_PA_RISC2_0
599bccedf53Smrg                        case "${sc_kernel_bits}" in
600bccedf53Smrg                          32) HP_ARCH="hppa2.0n" ;;
601bccedf53Smrg                          64) HP_ARCH="hppa2.0w" ;;
602bccedf53Smrg			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
603bccedf53Smrg                        esac ;;
604bccedf53Smrg                    esac
605bccedf53Smrg		fi
606bccedf53Smrg		if [ "${HP_ARCH}" = "" ]; then
607bccedf53Smrg		    eval $set_cc_for_build
608bccedf53Smrg		    sed 's/^              //' << EOF >$dummy.c
609bccedf53Smrg
610bccedf53Smrg              #define _HPUX_SOURCE
611bccedf53Smrg              #include <stdlib.h>
612bccedf53Smrg              #include <unistd.h>
613bccedf53Smrg
614bccedf53Smrg              int main ()
615bccedf53Smrg              {
616bccedf53Smrg              #if defined(_SC_KERNEL_BITS)
617bccedf53Smrg                  long bits = sysconf(_SC_KERNEL_BITS);
618bccedf53Smrg              #endif
619bccedf53Smrg                  long cpu  = sysconf (_SC_CPU_VERSION);
620bccedf53Smrg
621bccedf53Smrg                  switch (cpu)
622bccedf53Smrg              	{
623bccedf53Smrg              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
624bccedf53Smrg              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
625bccedf53Smrg              	case CPU_PA_RISC2_0:
626bccedf53Smrg              #if defined(_SC_KERNEL_BITS)
627bccedf53Smrg              	    switch (bits)
628bccedf53Smrg              		{
629bccedf53Smrg              		case 64: puts ("hppa2.0w"); break;
630bccedf53Smrg              		case 32: puts ("hppa2.0n"); break;
631bccedf53Smrg              		default: puts ("hppa2.0"); break;
632bccedf53Smrg              		} break;
633bccedf53Smrg              #else  /* !defined(_SC_KERNEL_BITS) */
634bccedf53Smrg              	    puts ("hppa2.0"); break;
635bccedf53Smrg              #endif
636bccedf53Smrg              	default: puts ("hppa1.0"); break;
637bccedf53Smrg              	}
638bccedf53Smrg                  exit (0);
639bccedf53Smrg              }
640bccedf53SmrgEOF
641bccedf53Smrg		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
642bccedf53Smrg		    test -z "$HP_ARCH" && HP_ARCH=hppa
643bccedf53Smrg		fi ;;
644bccedf53Smrg	esac
645bccedf53Smrg	if [ ${HP_ARCH} = "hppa2.0w" ]
646bccedf53Smrg	then
6477c5f6000Smrg	    eval $set_cc_for_build
6487c5f6000Smrg
6497c5f6000Smrg	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
6507c5f6000Smrg	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
6517c5f6000Smrg	    # generating 64-bit code.  GNU and HP use different nomenclature:
6527c5f6000Smrg	    #
6537c5f6000Smrg	    # $ CC_FOR_BUILD=cc ./config.guess
6547c5f6000Smrg	    # => hppa2.0w-hp-hpux11.23
6557c5f6000Smrg	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
6567c5f6000Smrg	    # => hppa64-hp-hpux11.23
6577c5f6000Smrg
6587c5f6000Smrg	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
6597c5f6000Smrg		grep __LP64__ >/dev/null
660bccedf53Smrg	    then
661bccedf53Smrg		HP_ARCH="hppa2.0w"
662bccedf53Smrg	    else
663bccedf53Smrg		HP_ARCH="hppa64"
664bccedf53Smrg	    fi
665bccedf53Smrg	fi
666bccedf53Smrg	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
6677c5f6000Smrg	exit ;;
668bccedf53Smrg    ia64:HP-UX:*:*)
669bccedf53Smrg	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
670bccedf53Smrg	echo ia64-hp-hpux${HPUX_REV}
6717c5f6000Smrg	exit ;;
672bccedf53Smrg    3050*:HI-UX:*:*)
673bccedf53Smrg	eval $set_cc_for_build
674bccedf53Smrg	sed 's/^	//' << EOF >$dummy.c
675bccedf53Smrg	#include <unistd.h>
676bccedf53Smrg	int
677bccedf53Smrg	main ()
678bccedf53Smrg	{
679bccedf53Smrg	  long cpu = sysconf (_SC_CPU_VERSION);
680bccedf53Smrg	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
681bccedf53Smrg	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
682bccedf53Smrg	     results, however.  */
683bccedf53Smrg	  if (CPU_IS_PA_RISC (cpu))
684bccedf53Smrg	    {
685bccedf53Smrg	      switch (cpu)
686bccedf53Smrg		{
687bccedf53Smrg		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
688bccedf53Smrg		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
689bccedf53Smrg		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
690bccedf53Smrg		  default: puts ("hppa-hitachi-hiuxwe2"); break;
691bccedf53Smrg		}
692bccedf53Smrg	    }
693bccedf53Smrg	  else if (CPU_IS_HP_MC68K (cpu))
694bccedf53Smrg	    puts ("m68k-hitachi-hiuxwe2");
695bccedf53Smrg	  else puts ("unknown-hitachi-hiuxwe2");
696bccedf53Smrg	  exit (0);
697bccedf53Smrg	}
698bccedf53SmrgEOF
6997c5f6000Smrg	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
7007c5f6000Smrg		{ echo "$SYSTEM_NAME"; exit; }
701bccedf53Smrg	echo unknown-hitachi-hiuxwe2
7027c5f6000Smrg	exit ;;
703bccedf53Smrg    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
704bccedf53Smrg	echo hppa1.1-hp-bsd
7057c5f6000Smrg	exit ;;
706bccedf53Smrg    9000/8??:4.3bsd:*:*)
707bccedf53Smrg	echo hppa1.0-hp-bsd
7087c5f6000Smrg	exit ;;
709bccedf53Smrg    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
710bccedf53Smrg	echo hppa1.0-hp-mpeix
7117c5f6000Smrg	exit ;;
712bccedf53Smrg    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
713bccedf53Smrg	echo hppa1.1-hp-osf
7147c5f6000Smrg	exit ;;
715bccedf53Smrg    hp8??:OSF1:*:*)
716bccedf53Smrg	echo hppa1.0-hp-osf
7177c5f6000Smrg	exit ;;
718bccedf53Smrg    i*86:OSF1:*:*)
719bccedf53Smrg	if [ -x /usr/sbin/sysversion ] ; then
720bccedf53Smrg	    echo ${UNAME_MACHINE}-unknown-osf1mk
721bccedf53Smrg	else
722bccedf53Smrg	    echo ${UNAME_MACHINE}-unknown-osf1
723bccedf53Smrg	fi
7247c5f6000Smrg	exit ;;
725bccedf53Smrg    parisc*:Lites*:*:*)
726bccedf53Smrg	echo hppa1.1-hp-lites
7277c5f6000Smrg	exit ;;
728bccedf53Smrg    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
729bccedf53Smrg	echo c1-convex-bsd
7307c5f6000Smrg        exit ;;
731bccedf53Smrg    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
732bccedf53Smrg	if getsysinfo -f scalar_acc
733bccedf53Smrg	then echo c32-convex-bsd
734bccedf53Smrg	else echo c2-convex-bsd
735bccedf53Smrg	fi
7367c5f6000Smrg        exit ;;
737bccedf53Smrg    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
738bccedf53Smrg	echo c34-convex-bsd
7397c5f6000Smrg        exit ;;
740bccedf53Smrg    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
741bccedf53Smrg	echo c38-convex-bsd
7427c5f6000Smrg        exit ;;
743bccedf53Smrg    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
744bccedf53Smrg	echo c4-convex-bsd
7457c5f6000Smrg        exit ;;
746bccedf53Smrg    CRAY*Y-MP:*:*:*)
747bccedf53Smrg	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7487c5f6000Smrg	exit ;;
749bccedf53Smrg    CRAY*[A-Z]90:*:*:*)
750bccedf53Smrg	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
751bccedf53Smrg	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
752bccedf53Smrg	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
753bccedf53Smrg	      -e 's/\.[^.]*$/.X/'
7547c5f6000Smrg	exit ;;
755bccedf53Smrg    CRAY*TS:*:*:*)
756bccedf53Smrg	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7577c5f6000Smrg	exit ;;
758bccedf53Smrg    CRAY*T3E:*:*:*)
759bccedf53Smrg	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7607c5f6000Smrg	exit ;;
761bccedf53Smrg    CRAY*SV1:*:*:*)
762bccedf53Smrg	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7637c5f6000Smrg	exit ;;
764bccedf53Smrg    *:UNICOS/mp:*:*)
7657c5f6000Smrg	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
7667c5f6000Smrg	exit ;;
767bccedf53Smrg    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
768bccedf53Smrg	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
769bccedf53Smrg        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
770bccedf53Smrg        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
771bccedf53Smrg        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
7727c5f6000Smrg        exit ;;
7737c5f6000Smrg    5000:UNIX_System_V:4.*:*)
7747c5f6000Smrg        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
7757c5f6000Smrg        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
7767c5f6000Smrg        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
7777c5f6000Smrg	exit ;;
778bccedf53Smrg    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
779bccedf53Smrg	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
7807c5f6000Smrg	exit ;;
781bccedf53Smrg    sparc*:BSD/OS:*:*)
782bccedf53Smrg	echo sparc-unknown-bsdi${UNAME_RELEASE}
7837c5f6000Smrg	exit ;;
784bccedf53Smrg    *:BSD/OS:*:*)
785bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
7867c5f6000Smrg	exit ;;
7877c5f6000Smrg    *:FreeBSD:*:*)
7887c5f6000Smrg	case ${UNAME_MACHINE} in
7897c5f6000Smrg	    pc98)
7907c5f6000Smrg		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7917c5f6000Smrg	    amd64)
7927c5f6000Smrg		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7937c5f6000Smrg	    *)
7947c5f6000Smrg		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
7957c5f6000Smrg	esac
7967c5f6000Smrg	exit ;;
797bccedf53Smrg    i*:CYGWIN*:*)
798bccedf53Smrg	echo ${UNAME_MACHINE}-pc-cygwin
7997c5f6000Smrg	exit ;;
8007c5f6000Smrg    *:MINGW*:*)
801bccedf53Smrg	echo ${UNAME_MACHINE}-pc-mingw32
8027c5f6000Smrg	exit ;;
8037c5f6000Smrg    i*:windows32*:*)
8047c5f6000Smrg    	# uname -m includes "-pc" on this system.
8057c5f6000Smrg    	echo ${UNAME_MACHINE}-mingw32
8067c5f6000Smrg	exit ;;
807bccedf53Smrg    i*:PW*:*)
808bccedf53Smrg	echo ${UNAME_MACHINE}-pc-pw32
8097c5f6000Smrg	exit ;;
8107c5f6000Smrg    *:Interix*:[3456]*)
8117c5f6000Smrg    	case ${UNAME_MACHINE} in
8127c5f6000Smrg	    x86)
8137c5f6000Smrg		echo i586-pc-interix${UNAME_RELEASE}
8147c5f6000Smrg		exit ;;
8157c5f6000Smrg	    EM64T | authenticamd | genuineintel)
8167c5f6000Smrg		echo x86_64-unknown-interix${UNAME_RELEASE}
8177c5f6000Smrg		exit ;;
8187c5f6000Smrg	    IA64)
8197c5f6000Smrg		echo ia64-unknown-interix${UNAME_RELEASE}
8207c5f6000Smrg		exit ;;
8217c5f6000Smrg	esac ;;
822bccedf53Smrg    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
823bccedf53Smrg	echo i${UNAME_MACHINE}-pc-mks
8247c5f6000Smrg	exit ;;
825bccedf53Smrg    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
826bccedf53Smrg	# How do we know it's Interix rather than the generic POSIX subsystem?
827bccedf53Smrg	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
828bccedf53Smrg	# UNAME_MACHINE based on the output of uname instead of i386?
829bccedf53Smrg	echo i586-pc-interix
8307c5f6000Smrg	exit ;;
831bccedf53Smrg    i*:UWIN*:*)
832bccedf53Smrg	echo ${UNAME_MACHINE}-pc-uwin
8337c5f6000Smrg	exit ;;
8347c5f6000Smrg    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
8357c5f6000Smrg	echo x86_64-unknown-cygwin
8367c5f6000Smrg	exit ;;
837bccedf53Smrg    p*:CYGWIN*:*)
838bccedf53Smrg	echo powerpcle-unknown-cygwin
8397c5f6000Smrg	exit ;;
840bccedf53Smrg    prep*:SunOS:5.*:*)
841bccedf53Smrg	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
8427c5f6000Smrg	exit ;;
843bccedf53Smrg    *:GNU:*:*)
8447c5f6000Smrg	# the GNU system
845bccedf53Smrg	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
8467c5f6000Smrg	exit ;;
8477c5f6000Smrg    *:GNU/*:*:*)
8487c5f6000Smrg	# other systems with GNU libc and userland
8497c5f6000Smrg	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
8507c5f6000Smrg	exit ;;
851bccedf53Smrg    i*86:Minix:*:*)
852bccedf53Smrg	echo ${UNAME_MACHINE}-pc-minix
8537c5f6000Smrg	exit ;;
854bccedf53Smrg    arm*:Linux:*:*)
8557c5f6000Smrg	eval $set_cc_for_build
8567c5f6000Smrg	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
8577c5f6000Smrg	    | grep -q __ARM_EABI__
8587c5f6000Smrg	then
8597c5f6000Smrg	    echo ${UNAME_MACHINE}-unknown-linux-gnu
8607c5f6000Smrg	else
8617c5f6000Smrg	    echo ${UNAME_MACHINE}-unknown-linux-gnueabi
8627c5f6000Smrg	fi
8637c5f6000Smrg	exit ;;
8647c5f6000Smrg    avr32*:Linux:*:*)
865bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
8667c5f6000Smrg	exit ;;
867bccedf53Smrg    cris:Linux:*:*)
868bccedf53Smrg	echo cris-axis-linux-gnu
8697c5f6000Smrg	exit ;;
8707c5f6000Smrg    crisv32:Linux:*:*)
8717c5f6000Smrg	echo crisv32-axis-linux-gnu
8727c5f6000Smrg	exit ;;
8737c5f6000Smrg    frv:Linux:*:*)
8747c5f6000Smrg    	echo frv-unknown-linux-gnu
8757c5f6000Smrg	exit ;;
876bccedf53Smrg    ia64:Linux:*:*)
8777c5f6000Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
8787c5f6000Smrg	exit ;;
8797c5f6000Smrg    m32r*:Linux:*:*)
8807c5f6000Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
8817c5f6000Smrg	exit ;;
882bccedf53Smrg    m68*:Linux:*:*)
883bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
8847c5f6000Smrg	exit ;;
885bccedf53Smrg    mips:Linux:*:*)
886bccedf53Smrg	eval $set_cc_for_build
887bccedf53Smrg	sed 's/^	//' << EOF >$dummy.c
888bccedf53Smrg	#undef CPU
889bccedf53Smrg	#undef mips
890bccedf53Smrg	#undef mipsel
891bccedf53Smrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
892bccedf53Smrg	CPU=mipsel
893bccedf53Smrg	#else
894bccedf53Smrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
895bccedf53Smrg	CPU=mips
896bccedf53Smrg	#else
897bccedf53Smrg	CPU=
898bccedf53Smrg	#endif
899bccedf53Smrg	#endif
900bccedf53SmrgEOF
9017c5f6000Smrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
9027c5f6000Smrg	    /^CPU/{
9037c5f6000Smrg		s: ::g
9047c5f6000Smrg		p
9057c5f6000Smrg	    }'`"
9067c5f6000Smrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
907bccedf53Smrg	;;
908bccedf53Smrg    mips64:Linux:*:*)
909bccedf53Smrg	eval $set_cc_for_build
910bccedf53Smrg	sed 's/^	//' << EOF >$dummy.c
911bccedf53Smrg	#undef CPU
912bccedf53Smrg	#undef mips64
913bccedf53Smrg	#undef mips64el
914bccedf53Smrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
915bccedf53Smrg	CPU=mips64el
916bccedf53Smrg	#else
917bccedf53Smrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
918bccedf53Smrg	CPU=mips64
919bccedf53Smrg	#else
920bccedf53Smrg	CPU=
921bccedf53Smrg	#endif
922bccedf53Smrg	#endif
923bccedf53SmrgEOF
9247c5f6000Smrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
9257c5f6000Smrg	    /^CPU/{
9267c5f6000Smrg		s: ::g
9277c5f6000Smrg		p
9287c5f6000Smrg	    }'`"
9297c5f6000Smrg	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
930bccedf53Smrg	;;
9317c5f6000Smrg    or32:Linux:*:*)
9327c5f6000Smrg	echo or32-unknown-linux-gnu
9337c5f6000Smrg	exit ;;
934bccedf53Smrg    ppc:Linux:*:*)
9357c5f6000Smrg	echo powerpc-unknown-linux-gnu
9367c5f6000Smrg	exit ;;
937bccedf53Smrg    ppc64:Linux:*:*)
9387c5f6000Smrg	echo powerpc64-unknown-linux-gnu
9397c5f6000Smrg	exit ;;
940bccedf53Smrg    alpha:Linux:*:*)
941bccedf53Smrg	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
942bccedf53Smrg	  EV5)   UNAME_MACHINE=alphaev5 ;;
943bccedf53Smrg	  EV56)  UNAME_MACHINE=alphaev56 ;;
944bccedf53Smrg	  PCA56) UNAME_MACHINE=alphapca56 ;;
945bccedf53Smrg	  PCA57) UNAME_MACHINE=alphapca56 ;;
946bccedf53Smrg	  EV6)   UNAME_MACHINE=alphaev6 ;;
947bccedf53Smrg	  EV67)  UNAME_MACHINE=alphaev67 ;;
948bccedf53Smrg	  EV68*) UNAME_MACHINE=alphaev68 ;;
949bccedf53Smrg        esac
950bccedf53Smrg	objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
951bccedf53Smrg	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
952bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
9537c5f6000Smrg	exit ;;
9547c5f6000Smrg    padre:Linux:*:*)
9557c5f6000Smrg	echo sparc-unknown-linux-gnu
9567c5f6000Smrg	exit ;;
957bccedf53Smrg    parisc:Linux:*:* | hppa:Linux:*:*)
958bccedf53Smrg	# Look for CPU level
959bccedf53Smrg	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
960bccedf53Smrg	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
961bccedf53Smrg	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
962bccedf53Smrg	  *)    echo hppa-unknown-linux-gnu ;;
963bccedf53Smrg	esac
9647c5f6000Smrg	exit ;;
965bccedf53Smrg    parisc64:Linux:*:* | hppa64:Linux:*:*)
966bccedf53Smrg	echo hppa64-unknown-linux-gnu
9677c5f6000Smrg	exit ;;
968bccedf53Smrg    s390:Linux:*:* | s390x:Linux:*:*)
9697c5f6000Smrg	echo ${UNAME_MACHINE}-ibm-linux
9707c5f6000Smrg	exit ;;
971bccedf53Smrg    sh64*:Linux:*:*)
972bccedf53Smrg    	echo ${UNAME_MACHINE}-unknown-linux-gnu
9737c5f6000Smrg	exit ;;
974bccedf53Smrg    sh*:Linux:*:*)
975bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9767c5f6000Smrg	exit ;;
977bccedf53Smrg    sparc:Linux:*:* | sparc64:Linux:*:*)
978bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-linux-gnu
9797c5f6000Smrg	exit ;;
9807c5f6000Smrg    vax:Linux:*:*)
9817c5f6000Smrg	echo ${UNAME_MACHINE}-dec-linux-gnu
9827c5f6000Smrg	exit ;;
983bccedf53Smrg    x86_64:Linux:*:*)
9847c5f6000Smrg	echo x86_64-unknown-linux-gnu
9857c5f6000Smrg	exit ;;
9867c5f6000Smrg    xtensa*:Linux:*:*)
9877c5f6000Smrg    	echo ${UNAME_MACHINE}-unknown-linux-gnu
9887c5f6000Smrg	exit ;;
989bccedf53Smrg    i*86:Linux:*:*)
990bccedf53Smrg	# The BFD linker knows what the default object file format is, so
991bccedf53Smrg	# first see if it will tell us. cd to the root directory to prevent
992bccedf53Smrg	# problems with other programs or directories called `ld' in the path.
993bccedf53Smrg	# Set LC_ALL=C to ensure ld outputs messages in English.
994bccedf53Smrg	ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
995bccedf53Smrg			 | sed -ne '/supported targets:/!d
996bccedf53Smrg				    s/[ 	][ 	]*/ /g
997bccedf53Smrg				    s/.*supported targets: *//
998bccedf53Smrg				    s/ .*//
999bccedf53Smrg				    p'`
1000bccedf53Smrg        case "$ld_supported_targets" in
1001bccedf53Smrg	  elf32-i386)
1002bccedf53Smrg		TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
1003bccedf53Smrg		;;
1004bccedf53Smrg	  a.out-i386-linux)
1005bccedf53Smrg		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
10067c5f6000Smrg		exit ;;
1007bccedf53Smrg	  "")
1008bccedf53Smrg		# Either a pre-BFD a.out linker (linux-gnuoldld) or
1009bccedf53Smrg		# one that does not give us useful --help.
1010bccedf53Smrg		echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
10117c5f6000Smrg		exit ;;
1012bccedf53Smrg	esac
1013bccedf53Smrg	# Determine whether the default compiler is a.out or elf
1014bccedf53Smrg	eval $set_cc_for_build
1015bccedf53Smrg	sed 's/^	//' << EOF >$dummy.c
1016bccedf53Smrg	#include <features.h>
1017bccedf53Smrg	#ifdef __ELF__
1018bccedf53Smrg	# ifdef __GLIBC__
1019bccedf53Smrg	#  if __GLIBC__ >= 2
1020bccedf53Smrg	LIBC=gnu
1021bccedf53Smrg	#  else
1022bccedf53Smrg	LIBC=gnulibc1
1023bccedf53Smrg	#  endif
1024bccedf53Smrg	# else
1025bccedf53Smrg	LIBC=gnulibc1
1026bccedf53Smrg	# endif
1027bccedf53Smrg	#else
10287c5f6000Smrg	#if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
1029bccedf53Smrg	LIBC=gnu
1030bccedf53Smrg	#else
1031bccedf53Smrg	LIBC=gnuaout
1032bccedf53Smrg	#endif
1033bccedf53Smrg	#endif
10347c5f6000Smrg	#ifdef __dietlibc__
10357c5f6000Smrg	LIBC=dietlibc
10367c5f6000Smrg	#endif
1037bccedf53SmrgEOF
10387c5f6000Smrg	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
10397c5f6000Smrg	    /^LIBC/{
10407c5f6000Smrg		s: ::g
10417c5f6000Smrg		p
10427c5f6000Smrg	    }'`"
10437c5f6000Smrg	test x"${LIBC}" != x && {
10447c5f6000Smrg		echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
10457c5f6000Smrg		exit
10467c5f6000Smrg	}
10477c5f6000Smrg	test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
1048bccedf53Smrg	;;
1049bccedf53Smrg    i*86:DYNIX/ptx:4*:*)
1050bccedf53Smrg	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
1051bccedf53Smrg	# earlier versions are messed up and put the nodename in both
1052bccedf53Smrg	# sysname and nodename.
1053bccedf53Smrg	echo i386-sequent-sysv4
10547c5f6000Smrg	exit ;;
1055bccedf53Smrg    i*86:UNIX_SV:4.2MP:2.*)
1056bccedf53Smrg        # Unixware is an offshoot of SVR4, but it has its own version
1057bccedf53Smrg        # number series starting with 2...
1058bccedf53Smrg        # I am not positive that other SVR4 systems won't match this,
1059bccedf53Smrg	# I just have to hope.  -- rms.
1060bccedf53Smrg        # Use sysv4.2uw... so that sysv4* matches it.
1061bccedf53Smrg	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
10627c5f6000Smrg	exit ;;
1063bccedf53Smrg    i*86:OS/2:*:*)
1064bccedf53Smrg	# If we were able to find `uname', then EMX Unix compatibility
1065bccedf53Smrg	# is probably installed.
1066bccedf53Smrg	echo ${UNAME_MACHINE}-pc-os2-emx
10677c5f6000Smrg	exit ;;
1068bccedf53Smrg    i*86:XTS-300:*:STOP)
1069bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-stop
10707c5f6000Smrg	exit ;;
1071bccedf53Smrg    i*86:atheos:*:*)
1072bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-atheos
10737c5f6000Smrg	exit ;;
10747c5f6000Smrg    i*86:syllable:*:*)
10757c5f6000Smrg	echo ${UNAME_MACHINE}-pc-syllable
10767c5f6000Smrg	exit ;;
1077bccedf53Smrg    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
1078bccedf53Smrg	echo i386-unknown-lynxos${UNAME_RELEASE}
10797c5f6000Smrg	exit ;;
1080bccedf53Smrg    i*86:*DOS:*:*)
1081bccedf53Smrg	echo ${UNAME_MACHINE}-pc-msdosdjgpp
10827c5f6000Smrg	exit ;;
1083bccedf53Smrg    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
1084bccedf53Smrg	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
1085bccedf53Smrg	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1086bccedf53Smrg		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
1087bccedf53Smrg	else
1088bccedf53Smrg		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
1089bccedf53Smrg	fi
10907c5f6000Smrg	exit ;;
10917c5f6000Smrg    i*86:*:5:[678]*)
10927c5f6000Smrg    	# UnixWare 7.x, OpenUNIX and OpenServer 6.
1093bccedf53Smrg	case `/bin/uname -X | grep "^Machine"` in
1094bccedf53Smrg	    *486*)	     UNAME_MACHINE=i486 ;;
1095bccedf53Smrg	    *Pentium)	     UNAME_MACHINE=i586 ;;
1096bccedf53Smrg	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1097bccedf53Smrg	esac
1098bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
10997c5f6000Smrg	exit ;;
1100bccedf53Smrg    i*86:*:3.2:*)
1101bccedf53Smrg	if test -f /usr/options/cb.name; then
1102bccedf53Smrg		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1103bccedf53Smrg		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1104bccedf53Smrg	elif /bin/uname -X 2>/dev/null >/dev/null ; then
1105bccedf53Smrg		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1106bccedf53Smrg		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1107bccedf53Smrg		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1108bccedf53Smrg			&& UNAME_MACHINE=i586
1109bccedf53Smrg		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1110bccedf53Smrg			&& UNAME_MACHINE=i686
1111bccedf53Smrg		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1112bccedf53Smrg			&& UNAME_MACHINE=i686
1113bccedf53Smrg		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1114bccedf53Smrg	else
1115bccedf53Smrg		echo ${UNAME_MACHINE}-pc-sysv32
1116bccedf53Smrg	fi
11177c5f6000Smrg	exit ;;
1118bccedf53Smrg    pc:*:*:*)
1119bccedf53Smrg	# Left here for compatibility:
1120bccedf53Smrg        # uname -m prints for DJGPP always 'pc', but it prints nothing about
11217c5f6000Smrg        # the processor, so we play safe by assuming i586.
11227c5f6000Smrg	# Note: whatever this is, it MUST be the same as what config.sub
11237c5f6000Smrg	# prints for the "djgpp" host, or else GDB configury will decide that
11247c5f6000Smrg	# this is a cross-build.
11257c5f6000Smrg	echo i586-pc-msdosdjgpp
11267c5f6000Smrg        exit ;;
1127bccedf53Smrg    Intel:Mach:3*:*)
1128bccedf53Smrg	echo i386-pc-mach3
11297c5f6000Smrg	exit ;;
1130bccedf53Smrg    paragon:*:*:*)
1131bccedf53Smrg	echo i860-intel-osf1
11327c5f6000Smrg	exit ;;
1133bccedf53Smrg    i860:*:4.*:*) # i860-SVR4
1134bccedf53Smrg	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1135bccedf53Smrg	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
1136bccedf53Smrg	else # Add other i860-SVR4 vendors below as they are discovered.
1137bccedf53Smrg	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
1138bccedf53Smrg	fi
11397c5f6000Smrg	exit ;;
1140bccedf53Smrg    mini*:CTIX:SYS*5:*)
1141bccedf53Smrg	# "miniframe"
1142bccedf53Smrg	echo m68010-convergent-sysv
11437c5f6000Smrg	exit ;;
1144bccedf53Smrg    mc68k:UNIX:SYSTEM5:3.51m)
1145bccedf53Smrg	echo m68k-convergent-sysv
11467c5f6000Smrg	exit ;;
1147bccedf53Smrg    M680?0:D-NIX:5.3:*)
1148bccedf53Smrg	echo m68k-diab-dnix
11497c5f6000Smrg	exit ;;
11507c5f6000Smrg    M68*:*:R3V[5678]*:*)
11517c5f6000Smrg	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
11527c5f6000Smrg    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)
1153bccedf53Smrg	OS_REL=''
1154bccedf53Smrg	test -r /etc/.relid \
1155bccedf53Smrg	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1156bccedf53Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
11577c5f6000Smrg	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1158bccedf53Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
11597c5f6000Smrg	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1160bccedf53Smrg    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1161bccedf53Smrg        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
11627c5f6000Smrg          && { echo i486-ncr-sysv4; exit; } ;;
11637c5f6000Smrg    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
11647c5f6000Smrg	OS_REL='.3'
11657c5f6000Smrg	test -r /etc/.relid \
11667c5f6000Smrg	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
11677c5f6000Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
11687c5f6000Smrg	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
11697c5f6000Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
11707c5f6000Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
11717c5f6000Smrg	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
11727c5f6000Smrg	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1173bccedf53Smrg    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1174bccedf53Smrg	echo m68k-unknown-lynxos${UNAME_RELEASE}
11757c5f6000Smrg	exit ;;
1176bccedf53Smrg    mc68030:UNIX_System_V:4.*:*)
1177bccedf53Smrg	echo m68k-atari-sysv4
11787c5f6000Smrg	exit ;;
1179bccedf53Smrg    TSUNAMI:LynxOS:2.*:*)
1180bccedf53Smrg	echo sparc-unknown-lynxos${UNAME_RELEASE}
11817c5f6000Smrg	exit ;;
1182bccedf53Smrg    rs6000:LynxOS:2.*:*)
1183bccedf53Smrg	echo rs6000-unknown-lynxos${UNAME_RELEASE}
11847c5f6000Smrg	exit ;;
1185bccedf53Smrg    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
1186bccedf53Smrg	echo powerpc-unknown-lynxos${UNAME_RELEASE}
11877c5f6000Smrg	exit ;;
1188bccedf53Smrg    SM[BE]S:UNIX_SV:*:*)
1189bccedf53Smrg	echo mips-dde-sysv${UNAME_RELEASE}
11907c5f6000Smrg	exit ;;
1191bccedf53Smrg    RM*:ReliantUNIX-*:*:*)
1192bccedf53Smrg	echo mips-sni-sysv4
11937c5f6000Smrg	exit ;;
1194bccedf53Smrg    RM*:SINIX-*:*:*)
1195bccedf53Smrg	echo mips-sni-sysv4
11967c5f6000Smrg	exit ;;
1197bccedf53Smrg    *:SINIX-*:*:*)
1198bccedf53Smrg	if uname -p 2>/dev/null >/dev/null ; then
1199bccedf53Smrg		UNAME_MACHINE=`(uname -p) 2>/dev/null`
1200bccedf53Smrg		echo ${UNAME_MACHINE}-sni-sysv4
1201bccedf53Smrg	else
1202bccedf53Smrg		echo ns32k-sni-sysv
1203bccedf53Smrg	fi
12047c5f6000Smrg	exit ;;
1205bccedf53Smrg    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1206bccedf53Smrg                      # says <Richard.M.Bartel@ccMail.Census.GOV>
1207bccedf53Smrg        echo i586-unisys-sysv4
12087c5f6000Smrg        exit ;;
1209bccedf53Smrg    *:UNIX_System_V:4*:FTX*)
1210bccedf53Smrg	# From Gerald Hewes <hewes@openmarket.com>.
1211bccedf53Smrg	# How about differentiating between stratus architectures? -djm
1212bccedf53Smrg	echo hppa1.1-stratus-sysv4
12137c5f6000Smrg	exit ;;
1214bccedf53Smrg    *:*:*:FTX*)
1215bccedf53Smrg	# From seanf@swdc.stratus.com.
1216bccedf53Smrg	echo i860-stratus-sysv4
12177c5f6000Smrg	exit ;;
12187c5f6000Smrg    i*86:VOS:*:*)
12197c5f6000Smrg	# From Paul.Green@stratus.com.
12207c5f6000Smrg	echo ${UNAME_MACHINE}-stratus-vos
12217c5f6000Smrg	exit ;;
1222bccedf53Smrg    *:VOS:*:*)
1223bccedf53Smrg	# From Paul.Green@stratus.com.
1224bccedf53Smrg	echo hppa1.1-stratus-vos
12257c5f6000Smrg	exit ;;
1226bccedf53Smrg    mc68*:A/UX:*:*)
1227bccedf53Smrg	echo m68k-apple-aux${UNAME_RELEASE}
12287c5f6000Smrg	exit ;;
1229bccedf53Smrg    news*:NEWS-OS:6*:*)
1230bccedf53Smrg	echo mips-sony-newsos6
12317c5f6000Smrg	exit ;;
1232bccedf53Smrg    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1233bccedf53Smrg	if [ -d /usr/nec ]; then
1234bccedf53Smrg	        echo mips-nec-sysv${UNAME_RELEASE}
1235bccedf53Smrg	else
1236bccedf53Smrg	        echo mips-unknown-sysv${UNAME_RELEASE}
1237bccedf53Smrg	fi
12387c5f6000Smrg        exit ;;
1239bccedf53Smrg    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
1240bccedf53Smrg	echo powerpc-be-beos
12417c5f6000Smrg	exit ;;
1242bccedf53Smrg    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
1243bccedf53Smrg	echo powerpc-apple-beos
12447c5f6000Smrg	exit ;;
1245bccedf53Smrg    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
1246bccedf53Smrg	echo i586-pc-beos
12477c5f6000Smrg	exit ;;
12487c5f6000Smrg    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
12497c5f6000Smrg	echo i586-pc-haiku
12507c5f6000Smrg	exit ;;
1251bccedf53Smrg    SX-4:SUPER-UX:*:*)
1252bccedf53Smrg	echo sx4-nec-superux${UNAME_RELEASE}
12537c5f6000Smrg	exit ;;
1254bccedf53Smrg    SX-5:SUPER-UX:*:*)
1255bccedf53Smrg	echo sx5-nec-superux${UNAME_RELEASE}
12567c5f6000Smrg	exit ;;
1257bccedf53Smrg    SX-6:SUPER-UX:*:*)
1258bccedf53Smrg	echo sx6-nec-superux${UNAME_RELEASE}
12597c5f6000Smrg	exit ;;
12607c5f6000Smrg    SX-7:SUPER-UX:*:*)
12617c5f6000Smrg	echo sx7-nec-superux${UNAME_RELEASE}
12627c5f6000Smrg	exit ;;
12637c5f6000Smrg    SX-8:SUPER-UX:*:*)
12647c5f6000Smrg	echo sx8-nec-superux${UNAME_RELEASE}
12657c5f6000Smrg	exit ;;
12667c5f6000Smrg    SX-8R:SUPER-UX:*:*)
12677c5f6000Smrg	echo sx8r-nec-superux${UNAME_RELEASE}
12687c5f6000Smrg	exit ;;
1269bccedf53Smrg    Power*:Rhapsody:*:*)
1270bccedf53Smrg	echo powerpc-apple-rhapsody${UNAME_RELEASE}
12717c5f6000Smrg	exit ;;
1272bccedf53Smrg    *:Rhapsody:*:*)
1273bccedf53Smrg	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
12747c5f6000Smrg	exit ;;
1275bccedf53Smrg    *:Darwin:*:*)
12767c5f6000Smrg	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
12777c5f6000Smrg	case $UNAME_PROCESSOR in
12787c5f6000Smrg	    unknown) UNAME_PROCESSOR=powerpc ;;
1279bccedf53Smrg	esac
1280bccedf53Smrg	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
12817c5f6000Smrg	exit ;;
1282bccedf53Smrg    *:procnto*:*:* | *:QNX:[0123456789]*:*)
1283bccedf53Smrg	UNAME_PROCESSOR=`uname -p`
1284bccedf53Smrg	if test "$UNAME_PROCESSOR" = "x86"; then
1285bccedf53Smrg		UNAME_PROCESSOR=i386
1286bccedf53Smrg		UNAME_MACHINE=pc
1287bccedf53Smrg	fi
1288bccedf53Smrg	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
12897c5f6000Smrg	exit ;;
1290bccedf53Smrg    *:QNX:*:4*)
1291bccedf53Smrg	echo i386-pc-qnx
12927c5f6000Smrg	exit ;;
12937c5f6000Smrg    NSE-?:NONSTOP_KERNEL:*:*)
12947c5f6000Smrg	echo nse-tandem-nsk${UNAME_RELEASE}
12957c5f6000Smrg	exit ;;
12967c5f6000Smrg    NSR-?:NONSTOP_KERNEL:*:*)
1297bccedf53Smrg	echo nsr-tandem-nsk${UNAME_RELEASE}
12987c5f6000Smrg	exit ;;
1299bccedf53Smrg    *:NonStop-UX:*:*)
1300bccedf53Smrg	echo mips-compaq-nonstopux
13017c5f6000Smrg	exit ;;
1302bccedf53Smrg    BS2000:POSIX*:*:*)
1303bccedf53Smrg	echo bs2000-siemens-sysv
13047c5f6000Smrg	exit ;;
1305bccedf53Smrg    DS/*:UNIX_System_V:*:*)
1306bccedf53Smrg	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
13077c5f6000Smrg	exit ;;
1308bccedf53Smrg    *:Plan9:*:*)
1309bccedf53Smrg	# "uname -m" is not consistent, so use $cputype instead. 386
1310bccedf53Smrg	# is converted to i386 for consistency with other x86
1311bccedf53Smrg	# operating systems.
1312bccedf53Smrg	if test "$cputype" = "386"; then
1313bccedf53Smrg	    UNAME_MACHINE=i386
1314bccedf53Smrg	else
1315bccedf53Smrg	    UNAME_MACHINE="$cputype"
1316bccedf53Smrg	fi
1317bccedf53Smrg	echo ${UNAME_MACHINE}-unknown-plan9
13187c5f6000Smrg	exit ;;
1319bccedf53Smrg    *:TOPS-10:*:*)
1320bccedf53Smrg	echo pdp10-unknown-tops10
13217c5f6000Smrg	exit ;;
1322bccedf53Smrg    *:TENEX:*:*)
1323bccedf53Smrg	echo pdp10-unknown-tenex
13247c5f6000Smrg	exit ;;
1325bccedf53Smrg    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1326bccedf53Smrg	echo pdp10-dec-tops20
13277c5f6000Smrg	exit ;;
1328bccedf53Smrg    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1329bccedf53Smrg	echo pdp10-xkl-tops20
13307c5f6000Smrg	exit ;;
1331bccedf53Smrg    *:TOPS-20:*:*)
1332bccedf53Smrg	echo pdp10-unknown-tops20
13337c5f6000Smrg	exit ;;
1334bccedf53Smrg    *:ITS:*:*)
1335bccedf53Smrg	echo pdp10-unknown-its
13367c5f6000Smrg	exit ;;
1337bccedf53Smrg    SEI:*:*:SEIUX)
1338bccedf53Smrg        echo mips-sei-seiux${UNAME_RELEASE}
13397c5f6000Smrg	exit ;;
13407c5f6000Smrg    *:DragonFly:*:*)
13417c5f6000Smrg	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
13427c5f6000Smrg	exit ;;
13437c5f6000Smrg    *:*VMS:*:*)
13447c5f6000Smrg    	UNAME_MACHINE=`(uname -p) 2>/dev/null`
13457c5f6000Smrg	case "${UNAME_MACHINE}" in
13467c5f6000Smrg	    A*) echo alpha-dec-vms ; exit ;;
13477c5f6000Smrg	    I*) echo ia64-dec-vms ; exit ;;
13487c5f6000Smrg	    V*) echo vax-dec-vms ; exit ;;
13497c5f6000Smrg	esac ;;
13507c5f6000Smrg    *:XENIX:*:SysV)
13517c5f6000Smrg	echo i386-pc-xenix
13527c5f6000Smrg	exit ;;
13537c5f6000Smrg    i*86:skyos:*:*)
13547c5f6000Smrg	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
13557c5f6000Smrg	exit ;;
13567c5f6000Smrg    i*86:rdos:*:*)
13577c5f6000Smrg	echo ${UNAME_MACHINE}-pc-rdos
13587c5f6000Smrg	exit ;;
13597c5f6000Smrg    i*86:AROS:*:*)
13607c5f6000Smrg	echo ${UNAME_MACHINE}-pc-aros
13617c5f6000Smrg	exit ;;
1362bccedf53Smrgesac
1363bccedf53Smrg
1364bccedf53Smrg#echo '(No uname command or uname output not recognized.)' 1>&2
1365bccedf53Smrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
1366bccedf53Smrg
1367bccedf53Smrgeval $set_cc_for_build
1368bccedf53Smrgcat >$dummy.c <<EOF
1369bccedf53Smrg#ifdef _SEQUENT_
1370bccedf53Smrg# include <sys/types.h>
1371bccedf53Smrg# include <sys/utsname.h>
1372bccedf53Smrg#endif
1373bccedf53Smrgmain ()
1374bccedf53Smrg{
1375bccedf53Smrg#if defined (sony)
1376bccedf53Smrg#if defined (MIPSEB)
1377bccedf53Smrg  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
1378bccedf53Smrg     I don't know....  */
1379bccedf53Smrg  printf ("mips-sony-bsd\n"); exit (0);
1380bccedf53Smrg#else
1381bccedf53Smrg#include <sys/param.h>
1382bccedf53Smrg  printf ("m68k-sony-newsos%s\n",
1383bccedf53Smrg#ifdef NEWSOS4
1384bccedf53Smrg          "4"
1385bccedf53Smrg#else
1386bccedf53Smrg	  ""
1387bccedf53Smrg#endif
1388bccedf53Smrg         ); exit (0);
1389bccedf53Smrg#endif
1390bccedf53Smrg#endif
1391bccedf53Smrg
1392bccedf53Smrg#if defined (__arm) && defined (__acorn) && defined (__unix)
13937c5f6000Smrg  printf ("arm-acorn-riscix\n"); exit (0);
1394bccedf53Smrg#endif
1395bccedf53Smrg
1396bccedf53Smrg#if defined (hp300) && !defined (hpux)
1397bccedf53Smrg  printf ("m68k-hp-bsd\n"); exit (0);
1398bccedf53Smrg#endif
1399bccedf53Smrg
1400bccedf53Smrg#if defined (NeXT)
1401bccedf53Smrg#if !defined (__ARCHITECTURE__)
1402bccedf53Smrg#define __ARCHITECTURE__ "m68k"
1403bccedf53Smrg#endif
1404bccedf53Smrg  int version;
1405bccedf53Smrg  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
1406bccedf53Smrg  if (version < 4)
1407bccedf53Smrg    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
1408bccedf53Smrg  else
1409bccedf53Smrg    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
1410bccedf53Smrg  exit (0);
1411bccedf53Smrg#endif
1412bccedf53Smrg
1413bccedf53Smrg#if defined (MULTIMAX) || defined (n16)
1414bccedf53Smrg#if defined (UMAXV)
1415bccedf53Smrg  printf ("ns32k-encore-sysv\n"); exit (0);
1416bccedf53Smrg#else
1417bccedf53Smrg#if defined (CMU)
1418bccedf53Smrg  printf ("ns32k-encore-mach\n"); exit (0);
1419bccedf53Smrg#else
1420bccedf53Smrg  printf ("ns32k-encore-bsd\n"); exit (0);
1421bccedf53Smrg#endif
1422bccedf53Smrg#endif
1423bccedf53Smrg#endif
1424bccedf53Smrg
1425bccedf53Smrg#if defined (__386BSD__)
1426bccedf53Smrg  printf ("i386-pc-bsd\n"); exit (0);
1427bccedf53Smrg#endif
1428bccedf53Smrg
1429bccedf53Smrg#if defined (sequent)
1430bccedf53Smrg#if defined (i386)
1431bccedf53Smrg  printf ("i386-sequent-dynix\n"); exit (0);
1432bccedf53Smrg#endif
1433bccedf53Smrg#if defined (ns32000)
1434bccedf53Smrg  printf ("ns32k-sequent-dynix\n"); exit (0);
1435bccedf53Smrg#endif
1436bccedf53Smrg#endif
1437bccedf53Smrg
1438bccedf53Smrg#if defined (_SEQUENT_)
1439bccedf53Smrg    struct utsname un;
1440bccedf53Smrg
1441bccedf53Smrg    uname(&un);
1442bccedf53Smrg
1443bccedf53Smrg    if (strncmp(un.version, "V2", 2) == 0) {
1444bccedf53Smrg	printf ("i386-sequent-ptx2\n"); exit (0);
1445bccedf53Smrg    }
1446bccedf53Smrg    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
1447bccedf53Smrg	printf ("i386-sequent-ptx1\n"); exit (0);
1448bccedf53Smrg    }
1449bccedf53Smrg    printf ("i386-sequent-ptx\n"); exit (0);
1450bccedf53Smrg
1451bccedf53Smrg#endif
1452bccedf53Smrg
1453bccedf53Smrg#if defined (vax)
1454bccedf53Smrg# if !defined (ultrix)
1455bccedf53Smrg#  include <sys/param.h>
1456bccedf53Smrg#  if defined (BSD)
1457bccedf53Smrg#   if BSD == 43
1458bccedf53Smrg      printf ("vax-dec-bsd4.3\n"); exit (0);
1459bccedf53Smrg#   else
1460bccedf53Smrg#    if BSD == 199006
1461bccedf53Smrg      printf ("vax-dec-bsd4.3reno\n"); exit (0);
1462bccedf53Smrg#    else
1463bccedf53Smrg      printf ("vax-dec-bsd\n"); exit (0);
1464bccedf53Smrg#    endif
1465bccedf53Smrg#   endif
1466bccedf53Smrg#  else
1467bccedf53Smrg    printf ("vax-dec-bsd\n"); exit (0);
1468bccedf53Smrg#  endif
1469bccedf53Smrg# else
1470bccedf53Smrg    printf ("vax-dec-ultrix\n"); exit (0);
1471bccedf53Smrg# endif
1472bccedf53Smrg#endif
1473bccedf53Smrg
1474bccedf53Smrg#if defined (alliant) && defined (i860)
1475bccedf53Smrg  printf ("i860-alliant-bsd\n"); exit (0);
1476bccedf53Smrg#endif
1477bccedf53Smrg
1478bccedf53Smrg  exit (1);
1479bccedf53Smrg}
1480bccedf53SmrgEOF
1481bccedf53Smrg
14827c5f6000Smrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
14837c5f6000Smrg	{ echo "$SYSTEM_NAME"; exit; }
1484bccedf53Smrg
1485bccedf53Smrg# Apollos put the system type in the environment.
1486bccedf53Smrg
14877c5f6000Smrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
1488bccedf53Smrg
1489bccedf53Smrg# Convex versions that predate uname can use getsysinfo(1)
1490bccedf53Smrg
1491bccedf53Smrgif [ -x /usr/convex/getsysinfo ]
1492bccedf53Smrgthen
1493bccedf53Smrg    case `getsysinfo -f cpu_type` in
1494bccedf53Smrg    c1*)
1495bccedf53Smrg	echo c1-convex-bsd
14967c5f6000Smrg	exit ;;
1497bccedf53Smrg    c2*)
1498bccedf53Smrg	if getsysinfo -f scalar_acc
1499bccedf53Smrg	then echo c32-convex-bsd
1500bccedf53Smrg	else echo c2-convex-bsd
1501bccedf53Smrg	fi
15027c5f6000Smrg	exit ;;
1503bccedf53Smrg    c34*)
1504bccedf53Smrg	echo c34-convex-bsd
15057c5f6000Smrg	exit ;;
1506bccedf53Smrg    c38*)
1507bccedf53Smrg	echo c38-convex-bsd
15087c5f6000Smrg	exit ;;
1509bccedf53Smrg    c4*)
1510bccedf53Smrg	echo c4-convex-bsd
15117c5f6000Smrg	exit ;;
1512bccedf53Smrg    esac
1513bccedf53Smrgfi
1514bccedf53Smrg
1515bccedf53Smrgcat >&2 <<EOF
1516bccedf53Smrg$0: unable to guess system type
1517bccedf53Smrg
1518bccedf53SmrgThis script, last modified $timestamp, has failed to recognize
1519bccedf53Smrgthe operating system you are using. It is advised that you
1520bccedf53Smrgdownload the most up to date version of the config scripts from
1521bccedf53Smrg
15227c5f6000Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
15237c5f6000Smrgand
15247c5f6000Smrg  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
1525bccedf53Smrg
1526bccedf53SmrgIf the version you run ($0) is already up to date, please
1527bccedf53Smrgsend the following data and any information you think might be
1528bccedf53Smrgpertinent to <config-patches@gnu.org> in order to provide the needed
1529bccedf53Smrginformation to handle your system.
1530bccedf53Smrg
1531bccedf53Smrgconfig.guess timestamp = $timestamp
1532bccedf53Smrg
1533bccedf53Smrguname -m = `(uname -m) 2>/dev/null || echo unknown`
1534bccedf53Smrguname -r = `(uname -r) 2>/dev/null || echo unknown`
1535bccedf53Smrguname -s = `(uname -s) 2>/dev/null || echo unknown`
1536bccedf53Smrguname -v = `(uname -v) 2>/dev/null || echo unknown`
1537bccedf53Smrg
1538bccedf53Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1539bccedf53Smrg/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
1540bccedf53Smrg
1541bccedf53Smrghostinfo               = `(hostinfo) 2>/dev/null`
1542bccedf53Smrg/bin/universe          = `(/bin/universe) 2>/dev/null`
1543bccedf53Smrg/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
1544bccedf53Smrg/bin/arch              = `(/bin/arch) 2>/dev/null`
1545bccedf53Smrg/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
1546bccedf53Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1547bccedf53Smrg
1548bccedf53SmrgUNAME_MACHINE = ${UNAME_MACHINE}
1549bccedf53SmrgUNAME_RELEASE = ${UNAME_RELEASE}
1550bccedf53SmrgUNAME_SYSTEM  = ${UNAME_SYSTEM}
1551bccedf53SmrgUNAME_VERSION = ${UNAME_VERSION}
1552bccedf53SmrgEOF
1553bccedf53Smrg
1554bccedf53Smrgexit 1
1555bccedf53Smrg
1556bccedf53Smrg# Local variables:
1557bccedf53Smrg# eval: (add-hook 'write-file-hooks 'time-stamp)
1558bccedf53Smrg# time-stamp-start: "timestamp='"
1559bccedf53Smrg# time-stamp-format: "%:y-%02m-%02d"
1560bccedf53Smrg# time-stamp-end: "'"
1561bccedf53Smrg# End:
1562