config.guess 43.2 KB
Newer Older
eg's avatar
eg committed
1 2
#! /bin/sh
# Attempt to guess a canonical system name.
3
#   Copyright 1992-2017 Free Software Foundation, Inc.
eg's avatar
eg committed
4

5
timestamp='2017-05-27'
eg's avatar
eg committed
6 7 8

# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
9
# the Free Software Foundation; either version 3 of the License, or
eg's avatar
eg committed
10 11 12 13 14 15 16 17
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
18
# along with this program; if not, see <http://www.gnu.org/licenses/>.
eg's avatar
eg committed
19 20 21 22
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
23 24 25
# the same distribution terms that you use for the rest of that
# program.  This Exception is an additional permission under section 7
# of the GNU General Public License, version 3 ("GPLv3").
eg's avatar
eg committed
26
#
27
# Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
eg's avatar
eg committed
28
#
29 30 31 32 33
# You can get the latest version of this script from:
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
#
# Please send patches to <config-patches@gnu.org>.

eg's avatar
eg committed
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52

me=`echo "$0" | sed -e 's,.*/,,'`

usage="\
Usage: $0 [OPTION]

Output the configuration name of the system \`$me' is run on.

Operation modes:
  -h, --help         print this help, then exit
  -t, --time-stamp   print date of last modification, then exit
  -v, --version      print version number, then exit

Report bugs and patches to <config-patches@gnu.org>."

version="\
GNU config.guess ($timestamp)

Originally written by Per Bothner.
53
Copyright 1992-2017 Free Software Foundation, Inc.
eg's avatar
eg committed
54 55 56 57 58 59 60 61 62 63 64

This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."

help="
Try \`$me --help' for more information."

# Parse command line
while test $# -gt 0 ; do
  case $1 in
    --time-stamp | --time* | -t )
65
       echo "$timestamp" ; exit ;;
eg's avatar
eg committed
66
    --version | -v )
67
       echo "$version" ; exit ;;
eg's avatar
eg committed
68
    --help | --h* | -h )
69
       echo "$usage"; exit ;;
eg's avatar
eg committed
70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102
    -- )     # Stop option processing
       shift; break ;;
    - )	# Use stdin as input.
       break ;;
    -* )
       echo "$me: invalid option $1$help" >&2
       exit 1 ;;
    * )
       break ;;
  esac
done

if test $# != 0; then
  echo "$me: too many arguments$help" >&2
  exit 1
fi

trap 'exit 1' 1 2 15

# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
# compiler to aid in system detection is discouraged as it requires
# temporary files to be created and, as you can see below, it is a
# headache to deal with in a portable fashion.

# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
# use `HOST_CC' if defined, but it is deprecated.

# Portable tmp directory creation inspired by the Autoconf team.

set_cc_for_build='
trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
: ${TMPDIR=/tmp} ;
103
 { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
eg's avatar
eg committed
104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121
 { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
 { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
 { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
dummy=$tmp/dummy ;
tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
case $CC_FOR_BUILD,$HOST_CC,$CC in
 ,,)    echo "int x;" > $dummy.c ;
	for c in cc gcc c89 c99 ; do
	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
	     CC_FOR_BUILD="$c"; break ;
	  fi ;
	done ;
	if test x"$CC_FOR_BUILD" = x ; then
	  CC_FOR_BUILD=no_compiler_found ;
	fi
	;;
 ,,*)   CC_FOR_BUILD=$CC ;;
 ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
122
esac ; set_cc_for_build= ;'
eg's avatar
eg committed
123 124 125 126 127 128 129 130 131 132 133 134

# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
# (ghazi@noc.rutgers.edu 1994-08-24)
if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
	PATH=$PATH:/.attbin ; export PATH
fi

UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown

135 136 137 138 139 140
case "${UNAME_SYSTEM}" in
Linux|GNU|GNU/*)
	# If the system lacks a compiler, then just pick glibc.
	# We could probably try harder.
	LIBC=gnu

141
	eval $set_cc_for_build
142
	cat <<-EOF > $dummy.c
143
	#include <features.h>
144
	#if defined(__UCLIBC__)
145
	LIBC=uclibc
146 147
	#elif defined(__dietlibc__)
	LIBC=dietlibc
148 149 150
	#else
	LIBC=gnu
	#endif
151 152 153 154
	EOF
	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
	;;
esac
155

eg's avatar
eg committed
156 157 158 159 160
# Note: order is significant - the case branches are not exclusive.

case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
    *:NetBSD:*:*)
	# NetBSD (nbsd) targets should (where applicable) match one or
161
	# more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
eg's avatar
eg committed
162 163 164 165 166 167 168 169 170
	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
	# switched to ELF, *-*-netbsd* would select the old
	# object file format.  This provides both forward
	# compatibility and a consistent mechanism for selecting the
	# object file format.
	#
	# Note: NetBSD doesn't particularly care about the vendor
	# portion of the name.  We always set it to "unknown".
	sysctl="sysctl -n hw.machine_arch"
171 172 173 174
	UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
	    /sbin/$sysctl 2>/dev/null || \
	    /usr/sbin/$sysctl 2>/dev/null || \
	    echo unknown)`
eg's avatar
eg committed
175 176 177 178 179
	case "${UNAME_MACHINE_ARCH}" in
	    armeb) machine=armeb-unknown ;;
	    arm*) machine=arm-unknown ;;
	    sh3el) machine=shl-unknown ;;
	    sh3eb) machine=sh-unknown ;;
180
	    sh5el) machine=sh5le-unknown ;;
181 182 183 184 185
	    earmv*)
		arch=`echo ${UNAME_MACHINE_ARCH} | sed -e 's,^e\(armv[0-9]\).*$,\1,'`
		endian=`echo ${UNAME_MACHINE_ARCH} | sed -ne 's,^.*\(eb\)$,\1,p'`
		machine=${arch}${endian}-unknown
		;;
eg's avatar
eg committed
186 187 188
	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
	esac
	# The Operating System including object format, if it has switched
189
	# to ELF recently (or will in the future) and ABI.
eg's avatar
eg committed
190
	case "${UNAME_MACHINE_ARCH}" in
191 192 193
	    earm*)
		os=netbsdelf
		;;
eg's avatar
eg committed
194 195 196
	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
		eval $set_cc_for_build
		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
197
			| grep -q __ELF__
eg's avatar
eg committed
198 199 200 201 202 203 204 205 206
		then
		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
		    # Return netbsd for either.  FIX?
		    os=netbsd
		else
		    os=netbsdelf
		fi
		;;
	    *)
207 208 209 210 211 212 213 214
		os=netbsd
		;;
	esac
	# Determine ABI tags.
	case "${UNAME_MACHINE_ARCH}" in
	    earm*)
		expr='s/^earmv[0-9]/-eabi/;s/eb$//'
		abi=`echo ${UNAME_MACHINE_ARCH} | sed -e "$expr"`
eg's avatar
eg committed
215 216 217 218 219 220 221 222 223 224 225 226
		;;
	esac
	# The OS release
	# Debian GNU/NetBSD machines have a different userland, and
	# thus, need a distinct triplet. However, they do not need
	# kernel version information, so it can be replaced with a
	# suitable tag, in the style of linux-gnu.
	case "${UNAME_VERSION}" in
	    Debian*)
		release='-gnu'
		;;
	    *)
227
		release=`echo ${UNAME_RELEASE} | sed -e 's/[-_].*//' | cut -d. -f1,2`
eg's avatar
eg committed
228 229 230 231 232
		;;
	esac
	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
	# contains redundant information, the shorter form:
	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
233 234 235 236 237
	echo "${machine}-${os}${release}${abi}"
	exit ;;
    *:Bitrig:*:*)
	UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
	echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
238
	exit ;;
eg's avatar
eg committed
239
    *:OpenBSD:*:*)
240 241 242
	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
	exit ;;
243 244 245 246
    *:LibertyBSD:*:*)
	UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
	echo ${UNAME_MACHINE_ARCH}-unknown-libertybsd${UNAME_RELEASE}
	exit ;;
eg's avatar
eg committed
247 248
    *:ekkoBSD:*:*)
	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
249 250 251 252
	exit ;;
    *:SolidBSD:*:*)
	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
	exit ;;
eg's avatar
eg committed
253
    macppc:MirBSD:*:*)
254 255
	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
	exit ;;
eg's avatar
eg committed
256 257
    *:MirBSD:*:*)
	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
258
	exit ;;
259 260 261
    *:Sortix:*:*)
	echo ${UNAME_MACHINE}-unknown-sortix
	exit ;;
eg's avatar
eg committed
262 263 264 265 266 267
    alpha:OSF1:*:*)
	case $UNAME_RELEASE in
	*4.0)
		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
		;;
	*5.*)
268
		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
eg's avatar
eg committed
269 270 271 272 273 274 275 276 277
		;;
	esac
	# According to Compaq, /usr/sbin/psrinfo has been available on
	# OSF/1 and Tru64 systems produced since 1995.  I hope that
	# covers most systems running today.  This code pipes the CPU
	# types through head -n 1, so we only detect the type of CPU 0.
	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
	case "$ALPHA_CPU_TYPE" in
	    "EV4 (21064)")
278
		UNAME_MACHINE=alpha ;;
eg's avatar
eg committed
279
	    "EV4.5 (21064)")
280
		UNAME_MACHINE=alpha ;;
eg's avatar
eg committed
281
	    "LCA4 (21066/21068)")
282
		UNAME_MACHINE=alpha ;;
eg's avatar
eg committed
283
	    "EV5 (21164)")
284
		UNAME_MACHINE=alphaev5 ;;
eg's avatar
eg committed
285
	    "EV5.6 (21164A)")
286
		UNAME_MACHINE=alphaev56 ;;
eg's avatar
eg committed
287
	    "EV5.6 (21164PC)")
288
		UNAME_MACHINE=alphapca56 ;;
eg's avatar
eg committed
289
	    "EV5.7 (21164PC)")
290
		UNAME_MACHINE=alphapca57 ;;
eg's avatar
eg committed
291
	    "EV6 (21264)")
292
		UNAME_MACHINE=alphaev6 ;;
eg's avatar
eg committed
293
	    "EV6.7 (21264A)")
294
		UNAME_MACHINE=alphaev67 ;;
eg's avatar
eg committed
295
	    "EV6.8CB (21264C)")
296
		UNAME_MACHINE=alphaev68 ;;
eg's avatar
eg committed
297
	    "EV6.8AL (21264B)")
298
		UNAME_MACHINE=alphaev68 ;;
eg's avatar
eg committed
299
	    "EV6.8CX (21264D)")
300
		UNAME_MACHINE=alphaev68 ;;
eg's avatar
eg committed
301
	    "EV6.9A (21264/EV69A)")
302
		UNAME_MACHINE=alphaev69 ;;
eg's avatar
eg committed
303
	    "EV7 (21364)")
304
		UNAME_MACHINE=alphaev7 ;;
eg's avatar
eg committed
305
	    "EV7.9 (21364A)")
306
		UNAME_MACHINE=alphaev79 ;;
eg's avatar
eg committed
307 308 309 310 311 312
	esac
	# A Pn.n version is a patched version.
	# A Vn.n version is a released version.
	# A Tn.n version is a released field test version.
	# A Xn.n version is an unreleased experimental baselevel.
	# 1.2 uses "1.2" for uname -r.
313 314 315 316 317
	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
	# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
	exitcode=$?
	trap '' 0
	exit $exitcode ;;
eg's avatar
eg committed
318 319 320 321 322
    Alpha\ *:Windows_NT*:*)
	# How do we know it's Interix rather than the generic POSIX subsystem?
	# Should we change UNAME_MACHINE based on the output of uname instead
	# of the specific Alpha model?
	echo alpha-pc-interix
323
	exit ;;
eg's avatar
eg committed
324 325
    21064:Windows_NT:50:3)
	echo alpha-dec-winnt3.5
326
	exit ;;
eg's avatar
eg committed
327 328
    Amiga*:UNIX_System_V:4.0:*)
	echo m68k-unknown-sysv4
329
	exit ;;
eg's avatar
eg committed
330 331
    *:[Aa]miga[Oo][Ss]:*:*)
	echo ${UNAME_MACHINE}-unknown-amigaos
332
	exit ;;
eg's avatar
eg committed
333 334
    *:[Mm]orph[Oo][Ss]:*:*)
	echo ${UNAME_MACHINE}-unknown-morphos
335
	exit ;;
eg's avatar
eg committed
336 337
    *:OS/390:*:*)
	echo i370-ibm-openedition
338 339 340 341
	exit ;;
    *:z/VM:*:*)
	echo s390-ibm-zvmoe
	exit ;;
eg's avatar
eg committed
342
    *:OS400:*:*)
343
	echo powerpc-ibm-os400
344
	exit ;;
eg's avatar
eg committed
345 346
    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
	echo arm-acorn-riscix${UNAME_RELEASE}
347
	exit ;;
348
    arm*:riscos:*:*|arm*:RISCOS:*:*)
349 350
	echo arm-unknown-riscos
	exit ;;
eg's avatar
eg committed
351 352
    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
	echo hppa1.1-hitachi-hiuxmpp
353
	exit ;;
eg's avatar
eg committed
354 355 356 357 358 359 360
    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
	if test "`(/bin/universe) 2>/dev/null`" = att ; then
		echo pyramid-pyramid-sysv3
	else
		echo pyramid-pyramid-bsd
	fi
361
	exit ;;
eg's avatar
eg committed
362 363
    NILE*:*:*:dcosx)
	echo pyramid-pyramid-svr4
364
	exit ;;
eg's avatar
eg committed
365 366
    DRS?6000:unix:4.0:6*)
	echo sparc-icl-nx6
367 368
	exit ;;
    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
eg's avatar
eg committed
369
	case `/usr/bin/uname -p` in
370
	    sparc) echo sparc-icl-nx7; exit ;;
eg's avatar
eg committed
371
	esac ;;
372 373 374
    s390x:SunOS:*:*)
	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
	exit ;;
eg's avatar
eg committed
375 376
    sun4H:SunOS:5.*:*)
	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
377
	exit ;;
eg's avatar
eg committed
378 379
    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
380
	exit ;;
381 382 383
    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
	echo i386-pc-auroraux${UNAME_RELEASE}
	exit ;;
384
    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
385 386 387 388 389 390 391 392 393 394 395 396 397 398
	eval $set_cc_for_build
	SUN_ARCH=i386
	# If there is a compiler, see if it is configured for 64-bit objects.
	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
	# This test works for both compilers.
	if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
		(CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
		grep IS_64BIT_ARCH >/dev/null
	    then
		SUN_ARCH=x86_64
	    fi
	fi
	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
399
	exit ;;
eg's avatar
eg committed
400 401 402 403 404
    sun4*:SunOS:6*:*)
	# According to config.sub, this is the proper way to canonicalize
	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
	# it's likely to be more like Solaris than SunOS4.
	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
405
	exit ;;
eg's avatar
eg committed
406 407 408 409 410 411 412 413
    sun4*:SunOS:*:*)
	case "`/usr/bin/arch -k`" in
	    Series*|S4*)
		UNAME_RELEASE=`uname -v`
		;;
	esac
	# Japanese Language versions have a version number like `4.1.3-JL'.
	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
414
	exit ;;
eg's avatar
eg committed
415 416
    sun3*:SunOS:*:*)
	echo m68k-sun-sunos${UNAME_RELEASE}
417
	exit ;;
eg's avatar
eg committed
418 419
    sun*:*:4.2BSD:*)
	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
420
	test "x${UNAME_RELEASE}" = x && UNAME_RELEASE=3
eg's avatar
eg committed
421 422 423 424 425 426 427 428
	case "`/bin/arch`" in
	    sun3)
		echo m68k-sun-sunos${UNAME_RELEASE}
		;;
	    sun4)
		echo sparc-sun-sunos${UNAME_RELEASE}
		;;
	esac
429
	exit ;;
eg's avatar
eg committed
430 431
    aushp:SunOS:*:*)
	echo sparc-auspex-sunos${UNAME_RELEASE}
432
	exit ;;
eg's avatar
eg committed
433 434 435 436 437 438 439 440 441
    # The situation for MiNT is a little confusing.  The machine name
    # can be virtually everything (everything which is not
    # "atarist" or "atariste" at least should have a processor
    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
    # to the lowercase version "mint" (or "freemint").  Finally
    # the system name "TOS" denotes a system which is actually not
    # MiNT.  But MiNT is downward compatible to TOS, so this should
    # be no problem.
    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
442
	echo m68k-atari-mint${UNAME_RELEASE}
443
	exit ;;
eg's avatar
eg committed
444 445
    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
	echo m68k-atari-mint${UNAME_RELEASE}
446
	exit ;;
eg's avatar
eg committed
447
    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
448
	echo m68k-atari-mint${UNAME_RELEASE}
449
	exit ;;
eg's avatar
eg committed
450
    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
451 452
	echo m68k-milan-mint${UNAME_RELEASE}
	exit ;;
eg's avatar
eg committed
453
    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
454 455
	echo m68k-hades-mint${UNAME_RELEASE}
	exit ;;
eg's avatar
eg committed
456
    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
457 458
	echo m68k-unknown-mint${UNAME_RELEASE}
	exit ;;
eg's avatar
eg committed
459 460
    m68k:machten:*:*)
	echo m68k-apple-machten${UNAME_RELEASE}
461
	exit ;;
eg's avatar
eg committed
462 463
    powerpc:machten:*:*)
	echo powerpc-apple-machten${UNAME_RELEASE}
464
	exit ;;
eg's avatar
eg committed
465 466
    RISC*:Mach:*:*)
	echo mips-dec-mach_bsd4.3
467
	exit ;;
eg's avatar
eg committed
468 469
    RISC*:ULTRIX:*:*)
	echo mips-dec-ultrix${UNAME_RELEASE}
470
	exit ;;
eg's avatar
eg committed
471 472
    VAX*:ULTRIX*:*:*)
	echo vax-dec-ultrix${UNAME_RELEASE}
473
	exit ;;
eg's avatar
eg committed
474 475
    2020:CLIX:*:* | 2430:CLIX:*:*)
	echo clipper-intergraph-clix${UNAME_RELEASE}
476
	exit ;;
eg's avatar
eg committed
477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499
    mips:*:*:UMIPS | mips:*:*:RISCos)
	eval $set_cc_for_build
	sed 's/^	//' << EOF >$dummy.c
#ifdef __cplusplus
#include <stdio.h>  /* for printf() prototype */
	int main (int argc, char *argv[]) {
#else
	int main (argc, argv) int argc; char *argv[]; {
#endif
	#if defined (host_mips) && defined (MIPSEB)
	#if defined (SYSTYPE_SYSV)
	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
	#endif
	#if defined (SYSTYPE_SVR4)
	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
	#endif
	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
	#endif
	#endif
	  exit (-1);
	}
EOF
500 501 502 503
	$CC_FOR_BUILD -o $dummy $dummy.c &&
	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
	  SYSTEM_NAME=`$dummy $dummyarg` &&
	    { echo "$SYSTEM_NAME"; exit; }
eg's avatar
eg committed
504
	echo mips-mips-riscos${UNAME_RELEASE}
505
	exit ;;
eg's avatar
eg committed
506 507
    Motorola:PowerMAX_OS:*:*)
	echo powerpc-motorola-powermax
508
	exit ;;
eg's avatar
eg committed
509 510
    Motorola:*:4.3:PL8-*)
	echo powerpc-harris-powermax
511
	exit ;;
eg's avatar
eg committed
512 513
    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
	echo powerpc-harris-powermax
514
	exit ;;
eg's avatar
eg committed
515 516
    Night_Hawk:Power_UNIX:*:*)
	echo powerpc-harris-powerunix
517
	exit ;;
eg's avatar
eg committed
518 519
    m88k:CX/UX:7*:*)
	echo m88k-harris-cxux7
520
	exit ;;
eg's avatar
eg committed
521 522
    m88k:*:4*:R4*)
	echo m88k-motorola-sysv4
523
	exit ;;
eg's avatar
eg committed
524 525
    m88k:*:3*:R3*)
	echo m88k-motorola-sysv3
526
	exit ;;
eg's avatar
eg committed
527
    AViiON:dgux:*:*)
528 529
	# DG/UX returns AViiON for all architectures
	UNAME_PROCESSOR=`/usr/bin/uname -p`
eg's avatar
eg committed
530 531 532 533 534 535 536 537 538 539 540 541
	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
	then
	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
	       [ ${TARGET_BINARY_INTERFACE}x = x ]
	    then
		echo m88k-dg-dgux${UNAME_RELEASE}
	    else
		echo m88k-dg-dguxbcs${UNAME_RELEASE}
	    fi
	else
	    echo i586-dg-dgux${UNAME_RELEASE}
	fi
542
	exit ;;
eg's avatar
eg committed
543 544
    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
	echo m88k-dolphin-sysv3
545
	exit ;;
eg's avatar
eg committed
546 547 548
    M88*:*:R3*:*)
	# Delta 88k system running SVR3
	echo m88k-motorola-sysv3
549
	exit ;;
eg's avatar
eg committed
550 551
    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
	echo m88k-tektronix-sysv3
552
	exit ;;
eg's avatar
eg committed
553 554
    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
	echo m68k-tektronix-bsd
555
	exit ;;
eg's avatar
eg committed
556 557
    *:IRIX*:*:*)
	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
558
	exit ;;
eg's avatar
eg committed
559
    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
560 561
	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
eg's avatar
eg committed
562 563
    i*86:AIX:*:*)
	echo i386-ibm-aix
564
	exit ;;
eg's avatar
eg committed
565 566 567 568 569 570 571
    ia64:AIX:*:*)
	if [ -x /usr/bin/oslevel ] ; then
		IBM_REV=`/usr/bin/oslevel`
	else
		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
	fi
	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
572
	exit ;;
eg's avatar
eg committed
573 574 575 576 577 578 579 580 581 582 583 584 585 586
    *:AIX:2:3)
	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
		eval $set_cc_for_build
		sed 's/^		//' << EOF >$dummy.c
		#include <sys/systemcfg.h>

		main()
			{
			if (!__power_pc())
				exit(1);
			puts("powerpc-ibm-aix3.2.5");
			exit(0);
			}
EOF
587 588 589 590 591 592
		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
		then
			echo "$SYSTEM_NAME"
		else
			echo rs6000-ibm-aix3.2.5
		fi
eg's avatar
eg committed
593 594 595 596 597
	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
		echo rs6000-ibm-aix3.2.4
	else
		echo rs6000-ibm-aix3.2
	fi
598
	exit ;;
599
    *:AIX:*:[4567])
eg's avatar
eg committed
600 601 602 603 604 605
	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
		IBM_ARCH=rs6000
	else
		IBM_ARCH=powerpc
	fi
606 607 608
	if [ -x /usr/bin/lslpp ] ; then
		IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |
			   awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
eg's avatar
eg committed
609 610 611 612
	else
		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
	fi
	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
613
	exit ;;
eg's avatar
eg committed
614 615
    *:AIX:*:*)
	echo rs6000-ibm-aix
616
	exit ;;
eg's avatar
eg committed
617 618
    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
	echo romp-ibm-bsd4.4
619
	exit ;;
eg's avatar
eg committed
620 621
    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
622
	exit ;;                             # report: romp-ibm BSD 4.3
eg's avatar
eg committed
623 624
    *:BOSX:*:*)
	echo rs6000-bull-bosx
625
	exit ;;
eg's avatar
eg committed
626 627
    DPX/2?00:B.O.S.:*:*)
	echo m68k-bull-sysv3
628
	exit ;;
eg's avatar
eg committed
629 630
    9000/[34]??:4.3bsd:1.*:*)
	echo m68k-hp-bsd
631
	exit ;;
eg's avatar
eg committed
632 633
    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
	echo m68k-hp-bsd4.4
634
	exit ;;
eg's avatar
eg committed
635 636 637 638 639 640 641 642
    9000/[34678]??:HP-UX:*:*)
	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
	case "${UNAME_MACHINE}" in
	    9000/31? )            HP_ARCH=m68000 ;;
	    9000/[34]?? )         HP_ARCH=m68k ;;
	    9000/[678][0-9][0-9])
		if [ -x /usr/bin/getconf ]; then
		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
643 644 645 646 647 648 649 650 651 652 653
		    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
		    case "${sc_cpu_version}" in
		      523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
		      528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
		      532)                      # CPU_PA_RISC2_0
			case "${sc_kernel_bits}" in
			  32) HP_ARCH=hppa2.0n ;;
			  64) HP_ARCH=hppa2.0w ;;
			  '') HP_ARCH=hppa2.0 ;;   # HP-UX 10.20
			esac ;;
		    esac
eg's avatar
eg committed
654 655 656
		fi
		if [ "${HP_ARCH}" = "" ]; then
		    eval $set_cc_for_build
657
		    sed 's/^		//' << EOF >$dummy.c
eg's avatar
eg committed
658

659 660 661
		#define _HPUX_SOURCE
		#include <stdlib.h>
		#include <unistd.h>
eg's avatar
eg committed
662

663 664 665 666 667 668
		int main ()
		{
		#if defined(_SC_KERNEL_BITS)
		    long bits = sysconf(_SC_KERNEL_BITS);
		#endif
		    long cpu  = sysconf (_SC_CPU_VERSION);
eg's avatar
eg committed
669

670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688
		    switch (cpu)
			{
			case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
			case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
			case CPU_PA_RISC2_0:
		#if defined(_SC_KERNEL_BITS)
			    switch (bits)
				{
				case 64: puts ("hppa2.0w"); break;
				case 32: puts ("hppa2.0n"); break;
				default: puts ("hppa2.0"); break;
				} break;
		#else  /* !defined(_SC_KERNEL_BITS) */
			    puts ("hppa2.0"); break;
		#endif
			default: puts ("hppa1.0"); break;
			}
		    exit (0);
		}
eg's avatar
eg committed
689
EOF
690
		    (CCOPTS="" $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
eg's avatar
eg committed
691 692 693
		    test -z "$HP_ARCH" && HP_ARCH=hppa
		fi ;;
	esac
694
	if [ ${HP_ARCH} = hppa2.0w ]
eg's avatar
eg committed
695
	then
696 697 698 699 700 701 702 703 704 705 706
	    eval $set_cc_for_build

	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
	    # generating 64-bit code.  GNU and HP use different nomenclature:
	    #
	    # $ CC_FOR_BUILD=cc ./config.guess
	    # => hppa2.0w-hp-hpux11.23
	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
	    # => hppa64-hp-hpux11.23

707 708
	    if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) |
		grep -q __LP64__
eg's avatar
eg committed
709
	    then
710
		HP_ARCH=hppa2.0w
eg's avatar
eg committed
711
	    else
712
		HP_ARCH=hppa64
eg's avatar
eg committed
713 714 715
	    fi
	fi
	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
716
	exit ;;
eg's avatar
eg committed
717 718 719
    ia64:HP-UX:*:*)
	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
	echo ia64-hp-hpux${HPUX_REV}
720
	exit ;;
eg's avatar
eg committed
721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747
    3050*:HI-UX:*:*)
	eval $set_cc_for_build
	sed 's/^	//' << EOF >$dummy.c
	#include <unistd.h>
	int
	main ()
	{
	  long cpu = sysconf (_SC_CPU_VERSION);
	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
	     results, however.  */
	  if (CPU_IS_PA_RISC (cpu))
	    {
	      switch (cpu)
		{
		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
		  default: puts ("hppa-hitachi-hiuxwe2"); break;
		}
	    }
	  else if (CPU_IS_HP_MC68K (cpu))
	    puts ("m68k-hitachi-hiuxwe2");
	  else puts ("unknown-hitachi-hiuxwe2");
	  exit (0);
	}
EOF
748 749
	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
		{ echo "$SYSTEM_NAME"; exit; }
eg's avatar
eg committed
750
	echo unknown-hitachi-hiuxwe2
751
	exit ;;
eg's avatar
eg committed
752 753
    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
	echo hppa1.1-hp-bsd
754
	exit ;;
eg's avatar
eg committed
755 756
    9000/8??:4.3bsd:*:*)
	echo hppa1.0-hp-bsd
757
	exit ;;
eg's avatar
eg committed
758 759
    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
	echo hppa1.0-hp-mpeix
760
	exit ;;
eg's avatar
eg committed
761 762
    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
	echo hppa1.1-hp-osf
763
	exit ;;
eg's avatar
eg committed
764 765
    hp8??:OSF1:*:*)
	echo hppa1.0-hp-osf
766
	exit ;;
eg's avatar
eg committed
767 768 769 770 771 772
    i*86:OSF1:*:*)
	if [ -x /usr/sbin/sysversion ] ; then
	    echo ${UNAME_MACHINE}-unknown-osf1mk
	else
	    echo ${UNAME_MACHINE}-unknown-osf1
	fi
773
	exit ;;
eg's avatar
eg committed
774 775
    parisc*:Lites*:*:*)
	echo hppa1.1-hp-lites
776
	exit ;;
eg's avatar
eg committed
777 778
    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
	echo c1-convex-bsd
779
	exit ;;
eg's avatar
eg committed
780 781 782 783 784
    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
	if getsysinfo -f scalar_acc
	then echo c32-convex-bsd
	else echo c2-convex-bsd
	fi
785
	exit ;;
eg's avatar
eg committed
786 787
    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
	echo c34-convex-bsd
788
	exit ;;
eg's avatar
eg committed
789 790
    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
	echo c38-convex-bsd
791
	exit ;;
eg's avatar
eg committed
792 793
    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
	echo c4-convex-bsd
794
	exit ;;
eg's avatar
eg committed
795 796
    CRAY*Y-MP:*:*:*)
	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
797
	exit ;;
eg's avatar
eg committed
798 799 800 801 802
    CRAY*[A-Z]90:*:*:*)
	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
	      -e 's/\.[^.]*$/.X/'
803
	exit ;;
eg's avatar
eg committed
804 805
    CRAY*TS:*:*:*)
	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
806
	exit ;;
eg's avatar
eg committed
807 808
    CRAY*T3E:*:*:*)
	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
809
	exit ;;
eg's avatar
eg committed
810 811
    CRAY*SV1:*:*:*)
	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
812
	exit ;;
eg's avatar
eg committed
813 814
    *:UNICOS/mp:*:*)
	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
815
	exit ;;
eg's avatar
eg committed
816
    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
817 818 819 820 821
	FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
	FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
	FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
	echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
	exit ;;
eg's avatar
eg committed
822
    5000:UNIX_System_V:4.*:*)
823 824 825
	FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
	FUJITSU_REL=`echo ${UNAME_RELEASE} | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`
	echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
826
	exit ;;
eg's avatar
eg committed
827 828
    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
829
	exit ;;
eg's avatar
eg committed
830 831
    sparc*:BSD/OS:*:*)
	echo sparc-unknown-bsdi${UNAME_RELEASE}
832
	exit ;;
eg's avatar
eg committed
833 834
    *:BSD/OS:*:*)
	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
835
	exit ;;
eg's avatar
eg committed
836
    *:FreeBSD:*:*)
837 838
	UNAME_PROCESSOR=`/usr/bin/uname -p`
	case ${UNAME_PROCESSOR} in
839
	    amd64)
840 841 842
		UNAME_PROCESSOR=x86_64 ;;
	    i386)
		UNAME_PROCESSOR=i586 ;;
843
	esac
844
	echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
845
	exit ;;
eg's avatar
eg committed
846 847
    i*:CYGWIN*:*)
	echo ${UNAME_MACHINE}-pc-cygwin
848
	exit ;;
849 850 851
    *:MINGW64*:*)
	echo ${UNAME_MACHINE}-pc-mingw64
	exit ;;
852
    *:MINGW*:*)
eg's avatar
eg committed
853
	echo ${UNAME_MACHINE}-pc-mingw32
854
	exit ;;
855 856 857
    *:MSYS*:*)
	echo ${UNAME_MACHINE}-pc-msys
	exit ;;
858
    i*:windows32*:*)
859 860
	# uname -m includes "-pc" on this system.
	echo ${UNAME_MACHINE}-mingw32
861
	exit ;;
eg's avatar
eg committed
862 863
    i*:PW*:*)
	echo ${UNAME_MACHINE}-pc-pw32
864
	exit ;;
865 866
    *:Interix*:*)
	case ${UNAME_MACHINE} in
867 868 869
	    x86)
		echo i586-pc-interix${UNAME_RELEASE}
		exit ;;
870
	    authenticamd | genuineintel | EM64T)
871 872 873 874 875 876
		echo x86_64-unknown-interix${UNAME_RELEASE}
		exit ;;
	    IA64)
		echo ia64-unknown-interix${UNAME_RELEASE}
		exit ;;
	esac ;;
eg's avatar
eg committed
877 878
    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
	echo i${UNAME_MACHINE}-pc-mks
879
	exit ;;
880 881 882
    8664:Windows_NT:*)
	echo x86_64-pc-mks
	exit ;;
eg's avatar
eg committed
883 884 885 886 887
    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
	# How do we know it's Interix rather than the generic POSIX subsystem?
	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
	# UNAME_MACHINE based on the output of uname instead of i386?
	echo i586-pc-interix
888
	exit ;;
eg's avatar
eg committed
889 890
    i*:UWIN*:*)
	echo ${UNAME_MACHINE}-pc-uwin
891 892 893 894
	exit ;;
    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
	echo x86_64-unknown-cygwin
	exit ;;
eg's avatar
eg committed
895 896
    p*:CYGWIN*:*)
	echo powerpcle-unknown-cygwin
897
	exit ;;
eg's avatar
eg committed
898 899
    prep*:SunOS:5.*:*)
	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
900
	exit ;;
eg's avatar
eg committed
901 902
    *:GNU:*:*)
	# the GNU system
903
	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
904
	exit ;;
eg's avatar
eg committed
905 906
    *:GNU/*:*:*)
	# other systems with GNU libc and userland
907
	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
908
	exit ;;
eg's avatar
eg committed
909 910
    i*86:Minix:*:*)
	echo ${UNAME_MACHINE}-pc-minix
911
	exit ;;
912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935
    aarch64:Linux:*:*)
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
	exit ;;
    aarch64_be:Linux:*:*)
	UNAME_MACHINE=aarch64_be
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
	exit ;;
    alpha:Linux:*:*)
	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
	  EV5)   UNAME_MACHINE=alphaev5 ;;
	  EV56)  UNAME_MACHINE=alphaev56 ;;
	  PCA56) UNAME_MACHINE=alphapca56 ;;
	  PCA57) UNAME_MACHINE=alphapca56 ;;
	  EV6)   UNAME_MACHINE=alphaev6 ;;
	  EV67)  UNAME_MACHINE=alphaev67 ;;
	  EV68*) UNAME_MACHINE=alphaev68 ;;
	esac
	objdump --private-headers /bin/sh | grep -q ld.so.1
	if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
	exit ;;
    arc:Linux:*:* | arceb:Linux:*:*)
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
	exit ;;
eg's avatar
eg committed
936
    arm*:Linux:*:*)
937 938 939 940 941 942
	eval $set_cc_for_build
	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
	    | grep -q __ARM_EABI__
	then
	    echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
	else
943 944 945 946 947 948 949
	    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
		| grep -q __ARM_PCS_VFP
	    then
		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
	    else
		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
	    fi
950
	fi
951 952 953 954
	exit ;;
    avr32*:Linux:*:*)
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
	exit ;;
eg's avatar
eg committed
955
    cris:Linux:*:*)
956
	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
957 958
	exit ;;
    crisv32:Linux:*:*)
959 960 961 962
	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
	exit ;;
    e2k:Linux:*:*)
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
963 964
	exit ;;
    frv:Linux:*:*)
965 966 967 968 969 970 971
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
	exit ;;
    hexagon:Linux:*:*)
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
	exit ;;
    i*86:Linux:*:*)
	echo ${UNAME_MACHINE}-pc-linux-${LIBC}
972
	exit ;;
eg's avatar
eg committed
973
    ia64:Linux:*:*)
974 975
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
	exit ;;
976 977 978
    k1om:Linux:*:*)
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
	exit ;;
eg's avatar
eg committed
979
    m32r*:Linux:*:*)
980 981
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
	exit ;;
eg's avatar
eg committed
982
    m68*:Linux:*:*)
983 984
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
	exit ;;
985
    mips:Linux:*:* | mips64:Linux:*:*)
eg's avatar
eg committed
986 987 988
	eval $set_cc_for_build
	sed 's/^	//' << EOF >$dummy.c
	#undef CPU
989 990
	#undef ${UNAME_MACHINE}
	#undef ${UNAME_MACHINE}el
eg's avatar
eg committed
991
	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
992
	CPU=${UNAME_MACHINE}el
eg's avatar
eg committed
993 994
	#else
	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
995
	CPU=${UNAME_MACHINE}
eg's avatar
eg committed
996 997 998 999 1000
	#else
	CPU=
	#endif
	#endif
EOF
1001
	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
1002
	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
eg's avatar
eg committed
1003
	;;
1004 1005
    mips64el:Linux:*:*)
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1006
	exit ;;
1007 1008
    openrisc*:Linux:*:*)
	echo or1k-unknown-linux-${LIBC}
1009
	exit ;;
1010
    or32:Linux:*:* | or1k*:Linux:*:*)
1011 1012
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
	exit ;;
1013
    padre:Linux:*:*)
1014 1015 1016 1017
	echo sparc-unknown-linux-${LIBC}
	exit ;;
    parisc64:Linux:*:* | hppa64:Linux:*:*)
	echo hppa64-unknown-linux-${LIBC}
1018
	exit ;;
eg's avatar
eg committed
1019 1020 1021
    parisc:Linux:*:* | hppa:Linux:*:*)
	# Look for CPU level
	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
1022 1023 1024
	  PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
	  PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
	  *)    echo hppa-unknown-linux-${LIBC} ;;
eg's avatar
eg committed
1025
	esac
1026
	exit ;;
1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040
    ppc64:Linux:*:*)
	echo powerpc64-unknown-linux-${LIBC}
	exit ;;
    ppc:Linux:*:*)
	echo powerpc-unknown-linux-${LIBC}
	exit ;;
    ppc64le:Linux:*:*)
	echo powerpc64le-unknown-linux-${LIBC}
	exit ;;
    ppcle:Linux:*:*)
	echo powerpcle-unknown-linux-${LIBC}
	exit ;;
    riscv32:Linux:*:* | riscv64:Linux:*:*)
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1041
	exit ;;
eg's avatar
eg committed
1042
    s390:Linux:*:* | s390x:Linux:*:*)
1043
	echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
1044
	exit ;;
eg's avatar
eg committed
1045
    sh64*:Linux:*:*)
1046
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1047
	exit ;;
eg's avatar
eg committed
1048
    sh*:Linux:*:*)
1049 1050
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
	exit ;;
eg's avatar
eg committed
1051
    sparc:Linux:*:* | sparc64:Linux:*:*)
1052 1053
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
	exit ;;
1054 1055 1056
    tile*:Linux:*:*)
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
	exit ;;
1057 1058 1059
    vax:Linux:*:*)
	echo ${UNAME_MACHINE}-dec-linux-${LIBC}
	exit ;;
eg's avatar
eg committed
1060
    x86_64:Linux:*:*)
1061
	echo ${UNAME_MACHINE}-pc-linux-${LIBC}
1062
	exit ;;
1063
    xtensa*:Linux:*:*)
1064
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1065
	exit ;;
eg's avatar
eg committed
1066 1067 1068 1069 1070
    i*86:DYNIX/ptx:4*:*)
	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
	# earlier versions are messed up and put the nodename in both
	# sysname and nodename.
	echo i386-sequent-sysv4
1071
	exit ;;
eg's avatar
eg committed
1072
    i*86:UNIX_SV:4.2MP:2.*)
1073 1074 1075
	# Unixware is an offshoot of SVR4, but it has its own version
	# number series starting with 2...
	# I am not positive that other SVR4 systems won't match this,
eg's avatar
eg committed
1076
	# I just have to hope.  -- rms.
1077
	# Use sysv4.2uw... so that sysv4* matches it.
eg's avatar
eg committed
1078
	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
1079
	exit ;;
eg's avatar
eg committed
1080 1081 1082 1083
    i*86:OS/2:*:*)
	# If we were able to find `uname', then EMX Unix compatibility
	# is probably installed.
	echo ${UNAME_MACHINE}-pc-os2-emx
1084
	exit ;;
eg's avatar
eg committed
1085 1086
    i*86:XTS-300:*:STOP)
	echo ${UNAME_MACHINE}-unknown-stop
1087
	exit ;;
eg's avatar
eg committed
1088 1089
    i*86:atheos:*:*)
	echo ${UNAME_MACHINE}-unknown-atheos
1090 1091
	exit ;;
    i*86:syllable:*:*)
eg's avatar
eg committed
1092
	echo ${UNAME_MACHINE}-pc-syllable
1093
	exit ;;
1094
    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
eg's avatar
eg committed
1095
	echo i386-unknown-lynxos${UNAME_RELEASE}
1096
	exit ;;
eg's avatar
eg committed
1097 1098
    i*86:*DOS:*:*)
	echo ${UNAME_MACHINE}-pc-msdosdjgpp
1099
	exit ;;
eg's avatar
eg committed
1100 1101 1102 1103 1104 1105 1106
    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
	else
		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
	fi
1107 1108
	exit ;;
    i*86:*:5:[678]*)
1109
	# UnixWare 7.x, OpenUNIX and OpenServer 6.
eg's avatar
eg committed
1110 1111 1112 1113 1114 1115
	case `/bin/uname -X | grep "^Machine"` in
	    *486*)	     UNAME_MACHINE=i486 ;;
	    *Pentium)	     UNAME_MACHINE=i586 ;;
	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
	esac
	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
1116
	exit ;;
eg's avatar
eg committed
1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133
    i*86:*:3.2:*)
	if test -f /usr/options/cb.name; then
		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
	elif /bin/uname -X 2>/dev/null >/dev/null ; then
		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
			&& UNAME_MACHINE=i586
		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
			&& UNAME_MACHINE=i686
		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
			&& UNAME_MACHINE=i686
		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
	else
		echo ${UNAME_MACHINE}-pc-sysv32
	fi
1134
	exit ;;
eg's avatar
eg committed
1135 1136
    pc:*:*:*)
	# Left here for compatibility:
1137 1138 1139 1140 1141 1142 1143
	# uname -m prints for DJGPP always 'pc', but it prints nothing about
	# the processor, so we play safe by assuming i586.
	# Note: whatever this is, it MUST be the same as what config.sub
	# prints for the "djgpp" host, or else GDB configure will decide that
	# this is a cross-build.
	echo i586-pc-msdosdjgpp
	exit ;;
eg's avatar
eg committed
1144 1145
    Intel:Mach:3*:*)
	echo i386-pc-mach3
1146
	exit ;;
eg's avatar
eg committed
1147 1148
    paragon:*:*:*)
	echo i860-intel-osf1
1149
	exit ;;
eg's avatar
eg committed
1150 1151 1152 1153 1154 1155
    i860:*:4.*:*) # i860-SVR4
	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
	else # Add other i860-SVR4 vendors below as they are discovered.
	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
	fi
1156
	exit ;;
eg's avatar
eg committed
1157 1158 1159
    mini*:CTIX:SYS*5:*)
	# "miniframe"
	echo m68010-convergent-sysv
1160
	exit ;;
eg's avatar
eg committed
1161 1162
    mc68k:UNIX:SYSTEM5:3.51m)
	echo m68k-convergent-sysv
1163
	exit ;;
eg's avatar
eg committed
1164 1165
    M680?0:D-NIX:5.3:*)
	echo m68k-diab-dnix
1166
	exit ;;
eg's avatar
eg committed
1167
    M68*:*:R3V[5678]*:*)
1168
	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
eg's avatar
eg committed
1169 1170 1171 1172 1173
    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)
	OS_REL=''
	test -r /etc/.relid \
	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1174
	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
eg's avatar
eg committed
1175
	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1176
	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
eg's avatar
eg committed
1177
    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189
	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
	  && { echo i486-ncr-sysv4; exit; } ;;
    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
	OS_REL='.3'
	test -r /etc/.relid \
	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
eg's avatar
eg committed
1190 1191
    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
	echo m68k-unknown-lynxos${UNAME_RELEASE}
1192
	exit ;;
eg's avatar
eg committed
1193 1194
    mc68030:UNIX_System_V:4.*:*)
	echo m68k-atari-sysv4
1195
	exit ;;
eg's avatar
eg committed
1196 1197
    TSUNAMI:LynxOS:2.*:*)
	echo sparc-unknown-lynxos${UNAME_RELEASE}
1198
	exit ;;
eg's avatar
eg committed
1199 1200
    rs6000:LynxOS:2.*:*)
	echo rs6000-unknown-lynxos${UNAME_RELEASE}
1201
	exit ;;
1202
    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
eg's avatar
eg committed
1203
	echo powerpc-unknown-lynxos${UNAME_RELEASE}
1204
	exit ;;
eg's avatar
eg committed
1205 1206
    SM[BE]S:UNIX_SV:*:*)
	echo mips-dde-sysv${UNAME_RELEASE}
1207
	exit ;;
eg's avatar
eg committed
1208 1209
    RM*:ReliantUNIX-*:*:*)
	echo mips-sni-sysv4
1210
	exit ;;
eg's avatar
eg committed
1211 1212
    RM*:SINIX-*:*:*)
	echo mips-sni-sysv4
1213
	exit ;;
eg's avatar
eg committed
1214 1215 1216 1217 1218 1219 1220
    *:SINIX-*:*:*)
	if uname -p 2>/dev/null >/dev/null ; then
		UNAME_MACHINE=`(uname -p) 2>/dev/null`
		echo ${UNAME_MACHINE}-sni-sysv4
	else
		echo ns32k-sni-sysv
	fi
1221
	exit ;;
1222 1223 1224 1225
    PENTIUM:*:4.0*:*)	# Unisys `ClearPath HMP IX 4000' SVR4/MP effort
			# says <Richard.M.Bartel@ccMail.Census.GOV>
	echo i586-unisys-sysv4
	exit ;;
eg's avatar
eg committed
1226 1227 1228 1229
    *:UNIX_System_V:4*:FTX*)
	# From Gerald Hewes <hewes@openmarket.com>.
	# How about differentiating between stratus architectures? -djm
	echo hppa1.1-stratus-sysv4
1230
	exit ;;
eg's avatar
eg committed
1231 1232 1233
    *:*:*:FTX*)
	# From seanf@swdc.stratus.com.
	echo i860-stratus-sysv4
1234 1235 1236 1237 1238
	exit ;;
    i*86:VOS:*:*)
	# From Paul.Green@stratus.com.
	echo ${UNAME_MACHINE}-stratus-vos
	exit ;;
eg's avatar
eg committed
1239 1240 1241
    *:VOS:*:*)
	# From Paul.Green@stratus.com.
	echo hppa1.1-stratus-vos
1242
	exit ;;
eg's avatar
eg committed
1243 1244
    mc68*:A/UX:*:*)
	echo m68k-apple-aux${UNAME_RELEASE}
1245
	exit ;;
eg's avatar
eg committed
1246 1247
    news*:NEWS-OS:6*:*)
	echo mips-sony-newsos6
1248
	exit ;;
eg's avatar
eg committed
1249 1250
    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
	if [ -d /usr/nec ]; then
1251
		echo mips-nec-sysv${UNAME_RELEASE}
eg's avatar
eg committed
1252
	else
1253
		echo mips-unknown-sysv${UNAME_RELEASE}
eg's avatar
eg committed
1254
	fi
1255
	exit ;;
eg's avatar
eg committed
1256 1257
    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
	echo powerpc-be-beos
1258
	exit ;;
eg's avatar
eg committed
1259 1260
    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
	echo powerpc-apple-beos
1261
	exit ;;
eg's avatar
eg committed
1262 1263
    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
	echo i586-pc-beos
1264
	exit ;;
1265 1266 1267
    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
	echo i586-pc-haiku
	exit ;;
1268 1269 1270
    x86_64:Haiku:*:*)
	echo x86_64-unknown-haiku
	exit ;;
eg's avatar
eg committed
1271 1272
    SX-4:SUPER-UX:*:*)
	echo sx4-nec-superux${UNAME_RELEASE}
1273
	exit ;;
eg's avatar
eg committed
1274 1275
    SX-5:SUPER-UX:*:*)
	echo sx5-nec-superux${UNAME_RELEASE}
1276
	exit ;;
eg's avatar
eg committed
1277 1278
    SX-6:SUPER-UX:*:*)
	echo sx6-nec-superux${UNAME_RELEASE}
1279 1280 1281 1282 1283 1284 1285 1286 1287 1288
	exit ;;
    SX-7:SUPER-UX:*:*)
	echo sx7-nec-superux${UNAME_RELEASE}
	exit ;;
    SX-8:SUPER-UX:*:*)
	echo sx8-nec-superux${UNAME_RELEASE}
	exit ;;
    SX-8R:SUPER-UX:*:*)
	echo sx8r-nec-superux${UNAME_RELEASE}
	exit ;;
1289 1290 1291
    SX-ACE:SUPER-UX:*:*)
	echo sxace-nec-superux${UNAME_RELEASE}
	exit ;;
eg's avatar
eg committed
1292 1293
    Power*:Rhapsody:*:*)
	echo powerpc-apple-rhapsody${UNAME_RELEASE}
1294
	exit ;;
eg's avatar
eg committed
1295 1296
    *:Rhapsody:*:*)
	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
1297
	exit ;;
eg's avatar
eg committed
1298
    *:Darwin:*:*)
1299
	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331
	eval $set_cc_for_build
	if test "$UNAME_PROCESSOR" = unknown ; then
	    UNAME_PROCESSOR=powerpc
	fi
	if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
	    if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
		if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
		       (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
		       grep IS_64BIT_ARCH >/dev/null
		then
		    case $UNAME_PROCESSOR in
			i386) UNAME_PROCESSOR=x86_64 ;;
			powerpc) UNAME_PROCESSOR=powerpc64 ;;
		    esac
		fi
		# On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc
		if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \
		       (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
		       grep IS_PPC >/dev/null
		then
		    UNAME_PROCESSOR=powerpc
		fi
	    fi
	elif test "$UNAME_PROCESSOR" = i386 ; then
	    # Avoid executing cc on OS X 10.9, as it ships with a stub
	    # that puts up a graphical alert prompting to install
	    # developer tools.  Any system running Mac OS X 10.7 or
	    # later (Darwin 11 and later) is required to have a 64-bit
	    # processor. This is not true of the ARM version of Darwin
	    # that Apple uses in portable devices.
	    UNAME_PROCESSOR=x86_64
	fi
eg's avatar
eg committed
1332
	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
1333
	exit ;;
eg's avatar
eg committed
1334 1335
    *:procnto*:*:* | *:QNX:[0123456789]*:*)
	UNAME_PROCESSOR=`uname -p`
1336
	if test "$UNAME_PROCESSOR" = x86; then
eg's avatar
eg committed
1337 1338 1339 1340
		UNAME_PROCESSOR=i386
		UNAME_MACHINE=pc
	fi
	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
1341
	exit ;;
eg's avatar
eg committed
1342 1343
    *:QNX:*:4*)
	echo i386-pc-qnx
1344
	exit ;;
1345 1346 1347 1348
    NEO-*:NONSTOP_KERNEL:*:*)
	echo neo-tandem-nsk${UNAME_RELEASE}
	exit ;;
    NSE-*:NONSTOP_KERNEL:*:*)
1349 1350
	echo nse-tandem-nsk${UNAME_RELEASE}
	exit ;;
1351
    NSR-*:NONSTOP_KERNEL:*:*)
eg's avatar
eg committed
1352
	echo nsr-tandem-nsk${UNAME_RELEASE}
1353
	exit ;;
1354 1355 1356
    NSX-*:NONSTOP_KERNEL:*:*)
	echo nsx-tandem-nsk${UNAME_RELEASE}
	exit ;;
eg's avatar
eg committed
1357 1358
    *:NonStop-UX:*:*)
	echo mips-compaq-nonstopux
1359
	exit ;;
eg's avatar
eg committed
1360 1361
    BS2000:POSIX*:*:*)
	echo bs2000-siemens-sysv
1362
	exit ;;