config.guess 32.1 KB
Newer Older
1
#! /bin/sh
2
# Attempt to guess a canonical system name.
3
#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000
4
#   Free Software Foundation, Inc.
Roland McGrath's avatar
Roland McGrath committed
5 6 7 8 9 10 11 12 13 14 15 16 17
#
# 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
# the Free Software Foundation; either version 2 of the License, or
# (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
# along with this program; if not, write to the Free Software
Per Bothner's avatar
Per Bothner committed
18
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 20 21 22 23
#
# 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
# the same distribution terms that you use for the rest of that program.
Roland McGrath's avatar
Roland McGrath committed
24

25
# Written by Per Bothner <bothner@cygnus.com>.
26
# Please send patches to <config-patches@gnu.org>.
Roland McGrath's avatar
Roland McGrath committed
27
#
Jim Blandy's avatar
Jim Blandy committed
28
# This script attempts to guess a canonical system name similar to
Richard Kenner's avatar
Richard Kenner committed
29 30
# config.sub.  If it succeeds, it prints the system name on stdout, and
# exits with 0.  Otherwise, it exits with 1.
Roland McGrath's avatar
Roland McGrath committed
31 32 33 34 35 36 37 38
#
# The plan is that this can be called by configure scripts if you
# don't specify an explicit system type (host/target name).
#
# Only a few systems have been added to this list; please add others
# (but try to keep the structure clean).
#

39 40 41 42 43 44 45 46 47 48 49 50 51 52
# Use $HOST_CC if defined. $CC may point to a cross-compiler
if test x"$CC_FOR_BUILD" = x; then
  if test x"$HOST_CC" != x; then
    CC_FOR_BUILD="$HOST_CC"
  else
    if test x"$CC" != x; then
      CC_FOR_BUILD="$CC"
    else
      CC_FOR_BUILD=cc
    fi
  fi
fi


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

Roland McGrath's avatar
Roland McGrath committed
59 60 61 62 63
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

64 65
dummy=dummy-$$
trap 'rm -f $dummy.c $dummy.o $dummy; exit 1' 1 2 15
Richard Kenner's avatar
Richard Kenner committed
66

Roland McGrath's avatar
Roland McGrath committed
67 68 69
# Note: order is significant - the case branches are not exclusive.

case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
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 103 104 105 106
    *:NetBSD:*:*)
	# Netbsd (nbsd) targets should (where applicable) match one or
	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
	# *-*-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.
	# Determine the machine/vendor (is the vendor relevant).
	case "${UNAME_MACHINE}" in
	    amiga) machine=m68k-cbm ;;
	    arm32) machine=arm-unknown ;;
	    atari*) machine=m68k-atari ;;
	    sun3*) machine=m68k-sun ;;
	    mac68k) machine=m68k-apple ;;
	    macppc) machine=powerpc-apple ;;
	    hp3[0-9][05]) machine=m68k-hp ;;
	    ibmrt|romp-ibm) machine=romp-ibm ;;
	    *) machine=${UNAME_MACHINE}-unknown ;;
	esac
	# The Operating System including object format.
	if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
		| grep __ELF__ >/dev/null
	then
	    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
	    # Return netbsd for either.  FIX?
	    os=netbsd
	else
	    os=netbsdelf
	fi
	# The OS release
	release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
	# contains redundant information, the shorter form:
	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
	echo "${machine}-${os}${release}"
	exit 0 ;;
Per Bothner's avatar
Per Bothner committed
107
    alpha:OSF1:*:*)
108 109 110
	if test $UNAME_RELEASE = "V4.0"; then
		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
	fi
111 112 113
	# 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.
Richard Kenner's avatar
Richard Kenner committed
114
	# 1.2 uses "1.2" for uname -r.
115
	cat <<EOF >$dummy.s
116 117 118 119 120
	.data
\$Lformat:
	.byte 37,100,45,37,120,10,0	# "%d-%x\n"

	.text
121
	.globl main
122
	.align 4
123 124
	.ent main
main:
125 126 127 128 129 130 131 132 133 134 135 136 137
	.frame \$30,16,\$26,0
	ldgp \$29,0(\$27)
	.prologue 1
	.long 0x47e03d80 # implver \$0
	lda \$2,-1
	.long 0x47e20c21 # amask \$2,\$1
	lda \$16,\$Lformat
	mov \$0,\$17
	not \$1,\$18
	jsr \$26,printf
	ldgp \$29,0(\$26)
	mov 0,\$16
	jsr \$26,exit
138 139
	.end main
EOF
140
	$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
141
	if test "$?" = 0 ; then
142 143
		case `./$dummy` in
			0-0)
144 145
				UNAME_MACHINE="alpha"
				;;
146
			1-0)
147 148
				UNAME_MACHINE="alphaev5"
				;;
149
			1-1)
150 151
				UNAME_MACHINE="alphaev56"
				;;
152
			1-101)
153 154
				UNAME_MACHINE="alphapca56"
				;;
155
			2-303)
156 157
				UNAME_MACHINE="alphaev6"
				;;
158 159 160
			2-307)
				UNAME_MACHINE="alphaev67"
				;;
161 162
		esac
	fi
163
	rm -f $dummy.s $dummy
164 165 166 167 168 169 170
	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
	exit 0 ;;
    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
171
	exit 0 ;;
172 173 174
    21064:Windows_NT:50:3)
	echo alpha-dec-winnt3.5
	exit 0 ;;
175 176 177
    Amiga*:UNIX_System_V:4.0:*)
	echo m68k-cbm-sysv4
	exit 0;;
178
    amiga:OpenBSD:*:*)
179 180
	echo m68k-unknown-openbsd${UNAME_RELEASE}
	exit 0 ;;
181 182 183
    *:[Aa]miga[Oo][Ss]:*:*)
	echo ${UNAME_MACHINE}-unknown-amigaos
	exit 0 ;;
184
    arc64:OpenBSD:*:*)
185 186
	echo mips64el-unknown-openbsd${UNAME_RELEASE}
	exit 0 ;;
187 188 189 190 191
    arc:OpenBSD:*:*)
	echo mipsel-unknown-openbsd${UNAME_RELEASE}
	exit 0 ;;
    hkmips:OpenBSD:*:*)
	echo mips-unknown-openbsd${UNAME_RELEASE}
192 193
	exit 0 ;;
    pmax:OpenBSD:*:*)
194 195 196 197
	echo mipsel-unknown-openbsd${UNAME_RELEASE}
	exit 0 ;;
    sgi:OpenBSD:*:*)
	echo mips-unknown-openbsd${UNAME_RELEASE}
198 199
	exit 0 ;;
    wgrisc:OpenBSD:*:*)
200
	echo mipsel-unknown-openbsd${UNAME_RELEASE}
201
	exit 0 ;;
202 203 204
    *:OS/390:*:*)
	echo i370-ibm-openedition
	exit 0 ;;
Richard Kenner's avatar
Richard Kenner committed
205 206 207
    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
	echo arm-acorn-riscix${UNAME_RELEASE}
	exit 0;;
208 209 210
    SR2?01:HI-UX/MPP:*:*)
	echo hppa1.1-hitachi-hiuxmpp
	exit 0;;
211
    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
212
	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
213 214 215 216 217 218
	if test "`(/bin/universe) 2>/dev/null`" = att ; then
		echo pyramid-pyramid-sysv3
	else
		echo pyramid-pyramid-bsd
	fi
	exit 0 ;;
219
    NILE*:*:*:dcosx)
220 221
	echo pyramid-pyramid-svr4
	exit 0 ;;
222 223 224
    sun4H:SunOS:5.*:*)
	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
	exit 0 ;;
Per Bothner's avatar
Per Bothner committed
225
    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
Jim Blandy's avatar
Jim Blandy committed
226 227
	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
	exit 0 ;;
228
    i86pc:SunOS:5.*:*)
229
	echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
230
	exit 0 ;;
Jim Blandy's avatar
Jim Blandy committed
231 232 233 234 235
    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/[^.]*//'`
Roland McGrath's avatar
Roland McGrath committed
236 237
	exit 0 ;;
    sun4*:SunOS:*:*)
238 239 240 241 242
	case "`/usr/bin/arch -k`" in
	    Series*|S4*)
		UNAME_RELEASE=`uname -v`
		;;
	esac
243 244
	# Japanese Language versions have a version number like `4.1.3-JL'.
	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
Roland McGrath's avatar
Roland McGrath committed
245 246 247 248
	exit 0 ;;
    sun3*:SunOS:*:*)
	echo m68k-sun-sunos${UNAME_RELEASE}
	exit 0 ;;
Per Bothner's avatar
Per Bothner committed
249 250 251
    sun*:*:4.2BSD:*)
	UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
252
	case "`/bin/arch`" in
Per Bothner's avatar
Per Bothner committed
253 254 255 256 257 258 259 260
	    sun3)
		echo m68k-sun-sunos${UNAME_RELEASE}
		;;
	    sun4)
		echo sparc-sun-sunos${UNAME_RELEASE}
		;;
	esac
	exit 0 ;;
Per Bothner's avatar
Per Bothner committed
261 262 263
    aushp:SunOS:*:*)
	echo sparc-auspex-sunos${UNAME_RELEASE}
	exit 0 ;;
264
    atari*:OpenBSD:*:*)
265
	echo m68k-unknown-openbsd${UNAME_RELEASE}
266
	exit 0 ;;
267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292
    # 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:*:*)
        echo m68k-atari-mint${UNAME_RELEASE}
	exit 0 ;;
    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
	echo m68k-atari-mint${UNAME_RELEASE}
        exit 0 ;;
    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
        echo m68k-atari-mint${UNAME_RELEASE}
	exit 0 ;;
    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
        echo m68k-milan-mint${UNAME_RELEASE}
        exit 0 ;;
    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
        echo m68k-hades-mint${UNAME_RELEASE}
        exit 0 ;;
    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
        echo m68k-unknown-mint${UNAME_RELEASE}
        exit 0 ;;
293
    sun3*:OpenBSD:*:*)
294
	echo m68k-unknown-openbsd${UNAME_RELEASE}
295 296
	exit 0 ;;
    mac68k:OpenBSD:*:*)
297 298 299 300 301 302 303
	echo m68k-unknown-openbsd${UNAME_RELEASE}
	exit 0 ;;
    mvme68k:OpenBSD:*:*)
	echo m68k-unknown-openbsd${UNAME_RELEASE}
	exit 0 ;;
    mvme88k:OpenBSD:*:*)
	echo m88k-unknown-openbsd${UNAME_RELEASE}
304
	exit 0 ;;
305 306 307
    powerpc:machten:*:*)
	echo powerpc-apple-machten${UNAME_RELEASE}
	exit 0 ;;
Per Bothner's avatar
Per Bothner committed
308 309 310
    RISC*:Mach:*:*)
	echo mips-dec-mach_bsd4.3
	exit 0 ;;
Roland McGrath's avatar
Roland McGrath committed
311 312 313 314 315 316
    RISC*:ULTRIX:*:*)
	echo mips-dec-ultrix${UNAME_RELEASE}
	exit 0 ;;
    VAX*:ULTRIX*:*:*)
	echo vax-dec-ultrix${UNAME_RELEASE}
	exit 0 ;;
317
    2020:CLIX:*:* | 2430:CLIX:*:*)
318 319
	echo clipper-intergraph-clix${UNAME_RELEASE}
	exit 0 ;;
320
    mips:*:*:UMIPS | mips:*:*:RISCos)
321 322
	sed 's/^	//' << EOF >$dummy.c
#ifdef __cplusplus
323
#include <stdio.h>  /* for printf() prototype */
324 325 326 327
	int main (int argc, char *argv[]) {
#else
	int main (argc, argv) int argc; char *argv[]; {
#endif
328 329 330 331 332 333 334 335 336 337 338 339 340 341
	#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
342
	$CC_FOR_BUILD $dummy.c -o $dummy \
343 344 345
	  && ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
	  && rm $dummy.c $dummy && exit 0
	rm -f $dummy.c $dummy
346
	echo mips-mips-riscos${UNAME_RELEASE}
Richard Kenner's avatar
Richard Kenner committed
347
	exit 0 ;;
348 349 350
    Night_Hawk:Power_UNIX:*:*)
	echo powerpc-harris-powerunix
	exit 0 ;;
Per Bothner's avatar
Per Bothner committed
351 352 353
    m88k:CX/UX:7*:*)
	echo m88k-harris-cxux7
	exit 0 ;;
Roland McGrath's avatar
Roland McGrath committed
354 355 356 357 358 359
    m88k:*:4*:R4*)
	echo m88k-motorola-sysv4
	exit 0 ;;
    m88k:*:3*:R3*)
	echo m88k-motorola-sysv3
	exit 0 ;;
Richard Kenner's avatar
Richard Kenner committed
360
    AViiON:dgux:*:*)
Stan Cox's avatar
Stan Cox committed
361
        # DG/UX returns AViiON for all architectures
362
        UNAME_PROCESSOR=`/usr/bin/uname -p`
363 364 365 366 367
	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110]
	then
	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
	       [ ${TARGET_BINARY_INTERFACE}x = x ]
	    then
Richard Kenner's avatar
Richard Kenner committed
368
		echo m88k-dg-dgux${UNAME_RELEASE}
369
	    else
Richard Kenner's avatar
Richard Kenner committed
370
		echo m88k-dg-dguxbcs${UNAME_RELEASE}
371 372 373
	    fi
	else
	    echo i586-dg-dgux${UNAME_RELEASE}
Richard Kenner's avatar
Richard Kenner committed
374
	fi
Richard Kenner's avatar
Richard Kenner committed
375
 	exit 0 ;;
Richard Kenner's avatar
Richard Kenner committed
376 377 378
    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
	echo m88k-dolphin-sysv3
	exit 0 ;;
Richard Kenner's avatar
Richard Kenner committed
379 380 381 382 383 384 385 386 387 388
    M88*:*:R3*:*)
	# Delta 88k system running SVR3
	echo m88k-motorola-sysv3
	exit 0 ;;
    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
	echo m88k-tektronix-sysv3
	exit 0 ;;
    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
	echo m68k-tektronix-bsd
	exit 0 ;;
Jim Wilson's avatar
Jim Wilson committed
389 390
    *:IRIX*:*:*)
	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
Roland McGrath's avatar
Roland McGrath committed
391
	exit 0 ;;
392
    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
393 394
	echo romp-ibm-aix      # uname -m gives an 8 hex-code CPU id
	exit 0 ;;              # Note that: echo "'`uname -s`'" gives 'AIX '
395
    i?86:AIX:*:*)
Roland McGrath's avatar
Roland McGrath committed
396 397 398
	echo i386-ibm-aix
	exit 0 ;;
    *:AIX:2:3)
Richard Kenner's avatar
Richard Kenner committed
399
	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
400
		sed 's/^		//' << EOF >$dummy.c
401 402 403 404 405 406 407 408 409 410
		#include <sys/systemcfg.h>

		main()
			{
			if (!__power_pc())
				exit(1);
			puts("powerpc-ibm-aix3.2.5");
			exit(0);
			}
EOF
411
		$CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0
412
		rm -f $dummy.c $dummy
Richard Kenner's avatar
Richard Kenner committed
413 414 415 416 417 418
		echo rs6000-ibm-aix3.2.5
	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
Roland McGrath's avatar
Roland McGrath committed
419
	exit 0 ;;
420
    *:AIX:*:4)
Ben Elliston's avatar
Ben Elliston committed
421 422
	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'`
	if /usr/sbin/lsattr -EHl ${IBM_CPU_ID} | grep POWER >/dev/null 2>&1; then
423
		IBM_ARCH=rs6000
424
	else
425
		IBM_ARCH=powerpc
426
	fi
427 428
	if [ -x /usr/bin/oslevel ] ; then
		IBM_REV=`/usr/bin/oslevel`
429
	else
Richard Kenner's avatar
Richard Kenner committed
430
		IBM_REV=4.${UNAME_RELEASE}
431 432
	fi
	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
433
	exit 0 ;;
Roland McGrath's avatar
Roland McGrath committed
434 435 436
    *:AIX:*:*)
	echo rs6000-ibm-aix
	exit 0 ;;
437 438 439
    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
	echo romp-ibm-bsd4.4
	exit 0 ;;
440
    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
441
	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
442
	exit 0 ;;                           # report: romp-ibm BSD 4.3
Roland McGrath's avatar
Roland McGrath committed
443 444 445
    *:BOSX:*:*)
	echo rs6000-bull-bosx
	exit 0 ;;
Richard Kenner's avatar
Richard Kenner committed
446 447
    DPX/2?00:B.O.S.:*:*)
	echo m68k-bull-sysv3
Roland McGrath's avatar
Roland McGrath committed
448
	exit 0 ;;
Richard Kenner's avatar
Richard Kenner committed
449 450
    9000/[34]??:4.3bsd:1.*:*)
	echo m68k-hp-bsd
Roland McGrath's avatar
Roland McGrath committed
451
	exit 0 ;;
Richard Kenner's avatar
Richard Kenner committed
452 453
    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
	echo m68k-hp-bsd4.4
Roland McGrath's avatar
Roland McGrath committed
454
	exit 0 ;;
Ben Elliston's avatar
Ben Elliston committed
455
    9000/[34678]??:HP-UX:*:*)
Richard Kenner's avatar
Richard Kenner committed
456 457 458
	case "${UNAME_MACHINE}" in
	    9000/31? )            HP_ARCH=m68000 ;;
	    9000/[34]?? )         HP_ARCH=m68k ;;
459
	    9000/[678][0-9][0-9])
460
              sed 's/^              //' << EOF >$dummy.c
461 462
              #include <stdlib.h>
              #include <unistd.h>
463

464 465 466 467
              int main ()
              {
              #if defined(_SC_KERNEL_BITS)
                  long bits = sysconf(_SC_KERNEL_BITS);
468
              #endif
469
                  long cpu  = sysconf (_SC_CPU_VERSION);
470 471

                  switch (cpu)
472 473 474
              	{
              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
475
              	case CPU_PA_RISC2_0:
476
              #if defined(_SC_KERNEL_BITS)
477
              	    switch (bits)
478 479 480 481 482 483 484
              		{
              		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;
485
              #endif
486 487 488 489 490
              	default: puts ("hppa1.0"); break;
              	}
                  exit (0);
              }
EOF
491
	(CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy`
492
	rm -f $dummy.c $dummy
Richard Kenner's avatar
Richard Kenner committed
493
	esac
494
	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
Richard Kenner's avatar
Richard Kenner committed
495 496 497
	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
	exit 0 ;;
    3050*:HI-UX:*:*)
498
	sed 's/^	//' << EOF >$dummy.c
Richard Kenner's avatar
Richard Kenner committed
499 500 501 502 503
	#include <unistd.h>
	int
	main ()
	{
	  long cpu = sysconf (_SC_CPU_VERSION);
Per Bothner's avatar
Per Bothner committed
504 505 506 507
	  /* 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))
Richard Kenner's avatar
Richard Kenner committed
508 509 510 511 512 513 514 515 516
	    {
	      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;
		}
	    }
Per Bothner's avatar
Per Bothner committed
517 518
	  else if (CPU_IS_HP_MC68K (cpu))
	    puts ("m68k-hitachi-hiuxwe2");
Richard Kenner's avatar
Richard Kenner committed
519 520 521 522
	  else puts ("unknown-hitachi-hiuxwe2");
	  exit (0);
	}
EOF
523
	$CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0
524
	rm -f $dummy.c $dummy
Richard Kenner's avatar
Richard Kenner committed
525
	echo unknown-hitachi-hiuxwe2
Roland McGrath's avatar
Roland McGrath committed
526
	exit 0 ;;
527
    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
Jim Blandy's avatar
Jim Blandy committed
528 529 530 531 532
	echo hppa1.1-hp-bsd
	exit 0 ;;
    9000/8??:4.3bsd:*:*)
	echo hppa1.0-hp-bsd
	exit 0 ;;
533
    *9??*:MPE/iX:*:*)
Ian Lance Taylor's avatar
Ian Lance Taylor committed
534 535
	echo hppa1.0-hp-mpeix
	exit 0 ;;
536
    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
Per Bothner's avatar
Per Bothner committed
537 538 539 540 541
	echo hppa1.1-hp-osf
	exit 0 ;;
    hp8??:OSF1:*:*)
	echo hppa1.0-hp-osf
	exit 0 ;;
Per Bothner's avatar
Per Bothner committed
542 543 544 545 546 547 548
    i?86:OSF1:*:*)
	if [ -x /usr/sbin/sysversion ] ; then
	    echo ${UNAME_MACHINE}-unknown-osf1mk
	else
	    echo ${UNAME_MACHINE}-unknown-osf1
	fi
	exit 0 ;;
549 550 551
    parisc*:Lites*:*:*)
	echo hppa1.1-hp-lites
	exit 0 ;;
552 553 554
    hppa*:OpenBSD:*:*)
	echo hppa-unknown-openbsd
	exit 0 ;;
Chris Siebenmann's avatar
Chris Siebenmann committed
555
    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
Roland McGrath's avatar
Roland McGrath committed
556 557
	echo c1-convex-bsd
        exit 0 ;;
Chris Siebenmann's avatar
Chris Siebenmann committed
558 559 560 561 562 563 564 565 566 567 568 569 570 571
    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
	if getsysinfo -f scalar_acc
	then echo c32-convex-bsd
	else echo c2-convex-bsd
	fi
        exit 0 ;;
    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
	echo c34-convex-bsd
        exit 0 ;;
    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
	echo c38-convex-bsd
        exit 0 ;;
    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
	echo c4-convex-bsd
Roland McGrath's avatar
Roland McGrath committed
572
        exit 0 ;;
573
    CRAY*X-MP:*:*:*)
Roland McGrath's avatar
Roland McGrath committed
574 575
	echo xmp-cray-unicos
        exit 0 ;;
Richard Kenner's avatar
Richard Kenner committed
576
    CRAY*Y-MP:*:*:*)
577 578
	echo ymp-cray-unicos${UNAME_RELEASE}
	exit 0 ;;
579 580
    CRAY*[A-Z]90:*:*:*)
	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
581 582
	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
583
	exit 0 ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
584
    CRAY*TS:*:*:*)
585
	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
David J. MacKenzie's avatar
David J. MacKenzie committed
586
	exit 0 ;;
587
    CRAY*T3E:*:*:*)
588 589 590 591
	echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
	exit 0 ;;
    CRAY*SV1:*:*:*)
	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'    
592
	exit 0 ;;
593
    CRAY-2:*:*:*)
Roland McGrath's avatar
Roland McGrath committed
594 595
	echo cray2-cray-unicos
        exit 0 ;;
Per Bothner's avatar
Per Bothner committed
596
    F300:UNIX_System_V:*:*)
597
        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
Per Bothner's avatar
Per Bothner committed
598 599 600
        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
        echo "f300-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
        exit 0 ;;
David J. MacKenzie's avatar
David J. MacKenzie committed
601 602 603
    F301:UNIX_System_V:*:*)
       echo f301-fujitsu-uxpv`echo $UNAME_RELEASE | sed 's/ .*//'`
       exit 0 ;;
604 605
    hp300:OpenBSD:*:*)
	echo m68k-unknown-openbsd${UNAME_RELEASE}
606
	exit 0 ;;
607
    i?86:BSD/386:*:* | i?86:BSD/OS:*:*)
608
	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
Richard Kenner's avatar
Richard Kenner committed
609
	exit 0 ;;
610 611 612
    sparc*:BSD/OS:*:*)
	echo sparc-unknown-bsdi${UNAME_RELEASE}
	exit 0 ;;
613 614 615
    *:BSD/OS:*:*)
	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
	exit 0 ;;
616
    *:FreeBSD:*:*)
617 618
	if test -x /usr/bin/objformat; then
	    if test "elf" = "`/usr/bin/objformat`"; then
619
		echo ${UNAME_MACHINE}-unknown-freebsdelf`echo ${UNAME_RELEASE}|sed -e 's/[-_].*//'`
620 621 622
		exit 0
	    fi
	fi
623
	echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
624
	exit 0 ;;
625 626 627
    *:OpenBSD:*:*)
	echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
	exit 0 ;;
628
    i*:CYGWIN*:*)
Ben Elliston's avatar
Ben Elliston committed
629
	echo ${UNAME_MACHINE}-pc-cygwin
630
	exit 0 ;;
Richard Kenner's avatar
Richard Kenner committed
631
    i*:MINGW*:*)
632
	echo ${UNAME_MACHINE}-pc-mingw32
Richard Kenner's avatar
Richard Kenner committed
633
	exit 0 ;;
634 635 636 637 638 639 640 641 642
    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 i386-pc-interix
	exit 0 ;;
    i*:UWIN*:*)
	echo ${UNAME_MACHINE}-pc-uwin
	exit 0 ;;
643
    p*:CYGWIN*:*)
Ben Elliston's avatar
Ben Elliston committed
644
	echo powerpcle-unknown-cygwin
645
	exit 0 ;;
646 647 648
    prep*:SunOS:5.*:*)
	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
	exit 0 ;;
Roland McGrath's avatar
Roland McGrath committed
649
    *:GNU:*:*)
650
	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
Roland McGrath's avatar
Roland McGrath committed
651
	exit 0 ;;
652
    *:Linux:*:*)
Richard Kenner's avatar
Richard Kenner committed
653

Per Bothner's avatar
Per Bothner committed
654
	# The BFD linker knows what the default object file format is, so
655 656 657
	# first see if it will tell us. cd to the root directory to prevent
	# problems with other programs or directories called `ld' in the path.
	ld_help_string=`cd /; ld --help 2>&1`
Richard M. Stallman's avatar
Richard M. Stallman committed
658
	ld_supported_emulations=`echo $ld_help_string \
Richard M. Stallman's avatar
Richard M. Stallman committed
659 660 661 662 663 664
			 | sed -ne '/supported emulations:/!d
				    s/[ 	][ 	]*/ /g
				    s/.*supported emulations: *//
				    s/ .*//
				    p'`
        case "$ld_supported_emulations" in
665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697
	  *ia64)
		echo "${UNAME_MACHINE}-unknown-linux"
		exit 0
		;;
	  i?86linux)
		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
		exit 0
		;;
	  i?86coff)
		echo "${UNAME_MACHINE}-pc-linux-gnucoff"
		exit 0
		;;
	  sparclinux)
		echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
		exit 0
		;;
	  armlinux)
		echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
		exit 0
		;;
	  elf32arm*)
		echo "${UNAME_MACHINE}-unknown-linux-gnuoldld"
		exit 0
		;;
	  armelf_linux*)
		echo "${UNAME_MACHINE}-unknown-linux-gnu"
		exit 0
		;;
	  m68klinux)
		echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
		exit 0
		;;
	  elf32ppc | elf32ppclinux)
698
		# Determine Lib Version
699
		cat >$dummy.c <<EOF
700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717
#include <features.h>
#if defined(__GLIBC__)
extern char __libc_version[];
extern char __libc_release[];
#endif
main(argc, argv)
     int argc;
     char *argv[];
{
#if defined(__GLIBC__)
  printf("%s %s\n", __libc_version, __libc_release);
#else
  printf("unkown\n");
#endif
  return 0;
}
EOF
		LIBC=""
718
		$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null
719
		if test "$?" = 0 ; then
720
			./$dummy | grep 1\.99 > /dev/null
721 722 723 724
			if test "$?" = 0 ; then
				LIBC="libc1"
			fi
		fi	
725
		rm -f $dummy.c $dummy
726 727 728
		echo powerpc-unknown-linux-gnu${LIBC}
		exit 0
		;;
Richard M. Stallman's avatar
Richard M. Stallman committed
729 730 731
	esac

	if test "${UNAME_MACHINE}" = "alpha" ; then
732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755
		cat <<EOF >$dummy.s
			.data
		\$Lformat:
			.byte 37,100,45,37,120,10,0	# "%d-%x\n"

			.text
			.globl main
			.align 4
			.ent main
		main:
			.frame \$30,16,\$26,0
			ldgp \$29,0(\$27)
			.prologue 1
			.long 0x47e03d80 # implver \$0
			lda \$2,-1
			.long 0x47e20c21 # amask \$2,\$1
			lda \$16,\$Lformat
			mov \$0,\$17
			not \$1,\$18
			jsr \$26,printf
			ldgp \$29,0(\$26)
			mov 0,\$16
			jsr \$26,exit
			.end main
756
EOF
757
		LIBC=""
758
		$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
759
		if test "$?" = 0 ; then
760 761
			case `./$dummy` in
			0-0)
762 763
				UNAME_MACHINE="alpha"
				;;
764
			1-0)
765 766
				UNAME_MACHINE="alphaev5"
				;;
767
			1-1)
768 769
				UNAME_MACHINE="alphaev56"
				;;
770
			1-101)
771 772
				UNAME_MACHINE="alphapca56"
				;;
773
			2-303)
774 775
				UNAME_MACHINE="alphaev6"
				;;
776 777 778
			2-307)
				UNAME_MACHINE="alphaev67"
				;;
779
			esac
780

781
			objdump --private-headers $dummy | \
782 783 784 785
			  grep ld.so.1 > /dev/null
			if test "$?" = 0 ; then
				LIBC="libc1"
			fi
786 787
		fi
		rm -f $dummy.s $dummy
788
		echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} ; exit 0
789
	elif test "${UNAME_MACHINE}" = "mips" ; then
790 791
	  cat >$dummy.c <<EOF
#ifdef __cplusplus
792
#include <stdio.h>  /* for printf() prototype */
793 794 795 796
	int main (int argc, char *argv[]) {
#else
	int main (argc, argv) int argc; char *argv[]; {
#endif
797 798 799 800 801 802 803 804 805
#ifdef __MIPSEB__
  printf ("%s-unknown-linux-gnu\n", argv[1]);
#endif
#ifdef __MIPSEL__
  printf ("%sel-unknown-linux-gnu\n", argv[1]);
#endif
  return 0;
}
EOF
806
	  $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
807
	  rm -f $dummy.c $dummy
808 809
	elif test "${UNAME_MACHINE}" = "s390"; then
	  echo s390-ibm-linux && exit 0
810
	else
811 812
	  # Either a pre-BFD a.out linker (linux-gnuoldld)
	  # or one that does not give us useful --help.
Richard M. Stallman's avatar
Richard M. Stallman committed
813 814 815 816 817 818
	  # GCC wants to distinguish between linux-gnuoldld and linux-gnuaout.
	  # If ld does not provide *any* "supported emulations:"
	  # that means it is gnuoldld.
	  echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations:"
	  test $? != 0 && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0

819
	  case "${UNAME_MACHINE}" in
Richard M. Stallman's avatar
Richard M. Stallman committed
820
	  i?86)
821 822 823 824 825 826
	    VENDOR=pc;
	    ;;
	  *)
	    VENDOR=unknown;
	    ;;
	  esac
Per Bothner's avatar
Per Bothner committed
827
	  # Determine whether the default compiler is a.out or elf
828
	  cat >$dummy.c <<EOF
829
#include <features.h>
830
#ifdef __cplusplus
831
#include <stdio.h>  /* for printf() prototype */
832 833 834 835
	int main (int argc, char *argv[]) {
#else
	int main (argc, argv) int argc; char *argv[]; {
#endif
836
#ifdef __ELF__
837 838 839 840 841 842 843 844 845
# ifdef __GLIBC__
#  if __GLIBC__ >= 2
    printf ("%s-${VENDOR}-linux-gnu\n", argv[1]);
#  else
    printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
#  endif
# else
   printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
# endif
846
#else
847
  printf ("%s-${VENDOR}-linux-gnuaout\n", argv[1]);
848 849 850 851
#endif
  return 0;
}
EOF
852
	  $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
853
	  rm -f $dummy.c $dummy
Per Bothner's avatar
Per Bothner committed
854
	fi ;;
855 856
# 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.
857
    i?86:DYNIX/ptx:4*:*)
858 859
	echo i386-sequent-sysv4
	exit 0 ;;
860 861 862 863 864 865 866 867
    i?86:UNIX_SV:4.2MP:2.*)
        # 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,
	# I just have to hope.  -- rms.
        # Use sysv4.2uw... so that sysv4* matches it.
	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
	exit 0 ;;
868
    i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*)
869
	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
Jim Blandy's avatar
Jim Blandy committed
870
	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
871
		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
Jim Blandy's avatar
Jim Blandy committed
872
	else
873
		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
Jim Blandy's avatar
Jim Blandy committed
874
	fi
Roland McGrath's avatar
Roland McGrath committed
875
	exit 0 ;;
876
    i?86:*:5:7*)
877 878 879 880 881 882 883
        # Fixed at (any) Pentium or better
        UNAME_MACHINE=i586
        if [ ${UNAME_SYSTEM} = "UnixWare" ] ; then
	    echo ${UNAME_MACHINE}-sco-sysv${UNAME_RELEASE}uw${UNAME_VERSION}
	else
	    echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE}
	fi
884
	exit 0 ;;
885
    i?86:*:3.2:*)
886 887
	if test -f /usr/options/cb.name; then
		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
888
		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
889
	elif /bin/uname -X 2>/dev/null >/dev/null ; then
Roland McGrath's avatar
Roland McGrath committed
890 891
		UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
		(/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
892 893
		(/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
			&& UNAME_MACHINE=i586
894 895 896 897
		(/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \
			&& UNAME_MACHINE=i686
		(/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \
			&& UNAME_MACHINE=i686
898
		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
Roland McGrath's avatar
Roland McGrath committed
899
	else
900
		echo ${UNAME_MACHINE}-pc-sysv32
Richard Kenner's avatar
Richard Kenner committed
901 902
	fi
	exit 0 ;;
903 904 905
    i?86:*DOS:*:*)
	echo ${UNAME_MACHINE}-pc-msdosdjgpp
	exit 0 ;;
906
    pc:*:*:*)
907
	# Left here for compatibility:
908 909 910 911
        # uname -m prints for DJGPP always 'pc', but it prints nothing about
        # the processor, so we play safe by assuming i386.
	echo i386-pc-msdosdjgpp
        exit 0 ;;
Per Bothner's avatar
Per Bothner committed
912
    Intel:Mach:3*:*)
913
	echo i386-pc-mach3
Per Bothner's avatar
Per Bothner committed
914
	exit 0 ;;
915 916 917
    paragon:*:*:*)
	echo i860-intel-osf1
	exit 0 ;;
Richard Kenner's avatar
Richard Kenner committed
918 919 920 921 922
    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
Roland McGrath's avatar
Roland McGrath committed
923 924 925 926 927 928
	fi
	exit 0 ;;
    mini*:CTIX:SYS*5:*)
	# "miniframe"
	echo m68010-convergent-sysv
	exit 0 ;;
929
    M68*:*:R3V[567]*:*)
Jim Blandy's avatar
Jim Blandy committed
930
	test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
931
    3[34]??:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
Per Bothner's avatar
Per Bothner committed
932 933 934 935 936 937 938
	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 \
	  && echo i486-ncr-sysv4.3${OS_REL} && exit 0
	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
	  && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
Per Bothner's avatar
Per Bothner committed
939
    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
Per Bothner's avatar
Per Bothner committed
940
        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
Per Bothner's avatar
Per Bothner committed
941
          && echo i486-ncr-sysv4 && exit 0 ;;
942 943
    m68*:LynxOS:2.*:*)
	echo m68k-unknown-lynxos${UNAME_RELEASE}
Richard Kenner's avatar
Richard Kenner committed
944 945
	exit 0 ;;
    mc68030:UNIX_System_V:4.*:*)
946 947
	echo m68k-atari-sysv4
	exit 0 ;;
948
    i?86:LynxOS:2.*:* | i?86:LynxOS:3.[01]*:*)
949
	echo i386-unknown-lynxos${UNAME_RELEASE}
Richard Kenner's avatar
Richard Kenner committed
950
	exit 0 ;;
951 952
    TSUNAMI:LynxOS:2.*:*)
	echo sparc-unknown-lynxos${UNAME_RELEASE}
Richard Kenner's avatar
Richard Kenner committed
953
	exit 0 ;;
954 955
    rs6000:LynxOS:2.*:* | PowerPC:LynxOS:2.*:*)
	echo rs6000-unknown-lynxos${UNAME_RELEASE}
Per Bothner's avatar
Per Bothner committed
956
	exit 0 ;;
Per Bothner's avatar
Per Bothner committed
957 958 959
    SM[BE]S:UNIX_SV:*:*)
	echo mips-dde-sysv${UNAME_RELEASE}
	exit 0 ;;
960 961 962
    RM*:ReliantUNIX-*:*:*)
	echo mips-sni-sysv4
	exit 0 ;;
Per Bothner's avatar
Per Bothner committed
963 964 965 966 967 968 969 970 971 972 973
    RM*:SINIX-*:*:*)
	echo mips-sni-sysv4
	exit 0 ;;
    *: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
	exit 0 ;;
974 975 976 977
    PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
                           # says <Richard.M.Bartel@ccMail.Census.GOV>
        echo i586-unisys-sysv4
        exit 0 ;;
978 979 980 981 982 983 984 985 986
    *:UNIX_System_V:4*:FTX*)
	# From Gerald Hewes <hewes@openmarket.com>.
	# How about differentiating between stratus architectures? -djm
	echo hppa1.1-stratus-sysv4
	exit 0 ;;
    *:*:*:FTX*)
	# From seanf@swdc.stratus.com.
	echo i860-stratus-sysv4