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