xref: /potrace-1.14/config.guess (revision b3fce824)
1189777a2SCristian Pallares#! /bin/sh
2189777a2SCristian Pallares# Attempt to guess a canonical system name.
3*b3fce824SCristian Pallarés#   Copyright 1992-2016 Free Software Foundation, Inc.
4189777a2SCristian Pallares
5*b3fce824SCristian Pallaréstimestamp='2016-04-02'
6189777a2SCristian Pallares
7189777a2SCristian Pallares# This file is free software; you can redistribute it and/or modify it
8189777a2SCristian Pallares# under the terms of the GNU General Public License as published by
91f13f311SSkyrpex# the Free Software Foundation; either version 3 of the License, or
10189777a2SCristian Pallares# (at your option) any later version.
11189777a2SCristian Pallares#
12189777a2SCristian Pallares# This program is distributed in the hope that it will be useful, but
13189777a2SCristian Pallares# WITHOUT ANY WARRANTY; without even the implied warranty of
14189777a2SCristian Pallares# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15189777a2SCristian Pallares# General Public License for more details.
16189777a2SCristian Pallares#
17189777a2SCristian Pallares# You should have received a copy of the GNU General Public License
181f13f311SSkyrpex# along with this program; if not, see <http://www.gnu.org/licenses/>.
19189777a2SCristian Pallares#
20189777a2SCristian Pallares# As a special exception to the GNU General Public License, if you
21189777a2SCristian Pallares# distribute this file as part of a program that contains a
22189777a2SCristian Pallares# configuration script generated by Autoconf, you may include it under
231f13f311SSkyrpex# the same distribution terms that you use for the rest of that
241f13f311SSkyrpex# program.  This Exception is an additional permission under section 7
251f13f311SSkyrpex# of the GNU General Public License, version 3 ("GPLv3").
26189777a2SCristian Pallares#
27*b3fce824SCristian Pallarés# Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
28189777a2SCristian Pallares#
291f13f311SSkyrpex# You can get the latest version of this script from:
30*b3fce824SCristian Pallarés# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
311f13f311SSkyrpex#
32*b3fce824SCristian Pallarés# Please send patches to <[email protected]>.
331f13f311SSkyrpex
34189777a2SCristian Pallares
35189777a2SCristian Pallaresme=`echo "$0" | sed -e 's,.*/,,'`
36189777a2SCristian Pallares
37189777a2SCristian Pallaresusage="\
38189777a2SCristian PallaresUsage: $0 [OPTION]
39189777a2SCristian Pallares
40189777a2SCristian PallaresOutput the configuration name of the system \`$me' is run on.
41189777a2SCristian Pallares
42189777a2SCristian PallaresOperation modes:
43189777a2SCristian Pallares  -h, --help         print this help, then exit
44189777a2SCristian Pallares  -t, --time-stamp   print date of last modification, then exit
45189777a2SCristian Pallares  -v, --version      print version number, then exit
46189777a2SCristian Pallares
47189777a2SCristian PallaresReport bugs and patches to <[email protected]>."
48189777a2SCristian Pallares
49189777a2SCristian Pallaresversion="\
50189777a2SCristian PallaresGNU config.guess ($timestamp)
51189777a2SCristian Pallares
52189777a2SCristian PallaresOriginally written by Per Bothner.
53*b3fce824SCristian PallarésCopyright 1992-2016 Free Software Foundation, Inc.
54189777a2SCristian Pallares
55189777a2SCristian PallaresThis is free software; see the source for copying conditions.  There is NO
56189777a2SCristian Pallareswarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
57189777a2SCristian Pallares
58189777a2SCristian Pallareshelp="
59189777a2SCristian PallaresTry \`$me --help' for more information."
60189777a2SCristian Pallares
61189777a2SCristian Pallares# Parse command line
62189777a2SCristian Pallareswhile test $# -gt 0 ; do
63189777a2SCristian Pallares  case $1 in
64189777a2SCristian Pallares    --time-stamp | --time* | -t )
65189777a2SCristian Pallares       echo "$timestamp" ; exit ;;
66189777a2SCristian Pallares    --version | -v )
67189777a2SCristian Pallares       echo "$version" ; exit ;;
68189777a2SCristian Pallares    --help | --h* | -h )
69189777a2SCristian Pallares       echo "$usage"; exit ;;
70189777a2SCristian Pallares    -- )     # Stop option processing
71189777a2SCristian Pallares       shift; break ;;
72189777a2SCristian Pallares    - )	# Use stdin as input.
73189777a2SCristian Pallares       break ;;
74189777a2SCristian Pallares    -* )
75189777a2SCristian Pallares       echo "$me: invalid option $1$help" >&2
76189777a2SCristian Pallares       exit 1 ;;
77189777a2SCristian Pallares    * )
78189777a2SCristian Pallares       break ;;
79189777a2SCristian Pallares  esac
80189777a2SCristian Pallaresdone
81189777a2SCristian Pallares
82189777a2SCristian Pallaresif test $# != 0; then
83189777a2SCristian Pallares  echo "$me: too many arguments$help" >&2
84189777a2SCristian Pallares  exit 1
85189777a2SCristian Pallaresfi
86189777a2SCristian Pallares
87189777a2SCristian Pallarestrap 'exit 1' 1 2 15
88189777a2SCristian Pallares
89189777a2SCristian Pallares# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
90189777a2SCristian Pallares# compiler to aid in system detection is discouraged as it requires
91189777a2SCristian Pallares# temporary files to be created and, as you can see below, it is a
92189777a2SCristian Pallares# headache to deal with in a portable fashion.
93189777a2SCristian Pallares
94189777a2SCristian Pallares# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
95189777a2SCristian Pallares# use `HOST_CC' if defined, but it is deprecated.
96189777a2SCristian Pallares
97189777a2SCristian Pallares# Portable tmp directory creation inspired by the Autoconf team.
98189777a2SCristian Pallares
99189777a2SCristian Pallaresset_cc_for_build='
100189777a2SCristian Pallarestrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
101189777a2SCristian Pallarestrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
102189777a2SCristian Pallares: ${TMPDIR=/tmp} ;
103189777a2SCristian Pallares { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
104189777a2SCristian Pallares { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
105189777a2SCristian Pallares { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
106189777a2SCristian Pallares { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
107189777a2SCristian Pallaresdummy=$tmp/dummy ;
108189777a2SCristian Pallarestmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
109189777a2SCristian Pallarescase $CC_FOR_BUILD,$HOST_CC,$CC in
110189777a2SCristian Pallares ,,)    echo "int x;" > $dummy.c ;
111189777a2SCristian Pallares	for c in cc gcc c89 c99 ; do
112189777a2SCristian Pallares	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
113189777a2SCristian Pallares	     CC_FOR_BUILD="$c"; break ;
114189777a2SCristian Pallares	  fi ;
115189777a2SCristian Pallares	done ;
116189777a2SCristian Pallares	if test x"$CC_FOR_BUILD" = x ; then
117189777a2SCristian Pallares	  CC_FOR_BUILD=no_compiler_found ;
118189777a2SCristian Pallares	fi
119189777a2SCristian Pallares	;;
120189777a2SCristian Pallares ,,*)   CC_FOR_BUILD=$CC ;;
121189777a2SCristian Pallares ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
122189777a2SCristian Pallaresesac ; set_cc_for_build= ;'
123189777a2SCristian Pallares
124189777a2SCristian Pallares# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
125189777a2SCristian Pallares# ([email protected] 1994-08-24)
126189777a2SCristian Pallaresif (test -f /.attbin/uname) >/dev/null 2>&1 ; then
127189777a2SCristian Pallares	PATH=$PATH:/.attbin ; export PATH
128189777a2SCristian Pallaresfi
129189777a2SCristian Pallares
130189777a2SCristian PallaresUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
131189777a2SCristian PallaresUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
132189777a2SCristian PallaresUNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
133189777a2SCristian PallaresUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
134189777a2SCristian Pallares
1351f13f311SSkyrpexcase "${UNAME_SYSTEM}" in
1361f13f311SSkyrpexLinux|GNU|GNU/*)
1371f13f311SSkyrpex	# If the system lacks a compiler, then just pick glibc.
1381f13f311SSkyrpex	# We could probably try harder.
1391f13f311SSkyrpex	LIBC=gnu
1401f13f311SSkyrpex
1411f13f311SSkyrpex	eval $set_cc_for_build
1421f13f311SSkyrpex	cat <<-EOF > $dummy.c
1431f13f311SSkyrpex	#include <features.h>
1441f13f311SSkyrpex	#if defined(__UCLIBC__)
1451f13f311SSkyrpex	LIBC=uclibc
1461f13f311SSkyrpex	#elif defined(__dietlibc__)
1471f13f311SSkyrpex	LIBC=dietlibc
1481f13f311SSkyrpex	#else
1491f13f311SSkyrpex	LIBC=gnu
1501f13f311SSkyrpex	#endif
1511f13f311SSkyrpex	EOF
1521f13f311SSkyrpex	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
1531f13f311SSkyrpex	;;
1541f13f311SSkyrpexesac
1551f13f311SSkyrpex
156189777a2SCristian Pallares# Note: order is significant - the case branches are not exclusive.
157189777a2SCristian Pallares
158189777a2SCristian Pallarescase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
159189777a2SCristian Pallares    *:NetBSD:*:*)
160189777a2SCristian Pallares	# NetBSD (nbsd) targets should (where applicable) match one or
1611f13f311SSkyrpex	# more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
162189777a2SCristian Pallares	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
163189777a2SCristian Pallares	# switched to ELF, *-*-netbsd* would select the old
164189777a2SCristian Pallares	# object file format.  This provides both forward
165189777a2SCristian Pallares	# compatibility and a consistent mechanism for selecting the
166189777a2SCristian Pallares	# object file format.
167189777a2SCristian Pallares	#
168189777a2SCristian Pallares	# Note: NetBSD doesn't particularly care about the vendor
169189777a2SCristian Pallares	# portion of the name.  We always set it to "unknown".
170189777a2SCristian Pallares	sysctl="sysctl -n hw.machine_arch"
171*b3fce824SCristian Pallarés	UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
172*b3fce824SCristian Pallarés	    /sbin/$sysctl 2>/dev/null || \
173*b3fce824SCristian Pallarés	    /usr/sbin/$sysctl 2>/dev/null || \
174*b3fce824SCristian Pallarés	    echo unknown)`
175189777a2SCristian Pallares	case "${UNAME_MACHINE_ARCH}" in
176189777a2SCristian Pallares	    armeb) machine=armeb-unknown ;;
177189777a2SCristian Pallares	    arm*) machine=arm-unknown ;;
178189777a2SCristian Pallares	    sh3el) machine=shl-unknown ;;
179189777a2SCristian Pallares	    sh3eb) machine=sh-unknown ;;
180189777a2SCristian Pallares	    sh5el) machine=sh5le-unknown ;;
181*b3fce824SCristian Pallarés	    earmv*)
182*b3fce824SCristian Pallarés		arch=`echo ${UNAME_MACHINE_ARCH} | sed -e 's,^e\(armv[0-9]\).*$,\1,'`
183*b3fce824SCristian Pallarés		endian=`echo ${UNAME_MACHINE_ARCH} | sed -ne 's,^.*\(eb\)$,\1,p'`
184*b3fce824SCristian Pallarés		machine=${arch}${endian}-unknown
185*b3fce824SCristian Pallarés		;;
186189777a2SCristian Pallares	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
187189777a2SCristian Pallares	esac
188189777a2SCristian Pallares	# The Operating System including object format, if it has switched
189189777a2SCristian Pallares	# to ELF recently, or will in the future.
190189777a2SCristian Pallares	case "${UNAME_MACHINE_ARCH}" in
191*b3fce824SCristian Pallarés	    arm*|earm*|i386|m68k|ns32k|sh3*|sparc|vax)
192189777a2SCristian Pallares		eval $set_cc_for_build
193189777a2SCristian Pallares		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
194189777a2SCristian Pallares			| grep -q __ELF__
195189777a2SCristian Pallares		then
196189777a2SCristian Pallares		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
197189777a2SCristian Pallares		    # Return netbsd for either.  FIX?
198189777a2SCristian Pallares		    os=netbsd
199189777a2SCristian Pallares		else
200189777a2SCristian Pallares		    os=netbsdelf
201189777a2SCristian Pallares		fi
202189777a2SCristian Pallares		;;
203189777a2SCristian Pallares	    *)
204189777a2SCristian Pallares		os=netbsd
205189777a2SCristian Pallares		;;
206189777a2SCristian Pallares	esac
207*b3fce824SCristian Pallarés	# Determine ABI tags.
208*b3fce824SCristian Pallarés	case "${UNAME_MACHINE_ARCH}" in
209*b3fce824SCristian Pallarés	    earm*)
210*b3fce824SCristian Pallarés		expr='s/^earmv[0-9]/-eabi/;s/eb$//'
211*b3fce824SCristian Pallarés		abi=`echo ${UNAME_MACHINE_ARCH} | sed -e "$expr"`
212*b3fce824SCristian Pallarés		;;
213*b3fce824SCristian Pallarés	esac
214189777a2SCristian Pallares	# The OS release
215189777a2SCristian Pallares	# Debian GNU/NetBSD machines have a different userland, and
216189777a2SCristian Pallares	# thus, need a distinct triplet. However, they do not need
217189777a2SCristian Pallares	# kernel version information, so it can be replaced with a
218189777a2SCristian Pallares	# suitable tag, in the style of linux-gnu.
219189777a2SCristian Pallares	case "${UNAME_VERSION}" in
220189777a2SCristian Pallares	    Debian*)
221189777a2SCristian Pallares		release='-gnu'
222189777a2SCristian Pallares		;;
223189777a2SCristian Pallares	    *)
224*b3fce824SCristian Pallarés		release=`echo ${UNAME_RELEASE} | sed -e 's/[-_].*//' | cut -d. -f1,2`
225189777a2SCristian Pallares		;;
226189777a2SCristian Pallares	esac
227189777a2SCristian Pallares	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
228189777a2SCristian Pallares	# contains redundant information, the shorter form:
229189777a2SCristian Pallares	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
230*b3fce824SCristian Pallarés	echo "${machine}-${os}${release}${abi}"
231189777a2SCristian Pallares	exit ;;
2321f13f311SSkyrpex    *:Bitrig:*:*)
2331f13f311SSkyrpex	UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
2341f13f311SSkyrpex	echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
2351f13f311SSkyrpex	exit ;;
236189777a2SCristian Pallares    *:OpenBSD:*:*)
237189777a2SCristian Pallares	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
238189777a2SCristian Pallares	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
239189777a2SCristian Pallares	exit ;;
240*b3fce824SCristian Pallarés    *:LibertyBSD:*:*)
241*b3fce824SCristian Pallarés	UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
242*b3fce824SCristian Pallarés	echo ${UNAME_MACHINE_ARCH}-unknown-libertybsd${UNAME_RELEASE}
243*b3fce824SCristian Pallarés	exit ;;
244189777a2SCristian Pallares    *:ekkoBSD:*:*)
245189777a2SCristian Pallares	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
246189777a2SCristian Pallares	exit ;;
247189777a2SCristian Pallares    *:SolidBSD:*:*)
248189777a2SCristian Pallares	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
249189777a2SCristian Pallares	exit ;;
250189777a2SCristian Pallares    macppc:MirBSD:*:*)
251189777a2SCristian Pallares	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
252189777a2SCristian Pallares	exit ;;
253189777a2SCristian Pallares    *:MirBSD:*:*)
254189777a2SCristian Pallares	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
255189777a2SCristian Pallares	exit ;;
256*b3fce824SCristian Pallarés    *:Sortix:*:*)
257*b3fce824SCristian Pallarés	echo ${UNAME_MACHINE}-unknown-sortix
258*b3fce824SCristian Pallarés	exit ;;
259189777a2SCristian Pallares    alpha:OSF1:*:*)
260189777a2SCristian Pallares	case $UNAME_RELEASE in
261189777a2SCristian Pallares	*4.0)
262189777a2SCristian Pallares		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
263189777a2SCristian Pallares		;;
264189777a2SCristian Pallares	*5.*)
265189777a2SCristian Pallares		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
266189777a2SCristian Pallares		;;
267189777a2SCristian Pallares	esac
268189777a2SCristian Pallares	# According to Compaq, /usr/sbin/psrinfo has been available on
269189777a2SCristian Pallares	# OSF/1 and Tru64 systems produced since 1995.  I hope that
270189777a2SCristian Pallares	# covers most systems running today.  This code pipes the CPU
271189777a2SCristian Pallares	# types through head -n 1, so we only detect the type of CPU 0.
272189777a2SCristian Pallares	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
273189777a2SCristian Pallares	case "$ALPHA_CPU_TYPE" in
274189777a2SCristian Pallares	    "EV4 (21064)")
275*b3fce824SCristian Pallarés		UNAME_MACHINE=alpha ;;
276189777a2SCristian Pallares	    "EV4.5 (21064)")
277*b3fce824SCristian Pallarés		UNAME_MACHINE=alpha ;;
278189777a2SCristian Pallares	    "LCA4 (21066/21068)")
279*b3fce824SCristian Pallarés		UNAME_MACHINE=alpha ;;
280189777a2SCristian Pallares	    "EV5 (21164)")
281*b3fce824SCristian Pallarés		UNAME_MACHINE=alphaev5 ;;
282189777a2SCristian Pallares	    "EV5.6 (21164A)")
283*b3fce824SCristian Pallarés		UNAME_MACHINE=alphaev56 ;;
284189777a2SCristian Pallares	    "EV5.6 (21164PC)")
285*b3fce824SCristian Pallarés		UNAME_MACHINE=alphapca56 ;;
286189777a2SCristian Pallares	    "EV5.7 (21164PC)")
287*b3fce824SCristian Pallarés		UNAME_MACHINE=alphapca57 ;;
288189777a2SCristian Pallares	    "EV6 (21264)")
289*b3fce824SCristian Pallarés		UNAME_MACHINE=alphaev6 ;;
290189777a2SCristian Pallares	    "EV6.7 (21264A)")
291*b3fce824SCristian Pallarés		UNAME_MACHINE=alphaev67 ;;
292189777a2SCristian Pallares	    "EV6.8CB (21264C)")
293*b3fce824SCristian Pallarés		UNAME_MACHINE=alphaev68 ;;
294189777a2SCristian Pallares	    "EV6.8AL (21264B)")
295*b3fce824SCristian Pallarés		UNAME_MACHINE=alphaev68 ;;
296189777a2SCristian Pallares	    "EV6.8CX (21264D)")
297*b3fce824SCristian Pallarés		UNAME_MACHINE=alphaev68 ;;
298189777a2SCristian Pallares	    "EV6.9A (21264/EV69A)")
299*b3fce824SCristian Pallarés		UNAME_MACHINE=alphaev69 ;;
300189777a2SCristian Pallares	    "EV7 (21364)")
301*b3fce824SCristian Pallarés		UNAME_MACHINE=alphaev7 ;;
302189777a2SCristian Pallares	    "EV7.9 (21364A)")
303*b3fce824SCristian Pallarés		UNAME_MACHINE=alphaev79 ;;
304189777a2SCristian Pallares	esac
305189777a2SCristian Pallares	# A Pn.n version is a patched version.
306189777a2SCristian Pallares	# A Vn.n version is a released version.
307189777a2SCristian Pallares	# A Tn.n version is a released field test version.
308189777a2SCristian Pallares	# A Xn.n version is an unreleased experimental baselevel.
309189777a2SCristian Pallares	# 1.2 uses "1.2" for uname -r.
310*b3fce824SCristian Pallarés	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
3111f13f311SSkyrpex	# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
3121f13f311SSkyrpex	exitcode=$?
3131f13f311SSkyrpex	trap '' 0
3141f13f311SSkyrpex	exit $exitcode ;;
315189777a2SCristian Pallares    Alpha\ *:Windows_NT*:*)
316189777a2SCristian Pallares	# How do we know it's Interix rather than the generic POSIX subsystem?
317189777a2SCristian Pallares	# Should we change UNAME_MACHINE based on the output of uname instead
318189777a2SCristian Pallares	# of the specific Alpha model?
319189777a2SCristian Pallares	echo alpha-pc-interix
320189777a2SCristian Pallares	exit ;;
321189777a2SCristian Pallares    21064:Windows_NT:50:3)
322189777a2SCristian Pallares	echo alpha-dec-winnt3.5
323189777a2SCristian Pallares	exit ;;
324189777a2SCristian Pallares    Amiga*:UNIX_System_V:4.0:*)
325189777a2SCristian Pallares	echo m68k-unknown-sysv4
326189777a2SCristian Pallares	exit ;;
327189777a2SCristian Pallares    *:[Aa]miga[Oo][Ss]:*:*)
328189777a2SCristian Pallares	echo ${UNAME_MACHINE}-unknown-amigaos
329189777a2SCristian Pallares	exit ;;
330189777a2SCristian Pallares    *:[Mm]orph[Oo][Ss]:*:*)
331189777a2SCristian Pallares	echo ${UNAME_MACHINE}-unknown-morphos
332189777a2SCristian Pallares	exit ;;
333189777a2SCristian Pallares    *:OS/390:*:*)
334189777a2SCristian Pallares	echo i370-ibm-openedition
335189777a2SCristian Pallares	exit ;;
336189777a2SCristian Pallares    *:z/VM:*:*)
337189777a2SCristian Pallares	echo s390-ibm-zvmoe
338189777a2SCristian Pallares	exit ;;
339189777a2SCristian Pallares    *:OS400:*:*)
340189777a2SCristian Pallares	echo powerpc-ibm-os400
341189777a2SCristian Pallares	exit ;;
342189777a2SCristian Pallares    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
343189777a2SCristian Pallares	echo arm-acorn-riscix${UNAME_RELEASE}
344189777a2SCristian Pallares	exit ;;
3451f13f311SSkyrpex    arm*:riscos:*:*|arm*:RISCOS:*:*)
346189777a2SCristian Pallares	echo arm-unknown-riscos
347189777a2SCristian Pallares	exit ;;
348189777a2SCristian Pallares    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
349189777a2SCristian Pallares	echo hppa1.1-hitachi-hiuxmpp
350189777a2SCristian Pallares	exit ;;
351189777a2SCristian Pallares    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
352189777a2SCristian Pallares	# [email protected] (Earle F. Ake) contributed MIS and NILE.
353189777a2SCristian Pallares	if test "`(/bin/universe) 2>/dev/null`" = att ; then
354189777a2SCristian Pallares		echo pyramid-pyramid-sysv3
355189777a2SCristian Pallares	else
356189777a2SCristian Pallares		echo pyramid-pyramid-bsd
357189777a2SCristian Pallares	fi
358189777a2SCristian Pallares	exit ;;
359189777a2SCristian Pallares    NILE*:*:*:dcosx)
360189777a2SCristian Pallares	echo pyramid-pyramid-svr4
361189777a2SCristian Pallares	exit ;;
362189777a2SCristian Pallares    DRS?6000:unix:4.0:6*)
363189777a2SCristian Pallares	echo sparc-icl-nx6
364189777a2SCristian Pallares	exit ;;
365189777a2SCristian Pallares    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
366189777a2SCristian Pallares	case `/usr/bin/uname -p` in
367189777a2SCristian Pallares	    sparc) echo sparc-icl-nx7; exit ;;
368189777a2SCristian Pallares	esac ;;
369189777a2SCristian Pallares    s390x:SunOS:*:*)
370189777a2SCristian Pallares	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
371189777a2SCristian Pallares	exit ;;
372189777a2SCristian Pallares    sun4H:SunOS:5.*:*)
373189777a2SCristian Pallares	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
374189777a2SCristian Pallares	exit ;;
375189777a2SCristian Pallares    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
376189777a2SCristian Pallares	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
377189777a2SCristian Pallares	exit ;;
3781f13f311SSkyrpex    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
3791f13f311SSkyrpex	echo i386-pc-auroraux${UNAME_RELEASE}
3801f13f311SSkyrpex	exit ;;
381189777a2SCristian Pallares    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
382189777a2SCristian Pallares	eval $set_cc_for_build
383*b3fce824SCristian Pallarés	SUN_ARCH=i386
384189777a2SCristian Pallares	# If there is a compiler, see if it is configured for 64-bit objects.
385189777a2SCristian Pallares	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
386189777a2SCristian Pallares	# This test works for both compilers.
387*b3fce824SCristian Pallarés	if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
388189777a2SCristian Pallares	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
389*b3fce824SCristian Pallarés		(CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
390189777a2SCristian Pallares		grep IS_64BIT_ARCH >/dev/null
391189777a2SCristian Pallares	    then
392*b3fce824SCristian Pallarés		SUN_ARCH=x86_64
393189777a2SCristian Pallares	    fi
394189777a2SCristian Pallares	fi
395189777a2SCristian Pallares	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
396189777a2SCristian Pallares	exit ;;
397189777a2SCristian Pallares    sun4*:SunOS:6*:*)
398189777a2SCristian Pallares	# According to config.sub, this is the proper way to canonicalize
399189777a2SCristian Pallares	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
400189777a2SCristian Pallares	# it's likely to be more like Solaris than SunOS4.
401189777a2SCristian Pallares	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
402189777a2SCristian Pallares	exit ;;
403189777a2SCristian Pallares    sun4*:SunOS:*:*)
404189777a2SCristian Pallares	case "`/usr/bin/arch -k`" in
405189777a2SCristian Pallares	    Series*|S4*)
406189777a2SCristian Pallares		UNAME_RELEASE=`uname -v`
407189777a2SCristian Pallares		;;
408189777a2SCristian Pallares	esac
409189777a2SCristian Pallares	# Japanese Language versions have a version number like `4.1.3-JL'.
410189777a2SCristian Pallares	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
411189777a2SCristian Pallares	exit ;;
412189777a2SCristian Pallares    sun3*:SunOS:*:*)
413189777a2SCristian Pallares	echo m68k-sun-sunos${UNAME_RELEASE}
414189777a2SCristian Pallares	exit ;;
415189777a2SCristian Pallares    sun*:*:4.2BSD:*)
416189777a2SCristian Pallares	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
417*b3fce824SCristian Pallarés	test "x${UNAME_RELEASE}" = x && UNAME_RELEASE=3
418189777a2SCristian Pallares	case "`/bin/arch`" in
419189777a2SCristian Pallares	    sun3)
420189777a2SCristian Pallares		echo m68k-sun-sunos${UNAME_RELEASE}
421189777a2SCristian Pallares		;;
422189777a2SCristian Pallares	    sun4)
423189777a2SCristian Pallares		echo sparc-sun-sunos${UNAME_RELEASE}
424189777a2SCristian Pallares		;;
425189777a2SCristian Pallares	esac
426189777a2SCristian Pallares	exit ;;
427189777a2SCristian Pallares    aushp:SunOS:*:*)
428189777a2SCristian Pallares	echo sparc-auspex-sunos${UNAME_RELEASE}
429189777a2SCristian Pallares	exit ;;
430189777a2SCristian Pallares    # The situation for MiNT is a little confusing.  The machine name
431189777a2SCristian Pallares    # can be virtually everything (everything which is not
432189777a2SCristian Pallares    # "atarist" or "atariste" at least should have a processor
433189777a2SCristian Pallares    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
434189777a2SCristian Pallares    # to the lowercase version "mint" (or "freemint").  Finally
435189777a2SCristian Pallares    # the system name "TOS" denotes a system which is actually not
436189777a2SCristian Pallares    # MiNT.  But MiNT is downward compatible to TOS, so this should
437189777a2SCristian Pallares    # be no problem.
438189777a2SCristian Pallares    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
439189777a2SCristian Pallares	echo m68k-atari-mint${UNAME_RELEASE}
440189777a2SCristian Pallares	exit ;;
441189777a2SCristian Pallares    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
442189777a2SCristian Pallares	echo m68k-atari-mint${UNAME_RELEASE}
443189777a2SCristian Pallares	exit ;;
444189777a2SCristian Pallares    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
445189777a2SCristian Pallares	echo m68k-atari-mint${UNAME_RELEASE}
446189777a2SCristian Pallares	exit ;;
447189777a2SCristian Pallares    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
448189777a2SCristian Pallares	echo m68k-milan-mint${UNAME_RELEASE}
449189777a2SCristian Pallares	exit ;;
450189777a2SCristian Pallares    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
451189777a2SCristian Pallares	echo m68k-hades-mint${UNAME_RELEASE}
452189777a2SCristian Pallares	exit ;;
453189777a2SCristian Pallares    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
454189777a2SCristian Pallares	echo m68k-unknown-mint${UNAME_RELEASE}
455189777a2SCristian Pallares	exit ;;
456189777a2SCristian Pallares    m68k:machten:*:*)
457189777a2SCristian Pallares	echo m68k-apple-machten${UNAME_RELEASE}
458189777a2SCristian Pallares	exit ;;
459189777a2SCristian Pallares    powerpc:machten:*:*)
460189777a2SCristian Pallares	echo powerpc-apple-machten${UNAME_RELEASE}
461189777a2SCristian Pallares	exit ;;
462189777a2SCristian Pallares    RISC*:Mach:*:*)
463189777a2SCristian Pallares	echo mips-dec-mach_bsd4.3
464189777a2SCristian Pallares	exit ;;
465189777a2SCristian Pallares    RISC*:ULTRIX:*:*)
466189777a2SCristian Pallares	echo mips-dec-ultrix${UNAME_RELEASE}
467189777a2SCristian Pallares	exit ;;
468189777a2SCristian Pallares    VAX*:ULTRIX*:*:*)
469189777a2SCristian Pallares	echo vax-dec-ultrix${UNAME_RELEASE}
470189777a2SCristian Pallares	exit ;;
471189777a2SCristian Pallares    2020:CLIX:*:* | 2430:CLIX:*:*)
472189777a2SCristian Pallares	echo clipper-intergraph-clix${UNAME_RELEASE}
473189777a2SCristian Pallares	exit ;;
474189777a2SCristian Pallares    mips:*:*:UMIPS | mips:*:*:RISCos)
475189777a2SCristian Pallares	eval $set_cc_for_build
476189777a2SCristian Pallares	sed 's/^	//' << EOF >$dummy.c
477189777a2SCristian Pallares#ifdef __cplusplus
478189777a2SCristian Pallares#include <stdio.h>  /* for printf() prototype */
479189777a2SCristian Pallares	int main (int argc, char *argv[]) {
480189777a2SCristian Pallares#else
481189777a2SCristian Pallares	int main (argc, argv) int argc; char *argv[]; {
482189777a2SCristian Pallares#endif
483189777a2SCristian Pallares	#if defined (host_mips) && defined (MIPSEB)
484189777a2SCristian Pallares	#if defined (SYSTYPE_SYSV)
485189777a2SCristian Pallares	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
486189777a2SCristian Pallares	#endif
487189777a2SCristian Pallares	#if defined (SYSTYPE_SVR4)
488189777a2SCristian Pallares	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
489189777a2SCristian Pallares	#endif
490189777a2SCristian Pallares	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
491189777a2SCristian Pallares	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
492189777a2SCristian Pallares	#endif
493189777a2SCristian Pallares	#endif
494189777a2SCristian Pallares	  exit (-1);
495189777a2SCristian Pallares	}
496189777a2SCristian PallaresEOF
497189777a2SCristian Pallares	$CC_FOR_BUILD -o $dummy $dummy.c &&
498189777a2SCristian Pallares	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
499189777a2SCristian Pallares	  SYSTEM_NAME=`$dummy $dummyarg` &&
500189777a2SCristian Pallares	    { echo "$SYSTEM_NAME"; exit; }
501189777a2SCristian Pallares	echo mips-mips-riscos${UNAME_RELEASE}
502189777a2SCristian Pallares	exit ;;
503189777a2SCristian Pallares    Motorola:PowerMAX_OS:*:*)
504189777a2SCristian Pallares	echo powerpc-motorola-powermax
505189777a2SCristian Pallares	exit ;;
506189777a2SCristian Pallares    Motorola:*:4.3:PL8-*)
507189777a2SCristian Pallares	echo powerpc-harris-powermax
508189777a2SCristian Pallares	exit ;;
509189777a2SCristian Pallares    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
510189777a2SCristian Pallares	echo powerpc-harris-powermax
511189777a2SCristian Pallares	exit ;;
512189777a2SCristian Pallares    Night_Hawk:Power_UNIX:*:*)
513189777a2SCristian Pallares	echo powerpc-harris-powerunix
514189777a2SCristian Pallares	exit ;;
515189777a2SCristian Pallares    m88k:CX/UX:7*:*)
516189777a2SCristian Pallares	echo m88k-harris-cxux7
517189777a2SCristian Pallares	exit ;;
518189777a2SCristian Pallares    m88k:*:4*:R4*)
519189777a2SCristian Pallares	echo m88k-motorola-sysv4
520189777a2SCristian Pallares	exit ;;
521189777a2SCristian Pallares    m88k:*:3*:R3*)
522189777a2SCristian Pallares	echo m88k-motorola-sysv3
523189777a2SCristian Pallares	exit ;;
524189777a2SCristian Pallares    AViiON:dgux:*:*)
525189777a2SCristian Pallares	# DG/UX returns AViiON for all architectures
526189777a2SCristian Pallares	UNAME_PROCESSOR=`/usr/bin/uname -p`
527189777a2SCristian Pallares	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
528189777a2SCristian Pallares	then
529189777a2SCristian Pallares	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
530189777a2SCristian Pallares	       [ ${TARGET_BINARY_INTERFACE}x = x ]
531189777a2SCristian Pallares	    then
532189777a2SCristian Pallares		echo m88k-dg-dgux${UNAME_RELEASE}
533189777a2SCristian Pallares	    else
534189777a2SCristian Pallares		echo m88k-dg-dguxbcs${UNAME_RELEASE}
535189777a2SCristian Pallares	    fi
536189777a2SCristian Pallares	else
537189777a2SCristian Pallares	    echo i586-dg-dgux${UNAME_RELEASE}
538189777a2SCristian Pallares	fi
539189777a2SCristian Pallares	exit ;;
540189777a2SCristian Pallares    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
541189777a2SCristian Pallares	echo m88k-dolphin-sysv3
542189777a2SCristian Pallares	exit ;;
543189777a2SCristian Pallares    M88*:*:R3*:*)
544189777a2SCristian Pallares	# Delta 88k system running SVR3
545189777a2SCristian Pallares	echo m88k-motorola-sysv3
546189777a2SCristian Pallares	exit ;;
547189777a2SCristian Pallares    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
548189777a2SCristian Pallares	echo m88k-tektronix-sysv3
549189777a2SCristian Pallares	exit ;;
550189777a2SCristian Pallares    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
551189777a2SCristian Pallares	echo m68k-tektronix-bsd
552189777a2SCristian Pallares	exit ;;
553189777a2SCristian Pallares    *:IRIX*:*:*)
554189777a2SCristian Pallares	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
555189777a2SCristian Pallares	exit ;;
556189777a2SCristian Pallares    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
557189777a2SCristian Pallares	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
558189777a2SCristian Pallares	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
559189777a2SCristian Pallares    i*86:AIX:*:*)
560189777a2SCristian Pallares	echo i386-ibm-aix
561189777a2SCristian Pallares	exit ;;
562189777a2SCristian Pallares    ia64:AIX:*:*)
563189777a2SCristian Pallares	if [ -x /usr/bin/oslevel ] ; then
564189777a2SCristian Pallares		IBM_REV=`/usr/bin/oslevel`
565189777a2SCristian Pallares	else
566189777a2SCristian Pallares		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
567189777a2SCristian Pallares	fi
568189777a2SCristian Pallares	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
569189777a2SCristian Pallares	exit ;;
570189777a2SCristian Pallares    *:AIX:2:3)
571189777a2SCristian Pallares	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
572189777a2SCristian Pallares		eval $set_cc_for_build
573189777a2SCristian Pallares		sed 's/^		//' << EOF >$dummy.c
574189777a2SCristian Pallares		#include <sys/systemcfg.h>
575189777a2SCristian Pallares
576189777a2SCristian Pallares		main()
577189777a2SCristian Pallares			{
578189777a2SCristian Pallares			if (!__power_pc())
579189777a2SCristian Pallares				exit(1);
580189777a2SCristian Pallares			puts("powerpc-ibm-aix3.2.5");
581189777a2SCristian Pallares			exit(0);
582189777a2SCristian Pallares			}
583189777a2SCristian PallaresEOF
584189777a2SCristian Pallares		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
585189777a2SCristian Pallares		then
586189777a2SCristian Pallares			echo "$SYSTEM_NAME"
587189777a2SCristian Pallares		else
588189777a2SCristian Pallares			echo rs6000-ibm-aix3.2.5
589189777a2SCristian Pallares		fi
590189777a2SCristian Pallares	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
591189777a2SCristian Pallares		echo rs6000-ibm-aix3.2.4
592189777a2SCristian Pallares	else
593189777a2SCristian Pallares		echo rs6000-ibm-aix3.2
594189777a2SCristian Pallares	fi
595189777a2SCristian Pallares	exit ;;
5961f13f311SSkyrpex    *:AIX:*:[4567])
597189777a2SCristian Pallares	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
598189777a2SCristian Pallares	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
599189777a2SCristian Pallares		IBM_ARCH=rs6000
600189777a2SCristian Pallares	else
601189777a2SCristian Pallares		IBM_ARCH=powerpc
602189777a2SCristian Pallares	fi
603*b3fce824SCristian Pallarés	if [ -x /usr/bin/lslpp ] ; then
604*b3fce824SCristian Pallarés		IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |
605*b3fce824SCristian Pallarés			   awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
606189777a2SCristian Pallares	else
607189777a2SCristian Pallares		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
608189777a2SCristian Pallares	fi
609189777a2SCristian Pallares	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
610189777a2SCristian Pallares	exit ;;
611189777a2SCristian Pallares    *:AIX:*:*)
612189777a2SCristian Pallares	echo rs6000-ibm-aix
613189777a2SCristian Pallares	exit ;;
614189777a2SCristian Pallares    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
615189777a2SCristian Pallares	echo romp-ibm-bsd4.4
616189777a2SCristian Pallares	exit ;;
617189777a2SCristian Pallares    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
618189777a2SCristian Pallares	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
619189777a2SCristian Pallares	exit ;;                             # report: romp-ibm BSD 4.3
620189777a2SCristian Pallares    *:BOSX:*:*)
621189777a2SCristian Pallares	echo rs6000-bull-bosx
622189777a2SCristian Pallares	exit ;;
623189777a2SCristian Pallares    DPX/2?00:B.O.S.:*:*)
624189777a2SCristian Pallares	echo m68k-bull-sysv3
625189777a2SCristian Pallares	exit ;;
626189777a2SCristian Pallares    9000/[34]??:4.3bsd:1.*:*)
627189777a2SCristian Pallares	echo m68k-hp-bsd
628189777a2SCristian Pallares	exit ;;
629189777a2SCristian Pallares    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
630189777a2SCristian Pallares	echo m68k-hp-bsd4.4
631189777a2SCristian Pallares	exit ;;
632189777a2SCristian Pallares    9000/[34678]??:HP-UX:*:*)
633189777a2SCristian Pallares	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
634189777a2SCristian Pallares	case "${UNAME_MACHINE}" in
635189777a2SCristian Pallares	    9000/31? )            HP_ARCH=m68000 ;;
636189777a2SCristian Pallares	    9000/[34]?? )         HP_ARCH=m68k ;;
637189777a2SCristian Pallares	    9000/[678][0-9][0-9])
638189777a2SCristian Pallares		if [ -x /usr/bin/getconf ]; then
639189777a2SCristian Pallares		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
640189777a2SCristian Pallares		    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
641189777a2SCristian Pallares		    case "${sc_cpu_version}" in
642*b3fce824SCristian Pallarés		      523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
643*b3fce824SCristian Pallarés		      528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
644189777a2SCristian Pallares		      532)                      # CPU_PA_RISC2_0
645189777a2SCristian Pallares			case "${sc_kernel_bits}" in
646*b3fce824SCristian Pallarés			  32) HP_ARCH=hppa2.0n ;;
647*b3fce824SCristian Pallarés			  64) HP_ARCH=hppa2.0w ;;
648*b3fce824SCristian Pallarés			  '') HP_ARCH=hppa2.0 ;;   # HP-UX 10.20
649189777a2SCristian Pallares			esac ;;
650189777a2SCristian Pallares		    esac
651189777a2SCristian Pallares		fi
652189777a2SCristian Pallares		if [ "${HP_ARCH}" = "" ]; then
653189777a2SCristian Pallares		    eval $set_cc_for_build
654189777a2SCristian Pallares		    sed 's/^		//' << EOF >$dummy.c
655189777a2SCristian Pallares
656189777a2SCristian Pallares		#define _HPUX_SOURCE
657189777a2SCristian Pallares		#include <stdlib.h>
658189777a2SCristian Pallares		#include <unistd.h>
659189777a2SCristian Pallares
660189777a2SCristian Pallares		int main ()
661189777a2SCristian Pallares		{
662189777a2SCristian Pallares		#if defined(_SC_KERNEL_BITS)
663189777a2SCristian Pallares		    long bits = sysconf(_SC_KERNEL_BITS);
664189777a2SCristian Pallares		#endif
665189777a2SCristian Pallares		    long cpu  = sysconf (_SC_CPU_VERSION);
666189777a2SCristian Pallares
667189777a2SCristian Pallares		    switch (cpu)
668189777a2SCristian Pallares			{
669189777a2SCristian Pallares			case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
670189777a2SCristian Pallares			case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
671189777a2SCristian Pallares			case CPU_PA_RISC2_0:
672189777a2SCristian Pallares		#if defined(_SC_KERNEL_BITS)
673189777a2SCristian Pallares			    switch (bits)
674189777a2SCristian Pallares				{
675189777a2SCristian Pallares				case 64: puts ("hppa2.0w"); break;
676189777a2SCristian Pallares				case 32: puts ("hppa2.0n"); break;
677189777a2SCristian Pallares				default: puts ("hppa2.0"); break;
678189777a2SCristian Pallares				} break;
679189777a2SCristian Pallares		#else  /* !defined(_SC_KERNEL_BITS) */
680189777a2SCristian Pallares			    puts ("hppa2.0"); break;
681189777a2SCristian Pallares		#endif
682189777a2SCristian Pallares			default: puts ("hppa1.0"); break;
683189777a2SCristian Pallares			}
684189777a2SCristian Pallares		    exit (0);
685189777a2SCristian Pallares		}
686189777a2SCristian PallaresEOF
687*b3fce824SCristian Pallarés		    (CCOPTS="" $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
688189777a2SCristian Pallares		    test -z "$HP_ARCH" && HP_ARCH=hppa
689189777a2SCristian Pallares		fi ;;
690189777a2SCristian Pallares	esac
691*b3fce824SCristian Pallarés	if [ ${HP_ARCH} = hppa2.0w ]
692189777a2SCristian Pallares	then
693189777a2SCristian Pallares	    eval $set_cc_for_build
694189777a2SCristian Pallares
695189777a2SCristian Pallares	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
696189777a2SCristian Pallares	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
697189777a2SCristian Pallares	    # generating 64-bit code.  GNU and HP use different nomenclature:
698189777a2SCristian Pallares	    #
699189777a2SCristian Pallares	    # $ CC_FOR_BUILD=cc ./config.guess
700189777a2SCristian Pallares	    # => hppa2.0w-hp-hpux11.23
701189777a2SCristian Pallares	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
702189777a2SCristian Pallares	    # => hppa64-hp-hpux11.23
703189777a2SCristian Pallares
704*b3fce824SCristian Pallarés	    if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) |
705189777a2SCristian Pallares		grep -q __LP64__
706189777a2SCristian Pallares	    then
707*b3fce824SCristian Pallarés		HP_ARCH=hppa2.0w
708189777a2SCristian Pallares	    else
709*b3fce824SCristian Pallarés		HP_ARCH=hppa64
710189777a2SCristian Pallares	    fi
711189777a2SCristian Pallares	fi
712189777a2SCristian Pallares	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
713189777a2SCristian Pallares	exit ;;
714189777a2SCristian Pallares    ia64:HP-UX:*:*)
715189777a2SCristian Pallares	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
716189777a2SCristian Pallares	echo ia64-hp-hpux${HPUX_REV}
717189777a2SCristian Pallares	exit ;;
718189777a2SCristian Pallares    3050*:HI-UX:*:*)
719189777a2SCristian Pallares	eval $set_cc_for_build
720189777a2SCristian Pallares	sed 's/^	//' << EOF >$dummy.c
721189777a2SCristian Pallares	#include <unistd.h>
722189777a2SCristian Pallares	int
723189777a2SCristian Pallares	main ()
724189777a2SCristian Pallares	{
725189777a2SCristian Pallares	  long cpu = sysconf (_SC_CPU_VERSION);
726189777a2SCristian Pallares	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
727189777a2SCristian Pallares	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
728189777a2SCristian Pallares	     results, however.  */
729189777a2SCristian Pallares	  if (CPU_IS_PA_RISC (cpu))
730189777a2SCristian Pallares	    {
731189777a2SCristian Pallares	      switch (cpu)
732189777a2SCristian Pallares		{
733189777a2SCristian Pallares		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
734189777a2SCristian Pallares		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
735189777a2SCristian Pallares		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
736189777a2SCristian Pallares		  default: puts ("hppa-hitachi-hiuxwe2"); break;
737189777a2SCristian Pallares		}
738189777a2SCristian Pallares	    }
739189777a2SCristian Pallares	  else if (CPU_IS_HP_MC68K (cpu))
740189777a2SCristian Pallares	    puts ("m68k-hitachi-hiuxwe2");
741189777a2SCristian Pallares	  else puts ("unknown-hitachi-hiuxwe2");
742189777a2SCristian Pallares	  exit (0);
743189777a2SCristian Pallares	}
744189777a2SCristian PallaresEOF
745189777a2SCristian Pallares	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
746189777a2SCristian Pallares		{ echo "$SYSTEM_NAME"; exit; }
747189777a2SCristian Pallares	echo unknown-hitachi-hiuxwe2
748189777a2SCristian Pallares	exit ;;
749189777a2SCristian Pallares    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
750189777a2SCristian Pallares	echo hppa1.1-hp-bsd
751189777a2SCristian Pallares	exit ;;
752189777a2SCristian Pallares    9000/8??:4.3bsd:*:*)
753189777a2SCristian Pallares	echo hppa1.0-hp-bsd
754189777a2SCristian Pallares	exit ;;
755189777a2SCristian Pallares    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
756189777a2SCristian Pallares	echo hppa1.0-hp-mpeix
757189777a2SCristian Pallares	exit ;;
758189777a2SCristian Pallares    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
759189777a2SCristian Pallares	echo hppa1.1-hp-osf
760189777a2SCristian Pallares	exit ;;
761189777a2SCristian Pallares    hp8??:OSF1:*:*)
762189777a2SCristian Pallares	echo hppa1.0-hp-osf
763189777a2SCristian Pallares	exit ;;
764189777a2SCristian Pallares    i*86:OSF1:*:*)
765189777a2SCristian Pallares	if [ -x /usr/sbin/sysversion ] ; then
766189777a2SCristian Pallares	    echo ${UNAME_MACHINE}-unknown-osf1mk
767189777a2SCristian Pallares	else
768189777a2SCristian Pallares	    echo ${UNAME_MACHINE}-unknown-osf1
769189777a2SCristian Pallares	fi
770189777a2SCristian Pallares	exit ;;
771189777a2SCristian Pallares    parisc*:Lites*:*:*)
772189777a2SCristian Pallares	echo hppa1.1-hp-lites
773189777a2SCristian Pallares	exit ;;
774189777a2SCristian Pallares    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
775189777a2SCristian Pallares	echo c1-convex-bsd
776189777a2SCristian Pallares	exit ;;
777189777a2SCristian Pallares    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
778189777a2SCristian Pallares	if getsysinfo -f scalar_acc
779189777a2SCristian Pallares	then echo c32-convex-bsd
780189777a2SCristian Pallares	else echo c2-convex-bsd
781189777a2SCristian Pallares	fi
782189777a2SCristian Pallares	exit ;;
783189777a2SCristian Pallares    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
784189777a2SCristian Pallares	echo c34-convex-bsd
785189777a2SCristian Pallares	exit ;;
786189777a2SCristian Pallares    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
787189777a2SCristian Pallares	echo c38-convex-bsd
788189777a2SCristian Pallares	exit ;;
789189777a2SCristian Pallares    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
790189777a2SCristian Pallares	echo c4-convex-bsd
791189777a2SCristian Pallares	exit ;;
792189777a2SCristian Pallares    CRAY*Y-MP:*:*:*)
793189777a2SCristian Pallares	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
794189777a2SCristian Pallares	exit ;;
795189777a2SCristian Pallares    CRAY*[A-Z]90:*:*:*)
796189777a2SCristian Pallares	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
797189777a2SCristian Pallares	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
798189777a2SCristian Pallares	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
799189777a2SCristian Pallares	      -e 's/\.[^.]*$/.X/'
800189777a2SCristian Pallares	exit ;;
801189777a2SCristian Pallares    CRAY*TS:*:*:*)
802189777a2SCristian Pallares	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
803189777a2SCristian Pallares	exit ;;
804189777a2SCristian Pallares    CRAY*T3E:*:*:*)
805189777a2SCristian Pallares	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
806189777a2SCristian Pallares	exit ;;
807189777a2SCristian Pallares    CRAY*SV1:*:*:*)
808189777a2SCristian Pallares	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
809189777a2SCristian Pallares	exit ;;
810189777a2SCristian Pallares    *:UNICOS/mp:*:*)
811189777a2SCristian Pallares	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
812189777a2SCristian Pallares	exit ;;
813189777a2SCristian Pallares    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
814*b3fce824SCristian Pallarés	FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
815*b3fce824SCristian Pallarés	FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
816189777a2SCristian Pallares	FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
817189777a2SCristian Pallares	echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
818189777a2SCristian Pallares	exit ;;
819189777a2SCristian Pallares    5000:UNIX_System_V:4.*:*)
820*b3fce824SCristian Pallarés	FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
821*b3fce824SCristian Pallarés	FUJITSU_REL=`echo ${UNAME_RELEASE} | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`
822189777a2SCristian Pallares	echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
823189777a2SCristian Pallares	exit ;;
824189777a2SCristian Pallares    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
825189777a2SCristian Pallares	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
826189777a2SCristian Pallares	exit ;;
827189777a2SCristian Pallares    sparc*:BSD/OS:*:*)
828189777a2SCristian Pallares	echo sparc-unknown-bsdi${UNAME_RELEASE}
829189777a2SCristian Pallares	exit ;;
830189777a2SCristian Pallares    *:BSD/OS:*:*)
831189777a2SCristian Pallares	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
832189777a2SCristian Pallares	exit ;;
833189777a2SCristian Pallares    *:FreeBSD:*:*)
8341f13f311SSkyrpex	UNAME_PROCESSOR=`/usr/bin/uname -p`
8351f13f311SSkyrpex	case ${UNAME_PROCESSOR} in
836189777a2SCristian Pallares	    amd64)
837189777a2SCristian Pallares		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
838189777a2SCristian Pallares	    *)
8391f13f311SSkyrpex		echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
840189777a2SCristian Pallares	esac
841189777a2SCristian Pallares	exit ;;
842189777a2SCristian Pallares    i*:CYGWIN*:*)
843189777a2SCristian Pallares	echo ${UNAME_MACHINE}-pc-cygwin
844189777a2SCristian Pallares	exit ;;
8451f13f311SSkyrpex    *:MINGW64*:*)
8461f13f311SSkyrpex	echo ${UNAME_MACHINE}-pc-mingw64
8471f13f311SSkyrpex	exit ;;
848189777a2SCristian Pallares    *:MINGW*:*)
849189777a2SCristian Pallares	echo ${UNAME_MACHINE}-pc-mingw32
850189777a2SCristian Pallares	exit ;;
8511f13f311SSkyrpex    *:MSYS*:*)
8521f13f311SSkyrpex	echo ${UNAME_MACHINE}-pc-msys
8531f13f311SSkyrpex	exit ;;
854189777a2SCristian Pallares    i*:windows32*:*)
855189777a2SCristian Pallares	# uname -m includes "-pc" on this system.
856189777a2SCristian Pallares	echo ${UNAME_MACHINE}-mingw32
857189777a2SCristian Pallares	exit ;;
858189777a2SCristian Pallares    i*:PW*:*)
859189777a2SCristian Pallares	echo ${UNAME_MACHINE}-pc-pw32
860189777a2SCristian Pallares	exit ;;
8611f13f311SSkyrpex    *:Interix*:*)
862189777a2SCristian Pallares	case ${UNAME_MACHINE} in
863189777a2SCristian Pallares	    x86)
864189777a2SCristian Pallares		echo i586-pc-interix${UNAME_RELEASE}
865189777a2SCristian Pallares		exit ;;
8661f13f311SSkyrpex	    authenticamd | genuineintel | EM64T)
867189777a2SCristian Pallares		echo x86_64-unknown-interix${UNAME_RELEASE}
868189777a2SCristian Pallares		exit ;;
869189777a2SCristian Pallares	    IA64)
870189777a2SCristian Pallares		echo ia64-unknown-interix${UNAME_RELEASE}
871189777a2SCristian Pallares		exit ;;
872189777a2SCristian Pallares	esac ;;
873189777a2SCristian Pallares    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
874189777a2SCristian Pallares	echo i${UNAME_MACHINE}-pc-mks
875189777a2SCristian Pallares	exit ;;
876189777a2SCristian Pallares    8664:Windows_NT:*)
877189777a2SCristian Pallares	echo x86_64-pc-mks
878189777a2SCristian Pallares	exit ;;
879189777a2SCristian Pallares    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
880189777a2SCristian Pallares	# How do we know it's Interix rather than the generic POSIX subsystem?
881189777a2SCristian Pallares	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
882189777a2SCristian Pallares	# UNAME_MACHINE based on the output of uname instead of i386?
883189777a2SCristian Pallares	echo i586-pc-interix
884189777a2SCristian Pallares	exit ;;
885189777a2SCristian Pallares    i*:UWIN*:*)
886189777a2SCristian Pallares	echo ${UNAME_MACHINE}-pc-uwin
887189777a2SCristian Pallares	exit ;;
888189777a2SCristian Pallares    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
889189777a2SCristian Pallares	echo x86_64-unknown-cygwin
890189777a2SCristian Pallares	exit ;;
891189777a2SCristian Pallares    p*:CYGWIN*:*)
892189777a2SCristian Pallares	echo powerpcle-unknown-cygwin
893189777a2SCristian Pallares	exit ;;
894189777a2SCristian Pallares    prep*:SunOS:5.*:*)
895189777a2SCristian Pallares	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
896189777a2SCristian Pallares	exit ;;
897189777a2SCristian Pallares    *:GNU:*:*)
898189777a2SCristian Pallares	# the GNU system
8991f13f311SSkyrpex	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
900189777a2SCristian Pallares	exit ;;
901189777a2SCristian Pallares    *:GNU/*:*:*)
902189777a2SCristian Pallares	# other systems with GNU libc and userland
903*b3fce824SCristian Pallarés	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
904189777a2SCristian Pallares	exit ;;
905189777a2SCristian Pallares    i*86:Minix:*:*)
906189777a2SCristian Pallares	echo ${UNAME_MACHINE}-pc-minix
907189777a2SCristian Pallares	exit ;;
9081f13f311SSkyrpex    aarch64:Linux:*:*)
9091f13f311SSkyrpex	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
9101f13f311SSkyrpex	exit ;;
9111f13f311SSkyrpex    aarch64_be:Linux:*:*)
9121f13f311SSkyrpex	UNAME_MACHINE=aarch64_be
9131f13f311SSkyrpex	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
9141f13f311SSkyrpex	exit ;;
9151f13f311SSkyrpex    alpha:Linux:*:*)
9161f13f311SSkyrpex	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
9171f13f311SSkyrpex	  EV5)   UNAME_MACHINE=alphaev5 ;;
9181f13f311SSkyrpex	  EV56)  UNAME_MACHINE=alphaev56 ;;
9191f13f311SSkyrpex	  PCA56) UNAME_MACHINE=alphapca56 ;;
9201f13f311SSkyrpex	  PCA57) UNAME_MACHINE=alphapca56 ;;
9211f13f311SSkyrpex	  EV6)   UNAME_MACHINE=alphaev6 ;;
9221f13f311SSkyrpex	  EV67)  UNAME_MACHINE=alphaev67 ;;
9231f13f311SSkyrpex	  EV68*) UNAME_MACHINE=alphaev68 ;;
9241f13f311SSkyrpex	esac
9251f13f311SSkyrpex	objdump --private-headers /bin/sh | grep -q ld.so.1
926*b3fce824SCristian Pallarés	if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
9271f13f311SSkyrpex	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
9281f13f311SSkyrpex	exit ;;
9291f13f311SSkyrpex    arc:Linux:*:* | arceb:Linux:*:*)
9301f13f311SSkyrpex	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
9311f13f311SSkyrpex	exit ;;
932189777a2SCristian Pallares    arm*:Linux:*:*)
933189777a2SCristian Pallares	eval $set_cc_for_build
934189777a2SCristian Pallares	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
935189777a2SCristian Pallares	    | grep -q __ARM_EABI__
936189777a2SCristian Pallares	then
9371f13f311SSkyrpex	    echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
938189777a2SCristian Pallares	else
9391f13f311SSkyrpex	    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
9401f13f311SSkyrpex		| grep -q __ARM_PCS_VFP
9411f13f311SSkyrpex	    then
9421f13f311SSkyrpex		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
9431f13f311SSkyrpex	    else
9441f13f311SSkyrpex		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
9451f13f311SSkyrpex	    fi
946189777a2SCristian Pallares	fi
947189777a2SCristian Pallares	exit ;;
948189777a2SCristian Pallares    avr32*:Linux:*:*)
9491f13f311SSkyrpex	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
950189777a2SCristian Pallares	exit ;;
951189777a2SCristian Pallares    cris:Linux:*:*)
9521f13f311SSkyrpex	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
953189777a2SCristian Pallares	exit ;;
954189777a2SCristian Pallares    crisv32:Linux:*:*)
9551f13f311SSkyrpex	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
956189777a2SCristian Pallares	exit ;;
957*b3fce824SCristian Pallarés    e2k:Linux:*:*)
958*b3fce824SCristian Pallarés	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
959*b3fce824SCristian Pallarés	exit ;;
960189777a2SCristian Pallares    frv:Linux:*:*)
9611f13f311SSkyrpex	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
9621f13f311SSkyrpex	exit ;;
9631f13f311SSkyrpex    hexagon:Linux:*:*)
9641f13f311SSkyrpex	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
9651f13f311SSkyrpex	exit ;;
9661f13f311SSkyrpex    i*86:Linux:*:*)
9671f13f311SSkyrpex	echo ${UNAME_MACHINE}-pc-linux-${LIBC}
968189777a2SCristian Pallares	exit ;;
969189777a2SCristian Pallares    ia64:Linux:*:*)
9701f13f311SSkyrpex	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
971189777a2SCristian Pallares	exit ;;
972*b3fce824SCristian Pallarés    k1om:Linux:*:*)
973*b3fce824SCristian Pallarés	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
974*b3fce824SCristian Pallarés	exit ;;
975189777a2SCristian Pallares    m32r*:Linux:*:*)
9761f13f311SSkyrpex	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
977189777a2SCristian Pallares	exit ;;
978189777a2SCristian Pallares    m68*:Linux:*:*)
9791f13f311SSkyrpex	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
980189777a2SCristian Pallares	exit ;;
981189777a2SCristian Pallares    mips:Linux:*:* | mips64:Linux:*:*)
982189777a2SCristian Pallares	eval $set_cc_for_build
983189777a2SCristian Pallares	sed 's/^	//' << EOF >$dummy.c
984189777a2SCristian Pallares	#undef CPU
985189777a2SCristian Pallares	#undef ${UNAME_MACHINE}
986189777a2SCristian Pallares	#undef ${UNAME_MACHINE}el
987189777a2SCristian Pallares	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
988189777a2SCristian Pallares	CPU=${UNAME_MACHINE}el
989189777a2SCristian Pallares	#else
990189777a2SCristian Pallares	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
991189777a2SCristian Pallares	CPU=${UNAME_MACHINE}
992189777a2SCristian Pallares	#else
993189777a2SCristian Pallares	CPU=
994189777a2SCristian Pallares	#endif
995189777a2SCristian Pallares	#endif
996189777a2SCristian PallaresEOF
9971f13f311SSkyrpex	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
9981f13f311SSkyrpex	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
999189777a2SCristian Pallares	;;
10001f13f311SSkyrpex    openrisc*:Linux:*:*)
10011f13f311SSkyrpex	echo or1k-unknown-linux-${LIBC}
1002189777a2SCristian Pallares	exit ;;
10031f13f311SSkyrpex    or32:Linux:*:* | or1k*:Linux:*:*)
10041f13f311SSkyrpex	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1005189777a2SCristian Pallares	exit ;;
1006189777a2SCristian Pallares    padre:Linux:*:*)
10071f13f311SSkyrpex	echo sparc-unknown-linux-${LIBC}
10081f13f311SSkyrpex	exit ;;
10091f13f311SSkyrpex    parisc64:Linux:*:* | hppa64:Linux:*:*)
10101f13f311SSkyrpex	echo hppa64-unknown-linux-${LIBC}
1011189777a2SCristian Pallares	exit ;;
1012189777a2SCristian Pallares    parisc:Linux:*:* | hppa:Linux:*:*)
1013189777a2SCristian Pallares	# Look for CPU level
1014189777a2SCristian Pallares	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
10151f13f311SSkyrpex	  PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
10161f13f311SSkyrpex	  PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
10171f13f311SSkyrpex	  *)    echo hppa-unknown-linux-${LIBC} ;;
1018189777a2SCristian Pallares	esac
1019189777a2SCristian Pallares	exit ;;
10201f13f311SSkyrpex    ppc64:Linux:*:*)
10211f13f311SSkyrpex	echo powerpc64-unknown-linux-${LIBC}
10221f13f311SSkyrpex	exit ;;
10231f13f311SSkyrpex    ppc:Linux:*:*)
10241f13f311SSkyrpex	echo powerpc-unknown-linux-${LIBC}
10251f13f311SSkyrpex	exit ;;
10261f13f311SSkyrpex    ppc64le:Linux:*:*)
10271f13f311SSkyrpex	echo powerpc64le-unknown-linux-${LIBC}
10281f13f311SSkyrpex	exit ;;
10291f13f311SSkyrpex    ppcle:Linux:*:*)
10301f13f311SSkyrpex	echo powerpcle-unknown-linux-${LIBC}
1031189777a2SCristian Pallares	exit ;;
1032189777a2SCristian Pallares    s390:Linux:*:* | s390x:Linux:*:*)
10331f13f311SSkyrpex	echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
1034189777a2SCristian Pallares	exit ;;
1035189777a2SCristian Pallares    sh64*:Linux:*:*)
10361f13f311SSkyrpex	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1037189777a2SCristian Pallares	exit ;;
1038189777a2SCristian Pallares    sh*:Linux:*:*)
10391f13f311SSkyrpex	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1040189777a2SCristian Pallares	exit ;;
1041189777a2SCristian Pallares    sparc:Linux:*:* | sparc64:Linux:*:*)
10421f13f311SSkyrpex	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
10431f13f311SSkyrpex	exit ;;
10441f13f311SSkyrpex    tile*:Linux:*:*)
10451f13f311SSkyrpex	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1046189777a2SCristian Pallares	exit ;;
1047189777a2SCristian Pallares    vax:Linux:*:*)
10481f13f311SSkyrpex	echo ${UNAME_MACHINE}-dec-linux-${LIBC}
1049189777a2SCristian Pallares	exit ;;
1050189777a2SCristian Pallares    x86_64:Linux:*:*)
1051*b3fce824SCristian Pallarés	echo ${UNAME_MACHINE}-pc-linux-${LIBC}
1052189777a2SCristian Pallares	exit ;;
1053189777a2SCristian Pallares    xtensa*:Linux:*:*)
10541f13f311SSkyrpex	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1055189777a2SCristian Pallares	exit ;;
1056189777a2SCristian Pallares    i*86:DYNIX/ptx:4*:*)
1057189777a2SCristian Pallares	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
1058189777a2SCristian Pallares	# earlier versions are messed up and put the nodename in both
1059189777a2SCristian Pallares	# sysname and nodename.
1060189777a2SCristian Pallares	echo i386-sequent-sysv4
1061189777a2SCristian Pallares	exit ;;
1062189777a2SCristian Pallares    i*86:UNIX_SV:4.2MP:2.*)
1063189777a2SCristian Pallares	# Unixware is an offshoot of SVR4, but it has its own version
1064189777a2SCristian Pallares	# number series starting with 2...
1065189777a2SCristian Pallares	# I am not positive that other SVR4 systems won't match this,
1066189777a2SCristian Pallares	# I just have to hope.  -- rms.
1067189777a2SCristian Pallares	# Use sysv4.2uw... so that sysv4* matches it.
1068189777a2SCristian Pallares	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
1069189777a2SCristian Pallares	exit ;;
1070189777a2SCristian Pallares    i*86:OS/2:*:*)
1071189777a2SCristian Pallares	# If we were able to find `uname', then EMX Unix compatibility
1072189777a2SCristian Pallares	# is probably installed.
1073189777a2SCristian Pallares	echo ${UNAME_MACHINE}-pc-os2-emx
1074189777a2SCristian Pallares	exit ;;
1075189777a2SCristian Pallares    i*86:XTS-300:*:STOP)
1076189777a2SCristian Pallares	echo ${UNAME_MACHINE}-unknown-stop
1077189777a2SCristian Pallares	exit ;;
1078189777a2SCristian Pallares    i*86:atheos:*:*)
1079189777a2SCristian Pallares	echo ${UNAME_MACHINE}-unknown-atheos
1080189777a2SCristian Pallares	exit ;;
1081189777a2SCristian Pallares    i*86:syllable:*:*)
1082189777a2SCristian Pallares	echo ${UNAME_MACHINE}-pc-syllable
1083189777a2SCristian Pallares	exit ;;
1084189777a2SCristian Pallares    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
1085189777a2SCristian Pallares	echo i386-unknown-lynxos${UNAME_RELEASE}
1086189777a2SCristian Pallares	exit ;;
1087189777a2SCristian Pallares    i*86:*DOS:*:*)
1088189777a2SCristian Pallares	echo ${UNAME_MACHINE}-pc-msdosdjgpp
1089189777a2SCristian Pallares	exit ;;
1090189777a2SCristian Pallares    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
1091189777a2SCristian Pallares	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
1092189777a2SCristian Pallares	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1093189777a2SCristian Pallares		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
1094189777a2SCristian Pallares	else
1095189777a2SCristian Pallares		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
1096189777a2SCristian Pallares	fi
1097189777a2SCristian Pallares	exit ;;
1098189777a2SCristian Pallares    i*86:*:5:[678]*)
1099189777a2SCristian Pallares	# UnixWare 7.x, OpenUNIX and OpenServer 6.
1100189777a2SCristian Pallares	case `/bin/uname -X | grep "^Machine"` in
1101189777a2SCristian Pallares	    *486*)	     UNAME_MACHINE=i486 ;;
1102189777a2SCristian Pallares	    *Pentium)	     UNAME_MACHINE=i586 ;;
1103189777a2SCristian Pallares	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1104189777a2SCristian Pallares	esac
1105189777a2SCristian Pallares	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
1106189777a2SCristian Pallares	exit ;;
1107189777a2SCristian Pallares    i*86:*:3.2:*)
1108189777a2SCristian Pallares	if test -f /usr/options/cb.name; then
1109189777a2SCristian Pallares		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1110189777a2SCristian Pallares		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1111189777a2SCristian Pallares	elif /bin/uname -X 2>/dev/null >/dev/null ; then
1112189777a2SCristian Pallares		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1113189777a2SCristian Pallares		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1114189777a2SCristian Pallares		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1115189777a2SCristian Pallares			&& UNAME_MACHINE=i586
1116189777a2SCristian Pallares		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1117189777a2SCristian Pallares			&& UNAME_MACHINE=i686
1118189777a2SCristian Pallares		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1119189777a2SCristian Pallares			&& UNAME_MACHINE=i686
1120189777a2SCristian Pallares		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1121189777a2SCristian Pallares	else
1122189777a2SCristian Pallares		echo ${UNAME_MACHINE}-pc-sysv32
1123189777a2SCristian Pallares	fi
1124189777a2SCristian Pallares	exit ;;
1125189777a2SCristian Pallares    pc:*:*:*)
1126189777a2SCristian Pallares	# Left here for compatibility:
1127189777a2SCristian Pallares	# uname -m prints for DJGPP always 'pc', but it prints nothing about
1128189777a2SCristian Pallares	# the processor, so we play safe by assuming i586.
1129189777a2SCristian Pallares	# Note: whatever this is, it MUST be the same as what config.sub
1130*b3fce824SCristian Pallarés	# prints for the "djgpp" host, or else GDB configure will decide that
1131189777a2SCristian Pallares	# this is a cross-build.
1132189777a2SCristian Pallares	echo i586-pc-msdosdjgpp
1133189777a2SCristian Pallares	exit ;;
1134189777a2SCristian Pallares    Intel:Mach:3*:*)
1135189777a2SCristian Pallares	echo i386-pc-mach3
1136189777a2SCristian Pallares	exit ;;
1137189777a2SCristian Pallares    paragon:*:*:*)
1138189777a2SCristian Pallares	echo i860-intel-osf1
1139189777a2SCristian Pallares	exit ;;
1140189777a2SCristian Pallares    i860:*:4.*:*) # i860-SVR4
1141189777a2SCristian Pallares	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1142189777a2SCristian Pallares	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
1143189777a2SCristian Pallares	else # Add other i860-SVR4 vendors below as they are discovered.
1144189777a2SCristian Pallares	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
1145189777a2SCristian Pallares	fi
1146189777a2SCristian Pallares	exit ;;
1147189777a2SCristian Pallares    mini*:CTIX:SYS*5:*)
1148189777a2SCristian Pallares	# "miniframe"
1149189777a2SCristian Pallares	echo m68010-convergent-sysv
1150189777a2SCristian Pallares	exit ;;
1151189777a2SCristian Pallares    mc68k:UNIX:SYSTEM5:3.51m)
1152189777a2SCristian Pallares	echo m68k-convergent-sysv
1153189777a2SCristian Pallares	exit ;;
1154189777a2SCristian Pallares    M680?0:D-NIX:5.3:*)
1155189777a2SCristian Pallares	echo m68k-diab-dnix
1156189777a2SCristian Pallares	exit ;;
1157189777a2SCristian Pallares    M68*:*:R3V[5678]*:*)
1158189777a2SCristian Pallares	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
1159189777a2SCristian Pallares    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)
1160189777a2SCristian Pallares	OS_REL=''
1161189777a2SCristian Pallares	test -r /etc/.relid \
1162189777a2SCristian Pallares	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1163189777a2SCristian Pallares	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1164189777a2SCristian Pallares	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1165189777a2SCristian Pallares	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1166189777a2SCristian Pallares	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1167189777a2SCristian Pallares    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1168189777a2SCristian Pallares	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1169189777a2SCristian Pallares	  && { echo i486-ncr-sysv4; exit; } ;;
1170189777a2SCristian Pallares    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
1171189777a2SCristian Pallares	OS_REL='.3'
1172189777a2SCristian Pallares	test -r /etc/.relid \
1173189777a2SCristian Pallares	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1174189777a2SCristian Pallares	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1175189777a2SCristian Pallares	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1176189777a2SCristian Pallares	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1177189777a2SCristian Pallares	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
1178189777a2SCristian Pallares	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
1179189777a2SCristian Pallares	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1180189777a2SCristian Pallares    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1181189777a2SCristian Pallares	echo m68k-unknown-lynxos${UNAME_RELEASE}
1182189777a2SCristian Pallares	exit ;;
1183189777a2SCristian Pallares    mc68030:UNIX_System_V:4.*:*)
1184189777a2SCristian Pallares	echo m68k-atari-sysv4
1185189777a2SCristian Pallares	exit ;;
1186189777a2SCristian Pallares    TSUNAMI:LynxOS:2.*:*)
1187189777a2SCristian Pallares	echo sparc-unknown-lynxos${UNAME_RELEASE}
1188189777a2SCristian Pallares	exit ;;
1189189777a2SCristian Pallares    rs6000:LynxOS:2.*:*)
1190189777a2SCristian Pallares	echo rs6000-unknown-lynxos${UNAME_RELEASE}
1191189777a2SCristian Pallares	exit ;;
1192189777a2SCristian Pallares    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
1193189777a2SCristian Pallares	echo powerpc-unknown-lynxos${UNAME_RELEASE}
1194189777a2SCristian Pallares	exit ;;
1195189777a2SCristian Pallares    SM[BE]S:UNIX_SV:*:*)
1196189777a2SCristian Pallares	echo mips-dde-sysv${UNAME_RELEASE}
1197189777a2SCristian Pallares	exit ;;
1198189777a2SCristian Pallares    RM*:ReliantUNIX-*:*:*)
1199189777a2SCristian Pallares	echo mips-sni-sysv4
1200189777a2SCristian Pallares	exit ;;
1201189777a2SCristian Pallares    RM*:SINIX-*:*:*)
1202189777a2SCristian Pallares	echo mips-sni-sysv4
1203189777a2SCristian Pallares	exit ;;
1204189777a2SCristian Pallares    *:SINIX-*:*:*)
1205189777a2SCristian Pallares	if uname -p 2>/dev/null >/dev/null ; then
1206189777a2SCristian Pallares		UNAME_MACHINE=`(uname -p) 2>/dev/null`
1207189777a2SCristian Pallares		echo ${UNAME_MACHINE}-sni-sysv4
1208189777a2SCristian Pallares	else
1209189777a2SCristian Pallares		echo ns32k-sni-sysv
1210189777a2SCristian Pallares	fi
1211189777a2SCristian Pallares	exit ;;
1212189777a2SCristian Pallares    PENTIUM:*:4.0*:*)	# Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1213189777a2SCristian Pallares			# says <[email protected]>
1214189777a2SCristian Pallares	echo i586-unisys-sysv4
1215189777a2SCristian Pallares	exit ;;
1216189777a2SCristian Pallares    *:UNIX_System_V:4*:FTX*)
1217189777a2SCristian Pallares	# From Gerald Hewes <[email protected]>.
1218189777a2SCristian Pallares	# How about differentiating between stratus architectures? -djm
1219189777a2SCristian Pallares	echo hppa1.1-stratus-sysv4
1220189777a2SCristian Pallares	exit ;;
1221189777a2SCristian Pallares    *:*:*:FTX*)
1222189777a2SCristian Pallares	# From [email protected].
1223189777a2SCristian Pallares	echo i860-stratus-sysv4
1224189777a2SCristian Pallares	exit ;;
1225189777a2SCristian Pallares    i*86:VOS:*:*)
1226189777a2SCristian Pallares	# From [email protected].
1227189777a2SCristian Pallares	echo ${UNAME_MACHINE}-stratus-vos
1228189777a2SCristian Pallares	exit ;;
1229189777a2SCristian Pallares    *:VOS:*:*)
1230189777a2SCristian Pallares	# From [email protected].
1231189777a2SCristian Pallares	echo hppa1.1-stratus-vos
1232189777a2SCristian Pallares	exit ;;
1233189777a2SCristian Pallares    mc68*:A/UX:*:*)
1234189777a2SCristian Pallares	echo m68k-apple-aux${UNAME_RELEASE}
1235189777a2SCristian Pallares	exit ;;
1236189777a2SCristian Pallares    news*:NEWS-OS:6*:*)
1237189777a2SCristian Pallares	echo mips-sony-newsos6
1238189777a2SCristian Pallares	exit ;;
1239189777a2SCristian Pallares    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1240189777a2SCristian Pallares	if [ -d /usr/nec ]; then
1241189777a2SCristian Pallares		echo mips-nec-sysv${UNAME_RELEASE}
1242189777a2SCristian Pallares	else
1243189777a2SCristian Pallares		echo mips-unknown-sysv${UNAME_RELEASE}
1244189777a2SCristian Pallares	fi
1245189777a2SCristian Pallares	exit ;;
1246189777a2SCristian Pallares    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
1247189777a2SCristian Pallares	echo powerpc-be-beos
1248189777a2SCristian Pallares	exit ;;
1249189777a2SCristian Pallares    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
1250189777a2SCristian Pallares	echo powerpc-apple-beos
1251189777a2SCristian Pallares	exit ;;
1252189777a2SCristian Pallares    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
1253189777a2SCristian Pallares	echo i586-pc-beos
1254189777a2SCristian Pallares	exit ;;
1255189777a2SCristian Pallares    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
1256189777a2SCristian Pallares	echo i586-pc-haiku
1257189777a2SCristian Pallares	exit ;;
12581f13f311SSkyrpex    x86_64:Haiku:*:*)
12591f13f311SSkyrpex	echo x86_64-unknown-haiku
12601f13f311SSkyrpex	exit ;;
1261189777a2SCristian Pallares    SX-4:SUPER-UX:*:*)
1262189777a2SCristian Pallares	echo sx4-nec-superux${UNAME_RELEASE}
1263189777a2SCristian Pallares	exit ;;
1264189777a2SCristian Pallares    SX-5:SUPER-UX:*:*)
1265189777a2SCristian Pallares	echo sx5-nec-superux${UNAME_RELEASE}
1266189777a2SCristian Pallares	exit ;;
1267189777a2SCristian Pallares    SX-6:SUPER-UX:*:*)
1268189777a2SCristian Pallares	echo sx6-nec-superux${UNAME_RELEASE}
1269189777a2SCristian Pallares	exit ;;
1270189777a2SCristian Pallares    SX-7:SUPER-UX:*:*)
1271189777a2SCristian Pallares	echo sx7-nec-superux${UNAME_RELEASE}
1272189777a2SCristian Pallares	exit ;;
1273189777a2SCristian Pallares    SX-8:SUPER-UX:*:*)
1274189777a2SCristian Pallares	echo sx8-nec-superux${UNAME_RELEASE}
1275189777a2SCristian Pallares	exit ;;
1276189777a2SCristian Pallares    SX-8R:SUPER-UX:*:*)
1277189777a2SCristian Pallares	echo sx8r-nec-superux${UNAME_RELEASE}
1278189777a2SCristian Pallares	exit ;;
1279*b3fce824SCristian Pallarés    SX-ACE:SUPER-UX:*:*)
1280*b3fce824SCristian Pallarés	echo sxace-nec-superux${UNAME_RELEASE}
1281*b3fce824SCristian Pallarés	exit ;;
1282189777a2SCristian Pallares    Power*:Rhapsody:*:*)
1283189777a2SCristian Pallares	echo powerpc-apple-rhapsody${UNAME_RELEASE}
1284189777a2SCristian Pallares	exit ;;
1285189777a2SCristian Pallares    *:Rhapsody:*:*)
1286189777a2SCristian Pallares	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
1287189777a2SCristian Pallares	exit ;;
1288189777a2SCristian Pallares    *:Darwin:*:*)
1289189777a2SCristian Pallares	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
12901f13f311SSkyrpex	eval $set_cc_for_build
12911f13f311SSkyrpex	if test "$UNAME_PROCESSOR" = unknown ; then
12921f13f311SSkyrpex	    UNAME_PROCESSOR=powerpc
12931f13f311SSkyrpex	fi
12941f13f311SSkyrpex	if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
1295*b3fce824SCristian Pallarés	    if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
12961f13f311SSkyrpex		if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
1297*b3fce824SCristian Pallarés		    (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
12981f13f311SSkyrpex		    grep IS_64BIT_ARCH >/dev/null
12991f13f311SSkyrpex		then
1300189777a2SCristian Pallares		    case $UNAME_PROCESSOR in
13011f13f311SSkyrpex			i386) UNAME_PROCESSOR=x86_64 ;;
13021f13f311SSkyrpex			powerpc) UNAME_PROCESSOR=powerpc64 ;;
1303189777a2SCristian Pallares		    esac
13041f13f311SSkyrpex		fi
13051f13f311SSkyrpex	    fi
13061f13f311SSkyrpex	elif test "$UNAME_PROCESSOR" = i386 ; then
13071f13f311SSkyrpex	    # Avoid executing cc on OS X 10.9, as it ships with a stub
13081f13f311SSkyrpex	    # that puts up a graphical alert prompting to install
13091f13f311SSkyrpex	    # developer tools.  Any system running Mac OS X 10.7 or
13101f13f311SSkyrpex	    # later (Darwin 11 and later) is required to have a 64-bit
13111f13f311SSkyrpex	    # processor. This is not true of the ARM version of Darwin
13121f13f311SSkyrpex	    # that Apple uses in portable devices.
13131f13f311SSkyrpex	    UNAME_PROCESSOR=x86_64
13141f13f311SSkyrpex	fi
1315189777a2SCristian Pallares	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
1316189777a2SCristian Pallares	exit ;;
1317189777a2SCristian Pallares    *:procnto*:*:* | *:QNX:[0123456789]*:*)
1318189777a2SCristian Pallares	UNAME_PROCESSOR=`uname -p`
1319*b3fce824SCristian Pallarés	if test "$UNAME_PROCESSOR" = x86; then
1320189777a2SCristian Pallares		UNAME_PROCESSOR=i386
1321189777a2SCristian Pallares		UNAME_MACHINE=pc
1322189777a2SCristian Pallares	fi
1323189777a2SCristian Pallares	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
1324189777a2SCristian Pallares	exit ;;
1325189777a2SCristian Pallares    *:QNX:*:4*)
1326189777a2SCristian Pallares	echo i386-pc-qnx
1327189777a2SCristian Pallares	exit ;;
13281f13f311SSkyrpex    NEO-?:NONSTOP_KERNEL:*:*)
13291f13f311SSkyrpex	echo neo-tandem-nsk${UNAME_RELEASE}
13301f13f311SSkyrpex	exit ;;
13311f13f311SSkyrpex    NSE-*:NONSTOP_KERNEL:*:*)
1332189777a2SCristian Pallares	echo nse-tandem-nsk${UNAME_RELEASE}
1333189777a2SCristian Pallares	exit ;;
1334189777a2SCristian Pallares    NSR-?:NONSTOP_KERNEL:*:*)
1335189777a2SCristian Pallares	echo nsr-tandem-nsk${UNAME_RELEASE}
1336189777a2SCristian Pallares	exit ;;
1337189777a2SCristian Pallares    *:NonStop-UX:*:*)
1338189777a2SCristian Pallares	echo mips-compaq-nonstopux
1339189777a2SCristian Pallares	exit ;;
1340189777a2SCristian Pallares    BS2000:POSIX*:*:*)
1341189777a2SCristian Pallares	echo bs2000-siemens-sysv
1342189777a2SCristian Pallares	exit ;;
1343189777a2SCristian Pallares    DS/*:UNIX_System_V:*:*)
1344189777a2SCristian Pallares	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
1345189777a2SCristian Pallares	exit ;;
1346189777a2SCristian Pallares    *:Plan9:*:*)
1347189777a2SCristian Pallares	# "uname -m" is not consistent, so use $cputype instead. 386
1348189777a2SCristian Pallares	# is converted to i386 for consistency with other x86
1349189777a2SCristian Pallares	# operating systems.
1350*b3fce824SCristian Pallarés	if test "$cputype" = 386; then
1351189777a2SCristian Pallares	    UNAME_MACHINE=i386
1352189777a2SCristian Pallares	else
1353189777a2SCristian Pallares	    UNAME_MACHINE="$cputype"
1354189777a2SCristian Pallares	fi
1355189777a2SCristian Pallares	echo ${UNAME_MACHINE}-unknown-plan9
1356189777a2SCristian Pallares	exit ;;
1357189777a2SCristian Pallares    *:TOPS-10:*:*)
1358189777a2SCristian Pallares	echo pdp10-unknown-tops10
1359189777a2SCristian Pallares	exit ;;
1360189777a2SCristian Pallares    *:TENEX:*:*)
1361189777a2SCristian Pallares	echo pdp10-unknown-tenex
1362189777a2SCristian Pallares	exit ;;
1363189777a2SCristian Pallares    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1364189777a2SCristian Pallares	echo pdp10-dec-tops20
1365189777a2SCristian Pallares	exit ;;
1366189777a2SCristian Pallares    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1367189777a2SCristian Pallares	echo pdp10-xkl-tops20
1368189777a2SCristian Pallares	exit ;;
1369189777a2SCristian Pallares    *:TOPS-20:*:*)
1370189777a2SCristian Pallares	echo pdp10-unknown-tops20
1371189777a2SCristian Pallares	exit ;;
1372189777a2SCristian Pallares    *:ITS:*:*)
1373189777a2SCristian Pallares	echo pdp10-unknown-its
1374189777a2SCristian Pallares	exit ;;
1375189777a2SCristian Pallares    SEI:*:*:SEIUX)
1376189777a2SCristian Pallares	echo mips-sei-seiux${UNAME_RELEASE}
1377189777a2SCristian Pallares	exit ;;
1378189777a2SCristian Pallares    *:DragonFly:*:*)
1379189777a2SCristian Pallares	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
1380189777a2SCristian Pallares	exit ;;
1381189777a2SCristian Pallares    *:*VMS:*:*)
1382189777a2SCristian Pallares	UNAME_MACHINE=`(uname -p) 2>/dev/null`
1383189777a2SCristian Pallares	case "${UNAME_MACHINE}" in
1384189777a2SCristian Pallares	    A*) echo alpha-dec-vms ; exit ;;
1385189777a2SCristian Pallares	    I*) echo ia64-dec-vms ; exit ;;
1386189777a2SCristian Pallares	    V*) echo vax-dec-vms ; exit ;;
1387189777a2SCristian Pallares	esac ;;
1388189777a2SCristian Pallares    *:XENIX:*:SysV)
1389189777a2SCristian Pallares	echo i386-pc-xenix
1390189777a2SCristian Pallares	exit ;;
1391189777a2SCristian Pallares    i*86:skyos:*:*)
1392*b3fce824SCristian Pallarés	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE} | sed -e 's/ .*$//'`
1393189777a2SCristian Pallares	exit ;;
1394189777a2SCristian Pallares    i*86:rdos:*:*)
1395189777a2SCristian Pallares	echo ${UNAME_MACHINE}-pc-rdos
1396189777a2SCristian Pallares	exit ;;
1397189777a2SCristian Pallares    i*86:AROS:*:*)
1398189777a2SCristian Pallares	echo ${UNAME_MACHINE}-pc-aros
1399189777a2SCristian Pallares	exit ;;
14001f13f311SSkyrpex    x86_64:VMkernel:*:*)
14011f13f311SSkyrpex	echo ${UNAME_MACHINE}-unknown-esx
1402189777a2SCristian Pallares	exit ;;
1403*b3fce824SCristian Pallarés    amd64:Isilon\ OneFS:*:*)
1404*b3fce824SCristian Pallarés	echo x86_64-unknown-onefs
1405*b3fce824SCristian Pallarés	exit ;;
1406189777a2SCristian Pallaresesac
1407189777a2SCristian Pallares
1408189777a2SCristian Pallarescat >&2 <<EOF
1409189777a2SCristian Pallares$0: unable to guess system type
1410189777a2SCristian Pallares
1411189777a2SCristian PallaresThis script, last modified $timestamp, has failed to recognize
1412189777a2SCristian Pallaresthe operating system you are using. It is advised that you
1413189777a2SCristian Pallaresdownload the most up to date version of the config scripts from
1414189777a2SCristian Pallares
1415*b3fce824SCristian Pallarés  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
1416189777a2SCristian Pallaresand
1417*b3fce824SCristian Pallarés  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
1418189777a2SCristian Pallares
1419189777a2SCristian PallaresIf the version you run ($0) is already up to date, please
1420189777a2SCristian Pallaressend the following data and any information you think might be
1421189777a2SCristian Pallarespertinent to <[email protected]> in order to provide the needed
1422189777a2SCristian Pallaresinformation to handle your system.
1423189777a2SCristian Pallares
1424189777a2SCristian Pallaresconfig.guess timestamp = $timestamp
1425189777a2SCristian Pallares
1426189777a2SCristian Pallaresuname -m = `(uname -m) 2>/dev/null || echo unknown`
1427189777a2SCristian Pallaresuname -r = `(uname -r) 2>/dev/null || echo unknown`
1428189777a2SCristian Pallaresuname -s = `(uname -s) 2>/dev/null || echo unknown`
1429189777a2SCristian Pallaresuname -v = `(uname -v) 2>/dev/null || echo unknown`
1430189777a2SCristian Pallares
1431189777a2SCristian Pallares/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1432189777a2SCristian Pallares/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
1433189777a2SCristian Pallares
1434189777a2SCristian Pallareshostinfo               = `(hostinfo) 2>/dev/null`
1435189777a2SCristian Pallares/bin/universe          = `(/bin/universe) 2>/dev/null`
1436189777a2SCristian Pallares/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
1437189777a2SCristian Pallares/bin/arch              = `(/bin/arch) 2>/dev/null`
1438189777a2SCristian Pallares/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
1439189777a2SCristian Pallares/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1440189777a2SCristian Pallares
1441189777a2SCristian PallaresUNAME_MACHINE = ${UNAME_MACHINE}
1442189777a2SCristian PallaresUNAME_RELEASE = ${UNAME_RELEASE}
1443189777a2SCristian PallaresUNAME_SYSTEM  = ${UNAME_SYSTEM}
1444189777a2SCristian PallaresUNAME_VERSION = ${UNAME_VERSION}
1445189777a2SCristian PallaresEOF
1446189777a2SCristian Pallares
1447189777a2SCristian Pallaresexit 1
1448189777a2SCristian Pallares
1449189777a2SCristian Pallares# Local variables:
1450189777a2SCristian Pallares# eval: (add-hook 'write-file-hooks 'time-stamp)
1451189777a2SCristian Pallares# time-stamp-start: "timestamp='"
1452189777a2SCristian Pallares# time-stamp-format: "%:y-%02m-%02d"
1453189777a2SCristian Pallares# time-stamp-end: "'"
1454189777a2SCristian Pallares# End:
1455