scripts/config.guess
author "Yann E. MORIN" <yann.morin.1998@free.fr>
Sun May 11 23:43:52 2014 +0200 (2014-05-11)
changeset 3320 78af1c99bc6d
parent 3260 f43e37c7c047
permissions -rwxr-xr-x
scripts/functions: add target_endian_le and target_endian_be

We currently define target_endian_el and target_endian_eb to be the
tuple extension depending on endianness, defined to be respectively
'el' or 'eb' according to the endianness.

Some architecture do not use 'el' or 'eb', but use 'le' or 'be'.

Provide that as well, as two new variables: target_endian_le and
target_endian_be.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Cody P Schafer <dev@codyps.com>
yann@1101
     1
#! /bin/sh
yann@1101
     2
# Attempt to guess a canonical system name.
bryanhundven@3304
     3
#   Copyright 1992-2014 Free Software Foundation, Inc.
yann@1101
     4
bryanhundven@3304
     5
timestamp='2014-03-23'
yann@1101
     6
yann@1101
     7
# This file is free software; you can redistribute it and/or modify it
yann@1101
     8
# under the terms of the GNU General Public License as published by
yann@3156
     9
# the Free Software Foundation; either version 3 of the License, or
yann@1101
    10
# (at your option) any later version.
yann@1101
    11
#
yann@1101
    12
# This program is distributed in the hope that it will be useful, but
yann@1101
    13
# WITHOUT ANY WARRANTY; without even the implied warranty of
yann@1101
    14
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
yann@1101
    15
# General Public License for more details.
yann@1101
    16
#
yann@1101
    17
# You should have received a copy of the GNU General Public License
yann@2963
    18
# along with this program; if not, see <http://www.gnu.org/licenses/>.
yann@1101
    19
#
yann@1101
    20
# As a special exception to the GNU General Public License, if you
yann@1101
    21
# distribute this file as part of a program that contains a
yann@1101
    22
# configuration script generated by Autoconf, you may include it under
yann@3156
    23
# the same distribution terms that you use for the rest of that
yann@3156
    24
# program.  This Exception is an additional permission under section 7
yann@3156
    25
# of the GNU General Public License, version 3 ("GPLv3").
yann@1101
    26
#
yann@3156
    27
# Originally written by Per Bothner.
yann@1101
    28
#
yann@1511
    29
# You can get the latest version of this script from:
yann@1511
    30
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
yann@3156
    31
#
yann@3156
    32
# Please send patches with a ChangeLog entry to config-patches@gnu.org.
yann@3156
    33
yann@1101
    34
yann@1101
    35
me=`echo "$0" | sed -e 's,.*/,,'`
yann@1101
    36
yann@1101
    37
usage="\
yann@1101
    38
Usage: $0 [OPTION]
yann@1101
    39
yann@1101
    40
Output the configuration name of the system \`$me' is run on.
yann@1101
    41
yann@1101
    42
Operation modes:
yann@1101
    43
  -h, --help         print this help, then exit
yann@1101
    44
  -t, --time-stamp   print date of last modification, then exit
yann@1101
    45
  -v, --version      print version number, then exit
yann@1101
    46
yann@1101
    47
Report bugs and patches to <config-patches@gnu.org>."
yann@1101
    48
yann@1101
    49
version="\
yann@1101
    50
GNU config.guess ($timestamp)
yann@1101
    51
yann@1101
    52
Originally written by Per Bothner.
bryanhundven@3304
    53
Copyright 1992-2014 Free Software Foundation, Inc.
yann@1101
    54
yann@1101
    55
This is free software; see the source for copying conditions.  There is NO
yann@1101
    56
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
yann@1101
    57
yann@1101
    58
help="
yann@1101
    59
Try \`$me --help' for more information."
yann@1101
    60
yann@1101
    61
# Parse command line
yann@1101
    62
while test $# -gt 0 ; do
yann@1101
    63
  case $1 in
yann@1101
    64
    --time-stamp | --time* | -t )
yann@1101
    65
       echo "$timestamp" ; exit ;;
yann@1101
    66
    --version | -v )
yann@1101
    67
       echo "$version" ; exit ;;
yann@1101
    68
    --help | --h* | -h )
yann@1101
    69
       echo "$usage"; exit ;;
yann@1101
    70
    -- )     # Stop option processing
yann@1101
    71
       shift; break ;;
yann@1101
    72
    - )	# Use stdin as input.
yann@1101
    73
       break ;;
yann@1101
    74
    -* )
yann@1101
    75
       echo "$me: invalid option $1$help" >&2
yann@1101
    76
       exit 1 ;;
yann@1101
    77
    * )
yann@1101
    78
       break ;;
yann@1101
    79
  esac
yann@1101
    80
done
yann@1101
    81
yann@1101
    82
if test $# != 0; then
yann@1101
    83
  echo "$me: too many arguments$help" >&2
yann@1101
    84
  exit 1
yann@1101
    85
fi
yann@1101
    86
yann@2288
    87
trap 'exit 1' 1 2 15
yann@1101
    88
yann@1101
    89
# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
yann@1101
    90
# compiler to aid in system detection is discouraged as it requires
yann@1101
    91
# temporary files to be created and, as you can see below, it is a
yann@1101
    92
# headache to deal with in a portable fashion.
yann@1101
    93
yann@1101
    94
# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
yann@1101
    95
# use `HOST_CC' if defined, but it is deprecated.
yann@1101
    96
yann@1101
    97
# Portable tmp directory creation inspired by the Autoconf team.
yann@1101
    98
yann@1101
    99
set_cc_for_build='
yann@1101
   100
trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
yann@2288
   101
trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
yann@1101
   102
: ${TMPDIR=/tmp} ;
yann@1101
   103
 { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
yann@1101
   104
 { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
yann@1101
   105
 { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
yann@1101
   106
 { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
yann@1101
   107
dummy=$tmp/dummy ;
yann@1101
   108
tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
yann@1101
   109
case $CC_FOR_BUILD,$HOST_CC,$CC in
yann@1101
   110
 ,,)    echo "int x;" > $dummy.c ;
yann@1101
   111
	for c in cc gcc c89 c99 ; do
yann@1101
   112
	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
yann@1101
   113
	     CC_FOR_BUILD="$c"; break ;
yann@1101
   114
	  fi ;
yann@1101
   115
	done ;
yann@1101
   116
	if test x"$CC_FOR_BUILD" = x ; then
yann@1101
   117
	  CC_FOR_BUILD=no_compiler_found ;
yann@1101
   118
	fi
yann@1101
   119
	;;
yann@1101
   120
 ,,*)   CC_FOR_BUILD=$CC ;;
yann@1101
   121
 ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
yann@1101
   122
esac ; set_cc_for_build= ;'
yann@1101
   123
yann@1101
   124
# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
yann@1101
   125
# (ghazi@noc.rutgers.edu 1994-08-24)
yann@1101
   126
if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
yann@1101
   127
	PATH=$PATH:/.attbin ; export PATH
yann@1101
   128
fi
yann@1101
   129
yann@1101
   130
UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
yann@1101
   131
UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
yann@1101
   132
UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
yann@1101
   133
UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
yann@1101
   134
yann@3260
   135
case "${UNAME_SYSTEM}" in
yann@3260
   136
Linux|GNU|GNU/*)
yann@3260
   137
	# If the system lacks a compiler, then just pick glibc.
yann@3260
   138
	# We could probably try harder.
yann@3260
   139
	LIBC=gnu
yann@3260
   140
yann@3260
   141
	eval $set_cc_for_build
yann@3260
   142
	cat <<-EOF > $dummy.c
yann@3260
   143
	#include <features.h>
yann@3260
   144
	#if defined(__UCLIBC__)
yann@3260
   145
	LIBC=uclibc
yann@3260
   146
	#elif defined(__dietlibc__)
yann@3260
   147
	LIBC=dietlibc
yann@3260
   148
	#else
yann@3260
   149
	LIBC=gnu
yann@3260
   150
	#endif
yann@3260
   151
	EOF
bryanhundven@3304
   152
	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
yann@3260
   153
	;;
yann@3260
   154
esac
yann@3260
   155
yann@1101
   156
# Note: order is significant - the case branches are not exclusive.
yann@1101
   157
yann@1101
   158
case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
yann@1101
   159
    *:NetBSD:*:*)
yann@1101
   160
	# NetBSD (nbsd) targets should (where applicable) match one or
yann@2831
   161
	# more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
yann@1101
   162
	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
yann@1101
   163
	# switched to ELF, *-*-netbsd* would select the old
yann@1101
   164
	# object file format.  This provides both forward
yann@1101
   165
	# compatibility and a consistent mechanism for selecting the
yann@1101
   166
	# object file format.
yann@1101
   167
	#
yann@1101
   168
	# Note: NetBSD doesn't particularly care about the vendor
yann@1101
   169
	# portion of the name.  We always set it to "unknown".
yann@1101
   170
	sysctl="sysctl -n hw.machine_arch"
yann@1101
   171
	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
yann@1101
   172
	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
yann@1101
   173
	case "${UNAME_MACHINE_ARCH}" in
yann@1101
   174
	    armeb) machine=armeb-unknown ;;
yann@1101
   175
	    arm*) machine=arm-unknown ;;
yann@1101
   176
	    sh3el) machine=shl-unknown ;;
yann@1101
   177
	    sh3eb) machine=sh-unknown ;;
yann@1101
   178
	    sh5el) machine=sh5le-unknown ;;
yann@1101
   179
	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
yann@1101
   180
	esac
yann@1101
   181
	# The Operating System including object format, if it has switched
yann@1101
   182
	# to ELF recently, or will in the future.
yann@1101
   183
	case "${UNAME_MACHINE_ARCH}" in
yann@1101
   184
	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
yann@1101
   185
		eval $set_cc_for_build
yann@1101
   186
		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
yann@1418
   187
			| grep -q __ELF__
yann@1101
   188
		then
yann@1101
   189
		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
yann@1101
   190
		    # Return netbsd for either.  FIX?
yann@1101
   191
		    os=netbsd
yann@1101
   192
		else
yann@1101
   193
		    os=netbsdelf
yann@1101
   194
		fi
yann@1101
   195
		;;
yann@1101
   196
	    *)
yann@2334
   197
		os=netbsd
yann@1101
   198
		;;
yann@1101
   199
	esac
yann@1101
   200
	# The OS release
yann@1101
   201
	# Debian GNU/NetBSD machines have a different userland, and
yann@1101
   202
	# thus, need a distinct triplet. However, they do not need
yann@1101
   203
	# kernel version information, so it can be replaced with a
yann@1101
   204
	# suitable tag, in the style of linux-gnu.
yann@1101
   205
	case "${UNAME_VERSION}" in
yann@1101
   206
	    Debian*)
yann@1101
   207
		release='-gnu'
yann@1101
   208
		;;
yann@1101
   209
	    *)
yann@1101
   210
		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
yann@1101
   211
		;;
yann@1101
   212
	esac
yann@1101
   213
	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
yann@1101
   214
	# contains redundant information, the shorter form:
yann@1101
   215
	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
yann@1101
   216
	echo "${machine}-${os}${release}"
yann@1101
   217
	exit ;;
yann@3028
   218
    *:Bitrig:*:*)
yann@3028
   219
	UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
yann@3028
   220
	echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
yann@3028
   221
	exit ;;
yann@1101
   222
    *:OpenBSD:*:*)
yann@1101
   223
	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
yann@1101
   224
	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
yann@1101
   225
	exit ;;
yann@1101
   226
    *:ekkoBSD:*:*)
yann@1101
   227
	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
yann@1101
   228
	exit ;;
yann@1101
   229
    *:SolidBSD:*:*)
yann@1101
   230
	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
yann@1101
   231
	exit ;;
yann@1101
   232
    macppc:MirBSD:*:*)
yann@1101
   233
	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
yann@1101
   234
	exit ;;
yann@1101
   235
    *:MirBSD:*:*)
yann@1101
   236
	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
yann@1101
   237
	exit ;;
yann@1101
   238
    alpha:OSF1:*:*)
yann@1101
   239
	case $UNAME_RELEASE in
yann@1101
   240
	*4.0)
yann@1101
   241
		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
yann@1101
   242
		;;
yann@1101
   243
	*5.*)
yann@2334
   244
		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
yann@1101
   245
		;;
yann@1101
   246
	esac
yann@1101
   247
	# According to Compaq, /usr/sbin/psrinfo has been available on
yann@1101
   248
	# OSF/1 and Tru64 systems produced since 1995.  I hope that
yann@1101
   249
	# covers most systems running today.  This code pipes the CPU
yann@1101
   250
	# types through head -n 1, so we only detect the type of CPU 0.
yann@1101
   251
	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
yann@1101
   252
	case "$ALPHA_CPU_TYPE" in
yann@1101
   253
	    "EV4 (21064)")
yann@1101
   254
		UNAME_MACHINE="alpha" ;;
yann@1101
   255
	    "EV4.5 (21064)")
yann@1101
   256
		UNAME_MACHINE="alpha" ;;
yann@1101
   257
	    "LCA4 (21066/21068)")
yann@1101
   258
		UNAME_MACHINE="alpha" ;;
yann@1101
   259
	    "EV5 (21164)")
yann@1101
   260
		UNAME_MACHINE="alphaev5" ;;
yann@1101
   261
	    "EV5.6 (21164A)")
yann@1101
   262
		UNAME_MACHINE="alphaev56" ;;
yann@1101
   263
	    "EV5.6 (21164PC)")
yann@1101
   264
		UNAME_MACHINE="alphapca56" ;;
yann@1101
   265
	    "EV5.7 (21164PC)")
yann@1101
   266
		UNAME_MACHINE="alphapca57" ;;
yann@1101
   267
	    "EV6 (21264)")
yann@1101
   268
		UNAME_MACHINE="alphaev6" ;;
yann@1101
   269
	    "EV6.7 (21264A)")
yann@1101
   270
		UNAME_MACHINE="alphaev67" ;;
yann@1101
   271
	    "EV6.8CB (21264C)")
yann@1101
   272
		UNAME_MACHINE="alphaev68" ;;
yann@1101
   273
	    "EV6.8AL (21264B)")
yann@1101
   274
		UNAME_MACHINE="alphaev68" ;;
yann@1101
   275
	    "EV6.8CX (21264D)")
yann@1101
   276
		UNAME_MACHINE="alphaev68" ;;
yann@1101
   277
	    "EV6.9A (21264/EV69A)")
yann@1101
   278
		UNAME_MACHINE="alphaev69" ;;
yann@1101
   279
	    "EV7 (21364)")
yann@1101
   280
		UNAME_MACHINE="alphaev7" ;;
yann@1101
   281
	    "EV7.9 (21364A)")
yann@1101
   282
		UNAME_MACHINE="alphaev79" ;;
yann@1101
   283
	esac
yann@1101
   284
	# A Pn.n version is a patched version.
yann@1101
   285
	# A Vn.n version is a released version.
yann@1101
   286
	# A Tn.n version is a released field test version.
yann@1101
   287
	# A Xn.n version is an unreleased experimental baselevel.
yann@1101
   288
	# 1.2 uses "1.2" for uname -r.
yann@1101
   289
	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
yann@2288
   290
	# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
yann@2288
   291
	exitcode=$?
yann@2288
   292
	trap '' 0
yann@2288
   293
	exit $exitcode ;;
yann@1101
   294
    Alpha\ *:Windows_NT*:*)
yann@1101
   295
	# How do we know it's Interix rather than the generic POSIX subsystem?
yann@1101
   296
	# Should we change UNAME_MACHINE based on the output of uname instead
yann@1101
   297
	# of the specific Alpha model?
yann@1101
   298
	echo alpha-pc-interix
yann@1101
   299
	exit ;;
yann@1101
   300
    21064:Windows_NT:50:3)
yann@1101
   301
	echo alpha-dec-winnt3.5
yann@1101
   302
	exit ;;
yann@1101
   303
    Amiga*:UNIX_System_V:4.0:*)
yann@1101
   304
	echo m68k-unknown-sysv4
yann@1101
   305
	exit ;;
yann@1101
   306
    *:[Aa]miga[Oo][Ss]:*:*)
yann@1101
   307
	echo ${UNAME_MACHINE}-unknown-amigaos
yann@1101
   308
	exit ;;
yann@1101
   309
    *:[Mm]orph[Oo][Ss]:*:*)
yann@1101
   310
	echo ${UNAME_MACHINE}-unknown-morphos
yann@1101
   311
	exit ;;
yann@1101
   312
    *:OS/390:*:*)
yann@1101
   313
	echo i370-ibm-openedition
yann@1101
   314
	exit ;;
yann@1101
   315
    *:z/VM:*:*)
yann@1101
   316
	echo s390-ibm-zvmoe
yann@1101
   317
	exit ;;
yann@1101
   318
    *:OS400:*:*)
yann@2334
   319
	echo powerpc-ibm-os400
yann@1101
   320
	exit ;;
yann@1101
   321
    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
yann@1101
   322
	echo arm-acorn-riscix${UNAME_RELEASE}
yann@1101
   323
	exit ;;
yann@3064
   324
    arm*:riscos:*:*|arm*:RISCOS:*:*)
yann@1101
   325
	echo arm-unknown-riscos
yann@1101
   326
	exit ;;
yann@1101
   327
    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
yann@1101
   328
	echo hppa1.1-hitachi-hiuxmpp
yann@1101
   329
	exit ;;
yann@1101
   330
    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
yann@1101
   331
	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
yann@1101
   332
	if test "`(/bin/universe) 2>/dev/null`" = att ; then
yann@1101
   333
		echo pyramid-pyramid-sysv3
yann@1101
   334
	else
yann@1101
   335
		echo pyramid-pyramid-bsd
yann@1101
   336
	fi
yann@1101
   337
	exit ;;
yann@1101
   338
    NILE*:*:*:dcosx)
yann@1101
   339
	echo pyramid-pyramid-svr4
yann@1101
   340
	exit ;;
yann@1101
   341
    DRS?6000:unix:4.0:6*)
yann@1101
   342
	echo sparc-icl-nx6
yann@1101
   343
	exit ;;
yann@1101
   344
    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
yann@1101
   345
	case `/usr/bin/uname -p` in
yann@1101
   346
	    sparc) echo sparc-icl-nx7; exit ;;
yann@1101
   347
	esac ;;
yann@1418
   348
    s390x:SunOS:*:*)
yann@1418
   349
	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
yann@1418
   350
	exit ;;
yann@1101
   351
    sun4H:SunOS:5.*:*)
yann@1101
   352
	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
yann@1101
   353
	exit ;;
yann@1101
   354
    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
yann@1101
   355
	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
yann@1101
   356
	exit ;;
yann@2025
   357
    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
yann@2025
   358
	echo i386-pc-auroraux${UNAME_RELEASE}
yann@2025
   359
	exit ;;
yann@1101
   360
    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
yann@1101
   361
	eval $set_cc_for_build
yann@1101
   362
	SUN_ARCH="i386"
yann@1101
   363
	# If there is a compiler, see if it is configured for 64-bit objects.
yann@1101
   364
	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
yann@1261
   365
	# This test works for both compilers.
yann@1101
   366
	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
yann@1261
   367
	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
yann@1101
   368
		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
yann@1101
   369
		grep IS_64BIT_ARCH >/dev/null
yann@1101
   370
	    then
yann@1101
   371
		SUN_ARCH="x86_64"
yann@1101
   372
	    fi
yann@1101
   373
	fi
yann@1101
   374
	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
yann@1101
   375
	exit ;;
yann@1101
   376
    sun4*:SunOS:6*:*)
yann@1101
   377
	# According to config.sub, this is the proper way to canonicalize
yann@1101
   378
	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
yann@1101
   379
	# it's likely to be more like Solaris than SunOS4.
yann@1101
   380
	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
yann@1101
   381
	exit ;;
yann@1101
   382
    sun4*:SunOS:*:*)
yann@1101
   383
	case "`/usr/bin/arch -k`" in
yann@1101
   384
	    Series*|S4*)
yann@1101
   385
		UNAME_RELEASE=`uname -v`
yann@1101
   386
		;;
yann@1101
   387
	esac
yann@1101
   388
	# Japanese Language versions have a version number like `4.1.3-JL'.
yann@1101
   389
	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
yann@1101
   390
	exit ;;
yann@1101
   391
    sun3*:SunOS:*:*)
yann@1101
   392
	echo m68k-sun-sunos${UNAME_RELEASE}
yann@1101
   393
	exit ;;
yann@1101
   394
    sun*:*:4.2BSD:*)
yann@1101
   395
	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
yann@1101
   396
	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
yann@1101
   397
	case "`/bin/arch`" in
yann@1101
   398
	    sun3)
yann@1101
   399
		echo m68k-sun-sunos${UNAME_RELEASE}
yann@1101
   400
		;;
yann@1101
   401
	    sun4)
yann@1101
   402
		echo sparc-sun-sunos${UNAME_RELEASE}
yann@1101
   403
		;;
yann@1101
   404
	esac
yann@1101
   405
	exit ;;
yann@1101
   406
    aushp:SunOS:*:*)
yann@1101
   407
	echo sparc-auspex-sunos${UNAME_RELEASE}
yann@1101
   408
	exit ;;
yann@1101
   409
    # The situation for MiNT is a little confusing.  The machine name
yann@1101
   410
    # can be virtually everything (everything which is not
yann@1101
   411
    # "atarist" or "atariste" at least should have a processor
yann@1101
   412
    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
yann@1101
   413
    # to the lowercase version "mint" (or "freemint").  Finally
yann@1101
   414
    # the system name "TOS" denotes a system which is actually not
yann@1101
   415
    # MiNT.  But MiNT is downward compatible to TOS, so this should
yann@1101
   416
    # be no problem.
yann@1101
   417
    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
yann@2334
   418
	echo m68k-atari-mint${UNAME_RELEASE}
yann@1101
   419
	exit ;;
yann@1101
   420
    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
yann@1101
   421
	echo m68k-atari-mint${UNAME_RELEASE}
yann@2334
   422
	exit ;;
yann@1101
   423
    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
yann@2334
   424
	echo m68k-atari-mint${UNAME_RELEASE}
yann@1101
   425
	exit ;;
yann@1101
   426
    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
yann@2334
   427
	echo m68k-milan-mint${UNAME_RELEASE}
yann@2334
   428
	exit ;;
yann@1101
   429
    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
yann@2334
   430
	echo m68k-hades-mint${UNAME_RELEASE}
yann@2334
   431
	exit ;;
yann@1101
   432
    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
yann@2334
   433
	echo m68k-unknown-mint${UNAME_RELEASE}
yann@2334
   434
	exit ;;
yann@1101
   435
    m68k:machten:*:*)
yann@1101
   436
	echo m68k-apple-machten${UNAME_RELEASE}
yann@1101
   437
	exit ;;
yann@1101
   438
    powerpc:machten:*:*)
yann@1101
   439
	echo powerpc-apple-machten${UNAME_RELEASE}
yann@1101
   440
	exit ;;
yann@1101
   441
    RISC*:Mach:*:*)
yann@1101
   442
	echo mips-dec-mach_bsd4.3
yann@1101
   443
	exit ;;
yann@1101
   444
    RISC*:ULTRIX:*:*)
yann@1101
   445
	echo mips-dec-ultrix${UNAME_RELEASE}
yann@1101
   446
	exit ;;
yann@1101
   447
    VAX*:ULTRIX*:*:*)
yann@1101
   448
	echo vax-dec-ultrix${UNAME_RELEASE}
yann@1101
   449
	exit ;;
yann@1101
   450
    2020:CLIX:*:* | 2430:CLIX:*:*)
yann@1101
   451
	echo clipper-intergraph-clix${UNAME_RELEASE}
yann@1101
   452
	exit ;;
yann@1101
   453
    mips:*:*:UMIPS | mips:*:*:RISCos)
yann@1101
   454
	eval $set_cc_for_build
yann@1101
   455
	sed 's/^	//' << EOF >$dummy.c
yann@1101
   456
#ifdef __cplusplus
yann@1101
   457
#include <stdio.h>  /* for printf() prototype */
yann@1101
   458
	int main (int argc, char *argv[]) {
yann@1101
   459
#else
yann@1101
   460
	int main (argc, argv) int argc; char *argv[]; {
yann@1101
   461
#endif
yann@1101
   462
	#if defined (host_mips) && defined (MIPSEB)
yann@1101
   463
	#if defined (SYSTYPE_SYSV)
yann@1101
   464
	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
yann@1101
   465
	#endif
yann@1101
   466
	#if defined (SYSTYPE_SVR4)
yann@1101
   467
	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
yann@1101
   468
	#endif
yann@1101
   469
	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
yann@1101
   470
	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
yann@1101
   471
	#endif
yann@1101
   472
	#endif
yann@1101
   473
	  exit (-1);
yann@1101
   474
	}
yann@1101
   475
EOF
yann@1101
   476
	$CC_FOR_BUILD -o $dummy $dummy.c &&
yann@1101
   477
	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
yann@1101
   478
	  SYSTEM_NAME=`$dummy $dummyarg` &&
yann@1101
   479
	    { echo "$SYSTEM_NAME"; exit; }
yann@1101
   480
	echo mips-mips-riscos${UNAME_RELEASE}
yann@1101
   481
	exit ;;
yann@1101
   482
    Motorola:PowerMAX_OS:*:*)
yann@1101
   483
	echo powerpc-motorola-powermax
yann@1101
   484
	exit ;;
yann@1101
   485
    Motorola:*:4.3:PL8-*)
yann@1101
   486
	echo powerpc-harris-powermax
yann@1101
   487
	exit ;;
yann@1101
   488
    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
yann@1101
   489
	echo powerpc-harris-powermax
yann@1101
   490
	exit ;;
yann@1101
   491
    Night_Hawk:Power_UNIX:*:*)
yann@1101
   492
	echo powerpc-harris-powerunix
yann@1101
   493
	exit ;;
yann@1101
   494
    m88k:CX/UX:7*:*)
yann@1101
   495
	echo m88k-harris-cxux7
yann@1101
   496
	exit ;;
yann@1101
   497
    m88k:*:4*:R4*)
yann@1101
   498
	echo m88k-motorola-sysv4
yann@1101
   499
	exit ;;
yann@1101
   500
    m88k:*:3*:R3*)
yann@1101
   501
	echo m88k-motorola-sysv3
yann@1101
   502
	exit ;;
yann@1101
   503
    AViiON:dgux:*:*)
yann@2334
   504
	# DG/UX returns AViiON for all architectures
yann@2334
   505
	UNAME_PROCESSOR=`/usr/bin/uname -p`
yann@1101
   506
	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
yann@1101
   507
	then
yann@1101
   508
	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
yann@1101
   509
	       [ ${TARGET_BINARY_INTERFACE}x = x ]
yann@1101
   510
	    then
yann@1101
   511
		echo m88k-dg-dgux${UNAME_RELEASE}
yann@1101
   512
	    else
yann@1101
   513
		echo m88k-dg-dguxbcs${UNAME_RELEASE}
yann@1101
   514
	    fi
yann@1101
   515
	else
yann@1101
   516
	    echo i586-dg-dgux${UNAME_RELEASE}
yann@1101
   517
	fi
yann@2334
   518
	exit ;;
yann@1101
   519
    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
yann@1101
   520
	echo m88k-dolphin-sysv3
yann@1101
   521
	exit ;;
yann@1101
   522
    M88*:*:R3*:*)
yann@1101
   523
	# Delta 88k system running SVR3
yann@1101
   524
	echo m88k-motorola-sysv3
yann@1101
   525
	exit ;;
yann@1101
   526
    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
yann@1101
   527
	echo m88k-tektronix-sysv3
yann@1101
   528
	exit ;;
yann@1101
   529
    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
yann@1101
   530
	echo m68k-tektronix-bsd
yann@1101
   531
	exit ;;
yann@1101
   532
    *:IRIX*:*:*)
yann@1101
   533
	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
yann@1101
   534
	exit ;;
yann@1101
   535
    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
yann@1101
   536
	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
yann@1101
   537
	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
yann@1101
   538
    i*86:AIX:*:*)
yann@1101
   539
	echo i386-ibm-aix
yann@1101
   540
	exit ;;
yann@1101
   541
    ia64:AIX:*:*)
yann@1101
   542
	if [ -x /usr/bin/oslevel ] ; then
yann@1101
   543
		IBM_REV=`/usr/bin/oslevel`
yann@1101
   544
	else
yann@1101
   545
		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
yann@1101
   546
	fi
yann@1101
   547
	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
yann@1101
   548
	exit ;;
yann@1101
   549
    *:AIX:2:3)
yann@1101
   550
	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
yann@1101
   551
		eval $set_cc_for_build
yann@1101
   552
		sed 's/^		//' << EOF >$dummy.c
yann@1101
   553
		#include <sys/systemcfg.h>
yann@1101
   554
yann@1101
   555
		main()
yann@1101
   556
			{
yann@1101
   557
			if (!__power_pc())
yann@1101
   558
				exit(1);
yann@1101
   559
			puts("powerpc-ibm-aix3.2.5");
yann@1101
   560
			exit(0);
yann@1101
   561
			}
yann@1101
   562
EOF
yann@1101
   563
		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
yann@1101
   564
		then
yann@1101
   565
			echo "$SYSTEM_NAME"
yann@1101
   566
		else
yann@1101
   567
			echo rs6000-ibm-aix3.2.5
yann@1101
   568
		fi
yann@1101
   569
	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
yann@1101
   570
		echo rs6000-ibm-aix3.2.4
yann@1101
   571
	else
yann@1101
   572
		echo rs6000-ibm-aix3.2
yann@1101
   573
	fi
yann@1101
   574
	exit ;;
yann@2223
   575
    *:AIX:*:[4567])
yann@1101
   576
	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
yann@1101
   577
	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
yann@1101
   578
		IBM_ARCH=rs6000
yann@1101
   579
	else
yann@1101
   580
		IBM_ARCH=powerpc
yann@1101
   581
	fi
yann@1101
   582
	if [ -x /usr/bin/oslevel ] ; then
yann@1101
   583
		IBM_REV=`/usr/bin/oslevel`
yann@1101
   584
	else
yann@1101
   585
		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
yann@1101
   586
	fi
yann@1101
   587
	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
yann@1101
   588
	exit ;;
yann@1101
   589
    *:AIX:*:*)
yann@1101
   590
	echo rs6000-ibm-aix
yann@1101
   591
	exit ;;
yann@1101
   592
    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
yann@1101
   593
	echo romp-ibm-bsd4.4
yann@1101
   594
	exit ;;
yann@1101
   595
    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
yann@1101
   596
	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
yann@1101
   597
	exit ;;                             # report: romp-ibm BSD 4.3
yann@1101
   598
    *:BOSX:*:*)
yann@1101
   599
	echo rs6000-bull-bosx
yann@1101
   600
	exit ;;
yann@1101
   601
    DPX/2?00:B.O.S.:*:*)
yann@1101
   602
	echo m68k-bull-sysv3
yann@1101
   603
	exit ;;
yann@1101
   604
    9000/[34]??:4.3bsd:1.*:*)
yann@1101
   605
	echo m68k-hp-bsd
yann@1101
   606
	exit ;;
yann@1101
   607
    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
yann@1101
   608
	echo m68k-hp-bsd4.4
yann@1101
   609
	exit ;;
yann@1101
   610
    9000/[34678]??:HP-UX:*:*)
yann@1101
   611
	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
yann@1101
   612
	case "${UNAME_MACHINE}" in
yann@1101
   613
	    9000/31? )            HP_ARCH=m68000 ;;
yann@1101
   614
	    9000/[34]?? )         HP_ARCH=m68k ;;
yann@1101
   615
	    9000/[678][0-9][0-9])
yann@1101
   616
		if [ -x /usr/bin/getconf ]; then
yann@1101
   617
		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
yann@2334
   618
		    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
yann@2334
   619
		    case "${sc_cpu_version}" in
yann@2334
   620
		      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
yann@2334
   621
		      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
yann@2334
   622
		      532)                      # CPU_PA_RISC2_0
yann@2334
   623
			case "${sc_kernel_bits}" in
yann@2334
   624
			  32) HP_ARCH="hppa2.0n" ;;
yann@2334
   625
			  64) HP_ARCH="hppa2.0w" ;;
yann@1101
   626
			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
yann@2334
   627
			esac ;;
yann@2334
   628
		    esac
yann@1101
   629
		fi
yann@1101
   630
		if [ "${HP_ARCH}" = "" ]; then
yann@1101
   631
		    eval $set_cc_for_build
yann@2334
   632
		    sed 's/^		//' << EOF >$dummy.c
yann@1101
   633
yann@2334
   634
		#define _HPUX_SOURCE
yann@2334
   635
		#include <stdlib.h>
yann@2334
   636
		#include <unistd.h>
yann@1101
   637
yann@2334
   638
		int main ()
yann@2334
   639
		{
yann@2334
   640
		#if defined(_SC_KERNEL_BITS)
yann@2334
   641
		    long bits = sysconf(_SC_KERNEL_BITS);
yann@2334
   642
		#endif
yann@2334
   643
		    long cpu  = sysconf (_SC_CPU_VERSION);
yann@1101
   644
yann@2334
   645
		    switch (cpu)
yann@2334
   646
			{
yann@2334
   647
			case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
yann@2334
   648
			case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
yann@2334
   649
			case CPU_PA_RISC2_0:
yann@2334
   650
		#if defined(_SC_KERNEL_BITS)
yann@2334
   651
			    switch (bits)
yann@2334
   652
				{
yann@2334
   653
				case 64: puts ("hppa2.0w"); break;
yann@2334
   654
				case 32: puts ("hppa2.0n"); break;
yann@2334
   655
				default: puts ("hppa2.0"); break;
yann@2334
   656
				} break;
yann@2334
   657
		#else  /* !defined(_SC_KERNEL_BITS) */
yann@2334
   658
			    puts ("hppa2.0"); break;
yann@2334
   659
		#endif
yann@2334
   660
			default: puts ("hppa1.0"); break;
yann@2334
   661
			}
yann@2334
   662
		    exit (0);
yann@2334
   663
		}
yann@1101
   664
EOF
yann@1101
   665
		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
yann@1101
   666
		    test -z "$HP_ARCH" && HP_ARCH=hppa
yann@1101
   667
		fi ;;
yann@1101
   668
	esac
yann@1101
   669
	if [ ${HP_ARCH} = "hppa2.0w" ]
yann@1101
   670
	then
yann@1101
   671
	    eval $set_cc_for_build
yann@1101
   672
yann@1101
   673
	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
yann@1101
   674
	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
yann@1101
   675
	    # generating 64-bit code.  GNU and HP use different nomenclature:
yann@1101
   676
	    #
yann@1101
   677
	    # $ CC_FOR_BUILD=cc ./config.guess
yann@1101
   678
	    # => hppa2.0w-hp-hpux11.23
yann@1101
   679
	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
yann@1101
   680
	    # => hppa64-hp-hpux11.23
yann@1101
   681
yann@1101
   682
	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
yann@1418
   683
		grep -q __LP64__
yann@1101
   684
	    then
yann@1101
   685
		HP_ARCH="hppa2.0w"
yann@1101
   686
	    else
yann@1101
   687
		HP_ARCH="hppa64"
yann@1101
   688
	    fi
yann@1101
   689
	fi
yann@1101
   690
	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
yann@1101
   691
	exit ;;
yann@1101
   692
    ia64:HP-UX:*:*)
yann@1101
   693
	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
yann@1101
   694
	echo ia64-hp-hpux${HPUX_REV}
yann@1101
   695
	exit ;;
yann@1101
   696
    3050*:HI-UX:*:*)
yann@1101
   697
	eval $set_cc_for_build
yann@1101
   698
	sed 's/^	//' << EOF >$dummy.c
yann@1101
   699
	#include <unistd.h>
yann@1101
   700
	int
yann@1101
   701
	main ()
yann@1101
   702
	{
yann@1101
   703
	  long cpu = sysconf (_SC_CPU_VERSION);
yann@1101
   704
	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
yann@1101
   705
	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
yann@1101
   706
	     results, however.  */
yann@1101
   707
	  if (CPU_IS_PA_RISC (cpu))
yann@1101
   708
	    {
yann@1101
   709
	      switch (cpu)
yann@1101
   710
		{
yann@1101
   711
		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
yann@1101
   712
		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
yann@1101
   713
		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
yann@1101
   714
		  default: puts ("hppa-hitachi-hiuxwe2"); break;
yann@1101
   715
		}
yann@1101
   716
	    }
yann@1101
   717
	  else if (CPU_IS_HP_MC68K (cpu))
yann@1101
   718
	    puts ("m68k-hitachi-hiuxwe2");
yann@1101
   719
	  else puts ("unknown-hitachi-hiuxwe2");
yann@1101
   720
	  exit (0);
yann@1101
   721
	}
yann@1101
   722
EOF
yann@1101
   723
	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
yann@1101
   724
		{ echo "$SYSTEM_NAME"; exit; }
yann@1101
   725
	echo unknown-hitachi-hiuxwe2
yann@1101
   726
	exit ;;
yann@1101
   727
    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
yann@1101
   728
	echo hppa1.1-hp-bsd
yann@1101
   729
	exit ;;
yann@1101
   730
    9000/8??:4.3bsd:*:*)
yann@1101
   731
	echo hppa1.0-hp-bsd
yann@1101
   732
	exit ;;
yann@1101
   733
    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
yann@1101
   734
	echo hppa1.0-hp-mpeix
yann@1101
   735
	exit ;;
yann@1101
   736
    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
yann@1101
   737
	echo hppa1.1-hp-osf
yann@1101
   738
	exit ;;
yann@1101
   739
    hp8??:OSF1:*:*)
yann@1101
   740
	echo hppa1.0-hp-osf
yann@1101
   741
	exit ;;
yann@1101
   742
    i*86:OSF1:*:*)
yann@1101
   743
	if [ -x /usr/sbin/sysversion ] ; then
yann@1101
   744
	    echo ${UNAME_MACHINE}-unknown-osf1mk
yann@1101
   745
	else
yann@1101
   746
	    echo ${UNAME_MACHINE}-unknown-osf1
yann@1101
   747
	fi
yann@1101
   748
	exit ;;
yann@1101
   749
    parisc*:Lites*:*:*)
yann@1101
   750
	echo hppa1.1-hp-lites
yann@1101
   751
	exit ;;
yann@1101
   752
    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
yann@1101
   753
	echo c1-convex-bsd
yann@2334
   754
	exit ;;
yann@1101
   755
    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
yann@1101
   756
	if getsysinfo -f scalar_acc
yann@1101
   757
	then echo c32-convex-bsd
yann@1101
   758
	else echo c2-convex-bsd
yann@1101
   759
	fi
yann@2334
   760
	exit ;;
yann@1101
   761
    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
yann@1101
   762
	echo c34-convex-bsd
yann@2334
   763
	exit ;;
yann@1101
   764
    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
yann@1101
   765
	echo c38-convex-bsd
yann@2334
   766
	exit ;;
yann@1101
   767
    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
yann@1101
   768
	echo c4-convex-bsd
yann@2334
   769
	exit ;;
yann@1101
   770
    CRAY*Y-MP:*:*:*)
yann@1101
   771
	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
yann@1101
   772
	exit ;;
yann@1101
   773
    CRAY*[A-Z]90:*:*:*)
yann@1101
   774
	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
yann@1101
   775
	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
yann@1101
   776
	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
yann@1101
   777
	      -e 's/\.[^.]*$/.X/'
yann@1101
   778
	exit ;;
yann@1101
   779
    CRAY*TS:*:*:*)
yann@1101
   780
	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
yann@1101
   781
	exit ;;
yann@1101
   782
    CRAY*T3E:*:*:*)
yann@1101
   783
	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
yann@1101
   784
	exit ;;
yann@1101
   785
    CRAY*SV1:*:*:*)
yann@1101
   786
	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
yann@1101
   787
	exit ;;
yann@1101
   788
    *:UNICOS/mp:*:*)
yann@1101
   789
	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
yann@1101
   790
	exit ;;
yann@1101
   791
    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
yann@1101
   792
	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
yann@2334
   793
	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
yann@2334
   794
	FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
yann@2334
   795
	echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
yann@2334
   796
	exit ;;
yann@1101
   797
    5000:UNIX_System_V:4.*:*)
yann@2334
   798
	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
yann@2334
   799
	FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
yann@2334
   800
	echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
yann@1101
   801
	exit ;;
yann@1101
   802
    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
yann@1101
   803
	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
yann@1101
   804
	exit ;;
yann@1101
   805
    sparc*:BSD/OS:*:*)
yann@1101
   806
	echo sparc-unknown-bsdi${UNAME_RELEASE}
yann@1101
   807
	exit ;;
yann@1101
   808
    *:BSD/OS:*:*)
yann@1101
   809
	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
yann@1101
   810
	exit ;;
yann@1101
   811
    *:FreeBSD:*:*)
yann@2698
   812
	UNAME_PROCESSOR=`/usr/bin/uname -p`
yann@2698
   813
	case ${UNAME_PROCESSOR} in
yann@1101
   814
	    amd64)
yann@1101
   815
		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
yann@1101
   816
	    *)
yann@2698
   817
		echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
yann@1101
   818
	esac
yann@1101
   819
	exit ;;
yann@1101
   820
    i*:CYGWIN*:*)
yann@1101
   821
	echo ${UNAME_MACHINE}-pc-cygwin
yann@1101
   822
	exit ;;
yann@3028
   823
    *:MINGW64*:*)
yann@3028
   824
	echo ${UNAME_MACHINE}-pc-mingw64
yann@3028
   825
	exit ;;
yann@1101
   826
    *:MINGW*:*)
yann@1101
   827
	echo ${UNAME_MACHINE}-pc-mingw32
yann@1101
   828
	exit ;;
bryanhundven@3304
   829
    *:MSYS*:*)
yann@2811
   830
	echo ${UNAME_MACHINE}-pc-msys
yann@2811
   831
	exit ;;
yann@1101
   832
    i*:windows32*:*)
yann@2334
   833
	# uname -m includes "-pc" on this system.
yann@2334
   834
	echo ${UNAME_MACHINE}-mingw32
yann@1101
   835
	exit ;;
yann@1101
   836
    i*:PW*:*)
yann@1101
   837
	echo ${UNAME_MACHINE}-pc-pw32
yann@1101
   838
	exit ;;
yann@1652
   839
    *:Interix*:*)
yann@2334
   840
	case ${UNAME_MACHINE} in
yann@1101
   841
	    x86)
yann@1101
   842
		echo i586-pc-interix${UNAME_RELEASE}
yann@1101
   843
		exit ;;
yann@1652
   844
	    authenticamd | genuineintel | EM64T)
yann@1101
   845
		echo x86_64-unknown-interix${UNAME_RELEASE}
yann@1101
   846
		exit ;;
yann@1101
   847
	    IA64)
yann@1101
   848
		echo ia64-unknown-interix${UNAME_RELEASE}
yann@1101
   849
		exit ;;
yann@1101
   850
	esac ;;
yann@1101
   851
    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
yann@1101
   852
	echo i${UNAME_MACHINE}-pc-mks
yann@1101
   853
	exit ;;
yann@1418
   854
    8664:Windows_NT:*)
yann@1418
   855
	echo x86_64-pc-mks
yann@1418
   856
	exit ;;
yann@1101
   857
    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
yann@1101
   858
	# How do we know it's Interix rather than the generic POSIX subsystem?
yann@1101
   859
	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
yann@1101
   860
	# UNAME_MACHINE based on the output of uname instead of i386?
yann@1101
   861
	echo i586-pc-interix
yann@1101
   862
	exit ;;
yann@1101
   863
    i*:UWIN*:*)
yann@1101
   864
	echo ${UNAME_MACHINE}-pc-uwin
yann@1101
   865
	exit ;;
yann@1101
   866
    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
yann@1101
   867
	echo x86_64-unknown-cygwin
yann@1101
   868
	exit ;;
yann@1101
   869
    p*:CYGWIN*:*)
yann@1101
   870
	echo powerpcle-unknown-cygwin
yann@1101
   871
	exit ;;
yann@1101
   872
    prep*:SunOS:5.*:*)
yann@1101
   873
	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
yann@1101
   874
	exit ;;
yann@1101
   875
    *:GNU:*:*)
yann@1101
   876
	# the GNU system
yann@3260
   877
	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
yann@1101
   878
	exit ;;
yann@1101
   879
    *:GNU/*:*:*)
yann@1101
   880
	# other systems with GNU libc and userland
yann@3260
   881
	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
yann@1101
   882
	exit ;;
yann@1101
   883
    i*86:Minix:*:*)
yann@1101
   884
	echo ${UNAME_MACHINE}-pc-minix
yann@1101
   885
	exit ;;
yann@2963
   886
    aarch64:Linux:*:*)
yann@3260
   887
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
yann@2963
   888
	exit ;;
yann@2963
   889
    aarch64_be:Linux:*:*)
yann@2963
   890
	UNAME_MACHINE=aarch64_be
yann@3260
   891
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
yann@2963
   892
	exit ;;
yann@1547
   893
    alpha:Linux:*:*)
yann@1547
   894
	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
yann@1547
   895
	  EV5)   UNAME_MACHINE=alphaev5 ;;
yann@1547
   896
	  EV56)  UNAME_MACHINE=alphaev56 ;;
yann@1547
   897
	  PCA56) UNAME_MACHINE=alphapca56 ;;
yann@1547
   898
	  PCA57) UNAME_MACHINE=alphapca56 ;;
yann@1547
   899
	  EV6)   UNAME_MACHINE=alphaev6 ;;
yann@1547
   900
	  EV67)  UNAME_MACHINE=alphaev67 ;;
yann@1547
   901
	  EV68*) UNAME_MACHINE=alphaev68 ;;
yann@2334
   902
	esac
yann@1547
   903
	objdump --private-headers /bin/sh | grep -q ld.so.1
yann@3260
   904
	if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
yann@3260
   905
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
yann@3260
   906
	exit ;;
yann@3260
   907
    arc:Linux:*:* | arceb:Linux:*:*)
yann@3260
   908
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
yann@1547
   909
	exit ;;
yann@1101
   910
    arm*:Linux:*:*)
yann@1101
   911
	eval $set_cc_for_build
yann@1101
   912
	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
yann@1101
   913
	    | grep -q __ARM_EABI__
yann@1101
   914
	then
yann@3260
   915
	    echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
yann@1101
   916
	else
yann@2538
   917
	    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
yann@2538
   918
		| grep -q __ARM_PCS_VFP
yann@2538
   919
	    then
yann@3260
   920
		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
yann@2538
   921
	    else
yann@3260
   922
		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
yann@2538
   923
	    fi
yann@1101
   924
	fi
yann@1101
   925
	exit ;;
yann@1101
   926
    avr32*:Linux:*:*)
yann@3260
   927
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
yann@1101
   928
	exit ;;
yann@1101
   929
    cris:Linux:*:*)
yann@3260
   930
	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
yann@1101
   931
	exit ;;
yann@1101
   932
    crisv32:Linux:*:*)
yann@3260
   933
	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
yann@1101
   934
	exit ;;
yann@1101
   935
    frv:Linux:*:*)
yann@3260
   936
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
yann@1101
   937
	exit ;;
yann@2698
   938
    hexagon:Linux:*:*)
yann@3260
   939
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
yann@2698
   940
	exit ;;
yann@1547
   941
    i*86:Linux:*:*)
yann@3260
   942
	echo ${UNAME_MACHINE}-pc-linux-${LIBC}
yann@1547
   943
	exit ;;
yann@1101
   944
    ia64:Linux:*:*)
yann@3260
   945
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
yann@1101
   946
	exit ;;
yann@1101
   947
    m32r*:Linux:*:*)
yann@3260
   948
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
yann@1101
   949
	exit ;;
yann@1101
   950
    m68*:Linux:*:*)
yann@3260
   951
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
yann@1101
   952
	exit ;;
yann@1418
   953
    mips:Linux:*:* | mips64:Linux:*:*)
yann@1101
   954
	eval $set_cc_for_build
yann@1101
   955
	sed 's/^	//' << EOF >$dummy.c
yann@1101
   956
	#undef CPU
yann@1418
   957
	#undef ${UNAME_MACHINE}
yann@1418
   958
	#undef ${UNAME_MACHINE}el
yann@1101
   959
	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
yann@1418
   960
	CPU=${UNAME_MACHINE}el
yann@1101
   961
	#else
yann@1101
   962
	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
yann@1418
   963
	CPU=${UNAME_MACHINE}
yann@1101
   964
	#else
yann@1101
   965
	CPU=
yann@1101
   966
	#endif
yann@1101
   967
	#endif
yann@1101
   968
EOF
yann@1652
   969
	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
yann@3260
   970
	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
yann@1101
   971
	;;
bryanhundven@3304
   972
    openrisc*:Linux:*:*)
bryanhundven@3304
   973
	echo or1k-unknown-linux-${LIBC}
yann@3260
   974
	exit ;;
bryanhundven@3304
   975
    or32:Linux:*:* | or1k*:Linux:*:*)
yann@3260
   976
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
yann@1101
   977
	exit ;;
yann@1101
   978
    padre:Linux:*:*)
yann@3260
   979
	echo sparc-unknown-linux-${LIBC}
yann@1101
   980
	exit ;;
yann@1547
   981
    parisc64:Linux:*:* | hppa64:Linux:*:*)
yann@3260
   982
	echo hppa64-unknown-linux-${LIBC}
yann@1547
   983
	exit ;;
yann@1101
   984
    parisc:Linux:*:* | hppa:Linux:*:*)
yann@1101
   985
	# Look for CPU level
yann@1101
   986
	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
yann@3260
   987
	  PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
yann@3260
   988
	  PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
yann@3260
   989
	  *)    echo hppa-unknown-linux-${LIBC} ;;
yann@1101
   990
	esac
yann@1101
   991
	exit ;;
yann@1547
   992
    ppc64:Linux:*:*)
yann@3260
   993
	echo powerpc64-unknown-linux-${LIBC}
yann@1547
   994
	exit ;;
yann@1547
   995
    ppc:Linux:*:*)
yann@3260
   996
	echo powerpc-unknown-linux-${LIBC}
yann@3260
   997
	exit ;;
yann@3260
   998
    ppc64le:Linux:*:*)
yann@3260
   999
	echo powerpc64le-unknown-linux-${LIBC}
yann@3260
  1000
	exit ;;
yann@3260
  1001
    ppcle:Linux:*:*)
yann@3260
  1002
	echo powerpcle-unknown-linux-${LIBC}
yann@1101
  1003
	exit ;;
yann@1101
  1004
    s390:Linux:*:* | s390x:Linux:*:*)
yann@3260
  1005
	echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
yann@1101
  1006
	exit ;;
yann@1101
  1007
    sh64*:Linux:*:*)
yann@3260
  1008
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
yann@1101
  1009
	exit ;;
yann@1101
  1010
    sh*:Linux:*:*)
yann@3260
  1011
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
yann@1101
  1012
	exit ;;
yann@1101
  1013
    sparc:Linux:*:* | sparc64:Linux:*:*)
yann@3260
  1014
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
yann@1101
  1015
	exit ;;
yann@2223
  1016
    tile*:Linux:*:*)
yann@3260
  1017
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
yann@2223
  1018
	exit ;;
yann@1101
  1019
    vax:Linux:*:*)
yann@3260
  1020
	echo ${UNAME_MACHINE}-dec-linux-${LIBC}
yann@1101
  1021
	exit ;;
yann@1101
  1022
    x86_64:Linux:*:*)
yann@3260
  1023
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
yann@1101
  1024
	exit ;;
yann@1101
  1025
    xtensa*:Linux:*:*)
yann@3260
  1026
	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
yann@1101
  1027
	exit ;;
yann@1101
  1028
    i*86:DYNIX/ptx:4*:*)
yann@1101
  1029
	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
yann@1101
  1030
	# earlier versions are messed up and put the nodename in both
yann@1101
  1031
	# sysname and nodename.
yann@1101
  1032
	echo i386-sequent-sysv4
yann@1101
  1033
	exit ;;
yann@1101
  1034
    i*86:UNIX_SV:4.2MP:2.*)
yann@2334
  1035
	# Unixware is an offshoot of SVR4, but it has its own version
yann@2334
  1036
	# number series starting with 2...
yann@2334
  1037
	# I am not positive that other SVR4 systems won't match this,
yann@1101
  1038
	# I just have to hope.  -- rms.
yann@2334
  1039
	# Use sysv4.2uw... so that sysv4* matches it.
yann@1101
  1040
	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
yann@1101
  1041
	exit ;;
yann@1101
  1042
    i*86:OS/2:*:*)
yann@1101
  1043
	# If we were able to find `uname', then EMX Unix compatibility
yann@1101
  1044
	# is probably installed.
yann@1101
  1045
	echo ${UNAME_MACHINE}-pc-os2-emx
yann@1101
  1046
	exit ;;
yann@1101
  1047
    i*86:XTS-300:*:STOP)
yann@1101
  1048
	echo ${UNAME_MACHINE}-unknown-stop
yann@1101
  1049
	exit ;;
yann@1101
  1050
    i*86:atheos:*:*)
yann@1101
  1051
	echo ${UNAME_MACHINE}-unknown-atheos
yann@1101
  1052
	exit ;;
yann@1101
  1053
    i*86:syllable:*:*)
yann@1101
  1054
	echo ${UNAME_MACHINE}-pc-syllable
yann@1101
  1055
	exit ;;
yann@1418
  1056
    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
yann@1101
  1057
	echo i386-unknown-lynxos${UNAME_RELEASE}
yann@1101
  1058
	exit ;;
yann@1101
  1059
    i*86:*DOS:*:*)
yann@1101
  1060
	echo ${UNAME_MACHINE}-pc-msdosdjgpp
yann@1101
  1061
	exit ;;
yann@1101
  1062
    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
yann@1101
  1063
	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
yann@1101
  1064
	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
yann@1101
  1065
		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
yann@1101
  1066
	else
yann@1101
  1067
		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
yann@1101
  1068
	fi
yann@1101
  1069
	exit ;;
yann@1101
  1070
    i*86:*:5:[678]*)
yann@2334
  1071
	# UnixWare 7.x, OpenUNIX and OpenServer 6.
yann@1101
  1072
	case `/bin/uname -X | grep "^Machine"` in
yann@1101
  1073
	    *486*)	     UNAME_MACHINE=i486 ;;
yann@1101
  1074
	    *Pentium)	     UNAME_MACHINE=i586 ;;
yann@1101
  1075
	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
yann@1101
  1076
	esac
yann@1101
  1077
	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
yann@1101
  1078
	exit ;;
yann@1101
  1079
    i*86:*:3.2:*)
yann@1101
  1080
	if test -f /usr/options/cb.name; then
yann@1101
  1081
		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
yann@1101
  1082
		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
yann@1101
  1083
	elif /bin/uname -X 2>/dev/null >/dev/null ; then
yann@1101
  1084
		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
yann@1101
  1085
		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
yann@1101
  1086
		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
yann@1101
  1087
			&& UNAME_MACHINE=i586
yann@1101
  1088
		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
yann@1101
  1089
			&& UNAME_MACHINE=i686
yann@1101
  1090
		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
yann@1101
  1091
			&& UNAME_MACHINE=i686
yann@1101
  1092
		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
yann@1101
  1093
	else
yann@1101
  1094
		echo ${UNAME_MACHINE}-pc-sysv32
yann@1101
  1095
	fi
yann@1101
  1096
	exit ;;
yann@1101
  1097
    pc:*:*:*)
yann@1101
  1098
	# Left here for compatibility:
yann@2334
  1099
	# uname -m prints for DJGPP always 'pc', but it prints nothing about
yann@2334
  1100
	# the processor, so we play safe by assuming i586.
yann@1309
  1101
	# Note: whatever this is, it MUST be the same as what config.sub
yann@1309
  1102
	# prints for the "djgpp" host, or else GDB configury will decide that
yann@1309
  1103
	# this is a cross-build.
yann@1309
  1104
	echo i586-pc-msdosdjgpp
yann@2334
  1105
	exit ;;
yann@1101
  1106
    Intel:Mach:3*:*)
yann@1101
  1107
	echo i386-pc-mach3
yann@1101
  1108
	exit ;;
yann@1101
  1109
    paragon:*:*:*)
yann@1101
  1110
	echo i860-intel-osf1
yann@1101
  1111
	exit ;;
yann@1101
  1112
    i860:*:4.*:*) # i860-SVR4
yann@1101
  1113
	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
yann@1101
  1114
	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
yann@1101
  1115
	else # Add other i860-SVR4 vendors below as they are discovered.
yann@1101
  1116
	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
yann@1101
  1117
	fi
yann@1101
  1118
	exit ;;
yann@1101
  1119
    mini*:CTIX:SYS*5:*)
yann@1101
  1120
	# "miniframe"
yann@1101
  1121
	echo m68010-convergent-sysv
yann@1101
  1122
	exit ;;
yann@1101
  1123
    mc68k:UNIX:SYSTEM5:3.51m)
yann@1101
  1124
	echo m68k-convergent-sysv
yann@1101
  1125
	exit ;;
yann@1101
  1126
    M680?0:D-NIX:5.3:*)
yann@1101
  1127
	echo m68k-diab-dnix
yann@1101
  1128
	exit ;;
yann@1101
  1129
    M68*:*:R3V[5678]*:*)
yann@1101
  1130
	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
yann@1101
  1131
    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)
yann@1101
  1132
	OS_REL=''
yann@1101
  1133
	test -r /etc/.relid \
yann@1101
  1134
	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
yann@1101
  1135
	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
yann@1101
  1136
	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
yann@1101
  1137
	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
yann@1101
  1138
	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
yann@1101
  1139
    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
yann@2334
  1140
	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
yann@2334
  1141
	  && { echo i486-ncr-sysv4; exit; } ;;
yann@1261
  1142
    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
yann@1261
  1143
	OS_REL='.3'
yann@1261
  1144
	test -r /etc/.relid \
yann@1261
  1145
	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
yann@1261
  1146
	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
yann@1261
  1147
	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
yann@1261
  1148
	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
yann@1261
  1149
	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
yann@1261
  1150
	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
yann@1261
  1151
	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
yann@1101
  1152
    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
yann@1101
  1153
	echo m68k-unknown-lynxos${UNAME_RELEASE}
yann@1101
  1154
	exit ;;
yann@1101
  1155
    mc68030:UNIX_System_V:4.*:*)
yann@1101
  1156
	echo m68k-atari-sysv4
yann@1101
  1157
	exit ;;
yann@1101
  1158
    TSUNAMI:LynxOS:2.*:*)
yann@1101
  1159
	echo sparc-unknown-lynxos${UNAME_RELEASE}
yann@1101
  1160
	exit ;;
yann@1101
  1161
    rs6000:LynxOS:2.*:*)
yann@1101
  1162
	echo rs6000-unknown-lynxos${UNAME_RELEASE}
yann@1101
  1163
	exit ;;
yann@1418
  1164
    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
yann@1101
  1165
	echo powerpc-unknown-lynxos${UNAME_RELEASE}
yann@1101
  1166
	exit ;;
yann@1101
  1167
    SM[BE]S:UNIX_SV:*:*)
yann@1101
  1168
	echo mips-dde-sysv${UNAME_RELEASE}
yann@1101
  1169
	exit ;;
yann@1101
  1170
    RM*:ReliantUNIX-*:*:*)
yann@1101
  1171
	echo mips-sni-sysv4
yann@1101
  1172
	exit ;;
yann@1101
  1173
    RM*:SINIX-*:*:*)
yann@1101
  1174
	echo mips-sni-sysv4
yann@1101
  1175
	exit ;;
yann@1101
  1176
    *:SINIX-*:*:*)
yann@1101
  1177
	if uname -p 2>/dev/null >/dev/null ; then
yann@1101
  1178
		UNAME_MACHINE=`(uname -p) 2>/dev/null`
yann@1101
  1179
		echo ${UNAME_MACHINE}-sni-sysv4
yann@1101
  1180
	else
yann@1101
  1181
		echo ns32k-sni-sysv
yann@1101
  1182
	fi
yann@1101
  1183
	exit ;;
yann@2334
  1184
    PENTIUM:*:4.0*:*)	# Unisys `ClearPath HMP IX 4000' SVR4/MP effort
yann@2334
  1185
			# says <Richard.M.Bartel@ccMail.Census.GOV>
yann@2334
  1186
	echo i586-unisys-sysv4
yann@2334
  1187
	exit ;;
yann@1101
  1188
    *:UNIX_System_V:4*:FTX*)
yann@1101
  1189
	# From Gerald Hewes <hewes@openmarket.com>.
yann@1101
  1190
	# How about differentiating between stratus architectures? -djm
yann@1101
  1191
	echo hppa1.1-stratus-sysv4
yann@1101
  1192
	exit ;;
yann@1101
  1193
    *:*:*:FTX*)
yann@1101
  1194
	# From seanf@swdc.stratus.com.
yann@1101
  1195
	echo i860-stratus-sysv4
yann@1101
  1196
	exit ;;
yann@1101
  1197
    i*86:VOS:*:*)
yann@1101
  1198
	# From Paul.Green@stratus.com.
yann@1101
  1199
	echo ${UNAME_MACHINE}-stratus-vos
yann@1101
  1200
	exit ;;
yann@1101
  1201
    *:VOS:*:*)
yann@1101
  1202
	# From Paul.Green@stratus.com.
yann@1101
  1203
	echo hppa1.1-stratus-vos
yann@1101
  1204
	exit ;;
yann@1101
  1205
    mc68*:A/UX:*:*)
yann@1101
  1206
	echo m68k-apple-aux${UNAME_RELEASE}
yann@1101
  1207
	exit ;;
yann@1101
  1208
    news*:NEWS-OS:6*:*)
yann@1101
  1209
	echo mips-sony-newsos6
yann@1101
  1210
	exit ;;
yann@1101
  1211
    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
yann@1101
  1212
	if [ -d /usr/nec ]; then
yann@2334
  1213
		echo mips-nec-sysv${UNAME_RELEASE}
yann@1101
  1214
	else
yann@2334
  1215
		echo mips-unknown-sysv${UNAME_RELEASE}
yann@1101
  1216
	fi
yann@2334
  1217
	exit ;;
yann@1101
  1218
    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
yann@1101
  1219
	echo powerpc-be-beos
yann@1101
  1220
	exit ;;
yann@1101
  1221
    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
yann@1101
  1222
	echo powerpc-apple-beos
yann@1101
  1223
	exit ;;
yann@1101
  1224
    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
yann@1101
  1225
	echo i586-pc-beos
yann@1101
  1226
	exit ;;
yann@1101
  1227
    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
yann@1101
  1228
	echo i586-pc-haiku
yann@1101
  1229
	exit ;;
yann@3064
  1230
    x86_64:Haiku:*:*)
yann@3064
  1231
	echo x86_64-unknown-haiku
yann@3064
  1232
	exit ;;
yann@1101
  1233
    SX-4:SUPER-UX:*:*)
yann@1101
  1234
	echo sx4-nec-superux${UNAME_RELEASE}
yann@1101
  1235
	exit ;;
yann@1101
  1236
    SX-5:SUPER-UX:*:*)
yann@1101
  1237
	echo sx5-nec-superux${UNAME_RELEASE}
yann@1101
  1238
	exit ;;
yann@1101
  1239
    SX-6:SUPER-UX:*:*)
yann@1101
  1240
	echo sx6-nec-superux${UNAME_RELEASE}
yann@1101
  1241
	exit ;;
yann@1101
  1242
    SX-7:SUPER-UX:*:*)
yann@1101
  1243
	echo sx7-nec-superux${UNAME_RELEASE}
yann@1101
  1244
	exit ;;
yann@1101
  1245
    SX-8:SUPER-UX:*:*)
yann@1101
  1246
	echo sx8-nec-superux${UNAME_RELEASE}
yann@1101
  1247
	exit ;;
yann@1101
  1248
    SX-8R:SUPER-UX:*:*)
yann@1101
  1249
	echo sx8r-nec-superux${UNAME_RELEASE}
yann@1101
  1250
	exit ;;
yann@1101
  1251
    Power*:Rhapsody:*:*)
yann@1101
  1252
	echo powerpc-apple-rhapsody${UNAME_RELEASE}
yann@1101
  1253
	exit ;;
yann@1101
  1254
    *:Rhapsody:*:*)
yann@1101
  1255
	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
yann@1101
  1256
	exit ;;
yann@1101
  1257
    *:Darwin:*:*)
yann@1101
  1258
	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
yann@3260
  1259
	eval $set_cc_for_build
yann@3260
  1260
	if test "$UNAME_PROCESSOR" = unknown ; then
yann@3260
  1261
	    UNAME_PROCESSOR=powerpc
yann@3260
  1262
	fi
yann@3260
  1263
	if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
yann@3260
  1264
	    if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
yann@3260
  1265
		if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
yann@3260
  1266
		    (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
yann@3260
  1267
		    grep IS_64BIT_ARCH >/dev/null
yann@3260
  1268
		then
yann@3260
  1269
		    case $UNAME_PROCESSOR in
yann@3260
  1270
			i386) UNAME_PROCESSOR=x86_64 ;;
yann@3260
  1271
			powerpc) UNAME_PROCESSOR=powerpc64 ;;
yann@3260
  1272
		    esac
yann@3260
  1273
		fi
yann@3260
  1274
	    fi
yann@3260
  1275
	elif test "$UNAME_PROCESSOR" = i386 ; then
yann@3260
  1276
	    # Avoid executing cc on OS X 10.9, as it ships with a stub
yann@3260
  1277
	    # that puts up a graphical alert prompting to install
yann@3260
  1278
	    # developer tools.  Any system running Mac OS X 10.7 or
yann@3260
  1279
	    # later (Darwin 11 and later) is required to have a 64-bit
yann@3260
  1280
	    # processor. This is not true of the ARM version of Darwin
yann@3260
  1281
	    # that Apple uses in portable devices.
yann@3260
  1282
	    UNAME_PROCESSOR=x86_64
yann@3260
  1283
	fi
yann@1101
  1284
	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
yann@1101
  1285
	exit ;;
yann@1101
  1286
    *:procnto*:*:* | *:QNX:[0123456789]*:*)
yann@1101
  1287
	UNAME_PROCESSOR=`uname -p`
yann@1101
  1288
	if test "$UNAME_PROCESSOR" = "x86"; then
yann@1101
  1289
		UNAME_PROCESSOR=i386
yann@1101
  1290
		UNAME_MACHINE=pc
yann@1101
  1291
	fi
yann@1101
  1292
	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
yann@1101
  1293
	exit ;;
yann@1101
  1294
    *:QNX:*:4*)
yann@1101
  1295
	echo i386-pc-qnx
yann@1101
  1296
	exit ;;
yann@2223
  1297
    NEO-?:NONSTOP_KERNEL:*:*)
yann@2223
  1298
	echo neo-tandem-nsk${UNAME_RELEASE}
yann@2223
  1299
	exit ;;
yann@3028
  1300
    NSE-*:NONSTOP_KERNEL:*:*)
yann@1101
  1301
	echo nse-tandem-nsk${UNAME_RELEASE}
yann@1101
  1302
	exit ;;
yann@1101
  1303
    NSR-?:NONSTOP_KERNEL:*:*)
yann@1101
  1304
	echo nsr-tandem-nsk${UNAME_RELEASE}
yann@1101
  1305
	exit ;;
yann@1101
  1306
    *:NonStop-UX:*:*)
yann@1101
  1307
	echo mips-compaq-nonstopux
yann@1101
  1308
	exit ;;
yann@1101
  1309
    BS2000:POSIX*:*:*)
yann@1101
  1310
	echo bs2000-siemens-sysv
yann@1101
  1311
	exit ;;
yann@1101
  1312
    DS/*:UNIX_System_V:*:*)
yann@1101
  1313
	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
yann@1101
  1314
	exit ;;
yann@1101
  1315
    *:Plan9:*:*)
yann@1101
  1316
	# "uname -m" is not consistent, so use $cputype instead. 386
yann@1101
  1317
	# is converted to i386 for consistency with other x86
yann@1101
  1318
	# operating systems.
yann@1101
  1319
	if test "$cputype" = "386"; then
yann@1101
  1320
	    UNAME_MACHINE=i386
yann@1101
  1321
	else
yann@1101
  1322
	    UNAME_MACHINE="$cputype"
yann@1101
  1323
	fi
yann@1101
  1324
	echo ${UNAME_MACHINE}-unknown-plan9
yann@1101
  1325
	exit ;;
yann@1101
  1326
    *:TOPS-10:*:*)
yann@1101
  1327
	echo pdp10-unknown-tops10
yann@1101
  1328
	exit ;;
yann@1101
  1329
    *:TENEX:*:*)
yann@1101
  1330
	echo pdp10-unknown-tenex
yann@1101
  1331
	exit ;;
yann@1101
  1332
    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
yann@1101
  1333
	echo pdp10-dec-tops20
yann@1101
  1334
	exit ;;
yann@1101
  1335
    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
yann@1101
  1336
	echo pdp10-xkl-tops20
yann@1101
  1337
	exit ;;
yann@1101
  1338
    *:TOPS-20:*:*)
yann@1101
  1339
	echo pdp10-unknown-tops20
yann@1101
  1340
	exit ;;
yann@1101
  1341
    *:ITS:*:*)
yann@1101
  1342
	echo pdp10-unknown-its
yann@1101
  1343
	exit ;;
yann@1101
  1344
    SEI:*:*:SEIUX)
yann@2334
  1345
	echo mips-sei-seiux${UNAME_RELEASE}
yann@1101
  1346
	exit ;;
yann@1101
  1347
    *:DragonFly:*:*)
yann@1101
  1348
	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
yann@1101
  1349
	exit ;;
yann@1101
  1350
    *:*VMS:*:*)
yann@2334
  1351
	UNAME_MACHINE=`(uname -p) 2>/dev/null`
yann@1101
  1352
	case "${UNAME_MACHINE}" in
yann@1101
  1353
	    A*) echo alpha-dec-vms ; exit ;;
yann@1101
  1354
	    I*) echo ia64-dec-vms ; exit ;;
yann@1101
  1355
	    V*) echo vax-dec-vms ; exit ;;
yann@1101
  1356
	esac ;;
yann@1101
  1357
    *:XENIX:*:SysV)
yann@1101
  1358
	echo i386-pc-xenix
yann@1101
  1359
	exit ;;
yann@1101
  1360
    i*86:skyos:*:*)
yann@1101
  1361
	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
yann@1101
  1362
	exit ;;
yann@1101
  1363
    i*86:rdos:*:*)
yann@1101
  1364
	echo ${UNAME_MACHINE}-pc-rdos
yann@1101
  1365
	exit ;;
yann@1261
  1366
    i*86:AROS:*:*)
yann@1261
  1367
	echo ${UNAME_MACHINE}-pc-aros
yann@1261
  1368
	exit ;;
yann@2963
  1369
    x86_64:VMkernel:*:*)
yann@2963
  1370
	echo ${UNAME_MACHINE}-unknown-esx
yann@2963
  1371
	exit ;;
yann@1101
  1372
esac
yann@1101
  1373
yann@1101
  1374
cat >&2 <<EOF
yann@1101
  1375
$0: unable to guess system type
yann@1101
  1376
yann@1101
  1377
This script, last modified $timestamp, has failed to recognize
yann@1101
  1378
the operating system you are using. It is advised that you
yann@1101
  1379
download the most up to date version of the config scripts from
yann@1101
  1380
yann@1101
  1381
  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
yann@1101
  1382
and
yann@1101
  1383
  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
yann@1101
  1384
yann@1101
  1385
If the version you run ($0) is already up to date, please
yann@1101
  1386
send the following data and any information you think might be
yann@1101
  1387
pertinent to <config-patches@gnu.org> in order to provide the needed
yann@1101
  1388
information to handle your system.
yann@1101
  1389
yann@1101
  1390
config.guess timestamp = $timestamp
yann@1101
  1391
yann@1101
  1392
uname -m = `(uname -m) 2>/dev/null || echo unknown`
yann@1101
  1393
uname -r = `(uname -r) 2>/dev/null || echo unknown`
yann@1101
  1394
uname -s = `(uname -s) 2>/dev/null || echo unknown`
yann@1101
  1395
uname -v = `(uname -v) 2>/dev/null || echo unknown`
yann@1101
  1396
yann@1101
  1397
/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
yann@1101
  1398
/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
yann@1101
  1399
yann@1101
  1400
hostinfo               = `(hostinfo) 2>/dev/null`
yann@1101
  1401
/bin/universe          = `(/bin/universe) 2>/dev/null`
yann@1101
  1402
/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
yann@1101
  1403
/bin/arch              = `(/bin/arch) 2>/dev/null`
yann@1101
  1404
/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
yann@1101
  1405
/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
yann@1101
  1406
yann@1101
  1407
UNAME_MACHINE = ${UNAME_MACHINE}
yann@1101
  1408
UNAME_RELEASE = ${UNAME_RELEASE}
yann@1101
  1409
UNAME_SYSTEM  = ${UNAME_SYSTEM}
yann@1101
  1410
UNAME_VERSION = ${UNAME_VERSION}
yann@1101
  1411
EOF
yann@1101
  1412
yann@1101
  1413
exit 1
yann@1101
  1414
yann@1101
  1415
# Local variables:
yann@1101
  1416
# eval: (add-hook 'write-file-hooks 'time-stamp)
yann@1101
  1417
# time-stamp-start: "timestamp='"
yann@1101
  1418
# time-stamp-format: "%:y-%02m-%02d"
yann@1101
  1419
# time-stamp-end: "'"
yann@1101
  1420
# End: