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