1444c061aSmrg#! /bin/sh
2444c061aSmrg# Attempt to guess a canonical system name.
335525df4Smrg#   Copyright 1992-2024 Free Software Foundation, Inc.
4444c061aSmrg
5fdf6a26fSmrg# shellcheck disable=SC2006,SC2268 # see below for rationale
6fdf6a26fSmrg
735525df4Smrgtimestamp='2024-07-27'
8444c061aSmrg
9444c061aSmrg# This file is free software; you can redistribute it and/or modify it
10444c061aSmrg# under the terms of the GNU General Public License as published by
11fdf6a26fSmrg# the Free Software Foundation, either version 3 of the License, or
12444c061aSmrg# (at your option) any later version.
13444c061aSmrg#
14444c061aSmrg# This program is distributed in the hope that it will be useful, but
15444c061aSmrg# WITHOUT ANY WARRANTY; without even the implied warranty of
16444c061aSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17444c061aSmrg# General Public License for more details.
18444c061aSmrg#
19444c061aSmrg# You should have received a copy of the GNU General Public License
200568f49bSmrg# along with this program; if not, see <https://www.gnu.org/licenses/>.
21444c061aSmrg#
22444c061aSmrg# As a special exception to the GNU General Public License, if you
23444c061aSmrg# distribute this file as part of a program that contains a
24444c061aSmrg# configuration script generated by Autoconf, you may include it under
259e7bcd65Smrg# the same distribution terms that you use for the rest of that
269e7bcd65Smrg# program.  This Exception is an additional permission under section 7
279e7bcd65Smrg# of the GNU General Public License, version 3 ("GPLv3").
28444c061aSmrg#
29339a7c43Smrg# Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
30444c061aSmrg#
311477040fSmrg# You can get the latest version of this script from:
32fdf6a26fSmrg# https://git.savannah.gnu.org/cgit/config.git/plain/config.guess
339e7bcd65Smrg#
34339a7c43Smrg# Please send patches to <config-patches@gnu.org>.
359e7bcd65Smrg
36444c061aSmrg
37fdf6a26fSmrg# The "shellcheck disable" line above the timestamp inhibits complaints
38fdf6a26fSmrg# about features and limitations of the classic Bourne shell that were
39fdf6a26fSmrg# superseded or lifted in POSIX.  However, this script identifies a wide
40fdf6a26fSmrg# variety of pre-POSIX systems that do not have POSIX shells at all, and
41fdf6a26fSmrg# even some reasonably current systems (Solaris 10 as case-in-point) still
42fdf6a26fSmrg# have a pre-POSIX /bin/sh.
43fdf6a26fSmrg
44fdf6a26fSmrg
45444c061aSmrgme=`echo "$0" | sed -e 's,.*/,,'`
46444c061aSmrg
47444c061aSmrgusage="\
48444c061aSmrgUsage: $0 [OPTION]
49444c061aSmrg
5035525df4SmrgOutput the configuration name of the system '$me' is run on.
51444c061aSmrg
520568f49bSmrgOptions:
53444c061aSmrg  -h, --help         print this help, then exit
54444c061aSmrg  -t, --time-stamp   print date of last modification, then exit
55444c061aSmrg  -v, --version      print version number, then exit
56444c061aSmrg
57444c061aSmrgReport bugs and patches to <config-patches@gnu.org>."
58444c061aSmrg
59444c061aSmrgversion="\
60444c061aSmrgGNU config.guess ($timestamp)
61444c061aSmrg
62444c061aSmrgOriginally written by Per Bothner.
6335525df4SmrgCopyright 1992-2024 Free Software Foundation, Inc.
64444c061aSmrg
65444c061aSmrgThis is free software; see the source for copying conditions.  There is NO
66444c061aSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
67444c061aSmrg
68444c061aSmrghelp="
6935525df4SmrgTry '$me --help' for more information."
70444c061aSmrg
71444c061aSmrg# Parse command line
72444c061aSmrgwhile test $# -gt 0 ; do
73444c061aSmrg  case $1 in
74444c061aSmrg    --time-stamp | --time* | -t )
75444c061aSmrg       echo "$timestamp" ; exit ;;
76444c061aSmrg    --version | -v )
77444c061aSmrg       echo "$version" ; exit ;;
78444c061aSmrg    --help | --h* | -h )
79444c061aSmrg       echo "$usage"; exit ;;
80444c061aSmrg    -- )     # Stop option processing
81444c061aSmrg       shift; break ;;
82444c061aSmrg    - )	# Use stdin as input.
83444c061aSmrg       break ;;
84444c061aSmrg    -* )
85444c061aSmrg       echo "$me: invalid option $1$help" >&2
86444c061aSmrg       exit 1 ;;
87444c061aSmrg    * )
88444c061aSmrg       break ;;
89444c061aSmrg  esac
90444c061aSmrgdone
91444c061aSmrg
92444c061aSmrgif test $# != 0; then
93444c061aSmrg  echo "$me: too many arguments$help" >&2
94444c061aSmrg  exit 1
95444c061aSmrgfi
96444c061aSmrg
97fdf6a26fSmrg# Just in case it came from the environment.
98fdf6a26fSmrgGUESS=
99fdf6a26fSmrg
100444c061aSmrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
101444c061aSmrg# compiler to aid in system detection is discouraged as it requires
102444c061aSmrg# temporary files to be created and, as you can see below, it is a
103444c061aSmrg# headache to deal with in a portable fashion.
104444c061aSmrg
10535525df4Smrg# Historically, 'CC_FOR_BUILD' used to be named 'HOST_CC'. We still
10635525df4Smrg# use 'HOST_CC' if defined, but it is deprecated.
107444c061aSmrg
108444c061aSmrg# Portable tmp directory creation inspired by the Autoconf team.
109444c061aSmrg
110a3bd7f05Smrgtmp=
111a3bd7f05Smrg# shellcheck disable=SC2172
112a3bd7f05Smrgtrap 'test -z "$tmp" || rm -fr "$tmp"' 0 1 2 13 15
113a3bd7f05Smrg
114a3bd7f05Smrgset_cc_for_build() {
115a3bd7f05Smrg    # prevent multiple calls if $tmp is already set
116a3bd7f05Smrg    test "$tmp" && return 0
117a3bd7f05Smrg    : "${TMPDIR=/tmp}"
118fdf6a26fSmrg    # shellcheck disable=SC2039,SC3028
119a3bd7f05Smrg    { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
120a3bd7f05Smrg	{ test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } ||
121a3bd7f05Smrg	{ tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } ||
122a3bd7f05Smrg	{ echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; }
123a3bd7f05Smrg    dummy=$tmp/dummy
124a3bd7f05Smrg    case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in
125a3bd7f05Smrg	,,)    echo "int x;" > "$dummy.c"
12635525df4Smrg	       for driver in cc gcc c17 c99 c89 ; do
127a3bd7f05Smrg		   if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then
128fdf6a26fSmrg		       CC_FOR_BUILD=$driver
129a3bd7f05Smrg		       break
130a3bd7f05Smrg		   fi
131a3bd7f05Smrg	       done
132a3bd7f05Smrg	       if test x"$CC_FOR_BUILD" = x ; then
133a3bd7f05Smrg		   CC_FOR_BUILD=no_compiler_found
134a3bd7f05Smrg	       fi
135a3bd7f05Smrg	       ;;
136a3bd7f05Smrg	,,*)   CC_FOR_BUILD=$CC ;;
137a3bd7f05Smrg	,*,*)  CC_FOR_BUILD=$HOST_CC ;;
138a3bd7f05Smrg    esac
139a3bd7f05Smrg}
140444c061aSmrg
141444c061aSmrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
142444c061aSmrg# (ghazi@noc.rutgers.edu 1994-08-24)
143a3bd7f05Smrgif test -f /.attbin/uname ; then
144444c061aSmrg	PATH=$PATH:/.attbin ; export PATH
145444c061aSmrgfi
146444c061aSmrg
147444c061aSmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
148444c061aSmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
149fdf6a26fSmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
150444c061aSmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
151444c061aSmrg
152fdf6a26fSmrgcase $UNAME_SYSTEM in
153339a7c43SmrgLinux|GNU|GNU/*)
154fdf6a26fSmrg	LIBC=unknown
155339a7c43Smrg
156a3bd7f05Smrg	set_cc_for_build
1570568f49bSmrg	cat <<-EOF > "$dummy.c"
15835525df4Smrg	#if defined(__ANDROID__)
15935525df4Smrg	LIBC=android
16035525df4Smrg	#else
161339a7c43Smrg	#include <features.h>
162339a7c43Smrg	#if defined(__UCLIBC__)
163339a7c43Smrg	LIBC=uclibc
164339a7c43Smrg	#elif defined(__dietlibc__)
165339a7c43Smrg	LIBC=dietlibc
166fdf6a26fSmrg	#elif defined(__GLIBC__)
167339a7c43Smrg	LIBC=gnu
16835525df4Smrg	#elif defined(__LLVM_LIBC__)
16935525df4Smrg	LIBC=llvm
170fdf6a26fSmrg	#else
171fdf6a26fSmrg	#include <stdarg.h>
172fdf6a26fSmrg	/* First heuristic to detect musl libc.  */
173fdf6a26fSmrg	#ifdef __DEFINED_va_list
174fdf6a26fSmrg	LIBC=musl
175fdf6a26fSmrg	#endif
176339a7c43Smrg	#endif
17735525df4Smrg	#endif
178339a7c43Smrg	EOF
179fdf6a26fSmrg	cc_set_libc=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
180fdf6a26fSmrg	eval "$cc_set_libc"
1810568f49bSmrg
182fdf6a26fSmrg	# Second heuristic to detect musl libc.
183fdf6a26fSmrg	if [ "$LIBC" = unknown ] &&
184fdf6a26fSmrg	   command -v ldd >/dev/null &&
185fdf6a26fSmrg	   ldd --version 2>&1 | grep -q ^musl; then
186fdf6a26fSmrg		LIBC=musl
187fdf6a26fSmrg	fi
188fdf6a26fSmrg
189fdf6a26fSmrg	# If the system lacks a compiler, then just pick glibc.
190fdf6a26fSmrg	# We could probably try harder.
191fdf6a26fSmrg	if [ "$LIBC" = unknown ]; then
192fdf6a26fSmrg		LIBC=gnu
1930568f49bSmrg	fi
194339a7c43Smrg	;;
195339a7c43Smrgesac
196339a7c43Smrg
197444c061aSmrg# Note: order is significant - the case branches are not exclusive.
198444c061aSmrg
199fdf6a26fSmrgcase $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in
200444c061aSmrg    *:NetBSD:*:*)
201444c061aSmrg	# NetBSD (nbsd) targets should (where applicable) match one or
2029e7bcd65Smrg	# more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
203444c061aSmrg	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
204444c061aSmrg	# switched to ELF, *-*-netbsd* would select the old
205444c061aSmrg	# object file format.  This provides both forward
206444c061aSmrg	# compatibility and a consistent mechanism for selecting the
207444c061aSmrg	# object file format.
208444c061aSmrg	#
209444c061aSmrg	# Note: NetBSD doesn't particularly care about the vendor
210444c061aSmrg	# portion of the name.  We always set it to "unknown".
2110568f49bSmrg	UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
212fdf6a26fSmrg	    /sbin/sysctl -n hw.machine_arch 2>/dev/null || \
213fdf6a26fSmrg	    /usr/sbin/sysctl -n hw.machine_arch 2>/dev/null || \
2140568f49bSmrg	    echo unknown)`
215fdf6a26fSmrg	case $UNAME_MACHINE_ARCH in
216fdf6a26fSmrg	    aarch64eb) machine=aarch64_be-unknown ;;
217444c061aSmrg	    armeb) machine=armeb-unknown ;;
218444c061aSmrg	    arm*) machine=arm-unknown ;;
219444c061aSmrg	    sh3el) machine=shl-unknown ;;
220444c061aSmrg	    sh3eb) machine=sh-unknown ;;
2212265a131Smrg	    sh5el) machine=sh5le-unknown ;;
2220568f49bSmrg	    earmv*)
2230568f49bSmrg		arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'`
2240568f49bSmrg		endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'`
225fdf6a26fSmrg		machine=${arch}${endian}-unknown
2260568f49bSmrg		;;
227fdf6a26fSmrg	    *) machine=$UNAME_MACHINE_ARCH-unknown ;;
228444c061aSmrg	esac
229444c061aSmrg	# The Operating System including object format, if it has switched
2300568f49bSmrg	# to ELF recently (or will in the future) and ABI.
231fdf6a26fSmrg	case $UNAME_MACHINE_ARCH in
2320568f49bSmrg	    earm*)
2330568f49bSmrg		os=netbsdelf
2340568f49bSmrg		;;
235444c061aSmrg	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
236a3bd7f05Smrg		set_cc_for_build
237444c061aSmrg		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
2381477040fSmrg			| grep -q __ELF__
239444c061aSmrg		then
240444c061aSmrg		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
241444c061aSmrg		    # Return netbsd for either.  FIX?
242444c061aSmrg		    os=netbsd
243444c061aSmrg		else
244444c061aSmrg		    os=netbsdelf
245444c061aSmrg		fi
246444c061aSmrg		;;
247444c061aSmrg	    *)
2489e7bcd65Smrg		os=netbsd
249444c061aSmrg		;;
250444c061aSmrg	esac
2510568f49bSmrg	# Determine ABI tags.
252fdf6a26fSmrg	case $UNAME_MACHINE_ARCH in
2530568f49bSmrg	    earm*)
2540568f49bSmrg		expr='s/^earmv[0-9]/-eabi/;s/eb$//'
2550568f49bSmrg		abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"`
2560568f49bSmrg		;;
2570568f49bSmrg	esac
258444c061aSmrg	# The OS release
259444c061aSmrg	# Debian GNU/NetBSD machines have a different userland, and
260444c061aSmrg	# thus, need a distinct triplet. However, they do not need
261444c061aSmrg	# kernel version information, so it can be replaced with a
262444c061aSmrg	# suitable tag, in the style of linux-gnu.
263fdf6a26fSmrg	case $UNAME_VERSION in
264444c061aSmrg	    Debian*)
265444c061aSmrg		release='-gnu'
266444c061aSmrg		;;
267444c061aSmrg	    *)
2680568f49bSmrg		release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2`
269444c061aSmrg		;;
270444c061aSmrg	esac
271444c061aSmrg	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
272444c061aSmrg	# contains redundant information, the shorter form:
273444c061aSmrg	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
274fdf6a26fSmrg	GUESS=$machine-${os}${release}${abi-}
275fdf6a26fSmrg	;;
2769e7bcd65Smrg    *:Bitrig:*:*)
2779e7bcd65Smrg	UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
278fdf6a26fSmrg	GUESS=$UNAME_MACHINE_ARCH-unknown-bitrig$UNAME_RELEASE
279fdf6a26fSmrg	;;
280444c061aSmrg    *:OpenBSD:*:*)
281444c061aSmrg	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
282fdf6a26fSmrg	GUESS=$UNAME_MACHINE_ARCH-unknown-openbsd$UNAME_RELEASE
283fdf6a26fSmrg	;;
284fdf6a26fSmrg    *:SecBSD:*:*)
285fdf6a26fSmrg	UNAME_MACHINE_ARCH=`arch | sed 's/SecBSD.//'`
286fdf6a26fSmrg	GUESS=$UNAME_MACHINE_ARCH-unknown-secbsd$UNAME_RELEASE
287fdf6a26fSmrg	;;
2880568f49bSmrg    *:LibertyBSD:*:*)
2890568f49bSmrg	UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
290fdf6a26fSmrg	GUESS=$UNAME_MACHINE_ARCH-unknown-libertybsd$UNAME_RELEASE
291fdf6a26fSmrg	;;
2920568f49bSmrg    *:MidnightBSD:*:*)
293fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-midnightbsd$UNAME_RELEASE
294fdf6a26fSmrg	;;
295444c061aSmrg    *:ekkoBSD:*:*)
296fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-ekkobsd$UNAME_RELEASE
297fdf6a26fSmrg	;;
2982265a131Smrg    *:SolidBSD:*:*)
299fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-solidbsd$UNAME_RELEASE
300fdf6a26fSmrg	;;
301a3bd7f05Smrg    *:OS108:*:*)
302fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-os108_$UNAME_RELEASE
303fdf6a26fSmrg	;;
304444c061aSmrg    macppc:MirBSD:*:*)
305fdf6a26fSmrg	GUESS=powerpc-unknown-mirbsd$UNAME_RELEASE
306fdf6a26fSmrg	;;
307444c061aSmrg    *:MirBSD:*:*)
308fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-mirbsd$UNAME_RELEASE
309fdf6a26fSmrg	;;
3100568f49bSmrg    *:Sortix:*:*)
311fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-sortix
312fdf6a26fSmrg	;;
313a3bd7f05Smrg    *:Twizzler:*:*)
314fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-twizzler
315fdf6a26fSmrg	;;
3160568f49bSmrg    *:Redox:*:*)
317fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-redox
318fdf6a26fSmrg	;;
3190568f49bSmrg    mips:OSF1:*.*)
320fdf6a26fSmrg	GUESS=mips-dec-osf1
321fdf6a26fSmrg	;;
322444c061aSmrg    alpha:OSF1:*:*)
323fdf6a26fSmrg	# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
324fdf6a26fSmrg	trap '' 0
325444c061aSmrg	case $UNAME_RELEASE in
326444c061aSmrg	*4.0)
327444c061aSmrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
328444c061aSmrg		;;
329444c061aSmrg	*5.*)
3309e7bcd65Smrg		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
331444c061aSmrg		;;
332444c061aSmrg	esac
333444c061aSmrg	# According to Compaq, /usr/sbin/psrinfo has been available on
334444c061aSmrg	# OSF/1 and Tru64 systems produced since 1995.  I hope that
335444c061aSmrg	# covers most systems running today.  This code pipes the CPU
336444c061aSmrg	# types through head -n 1, so we only detect the type of CPU 0.
337444c061aSmrg	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
338fdf6a26fSmrg	case $ALPHA_CPU_TYPE in
339444c061aSmrg	    "EV4 (21064)")
3400568f49bSmrg		UNAME_MACHINE=alpha ;;
341444c061aSmrg	    "EV4.5 (21064)")
3420568f49bSmrg		UNAME_MACHINE=alpha ;;
343444c061aSmrg	    "LCA4 (21066/21068)")
3440568f49bSmrg		UNAME_MACHINE=alpha ;;
345444c061aSmrg	    "EV5 (21164)")
3460568f49bSmrg		UNAME_MACHINE=alphaev5 ;;
347444c061aSmrg	    "EV5.6 (21164A)")
3480568f49bSmrg		UNAME_MACHINE=alphaev56 ;;
349444c061aSmrg	    "EV5.6 (21164PC)")
3500568f49bSmrg		UNAME_MACHINE=alphapca56 ;;
351444c061aSmrg	    "EV5.7 (21164PC)")
3520568f49bSmrg		UNAME_MACHINE=alphapca57 ;;
353444c061aSmrg	    "EV6 (21264)")
3540568f49bSmrg		UNAME_MACHINE=alphaev6 ;;
355444c061aSmrg	    "EV6.7 (21264A)")
3560568f49bSmrg		UNAME_MACHINE=alphaev67 ;;
357444c061aSmrg	    "EV6.8CB (21264C)")
3580568f49bSmrg		UNAME_MACHINE=alphaev68 ;;
359444c061aSmrg	    "EV6.8AL (21264B)")
3600568f49bSmrg		UNAME_MACHINE=alphaev68 ;;
361444c061aSmrg	    "EV6.8CX (21264D)")
3620568f49bSmrg		UNAME_MACHINE=alphaev68 ;;
363444c061aSmrg	    "EV6.9A (21264/EV69A)")
3640568f49bSmrg		UNAME_MACHINE=alphaev69 ;;
365444c061aSmrg	    "EV7 (21364)")
3660568f49bSmrg		UNAME_MACHINE=alphaev7 ;;
367444c061aSmrg	    "EV7.9 (21364A)")
3680568f49bSmrg		UNAME_MACHINE=alphaev79 ;;
369444c061aSmrg	esac
370444c061aSmrg	# A Pn.n version is a patched version.
371444c061aSmrg	# A Vn.n version is a released version.
372444c061aSmrg	# A Tn.n version is a released field test version.
373444c061aSmrg	# A Xn.n version is an unreleased experimental baselevel.
374444c061aSmrg	# 1.2 uses "1.2" for uname -r.
375fdf6a26fSmrg	OSF_REL=`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
376fdf6a26fSmrg	GUESS=$UNAME_MACHINE-dec-osf$OSF_REL
377fdf6a26fSmrg	;;
378444c061aSmrg    Amiga*:UNIX_System_V:4.0:*)
379fdf6a26fSmrg	GUESS=m68k-unknown-sysv4
380fdf6a26fSmrg	;;
381444c061aSmrg    *:[Aa]miga[Oo][Ss]:*:*)
382fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-amigaos
383fdf6a26fSmrg	;;
384444c061aSmrg    *:[Mm]orph[Oo][Ss]:*:*)
385fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-morphos
386fdf6a26fSmrg	;;
387444c061aSmrg    *:OS/390:*:*)
388fdf6a26fSmrg	GUESS=i370-ibm-openedition
389fdf6a26fSmrg	;;
390444c061aSmrg    *:z/VM:*:*)
391fdf6a26fSmrg	GUESS=s390-ibm-zvmoe
392fdf6a26fSmrg	;;
393444c061aSmrg    *:OS400:*:*)
394fdf6a26fSmrg	GUESS=powerpc-ibm-os400
395fdf6a26fSmrg	;;
396444c061aSmrg    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
397fdf6a26fSmrg	GUESS=arm-acorn-riscix$UNAME_RELEASE
398fdf6a26fSmrg	;;
3999e7bcd65Smrg    arm*:riscos:*:*|arm*:RISCOS:*:*)
400fdf6a26fSmrg	GUESS=arm-unknown-riscos
401fdf6a26fSmrg	;;
402444c061aSmrg    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
403fdf6a26fSmrg	GUESS=hppa1.1-hitachi-hiuxmpp
404fdf6a26fSmrg	;;
405444c061aSmrg    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
406444c061aSmrg	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
407fdf6a26fSmrg	case `(/bin/universe) 2>/dev/null` in
408fdf6a26fSmrg	    att) GUESS=pyramid-pyramid-sysv3 ;;
409fdf6a26fSmrg	    *)   GUESS=pyramid-pyramid-bsd   ;;
410fdf6a26fSmrg	esac
411fdf6a26fSmrg	;;
412444c061aSmrg    NILE*:*:*:dcosx)
413fdf6a26fSmrg	GUESS=pyramid-pyramid-svr4
414fdf6a26fSmrg	;;
415444c061aSmrg    DRS?6000:unix:4.0:6*)
416fdf6a26fSmrg	GUESS=sparc-icl-nx6
417fdf6a26fSmrg	;;
418444c061aSmrg    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
419444c061aSmrg	case `/usr/bin/uname -p` in
420fdf6a26fSmrg	    sparc) GUESS=sparc-icl-nx7 ;;
421fdf6a26fSmrg	esac
422fdf6a26fSmrg	;;
4231477040fSmrg    s390x:SunOS:*:*)
424fdf6a26fSmrg	SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
425fdf6a26fSmrg	GUESS=$UNAME_MACHINE-ibm-solaris2$SUN_REL
426fdf6a26fSmrg	;;
427444c061aSmrg    sun4H:SunOS:5.*:*)
428fdf6a26fSmrg	SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
429fdf6a26fSmrg	GUESS=sparc-hal-solaris2$SUN_REL
430fdf6a26fSmrg	;;
431444c061aSmrg    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
432fdf6a26fSmrg	SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
433fdf6a26fSmrg	GUESS=sparc-sun-solaris2$SUN_REL
434fdf6a26fSmrg	;;
4351477040fSmrg    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
436fdf6a26fSmrg	GUESS=i386-pc-auroraux$UNAME_RELEASE
437fdf6a26fSmrg	;;
4382265a131Smrg    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
439a3bd7f05Smrg	set_cc_for_build
4400568f49bSmrg	SUN_ARCH=i386
4411477040fSmrg	# If there is a compiler, see if it is configured for 64-bit objects.
4421477040fSmrg	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
4431477040fSmrg	# This test works for both compilers.
444fdf6a26fSmrg	if test "$CC_FOR_BUILD" != no_compiler_found; then
4451477040fSmrg	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
446fdf6a26fSmrg		(CCOPTS="" $CC_FOR_BUILD -m64 -E - 2>/dev/null) | \
4471477040fSmrg		grep IS_64BIT_ARCH >/dev/null
4481477040fSmrg	    then
4490568f49bSmrg		SUN_ARCH=x86_64
4501477040fSmrg	    fi
4511477040fSmrg	fi
452fdf6a26fSmrg	SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
453fdf6a26fSmrg	GUESS=$SUN_ARCH-pc-solaris2$SUN_REL
454fdf6a26fSmrg	;;
455444c061aSmrg    sun4*:SunOS:6*:*)
456444c061aSmrg	# According to config.sub, this is the proper way to canonicalize
457444c061aSmrg	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
458444c061aSmrg	# it's likely to be more like Solaris than SunOS4.
459fdf6a26fSmrg	SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
460fdf6a26fSmrg	GUESS=sparc-sun-solaris3$SUN_REL
461fdf6a26fSmrg	;;
462444c061aSmrg    sun4*:SunOS:*:*)
463fdf6a26fSmrg	case `/usr/bin/arch -k` in
464444c061aSmrg	    Series*|S4*)
465444c061aSmrg		UNAME_RELEASE=`uname -v`
466444c061aSmrg		;;
467444c061aSmrg	esac
46835525df4Smrg	# Japanese Language versions have a version number like '4.1.3-JL'.
469fdf6a26fSmrg	SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/'`
470fdf6a26fSmrg	GUESS=sparc-sun-sunos$SUN_REL
471fdf6a26fSmrg	;;
472444c061aSmrg    sun3*:SunOS:*:*)
473fdf6a26fSmrg	GUESS=m68k-sun-sunos$UNAME_RELEASE
474fdf6a26fSmrg	;;
475444c061aSmrg    sun*:*:4.2BSD:*)
476444c061aSmrg	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
4770568f49bSmrg	test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3
478fdf6a26fSmrg	case `/bin/arch` in
479444c061aSmrg	    sun3)
480fdf6a26fSmrg		GUESS=m68k-sun-sunos$UNAME_RELEASE
481444c061aSmrg		;;
482444c061aSmrg	    sun4)
483fdf6a26fSmrg		GUESS=sparc-sun-sunos$UNAME_RELEASE
484444c061aSmrg		;;
485444c061aSmrg	esac
486fdf6a26fSmrg	;;
487444c061aSmrg    aushp:SunOS:*:*)
488fdf6a26fSmrg	GUESS=sparc-auspex-sunos$UNAME_RELEASE
489fdf6a26fSmrg	;;
490444c061aSmrg    # The situation for MiNT is a little confusing.  The machine name
491444c061aSmrg    # can be virtually everything (everything which is not
492444c061aSmrg    # "atarist" or "atariste" at least should have a processor
493444c061aSmrg    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
494444c061aSmrg    # to the lowercase version "mint" (or "freemint").  Finally
495444c061aSmrg    # the system name "TOS" denotes a system which is actually not
496444c061aSmrg    # MiNT.  But MiNT is downward compatible to TOS, so this should
497444c061aSmrg    # be no problem.
498444c061aSmrg    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
499fdf6a26fSmrg	GUESS=m68k-atari-mint$UNAME_RELEASE
500fdf6a26fSmrg	;;
501444c061aSmrg    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
502fdf6a26fSmrg	GUESS=m68k-atari-mint$UNAME_RELEASE
503fdf6a26fSmrg	;;
504444c061aSmrg    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
505fdf6a26fSmrg	GUESS=m68k-atari-mint$UNAME_RELEASE
506fdf6a26fSmrg	;;
507444c061aSmrg    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
508fdf6a26fSmrg	GUESS=m68k-milan-mint$UNAME_RELEASE
509fdf6a26fSmrg	;;
510444c061aSmrg    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
511fdf6a26fSmrg	GUESS=m68k-hades-mint$UNAME_RELEASE
512fdf6a26fSmrg	;;
513444c061aSmrg    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
514fdf6a26fSmrg	GUESS=m68k-unknown-mint$UNAME_RELEASE
515fdf6a26fSmrg	;;
516444c061aSmrg    m68k:machten:*:*)
517fdf6a26fSmrg	GUESS=m68k-apple-machten$UNAME_RELEASE
518fdf6a26fSmrg	;;
519444c061aSmrg    powerpc:machten:*:*)
520fdf6a26fSmrg	GUESS=powerpc-apple-machten$UNAME_RELEASE
521fdf6a26fSmrg	;;
522444c061aSmrg    RISC*:Mach:*:*)
523fdf6a26fSmrg	GUESS=mips-dec-mach_bsd4.3
524fdf6a26fSmrg	;;
525444c061aSmrg    RISC*:ULTRIX:*:*)
526fdf6a26fSmrg	GUESS=mips-dec-ultrix$UNAME_RELEASE
527fdf6a26fSmrg	;;
528444c061aSmrg    VAX*:ULTRIX*:*:*)
529fdf6a26fSmrg	GUESS=vax-dec-ultrix$UNAME_RELEASE
530fdf6a26fSmrg	;;
531444c061aSmrg    2020:CLIX:*:* | 2430:CLIX:*:*)
532fdf6a26fSmrg	GUESS=clipper-intergraph-clix$UNAME_RELEASE
533fdf6a26fSmrg	;;
534444c061aSmrg    mips:*:*:UMIPS | mips:*:*:RISCos)
535a3bd7f05Smrg	set_cc_for_build
5360568f49bSmrg	sed 's/^	//' << EOF > "$dummy.c"
537444c061aSmrg#ifdef __cplusplus
538444c061aSmrg#include <stdio.h>  /* for printf() prototype */
539444c061aSmrg	int main (int argc, char *argv[]) {
540444c061aSmrg#else
541444c061aSmrg	int main (argc, argv) int argc; char *argv[]; {
542444c061aSmrg#endif
543444c061aSmrg	#if defined (host_mips) && defined (MIPSEB)
544444c061aSmrg	#if defined (SYSTYPE_SYSV)
5450568f49bSmrg	  printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0);
546444c061aSmrg	#endif
547444c061aSmrg	#if defined (SYSTYPE_SVR4)
5480568f49bSmrg	  printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0);
549444c061aSmrg	#endif
550444c061aSmrg	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
5510568f49bSmrg	  printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0);
552444c061aSmrg	#endif
553444c061aSmrg	#endif
554444c061aSmrg	  exit (-1);
555444c061aSmrg	}
556444c061aSmrgEOF
5570568f49bSmrg	$CC_FOR_BUILD -o "$dummy" "$dummy.c" &&
5580568f49bSmrg	  dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` &&
5590568f49bSmrg	  SYSTEM_NAME=`"$dummy" "$dummyarg"` &&
560444c061aSmrg	    { echo "$SYSTEM_NAME"; exit; }
561fdf6a26fSmrg	GUESS=mips-mips-riscos$UNAME_RELEASE
562fdf6a26fSmrg	;;
563444c061aSmrg    Motorola:PowerMAX_OS:*:*)
564fdf6a26fSmrg	GUESS=powerpc-motorola-powermax
565fdf6a26fSmrg	;;
566444c061aSmrg    Motorola:*:4.3:PL8-*)
567fdf6a26fSmrg	GUESS=powerpc-harris-powermax
568fdf6a26fSmrg	;;
569444c061aSmrg    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
570fdf6a26fSmrg	GUESS=powerpc-harris-powermax
571fdf6a26fSmrg	;;
572444c061aSmrg    Night_Hawk:Power_UNIX:*:*)
573fdf6a26fSmrg	GUESS=powerpc-harris-powerunix
574fdf6a26fSmrg	;;
575444c061aSmrg    m88k:CX/UX:7*:*)
576fdf6a26fSmrg	GUESS=m88k-harris-cxux7
577fdf6a26fSmrg	;;
578444c061aSmrg    m88k:*:4*:R4*)
579fdf6a26fSmrg	GUESS=m88k-motorola-sysv4
580fdf6a26fSmrg	;;
581444c061aSmrg    m88k:*:3*:R3*)
582fdf6a26fSmrg	GUESS=m88k-motorola-sysv3
583fdf6a26fSmrg	;;
584444c061aSmrg    AViiON:dgux:*:*)
5859e7bcd65Smrg	# DG/UX returns AViiON for all architectures
5869e7bcd65Smrg	UNAME_PROCESSOR=`/usr/bin/uname -p`
587fdf6a26fSmrg	if test "$UNAME_PROCESSOR" = mc88100 || test "$UNAME_PROCESSOR" = mc88110
588444c061aSmrg	then
589fdf6a26fSmrg	    if test "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx || \
590fdf6a26fSmrg	       test "$TARGET_BINARY_INTERFACE"x = x
591444c061aSmrg	    then
592fdf6a26fSmrg		GUESS=m88k-dg-dgux$UNAME_RELEASE
593444c061aSmrg	    else
594fdf6a26fSmrg		GUESS=m88k-dg-dguxbcs$UNAME_RELEASE
595444c061aSmrg	    fi
596444c061aSmrg	else
597fdf6a26fSmrg	    GUESS=i586-dg-dgux$UNAME_RELEASE
598444c061aSmrg	fi
599fdf6a26fSmrg	;;
600444c061aSmrg    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
601fdf6a26fSmrg	GUESS=m88k-dolphin-sysv3
602fdf6a26fSmrg	;;
603444c061aSmrg    M88*:*:R3*:*)
604444c061aSmrg	# Delta 88k system running SVR3
605fdf6a26fSmrg	GUESS=m88k-motorola-sysv3
606fdf6a26fSmrg	;;
607444c061aSmrg    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
608fdf6a26fSmrg	GUESS=m88k-tektronix-sysv3
609fdf6a26fSmrg	;;
610444c061aSmrg    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
611fdf6a26fSmrg	GUESS=m68k-tektronix-bsd
612fdf6a26fSmrg	;;
613444c061aSmrg    *:IRIX*:*:*)
614fdf6a26fSmrg	IRIX_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/g'`
615fdf6a26fSmrg	GUESS=mips-sgi-irix$IRIX_REL
616fdf6a26fSmrg	;;
617444c061aSmrg    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
618fdf6a26fSmrg	GUESS=romp-ibm-aix    # uname -m gives an 8 hex-code CPU id
619fdf6a26fSmrg	;;                    # Note that: echo "'`uname -s`'" gives 'AIX '
620444c061aSmrg    i*86:AIX:*:*)
621fdf6a26fSmrg	GUESS=i386-ibm-aix
622fdf6a26fSmrg	;;
623444c061aSmrg    ia64:AIX:*:*)
624fdf6a26fSmrg	if test -x /usr/bin/oslevel ; then
625444c061aSmrg		IBM_REV=`/usr/bin/oslevel`
626444c061aSmrg	else
627fdf6a26fSmrg		IBM_REV=$UNAME_VERSION.$UNAME_RELEASE
628444c061aSmrg	fi
629fdf6a26fSmrg	GUESS=$UNAME_MACHINE-ibm-aix$IBM_REV
630fdf6a26fSmrg	;;
631444c061aSmrg    *:AIX:2:3)
632444c061aSmrg	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
633a3bd7f05Smrg		set_cc_for_build
6340568f49bSmrg		sed 's/^		//' << EOF > "$dummy.c"
635444c061aSmrg		#include <sys/systemcfg.h>
636444c061aSmrg
63735525df4Smrg		int
63835525df4Smrg		main ()
639444c061aSmrg			{
640444c061aSmrg			if (!__power_pc())
641444c061aSmrg				exit(1);
642444c061aSmrg			puts("powerpc-ibm-aix3.2.5");
643444c061aSmrg			exit(0);
644444c061aSmrg			}
645444c061aSmrgEOF
6460568f49bSmrg		if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"`
647444c061aSmrg		then
648fdf6a26fSmrg			GUESS=$SYSTEM_NAME
649444c061aSmrg		else
650fdf6a26fSmrg			GUESS=rs6000-ibm-aix3.2.5
651444c061aSmrg		fi
652444c061aSmrg	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
653fdf6a26fSmrg		GUESS=rs6000-ibm-aix3.2.4
654444c061aSmrg	else
655fdf6a26fSmrg		GUESS=rs6000-ibm-aix3.2
656444c061aSmrg	fi
657fdf6a26fSmrg	;;
6589e7bcd65Smrg    *:AIX:*:[4567])
659444c061aSmrg	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
6600568f49bSmrg	if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then
661444c061aSmrg		IBM_ARCH=rs6000
662444c061aSmrg	else
663444c061aSmrg		IBM_ARCH=powerpc
664444c061aSmrg	fi
665fdf6a26fSmrg	if test -x /usr/bin/lslpp ; then
666fdf6a26fSmrg		IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | \
667339a7c43Smrg			   awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
668444c061aSmrg	else
669fdf6a26fSmrg		IBM_REV=$UNAME_VERSION.$UNAME_RELEASE
670444c061aSmrg	fi
671fdf6a26fSmrg	GUESS=$IBM_ARCH-ibm-aix$IBM_REV
672fdf6a26fSmrg	;;
673444c061aSmrg    *:AIX:*:*)
674fdf6a26fSmrg	GUESS=rs6000-ibm-aix
675fdf6a26fSmrg	;;
6760568f49bSmrg    ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*)
677fdf6a26fSmrg	GUESS=romp-ibm-bsd4.4
678fdf6a26fSmrg	;;
679444c061aSmrg    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
680fdf6a26fSmrg	GUESS=romp-ibm-bsd$UNAME_RELEASE    # 4.3 with uname added to
681fdf6a26fSmrg	;;                                  # report: romp-ibm BSD 4.3
682444c061aSmrg    *:BOSX:*:*)
683fdf6a26fSmrg	GUESS=rs6000-bull-bosx
684fdf6a26fSmrg	;;
685444c061aSmrg    DPX/2?00:B.O.S.:*:*)
686fdf6a26fSmrg	GUESS=m68k-bull-sysv3
687fdf6a26fSmrg	;;
688444c061aSmrg    9000/[34]??:4.3bsd:1.*:*)
689fdf6a26fSmrg	GUESS=m68k-hp-bsd
690fdf6a26fSmrg	;;
691444c061aSmrg    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
692fdf6a26fSmrg	GUESS=m68k-hp-bsd4.4
693fdf6a26fSmrg	;;
694444c061aSmrg    9000/[34678]??:HP-UX:*:*)
695fdf6a26fSmrg	HPUX_REV=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*.[0B]*//'`
696fdf6a26fSmrg	case $UNAME_MACHINE in
6970568f49bSmrg	    9000/31?)            HP_ARCH=m68000 ;;
6980568f49bSmrg	    9000/[34]??)         HP_ARCH=m68k ;;
699444c061aSmrg	    9000/[678][0-9][0-9])
700fdf6a26fSmrg		if test -x /usr/bin/getconf; then
701444c061aSmrg		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
7029e7bcd65Smrg		    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
703fdf6a26fSmrg		    case $sc_cpu_version in
7040568f49bSmrg		      523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
7050568f49bSmrg		      528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
7069e7bcd65Smrg		      532)                      # CPU_PA_RISC2_0
707fdf6a26fSmrg			case $sc_kernel_bits in
7080568f49bSmrg			  32) HP_ARCH=hppa2.0n ;;
7090568f49bSmrg			  64) HP_ARCH=hppa2.0w ;;
7100568f49bSmrg			  '') HP_ARCH=hppa2.0 ;;   # HP-UX 10.20
7119e7bcd65Smrg			esac ;;
7129e7bcd65Smrg		    esac
713444c061aSmrg		fi
714fdf6a26fSmrg		if test "$HP_ARCH" = ""; then
715a3bd7f05Smrg		    set_cc_for_build
7160568f49bSmrg		    sed 's/^		//' << EOF > "$dummy.c"
717444c061aSmrg
7189e7bcd65Smrg		#define _HPUX_SOURCE
7199e7bcd65Smrg		#include <stdlib.h>
7209e7bcd65Smrg		#include <unistd.h>
721444c061aSmrg
72235525df4Smrg		int
72335525df4Smrg		main ()
7249e7bcd65Smrg		{
7259e7bcd65Smrg		#if defined(_SC_KERNEL_BITS)
7269e7bcd65Smrg		    long bits = sysconf(_SC_KERNEL_BITS);
7279e7bcd65Smrg		#endif
7289e7bcd65Smrg		    long cpu  = sysconf (_SC_CPU_VERSION);
729444c061aSmrg
7309e7bcd65Smrg		    switch (cpu)
7319e7bcd65Smrg			{
7329e7bcd65Smrg			case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
7339e7bcd65Smrg			case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
7349e7bcd65Smrg			case CPU_PA_RISC2_0:
7359e7bcd65Smrg		#if defined(_SC_KERNEL_BITS)
7369e7bcd65Smrg			    switch (bits)
7379e7bcd65Smrg				{
7389e7bcd65Smrg				case 64: puts ("hppa2.0w"); break;
7399e7bcd65Smrg				case 32: puts ("hppa2.0n"); break;
7409e7bcd65Smrg				default: puts ("hppa2.0"); break;
7419e7bcd65Smrg				} break;
7429e7bcd65Smrg		#else  /* !defined(_SC_KERNEL_BITS) */
7439e7bcd65Smrg			    puts ("hppa2.0"); break;
7449e7bcd65Smrg		#endif
7459e7bcd65Smrg			default: puts ("hppa1.0"); break;
7469e7bcd65Smrg			}
7479e7bcd65Smrg		    exit (0);
7489e7bcd65Smrg		}
749444c061aSmrgEOF
7500568f49bSmrg		    (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"`
751444c061aSmrg		    test -z "$HP_ARCH" && HP_ARCH=hppa
752444c061aSmrg		fi ;;
753444c061aSmrg	esac
754fdf6a26fSmrg	if test "$HP_ARCH" = hppa2.0w
755444c061aSmrg	then
756a3bd7f05Smrg	    set_cc_for_build
757444c061aSmrg
758444c061aSmrg	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
759444c061aSmrg	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
760444c061aSmrg	    # generating 64-bit code.  GNU and HP use different nomenclature:
761444c061aSmrg	    #
762444c061aSmrg	    # $ CC_FOR_BUILD=cc ./config.guess
763444c061aSmrg	    # => hppa2.0w-hp-hpux11.23
764444c061aSmrg	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
765444c061aSmrg	    # => hppa64-hp-hpux11.23
766444c061aSmrg
7670568f49bSmrg	    if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) |
7681477040fSmrg		grep -q __LP64__
769444c061aSmrg	    then
7700568f49bSmrg		HP_ARCH=hppa2.0w
771444c061aSmrg	    else
7720568f49bSmrg		HP_ARCH=hppa64
773444c061aSmrg	    fi
774444c061aSmrg	fi
775fdf6a26fSmrg	GUESS=$HP_ARCH-hp-hpux$HPUX_REV
776fdf6a26fSmrg	;;
777444c061aSmrg    ia64:HP-UX:*:*)
778fdf6a26fSmrg	HPUX_REV=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*.[0B]*//'`
779fdf6a26fSmrg	GUESS=ia64-hp-hpux$HPUX_REV
780fdf6a26fSmrg	;;
781444c061aSmrg    3050*:HI-UX:*:*)
782a3bd7f05Smrg	set_cc_for_build
7830568f49bSmrg	sed 's/^	//' << EOF > "$dummy.c"
784444c061aSmrg	#include <unistd.h>
785444c061aSmrg	int
786444c061aSmrg	main ()
787444c061aSmrg	{
788444c061aSmrg	  long cpu = sysconf (_SC_CPU_VERSION);
789444c061aSmrg	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
790444c061aSmrg	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
791444c061aSmrg	     results, however.  */
792444c061aSmrg	  if (CPU_IS_PA_RISC (cpu))
793444c061aSmrg	    {
794444c061aSmrg	      switch (cpu)
795444c061aSmrg		{
796444c061aSmrg		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
797444c061aSmrg		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
798444c061aSmrg		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
799444c061aSmrg		  default: puts ("hppa-hitachi-hiuxwe2"); break;
800444c061aSmrg		}
801444c061aSmrg	    }
802444c061aSmrg	  else if (CPU_IS_HP_MC68K (cpu))
803444c061aSmrg	    puts ("m68k-hitachi-hiuxwe2");
804444c061aSmrg	  else puts ("unknown-hitachi-hiuxwe2");
805444c061aSmrg	  exit (0);
806444c061aSmrg	}
807444c061aSmrgEOF
8080568f49bSmrg	$CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` &&
809444c061aSmrg		{ echo "$SYSTEM_NAME"; exit; }
810fdf6a26fSmrg	GUESS=unknown-hitachi-hiuxwe2
811fdf6a26fSmrg	;;
8120568f49bSmrg    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*)
813fdf6a26fSmrg	GUESS=hppa1.1-hp-bsd
814fdf6a26fSmrg	;;
815444c061aSmrg    9000/8??:4.3bsd:*:*)
816fdf6a26fSmrg	GUESS=hppa1.0-hp-bsd
817fdf6a26fSmrg	;;
818444c061aSmrg    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
819fdf6a26fSmrg	GUESS=hppa1.0-hp-mpeix
820fdf6a26fSmrg	;;
8210568f49bSmrg    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*)
822fdf6a26fSmrg	GUESS=hppa1.1-hp-osf
823fdf6a26fSmrg	;;
824444c061aSmrg    hp8??:OSF1:*:*)
825fdf6a26fSmrg	GUESS=hppa1.0-hp-osf
826fdf6a26fSmrg	;;
827444c061aSmrg    i*86:OSF1:*:*)
828fdf6a26fSmrg	if test -x /usr/sbin/sysversion ; then
829fdf6a26fSmrg	    GUESS=$UNAME_MACHINE-unknown-osf1mk
830444c061aSmrg	else
831fdf6a26fSmrg	    GUESS=$UNAME_MACHINE-unknown-osf1
832444c061aSmrg	fi
833fdf6a26fSmrg	;;
834444c061aSmrg    parisc*:Lites*:*:*)
835fdf6a26fSmrg	GUESS=hppa1.1-hp-lites
836fdf6a26fSmrg	;;
837444c061aSmrg    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
838fdf6a26fSmrg	GUESS=c1-convex-bsd
839fdf6a26fSmrg	;;
840444c061aSmrg    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
841444c061aSmrg	if getsysinfo -f scalar_acc
842444c061aSmrg	then echo c32-convex-bsd
843444c061aSmrg	else echo c2-convex-bsd
844444c061aSmrg	fi
8459e7bcd65Smrg	exit ;;
846444c061aSmrg    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
847fdf6a26fSmrg	GUESS=c34-convex-bsd
848fdf6a26fSmrg	;;
849444c061aSmrg    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
850fdf6a26fSmrg	GUESS=c38-convex-bsd
851fdf6a26fSmrg	;;
852444c061aSmrg    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
853fdf6a26fSmrg	GUESS=c4-convex-bsd
854fdf6a26fSmrg	;;
855444c061aSmrg    CRAY*Y-MP:*:*:*)
856fdf6a26fSmrg	CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
857fdf6a26fSmrg	GUESS=ymp-cray-unicos$CRAY_REL
858fdf6a26fSmrg	;;
859444c061aSmrg    CRAY*[A-Z]90:*:*:*)
8600568f49bSmrg	echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \
861444c061aSmrg	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
862444c061aSmrg	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
863444c061aSmrg	      -e 's/\.[^.]*$/.X/'
864444c061aSmrg	exit ;;
865444c061aSmrg    CRAY*TS:*:*:*)
866fdf6a26fSmrg	CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
867fdf6a26fSmrg	GUESS=t90-cray-unicos$CRAY_REL
868fdf6a26fSmrg	;;
869444c061aSmrg    CRAY*T3E:*:*:*)
870fdf6a26fSmrg	CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
871fdf6a26fSmrg	GUESS=alphaev5-cray-unicosmk$CRAY_REL
872fdf6a26fSmrg	;;
873444c061aSmrg    CRAY*SV1:*:*:*)
874fdf6a26fSmrg	CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
875fdf6a26fSmrg	GUESS=sv1-cray-unicos$CRAY_REL
876fdf6a26fSmrg	;;
877444c061aSmrg    *:UNICOS/mp:*:*)
878fdf6a26fSmrg	CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
879fdf6a26fSmrg	GUESS=craynv-cray-unicosmp$CRAY_REL
880fdf6a26fSmrg	;;
881444c061aSmrg    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
8820568f49bSmrg	FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
8830568f49bSmrg	FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
8840568f49bSmrg	FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'`
885fdf6a26fSmrg	GUESS=${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}
886fdf6a26fSmrg	;;
887444c061aSmrg    5000:UNIX_System_V:4.*:*)
8880568f49bSmrg	FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
8890568f49bSmrg	FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`
890fdf6a26fSmrg	GUESS=sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}
891fdf6a26fSmrg	;;
892444c061aSmrg    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
893fdf6a26fSmrg	GUESS=$UNAME_MACHINE-pc-bsdi$UNAME_RELEASE
894fdf6a26fSmrg	;;
895444c061aSmrg    sparc*:BSD/OS:*:*)
896fdf6a26fSmrg	GUESS=sparc-unknown-bsdi$UNAME_RELEASE
897fdf6a26fSmrg	;;
898444c061aSmrg    *:BSD/OS:*:*)
899fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-bsdi$UNAME_RELEASE
900fdf6a26fSmrg	;;
901a3bd7f05Smrg    arm:FreeBSD:*:*)
902a3bd7f05Smrg	UNAME_PROCESSOR=`uname -p`
903a3bd7f05Smrg	set_cc_for_build
904a3bd7f05Smrg	if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
905a3bd7f05Smrg	    | grep -q __ARM_PCS_VFP
906a3bd7f05Smrg	then
907fdf6a26fSmrg	    FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
908fdf6a26fSmrg	    GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabi
909a3bd7f05Smrg	else
910fdf6a26fSmrg	    FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
911fdf6a26fSmrg	    GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabihf
912a3bd7f05Smrg	fi
913fdf6a26fSmrg	;;
914444c061aSmrg    *:FreeBSD:*:*)
91535525df4Smrg	UNAME_PROCESSOR=`uname -p`
916fdf6a26fSmrg	case $UNAME_PROCESSOR in
9172265a131Smrg	    amd64)
9180568f49bSmrg		UNAME_PROCESSOR=x86_64 ;;
9190568f49bSmrg	    i386)
9200568f49bSmrg		UNAME_PROCESSOR=i586 ;;
9212265a131Smrg	esac
922fdf6a26fSmrg	FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
923fdf6a26fSmrg	GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL
924fdf6a26fSmrg	;;
925444c061aSmrg    i*:CYGWIN*:*)
926fdf6a26fSmrg	GUESS=$UNAME_MACHINE-pc-cygwin
927fdf6a26fSmrg	;;
9289e7bcd65Smrg    *:MINGW64*:*)
929fdf6a26fSmrg	GUESS=$UNAME_MACHINE-pc-mingw64
930fdf6a26fSmrg	;;
9312265a131Smrg    *:MINGW*:*)
932fdf6a26fSmrg	GUESS=$UNAME_MACHINE-pc-mingw32
933fdf6a26fSmrg	;;
934339a7c43Smrg    *:MSYS*:*)
935fdf6a26fSmrg	GUESS=$UNAME_MACHINE-pc-msys
936fdf6a26fSmrg	;;
937444c061aSmrg    i*:PW*:*)
938fdf6a26fSmrg	GUESS=$UNAME_MACHINE-pc-pw32
939fdf6a26fSmrg	;;
940fdf6a26fSmrg    *:SerenityOS:*:*)
941fdf6a26fSmrg        GUESS=$UNAME_MACHINE-pc-serenity
942fdf6a26fSmrg        ;;
9431477040fSmrg    *:Interix*:*)
944fdf6a26fSmrg	case $UNAME_MACHINE in
9452265a131Smrg	    x86)
946fdf6a26fSmrg		GUESS=i586-pc-interix$UNAME_RELEASE
947fdf6a26fSmrg		;;
9481477040fSmrg	    authenticamd | genuineintel | EM64T)
949fdf6a26fSmrg		GUESS=x86_64-unknown-interix$UNAME_RELEASE
950fdf6a26fSmrg		;;
9512265a131Smrg	    IA64)
952fdf6a26fSmrg		GUESS=ia64-unknown-interix$UNAME_RELEASE
953fdf6a26fSmrg		;;
9542265a131Smrg	esac ;;
955444c061aSmrg    i*:UWIN*:*)
956fdf6a26fSmrg	GUESS=$UNAME_MACHINE-pc-uwin
957fdf6a26fSmrg	;;
958444c061aSmrg    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
959fdf6a26fSmrg	GUESS=x86_64-pc-cygwin
960fdf6a26fSmrg	;;
961444c061aSmrg    prep*:SunOS:5.*:*)
962fdf6a26fSmrg	SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
963fdf6a26fSmrg	GUESS=powerpcle-unknown-solaris2$SUN_REL
964fdf6a26fSmrg	;;
965444c061aSmrg    *:GNU:*:*)
966444c061aSmrg	# the GNU system
967fdf6a26fSmrg	GNU_ARCH=`echo "$UNAME_MACHINE" | sed -e 's,[-/].*$,,'`
968fdf6a26fSmrg	GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's,/.*$,,'`
969fdf6a26fSmrg	GUESS=$GNU_ARCH-unknown-$LIBC$GNU_REL
970fdf6a26fSmrg	;;
971444c061aSmrg    *:GNU/*:*:*)
972444c061aSmrg	# other systems with GNU libc and userland
973fdf6a26fSmrg	GNU_SYS=`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"`
974fdf6a26fSmrg	GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
975fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-$GNU_SYS$GNU_REL-$LIBC
976fdf6a26fSmrg	;;
977fdf6a26fSmrg    x86_64:[Mm]anagarm:*:*|i?86:[Mm]anagarm:*:*)
978fdf6a26fSmrg	GUESS="$UNAME_MACHINE-pc-managarm-mlibc"
979fdf6a26fSmrg	;;
980fdf6a26fSmrg    *:[Mm]anagarm:*:*)
981fdf6a26fSmrg	GUESS="$UNAME_MACHINE-unknown-managarm-mlibc"
982fdf6a26fSmrg	;;
983a3bd7f05Smrg    *:Minix:*:*)
984fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-minix
985fdf6a26fSmrg	;;
9869e7bcd65Smrg    aarch64:Linux:*:*)
98735525df4Smrg	set_cc_for_build
98835525df4Smrg	CPU=$UNAME_MACHINE
98935525df4Smrg	LIBCABI=$LIBC
99035525df4Smrg	if test "$CC_FOR_BUILD" != no_compiler_found; then
99135525df4Smrg	    ABI=64
99235525df4Smrg	    sed 's/^	    //' << EOF > "$dummy.c"
99335525df4Smrg	    #ifdef __ARM_EABI__
99435525df4Smrg	    #ifdef __ARM_PCS_VFP
99535525df4Smrg	    ABI=eabihf
99635525df4Smrg	    #else
99735525df4Smrg	    ABI=eabi
99835525df4Smrg	    #endif
99935525df4Smrg	    #endif
100035525df4SmrgEOF
100135525df4Smrg	    cc_set_abi=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^ABI' | sed 's, ,,g'`
100235525df4Smrg	    eval "$cc_set_abi"
100335525df4Smrg	    case $ABI in
100435525df4Smrg		eabi | eabihf) CPU=armv8l; LIBCABI=$LIBC$ABI ;;
100535525df4Smrg	    esac
100635525df4Smrg	fi
100735525df4Smrg	GUESS=$CPU-unknown-linux-$LIBCABI
1008fdf6a26fSmrg	;;
10099e7bcd65Smrg    aarch64_be:Linux:*:*)
10109e7bcd65Smrg	UNAME_MACHINE=aarch64_be
1011fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
1012fdf6a26fSmrg	;;
10131477040fSmrg    alpha:Linux:*:*)
1014a3bd7f05Smrg	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' /proc/cpuinfo 2>/dev/null` in
10151477040fSmrg	  EV5)   UNAME_MACHINE=alphaev5 ;;
10161477040fSmrg	  EV56)  UNAME_MACHINE=alphaev56 ;;
10171477040fSmrg	  PCA56) UNAME_MACHINE=alphapca56 ;;
10181477040fSmrg	  PCA57) UNAME_MACHINE=alphapca56 ;;
10191477040fSmrg	  EV6)   UNAME_MACHINE=alphaev6 ;;
10201477040fSmrg	  EV67)  UNAME_MACHINE=alphaev67 ;;
10211477040fSmrg	  EV68*) UNAME_MACHINE=alphaev68 ;;
10229e7bcd65Smrg	esac
10231477040fSmrg	objdump --private-headers /bin/sh | grep -q ld.so.1
10240568f49bSmrg	if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
1025fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
1026fdf6a26fSmrg	;;
1027fdf6a26fSmrg    arc:Linux:*:* | arceb:Linux:*:* | arc32:Linux:*:* | arc64:Linux:*:*)
1028fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
1029fdf6a26fSmrg	;;
1030444c061aSmrg    arm*:Linux:*:*)
1031a3bd7f05Smrg	set_cc_for_build
10322265a131Smrg	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
10332265a131Smrg	    | grep -q __ARM_EABI__
10342265a131Smrg	then
1035fdf6a26fSmrg	    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
10362265a131Smrg	else
10379e7bcd65Smrg	    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
10389e7bcd65Smrg		| grep -q __ARM_PCS_VFP
10399e7bcd65Smrg	    then
1040fdf6a26fSmrg		GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabi
10419e7bcd65Smrg	    else
1042fdf6a26fSmrg		GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabihf
10439e7bcd65Smrg	    fi
10442265a131Smrg	fi
1045fdf6a26fSmrg	;;
10462265a131Smrg    avr32*:Linux:*:*)
1047fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
1048fdf6a26fSmrg	;;
1049444c061aSmrg    cris:Linux:*:*)
1050fdf6a26fSmrg	GUESS=$UNAME_MACHINE-axis-linux-$LIBC
1051fdf6a26fSmrg	;;
1052444c061aSmrg    crisv32:Linux:*:*)
1053fdf6a26fSmrg	GUESS=$UNAME_MACHINE-axis-linux-$LIBC
1054fdf6a26fSmrg	;;
10550568f49bSmrg    e2k:Linux:*:*)
1056fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
1057fdf6a26fSmrg	;;
1058444c061aSmrg    frv:Linux:*:*)
1059fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
1060fdf6a26fSmrg	;;
10619e7bcd65Smrg    hexagon:Linux:*:*)
1062fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
1063fdf6a26fSmrg	;;
10641477040fSmrg    i*86:Linux:*:*)
1065fdf6a26fSmrg	GUESS=$UNAME_MACHINE-pc-linux-$LIBC
1066fdf6a26fSmrg	;;
1067444c061aSmrg    ia64:Linux:*:*)
1068fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
1069fdf6a26fSmrg	;;
10700568f49bSmrg    k1om:Linux:*:*)
1071fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
1072fdf6a26fSmrg	;;
107335525df4Smrg    kvx:Linux:*:*)
107435525df4Smrg	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
107535525df4Smrg	;;
107635525df4Smrg    kvx:cos:*:*)
107735525df4Smrg	GUESS=$UNAME_MACHINE-unknown-cos
107835525df4Smrg	;;
107935525df4Smrg    kvx:mbr:*:*)
108035525df4Smrg	GUESS=$UNAME_MACHINE-unknown-mbr
108135525df4Smrg	;;
1082fdf6a26fSmrg    loongarch32:Linux:*:* | loongarch64:Linux:*:*)
1083fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
1084fdf6a26fSmrg	;;
1085444c061aSmrg    m32r*:Linux:*:*)
1086fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
1087fdf6a26fSmrg	;;
1088444c061aSmrg    m68*:Linux:*:*)
1089fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
1090fdf6a26fSmrg	;;
10911477040fSmrg    mips:Linux:*:* | mips64:Linux:*:*)
1092a3bd7f05Smrg	set_cc_for_build
1093a3bd7f05Smrg	IS_GLIBC=0
1094a3bd7f05Smrg	test x"${LIBC}" = xgnu && IS_GLIBC=1
10950568f49bSmrg	sed 's/^	//' << EOF > "$dummy.c"
1096444c061aSmrg	#undef CPU
1097a3bd7f05Smrg	#undef mips
1098a3bd7f05Smrg	#undef mipsel
1099a3bd7f05Smrg	#undef mips64
1100a3bd7f05Smrg	#undef mips64el
1101a3bd7f05Smrg	#if ${IS_GLIBC} && defined(_ABI64)
1102a3bd7f05Smrg	LIBCABI=gnuabi64
1103a3bd7f05Smrg	#else
1104a3bd7f05Smrg	#if ${IS_GLIBC} && defined(_ABIN32)
1105a3bd7f05Smrg	LIBCABI=gnuabin32
1106a3bd7f05Smrg	#else
1107a3bd7f05Smrg	LIBCABI=${LIBC}
1108a3bd7f05Smrg	#endif
1109a3bd7f05Smrg	#endif
1110a3bd7f05Smrg
1111a3bd7f05Smrg	#if ${IS_GLIBC} && defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6
1112a3bd7f05Smrg	CPU=mipsisa64r6
1113a3bd7f05Smrg	#else
1114a3bd7f05Smrg	#if ${IS_GLIBC} && !defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6
1115a3bd7f05Smrg	CPU=mipsisa32r6
1116a3bd7f05Smrg	#else
1117a3bd7f05Smrg	#if defined(__mips64)
1118a3bd7f05Smrg	CPU=mips64
1119a3bd7f05Smrg	#else
1120a3bd7f05Smrg	CPU=mips
1121a3bd7f05Smrg	#endif
1122a3bd7f05Smrg	#endif
1123a3bd7f05Smrg	#endif
1124a3bd7f05Smrg
1125444c061aSmrg	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
1126a3bd7f05Smrg	MIPS_ENDIAN=el
1127444c061aSmrg	#else
1128444c061aSmrg	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
1129a3bd7f05Smrg	MIPS_ENDIAN=
1130444c061aSmrg	#else
1131a3bd7f05Smrg	MIPS_ENDIAN=
1132444c061aSmrg	#endif
1133444c061aSmrg	#endif
1134444c061aSmrgEOF
1135fdf6a26fSmrg	cc_set_vars=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI'`
1136fdf6a26fSmrg	eval "$cc_set_vars"
1137a3bd7f05Smrg	test "x$CPU" != x && { echo "$CPU${MIPS_ENDIAN}-unknown-linux-$LIBCABI"; exit; }
1138444c061aSmrg	;;
11390568f49bSmrg    mips64el:Linux:*:*)
1140fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
1141fdf6a26fSmrg	;;
1142339a7c43Smrg    openrisc*:Linux:*:*)
1143fdf6a26fSmrg	GUESS=or1k-unknown-linux-$LIBC
1144fdf6a26fSmrg	;;
1145339a7c43Smrg    or32:Linux:*:* | or1k*:Linux:*:*)
1146fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
1147fdf6a26fSmrg	;;
11481477040fSmrg    padre:Linux:*:*)
1149fdf6a26fSmrg	GUESS=sparc-unknown-linux-$LIBC
1150fdf6a26fSmrg	;;
11511477040fSmrg    parisc64:Linux:*:* | hppa64:Linux:*:*)
1152fdf6a26fSmrg	GUESS=hppa64-unknown-linux-$LIBC
1153fdf6a26fSmrg	;;
1154444c061aSmrg    parisc:Linux:*:* | hppa:Linux:*:*)
1155444c061aSmrg	# Look for CPU level
1156444c061aSmrg	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
1157fdf6a26fSmrg	  PA7*) GUESS=hppa1.1-unknown-linux-$LIBC ;;
1158fdf6a26fSmrg	  PA8*) GUESS=hppa2.0-unknown-linux-$LIBC ;;
1159fdf6a26fSmrg	  *)    GUESS=hppa-unknown-linux-$LIBC ;;
1160444c061aSmrg	esac
1161fdf6a26fSmrg	;;
11621477040fSmrg    ppc64:Linux:*:*)
1163fdf6a26fSmrg	GUESS=powerpc64-unknown-linux-$LIBC
1164fdf6a26fSmrg	;;
11651477040fSmrg    ppc:Linux:*:*)
1166fdf6a26fSmrg	GUESS=powerpc-unknown-linux-$LIBC
1167fdf6a26fSmrg	;;
1168339a7c43Smrg    ppc64le:Linux:*:*)
1169fdf6a26fSmrg	GUESS=powerpc64le-unknown-linux-$LIBC
1170fdf6a26fSmrg	;;
1171339a7c43Smrg    ppcle:Linux:*:*)
1172fdf6a26fSmrg	GUESS=powerpcle-unknown-linux-$LIBC
1173fdf6a26fSmrg	;;
1174fdf6a26fSmrg    riscv32:Linux:*:* | riscv32be:Linux:*:* | riscv64:Linux:*:* | riscv64be:Linux:*:*)
1175fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
1176fdf6a26fSmrg	;;
1177444c061aSmrg    s390:Linux:*:* | s390x:Linux:*:*)
1178fdf6a26fSmrg	GUESS=$UNAME_MACHINE-ibm-linux-$LIBC
1179fdf6a26fSmrg	;;
1180444c061aSmrg    sh64*:Linux:*:*)
1181fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
1182fdf6a26fSmrg	;;
1183444c061aSmrg    sh*:Linux:*:*)
1184fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
1185fdf6a26fSmrg	;;
1186444c061aSmrg    sparc:Linux:*:* | sparc64:Linux:*:*)
1187fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
1188fdf6a26fSmrg	;;
11899e7bcd65Smrg    tile*:Linux:*:*)
1190fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
1191fdf6a26fSmrg	;;
1192444c061aSmrg    vax:Linux:*:*)
1193fdf6a26fSmrg	GUESS=$UNAME_MACHINE-dec-linux-$LIBC
1194fdf6a26fSmrg	;;
1195444c061aSmrg    x86_64:Linux:*:*)
1196a3bd7f05Smrg	set_cc_for_build
1197fdf6a26fSmrg	CPU=$UNAME_MACHINE
1198a3bd7f05Smrg	LIBCABI=$LIBC
1199fdf6a26fSmrg	if test "$CC_FOR_BUILD" != no_compiler_found; then
1200fdf6a26fSmrg	    ABI=64
1201fdf6a26fSmrg	    sed 's/^	    //' << EOF > "$dummy.c"
1202fdf6a26fSmrg	    #ifdef __i386__
1203fdf6a26fSmrg	    ABI=x86
1204fdf6a26fSmrg	    #else
1205fdf6a26fSmrg	    #ifdef __ILP32__
1206fdf6a26fSmrg	    ABI=x32
1207fdf6a26fSmrg	    #endif
1208fdf6a26fSmrg	    #endif
1209fdf6a26fSmrgEOF
1210fdf6a26fSmrg	    cc_set_abi=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^ABI' | sed 's, ,,g'`
1211fdf6a26fSmrg	    eval "$cc_set_abi"
1212fdf6a26fSmrg	    case $ABI in
1213fdf6a26fSmrg		x86) CPU=i686 ;;
1214fdf6a26fSmrg		x32) LIBCABI=${LIBC}x32 ;;
1215fdf6a26fSmrg	    esac
12160568f49bSmrg	fi
1217fdf6a26fSmrg	GUESS=$CPU-pc-linux-$LIBCABI
1218fdf6a26fSmrg	;;
12192265a131Smrg    xtensa*:Linux:*:*)
1220fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
1221fdf6a26fSmrg	;;
1222444c061aSmrg    i*86:DYNIX/ptx:4*:*)
1223444c061aSmrg	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
1224444c061aSmrg	# earlier versions are messed up and put the nodename in both
1225444c061aSmrg	# sysname and nodename.
1226fdf6a26fSmrg	GUESS=i386-sequent-sysv4
1227fdf6a26fSmrg	;;
1228444c061aSmrg    i*86:UNIX_SV:4.2MP:2.*)
12299e7bcd65Smrg	# Unixware is an offshoot of SVR4, but it has its own version
12309e7bcd65Smrg	# number series starting with 2...
12319e7bcd65Smrg	# I am not positive that other SVR4 systems won't match this,
1232444c061aSmrg	# I just have to hope.  -- rms.
12339e7bcd65Smrg	# Use sysv4.2uw... so that sysv4* matches it.
1234fdf6a26fSmrg	GUESS=$UNAME_MACHINE-pc-sysv4.2uw$UNAME_VERSION
1235fdf6a26fSmrg	;;
1236444c061aSmrg    i*86:OS/2:*:*)
123735525df4Smrg	# If we were able to find 'uname', then EMX Unix compatibility
1238444c061aSmrg	# is probably installed.
1239fdf6a26fSmrg	GUESS=$UNAME_MACHINE-pc-os2-emx
1240fdf6a26fSmrg	;;
1241444c061aSmrg    i*86:XTS-300:*:STOP)
1242fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-stop
1243fdf6a26fSmrg	;;
1244444c061aSmrg    i*86:atheos:*:*)
1245fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-atheos
1246fdf6a26fSmrg	;;
1247444c061aSmrg    i*86:syllable:*:*)
1248fdf6a26fSmrg	GUESS=$UNAME_MACHINE-pc-syllable
1249fdf6a26fSmrg	;;
12501477040fSmrg    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
1251fdf6a26fSmrg	GUESS=i386-unknown-lynxos$UNAME_RELEASE
1252fdf6a26fSmrg	;;
1253444c061aSmrg    i*86:*DOS:*:*)
1254fdf6a26fSmrg	GUESS=$UNAME_MACHINE-pc-msdosdjgpp
1255fdf6a26fSmrg	;;
12560568f49bSmrg    i*86:*:4.*:*)
12570568f49bSmrg	UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'`
1258444c061aSmrg	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1259fdf6a26fSmrg		GUESS=$UNAME_MACHINE-univel-sysv$UNAME_REL
1260444c061aSmrg	else
1261fdf6a26fSmrg		GUESS=$UNAME_MACHINE-pc-sysv$UNAME_REL
1262444c061aSmrg	fi
1263fdf6a26fSmrg	;;
1264444c061aSmrg    i*86:*:5:[678]*)
12659e7bcd65Smrg	# UnixWare 7.x, OpenUNIX and OpenServer 6.
1266444c061aSmrg	case `/bin/uname -X | grep "^Machine"` in
1267444c061aSmrg	    *486*)	     UNAME_MACHINE=i486 ;;
1268444c061aSmrg	    *Pentium)	     UNAME_MACHINE=i586 ;;
1269444c061aSmrg	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1270444c061aSmrg	esac
1271fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
1272fdf6a26fSmrg	;;
1273444c061aSmrg    i*86:*:3.2:*)
1274444c061aSmrg	if test -f /usr/options/cb.name; then
1275444c061aSmrg		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1276fdf6a26fSmrg		GUESS=$UNAME_MACHINE-pc-isc$UNAME_REL
1277444c061aSmrg	elif /bin/uname -X 2>/dev/null >/dev/null ; then
1278444c061aSmrg		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1279444c061aSmrg		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1280444c061aSmrg		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1281444c061aSmrg			&& UNAME_MACHINE=i586
1282444c061aSmrg		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1283444c061aSmrg			&& UNAME_MACHINE=i686
1284444c061aSmrg		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1285444c061aSmrg			&& UNAME_MACHINE=i686
1286fdf6a26fSmrg		GUESS=$UNAME_MACHINE-pc-sco$UNAME_REL
1287444c061aSmrg	else
1288fdf6a26fSmrg		GUESS=$UNAME_MACHINE-pc-sysv32
1289444c061aSmrg	fi
1290fdf6a26fSmrg	;;
1291444c061aSmrg    pc:*:*:*)
1292444c061aSmrg	# Left here for compatibility:
12939e7bcd65Smrg	# uname -m prints for DJGPP always 'pc', but it prints nothing about
12949e7bcd65Smrg	# the processor, so we play safe by assuming i586.
12951477040fSmrg	# Note: whatever this is, it MUST be the same as what config.sub
12960568f49bSmrg	# prints for the "djgpp" host, or else GDB configure will decide that
12971477040fSmrg	# this is a cross-build.
1298fdf6a26fSmrg	GUESS=i586-pc-msdosdjgpp
1299fdf6a26fSmrg	;;
1300444c061aSmrg    Intel:Mach:3*:*)
1301fdf6a26fSmrg	GUESS=i386-pc-mach3
1302fdf6a26fSmrg	;;
1303444c061aSmrg    paragon:*:*:*)
1304fdf6a26fSmrg	GUESS=i860-intel-osf1
1305fdf6a26fSmrg	;;
1306444c061aSmrg    i860:*:4.*:*) # i860-SVR4
1307444c061aSmrg	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1308fdf6a26fSmrg	  GUESS=i860-stardent-sysv$UNAME_RELEASE    # Stardent Vistra i860-SVR4
1309444c061aSmrg	else # Add other i860-SVR4 vendors below as they are discovered.
1310fdf6a26fSmrg	  GUESS=i860-unknown-sysv$UNAME_RELEASE     # Unknown i860-SVR4
1311444c061aSmrg	fi
1312fdf6a26fSmrg	;;
1313444c061aSmrg    mini*:CTIX:SYS*5:*)
1314444c061aSmrg	# "miniframe"
1315fdf6a26fSmrg	GUESS=m68010-convergent-sysv
1316fdf6a26fSmrg	;;
1317444c061aSmrg    mc68k:UNIX:SYSTEM5:3.51m)
1318fdf6a26fSmrg	GUESS=m68k-convergent-sysv
1319fdf6a26fSmrg	;;
1320444c061aSmrg    M680?0:D-NIX:5.3:*)
1321fdf6a26fSmrg	GUESS=m68k-diab-dnix
1322fdf6a26fSmrg	;;
1323444c061aSmrg    M68*:*:R3V[5678]*:*)
1324444c061aSmrg	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
1325444c061aSmrg    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)
1326444c061aSmrg	OS_REL=''
1327444c061aSmrg	test -r /etc/.relid \
1328444c061aSmrg	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1329444c061aSmrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
13300568f49bSmrg	  && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
1331444c061aSmrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
13320568f49bSmrg	  && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
1333444c061aSmrg    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
13349e7bcd65Smrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
13359e7bcd65Smrg	  && { echo i486-ncr-sysv4; exit; } ;;
13361477040fSmrg    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
13371477040fSmrg	OS_REL='.3'
13381477040fSmrg	test -r /etc/.relid \
13391477040fSmrg	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
13401477040fSmrg	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
13410568f49bSmrg	    && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
13421477040fSmrg	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
13430568f49bSmrg	    && { echo i586-ncr-sysv4.3"$OS_REL"; exit; }
13441477040fSmrg	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
13450568f49bSmrg	    && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
1346444c061aSmrg    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1347fdf6a26fSmrg	GUESS=m68k-unknown-lynxos$UNAME_RELEASE
1348fdf6a26fSmrg	;;
1349444c061aSmrg    mc68030:UNIX_System_V:4.*:*)
1350fdf6a26fSmrg	GUESS=m68k-atari-sysv4
1351fdf6a26fSmrg	;;
1352444c061aSmrg    TSUNAMI:LynxOS:2.*:*)
1353fdf6a26fSmrg	GUESS=sparc-unknown-lynxos$UNAME_RELEASE
1354fdf6a26fSmrg	;;
1355444c061aSmrg    rs6000:LynxOS:2.*:*)
1356fdf6a26fSmrg	GUESS=rs6000-unknown-lynxos$UNAME_RELEASE
1357fdf6a26fSmrg	;;
13581477040fSmrg    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
1359fdf6a26fSmrg	GUESS=powerpc-unknown-lynxos$UNAME_RELEASE
1360fdf6a26fSmrg	;;
1361444c061aSmrg    SM[BE]S:UNIX_SV:*:*)
1362fdf6a26fSmrg	GUESS=mips-dde-sysv$UNAME_RELEASE
1363fdf6a26fSmrg	;;
1364444c061aSmrg    RM*:ReliantUNIX-*:*:*)
1365fdf6a26fSmrg	GUESS=mips-sni-sysv4
1366fdf6a26fSmrg	;;
1367444c061aSmrg    RM*:SINIX-*:*:*)
1368fdf6a26fSmrg	GUESS=mips-sni-sysv4
1369fdf6a26fSmrg	;;
1370444c061aSmrg    *:SINIX-*:*:*)
1371444c061aSmrg	if uname -p 2>/dev/null >/dev/null ; then
1372444c061aSmrg		UNAME_MACHINE=`(uname -p) 2>/dev/null`
1373fdf6a26fSmrg		GUESS=$UNAME_MACHINE-sni-sysv4
1374444c061aSmrg	else
1375fdf6a26fSmrg		GUESS=ns32k-sni-sysv
1376444c061aSmrg	fi
1377fdf6a26fSmrg	;;
137835525df4Smrg    PENTIUM:*:4.0*:*)	# Unisys 'ClearPath HMP IX 4000' SVR4/MP effort
13799e7bcd65Smrg			# says <Richard.M.Bartel@ccMail.Census.GOV>
1380fdf6a26fSmrg	GUESS=i586-unisys-sysv4
1381fdf6a26fSmrg	;;
1382444c061aSmrg    *:UNIX_System_V:4*:FTX*)
1383444c061aSmrg	# From Gerald Hewes <hewes@openmarket.com>.
1384444c061aSmrg	# How about differentiating between stratus architectures? -djm
1385fdf6a26fSmrg	GUESS=hppa1.1-stratus-sysv4
1386fdf6a26fSmrg	;;
1387444c061aSmrg    *:*:*:FTX*)
1388444c061aSmrg	# From seanf@swdc.stratus.com.
1389fdf6a26fSmrg	GUESS=i860-stratus-sysv4
1390fdf6a26fSmrg	;;
1391444c061aSmrg    i*86:VOS:*:*)
1392444c061aSmrg	# From Paul.Green@stratus.com.
1393fdf6a26fSmrg	GUESS=$UNAME_MACHINE-stratus-vos
1394fdf6a26fSmrg	;;
1395444c061aSmrg    *:VOS:*:*)
1396444c061aSmrg	# From Paul.Green@stratus.com.
1397fdf6a26fSmrg	GUESS=hppa1.1-stratus-vos
1398fdf6a26fSmrg	;;
1399444c061aSmrg    mc68*:A/UX:*:*)
1400fdf6a26fSmrg	GUESS=m68k-apple-aux$UNAME_RELEASE
1401fdf6a26fSmrg	;;
1402444c061aSmrg    news*:NEWS-OS:6*:*)
1403fdf6a26fSmrg	GUESS=mips-sony-newsos6
1404fdf6a26fSmrg	;;
1405444c061aSmrg    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1406fdf6a26fSmrg	if test -d /usr/nec; then
1407fdf6a26fSmrg		GUESS=mips-nec-sysv$UNAME_RELEASE
1408444c061aSmrg	else
1409fdf6a26fSmrg		GUESS=mips-unknown-sysv$UNAME_RELEASE
1410444c061aSmrg	fi
1411fdf6a26fSmrg	;;
1412444c061aSmrg    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
1413fdf6a26fSmrg	GUESS=powerpc-be-beos
1414fdf6a26fSmrg	;;
1415444c061aSmrg    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
1416fdf6a26fSmrg	GUESS=powerpc-apple-beos
1417fdf6a26fSmrg	;;
1418444c061aSmrg    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
1419fdf6a26fSmrg	GUESS=i586-pc-beos
1420fdf6a26fSmrg	;;
14211477040fSmrg    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
1422fdf6a26fSmrg	GUESS=i586-pc-haiku
1423fdf6a26fSmrg	;;
1424fdf6a26fSmrg    ppc:Haiku:*:*)	# Haiku running on Apple PowerPC
1425fdf6a26fSmrg	GUESS=powerpc-apple-haiku
1426fdf6a26fSmrg	;;
1427fdf6a26fSmrg    *:Haiku:*:*)	# Haiku modern gcc (not bound by BeOS compat)
1428fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-haiku
1429fdf6a26fSmrg	;;
1430444c061aSmrg    SX-4:SUPER-UX:*:*)
1431fdf6a26fSmrg	GUESS=sx4-nec-superux$UNAME_RELEASE
1432fdf6a26fSmrg	;;
1433444c061aSmrg    SX-5:SUPER-UX:*:*)
1434fdf6a26fSmrg	GUESS=sx5-nec-superux$UNAME_RELEASE
1435fdf6a26fSmrg	;;
1436444c061aSmrg    SX-6:SUPER-UX:*:*)
1437fdf6a26fSmrg	GUESS=sx6-nec-superux$UNAME_RELEASE
1438fdf6a26fSmrg	;;
14392265a131Smrg    SX-7:SUPER-UX:*:*)
1440fdf6a26fSmrg	GUESS=sx7-nec-superux$UNAME_RELEASE
1441fdf6a26fSmrg	;;
14422265a131Smrg    SX-8:SUPER-UX:*:*)
1443fdf6a26fSmrg	GUESS=sx8-nec-superux$UNAME_RELEASE
1444fdf6a26fSmrg	;;
14452265a131Smrg    SX-8R:SUPER-UX:*:*)
1446fdf6a26fSmrg	GUESS=sx8r-nec-superux$UNAME_RELEASE
1447fdf6a26fSmrg	;;
14480568f49bSmrg    SX-ACE:SUPER-UX:*:*)
1449fdf6a26fSmrg	GUESS=sxace-nec-superux$UNAME_RELEASE
1450fdf6a26fSmrg	;;
1451444c061aSmrg    Power*:Rhapsody:*:*)
1452fdf6a26fSmrg	GUESS=powerpc-apple-rhapsody$UNAME_RELEASE
1453fdf6a26fSmrg	;;
1454444c061aSmrg    *:Rhapsody:*:*)
1455fdf6a26fSmrg	GUESS=$UNAME_MACHINE-apple-rhapsody$UNAME_RELEASE
1456fdf6a26fSmrg	;;
1457fdf6a26fSmrg    arm64:Darwin:*:*)
1458fdf6a26fSmrg	GUESS=aarch64-apple-darwin$UNAME_RELEASE
1459fdf6a26fSmrg	;;
1460444c061aSmrg    *:Darwin:*:*)
1461a3bd7f05Smrg	UNAME_PROCESSOR=`uname -p`
1462a3bd7f05Smrg	case $UNAME_PROCESSOR in
1463a3bd7f05Smrg	    unknown) UNAME_PROCESSOR=powerpc ;;
1464a3bd7f05Smrg	esac
1465a3bd7f05Smrg	if command -v xcode-select > /dev/null 2> /dev/null && \
1466a3bd7f05Smrg		! xcode-select --print-path > /dev/null 2> /dev/null ; then
1467a3bd7f05Smrg	    # Avoid executing cc if there is no toolchain installed as
1468a3bd7f05Smrg	    # cc will be a stub that puts up a graphical alert
1469a3bd7f05Smrg	    # prompting the user to install developer tools.
1470a3bd7f05Smrg	    CC_FOR_BUILD=no_compiler_found
1471a3bd7f05Smrg	else
1472a3bd7f05Smrg	    set_cc_for_build
1473339a7c43Smrg	fi
1474fdf6a26fSmrg	if test "$CC_FOR_BUILD" != no_compiler_found; then
1475a3bd7f05Smrg	    if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
1476a3bd7f05Smrg		   (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
1477a3bd7f05Smrg		   grep IS_64BIT_ARCH >/dev/null
1478a3bd7f05Smrg	    then
1479a3bd7f05Smrg		case $UNAME_PROCESSOR in
1480a3bd7f05Smrg		    i386) UNAME_PROCESSOR=x86_64 ;;
1481a3bd7f05Smrg		    powerpc) UNAME_PROCESSOR=powerpc64 ;;
1482a3bd7f05Smrg		esac
1483a3bd7f05Smrg	    fi
1484a3bd7f05Smrg	    # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc
1485a3bd7f05Smrg	    if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \
1486a3bd7f05Smrg		   (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
1487a3bd7f05Smrg		   grep IS_PPC >/dev/null
1488a3bd7f05Smrg	    then
1489a3bd7f05Smrg		UNAME_PROCESSOR=powerpc
1490339a7c43Smrg	    fi
1491339a7c43Smrg	elif test "$UNAME_PROCESSOR" = i386 ; then
1492a3bd7f05Smrg	    # uname -m returns i386 or x86_64
1493a3bd7f05Smrg	    UNAME_PROCESSOR=$UNAME_MACHINE
1494339a7c43Smrg	fi
1495fdf6a26fSmrg	GUESS=$UNAME_PROCESSOR-apple-darwin$UNAME_RELEASE
1496fdf6a26fSmrg	;;
1497444c061aSmrg    *:procnto*:*:* | *:QNX:[0123456789]*:*)
1498444c061aSmrg	UNAME_PROCESSOR=`uname -p`
14990568f49bSmrg	if test "$UNAME_PROCESSOR" = x86; then
1500444c061aSmrg		UNAME_PROCESSOR=i386
1501444c061aSmrg		UNAME_MACHINE=pc
1502444c061aSmrg	fi
1503fdf6a26fSmrg	GUESS=$UNAME_PROCESSOR-$UNAME_MACHINE-nto-qnx$UNAME_RELEASE
1504fdf6a26fSmrg	;;
1505444c061aSmrg    *:QNX:*:4*)
1506fdf6a26fSmrg	GUESS=i386-pc-qnx
1507fdf6a26fSmrg	;;
15080568f49bSmrg    NEO-*:NONSTOP_KERNEL:*:*)
1509fdf6a26fSmrg	GUESS=neo-tandem-nsk$UNAME_RELEASE
1510fdf6a26fSmrg	;;
15119e7bcd65Smrg    NSE-*:NONSTOP_KERNEL:*:*)
1512fdf6a26fSmrg	GUESS=nse-tandem-nsk$UNAME_RELEASE
1513fdf6a26fSmrg	;;
15140568f49bSmrg    NSR-*:NONSTOP_KERNEL:*:*)
1515fdf6a26fSmrg	GUESS=nsr-tandem-nsk$UNAME_RELEASE
1516fdf6a26fSmrg	;;
15170568f49bSmrg    NSV-*:NONSTOP_KERNEL:*:*)
1518fdf6a26fSmrg	GUESS=nsv-tandem-nsk$UNAME_RELEASE
1519fdf6a26fSmrg	;;
15200568f49bSmrg    NSX-*:NONSTOP_KERNEL:*:*)
1521fdf6a26fSmrg	GUESS=nsx-tandem-nsk$UNAME_RELEASE
1522fdf6a26fSmrg	;;
1523444c061aSmrg    *:NonStop-UX:*:*)
1524fdf6a26fSmrg	GUESS=mips-compaq-nonstopux
1525fdf6a26fSmrg	;;
1526444c061aSmrg    BS2000:POSIX*:*:*)
1527fdf6a26fSmrg	GUESS=bs2000-siemens-sysv
1528fdf6a26fSmrg	;;
1529444c061aSmrg    DS/*:UNIX_System_V:*:*)
1530fdf6a26fSmrg	GUESS=$UNAME_MACHINE-$UNAME_SYSTEM-$UNAME_RELEASE
1531fdf6a26fSmrg	;;
1532444c061aSmrg    *:Plan9:*:*)
1533444c061aSmrg	# "uname -m" is not consistent, so use $cputype instead. 386
1534444c061aSmrg	# is converted to i386 for consistency with other x86
1535444c061aSmrg	# operating systems.
1536fdf6a26fSmrg	if test "${cputype-}" = 386; then
1537444c061aSmrg	    UNAME_MACHINE=i386
1538fdf6a26fSmrg	elif test "x${cputype-}" != x; then
1539fdf6a26fSmrg	    UNAME_MACHINE=$cputype
1540444c061aSmrg	fi
1541fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-plan9
1542fdf6a26fSmrg	;;
1543444c061aSmrg    *:TOPS-10:*:*)
1544fdf6a26fSmrg	GUESS=pdp10-unknown-tops10
1545fdf6a26fSmrg	;;
1546444c061aSmrg    *:TENEX:*:*)
1547fdf6a26fSmrg	GUESS=pdp10-unknown-tenex
1548fdf6a26fSmrg	;;
1549444c061aSmrg    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1550fdf6a26fSmrg	GUESS=pdp10-dec-tops20
1551fdf6a26fSmrg	;;
1552444c061aSmrg    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1553fdf6a26fSmrg	GUESS=pdp10-xkl-tops20
1554fdf6a26fSmrg	;;
1555444c061aSmrg    *:TOPS-20:*:*)
1556fdf6a26fSmrg	GUESS=pdp10-unknown-tops20
1557fdf6a26fSmrg	;;
1558444c061aSmrg    *:ITS:*:*)
1559fdf6a26fSmrg	GUESS=pdp10-unknown-its
1560fdf6a26fSmrg	;;
1561444c061aSmrg    SEI:*:*:SEIUX)
1562fdf6a26fSmrg	GUESS=mips-sei-seiux$UNAME_RELEASE
1563fdf6a26fSmrg	;;
1564444c061aSmrg    *:DragonFly:*:*)
1565fdf6a26fSmrg	DRAGONFLY_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
1566fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-dragonfly$DRAGONFLY_REL
1567fdf6a26fSmrg	;;
1568444c061aSmrg    *:*VMS:*:*)
15699e7bcd65Smrg	UNAME_MACHINE=`(uname -p) 2>/dev/null`
1570fdf6a26fSmrg	case $UNAME_MACHINE in
1571fdf6a26fSmrg	    A*) GUESS=alpha-dec-vms ;;
1572fdf6a26fSmrg	    I*) GUESS=ia64-dec-vms ;;
1573fdf6a26fSmrg	    V*) GUESS=vax-dec-vms ;;
1574444c061aSmrg	esac ;;
1575444c061aSmrg    *:XENIX:*:SysV)
1576fdf6a26fSmrg	GUESS=i386-pc-xenix
1577fdf6a26fSmrg	;;
1578444c061aSmrg    i*86:skyos:*:*)
1579fdf6a26fSmrg	SKYOS_REL=`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`
1580fdf6a26fSmrg	GUESS=$UNAME_MACHINE-pc-skyos$SKYOS_REL
1581fdf6a26fSmrg	;;
1582444c061aSmrg    i*86:rdos:*:*)
1583fdf6a26fSmrg	GUESS=$UNAME_MACHINE-pc-rdos
1584fdf6a26fSmrg	;;
1585fdf6a26fSmrg    i*86:Fiwix:*:*)
1586fdf6a26fSmrg	GUESS=$UNAME_MACHINE-pc-fiwix
1587fdf6a26fSmrg	;;
1588fdf6a26fSmrg    *:AROS:*:*)
1589fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-aros
1590fdf6a26fSmrg	;;
15919e7bcd65Smrg    x86_64:VMkernel:*:*)
1592fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-esx
1593fdf6a26fSmrg	;;
15940568f49bSmrg    amd64:Isilon\ OneFS:*:*)
1595fdf6a26fSmrg	GUESS=x86_64-unknown-onefs
1596fdf6a26fSmrg	;;
1597a3bd7f05Smrg    *:Unleashed:*:*)
1598fdf6a26fSmrg	GUESS=$UNAME_MACHINE-unknown-unleashed$UNAME_RELEASE
1599fdf6a26fSmrg	;;
160035525df4Smrg    *:Ironclad:*:*)
160135525df4Smrg	GUESS=$UNAME_MACHINE-unknown-ironclad
160235525df4Smrg	;;
1603444c061aSmrgesac
1604444c061aSmrg
1605fdf6a26fSmrg# Do we have a guess based on uname results?
1606fdf6a26fSmrgif test "x$GUESS" != x; then
1607fdf6a26fSmrg    echo "$GUESS"
1608fdf6a26fSmrg    exit
1609fdf6a26fSmrgfi
1610fdf6a26fSmrg
1611a3bd7f05Smrg# No uname command or uname output not recognized.
1612a3bd7f05Smrgset_cc_for_build
1613a3bd7f05Smrgcat > "$dummy.c" <<EOF
1614a3bd7f05Smrg#ifdef _SEQUENT_
1615a3bd7f05Smrg#include <sys/types.h>
1616a3bd7f05Smrg#include <sys/utsname.h>
1617a3bd7f05Smrg#endif
1618a3bd7f05Smrg#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__)
1619a3bd7f05Smrg#if defined (vax) || defined (__vax) || defined (__vax__) || defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__)
1620a3bd7f05Smrg#include <signal.h>
1621a3bd7f05Smrg#if defined(_SIZE_T_) || defined(SIGLOST)
1622a3bd7f05Smrg#include <sys/utsname.h>
1623a3bd7f05Smrg#endif
1624a3bd7f05Smrg#endif
1625a3bd7f05Smrg#endif
162635525df4Smrgint
1627a3bd7f05Smrgmain ()
1628a3bd7f05Smrg{
1629a3bd7f05Smrg#if defined (sony)
1630a3bd7f05Smrg#if defined (MIPSEB)
1631a3bd7f05Smrg  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
1632a3bd7f05Smrg     I don't know....  */
1633a3bd7f05Smrg  printf ("mips-sony-bsd\n"); exit (0);
1634a3bd7f05Smrg#else
1635a3bd7f05Smrg#include <sys/param.h>
1636a3bd7f05Smrg  printf ("m68k-sony-newsos%s\n",
1637a3bd7f05Smrg#ifdef NEWSOS4
1638a3bd7f05Smrg  "4"
1639a3bd7f05Smrg#else
1640a3bd7f05Smrg  ""
1641a3bd7f05Smrg#endif
1642a3bd7f05Smrg  ); exit (0);
1643a3bd7f05Smrg#endif
1644a3bd7f05Smrg#endif
1645a3bd7f05Smrg
1646a3bd7f05Smrg#if defined (NeXT)
1647a3bd7f05Smrg#if !defined (__ARCHITECTURE__)
1648a3bd7f05Smrg#define __ARCHITECTURE__ "m68k"
1649a3bd7f05Smrg#endif
1650a3bd7f05Smrg  int version;
1651a3bd7f05Smrg  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
1652a3bd7f05Smrg  if (version < 4)
1653a3bd7f05Smrg    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
1654a3bd7f05Smrg  else
1655a3bd7f05Smrg    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
1656a3bd7f05Smrg  exit (0);
1657a3bd7f05Smrg#endif
1658a3bd7f05Smrg
1659a3bd7f05Smrg#if defined (MULTIMAX) || defined (n16)
1660a3bd7f05Smrg#if defined (UMAXV)
1661a3bd7f05Smrg  printf ("ns32k-encore-sysv\n"); exit (0);
1662a3bd7f05Smrg#else
1663a3bd7f05Smrg#if defined (CMU)
1664a3bd7f05Smrg  printf ("ns32k-encore-mach\n"); exit (0);
1665a3bd7f05Smrg#else
1666a3bd7f05Smrg  printf ("ns32k-encore-bsd\n"); exit (0);
1667a3bd7f05Smrg#endif
1668a3bd7f05Smrg#endif
1669a3bd7f05Smrg#endif
1670a3bd7f05Smrg
1671a3bd7f05Smrg#if defined (__386BSD__)
1672a3bd7f05Smrg  printf ("i386-pc-bsd\n"); exit (0);
1673a3bd7f05Smrg#endif
1674a3bd7f05Smrg
1675a3bd7f05Smrg#if defined (sequent)
1676a3bd7f05Smrg#if defined (i386)
1677a3bd7f05Smrg  printf ("i386-sequent-dynix\n"); exit (0);
1678a3bd7f05Smrg#endif
1679a3bd7f05Smrg#if defined (ns32000)
1680a3bd7f05Smrg  printf ("ns32k-sequent-dynix\n"); exit (0);
1681a3bd7f05Smrg#endif
1682a3bd7f05Smrg#endif
1683a3bd7f05Smrg
1684a3bd7f05Smrg#if defined (_SEQUENT_)
1685a3bd7f05Smrg  struct utsname un;
1686a3bd7f05Smrg
1687a3bd7f05Smrg  uname(&un);
1688a3bd7f05Smrg  if (strncmp(un.version, "V2", 2) == 0) {
1689a3bd7f05Smrg    printf ("i386-sequent-ptx2\n"); exit (0);
1690a3bd7f05Smrg  }
1691a3bd7f05Smrg  if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
1692a3bd7f05Smrg    printf ("i386-sequent-ptx1\n"); exit (0);
1693a3bd7f05Smrg  }
1694a3bd7f05Smrg  printf ("i386-sequent-ptx\n"); exit (0);
1695a3bd7f05Smrg#endif
1696a3bd7f05Smrg
1697a3bd7f05Smrg#if defined (vax)
1698a3bd7f05Smrg#if !defined (ultrix)
1699a3bd7f05Smrg#include <sys/param.h>
1700a3bd7f05Smrg#if defined (BSD)
1701a3bd7f05Smrg#if BSD == 43
1702a3bd7f05Smrg  printf ("vax-dec-bsd4.3\n"); exit (0);
1703a3bd7f05Smrg#else
1704a3bd7f05Smrg#if BSD == 199006
1705a3bd7f05Smrg  printf ("vax-dec-bsd4.3reno\n"); exit (0);
1706a3bd7f05Smrg#else
1707a3bd7f05Smrg  printf ("vax-dec-bsd\n"); exit (0);
1708a3bd7f05Smrg#endif
1709a3bd7f05Smrg#endif
1710a3bd7f05Smrg#else
1711a3bd7f05Smrg  printf ("vax-dec-bsd\n"); exit (0);
1712a3bd7f05Smrg#endif
1713a3bd7f05Smrg#else
1714a3bd7f05Smrg#if defined(_SIZE_T_) || defined(SIGLOST)
1715a3bd7f05Smrg  struct utsname un;
1716a3bd7f05Smrg  uname (&un);
1717a3bd7f05Smrg  printf ("vax-dec-ultrix%s\n", un.release); exit (0);
1718a3bd7f05Smrg#else
1719a3bd7f05Smrg  printf ("vax-dec-ultrix\n"); exit (0);
1720a3bd7f05Smrg#endif
1721a3bd7f05Smrg#endif
1722a3bd7f05Smrg#endif
1723a3bd7f05Smrg#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__)
1724a3bd7f05Smrg#if defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__)
1725a3bd7f05Smrg#if defined(_SIZE_T_) || defined(SIGLOST)
1726a3bd7f05Smrg  struct utsname *un;
1727a3bd7f05Smrg  uname (&un);
1728a3bd7f05Smrg  printf ("mips-dec-ultrix%s\n", un.release); exit (0);
1729a3bd7f05Smrg#else
1730a3bd7f05Smrg  printf ("mips-dec-ultrix\n"); exit (0);
1731a3bd7f05Smrg#endif
1732a3bd7f05Smrg#endif
1733a3bd7f05Smrg#endif
1734a3bd7f05Smrg
1735a3bd7f05Smrg#if defined (alliant) && defined (i860)
1736a3bd7f05Smrg  printf ("i860-alliant-bsd\n"); exit (0);
1737a3bd7f05Smrg#endif
1738a3bd7f05Smrg
1739a3bd7f05Smrg  exit (1);
1740a3bd7f05Smrg}
1741a3bd7f05SmrgEOF
1742a3bd7f05Smrg
1743fdf6a26fSmrg$CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=`"$dummy"` &&
1744a3bd7f05Smrg	{ echo "$SYSTEM_NAME"; exit; }
1745a3bd7f05Smrg
1746a3bd7f05Smrg# Apollos put the system type in the environment.
1747a3bd7f05Smrgtest -d /usr/apollo && { echo "$ISP-apollo-$SYSTYPE"; exit; }
1748a3bd7f05Smrg
17490568f49bSmrgecho "$0: unable to guess system type" >&2
17500568f49bSmrg
1751fdf6a26fSmrgcase $UNAME_MACHINE:$UNAME_SYSTEM in
17520568f49bSmrg    mips:Linux | mips64:Linux)
17530568f49bSmrg	# If we got here on MIPS GNU/Linux, output extra information.
17540568f49bSmrg	cat >&2 <<EOF
17550568f49bSmrg
17560568f49bSmrgNOTE: MIPS GNU/Linux systems require a C compiler to fully recognize
17570568f49bSmrgthe system type. Please install a C compiler and try again.
17580568f49bSmrgEOF
17590568f49bSmrg	;;
17600568f49bSmrgesac
17610568f49bSmrg
1762444c061aSmrgcat >&2 <<EOF
1763444c061aSmrg
17640568f49bSmrgThis script (version $timestamp), has failed to recognize the
17650568f49bSmrgoperating system you are using. If your script is old, overwrite *all*
17660568f49bSmrgcopies of config.guess and config.sub with the latest versions from:
1767444c061aSmrg
1768fdf6a26fSmrg  https://git.savannah.gnu.org/cgit/config.git/plain/config.guess
1769444c061aSmrgand
1770fdf6a26fSmrg  https://git.savannah.gnu.org/cgit/config.git/plain/config.sub
1771a3bd7f05SmrgEOF
1772a3bd7f05Smrg
1773fdf6a26fSmrgour_year=`echo $timestamp | sed 's,-.*,,'`
1774fdf6a26fSmrgthisyear=`date +%Y`
1775a3bd7f05Smrg# shellcheck disable=SC2003
1776fdf6a26fSmrgscript_age=`expr "$thisyear" - "$our_year"`
1777fdf6a26fSmrgif test "$script_age" -lt 3 ; then
1778a3bd7f05Smrg   cat >&2 <<EOF
1779444c061aSmrg
17800568f49bSmrgIf $0 has already been updated, send the following data and any
17810568f49bSmrginformation you think might be pertinent to config-patches@gnu.org to
17820568f49bSmrgprovide the necessary information to handle your system.
1783444c061aSmrg
1784444c061aSmrgconfig.guess timestamp = $timestamp
1785444c061aSmrg
1786444c061aSmrguname -m = `(uname -m) 2>/dev/null || echo unknown`
1787444c061aSmrguname -r = `(uname -r) 2>/dev/null || echo unknown`
1788444c061aSmrguname -s = `(uname -s) 2>/dev/null || echo unknown`
1789444c061aSmrguname -v = `(uname -v) 2>/dev/null || echo unknown`
1790444c061aSmrg
1791444c061aSmrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1792444c061aSmrg/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
1793444c061aSmrg
1794444c061aSmrghostinfo               = `(hostinfo) 2>/dev/null`
1795444c061aSmrg/bin/universe          = `(/bin/universe) 2>/dev/null`
1796444c061aSmrg/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
1797444c061aSmrg/bin/arch              = `(/bin/arch) 2>/dev/null`
1798444c061aSmrg/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
1799444c061aSmrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1800444c061aSmrg
18010568f49bSmrgUNAME_MACHINE = "$UNAME_MACHINE"
18020568f49bSmrgUNAME_RELEASE = "$UNAME_RELEASE"
18030568f49bSmrgUNAME_SYSTEM  = "$UNAME_SYSTEM"
18040568f49bSmrgUNAME_VERSION = "$UNAME_VERSION"
1805444c061aSmrgEOF
1806a3bd7f05Smrgfi
1807444c061aSmrg
1808444c061aSmrgexit 1
1809444c061aSmrg
1810444c061aSmrg# Local variables:
1811a3bd7f05Smrg# eval: (add-hook 'before-save-hook 'time-stamp)
1812444c061aSmrg# time-stamp-start: "timestamp='"
1813444c061aSmrg# time-stamp-format: "%:y-%02m-%02d"
1814444c061aSmrg# time-stamp-end: "'"
1815444c061aSmrg# End:
1816