config.guess revision ea1d6981
1ea1d6981Smrg#! /bin/sh
217ca54c3Smrg# Attempt to guess a canonical system name.
3ea1d6981Smrg#   Copyright 1992-2018 Free Software Foundation, Inc.
417ca54c3Smrg
5ea1d6981Smrgtimestamp='2018-08-29'
617ca54c3Smrg
717ca54c3Smrg# This file is free software; you can redistribute it and/or modify it
817ca54c3Smrg# under the terms of the GNU General Public License as published by
917ca54c3Smrg# the Free Software Foundation; either version 3 of the License, or
1017ca54c3Smrg# (at your option) any later version.
1117ca54c3Smrg#
1217ca54c3Smrg# This program is distributed in the hope that it will be useful, but
1317ca54c3Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of
1417ca54c3Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
1517ca54c3Smrg# General Public License for more details.
1617ca54c3Smrg#
1717ca54c3Smrg# You should have received a copy of the GNU General Public License
18ea1d6981Smrg# along with this program; if not, see <https://www.gnu.org/licenses/>.
1917ca54c3Smrg#
2017ca54c3Smrg# As a special exception to the GNU General Public License, if you
2117ca54c3Smrg# distribute this file as part of a program that contains a
2217ca54c3Smrg# configuration script generated by Autoconf, you may include it under
2317ca54c3Smrg# the same distribution terms that you use for the rest of that
2417ca54c3Smrg# program.  This Exception is an additional permission under section 7
2517ca54c3Smrg# of the GNU General Public License, version 3 ("GPLv3").
2617ca54c3Smrg#
2717ca54c3Smrg# Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
2817ca54c3Smrg#
2917ca54c3Smrg# You can get the latest version of this script from:
30ea1d6981Smrg# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
3117ca54c3Smrg#
3217ca54c3Smrg# Please send patches to <config-patches@gnu.org>.
3317ca54c3Smrg
3417ca54c3Smrg
3517ca54c3Smrgme=`echo "$0" | sed -e 's,.*/,,'`
3617ca54c3Smrg
3717ca54c3Smrgusage="\
3817ca54c3SmrgUsage: $0 [OPTION]
3917ca54c3Smrg
4017ca54c3SmrgOutput the configuration name of the system \`$me' is run on.
4117ca54c3Smrg
42ea1d6981SmrgOptions:
4317ca54c3Smrg  -h, --help         print this help, then exit
4417ca54c3Smrg  -t, --time-stamp   print date of last modification, then exit
4517ca54c3Smrg  -v, --version      print version number, then exit
4617ca54c3Smrg
4717ca54c3SmrgReport bugs and patches to <config-patches@gnu.org>."
4817ca54c3Smrg
4917ca54c3Smrgversion="\
5017ca54c3SmrgGNU config.guess ($timestamp)
5117ca54c3Smrg
5217ca54c3SmrgOriginally written by Per Bothner.
53ea1d6981SmrgCopyright 1992-2018 Free Software Foundation, Inc.
5417ca54c3Smrg
5517ca54c3SmrgThis is free software; see the source for copying conditions.  There is NO
5617ca54c3Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
5717ca54c3Smrg
5817ca54c3Smrghelp="
5917ca54c3SmrgTry \`$me --help' for more information."
6017ca54c3Smrg
6117ca54c3Smrg# Parse command line
6217ca54c3Smrgwhile test $# -gt 0 ; do
6317ca54c3Smrg  case $1 in
6417ca54c3Smrg    --time-stamp | --time* | -t )
6517ca54c3Smrg       echo "$timestamp" ; exit ;;
6617ca54c3Smrg    --version | -v )
6717ca54c3Smrg       echo "$version" ; exit ;;
6817ca54c3Smrg    --help | --h* | -h )
6917ca54c3Smrg       echo "$usage"; exit ;;
7017ca54c3Smrg    -- )     # Stop option processing
7117ca54c3Smrg       shift; break ;;
7217ca54c3Smrg    - )	# Use stdin as input.
7317ca54c3Smrg       break ;;
7417ca54c3Smrg    -* )
7517ca54c3Smrg       echo "$me: invalid option $1$help" >&2
7617ca54c3Smrg       exit 1 ;;
7717ca54c3Smrg    * )
7817ca54c3Smrg       break ;;
7917ca54c3Smrg  esac
8017ca54c3Smrgdone
8117ca54c3Smrg
8217ca54c3Smrgif test $# != 0; then
8317ca54c3Smrg  echo "$me: too many arguments$help" >&2
8417ca54c3Smrg  exit 1
8517ca54c3Smrgfi
8617ca54c3Smrg
8717ca54c3Smrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
8817ca54c3Smrg# compiler to aid in system detection is discouraged as it requires
8917ca54c3Smrg# temporary files to be created and, as you can see below, it is a
9017ca54c3Smrg# headache to deal with in a portable fashion.
9117ca54c3Smrg
9217ca54c3Smrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
9317ca54c3Smrg# use `HOST_CC' if defined, but it is deprecated.
9417ca54c3Smrg
9517ca54c3Smrg# Portable tmp directory creation inspired by the Autoconf team.
9617ca54c3Smrg
97ea1d6981Smrgtmp=
98ea1d6981Smrg# shellcheck disable=SC2172
99ea1d6981Smrgtrap 'test -z "$tmp" || rm -fr "$tmp"' 1 2 13 15
100ea1d6981Smrgtrap 'exitcode=$?; test -z "$tmp" || rm -fr "$tmp"; exit $exitcode' 0
101ea1d6981Smrg
102ea1d6981Smrgset_cc_for_build() {
103ea1d6981Smrg    : "${TMPDIR=/tmp}"
104ea1d6981Smrg    # shellcheck disable=SC2039
105ea1d6981Smrg    { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
106ea1d6981Smrg	{ test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } ||
107ea1d6981Smrg	{ tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } ||
108ea1d6981Smrg	{ echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; }
109ea1d6981Smrg    dummy=$tmp/dummy
110ea1d6981Smrg    case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in
111ea1d6981Smrg	,,)    echo "int x;" > "$dummy.c"
112ea1d6981Smrg	       for driver in cc gcc c89 c99 ; do
113ea1d6981Smrg		   if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then
114ea1d6981Smrg		       CC_FOR_BUILD="$driver"
115ea1d6981Smrg		       break
116ea1d6981Smrg		   fi
117ea1d6981Smrg	       done
118ea1d6981Smrg	       if test x"$CC_FOR_BUILD" = x ; then
119ea1d6981Smrg		   CC_FOR_BUILD=no_compiler_found
120ea1d6981Smrg	       fi
121ea1d6981Smrg	       ;;
122ea1d6981Smrg	,,*)   CC_FOR_BUILD=$CC ;;
123ea1d6981Smrg	,*,*)  CC_FOR_BUILD=$HOST_CC ;;
124ea1d6981Smrg    esac
125ea1d6981Smrg}
12617ca54c3Smrg
12717ca54c3Smrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
12817ca54c3Smrg# (ghazi@noc.rutgers.edu 1994-08-24)
129ea1d6981Smrgif test -f /.attbin/uname ; then
13017ca54c3Smrg	PATH=$PATH:/.attbin ; export PATH
13117ca54c3Smrgfi
13217ca54c3Smrg
13317ca54c3SmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
13417ca54c3SmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
13517ca54c3SmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
13617ca54c3SmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
13717ca54c3Smrg
138ea1d6981Smrgcase "$UNAME_SYSTEM" in
13917ca54c3SmrgLinux|GNU|GNU/*)
14017ca54c3Smrg	# If the system lacks a compiler, then just pick glibc.
14117ca54c3Smrg	# We could probably try harder.
14217ca54c3Smrg	LIBC=gnu
14317ca54c3Smrg
144ea1d6981Smrg	set_cc_for_build
145ea1d6981Smrg	cat <<-EOF > "$dummy.c"
14617ca54c3Smrg	#include <features.h>
14717ca54c3Smrg	#if defined(__UCLIBC__)
14817ca54c3Smrg	LIBC=uclibc
14917ca54c3Smrg	#elif defined(__dietlibc__)
15017ca54c3Smrg	LIBC=dietlibc
15117ca54c3Smrg	#else
15217ca54c3Smrg	LIBC=gnu
15317ca54c3Smrg	#endif
15417ca54c3Smrg	EOF
155ea1d6981Smrg	eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`"
156ea1d6981Smrg
157ea1d6981Smrg	# If ldd exists, use it to detect musl libc.
158ea1d6981Smrg	if command -v ldd >/dev/null && \
159ea1d6981Smrg		ldd --version 2>&1 | grep -q ^musl
160ea1d6981Smrg	then
161ea1d6981Smrg	    LIBC=musl
162ea1d6981Smrg	fi
16317ca54c3Smrg	;;
16417ca54c3Smrgesac
16517ca54c3Smrg
16617ca54c3Smrg# Note: order is significant - the case branches are not exclusive.
16717ca54c3Smrg
168ea1d6981Smrgcase "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
16917ca54c3Smrg    *:NetBSD:*:*)
17017ca54c3Smrg	# NetBSD (nbsd) targets should (where applicable) match one or
17117ca54c3Smrg	# more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
17217ca54c3Smrg	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
17317ca54c3Smrg	# switched to ELF, *-*-netbsd* would select the old
17417ca54c3Smrg	# object file format.  This provides both forward
17517ca54c3Smrg	# compatibility and a consistent mechanism for selecting the
17617ca54c3Smrg	# object file format.
17717ca54c3Smrg	#
17817ca54c3Smrg	# Note: NetBSD doesn't particularly care about the vendor
17917ca54c3Smrg	# portion of the name.  We always set it to "unknown".
18017ca54c3Smrg	sysctl="sysctl -n hw.machine_arch"
18117ca54c3Smrg	UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
182ea1d6981Smrg	    "/sbin/$sysctl" 2>/dev/null || \
183ea1d6981Smrg	    "/usr/sbin/$sysctl" 2>/dev/null || \
18417ca54c3Smrg	    echo unknown)`
185ea1d6981Smrg	case "$UNAME_MACHINE_ARCH" in
18617ca54c3Smrg	    armeb) machine=armeb-unknown ;;
18717ca54c3Smrg	    arm*) machine=arm-unknown ;;
18817ca54c3Smrg	    sh3el) machine=shl-unknown ;;
18917ca54c3Smrg	    sh3eb) machine=sh-unknown ;;
19017ca54c3Smrg	    sh5el) machine=sh5le-unknown ;;
19117ca54c3Smrg	    earmv*)
192ea1d6981Smrg		arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'`
193ea1d6981Smrg		endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'`
194ea1d6981Smrg		machine="${arch}${endian}"-unknown
19517ca54c3Smrg		;;
196ea1d6981Smrg	    *) machine="$UNAME_MACHINE_ARCH"-unknown ;;
19717ca54c3Smrg	esac
19817ca54c3Smrg	# The Operating System including object format, if it has switched
19917ca54c3Smrg	# to ELF recently (or will in the future) and ABI.
200ea1d6981Smrg	case "$UNAME_MACHINE_ARCH" in
20117ca54c3Smrg	    earm*)
20217ca54c3Smrg		os=netbsdelf
20317ca54c3Smrg		;;
20417ca54c3Smrg	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
205ea1d6981Smrg		set_cc_for_build
20617ca54c3Smrg		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
20717ca54c3Smrg			| grep -q __ELF__
20817ca54c3Smrg		then
20917ca54c3Smrg		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
21017ca54c3Smrg		    # Return netbsd for either.  FIX?
21117ca54c3Smrg		    os=netbsd
21217ca54c3Smrg		else
21317ca54c3Smrg		    os=netbsdelf
21417ca54c3Smrg		fi
21517ca54c3Smrg		;;
21617ca54c3Smrg	    *)
21717ca54c3Smrg		os=netbsd
21817ca54c3Smrg		;;
21917ca54c3Smrg	esac
22017ca54c3Smrg	# Determine ABI tags.
221ea1d6981Smrg	case "$UNAME_MACHINE_ARCH" in
22217ca54c3Smrg	    earm*)
22317ca54c3Smrg		expr='s/^earmv[0-9]/-eabi/;s/eb$//'
224ea1d6981Smrg		abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"`
22517ca54c3Smrg		;;
22617ca54c3Smrg	esac
22717ca54c3Smrg	# The OS release
22817ca54c3Smrg	# Debian GNU/NetBSD machines have a different userland, and
22917ca54c3Smrg	# thus, need a distinct triplet. However, they do not need
23017ca54c3Smrg	# kernel version information, so it can be replaced with a
23117ca54c3Smrg	# suitable tag, in the style of linux-gnu.
232ea1d6981Smrg	case "$UNAME_VERSION" in
23317ca54c3Smrg	    Debian*)
23417ca54c3Smrg		release='-gnu'
23517ca54c3Smrg		;;
23617ca54c3Smrg	    *)
237ea1d6981Smrg		release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2`
23817ca54c3Smrg		;;
23917ca54c3Smrg	esac
24017ca54c3Smrg	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
24117ca54c3Smrg	# contains redundant information, the shorter form:
24217ca54c3Smrg	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
243ea1d6981Smrg	echo "$machine-${os}${release}${abi-}"
24417ca54c3Smrg	exit ;;
24517ca54c3Smrg    *:Bitrig:*:*)
24617ca54c3Smrg	UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
247ea1d6981Smrg	echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE"
24817ca54c3Smrg	exit ;;
24917ca54c3Smrg    *:OpenBSD:*:*)
25017ca54c3Smrg	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
251ea1d6981Smrg	echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE"
25217ca54c3Smrg	exit ;;
25317ca54c3Smrg    *:LibertyBSD:*:*)
25417ca54c3Smrg	UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
255ea1d6981Smrg	echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE"
256ea1d6981Smrg	exit ;;
257ea1d6981Smrg    *:MidnightBSD:*:*)
258ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-midnightbsd"$UNAME_RELEASE"
25917ca54c3Smrg	exit ;;
26017ca54c3Smrg    *:ekkoBSD:*:*)
261ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-ekkobsd"$UNAME_RELEASE"
26217ca54c3Smrg	exit ;;
26317ca54c3Smrg    *:SolidBSD:*:*)
264ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE"
26517ca54c3Smrg	exit ;;
26617ca54c3Smrg    macppc:MirBSD:*:*)
267ea1d6981Smrg	echo powerpc-unknown-mirbsd"$UNAME_RELEASE"
26817ca54c3Smrg	exit ;;
26917ca54c3Smrg    *:MirBSD:*:*)
270ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-mirbsd"$UNAME_RELEASE"
27117ca54c3Smrg	exit ;;
27217ca54c3Smrg    *:Sortix:*:*)
273ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-sortix
27417ca54c3Smrg	exit ;;
27517ca54c3Smrg    *:Redox:*:*)
276ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-redox
27717ca54c3Smrg	exit ;;
278ea1d6981Smrg    mips:OSF1:*.*)
279ea1d6981Smrg        echo mips-dec-osf1
280ea1d6981Smrg        exit ;;
28117ca54c3Smrg    alpha:OSF1:*:*)
28217ca54c3Smrg	case $UNAME_RELEASE in
28317ca54c3Smrg	*4.0)
28417ca54c3Smrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
28517ca54c3Smrg		;;
28617ca54c3Smrg	*5.*)
28717ca54c3Smrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
28817ca54c3Smrg		;;
28917ca54c3Smrg	esac
29017ca54c3Smrg	# According to Compaq, /usr/sbin/psrinfo has been available on
29117ca54c3Smrg	# OSF/1 and Tru64 systems produced since 1995.  I hope that
29217ca54c3Smrg	# covers most systems running today.  This code pipes the CPU
29317ca54c3Smrg	# types through head -n 1, so we only detect the type of CPU 0.
29417ca54c3Smrg	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
29517ca54c3Smrg	case "$ALPHA_CPU_TYPE" in
29617ca54c3Smrg	    "EV4 (21064)")
29717ca54c3Smrg		UNAME_MACHINE=alpha ;;
29817ca54c3Smrg	    "EV4.5 (21064)")
29917ca54c3Smrg		UNAME_MACHINE=alpha ;;
30017ca54c3Smrg	    "LCA4 (21066/21068)")
30117ca54c3Smrg		UNAME_MACHINE=alpha ;;
30217ca54c3Smrg	    "EV5 (21164)")
30317ca54c3Smrg		UNAME_MACHINE=alphaev5 ;;
30417ca54c3Smrg	    "EV5.6 (21164A)")
30517ca54c3Smrg		UNAME_MACHINE=alphaev56 ;;
30617ca54c3Smrg	    "EV5.6 (21164PC)")
30717ca54c3Smrg		UNAME_MACHINE=alphapca56 ;;
30817ca54c3Smrg	    "EV5.7 (21164PC)")
30917ca54c3Smrg		UNAME_MACHINE=alphapca57 ;;
31017ca54c3Smrg	    "EV6 (21264)")
31117ca54c3Smrg		UNAME_MACHINE=alphaev6 ;;
31217ca54c3Smrg	    "EV6.7 (21264A)")
31317ca54c3Smrg		UNAME_MACHINE=alphaev67 ;;
31417ca54c3Smrg	    "EV6.8CB (21264C)")
31517ca54c3Smrg		UNAME_MACHINE=alphaev68 ;;
31617ca54c3Smrg	    "EV6.8AL (21264B)")
31717ca54c3Smrg		UNAME_MACHINE=alphaev68 ;;
31817ca54c3Smrg	    "EV6.8CX (21264D)")
31917ca54c3Smrg		UNAME_MACHINE=alphaev68 ;;
32017ca54c3Smrg	    "EV6.9A (21264/EV69A)")
32117ca54c3Smrg		UNAME_MACHINE=alphaev69 ;;
32217ca54c3Smrg	    "EV7 (21364)")
32317ca54c3Smrg		UNAME_MACHINE=alphaev7 ;;
32417ca54c3Smrg	    "EV7.9 (21364A)")
32517ca54c3Smrg		UNAME_MACHINE=alphaev79 ;;
32617ca54c3Smrg	esac
32717ca54c3Smrg	# A Pn.n version is a patched version.
32817ca54c3Smrg	# A Vn.n version is a released version.
32917ca54c3Smrg	# A Tn.n version is a released field test version.
33017ca54c3Smrg	# A Xn.n version is an unreleased experimental baselevel.
33117ca54c3Smrg	# 1.2 uses "1.2" for uname -r.
332ea1d6981Smrg	echo "$UNAME_MACHINE"-dec-osf"`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`"
33317ca54c3Smrg	# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
33417ca54c3Smrg	exitcode=$?
33517ca54c3Smrg	trap '' 0
33617ca54c3Smrg	exit $exitcode ;;
33717ca54c3Smrg    Amiga*:UNIX_System_V:4.0:*)
33817ca54c3Smrg	echo m68k-unknown-sysv4
33917ca54c3Smrg	exit ;;
34017ca54c3Smrg    *:[Aa]miga[Oo][Ss]:*:*)
341ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-amigaos
34217ca54c3Smrg	exit ;;
34317ca54c3Smrg    *:[Mm]orph[Oo][Ss]:*:*)
344ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-morphos
34517ca54c3Smrg	exit ;;
34617ca54c3Smrg    *:OS/390:*:*)
34717ca54c3Smrg	echo i370-ibm-openedition
34817ca54c3Smrg	exit ;;
34917ca54c3Smrg    *:z/VM:*:*)
35017ca54c3Smrg	echo s390-ibm-zvmoe
35117ca54c3Smrg	exit ;;
35217ca54c3Smrg    *:OS400:*:*)
35317ca54c3Smrg	echo powerpc-ibm-os400
35417ca54c3Smrg	exit ;;
35517ca54c3Smrg    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
356ea1d6981Smrg	echo arm-acorn-riscix"$UNAME_RELEASE"
35717ca54c3Smrg	exit ;;
35817ca54c3Smrg    arm*:riscos:*:*|arm*:RISCOS:*:*)
35917ca54c3Smrg	echo arm-unknown-riscos
36017ca54c3Smrg	exit ;;
36117ca54c3Smrg    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
36217ca54c3Smrg	echo hppa1.1-hitachi-hiuxmpp
36317ca54c3Smrg	exit ;;
36417ca54c3Smrg    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
36517ca54c3Smrg	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
36617ca54c3Smrg	if test "`(/bin/universe) 2>/dev/null`" = att ; then
36717ca54c3Smrg		echo pyramid-pyramid-sysv3
36817ca54c3Smrg	else
36917ca54c3Smrg		echo pyramid-pyramid-bsd
37017ca54c3Smrg	fi
37117ca54c3Smrg	exit ;;
37217ca54c3Smrg    NILE*:*:*:dcosx)
37317ca54c3Smrg	echo pyramid-pyramid-svr4
37417ca54c3Smrg	exit ;;
37517ca54c3Smrg    DRS?6000:unix:4.0:6*)
37617ca54c3Smrg	echo sparc-icl-nx6
37717ca54c3Smrg	exit ;;
37817ca54c3Smrg    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
37917ca54c3Smrg	case `/usr/bin/uname -p` in
38017ca54c3Smrg	    sparc) echo sparc-icl-nx7; exit ;;
38117ca54c3Smrg	esac ;;
38217ca54c3Smrg    s390x:SunOS:*:*)
383ea1d6981Smrg	echo "$UNAME_MACHINE"-ibm-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
38417ca54c3Smrg	exit ;;
38517ca54c3Smrg    sun4H:SunOS:5.*:*)
386ea1d6981Smrg	echo sparc-hal-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
38717ca54c3Smrg	exit ;;
38817ca54c3Smrg    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
389ea1d6981Smrg	echo sparc-sun-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
39017ca54c3Smrg	exit ;;
39117ca54c3Smrg    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
392ea1d6981Smrg	echo i386-pc-auroraux"$UNAME_RELEASE"
39317ca54c3Smrg	exit ;;
39417ca54c3Smrg    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
395ea1d6981Smrg	UNAME_REL="`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
396ea1d6981Smrg	case `isainfo -b` in
397ea1d6981Smrg	    32)
398ea1d6981Smrg		echo i386-pc-solaris2"$UNAME_REL"
399ea1d6981Smrg		;;
400ea1d6981Smrg	    64)
401ea1d6981Smrg		echo x86_64-pc-solaris2"$UNAME_REL"
402ea1d6981Smrg		;;
403ea1d6981Smrg	esac
40417ca54c3Smrg	exit ;;
40517ca54c3Smrg    sun4*:SunOS:6*:*)
40617ca54c3Smrg	# According to config.sub, this is the proper way to canonicalize
40717ca54c3Smrg	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
40817ca54c3Smrg	# it's likely to be more like Solaris than SunOS4.
409ea1d6981Smrg	echo sparc-sun-solaris3"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
41017ca54c3Smrg	exit ;;
41117ca54c3Smrg    sun4*:SunOS:*:*)
41217ca54c3Smrg	case "`/usr/bin/arch -k`" in
41317ca54c3Smrg	    Series*|S4*)
41417ca54c3Smrg		UNAME_RELEASE=`uname -v`
41517ca54c3Smrg		;;
41617ca54c3Smrg	esac
41717ca54c3Smrg	# Japanese Language versions have a version number like `4.1.3-JL'.
418ea1d6981Smrg	echo sparc-sun-sunos"`echo "$UNAME_RELEASE"|sed -e 's/-/_/'`"
41917ca54c3Smrg	exit ;;
42017ca54c3Smrg    sun3*:SunOS:*:*)
421ea1d6981Smrg	echo m68k-sun-sunos"$UNAME_RELEASE"
42217ca54c3Smrg	exit ;;
42317ca54c3Smrg    sun*:*:4.2BSD:*)
42417ca54c3Smrg	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
425ea1d6981Smrg	test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3
42617ca54c3Smrg	case "`/bin/arch`" in
42717ca54c3Smrg	    sun3)
428ea1d6981Smrg		echo m68k-sun-sunos"$UNAME_RELEASE"
42917ca54c3Smrg		;;
43017ca54c3Smrg	    sun4)
431ea1d6981Smrg		echo sparc-sun-sunos"$UNAME_RELEASE"
43217ca54c3Smrg		;;
43317ca54c3Smrg	esac
43417ca54c3Smrg	exit ;;
43517ca54c3Smrg    aushp:SunOS:*:*)
436ea1d6981Smrg	echo sparc-auspex-sunos"$UNAME_RELEASE"
43717ca54c3Smrg	exit ;;
43817ca54c3Smrg    # The situation for MiNT is a little confusing.  The machine name
43917ca54c3Smrg    # can be virtually everything (everything which is not
44017ca54c3Smrg    # "atarist" or "atariste" at least should have a processor
44117ca54c3Smrg    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
44217ca54c3Smrg    # to the lowercase version "mint" (or "freemint").  Finally
44317ca54c3Smrg    # the system name "TOS" denotes a system which is actually not
44417ca54c3Smrg    # MiNT.  But MiNT is downward compatible to TOS, so this should
44517ca54c3Smrg    # be no problem.
44617ca54c3Smrg    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
447ea1d6981Smrg	echo m68k-atari-mint"$UNAME_RELEASE"
44817ca54c3Smrg	exit ;;
44917ca54c3Smrg    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
450ea1d6981Smrg	echo m68k-atari-mint"$UNAME_RELEASE"
45117ca54c3Smrg	exit ;;
45217ca54c3Smrg    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
453ea1d6981Smrg	echo m68k-atari-mint"$UNAME_RELEASE"
45417ca54c3Smrg	exit ;;
45517ca54c3Smrg    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
456ea1d6981Smrg	echo m68k-milan-mint"$UNAME_RELEASE"
45717ca54c3Smrg	exit ;;
45817ca54c3Smrg    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
459ea1d6981Smrg	echo m68k-hades-mint"$UNAME_RELEASE"
46017ca54c3Smrg	exit ;;
46117ca54c3Smrg    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
462ea1d6981Smrg	echo m68k-unknown-mint"$UNAME_RELEASE"
46317ca54c3Smrg	exit ;;
46417ca54c3Smrg    m68k:machten:*:*)
465ea1d6981Smrg	echo m68k-apple-machten"$UNAME_RELEASE"
46617ca54c3Smrg	exit ;;
46717ca54c3Smrg    powerpc:machten:*:*)
468ea1d6981Smrg	echo powerpc-apple-machten"$UNAME_RELEASE"
46917ca54c3Smrg	exit ;;
47017ca54c3Smrg    RISC*:Mach:*:*)
47117ca54c3Smrg	echo mips-dec-mach_bsd4.3
47217ca54c3Smrg	exit ;;
47317ca54c3Smrg    RISC*:ULTRIX:*:*)
474ea1d6981Smrg	echo mips-dec-ultrix"$UNAME_RELEASE"
47517ca54c3Smrg	exit ;;
47617ca54c3Smrg    VAX*:ULTRIX*:*:*)
477ea1d6981Smrg	echo vax-dec-ultrix"$UNAME_RELEASE"
47817ca54c3Smrg	exit ;;
47917ca54c3Smrg    2020:CLIX:*:* | 2430:CLIX:*:*)
480ea1d6981Smrg	echo clipper-intergraph-clix"$UNAME_RELEASE"
48117ca54c3Smrg	exit ;;
48217ca54c3Smrg    mips:*:*:UMIPS | mips:*:*:RISCos)
483ea1d6981Smrg	set_cc_for_build
484ea1d6981Smrg	sed 's/^	//' << EOF > "$dummy.c"
48517ca54c3Smrg#ifdef __cplusplus
48617ca54c3Smrg#include <stdio.h>  /* for printf() prototype */
48717ca54c3Smrg	int main (int argc, char *argv[]) {
48817ca54c3Smrg#else
48917ca54c3Smrg	int main (argc, argv) int argc; char *argv[]; {
49017ca54c3Smrg#endif
49117ca54c3Smrg	#if defined (host_mips) && defined (MIPSEB)
49217ca54c3Smrg	#if defined (SYSTYPE_SYSV)
493ea1d6981Smrg	  printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0);
49417ca54c3Smrg	#endif
49517ca54c3Smrg	#if defined (SYSTYPE_SVR4)
496ea1d6981Smrg	  printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0);
49717ca54c3Smrg	#endif
49817ca54c3Smrg	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
499ea1d6981Smrg	  printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0);
50017ca54c3Smrg	#endif
50117ca54c3Smrg	#endif
50217ca54c3Smrg	  exit (-1);
50317ca54c3Smrg	}
50417ca54c3SmrgEOF
505ea1d6981Smrg	$CC_FOR_BUILD -o "$dummy" "$dummy.c" &&
506ea1d6981Smrg	  dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` &&
507ea1d6981Smrg	  SYSTEM_NAME=`"$dummy" "$dummyarg"` &&
50817ca54c3Smrg	    { echo "$SYSTEM_NAME"; exit; }
509ea1d6981Smrg	echo mips-mips-riscos"$UNAME_RELEASE"
51017ca54c3Smrg	exit ;;
51117ca54c3Smrg    Motorola:PowerMAX_OS:*:*)
51217ca54c3Smrg	echo powerpc-motorola-powermax
51317ca54c3Smrg	exit ;;
51417ca54c3Smrg    Motorola:*:4.3:PL8-*)
51517ca54c3Smrg	echo powerpc-harris-powermax
51617ca54c3Smrg	exit ;;
51717ca54c3Smrg    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
51817ca54c3Smrg	echo powerpc-harris-powermax
51917ca54c3Smrg	exit ;;
52017ca54c3Smrg    Night_Hawk:Power_UNIX:*:*)
52117ca54c3Smrg	echo powerpc-harris-powerunix
52217ca54c3Smrg	exit ;;
52317ca54c3Smrg    m88k:CX/UX:7*:*)
52417ca54c3Smrg	echo m88k-harris-cxux7
52517ca54c3Smrg	exit ;;
52617ca54c3Smrg    m88k:*:4*:R4*)
52717ca54c3Smrg	echo m88k-motorola-sysv4
52817ca54c3Smrg	exit ;;
52917ca54c3Smrg    m88k:*:3*:R3*)
53017ca54c3Smrg	echo m88k-motorola-sysv3
53117ca54c3Smrg	exit ;;
53217ca54c3Smrg    AViiON:dgux:*:*)
53317ca54c3Smrg	# DG/UX returns AViiON for all architectures
53417ca54c3Smrg	UNAME_PROCESSOR=`/usr/bin/uname -p`
535ea1d6981Smrg	if [ "$UNAME_PROCESSOR" = mc88100 ] || [ "$UNAME_PROCESSOR" = mc88110 ]
53617ca54c3Smrg	then
537ea1d6981Smrg	    if [ "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx ] || \
538ea1d6981Smrg	       [ "$TARGET_BINARY_INTERFACE"x = x ]
53917ca54c3Smrg	    then
540ea1d6981Smrg		echo m88k-dg-dgux"$UNAME_RELEASE"
54117ca54c3Smrg	    else
542ea1d6981Smrg		echo m88k-dg-dguxbcs"$UNAME_RELEASE"
54317ca54c3Smrg	    fi
54417ca54c3Smrg	else
545ea1d6981Smrg	    echo i586-dg-dgux"$UNAME_RELEASE"
54617ca54c3Smrg	fi
54717ca54c3Smrg	exit ;;
54817ca54c3Smrg    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
54917ca54c3Smrg	echo m88k-dolphin-sysv3
55017ca54c3Smrg	exit ;;
55117ca54c3Smrg    M88*:*:R3*:*)
55217ca54c3Smrg	# Delta 88k system running SVR3
55317ca54c3Smrg	echo m88k-motorola-sysv3
55417ca54c3Smrg	exit ;;
55517ca54c3Smrg    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
55617ca54c3Smrg	echo m88k-tektronix-sysv3
55717ca54c3Smrg	exit ;;
55817ca54c3Smrg    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
55917ca54c3Smrg	echo m68k-tektronix-bsd
56017ca54c3Smrg	exit ;;
56117ca54c3Smrg    *:IRIX*:*:*)
562ea1d6981Smrg	echo mips-sgi-irix"`echo "$UNAME_RELEASE"|sed -e 's/-/_/g'`"
56317ca54c3Smrg	exit ;;
56417ca54c3Smrg    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
56517ca54c3Smrg	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
56617ca54c3Smrg	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
56717ca54c3Smrg    i*86:AIX:*:*)
56817ca54c3Smrg	echo i386-ibm-aix
56917ca54c3Smrg	exit ;;
57017ca54c3Smrg    ia64:AIX:*:*)
57117ca54c3Smrg	if [ -x /usr/bin/oslevel ] ; then
57217ca54c3Smrg		IBM_REV=`/usr/bin/oslevel`
57317ca54c3Smrg	else
574ea1d6981Smrg		IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
57517ca54c3Smrg	fi
576ea1d6981Smrg	echo "$UNAME_MACHINE"-ibm-aix"$IBM_REV"
57717ca54c3Smrg	exit ;;
57817ca54c3Smrg    *:AIX:2:3)
57917ca54c3Smrg	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
580ea1d6981Smrg		set_cc_for_build
581ea1d6981Smrg		sed 's/^		//' << EOF > "$dummy.c"
58217ca54c3Smrg		#include <sys/systemcfg.h>
58317ca54c3Smrg
58417ca54c3Smrg		main()
58517ca54c3Smrg			{
58617ca54c3Smrg			if (!__power_pc())
58717ca54c3Smrg				exit(1);
58817ca54c3Smrg			puts("powerpc-ibm-aix3.2.5");
58917ca54c3Smrg			exit(0);
59017ca54c3Smrg			}
59117ca54c3SmrgEOF
592ea1d6981Smrg		if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"`
59317ca54c3Smrg		then
59417ca54c3Smrg			echo "$SYSTEM_NAME"
59517ca54c3Smrg		else
59617ca54c3Smrg			echo rs6000-ibm-aix3.2.5
59717ca54c3Smrg		fi
59817ca54c3Smrg	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
59917ca54c3Smrg		echo rs6000-ibm-aix3.2.4
60017ca54c3Smrg	else
60117ca54c3Smrg		echo rs6000-ibm-aix3.2
60217ca54c3Smrg	fi
60317ca54c3Smrg	exit ;;
60417ca54c3Smrg    *:AIX:*:[4567])
60517ca54c3Smrg	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
606ea1d6981Smrg	if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then
60717ca54c3Smrg		IBM_ARCH=rs6000
60817ca54c3Smrg	else
60917ca54c3Smrg		IBM_ARCH=powerpc
61017ca54c3Smrg	fi
61117ca54c3Smrg	if [ -x /usr/bin/lslpp ] ; then
61217ca54c3Smrg		IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |
61317ca54c3Smrg			   awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
61417ca54c3Smrg	else
615ea1d6981Smrg		IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
61617ca54c3Smrg	fi
617ea1d6981Smrg	echo "$IBM_ARCH"-ibm-aix"$IBM_REV"
61817ca54c3Smrg	exit ;;
61917ca54c3Smrg    *:AIX:*:*)
62017ca54c3Smrg	echo rs6000-ibm-aix
62117ca54c3Smrg	exit ;;
622ea1d6981Smrg    ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*)
62317ca54c3Smrg	echo romp-ibm-bsd4.4
62417ca54c3Smrg	exit ;;
62517ca54c3Smrg    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
626ea1d6981Smrg	echo romp-ibm-bsd"$UNAME_RELEASE"   # 4.3 with uname added to
62717ca54c3Smrg	exit ;;                             # report: romp-ibm BSD 4.3
62817ca54c3Smrg    *:BOSX:*:*)
62917ca54c3Smrg	echo rs6000-bull-bosx
63017ca54c3Smrg	exit ;;
63117ca54c3Smrg    DPX/2?00:B.O.S.:*:*)
63217ca54c3Smrg	echo m68k-bull-sysv3
63317ca54c3Smrg	exit ;;
63417ca54c3Smrg    9000/[34]??:4.3bsd:1.*:*)
63517ca54c3Smrg	echo m68k-hp-bsd
63617ca54c3Smrg	exit ;;
63717ca54c3Smrg    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
63817ca54c3Smrg	echo m68k-hp-bsd4.4
63917ca54c3Smrg	exit ;;
64017ca54c3Smrg    9000/[34678]??:HP-UX:*:*)
641ea1d6981Smrg	HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
642ea1d6981Smrg	case "$UNAME_MACHINE" in
643ea1d6981Smrg	    9000/31?)            HP_ARCH=m68000 ;;
644ea1d6981Smrg	    9000/[34]??)         HP_ARCH=m68k ;;
64517ca54c3Smrg	    9000/[678][0-9][0-9])
64617ca54c3Smrg		if [ -x /usr/bin/getconf ]; then
64717ca54c3Smrg		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
64817ca54c3Smrg		    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
649ea1d6981Smrg		    case "$sc_cpu_version" in
65017ca54c3Smrg		      523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
65117ca54c3Smrg		      528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
65217ca54c3Smrg		      532)                      # CPU_PA_RISC2_0
653ea1d6981Smrg			case "$sc_kernel_bits" in
65417ca54c3Smrg			  32) HP_ARCH=hppa2.0n ;;
65517ca54c3Smrg			  64) HP_ARCH=hppa2.0w ;;
65617ca54c3Smrg			  '') HP_ARCH=hppa2.0 ;;   # HP-UX 10.20
65717ca54c3Smrg			esac ;;
65817ca54c3Smrg		    esac
65917ca54c3Smrg		fi
660ea1d6981Smrg		if [ "$HP_ARCH" = "" ]; then
661ea1d6981Smrg		    set_cc_for_build
662ea1d6981Smrg		    sed 's/^		//' << EOF > "$dummy.c"
66317ca54c3Smrg
66417ca54c3Smrg		#define _HPUX_SOURCE
66517ca54c3Smrg		#include <stdlib.h>
66617ca54c3Smrg		#include <unistd.h>
66717ca54c3Smrg
66817ca54c3Smrg		int main ()
66917ca54c3Smrg		{
67017ca54c3Smrg		#if defined(_SC_KERNEL_BITS)
67117ca54c3Smrg		    long bits = sysconf(_SC_KERNEL_BITS);
67217ca54c3Smrg		#endif
67317ca54c3Smrg		    long cpu  = sysconf (_SC_CPU_VERSION);
67417ca54c3Smrg
67517ca54c3Smrg		    switch (cpu)
67617ca54c3Smrg			{
67717ca54c3Smrg			case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
67817ca54c3Smrg			case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
67917ca54c3Smrg			case CPU_PA_RISC2_0:
68017ca54c3Smrg		#if defined(_SC_KERNEL_BITS)
68117ca54c3Smrg			    switch (bits)
68217ca54c3Smrg				{
68317ca54c3Smrg				case 64: puts ("hppa2.0w"); break;
68417ca54c3Smrg				case 32: puts ("hppa2.0n"); break;
68517ca54c3Smrg				default: puts ("hppa2.0"); break;
68617ca54c3Smrg				} break;
68717ca54c3Smrg		#else  /* !defined(_SC_KERNEL_BITS) */
68817ca54c3Smrg			    puts ("hppa2.0"); break;
68917ca54c3Smrg		#endif
69017ca54c3Smrg			default: puts ("hppa1.0"); break;
69117ca54c3Smrg			}
69217ca54c3Smrg		    exit (0);
69317ca54c3Smrg		}
69417ca54c3SmrgEOF
695ea1d6981Smrg		    (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"`
69617ca54c3Smrg		    test -z "$HP_ARCH" && HP_ARCH=hppa
69717ca54c3Smrg		fi ;;
69817ca54c3Smrg	esac
699ea1d6981Smrg	if [ "$HP_ARCH" = hppa2.0w ]
70017ca54c3Smrg	then
701ea1d6981Smrg	    set_cc_for_build
70217ca54c3Smrg
70317ca54c3Smrg	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
70417ca54c3Smrg	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
70517ca54c3Smrg	    # generating 64-bit code.  GNU and HP use different nomenclature:
70617ca54c3Smrg	    #
70717ca54c3Smrg	    # $ CC_FOR_BUILD=cc ./config.guess
70817ca54c3Smrg	    # => hppa2.0w-hp-hpux11.23
70917ca54c3Smrg	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
71017ca54c3Smrg	    # => hppa64-hp-hpux11.23
71117ca54c3Smrg
71217ca54c3Smrg	    if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) |
71317ca54c3Smrg		grep -q __LP64__
71417ca54c3Smrg	    then
71517ca54c3Smrg		HP_ARCH=hppa2.0w
71617ca54c3Smrg	    else
71717ca54c3Smrg		HP_ARCH=hppa64
71817ca54c3Smrg	    fi
71917ca54c3Smrg	fi
720ea1d6981Smrg	echo "$HP_ARCH"-hp-hpux"$HPUX_REV"
72117ca54c3Smrg	exit ;;
72217ca54c3Smrg    ia64:HP-UX:*:*)
723ea1d6981Smrg	HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
724ea1d6981Smrg	echo ia64-hp-hpux"$HPUX_REV"
72517ca54c3Smrg	exit ;;
72617ca54c3Smrg    3050*:HI-UX:*:*)
727ea1d6981Smrg	set_cc_for_build
728ea1d6981Smrg	sed 's/^	//' << EOF > "$dummy.c"
72917ca54c3Smrg	#include <unistd.h>
73017ca54c3Smrg	int
73117ca54c3Smrg	main ()
73217ca54c3Smrg	{
73317ca54c3Smrg	  long cpu = sysconf (_SC_CPU_VERSION);
73417ca54c3Smrg	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
73517ca54c3Smrg	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
73617ca54c3Smrg	     results, however.  */
73717ca54c3Smrg	  if (CPU_IS_PA_RISC (cpu))
73817ca54c3Smrg	    {
73917ca54c3Smrg	      switch (cpu)
74017ca54c3Smrg		{
74117ca54c3Smrg		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
74217ca54c3Smrg		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
74317ca54c3Smrg		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
74417ca54c3Smrg		  default: puts ("hppa-hitachi-hiuxwe2"); break;
74517ca54c3Smrg		}
74617ca54c3Smrg	    }
74717ca54c3Smrg	  else if (CPU_IS_HP_MC68K (cpu))
74817ca54c3Smrg	    puts ("m68k-hitachi-hiuxwe2");
74917ca54c3Smrg	  else puts ("unknown-hitachi-hiuxwe2");
75017ca54c3Smrg	  exit (0);
75117ca54c3Smrg	}
75217ca54c3SmrgEOF
753ea1d6981Smrg	$CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` &&
75417ca54c3Smrg		{ echo "$SYSTEM_NAME"; exit; }
75517ca54c3Smrg	echo unknown-hitachi-hiuxwe2
75617ca54c3Smrg	exit ;;
757ea1d6981Smrg    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*)
75817ca54c3Smrg	echo hppa1.1-hp-bsd
75917ca54c3Smrg	exit ;;
76017ca54c3Smrg    9000/8??:4.3bsd:*:*)
76117ca54c3Smrg	echo hppa1.0-hp-bsd
76217ca54c3Smrg	exit ;;
76317ca54c3Smrg    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
76417ca54c3Smrg	echo hppa1.0-hp-mpeix
76517ca54c3Smrg	exit ;;
766ea1d6981Smrg    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*)
76717ca54c3Smrg	echo hppa1.1-hp-osf
76817ca54c3Smrg	exit ;;
76917ca54c3Smrg    hp8??:OSF1:*:*)
77017ca54c3Smrg	echo hppa1.0-hp-osf
77117ca54c3Smrg	exit ;;
77217ca54c3Smrg    i*86:OSF1:*:*)
77317ca54c3Smrg	if [ -x /usr/sbin/sysversion ] ; then
774ea1d6981Smrg	    echo "$UNAME_MACHINE"-unknown-osf1mk
77517ca54c3Smrg	else
776ea1d6981Smrg	    echo "$UNAME_MACHINE"-unknown-osf1
77717ca54c3Smrg	fi
77817ca54c3Smrg	exit ;;
77917ca54c3Smrg    parisc*:Lites*:*:*)
78017ca54c3Smrg	echo hppa1.1-hp-lites
78117ca54c3Smrg	exit ;;
78217ca54c3Smrg    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
78317ca54c3Smrg	echo c1-convex-bsd
78417ca54c3Smrg	exit ;;
78517ca54c3Smrg    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
78617ca54c3Smrg	if getsysinfo -f scalar_acc
78717ca54c3Smrg	then echo c32-convex-bsd
78817ca54c3Smrg	else echo c2-convex-bsd
78917ca54c3Smrg	fi
79017ca54c3Smrg	exit ;;
79117ca54c3Smrg    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
79217ca54c3Smrg	echo c34-convex-bsd
79317ca54c3Smrg	exit ;;
79417ca54c3Smrg    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
79517ca54c3Smrg	echo c38-convex-bsd
79617ca54c3Smrg	exit ;;
79717ca54c3Smrg    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
79817ca54c3Smrg	echo c4-convex-bsd
79917ca54c3Smrg	exit ;;
80017ca54c3Smrg    CRAY*Y-MP:*:*:*)
801ea1d6981Smrg	echo ymp-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
80217ca54c3Smrg	exit ;;
80317ca54c3Smrg    CRAY*[A-Z]90:*:*:*)
804ea1d6981Smrg	echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \
80517ca54c3Smrg	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
80617ca54c3Smrg	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
80717ca54c3Smrg	      -e 's/\.[^.]*$/.X/'
80817ca54c3Smrg	exit ;;
80917ca54c3Smrg    CRAY*TS:*:*:*)
810ea1d6981Smrg	echo t90-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
81117ca54c3Smrg	exit ;;
81217ca54c3Smrg    CRAY*T3E:*:*:*)
813ea1d6981Smrg	echo alphaev5-cray-unicosmk"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
81417ca54c3Smrg	exit ;;
81517ca54c3Smrg    CRAY*SV1:*:*:*)
816ea1d6981Smrg	echo sv1-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
81717ca54c3Smrg	exit ;;
81817ca54c3Smrg    *:UNICOS/mp:*:*)
819ea1d6981Smrg	echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
82017ca54c3Smrg	exit ;;
82117ca54c3Smrg    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
82217ca54c3Smrg	FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
82317ca54c3Smrg	FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
824ea1d6981Smrg	FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'`
82517ca54c3Smrg	echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
82617ca54c3Smrg	exit ;;
82717ca54c3Smrg    5000:UNIX_System_V:4.*:*)
82817ca54c3Smrg	FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
829ea1d6981Smrg	FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`
83017ca54c3Smrg	echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
83117ca54c3Smrg	exit ;;
83217ca54c3Smrg    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
833ea1d6981Smrg	echo "$UNAME_MACHINE"-pc-bsdi"$UNAME_RELEASE"
83417ca54c3Smrg	exit ;;
83517ca54c3Smrg    sparc*:BSD/OS:*:*)
836ea1d6981Smrg	echo sparc-unknown-bsdi"$UNAME_RELEASE"
83717ca54c3Smrg	exit ;;
83817ca54c3Smrg    *:BSD/OS:*:*)
839ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE"
840ea1d6981Smrg	exit ;;
841ea1d6981Smrg    arm:FreeBSD:*:*)
842ea1d6981Smrg	UNAME_PROCESSOR=`uname -p`
843ea1d6981Smrg	set_cc_for_build
844ea1d6981Smrg	if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
845ea1d6981Smrg	    | grep -q __ARM_PCS_VFP
846ea1d6981Smrg	then
847ea1d6981Smrg	    echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabi
848ea1d6981Smrg	else
849ea1d6981Smrg	    echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabihf
850ea1d6981Smrg	fi
85117ca54c3Smrg	exit ;;
85217ca54c3Smrg    *:FreeBSD:*:*)
85317ca54c3Smrg	UNAME_PROCESSOR=`/usr/bin/uname -p`
854ea1d6981Smrg	case "$UNAME_PROCESSOR" in
85517ca54c3Smrg	    amd64)
85617ca54c3Smrg		UNAME_PROCESSOR=x86_64 ;;
85717ca54c3Smrg	    i386)
85817ca54c3Smrg		UNAME_PROCESSOR=i586 ;;
85917ca54c3Smrg	esac
860ea1d6981Smrg	echo "$UNAME_PROCESSOR"-unknown-freebsd"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
86117ca54c3Smrg	exit ;;
86217ca54c3Smrg    i*:CYGWIN*:*)
863ea1d6981Smrg	echo "$UNAME_MACHINE"-pc-cygwin
86417ca54c3Smrg	exit ;;
86517ca54c3Smrg    *:MINGW64*:*)
866ea1d6981Smrg	echo "$UNAME_MACHINE"-pc-mingw64
86717ca54c3Smrg	exit ;;
86817ca54c3Smrg    *:MINGW*:*)
869ea1d6981Smrg	echo "$UNAME_MACHINE"-pc-mingw32
87017ca54c3Smrg	exit ;;
87117ca54c3Smrg    *:MSYS*:*)
872ea1d6981Smrg	echo "$UNAME_MACHINE"-pc-msys
87317ca54c3Smrg	exit ;;
87417ca54c3Smrg    i*:PW*:*)
875ea1d6981Smrg	echo "$UNAME_MACHINE"-pc-pw32
87617ca54c3Smrg	exit ;;
87717ca54c3Smrg    *:Interix*:*)
878ea1d6981Smrg	case "$UNAME_MACHINE" in
87917ca54c3Smrg	    x86)
880ea1d6981Smrg		echo i586-pc-interix"$UNAME_RELEASE"
88117ca54c3Smrg		exit ;;
88217ca54c3Smrg	    authenticamd | genuineintel | EM64T)
883ea1d6981Smrg		echo x86_64-unknown-interix"$UNAME_RELEASE"
88417ca54c3Smrg		exit ;;
88517ca54c3Smrg	    IA64)
886ea1d6981Smrg		echo ia64-unknown-interix"$UNAME_RELEASE"
88717ca54c3Smrg		exit ;;
88817ca54c3Smrg	esac ;;
88917ca54c3Smrg    i*:UWIN*:*)
890ea1d6981Smrg	echo "$UNAME_MACHINE"-pc-uwin
89117ca54c3Smrg	exit ;;
89217ca54c3Smrg    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
89317ca54c3Smrg	echo x86_64-unknown-cygwin
89417ca54c3Smrg	exit ;;
89517ca54c3Smrg    prep*:SunOS:5.*:*)
896ea1d6981Smrg	echo powerpcle-unknown-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
89717ca54c3Smrg	exit ;;
89817ca54c3Smrg    *:GNU:*:*)
89917ca54c3Smrg	# the GNU system
900ea1d6981Smrg	echo "`echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,'`-unknown-$LIBC`echo "$UNAME_RELEASE"|sed -e 's,/.*$,,'`"
90117ca54c3Smrg	exit ;;
90217ca54c3Smrg    *:GNU/*:*:*)
90317ca54c3Smrg	# other systems with GNU libc and userland
904ea1d6981Smrg	echo "$UNAME_MACHINE-unknown-`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`-$LIBC"
90517ca54c3Smrg	exit ;;
906ea1d6981Smrg    *:Minix:*:*)
907ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-minix
90817ca54c3Smrg	exit ;;
90917ca54c3Smrg    aarch64:Linux:*:*)
910ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
91117ca54c3Smrg	exit ;;
91217ca54c3Smrg    aarch64_be:Linux:*:*)
91317ca54c3Smrg	UNAME_MACHINE=aarch64_be
914ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
91517ca54c3Smrg	exit ;;
91617ca54c3Smrg    alpha:Linux:*:*)
91717ca54c3Smrg	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
91817ca54c3Smrg	  EV5)   UNAME_MACHINE=alphaev5 ;;
91917ca54c3Smrg	  EV56)  UNAME_MACHINE=alphaev56 ;;
92017ca54c3Smrg	  PCA56) UNAME_MACHINE=alphapca56 ;;
92117ca54c3Smrg	  PCA57) UNAME_MACHINE=alphapca56 ;;
92217ca54c3Smrg	  EV6)   UNAME_MACHINE=alphaev6 ;;
92317ca54c3Smrg	  EV67)  UNAME_MACHINE=alphaev67 ;;
92417ca54c3Smrg	  EV68*) UNAME_MACHINE=alphaev68 ;;
92517ca54c3Smrg	esac
92617ca54c3Smrg	objdump --private-headers /bin/sh | grep -q ld.so.1
92717ca54c3Smrg	if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
928ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
92917ca54c3Smrg	exit ;;
93017ca54c3Smrg    arc:Linux:*:* | arceb:Linux:*:*)
931ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
93217ca54c3Smrg	exit ;;
93317ca54c3Smrg    arm*:Linux:*:*)
934ea1d6981Smrg	set_cc_for_build
93517ca54c3Smrg	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
93617ca54c3Smrg	    | grep -q __ARM_EABI__
93717ca54c3Smrg	then
938ea1d6981Smrg	    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
93917ca54c3Smrg	else
94017ca54c3Smrg	    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
94117ca54c3Smrg		| grep -q __ARM_PCS_VFP
94217ca54c3Smrg	    then
943ea1d6981Smrg		echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabi
94417ca54c3Smrg	    else
945ea1d6981Smrg		echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabihf
94617ca54c3Smrg	    fi
94717ca54c3Smrg	fi
94817ca54c3Smrg	exit ;;
94917ca54c3Smrg    avr32*:Linux:*:*)
950ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
95117ca54c3Smrg	exit ;;
95217ca54c3Smrg    cris:Linux:*:*)
953ea1d6981Smrg	echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
95417ca54c3Smrg	exit ;;
95517ca54c3Smrg    crisv32:Linux:*:*)
956ea1d6981Smrg	echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
95717ca54c3Smrg	exit ;;
95817ca54c3Smrg    e2k:Linux:*:*)
959ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
96017ca54c3Smrg	exit ;;
96117ca54c3Smrg    frv:Linux:*:*)
962ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
96317ca54c3Smrg	exit ;;
96417ca54c3Smrg    hexagon:Linux:*:*)
965ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
96617ca54c3Smrg	exit ;;
96717ca54c3Smrg    i*86:Linux:*:*)
968ea1d6981Smrg	echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
96917ca54c3Smrg	exit ;;
97017ca54c3Smrg    ia64:Linux:*:*)
971ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
97217ca54c3Smrg	exit ;;
97317ca54c3Smrg    k1om:Linux:*:*)
974ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
97517ca54c3Smrg	exit ;;
97617ca54c3Smrg    m32r*:Linux:*:*)
977ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
97817ca54c3Smrg	exit ;;
97917ca54c3Smrg    m68*:Linux:*:*)
980ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
98117ca54c3Smrg	exit ;;
98217ca54c3Smrg    mips:Linux:*:* | mips64:Linux:*:*)
983ea1d6981Smrg	set_cc_for_build
984ea1d6981Smrg	sed 's/^	//' << EOF > "$dummy.c"
98517ca54c3Smrg	#undef CPU
98617ca54c3Smrg	#undef ${UNAME_MACHINE}
98717ca54c3Smrg	#undef ${UNAME_MACHINE}el
98817ca54c3Smrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
98917ca54c3Smrg	CPU=${UNAME_MACHINE}el
99017ca54c3Smrg	#else
99117ca54c3Smrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
99217ca54c3Smrg	CPU=${UNAME_MACHINE}
99317ca54c3Smrg	#else
99417ca54c3Smrg	CPU=
99517ca54c3Smrg	#endif
99617ca54c3Smrg	#endif
99717ca54c3SmrgEOF
998ea1d6981Smrg	eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU'`"
999ea1d6981Smrg	test "x$CPU" != x && { echo "$CPU-unknown-linux-$LIBC"; exit; }
100017ca54c3Smrg	;;
100117ca54c3Smrg    mips64el:Linux:*:*)
1002ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
100317ca54c3Smrg	exit ;;
100417ca54c3Smrg    openrisc*:Linux:*:*)
1005ea1d6981Smrg	echo or1k-unknown-linux-"$LIBC"
100617ca54c3Smrg	exit ;;
100717ca54c3Smrg    or32:Linux:*:* | or1k*:Linux:*:*)
1008ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
100917ca54c3Smrg	exit ;;
101017ca54c3Smrg    padre:Linux:*:*)
1011ea1d6981Smrg	echo sparc-unknown-linux-"$LIBC"
101217ca54c3Smrg	exit ;;
101317ca54c3Smrg    parisc64:Linux:*:* | hppa64:Linux:*:*)
1014ea1d6981Smrg	echo hppa64-unknown-linux-"$LIBC"
101517ca54c3Smrg	exit ;;
101617ca54c3Smrg    parisc:Linux:*:* | hppa:Linux:*:*)
101717ca54c3Smrg	# Look for CPU level
101817ca54c3Smrg	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
1019ea1d6981Smrg	  PA7*) echo hppa1.1-unknown-linux-"$LIBC" ;;
1020ea1d6981Smrg	  PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;;
1021ea1d6981Smrg	  *)    echo hppa-unknown-linux-"$LIBC" ;;
102217ca54c3Smrg	esac
102317ca54c3Smrg	exit ;;
102417ca54c3Smrg    ppc64:Linux:*:*)
1025ea1d6981Smrg	echo powerpc64-unknown-linux-"$LIBC"
102617ca54c3Smrg	exit ;;
102717ca54c3Smrg    ppc:Linux:*:*)
1028ea1d6981Smrg	echo powerpc-unknown-linux-"$LIBC"
102917ca54c3Smrg	exit ;;
103017ca54c3Smrg    ppc64le:Linux:*:*)
1031ea1d6981Smrg	echo powerpc64le-unknown-linux-"$LIBC"
103217ca54c3Smrg	exit ;;
103317ca54c3Smrg    ppcle:Linux:*:*)
1034ea1d6981Smrg	echo powerpcle-unknown-linux-"$LIBC"
103517ca54c3Smrg	exit ;;
103617ca54c3Smrg    riscv32:Linux:*:* | riscv64:Linux:*:*)
1037ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
103817ca54c3Smrg	exit ;;
103917ca54c3Smrg    s390:Linux:*:* | s390x:Linux:*:*)
1040ea1d6981Smrg	echo "$UNAME_MACHINE"-ibm-linux-"$LIBC"
104117ca54c3Smrg	exit ;;
104217ca54c3Smrg    sh64*:Linux:*:*)
1043ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
104417ca54c3Smrg	exit ;;
104517ca54c3Smrg    sh*:Linux:*:*)
1046ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
104717ca54c3Smrg	exit ;;
104817ca54c3Smrg    sparc:Linux:*:* | sparc64:Linux:*:*)
1049ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
105017ca54c3Smrg	exit ;;
105117ca54c3Smrg    tile*:Linux:*:*)
1052ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
105317ca54c3Smrg	exit ;;
105417ca54c3Smrg    vax:Linux:*:*)
1055ea1d6981Smrg	echo "$UNAME_MACHINE"-dec-linux-"$LIBC"
105617ca54c3Smrg	exit ;;
105717ca54c3Smrg    x86_64:Linux:*:*)
1058ea1d6981Smrg	echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
105917ca54c3Smrg	exit ;;
106017ca54c3Smrg    xtensa*:Linux:*:*)
1061ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
106217ca54c3Smrg	exit ;;
106317ca54c3Smrg    i*86:DYNIX/ptx:4*:*)
106417ca54c3Smrg	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
106517ca54c3Smrg	# earlier versions are messed up and put the nodename in both
106617ca54c3Smrg	# sysname and nodename.
106717ca54c3Smrg	echo i386-sequent-sysv4
106817ca54c3Smrg	exit ;;
106917ca54c3Smrg    i*86:UNIX_SV:4.2MP:2.*)
107017ca54c3Smrg	# Unixware is an offshoot of SVR4, but it has its own version
107117ca54c3Smrg	# number series starting with 2...
107217ca54c3Smrg	# I am not positive that other SVR4 systems won't match this,
107317ca54c3Smrg	# I just have to hope.  -- rms.
107417ca54c3Smrg	# Use sysv4.2uw... so that sysv4* matches it.
1075ea1d6981Smrg	echo "$UNAME_MACHINE"-pc-sysv4.2uw"$UNAME_VERSION"
107617ca54c3Smrg	exit ;;
107717ca54c3Smrg    i*86:OS/2:*:*)
107817ca54c3Smrg	# If we were able to find `uname', then EMX Unix compatibility
107917ca54c3Smrg	# is probably installed.
1080ea1d6981Smrg	echo "$UNAME_MACHINE"-pc-os2-emx
108117ca54c3Smrg	exit ;;
108217ca54c3Smrg    i*86:XTS-300:*:STOP)
1083ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-stop
108417ca54c3Smrg	exit ;;
108517ca54c3Smrg    i*86:atheos:*:*)
1086ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-atheos
108717ca54c3Smrg	exit ;;
108817ca54c3Smrg    i*86:syllable:*:*)
1089ea1d6981Smrg	echo "$UNAME_MACHINE"-pc-syllable
109017ca54c3Smrg	exit ;;
109117ca54c3Smrg    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
1092ea1d6981Smrg	echo i386-unknown-lynxos"$UNAME_RELEASE"
109317ca54c3Smrg	exit ;;
109417ca54c3Smrg    i*86:*DOS:*:*)
1095ea1d6981Smrg	echo "$UNAME_MACHINE"-pc-msdosdjgpp
109617ca54c3Smrg	exit ;;
1097ea1d6981Smrg    i*86:*:4.*:*)
1098ea1d6981Smrg	UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'`
109917ca54c3Smrg	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1100ea1d6981Smrg		echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL"
110117ca54c3Smrg	else
1102ea1d6981Smrg		echo "$UNAME_MACHINE"-pc-sysv"$UNAME_REL"
110317ca54c3Smrg	fi
110417ca54c3Smrg	exit ;;
110517ca54c3Smrg    i*86:*:5:[678]*)
110617ca54c3Smrg	# UnixWare 7.x, OpenUNIX and OpenServer 6.
110717ca54c3Smrg	case `/bin/uname -X | grep "^Machine"` in
110817ca54c3Smrg	    *486*)	     UNAME_MACHINE=i486 ;;
110917ca54c3Smrg	    *Pentium)	     UNAME_MACHINE=i586 ;;
111017ca54c3Smrg	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
111117ca54c3Smrg	esac
1112ea1d6981Smrg	echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}{$UNAME_VERSION}"
111317ca54c3Smrg	exit ;;
111417ca54c3Smrg    i*86:*:3.2:*)
111517ca54c3Smrg	if test -f /usr/options/cb.name; then
111617ca54c3Smrg		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1117ea1d6981Smrg		echo "$UNAME_MACHINE"-pc-isc"$UNAME_REL"
111817ca54c3Smrg	elif /bin/uname -X 2>/dev/null >/dev/null ; then
111917ca54c3Smrg		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
112017ca54c3Smrg		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
112117ca54c3Smrg		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
112217ca54c3Smrg			&& UNAME_MACHINE=i586
112317ca54c3Smrg		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
112417ca54c3Smrg			&& UNAME_MACHINE=i686
112517ca54c3Smrg		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
112617ca54c3Smrg			&& UNAME_MACHINE=i686
1127ea1d6981Smrg		echo "$UNAME_MACHINE"-pc-sco"$UNAME_REL"
112817ca54c3Smrg	else
1129ea1d6981Smrg		echo "$UNAME_MACHINE"-pc-sysv32
113017ca54c3Smrg	fi
113117ca54c3Smrg	exit ;;
113217ca54c3Smrg    pc:*:*:*)
113317ca54c3Smrg	# Left here for compatibility:
113417ca54c3Smrg	# uname -m prints for DJGPP always 'pc', but it prints nothing about
113517ca54c3Smrg	# the processor, so we play safe by assuming i586.
113617ca54c3Smrg	# Note: whatever this is, it MUST be the same as what config.sub
113717ca54c3Smrg	# prints for the "djgpp" host, or else GDB configure will decide that
113817ca54c3Smrg	# this is a cross-build.
113917ca54c3Smrg	echo i586-pc-msdosdjgpp
114017ca54c3Smrg	exit ;;
114117ca54c3Smrg    Intel:Mach:3*:*)
114217ca54c3Smrg	echo i386-pc-mach3
114317ca54c3Smrg	exit ;;
114417ca54c3Smrg    paragon:*:*:*)
114517ca54c3Smrg	echo i860-intel-osf1
114617ca54c3Smrg	exit ;;
114717ca54c3Smrg    i860:*:4.*:*) # i860-SVR4
114817ca54c3Smrg	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1149ea1d6981Smrg	  echo i860-stardent-sysv"$UNAME_RELEASE" # Stardent Vistra i860-SVR4
115017ca54c3Smrg	else # Add other i860-SVR4 vendors below as they are discovered.
1151ea1d6981Smrg	  echo i860-unknown-sysv"$UNAME_RELEASE"  # Unknown i860-SVR4
115217ca54c3Smrg	fi
115317ca54c3Smrg	exit ;;
115417ca54c3Smrg    mini*:CTIX:SYS*5:*)
115517ca54c3Smrg	# "miniframe"
115617ca54c3Smrg	echo m68010-convergent-sysv
115717ca54c3Smrg	exit ;;
115817ca54c3Smrg    mc68k:UNIX:SYSTEM5:3.51m)
115917ca54c3Smrg	echo m68k-convergent-sysv
116017ca54c3Smrg	exit ;;
116117ca54c3Smrg    M680?0:D-NIX:5.3:*)
116217ca54c3Smrg	echo m68k-diab-dnix
116317ca54c3Smrg	exit ;;
116417ca54c3Smrg    M68*:*:R3V[5678]*:*)
116517ca54c3Smrg	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
116617ca54c3Smrg    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)
116717ca54c3Smrg	OS_REL=''
116817ca54c3Smrg	test -r /etc/.relid \
116917ca54c3Smrg	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
117017ca54c3Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1171ea1d6981Smrg	  && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
117217ca54c3Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1173ea1d6981Smrg	  && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
117417ca54c3Smrg    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
117517ca54c3Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
117617ca54c3Smrg	  && { echo i486-ncr-sysv4; exit; } ;;
117717ca54c3Smrg    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
117817ca54c3Smrg	OS_REL='.3'
117917ca54c3Smrg	test -r /etc/.relid \
118017ca54c3Smrg	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
118117ca54c3Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1182ea1d6981Smrg	    && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
118317ca54c3Smrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1184ea1d6981Smrg	    && { echo i586-ncr-sysv4.3"$OS_REL"; exit; }
118517ca54c3Smrg	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
1186ea1d6981Smrg	    && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
118717ca54c3Smrg    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1188ea1d6981Smrg	echo m68k-unknown-lynxos"$UNAME_RELEASE"
118917ca54c3Smrg	exit ;;
119017ca54c3Smrg    mc68030:UNIX_System_V:4.*:*)
119117ca54c3Smrg	echo m68k-atari-sysv4
119217ca54c3Smrg	exit ;;
119317ca54c3Smrg    TSUNAMI:LynxOS:2.*:*)
1194ea1d6981Smrg	echo sparc-unknown-lynxos"$UNAME_RELEASE"
119517ca54c3Smrg	exit ;;
119617ca54c3Smrg    rs6000:LynxOS:2.*:*)
1197ea1d6981Smrg	echo rs6000-unknown-lynxos"$UNAME_RELEASE"
119817ca54c3Smrg	exit ;;
119917ca54c3Smrg    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
1200ea1d6981Smrg	echo powerpc-unknown-lynxos"$UNAME_RELEASE"
120117ca54c3Smrg	exit ;;
120217ca54c3Smrg    SM[BE]S:UNIX_SV:*:*)
1203ea1d6981Smrg	echo mips-dde-sysv"$UNAME_RELEASE"
120417ca54c3Smrg	exit ;;
120517ca54c3Smrg    RM*:ReliantUNIX-*:*:*)
120617ca54c3Smrg	echo mips-sni-sysv4
120717ca54c3Smrg	exit ;;
120817ca54c3Smrg    RM*:SINIX-*:*:*)
120917ca54c3Smrg	echo mips-sni-sysv4
121017ca54c3Smrg	exit ;;
121117ca54c3Smrg    *:SINIX-*:*:*)
121217ca54c3Smrg	if uname -p 2>/dev/null >/dev/null ; then
121317ca54c3Smrg		UNAME_MACHINE=`(uname -p) 2>/dev/null`
1214ea1d6981Smrg		echo "$UNAME_MACHINE"-sni-sysv4
121517ca54c3Smrg	else
121617ca54c3Smrg		echo ns32k-sni-sysv
121717ca54c3Smrg	fi
121817ca54c3Smrg	exit ;;
121917ca54c3Smrg    PENTIUM:*:4.0*:*)	# Unisys `ClearPath HMP IX 4000' SVR4/MP effort
122017ca54c3Smrg			# says <Richard.M.Bartel@ccMail.Census.GOV>
122117ca54c3Smrg	echo i586-unisys-sysv4
122217ca54c3Smrg	exit ;;
122317ca54c3Smrg    *:UNIX_System_V:4*:FTX*)
122417ca54c3Smrg	# From Gerald Hewes <hewes@openmarket.com>.
122517ca54c3Smrg	# How about differentiating between stratus architectures? -djm
122617ca54c3Smrg	echo hppa1.1-stratus-sysv4
122717ca54c3Smrg	exit ;;
122817ca54c3Smrg    *:*:*:FTX*)
122917ca54c3Smrg	# From seanf@swdc.stratus.com.
123017ca54c3Smrg	echo i860-stratus-sysv4
123117ca54c3Smrg	exit ;;
123217ca54c3Smrg    i*86:VOS:*:*)
123317ca54c3Smrg	# From Paul.Green@stratus.com.
1234ea1d6981Smrg	echo "$UNAME_MACHINE"-stratus-vos
123517ca54c3Smrg	exit ;;
123617ca54c3Smrg    *:VOS:*:*)
123717ca54c3Smrg	# From Paul.Green@stratus.com.
123817ca54c3Smrg	echo hppa1.1-stratus-vos
123917ca54c3Smrg	exit ;;
124017ca54c3Smrg    mc68*:A/UX:*:*)
1241ea1d6981Smrg	echo m68k-apple-aux"$UNAME_RELEASE"
124217ca54c3Smrg	exit ;;
124317ca54c3Smrg    news*:NEWS-OS:6*:*)
124417ca54c3Smrg	echo mips-sony-newsos6
124517ca54c3Smrg	exit ;;
124617ca54c3Smrg    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
124717ca54c3Smrg	if [ -d /usr/nec ]; then
1248ea1d6981Smrg		echo mips-nec-sysv"$UNAME_RELEASE"
124917ca54c3Smrg	else
1250ea1d6981Smrg		echo mips-unknown-sysv"$UNAME_RELEASE"
125117ca54c3Smrg	fi
125217ca54c3Smrg	exit ;;
125317ca54c3Smrg    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
125417ca54c3Smrg	echo powerpc-be-beos
125517ca54c3Smrg	exit ;;
125617ca54c3Smrg    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
125717ca54c3Smrg	echo powerpc-apple-beos
125817ca54c3Smrg	exit ;;
125917ca54c3Smrg    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
126017ca54c3Smrg	echo i586-pc-beos
126117ca54c3Smrg	exit ;;
126217ca54c3Smrg    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
126317ca54c3Smrg	echo i586-pc-haiku
126417ca54c3Smrg	exit ;;
126517ca54c3Smrg    x86_64:Haiku:*:*)
126617ca54c3Smrg	echo x86_64-unknown-haiku
126717ca54c3Smrg	exit ;;
126817ca54c3Smrg    SX-4:SUPER-UX:*:*)
1269ea1d6981Smrg	echo sx4-nec-superux"$UNAME_RELEASE"
127017ca54c3Smrg	exit ;;
127117ca54c3Smrg    SX-5:SUPER-UX:*:*)
1272ea1d6981Smrg	echo sx5-nec-superux"$UNAME_RELEASE"
127317ca54c3Smrg	exit ;;
127417ca54c3Smrg    SX-6:SUPER-UX:*:*)
1275ea1d6981Smrg	echo sx6-nec-superux"$UNAME_RELEASE"
127617ca54c3Smrg	exit ;;
127717ca54c3Smrg    SX-7:SUPER-UX:*:*)
1278ea1d6981Smrg	echo sx7-nec-superux"$UNAME_RELEASE"
127917ca54c3Smrg	exit ;;
128017ca54c3Smrg    SX-8:SUPER-UX:*:*)
1281ea1d6981Smrg	echo sx8-nec-superux"$UNAME_RELEASE"
128217ca54c3Smrg	exit ;;
128317ca54c3Smrg    SX-8R:SUPER-UX:*:*)
1284ea1d6981Smrg	echo sx8r-nec-superux"$UNAME_RELEASE"
128517ca54c3Smrg	exit ;;
128617ca54c3Smrg    SX-ACE:SUPER-UX:*:*)
1287ea1d6981Smrg	echo sxace-nec-superux"$UNAME_RELEASE"
128817ca54c3Smrg	exit ;;
128917ca54c3Smrg    Power*:Rhapsody:*:*)
1290ea1d6981Smrg	echo powerpc-apple-rhapsody"$UNAME_RELEASE"
129117ca54c3Smrg	exit ;;
129217ca54c3Smrg    *:Rhapsody:*:*)
1293ea1d6981Smrg	echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE"
129417ca54c3Smrg	exit ;;
129517ca54c3Smrg    *:Darwin:*:*)
129617ca54c3Smrg	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
1297ea1d6981Smrg	set_cc_for_build
129817ca54c3Smrg	if test "$UNAME_PROCESSOR" = unknown ; then
129917ca54c3Smrg	    UNAME_PROCESSOR=powerpc
130017ca54c3Smrg	fi
1301ea1d6981Smrg	if test "`echo "$UNAME_RELEASE" | sed -e 's/\..*//'`" -le 10 ; then
130217ca54c3Smrg	    if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
130317ca54c3Smrg		if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
130417ca54c3Smrg		       (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
130517ca54c3Smrg		       grep IS_64BIT_ARCH >/dev/null
130617ca54c3Smrg		then
130717ca54c3Smrg		    case $UNAME_PROCESSOR in
130817ca54c3Smrg			i386) UNAME_PROCESSOR=x86_64 ;;
130917ca54c3Smrg			powerpc) UNAME_PROCESSOR=powerpc64 ;;
131017ca54c3Smrg		    esac
131117ca54c3Smrg		fi
131217ca54c3Smrg		# On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc
131317ca54c3Smrg		if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \
131417ca54c3Smrg		       (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
131517ca54c3Smrg		       grep IS_PPC >/dev/null
131617ca54c3Smrg		then
131717ca54c3Smrg		    UNAME_PROCESSOR=powerpc
131817ca54c3Smrg		fi
131917ca54c3Smrg	    fi
132017ca54c3Smrg	elif test "$UNAME_PROCESSOR" = i386 ; then
132117ca54c3Smrg	    # Avoid executing cc on OS X 10.9, as it ships with a stub
132217ca54c3Smrg	    # that puts up a graphical alert prompting to install
132317ca54c3Smrg	    # developer tools.  Any system running Mac OS X 10.7 or
132417ca54c3Smrg	    # later (Darwin 11 and later) is required to have a 64-bit
132517ca54c3Smrg	    # processor. This is not true of the ARM version of Darwin
132617ca54c3Smrg	    # that Apple uses in portable devices.
132717ca54c3Smrg	    UNAME_PROCESSOR=x86_64
132817ca54c3Smrg	fi
1329ea1d6981Smrg	echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE"
133017ca54c3Smrg	exit ;;
133117ca54c3Smrg    *:procnto*:*:* | *:QNX:[0123456789]*:*)
133217ca54c3Smrg	UNAME_PROCESSOR=`uname -p`
133317ca54c3Smrg	if test "$UNAME_PROCESSOR" = x86; then
133417ca54c3Smrg		UNAME_PROCESSOR=i386
133517ca54c3Smrg		UNAME_MACHINE=pc
133617ca54c3Smrg	fi
1337ea1d6981Smrg	echo "$UNAME_PROCESSOR"-"$UNAME_MACHINE"-nto-qnx"$UNAME_RELEASE"
133817ca54c3Smrg	exit ;;
133917ca54c3Smrg    *:QNX:*:4*)
134017ca54c3Smrg	echo i386-pc-qnx
134117ca54c3Smrg	exit ;;
134217ca54c3Smrg    NEO-*:NONSTOP_KERNEL:*:*)
1343ea1d6981Smrg	echo neo-tandem-nsk"$UNAME_RELEASE"
134417ca54c3Smrg	exit ;;
134517ca54c3Smrg    NSE-*:NONSTOP_KERNEL:*:*)
1346ea1d6981Smrg	echo nse-tandem-nsk"$UNAME_RELEASE"
134717ca54c3Smrg	exit ;;
134817ca54c3Smrg    NSR-*:NONSTOP_KERNEL:*:*)
1349ea1d6981Smrg	echo nsr-tandem-nsk"$UNAME_RELEASE"
1350ea1d6981Smrg	exit ;;
1351ea1d6981Smrg    NSV-*:NONSTOP_KERNEL:*:*)
1352ea1d6981Smrg	echo nsv-tandem-nsk"$UNAME_RELEASE"
135317ca54c3Smrg	exit ;;
135417ca54c3Smrg    NSX-*:NONSTOP_KERNEL:*:*)
1355ea1d6981Smrg	echo nsx-tandem-nsk"$UNAME_RELEASE"
135617ca54c3Smrg	exit ;;
135717ca54c3Smrg    *:NonStop-UX:*:*)
135817ca54c3Smrg	echo mips-compaq-nonstopux
135917ca54c3Smrg	exit ;;
136017ca54c3Smrg    BS2000:POSIX*:*:*)
136117ca54c3Smrg	echo bs2000-siemens-sysv
136217ca54c3Smrg	exit ;;
136317ca54c3Smrg    DS/*:UNIX_System_V:*:*)
1364ea1d6981Smrg	echo "$UNAME_MACHINE"-"$UNAME_SYSTEM"-"$UNAME_RELEASE"
136517ca54c3Smrg	exit ;;
136617ca54c3Smrg    *:Plan9:*:*)
136717ca54c3Smrg	# "uname -m" is not consistent, so use $cputype instead. 386
136817ca54c3Smrg	# is converted to i386 for consistency with other x86
136917ca54c3Smrg	# operating systems.
1370ea1d6981Smrg	# shellcheck disable=SC2154
137117ca54c3Smrg	if test "$cputype" = 386; then
137217ca54c3Smrg	    UNAME_MACHINE=i386
137317ca54c3Smrg	else
137417ca54c3Smrg	    UNAME_MACHINE="$cputype"
137517ca54c3Smrg	fi
1376ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-plan9
137717ca54c3Smrg	exit ;;
137817ca54c3Smrg    *:TOPS-10:*:*)
137917ca54c3Smrg	echo pdp10-unknown-tops10
138017ca54c3Smrg	exit ;;
138117ca54c3Smrg    *:TENEX:*:*)
138217ca54c3Smrg	echo pdp10-unknown-tenex
138317ca54c3Smrg	exit ;;
138417ca54c3Smrg    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
138517ca54c3Smrg	echo pdp10-dec-tops20
138617ca54c3Smrg	exit ;;
138717ca54c3Smrg    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
138817ca54c3Smrg	echo pdp10-xkl-tops20
138917ca54c3Smrg	exit ;;
139017ca54c3Smrg    *:TOPS-20:*:*)
139117ca54c3Smrg	echo pdp10-unknown-tops20
139217ca54c3Smrg	exit ;;
139317ca54c3Smrg    *:ITS:*:*)
139417ca54c3Smrg	echo pdp10-unknown-its
139517ca54c3Smrg	exit ;;
139617ca54c3Smrg    SEI:*:*:SEIUX)
1397ea1d6981Smrg	echo mips-sei-seiux"$UNAME_RELEASE"
139817ca54c3Smrg	exit ;;
139917ca54c3Smrg    *:DragonFly:*:*)
1400ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-dragonfly"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
140117ca54c3Smrg	exit ;;
140217ca54c3Smrg    *:*VMS:*:*)
140317ca54c3Smrg	UNAME_MACHINE=`(uname -p) 2>/dev/null`
1404ea1d6981Smrg	case "$UNAME_MACHINE" in
140517ca54c3Smrg	    A*) echo alpha-dec-vms ; exit ;;
140617ca54c3Smrg	    I*) echo ia64-dec-vms ; exit ;;
140717ca54c3Smrg	    V*) echo vax-dec-vms ; exit ;;
140817ca54c3Smrg	esac ;;
140917ca54c3Smrg    *:XENIX:*:SysV)
141017ca54c3Smrg	echo i386-pc-xenix
141117ca54c3Smrg	exit ;;
141217ca54c3Smrg    i*86:skyos:*:*)
1413ea1d6981Smrg	echo "$UNAME_MACHINE"-pc-skyos"`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`"
141417ca54c3Smrg	exit ;;
141517ca54c3Smrg    i*86:rdos:*:*)
1416ea1d6981Smrg	echo "$UNAME_MACHINE"-pc-rdos
141717ca54c3Smrg	exit ;;
141817ca54c3Smrg    i*86:AROS:*:*)
1419ea1d6981Smrg	echo "$UNAME_MACHINE"-pc-aros
142017ca54c3Smrg	exit ;;
142117ca54c3Smrg    x86_64:VMkernel:*:*)
1422ea1d6981Smrg	echo "$UNAME_MACHINE"-unknown-esx
142317ca54c3Smrg	exit ;;
142417ca54c3Smrg    amd64:Isilon\ OneFS:*:*)
142517ca54c3Smrg	echo x86_64-unknown-onefs
142617ca54c3Smrg	exit ;;
142717ca54c3Smrgesac
142817ca54c3Smrg
1429ea1d6981Smrgecho "$0: unable to guess system type" >&2
1430ea1d6981Smrg
1431ea1d6981Smrgcase "$UNAME_MACHINE:$UNAME_SYSTEM" in
1432ea1d6981Smrg    mips:Linux | mips64:Linux)
1433ea1d6981Smrg	# If we got here on MIPS GNU/Linux, output extra information.
1434ea1d6981Smrg	cat >&2 <<EOF
1435ea1d6981Smrg
1436ea1d6981SmrgNOTE: MIPS GNU/Linux systems require a C compiler to fully recognize
1437ea1d6981Smrgthe system type. Please install a C compiler and try again.
1438ea1d6981SmrgEOF
1439ea1d6981Smrg	;;
1440ea1d6981Smrgesac
1441ea1d6981Smrg
144217ca54c3Smrgcat >&2 <<EOF
144317ca54c3Smrg
144417ca54c3SmrgThis script (version $timestamp), has failed to recognize the
144517ca54c3Smrgoperating system you are using. If your script is old, overwrite *all*
144617ca54c3Smrgcopies of config.guess and config.sub with the latest versions from:
144717ca54c3Smrg
1448ea1d6981Smrg  https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
144917ca54c3Smrgand
1450ea1d6981Smrg  https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
145117ca54c3Smrg
145217ca54c3SmrgIf $0 has already been updated, send the following data and any
145317ca54c3Smrginformation you think might be pertinent to config-patches@gnu.org to
145417ca54c3Smrgprovide the necessary information to handle your system.
145517ca54c3Smrg
145617ca54c3Smrgconfig.guess timestamp = $timestamp
145717ca54c3Smrg
145817ca54c3Smrguname -m = `(uname -m) 2>/dev/null || echo unknown`
145917ca54c3Smrguname -r = `(uname -r) 2>/dev/null || echo unknown`
146017ca54c3Smrguname -s = `(uname -s) 2>/dev/null || echo unknown`
146117ca54c3Smrguname -v = `(uname -v) 2>/dev/null || echo unknown`
146217ca54c3Smrg
146317ca54c3Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
146417ca54c3Smrg/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
146517ca54c3Smrg
146617ca54c3Smrghostinfo               = `(hostinfo) 2>/dev/null`
146717ca54c3Smrg/bin/universe          = `(/bin/universe) 2>/dev/null`
146817ca54c3Smrg/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
146917ca54c3Smrg/bin/arch              = `(/bin/arch) 2>/dev/null`
147017ca54c3Smrg/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
147117ca54c3Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
147217ca54c3Smrg
1473ea1d6981SmrgUNAME_MACHINE = "$UNAME_MACHINE"
1474ea1d6981SmrgUNAME_RELEASE = "$UNAME_RELEASE"
1475ea1d6981SmrgUNAME_SYSTEM  = "$UNAME_SYSTEM"
1476ea1d6981SmrgUNAME_VERSION = "$UNAME_VERSION"
147717ca54c3SmrgEOF
147817ca54c3Smrg
147917ca54c3Smrgexit 1
148017ca54c3Smrg
148117ca54c3Smrg# Local variables:
1482ea1d6981Smrg# eval: (add-hook 'before-save-hook 'time-stamp)
148317ca54c3Smrg# time-stamp-start: "timestamp='"
148417ca54c3Smrg# time-stamp-format: "%:y-%02m-%02d"
148517ca54c3Smrg# time-stamp-end: "'"
148617ca54c3Smrg# End:
1487