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