config.guess revision a570218a
1b1297603Smrg#! /bin/sh 2b1297603Smrg# Attempt to guess a canonical system name. 3a570218aSmrg# Copyright 1992-2018 Free Software Foundation, Inc. 4b1297603Smrg 5a570218aSmrgtimestamp='2018-08-29' 6b1297603Smrg 7b1297603Smrg# This file is free software; you can redistribute it and/or modify it 8b1297603Smrg# under the terms of the GNU General Public License as published by 933734831Smrg# the Free Software Foundation; either version 3 of the License, or 10b1297603Smrg# (at your option) any later version. 11b1297603Smrg# 12b1297603Smrg# This program is distributed in the hope that it will be useful, but 13b1297603Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of 14b1297603Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15b1297603Smrg# General Public License for more details. 16b1297603Smrg# 17b1297603Smrg# You should have received a copy of the GNU General Public License 18a570218aSmrg# along with this program; if not, see <https://www.gnu.org/licenses/>. 19b1297603Smrg# 20b1297603Smrg# As a special exception to the GNU General Public License, if you 21b1297603Smrg# distribute this file as part of a program that contains a 22b1297603Smrg# configuration script generated by Autoconf, you may include it under 2333734831Smrg# the same distribution terms that you use for the rest of that 2433734831Smrg# program. This Exception is an additional permission under section 7 2533734831Smrg# of the GNU General Public License, version 3 ("GPLv3"). 2633734831Smrg# 27a570218aSmrg# Originally written by Per Bothner; maintained since 2000 by Ben Elliston. 28b1297603Smrg# 2933734831Smrg# You can get the latest version of this script from: 30a570218aSmrg# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess 31b1297603Smrg# 32a570218aSmrg# Please send patches to <config-patches@gnu.org>. 3333734831Smrg 34b1297603Smrg 35b1297603Smrgme=`echo "$0" | sed -e 's,.*/,,'` 36b1297603Smrg 37b1297603Smrgusage="\ 38b1297603SmrgUsage: $0 [OPTION] 39b1297603Smrg 40b1297603SmrgOutput the configuration name of the system \`$me' is run on. 41b1297603Smrg 42a570218aSmrgOptions: 43b1297603Smrg -h, --help print this help, then exit 44b1297603Smrg -t, --time-stamp print date of last modification, then exit 45b1297603Smrg -v, --version print version number, then exit 46b1297603Smrg 47b1297603SmrgReport bugs and patches to <config-patches@gnu.org>." 48b1297603Smrg 49b1297603Smrgversion="\ 50b1297603SmrgGNU config.guess ($timestamp) 51b1297603Smrg 52b1297603SmrgOriginally written by Per Bothner. 53a570218aSmrgCopyright 1992-2018 Free Software Foundation, Inc. 54b1297603Smrg 55b1297603SmrgThis is free software; see the source for copying conditions. There is NO 56b1297603Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 57b1297603Smrg 58b1297603Smrghelp=" 59b1297603SmrgTry \`$me --help' for more information." 60b1297603Smrg 61b1297603Smrg# Parse command line 62b1297603Smrgwhile test $# -gt 0 ; do 63b1297603Smrg case $1 in 64b1297603Smrg --time-stamp | --time* | -t ) 65b1297603Smrg echo "$timestamp" ; exit ;; 66b1297603Smrg --version | -v ) 67b1297603Smrg echo "$version" ; exit ;; 68b1297603Smrg --help | --h* | -h ) 69b1297603Smrg echo "$usage"; exit ;; 70b1297603Smrg -- ) # Stop option processing 71b1297603Smrg shift; break ;; 72b1297603Smrg - ) # Use stdin as input. 73b1297603Smrg break ;; 74b1297603Smrg -* ) 75b1297603Smrg echo "$me: invalid option $1$help" >&2 76b1297603Smrg exit 1 ;; 77b1297603Smrg * ) 78b1297603Smrg break ;; 79b1297603Smrg esac 80b1297603Smrgdone 81b1297603Smrg 82b1297603Smrgif test $# != 0; then 83b1297603Smrg echo "$me: too many arguments$help" >&2 84b1297603Smrg exit 1 85b1297603Smrgfi 86b1297603Smrg 87b1297603Smrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 88b1297603Smrg# compiler to aid in system detection is discouraged as it requires 89b1297603Smrg# temporary files to be created and, as you can see below, it is a 90b1297603Smrg# headache to deal with in a portable fashion. 91b1297603Smrg 92b1297603Smrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 93b1297603Smrg# use `HOST_CC' if defined, but it is deprecated. 94b1297603Smrg 95b1297603Smrg# Portable tmp directory creation inspired by the Autoconf team. 96b1297603Smrg 97a570218aSmrgtmp= 98a570218aSmrg# shellcheck disable=SC2172 99a570218aSmrgtrap 'test -z "$tmp" || rm -fr "$tmp"' 1 2 13 15 100a570218aSmrgtrap 'exitcode=$?; test -z "$tmp" || rm -fr "$tmp"; exit $exitcode' 0 101a570218aSmrg 102a570218aSmrgset_cc_for_build() { 103a570218aSmrg : "${TMPDIR=/tmp}" 104a570218aSmrg # shellcheck disable=SC2039 105a570218aSmrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 106a570218aSmrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } || 107a570218aSmrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } || 108a570218aSmrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } 109a570218aSmrg dummy=$tmp/dummy 110a570218aSmrg case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in 111a570218aSmrg ,,) echo "int x;" > "$dummy.c" 112a570218aSmrg for driver in cc gcc c89 c99 ; do 113a570218aSmrg if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then 114a570218aSmrg CC_FOR_BUILD="$driver" 115a570218aSmrg break 116a570218aSmrg fi 117a570218aSmrg done 118a570218aSmrg if test x"$CC_FOR_BUILD" = x ; then 119a570218aSmrg CC_FOR_BUILD=no_compiler_found 120a570218aSmrg fi 121a570218aSmrg ;; 122a570218aSmrg ,,*) CC_FOR_BUILD=$CC ;; 123a570218aSmrg ,*,*) CC_FOR_BUILD=$HOST_CC ;; 124a570218aSmrg esac 125a570218aSmrg} 126b1297603Smrg 127b1297603Smrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 128b1297603Smrg# (ghazi@noc.rutgers.edu 1994-08-24) 129a570218aSmrgif test -f /.attbin/uname ; then 130b1297603Smrg PATH=$PATH:/.attbin ; export PATH 131b1297603Smrgfi 132b1297603Smrg 133b1297603SmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 134b1297603SmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 135b1297603SmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 136b1297603SmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 137b1297603Smrg 138a570218aSmrgcase "$UNAME_SYSTEM" in 139a570218aSmrgLinux|GNU|GNU/*) 140a570218aSmrg # If the system lacks a compiler, then just pick glibc. 141a570218aSmrg # We could probably try harder. 142a570218aSmrg LIBC=gnu 143a570218aSmrg 144a570218aSmrg set_cc_for_build 145a570218aSmrg cat <<-EOF > "$dummy.c" 146a570218aSmrg #include <features.h> 147a570218aSmrg #if defined(__UCLIBC__) 148a570218aSmrg LIBC=uclibc 149a570218aSmrg #elif defined(__dietlibc__) 150a570218aSmrg LIBC=dietlibc 151a570218aSmrg #else 152a570218aSmrg LIBC=gnu 153a570218aSmrg #endif 154a570218aSmrg EOF 155a570218aSmrg eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`" 156a570218aSmrg 157a570218aSmrg # If ldd exists, use it to detect musl libc. 158a570218aSmrg if command -v ldd >/dev/null && \ 159a570218aSmrg ldd --version 2>&1 | grep -q ^musl 160a570218aSmrg then 161a570218aSmrg LIBC=musl 162a570218aSmrg fi 163a570218aSmrg ;; 164a570218aSmrgesac 165a570218aSmrg 166b1297603Smrg# Note: order is significant - the case branches are not exclusive. 167b1297603Smrg 168a570218aSmrgcase "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in 169b1297603Smrg *:NetBSD:*:*) 170b1297603Smrg # NetBSD (nbsd) targets should (where applicable) match one or 17133734831Smrg # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, 172b1297603Smrg # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 173b1297603Smrg # switched to ELF, *-*-netbsd* would select the old 174b1297603Smrg # object file format. This provides both forward 175b1297603Smrg # compatibility and a consistent mechanism for selecting the 176b1297603Smrg # object file format. 177b1297603Smrg # 178b1297603Smrg # Note: NetBSD doesn't particularly care about the vendor 179b1297603Smrg # portion of the name. We always set it to "unknown". 180b1297603Smrg sysctl="sysctl -n hw.machine_arch" 181a570218aSmrg UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \ 182a570218aSmrg "/sbin/$sysctl" 2>/dev/null || \ 183a570218aSmrg "/usr/sbin/$sysctl" 2>/dev/null || \ 184a570218aSmrg echo unknown)` 185a570218aSmrg case "$UNAME_MACHINE_ARCH" in 186b1297603Smrg armeb) machine=armeb-unknown ;; 187b1297603Smrg arm*) machine=arm-unknown ;; 188b1297603Smrg sh3el) machine=shl-unknown ;; 189b1297603Smrg sh3eb) machine=sh-unknown ;; 19033734831Smrg sh5el) machine=sh5le-unknown ;; 191a570218aSmrg earmv*) 192a570218aSmrg arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'` 193a570218aSmrg endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'` 194a570218aSmrg machine="${arch}${endian}"-unknown 195a570218aSmrg ;; 196a570218aSmrg *) machine="$UNAME_MACHINE_ARCH"-unknown ;; 197b1297603Smrg esac 198b1297603Smrg # The Operating System including object format, if it has switched 199a570218aSmrg # to ELF recently (or will in the future) and ABI. 200a570218aSmrg case "$UNAME_MACHINE_ARCH" in 201a570218aSmrg earm*) 202a570218aSmrg os=netbsdelf 203a570218aSmrg ;; 204b1297603Smrg arm*|i386|m68k|ns32k|sh3*|sparc|vax) 205a570218aSmrg set_cc_for_build 206b1297603Smrg if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 20733734831Smrg | grep -q __ELF__ 208b1297603Smrg then 209b1297603Smrg # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 210b1297603Smrg # Return netbsd for either. FIX? 211b1297603Smrg os=netbsd 212b1297603Smrg else 213b1297603Smrg os=netbsdelf 214b1297603Smrg fi 215b1297603Smrg ;; 216b1297603Smrg *) 21733734831Smrg os=netbsd 218b1297603Smrg ;; 219b1297603Smrg esac 220a570218aSmrg # Determine ABI tags. 221a570218aSmrg case "$UNAME_MACHINE_ARCH" in 222a570218aSmrg earm*) 223a570218aSmrg expr='s/^earmv[0-9]/-eabi/;s/eb$//' 224a570218aSmrg abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"` 225a570218aSmrg ;; 226a570218aSmrg esac 227b1297603Smrg # The OS release 228b1297603Smrg # Debian GNU/NetBSD machines have a different userland, and 229b1297603Smrg # thus, need a distinct triplet. However, they do not need 230b1297603Smrg # kernel version information, so it can be replaced with a 231b1297603Smrg # suitable tag, in the style of linux-gnu. 232a570218aSmrg case "$UNAME_VERSION" in 233b1297603Smrg Debian*) 234b1297603Smrg release='-gnu' 235b1297603Smrg ;; 236b1297603Smrg *) 237a570218aSmrg release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2` 238b1297603Smrg ;; 239b1297603Smrg esac 240b1297603Smrg # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 241b1297603Smrg # contains redundant information, the shorter form: 242b1297603Smrg # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 243a570218aSmrg echo "$machine-${os}${release}${abi-}" 244b1297603Smrg exit ;; 24533734831Smrg *:Bitrig:*:*) 24633734831Smrg UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` 247a570218aSmrg echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE" 24833734831Smrg exit ;; 249b1297603Smrg *:OpenBSD:*:*) 250b1297603Smrg UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 251a570218aSmrg echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE" 252a570218aSmrg exit ;; 253a570218aSmrg *:LibertyBSD:*:*) 254a570218aSmrg UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'` 255a570218aSmrg echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE" 256a570218aSmrg exit ;; 257a570218aSmrg *:MidnightBSD:*:*) 258a570218aSmrg echo "$UNAME_MACHINE"-unknown-midnightbsd"$UNAME_RELEASE" 259b1297603Smrg exit ;; 260b1297603Smrg *:ekkoBSD:*:*) 261a570218aSmrg echo "$UNAME_MACHINE"-unknown-ekkobsd"$UNAME_RELEASE" 262b1297603Smrg exit ;; 2635b944e2aSmrg *:SolidBSD:*:*) 264a570218aSmrg echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE" 2655b944e2aSmrg exit ;; 266b1297603Smrg macppc:MirBSD:*:*) 267a570218aSmrg echo powerpc-unknown-mirbsd"$UNAME_RELEASE" 268b1297603Smrg exit ;; 269b1297603Smrg *:MirBSD:*:*) 270a570218aSmrg echo "$UNAME_MACHINE"-unknown-mirbsd"$UNAME_RELEASE" 271b1297603Smrg exit ;; 272a570218aSmrg *:Sortix:*:*) 273a570218aSmrg echo "$UNAME_MACHINE"-unknown-sortix 274a570218aSmrg exit ;; 275a570218aSmrg *:Redox:*:*) 276a570218aSmrg echo "$UNAME_MACHINE"-unknown-redox 277a570218aSmrg exit ;; 278a570218aSmrg mips:OSF1:*.*) 279a570218aSmrg echo mips-dec-osf1 280a570218aSmrg exit ;; 281b1297603Smrg alpha:OSF1:*:*) 282b1297603Smrg case $UNAME_RELEASE in 283b1297603Smrg *4.0) 284b1297603Smrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 285b1297603Smrg ;; 286b1297603Smrg *5.*) 28733734831Smrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 288b1297603Smrg ;; 289b1297603Smrg esac 290b1297603Smrg # According to Compaq, /usr/sbin/psrinfo has been available on 291b1297603Smrg # OSF/1 and Tru64 systems produced since 1995. I hope that 292b1297603Smrg # covers most systems running today. This code pipes the CPU 293b1297603Smrg # types through head -n 1, so we only detect the type of CPU 0. 294b1297603Smrg ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 295b1297603Smrg case "$ALPHA_CPU_TYPE" in 296b1297603Smrg "EV4 (21064)") 297a570218aSmrg UNAME_MACHINE=alpha ;; 298b1297603Smrg "EV4.5 (21064)") 299a570218aSmrg UNAME_MACHINE=alpha ;; 300b1297603Smrg "LCA4 (21066/21068)") 301a570218aSmrg UNAME_MACHINE=alpha ;; 302b1297603Smrg "EV5 (21164)") 303a570218aSmrg UNAME_MACHINE=alphaev5 ;; 304b1297603Smrg "EV5.6 (21164A)") 305a570218aSmrg UNAME_MACHINE=alphaev56 ;; 306b1297603Smrg "EV5.6 (21164PC)") 307a570218aSmrg UNAME_MACHINE=alphapca56 ;; 308b1297603Smrg "EV5.7 (21164PC)") 309a570218aSmrg UNAME_MACHINE=alphapca57 ;; 310b1297603Smrg "EV6 (21264)") 311a570218aSmrg UNAME_MACHINE=alphaev6 ;; 312b1297603Smrg "EV6.7 (21264A)") 313a570218aSmrg UNAME_MACHINE=alphaev67 ;; 314b1297603Smrg "EV6.8CB (21264C)") 315a570218aSmrg UNAME_MACHINE=alphaev68 ;; 316b1297603Smrg "EV6.8AL (21264B)") 317a570218aSmrg UNAME_MACHINE=alphaev68 ;; 318b1297603Smrg "EV6.8CX (21264D)") 319a570218aSmrg UNAME_MACHINE=alphaev68 ;; 320b1297603Smrg "EV6.9A (21264/EV69A)") 321a570218aSmrg UNAME_MACHINE=alphaev69 ;; 322b1297603Smrg "EV7 (21364)") 323a570218aSmrg UNAME_MACHINE=alphaev7 ;; 324b1297603Smrg "EV7.9 (21364A)") 325a570218aSmrg UNAME_MACHINE=alphaev79 ;; 326b1297603Smrg esac 327b1297603Smrg # A Pn.n version is a patched version. 328b1297603Smrg # A Vn.n version is a released version. 329b1297603Smrg # A Tn.n version is a released field test version. 330b1297603Smrg # A Xn.n version is an unreleased experimental baselevel. 331b1297603Smrg # 1.2 uses "1.2" for uname -r. 332a570218aSmrg echo "$UNAME_MACHINE"-dec-osf"`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`" 33333734831Smrg # Reset EXIT trap before exiting to avoid spurious non-zero exit code. 33433734831Smrg exitcode=$? 33533734831Smrg trap '' 0 33633734831Smrg exit $exitcode ;; 337b1297603Smrg Amiga*:UNIX_System_V:4.0:*) 338b1297603Smrg echo m68k-unknown-sysv4 339b1297603Smrg exit ;; 340b1297603Smrg *:[Aa]miga[Oo][Ss]:*:*) 341a570218aSmrg echo "$UNAME_MACHINE"-unknown-amigaos 342b1297603Smrg exit ;; 343b1297603Smrg *:[Mm]orph[Oo][Ss]:*:*) 344a570218aSmrg echo "$UNAME_MACHINE"-unknown-morphos 345b1297603Smrg exit ;; 346b1297603Smrg *:OS/390:*:*) 347b1297603Smrg echo i370-ibm-openedition 348b1297603Smrg exit ;; 349b1297603Smrg *:z/VM:*:*) 350b1297603Smrg echo s390-ibm-zvmoe 351b1297603Smrg exit ;; 352b1297603Smrg *:OS400:*:*) 35333734831Smrg echo powerpc-ibm-os400 354b1297603Smrg exit ;; 355b1297603Smrg arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 356a570218aSmrg echo arm-acorn-riscix"$UNAME_RELEASE" 357b1297603Smrg exit ;; 35833734831Smrg arm*:riscos:*:*|arm*:RISCOS:*:*) 359b1297603Smrg echo arm-unknown-riscos 360b1297603Smrg exit ;; 361b1297603Smrg SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 362b1297603Smrg echo hppa1.1-hitachi-hiuxmpp 363b1297603Smrg exit ;; 364b1297603Smrg Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 365b1297603Smrg # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 366b1297603Smrg if test "`(/bin/universe) 2>/dev/null`" = att ; then 367b1297603Smrg echo pyramid-pyramid-sysv3 368b1297603Smrg else 369b1297603Smrg echo pyramid-pyramid-bsd 370b1297603Smrg fi 371b1297603Smrg exit ;; 372b1297603Smrg NILE*:*:*:dcosx) 373b1297603Smrg echo pyramid-pyramid-svr4 374b1297603Smrg exit ;; 375b1297603Smrg DRS?6000:unix:4.0:6*) 376b1297603Smrg echo sparc-icl-nx6 377b1297603Smrg exit ;; 378b1297603Smrg DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 379b1297603Smrg case `/usr/bin/uname -p` in 380b1297603Smrg sparc) echo sparc-icl-nx7; exit ;; 381b1297603Smrg esac ;; 38233734831Smrg s390x:SunOS:*:*) 383a570218aSmrg echo "$UNAME_MACHINE"-ibm-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`" 38433734831Smrg exit ;; 385b1297603Smrg sun4H:SunOS:5.*:*) 386a570218aSmrg echo sparc-hal-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" 387b1297603Smrg exit ;; 388b1297603Smrg sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 389a570218aSmrg echo sparc-sun-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`" 390b1297603Smrg exit ;; 39133734831Smrg i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) 392a570218aSmrg echo i386-pc-auroraux"$UNAME_RELEASE" 39333734831Smrg exit ;; 39433734831Smrg i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) 395a570218aSmrg UNAME_REL="`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`" 396a570218aSmrg case `isainfo -b` in 397a570218aSmrg 32) 398a570218aSmrg echo i386-pc-solaris2"$UNAME_REL" 399a570218aSmrg ;; 400a570218aSmrg 64) 401a570218aSmrg echo x86_64-pc-solaris2"$UNAME_REL" 402a570218aSmrg ;; 403a570218aSmrg esac 404b1297603Smrg exit ;; 405b1297603Smrg sun4*:SunOS:6*:*) 406b1297603Smrg # According to config.sub, this is the proper way to canonicalize 407b1297603Smrg # SunOS6. Hard to guess exactly what SunOS6 will be like, but 408b1297603Smrg # it's likely to be more like Solaris than SunOS4. 409a570218aSmrg echo sparc-sun-solaris3"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" 410b1297603Smrg exit ;; 411b1297603Smrg sun4*:SunOS:*:*) 412b1297603Smrg case "`/usr/bin/arch -k`" in 413b1297603Smrg Series*|S4*) 414b1297603Smrg UNAME_RELEASE=`uname -v` 415b1297603Smrg ;; 416b1297603Smrg esac 417b1297603Smrg # Japanese Language versions have a version number like `4.1.3-JL'. 418a570218aSmrg echo sparc-sun-sunos"`echo "$UNAME_RELEASE"|sed -e 's/-/_/'`" 419b1297603Smrg exit ;; 420b1297603Smrg sun3*:SunOS:*:*) 421a570218aSmrg echo m68k-sun-sunos"$UNAME_RELEASE" 422b1297603Smrg exit ;; 423b1297603Smrg sun*:*:4.2BSD:*) 424b1297603Smrg UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 425a570218aSmrg test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3 426b1297603Smrg case "`/bin/arch`" in 427b1297603Smrg sun3) 428a570218aSmrg echo m68k-sun-sunos"$UNAME_RELEASE" 429b1297603Smrg ;; 430b1297603Smrg sun4) 431a570218aSmrg echo sparc-sun-sunos"$UNAME_RELEASE" 432b1297603Smrg ;; 433b1297603Smrg esac 434b1297603Smrg exit ;; 435b1297603Smrg aushp:SunOS:*:*) 436a570218aSmrg echo sparc-auspex-sunos"$UNAME_RELEASE" 437b1297603Smrg exit ;; 438b1297603Smrg # The situation for MiNT is a little confusing. The machine name 439b1297603Smrg # can be virtually everything (everything which is not 440b1297603Smrg # "atarist" or "atariste" at least should have a processor 441b1297603Smrg # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 442b1297603Smrg # to the lowercase version "mint" (or "freemint"). Finally 443b1297603Smrg # the system name "TOS" denotes a system which is actually not 444b1297603Smrg # MiNT. But MiNT is downward compatible to TOS, so this should 445b1297603Smrg # be no problem. 446b1297603Smrg atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 447a570218aSmrg echo m68k-atari-mint"$UNAME_RELEASE" 448b1297603Smrg exit ;; 449b1297603Smrg atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 450a570218aSmrg echo m68k-atari-mint"$UNAME_RELEASE" 45133734831Smrg exit ;; 452b1297603Smrg *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 453a570218aSmrg echo m68k-atari-mint"$UNAME_RELEASE" 454b1297603Smrg exit ;; 455b1297603Smrg milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 456a570218aSmrg echo m68k-milan-mint"$UNAME_RELEASE" 45733734831Smrg exit ;; 458b1297603Smrg hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 459a570218aSmrg echo m68k-hades-mint"$UNAME_RELEASE" 46033734831Smrg exit ;; 461b1297603Smrg *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 462a570218aSmrg echo m68k-unknown-mint"$UNAME_RELEASE" 46333734831Smrg exit ;; 464b1297603Smrg m68k:machten:*:*) 465a570218aSmrg echo m68k-apple-machten"$UNAME_RELEASE" 466b1297603Smrg exit ;; 467b1297603Smrg powerpc:machten:*:*) 468a570218aSmrg echo powerpc-apple-machten"$UNAME_RELEASE" 469b1297603Smrg exit ;; 470b1297603Smrg RISC*:Mach:*:*) 471b1297603Smrg echo mips-dec-mach_bsd4.3 472b1297603Smrg exit ;; 473b1297603Smrg RISC*:ULTRIX:*:*) 474a570218aSmrg echo mips-dec-ultrix"$UNAME_RELEASE" 475b1297603Smrg exit ;; 476b1297603Smrg VAX*:ULTRIX*:*:*) 477a570218aSmrg echo vax-dec-ultrix"$UNAME_RELEASE" 478b1297603Smrg exit ;; 479b1297603Smrg 2020:CLIX:*:* | 2430:CLIX:*:*) 480a570218aSmrg echo clipper-intergraph-clix"$UNAME_RELEASE" 481b1297603Smrg exit ;; 482b1297603Smrg mips:*:*:UMIPS | mips:*:*:RISCos) 483a570218aSmrg set_cc_for_build 484a570218aSmrg sed 's/^ //' << EOF > "$dummy.c" 485b1297603Smrg#ifdef __cplusplus 486b1297603Smrg#include <stdio.h> /* for printf() prototype */ 487b1297603Smrg int main (int argc, char *argv[]) { 488b1297603Smrg#else 489b1297603Smrg int main (argc, argv) int argc; char *argv[]; { 490b1297603Smrg#endif 491b1297603Smrg #if defined (host_mips) && defined (MIPSEB) 492b1297603Smrg #if defined (SYSTYPE_SYSV) 493a570218aSmrg printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0); 494b1297603Smrg #endif 495b1297603Smrg #if defined (SYSTYPE_SVR4) 496a570218aSmrg printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0); 497b1297603Smrg #endif 498b1297603Smrg #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 499a570218aSmrg printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0); 500b1297603Smrg #endif 501b1297603Smrg #endif 502b1297603Smrg exit (-1); 503b1297603Smrg } 504b1297603SmrgEOF 505a570218aSmrg $CC_FOR_BUILD -o "$dummy" "$dummy.c" && 506a570218aSmrg dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` && 507a570218aSmrg SYSTEM_NAME=`"$dummy" "$dummyarg"` && 508b1297603Smrg { echo "$SYSTEM_NAME"; exit; } 509a570218aSmrg echo mips-mips-riscos"$UNAME_RELEASE" 510b1297603Smrg exit ;; 511b1297603Smrg Motorola:PowerMAX_OS:*:*) 512b1297603Smrg echo powerpc-motorola-powermax 513b1297603Smrg exit ;; 514b1297603Smrg Motorola:*:4.3:PL8-*) 515b1297603Smrg echo powerpc-harris-powermax 516b1297603Smrg exit ;; 517b1297603Smrg Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 518b1297603Smrg echo powerpc-harris-powermax 519b1297603Smrg exit ;; 520b1297603Smrg Night_Hawk:Power_UNIX:*:*) 521b1297603Smrg echo powerpc-harris-powerunix 522b1297603Smrg exit ;; 523b1297603Smrg m88k:CX/UX:7*:*) 524b1297603Smrg echo m88k-harris-cxux7 525b1297603Smrg exit ;; 526b1297603Smrg m88k:*:4*:R4*) 527b1297603Smrg echo m88k-motorola-sysv4 528b1297603Smrg exit ;; 529b1297603Smrg m88k:*:3*:R3*) 530b1297603Smrg echo m88k-motorola-sysv3 531b1297603Smrg exit ;; 532b1297603Smrg AViiON:dgux:*:*) 53333734831Smrg # DG/UX returns AViiON for all architectures 53433734831Smrg UNAME_PROCESSOR=`/usr/bin/uname -p` 535a570218aSmrg if [ "$UNAME_PROCESSOR" = mc88100 ] || [ "$UNAME_PROCESSOR" = mc88110 ] 536b1297603Smrg then 537a570218aSmrg if [ "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx ] || \ 538a570218aSmrg [ "$TARGET_BINARY_INTERFACE"x = x ] 539b1297603Smrg then 540a570218aSmrg echo m88k-dg-dgux"$UNAME_RELEASE" 541b1297603Smrg else 542a570218aSmrg echo m88k-dg-dguxbcs"$UNAME_RELEASE" 543b1297603Smrg fi 544b1297603Smrg else 545a570218aSmrg echo i586-dg-dgux"$UNAME_RELEASE" 546b1297603Smrg fi 54733734831Smrg exit ;; 548b1297603Smrg M88*:DolphinOS:*:*) # DolphinOS (SVR3) 549b1297603Smrg echo m88k-dolphin-sysv3 550b1297603Smrg exit ;; 551b1297603Smrg M88*:*:R3*:*) 552b1297603Smrg # Delta 88k system running SVR3 553b1297603Smrg echo m88k-motorola-sysv3 554b1297603Smrg exit ;; 555b1297603Smrg XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 556b1297603Smrg echo m88k-tektronix-sysv3 557b1297603Smrg exit ;; 558b1297603Smrg Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 559b1297603Smrg echo m68k-tektronix-bsd 560b1297603Smrg exit ;; 561b1297603Smrg *:IRIX*:*:*) 562a570218aSmrg echo mips-sgi-irix"`echo "$UNAME_RELEASE"|sed -e 's/-/_/g'`" 563b1297603Smrg exit ;; 564b1297603Smrg ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 565b1297603Smrg echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 566b1297603Smrg exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 567b1297603Smrg i*86:AIX:*:*) 568b1297603Smrg echo i386-ibm-aix 569b1297603Smrg exit ;; 570b1297603Smrg ia64:AIX:*:*) 571b1297603Smrg if [ -x /usr/bin/oslevel ] ; then 572b1297603Smrg IBM_REV=`/usr/bin/oslevel` 573b1297603Smrg else 574a570218aSmrg IBM_REV="$UNAME_VERSION.$UNAME_RELEASE" 575b1297603Smrg fi 576a570218aSmrg echo "$UNAME_MACHINE"-ibm-aix"$IBM_REV" 577b1297603Smrg exit ;; 578b1297603Smrg *:AIX:2:3) 579b1297603Smrg if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 580a570218aSmrg set_cc_for_build 581a570218aSmrg sed 's/^ //' << EOF > "$dummy.c" 582b1297603Smrg #include <sys/systemcfg.h> 583b1297603Smrg 584b1297603Smrg main() 585b1297603Smrg { 586b1297603Smrg if (!__power_pc()) 587b1297603Smrg exit(1); 588b1297603Smrg puts("powerpc-ibm-aix3.2.5"); 589b1297603Smrg exit(0); 590b1297603Smrg } 591b1297603SmrgEOF 592a570218aSmrg if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` 593b1297603Smrg then 594b1297603Smrg echo "$SYSTEM_NAME" 595b1297603Smrg else 596b1297603Smrg echo rs6000-ibm-aix3.2.5 597b1297603Smrg fi 598b1297603Smrg elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 599b1297603Smrg echo rs6000-ibm-aix3.2.4 600b1297603Smrg else 601b1297603Smrg echo rs6000-ibm-aix3.2 602b1297603Smrg fi 603b1297603Smrg exit ;; 60433734831Smrg *:AIX:*:[4567]) 605b1297603Smrg IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 606a570218aSmrg if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then 607b1297603Smrg IBM_ARCH=rs6000 608b1297603Smrg else 609b1297603Smrg IBM_ARCH=powerpc 610b1297603Smrg fi 611a570218aSmrg if [ -x /usr/bin/lslpp ] ; then 612a570218aSmrg IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | 613a570218aSmrg awk -F: '{ print $3 }' | sed s/[0-9]*$/0/` 614b1297603Smrg else 615a570218aSmrg IBM_REV="$UNAME_VERSION.$UNAME_RELEASE" 616b1297603Smrg fi 617a570218aSmrg echo "$IBM_ARCH"-ibm-aix"$IBM_REV" 618b1297603Smrg exit ;; 619b1297603Smrg *:AIX:*:*) 620b1297603Smrg echo rs6000-ibm-aix 621b1297603Smrg exit ;; 622a570218aSmrg ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*) 623b1297603Smrg echo romp-ibm-bsd4.4 624b1297603Smrg exit ;; 625b1297603Smrg ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 626a570218aSmrg echo romp-ibm-bsd"$UNAME_RELEASE" # 4.3 with uname added to 627b1297603Smrg exit ;; # report: romp-ibm BSD 4.3 628b1297603Smrg *:BOSX:*:*) 629b1297603Smrg echo rs6000-bull-bosx 630b1297603Smrg exit ;; 631b1297603Smrg DPX/2?00:B.O.S.:*:*) 632b1297603Smrg echo m68k-bull-sysv3 633b1297603Smrg exit ;; 634b1297603Smrg 9000/[34]??:4.3bsd:1.*:*) 635b1297603Smrg echo m68k-hp-bsd 636b1297603Smrg exit ;; 637b1297603Smrg hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 638b1297603Smrg echo m68k-hp-bsd4.4 639b1297603Smrg exit ;; 640b1297603Smrg 9000/[34678]??:HP-UX:*:*) 641a570218aSmrg HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'` 642a570218aSmrg case "$UNAME_MACHINE" in 643a570218aSmrg 9000/31?) HP_ARCH=m68000 ;; 644a570218aSmrg 9000/[34]??) HP_ARCH=m68k ;; 645b1297603Smrg 9000/[678][0-9][0-9]) 646b1297603Smrg if [ -x /usr/bin/getconf ]; then 647b1297603Smrg sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 64833734831Smrg sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 649a570218aSmrg case "$sc_cpu_version" in 650a570218aSmrg 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0 651a570218aSmrg 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1 65233734831Smrg 532) # CPU_PA_RISC2_0 653a570218aSmrg case "$sc_kernel_bits" in 654a570218aSmrg 32) HP_ARCH=hppa2.0n ;; 655a570218aSmrg 64) HP_ARCH=hppa2.0w ;; 656a570218aSmrg '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20 65733734831Smrg esac ;; 65833734831Smrg esac 659b1297603Smrg fi 660a570218aSmrg if [ "$HP_ARCH" = "" ]; then 661a570218aSmrg set_cc_for_build 662a570218aSmrg sed 's/^ //' << EOF > "$dummy.c" 663b1297603Smrg 66433734831Smrg #define _HPUX_SOURCE 66533734831Smrg #include <stdlib.h> 66633734831Smrg #include <unistd.h> 667b1297603Smrg 66833734831Smrg int main () 66933734831Smrg { 67033734831Smrg #if defined(_SC_KERNEL_BITS) 67133734831Smrg long bits = sysconf(_SC_KERNEL_BITS); 67233734831Smrg #endif 67333734831Smrg long cpu = sysconf (_SC_CPU_VERSION); 674b1297603Smrg 67533734831Smrg switch (cpu) 67633734831Smrg { 67733734831Smrg case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 67833734831Smrg case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 67933734831Smrg case CPU_PA_RISC2_0: 68033734831Smrg #if defined(_SC_KERNEL_BITS) 68133734831Smrg switch (bits) 68233734831Smrg { 68333734831Smrg case 64: puts ("hppa2.0w"); break; 68433734831Smrg case 32: puts ("hppa2.0n"); break; 68533734831Smrg default: puts ("hppa2.0"); break; 68633734831Smrg } break; 68733734831Smrg #else /* !defined(_SC_KERNEL_BITS) */ 68833734831Smrg puts ("hppa2.0"); break; 68933734831Smrg #endif 69033734831Smrg default: puts ("hppa1.0"); break; 69133734831Smrg } 69233734831Smrg exit (0); 69333734831Smrg } 694b1297603SmrgEOF 695a570218aSmrg (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"` 696b1297603Smrg test -z "$HP_ARCH" && HP_ARCH=hppa 697b1297603Smrg fi ;; 698b1297603Smrg esac 699a570218aSmrg if [ "$HP_ARCH" = hppa2.0w ] 700b1297603Smrg then 701a570218aSmrg set_cc_for_build 702b1297603Smrg 703b1297603Smrg # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 704b1297603Smrg # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 705b1297603Smrg # generating 64-bit code. GNU and HP use different nomenclature: 706b1297603Smrg # 707b1297603Smrg # $ CC_FOR_BUILD=cc ./config.guess 708b1297603Smrg # => hppa2.0w-hp-hpux11.23 709b1297603Smrg # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 710b1297603Smrg # => hppa64-hp-hpux11.23 711b1297603Smrg 712a570218aSmrg if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | 71333734831Smrg grep -q __LP64__ 714b1297603Smrg then 715a570218aSmrg HP_ARCH=hppa2.0w 716b1297603Smrg else 717a570218aSmrg HP_ARCH=hppa64 718b1297603Smrg fi 719b1297603Smrg fi 720a570218aSmrg echo "$HP_ARCH"-hp-hpux"$HPUX_REV" 721b1297603Smrg exit ;; 722b1297603Smrg ia64:HP-UX:*:*) 723a570218aSmrg HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'` 724a570218aSmrg echo ia64-hp-hpux"$HPUX_REV" 725b1297603Smrg exit ;; 726b1297603Smrg 3050*:HI-UX:*:*) 727a570218aSmrg set_cc_for_build 728a570218aSmrg sed 's/^ //' << EOF > "$dummy.c" 729b1297603Smrg #include <unistd.h> 730b1297603Smrg int 731b1297603Smrg main () 732b1297603Smrg { 733b1297603Smrg long cpu = sysconf (_SC_CPU_VERSION); 734b1297603Smrg /* The order matters, because CPU_IS_HP_MC68K erroneously returns 735b1297603Smrg true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 736b1297603Smrg results, however. */ 737b1297603Smrg if (CPU_IS_PA_RISC (cpu)) 738b1297603Smrg { 739b1297603Smrg switch (cpu) 740b1297603Smrg { 741b1297603Smrg case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 742b1297603Smrg case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 743b1297603Smrg case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 744b1297603Smrg default: puts ("hppa-hitachi-hiuxwe2"); break; 745b1297603Smrg } 746b1297603Smrg } 747b1297603Smrg else if (CPU_IS_HP_MC68K (cpu)) 748b1297603Smrg puts ("m68k-hitachi-hiuxwe2"); 749b1297603Smrg else puts ("unknown-hitachi-hiuxwe2"); 750b1297603Smrg exit (0); 751b1297603Smrg } 752b1297603SmrgEOF 753a570218aSmrg $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` && 754b1297603Smrg { echo "$SYSTEM_NAME"; exit; } 755b1297603Smrg echo unknown-hitachi-hiuxwe2 756b1297603Smrg exit ;; 757a570218aSmrg 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*) 758b1297603Smrg echo hppa1.1-hp-bsd 759b1297603Smrg exit ;; 760b1297603Smrg 9000/8??:4.3bsd:*:*) 761b1297603Smrg echo hppa1.0-hp-bsd 762b1297603Smrg exit ;; 763b1297603Smrg *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 764b1297603Smrg echo hppa1.0-hp-mpeix 765b1297603Smrg exit ;; 766a570218aSmrg hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*) 767b1297603Smrg echo hppa1.1-hp-osf 768b1297603Smrg exit ;; 769b1297603Smrg hp8??:OSF1:*:*) 770b1297603Smrg echo hppa1.0-hp-osf 771b1297603Smrg exit ;; 772b1297603Smrg i*86:OSF1:*:*) 773b1297603Smrg if [ -x /usr/sbin/sysversion ] ; then 774a570218aSmrg echo "$UNAME_MACHINE"-unknown-osf1mk 775b1297603Smrg else 776a570218aSmrg echo "$UNAME_MACHINE"-unknown-osf1 777b1297603Smrg fi 778b1297603Smrg exit ;; 779b1297603Smrg parisc*:Lites*:*:*) 780b1297603Smrg echo hppa1.1-hp-lites 781b1297603Smrg exit ;; 782b1297603Smrg C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 783b1297603Smrg echo c1-convex-bsd 78433734831Smrg exit ;; 785b1297603Smrg C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 786b1297603Smrg if getsysinfo -f scalar_acc 787b1297603Smrg then echo c32-convex-bsd 788b1297603Smrg else echo c2-convex-bsd 789b1297603Smrg fi 79033734831Smrg exit ;; 791b1297603Smrg C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 792b1297603Smrg echo c34-convex-bsd 79333734831Smrg exit ;; 794b1297603Smrg C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 795b1297603Smrg echo c38-convex-bsd 79633734831Smrg exit ;; 797b1297603Smrg C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 798b1297603Smrg echo c4-convex-bsd 79933734831Smrg exit ;; 800b1297603Smrg CRAY*Y-MP:*:*:*) 801a570218aSmrg echo ymp-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' 802b1297603Smrg exit ;; 803b1297603Smrg CRAY*[A-Z]90:*:*:*) 804a570218aSmrg echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \ 805b1297603Smrg | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 806b1297603Smrg -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 807b1297603Smrg -e 's/\.[^.]*$/.X/' 808b1297603Smrg exit ;; 809b1297603Smrg CRAY*TS:*:*:*) 810a570218aSmrg echo t90-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' 811b1297603Smrg exit ;; 812b1297603Smrg CRAY*T3E:*:*:*) 813a570218aSmrg echo alphaev5-cray-unicosmk"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' 814b1297603Smrg exit ;; 815b1297603Smrg CRAY*SV1:*:*:*) 816a570218aSmrg echo sv1-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' 817b1297603Smrg exit ;; 818b1297603Smrg *:UNICOS/mp:*:*) 819a570218aSmrg echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' 820b1297603Smrg exit ;; 821b1297603Smrg F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 822a570218aSmrg FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` 823a570218aSmrg FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` 824a570218aSmrg FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'` 82533734831Smrg echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 82633734831Smrg exit ;; 827b1297603Smrg 5000:UNIX_System_V:4.*:*) 828a570218aSmrg FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` 829a570218aSmrg FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'` 83033734831Smrg echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 831b1297603Smrg exit ;; 832b1297603Smrg i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 833a570218aSmrg echo "$UNAME_MACHINE"-pc-bsdi"$UNAME_RELEASE" 834b1297603Smrg exit ;; 835b1297603Smrg sparc*:BSD/OS:*:*) 836a570218aSmrg echo sparc-unknown-bsdi"$UNAME_RELEASE" 837b1297603Smrg exit ;; 838b1297603Smrg *:BSD/OS:*:*) 839a570218aSmrg echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE" 840a570218aSmrg exit ;; 841a570218aSmrg arm:FreeBSD:*:*) 842a570218aSmrg UNAME_PROCESSOR=`uname -p` 843a570218aSmrg set_cc_for_build 844a570218aSmrg if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ 845a570218aSmrg | grep -q __ARM_PCS_VFP 846a570218aSmrg then 847a570218aSmrg echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabi 848a570218aSmrg else 849a570218aSmrg echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabihf 850a570218aSmrg fi 851b1297603Smrg exit ;; 852b1297603Smrg *:FreeBSD:*:*) 85333734831Smrg UNAME_PROCESSOR=`/usr/bin/uname -p` 854a570218aSmrg case "$UNAME_PROCESSOR" in 8555b944e2aSmrg amd64) 856a570218aSmrg UNAME_PROCESSOR=x86_64 ;; 857a570218aSmrg i386) 858a570218aSmrg UNAME_PROCESSOR=i586 ;; 8595b944e2aSmrg esac 860a570218aSmrg echo "$UNAME_PROCESSOR"-unknown-freebsd"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`" 861b1297603Smrg exit ;; 862b1297603Smrg i*:CYGWIN*:*) 863a570218aSmrg echo "$UNAME_MACHINE"-pc-cygwin 864b1297603Smrg exit ;; 86533734831Smrg *:MINGW64*:*) 866a570218aSmrg echo "$UNAME_MACHINE"-pc-mingw64 86733734831Smrg exit ;; 86833734831Smrg *:MINGW*:*) 869a570218aSmrg echo "$UNAME_MACHINE"-pc-mingw32 870b1297603Smrg exit ;; 871a570218aSmrg *:MSYS*:*) 872a570218aSmrg echo "$UNAME_MACHINE"-pc-msys 873b1297603Smrg exit ;; 874b1297603Smrg i*:PW*:*) 875a570218aSmrg echo "$UNAME_MACHINE"-pc-pw32 876b1297603Smrg exit ;; 87733734831Smrg *:Interix*:*) 878a570218aSmrg case "$UNAME_MACHINE" in 87933734831Smrg x86) 880a570218aSmrg echo i586-pc-interix"$UNAME_RELEASE" 88133734831Smrg exit ;; 88233734831Smrg authenticamd | genuineintel | EM64T) 883a570218aSmrg echo x86_64-unknown-interix"$UNAME_RELEASE" 88433734831Smrg exit ;; 88533734831Smrg IA64) 886a570218aSmrg echo ia64-unknown-interix"$UNAME_RELEASE" 88733734831Smrg exit ;; 88833734831Smrg esac ;; 889b1297603Smrg i*:UWIN*:*) 890a570218aSmrg echo "$UNAME_MACHINE"-pc-uwin 891b1297603Smrg exit ;; 8925b944e2aSmrg amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 893b1297603Smrg echo x86_64-unknown-cygwin 894b1297603Smrg exit ;; 895b1297603Smrg prep*:SunOS:5.*:*) 896a570218aSmrg echo powerpcle-unknown-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" 897b1297603Smrg exit ;; 898b1297603Smrg *:GNU:*:*) 899b1297603Smrg # the GNU system 900a570218aSmrg echo "`echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,'`-unknown-$LIBC`echo "$UNAME_RELEASE"|sed -e 's,/.*$,,'`" 901b1297603Smrg exit ;; 902b1297603Smrg *:GNU/*:*:*) 903b1297603Smrg # other systems with GNU libc and userland 904a570218aSmrg echo "$UNAME_MACHINE-unknown-`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`-$LIBC" 905b1297603Smrg exit ;; 906a570218aSmrg *:Minix:*:*) 907a570218aSmrg echo "$UNAME_MACHINE"-unknown-minix 908b1297603Smrg exit ;; 90933734831Smrg aarch64:Linux:*:*) 910a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 91133734831Smrg exit ;; 91233734831Smrg aarch64_be:Linux:*:*) 91333734831Smrg UNAME_MACHINE=aarch64_be 914a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 915b1297603Smrg exit ;; 91633734831Smrg alpha:Linux:*:*) 91733734831Smrg case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 91833734831Smrg EV5) UNAME_MACHINE=alphaev5 ;; 91933734831Smrg EV56) UNAME_MACHINE=alphaev56 ;; 92033734831Smrg PCA56) UNAME_MACHINE=alphapca56 ;; 92133734831Smrg PCA57) UNAME_MACHINE=alphapca56 ;; 92233734831Smrg EV6) UNAME_MACHINE=alphaev6 ;; 92333734831Smrg EV67) UNAME_MACHINE=alphaev67 ;; 92433734831Smrg EV68*) UNAME_MACHINE=alphaev68 ;; 92533734831Smrg esac 92633734831Smrg objdump --private-headers /bin/sh | grep -q ld.so.1 927a570218aSmrg if test "$?" = 0 ; then LIBC=gnulibc1 ; fi 928a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 92933734831Smrg exit ;; 93033734831Smrg arc:Linux:*:* | arceb:Linux:*:*) 931a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 93233734831Smrg exit ;; 93333734831Smrg arm*:Linux:*:*) 934a570218aSmrg set_cc_for_build 93533734831Smrg if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ 93633734831Smrg | grep -q __ARM_EABI__ 93733734831Smrg then 938a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 93933734831Smrg else 94033734831Smrg if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ 94133734831Smrg | grep -q __ARM_PCS_VFP 94233734831Smrg then 943a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabi 94433734831Smrg else 945a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabihf 94633734831Smrg fi 94733734831Smrg fi 94833734831Smrg exit ;; 9495b944e2aSmrg avr32*:Linux:*:*) 950a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 9515b944e2aSmrg exit ;; 952b1297603Smrg cris:Linux:*:*) 953a570218aSmrg echo "$UNAME_MACHINE"-axis-linux-"$LIBC" 954b1297603Smrg exit ;; 955b1297603Smrg crisv32:Linux:*:*) 956a570218aSmrg echo "$UNAME_MACHINE"-axis-linux-"$LIBC" 957a570218aSmrg exit ;; 958a570218aSmrg e2k:Linux:*:*) 959a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 960b1297603Smrg exit ;; 961b1297603Smrg frv:Linux:*:*) 962a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 96333734831Smrg exit ;; 96433734831Smrg hexagon:Linux:*:*) 965a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 96633734831Smrg exit ;; 96733734831Smrg i*86:Linux:*:*) 968a570218aSmrg echo "$UNAME_MACHINE"-pc-linux-"$LIBC" 969b1297603Smrg exit ;; 970b1297603Smrg ia64:Linux:*:*) 971a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 972a570218aSmrg exit ;; 973a570218aSmrg k1om:Linux:*:*) 974a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 975b1297603Smrg exit ;; 976b1297603Smrg m32r*:Linux:*:*) 977a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 978b1297603Smrg exit ;; 979b1297603Smrg m68*:Linux:*:*) 980a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 981b1297603Smrg exit ;; 98233734831Smrg mips:Linux:*:* | mips64:Linux:*:*) 983a570218aSmrg set_cc_for_build 984a570218aSmrg sed 's/^ //' << EOF > "$dummy.c" 985b1297603Smrg #undef CPU 98633734831Smrg #undef ${UNAME_MACHINE} 98733734831Smrg #undef ${UNAME_MACHINE}el 988b1297603Smrg #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 98933734831Smrg CPU=${UNAME_MACHINE}el 990b1297603Smrg #else 991b1297603Smrg #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 99233734831Smrg CPU=${UNAME_MACHINE} 993b1297603Smrg #else 994b1297603Smrg CPU= 995b1297603Smrg #endif 996b1297603Smrg #endif 997b1297603SmrgEOF 998a570218aSmrg eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU'`" 999a570218aSmrg test "x$CPU" != x && { echo "$CPU-unknown-linux-$LIBC"; exit; } 1000b1297603Smrg ;; 1001a570218aSmrg mips64el:Linux:*:*) 1002a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 10035b944e2aSmrg exit ;; 1004a570218aSmrg openrisc*:Linux:*:*) 1005a570218aSmrg echo or1k-unknown-linux-"$LIBC" 1006a570218aSmrg exit ;; 1007a570218aSmrg or32:Linux:*:* | or1k*:Linux:*:*) 1008a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 1009b1297603Smrg exit ;; 101033734831Smrg padre:Linux:*:*) 1011a570218aSmrg echo sparc-unknown-linux-"$LIBC" 1012b1297603Smrg exit ;; 101333734831Smrg parisc64:Linux:*:* | hppa64:Linux:*:*) 1014a570218aSmrg echo hppa64-unknown-linux-"$LIBC" 1015b1297603Smrg exit ;; 1016b1297603Smrg parisc:Linux:*:* | hppa:Linux:*:*) 1017b1297603Smrg # Look for CPU level 1018b1297603Smrg case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 1019a570218aSmrg PA7*) echo hppa1.1-unknown-linux-"$LIBC" ;; 1020a570218aSmrg PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;; 1021a570218aSmrg *) echo hppa-unknown-linux-"$LIBC" ;; 1022b1297603Smrg esac 1023b1297603Smrg exit ;; 102433734831Smrg ppc64:Linux:*:*) 1025a570218aSmrg echo powerpc64-unknown-linux-"$LIBC" 102633734831Smrg exit ;; 102733734831Smrg ppc:Linux:*:*) 1028a570218aSmrg echo powerpc-unknown-linux-"$LIBC" 1029a570218aSmrg exit ;; 1030a570218aSmrg ppc64le:Linux:*:*) 1031a570218aSmrg echo powerpc64le-unknown-linux-"$LIBC" 1032a570218aSmrg exit ;; 1033a570218aSmrg ppcle:Linux:*:*) 1034a570218aSmrg echo powerpcle-unknown-linux-"$LIBC" 1035a570218aSmrg exit ;; 1036a570218aSmrg riscv32:Linux:*:* | riscv64:Linux:*:*) 1037a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 1038b1297603Smrg exit ;; 1039b1297603Smrg s390:Linux:*:* | s390x:Linux:*:*) 1040a570218aSmrg echo "$UNAME_MACHINE"-ibm-linux-"$LIBC" 1041b1297603Smrg exit ;; 1042b1297603Smrg sh64*:Linux:*:*) 1043a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 1044b1297603Smrg exit ;; 1045b1297603Smrg sh*:Linux:*:*) 1046a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 1047b1297603Smrg exit ;; 1048b1297603Smrg sparc:Linux:*:* | sparc64:Linux:*:*) 1049a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 1050b1297603Smrg exit ;; 105133734831Smrg tile*:Linux:*:*) 1052a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 105333734831Smrg exit ;; 10545b944e2aSmrg vax:Linux:*:*) 1055a570218aSmrg echo "$UNAME_MACHINE"-dec-linux-"$LIBC" 10565b944e2aSmrg exit ;; 1057b1297603Smrg x86_64:Linux:*:*) 1058a570218aSmrg echo "$UNAME_MACHINE"-pc-linux-"$LIBC" 105933734831Smrg exit ;; 106033734831Smrg xtensa*:Linux:*:*) 1061a570218aSmrg echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" 106233734831Smrg exit ;; 1063b1297603Smrg i*86:DYNIX/ptx:4*:*) 1064b1297603Smrg # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 1065b1297603Smrg # earlier versions are messed up and put the nodename in both 1066b1297603Smrg # sysname and nodename. 1067b1297603Smrg echo i386-sequent-sysv4 1068b1297603Smrg exit ;; 1069b1297603Smrg i*86:UNIX_SV:4.2MP:2.*) 107033734831Smrg # Unixware is an offshoot of SVR4, but it has its own version 107133734831Smrg # number series starting with 2... 107233734831Smrg # I am not positive that other SVR4 systems won't match this, 1073b1297603Smrg # I just have to hope. -- rms. 107433734831Smrg # Use sysv4.2uw... so that sysv4* matches it. 1075a570218aSmrg echo "$UNAME_MACHINE"-pc-sysv4.2uw"$UNAME_VERSION" 1076b1297603Smrg exit ;; 1077b1297603Smrg i*86:OS/2:*:*) 1078b1297603Smrg # If we were able to find `uname', then EMX Unix compatibility 1079b1297603Smrg # is probably installed. 1080a570218aSmrg echo "$UNAME_MACHINE"-pc-os2-emx 1081b1297603Smrg exit ;; 1082b1297603Smrg i*86:XTS-300:*:STOP) 1083a570218aSmrg echo "$UNAME_MACHINE"-unknown-stop 1084b1297603Smrg exit ;; 1085b1297603Smrg i*86:atheos:*:*) 1086a570218aSmrg echo "$UNAME_MACHINE"-unknown-atheos 1087b1297603Smrg exit ;; 1088b1297603Smrg i*86:syllable:*:*) 1089a570218aSmrg echo "$UNAME_MACHINE"-pc-syllable 1090b1297603Smrg exit ;; 109133734831Smrg i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) 1092a570218aSmrg echo i386-unknown-lynxos"$UNAME_RELEASE" 1093b1297603Smrg exit ;; 1094b1297603Smrg i*86:*DOS:*:*) 1095a570218aSmrg echo "$UNAME_MACHINE"-pc-msdosdjgpp 1096b1297603Smrg exit ;; 1097a570218aSmrg i*86:*:4.*:*) 1098a570218aSmrg UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'` 1099b1297603Smrg if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 1100a570218aSmrg echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL" 1101b1297603Smrg else 1102a570218aSmrg echo "$UNAME_MACHINE"-pc-sysv"$UNAME_REL" 1103b1297603Smrg fi 1104b1297603Smrg exit ;; 1105b1297603Smrg i*86:*:5:[678]*) 110633734831Smrg # UnixWare 7.x, OpenUNIX and OpenServer 6. 1107b1297603Smrg case `/bin/uname -X | grep "^Machine"` in 1108b1297603Smrg *486*) UNAME_MACHINE=i486 ;; 1109b1297603Smrg *Pentium) UNAME_MACHINE=i586 ;; 1110b1297603Smrg *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 1111b1297603Smrg esac 1112a570218aSmrg echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}{$UNAME_VERSION}" 1113b1297603Smrg exit ;; 1114b1297603Smrg i*86:*:3.2:*) 1115b1297603Smrg if test -f /usr/options/cb.name; then 1116b1297603Smrg UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 1117a570218aSmrg echo "$UNAME_MACHINE"-pc-isc"$UNAME_REL" 1118b1297603Smrg elif /bin/uname -X 2>/dev/null >/dev/null ; then 1119b1297603Smrg UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 1120b1297603Smrg (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 1121b1297603Smrg (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 1122b1297603Smrg && UNAME_MACHINE=i586 1123b1297603Smrg (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 1124b1297603Smrg && UNAME_MACHINE=i686 1125b1297603Smrg (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 1126b1297603Smrg && UNAME_MACHINE=i686 1127a570218aSmrg echo "$UNAME_MACHINE"-pc-sco"$UNAME_REL" 1128b1297603Smrg else 1129a570218aSmrg echo "$UNAME_MACHINE"-pc-sysv32 1130b1297603Smrg fi 1131b1297603Smrg exit ;; 1132b1297603Smrg pc:*:*:*) 1133b1297603Smrg # Left here for compatibility: 113433734831Smrg # uname -m prints for DJGPP always 'pc', but it prints nothing about 113533734831Smrg # the processor, so we play safe by assuming i586. 113633734831Smrg # Note: whatever this is, it MUST be the same as what config.sub 1137a570218aSmrg # prints for the "djgpp" host, or else GDB configure will decide that 113833734831Smrg # this is a cross-build. 113933734831Smrg echo i586-pc-msdosdjgpp 114033734831Smrg exit ;; 1141b1297603Smrg Intel:Mach:3*:*) 1142b1297603Smrg echo i386-pc-mach3 1143b1297603Smrg exit ;; 1144b1297603Smrg paragon:*:*:*) 1145b1297603Smrg echo i860-intel-osf1 1146b1297603Smrg exit ;; 1147b1297603Smrg i860:*:4.*:*) # i860-SVR4 1148b1297603Smrg if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 1149a570218aSmrg echo i860-stardent-sysv"$UNAME_RELEASE" # Stardent Vistra i860-SVR4 1150b1297603Smrg else # Add other i860-SVR4 vendors below as they are discovered. 1151a570218aSmrg echo i860-unknown-sysv"$UNAME_RELEASE" # Unknown i860-SVR4 1152b1297603Smrg fi 1153b1297603Smrg exit ;; 1154b1297603Smrg mini*:CTIX:SYS*5:*) 1155b1297603Smrg # "miniframe" 1156b1297603Smrg echo m68010-convergent-sysv 1157b1297603Smrg exit ;; 1158b1297603Smrg mc68k:UNIX:SYSTEM5:3.51m) 1159b1297603Smrg echo m68k-convergent-sysv 1160b1297603Smrg exit ;; 1161b1297603Smrg M680?0:D-NIX:5.3:*) 1162b1297603Smrg echo m68k-diab-dnix 1163b1297603Smrg exit ;; 1164b1297603Smrg M68*:*:R3V[5678]*:*) 1165b1297603Smrg test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 1166b1297603Smrg 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) 1167b1297603Smrg OS_REL='' 1168b1297603Smrg test -r /etc/.relid \ 1169b1297603Smrg && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1170b1297603Smrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1171a570218aSmrg && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } 1172b1297603Smrg /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1173a570218aSmrg && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; 1174b1297603Smrg 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 117533734831Smrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 117633734831Smrg && { echo i486-ncr-sysv4; exit; } ;; 117733734831Smrg NCR*:*:4.2:* | MPRAS*:*:4.2:*) 117833734831Smrg OS_REL='.3' 117933734831Smrg test -r /etc/.relid \ 118033734831Smrg && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 118133734831Smrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1182a570218aSmrg && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } 118333734831Smrg /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1184a570218aSmrg && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } 118533734831Smrg /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ 1186a570218aSmrg && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; 1187b1297603Smrg m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 1188a570218aSmrg echo m68k-unknown-lynxos"$UNAME_RELEASE" 1189b1297603Smrg exit ;; 1190b1297603Smrg mc68030:UNIX_System_V:4.*:*) 1191b1297603Smrg echo m68k-atari-sysv4 1192b1297603Smrg exit ;; 1193b1297603Smrg TSUNAMI:LynxOS:2.*:*) 1194a570218aSmrg echo sparc-unknown-lynxos"$UNAME_RELEASE" 1195b1297603Smrg exit ;; 1196b1297603Smrg rs6000:LynxOS:2.*:*) 1197a570218aSmrg echo rs6000-unknown-lynxos"$UNAME_RELEASE" 1198b1297603Smrg exit ;; 119933734831Smrg PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) 1200a570218aSmrg echo powerpc-unknown-lynxos"$UNAME_RELEASE" 1201b1297603Smrg exit ;; 1202b1297603Smrg SM[BE]S:UNIX_SV:*:*) 1203a570218aSmrg echo mips-dde-sysv"$UNAME_RELEASE" 1204b1297603Smrg exit ;; 1205b1297603Smrg RM*:ReliantUNIX-*:*:*) 1206b1297603Smrg echo mips-sni-sysv4 1207b1297603Smrg exit ;; 1208b1297603Smrg RM*:SINIX-*:*:*) 1209b1297603Smrg echo mips-sni-sysv4 1210b1297603Smrg exit ;; 1211b1297603Smrg *:SINIX-*:*:*) 1212b1297603Smrg if uname -p 2>/dev/null >/dev/null ; then 1213b1297603Smrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 1214a570218aSmrg echo "$UNAME_MACHINE"-sni-sysv4 1215b1297603Smrg else 1216b1297603Smrg echo ns32k-sni-sysv 1217b1297603Smrg fi 1218b1297603Smrg exit ;; 121933734831Smrg PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 122033734831Smrg # says <Richard.M.Bartel@ccMail.Census.GOV> 122133734831Smrg echo i586-unisys-sysv4 122233734831Smrg exit ;; 1223b1297603Smrg *:UNIX_System_V:4*:FTX*) 1224b1297603Smrg # From Gerald Hewes <hewes@openmarket.com>. 1225b1297603Smrg # How about differentiating between stratus architectures? -djm 1226b1297603Smrg echo hppa1.1-stratus-sysv4 1227b1297603Smrg exit ;; 1228b1297603Smrg *:*:*:FTX*) 1229b1297603Smrg # From seanf@swdc.stratus.com. 1230b1297603Smrg echo i860-stratus-sysv4 1231b1297603Smrg exit ;; 1232b1297603Smrg i*86:VOS:*:*) 1233b1297603Smrg # From Paul.Green@stratus.com. 1234a570218aSmrg echo "$UNAME_MACHINE"-stratus-vos 1235b1297603Smrg exit ;; 1236b1297603Smrg *:VOS:*:*) 1237b1297603Smrg # From Paul.Green@stratus.com. 1238b1297603Smrg echo hppa1.1-stratus-vos 1239b1297603Smrg exit ;; 1240b1297603Smrg mc68*:A/UX:*:*) 1241a570218aSmrg echo m68k-apple-aux"$UNAME_RELEASE" 1242b1297603Smrg exit ;; 1243b1297603Smrg news*:NEWS-OS:6*:*) 1244b1297603Smrg echo mips-sony-newsos6 1245b1297603Smrg exit ;; 1246b1297603Smrg R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 1247b1297603Smrg if [ -d /usr/nec ]; then 1248a570218aSmrg echo mips-nec-sysv"$UNAME_RELEASE" 1249b1297603Smrg else 1250a570218aSmrg echo mips-unknown-sysv"$UNAME_RELEASE" 1251b1297603Smrg fi 125233734831Smrg exit ;; 1253b1297603Smrg BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 1254b1297603Smrg echo powerpc-be-beos 1255b1297603Smrg exit ;; 1256b1297603Smrg BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 1257b1297603Smrg echo powerpc-apple-beos 1258b1297603Smrg exit ;; 1259b1297603Smrg BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 1260b1297603Smrg echo i586-pc-beos 1261b1297603Smrg exit ;; 126233734831Smrg BePC:Haiku:*:*) # Haiku running on Intel PC compatible. 126333734831Smrg echo i586-pc-haiku 126433734831Smrg exit ;; 126533734831Smrg x86_64:Haiku:*:*) 126633734831Smrg echo x86_64-unknown-haiku 126733734831Smrg exit ;; 1268b1297603Smrg SX-4:SUPER-UX:*:*) 1269a570218aSmrg echo sx4-nec-superux"$UNAME_RELEASE" 1270b1297603Smrg exit ;; 1271b1297603Smrg SX-5:SUPER-UX:*:*) 1272a570218aSmrg echo sx5-nec-superux"$UNAME_RELEASE" 1273b1297603Smrg exit ;; 1274b1297603Smrg SX-6:SUPER-UX:*:*) 1275a570218aSmrg echo sx6-nec-superux"$UNAME_RELEASE" 1276b1297603Smrg exit ;; 127733734831Smrg SX-7:SUPER-UX:*:*) 1278a570218aSmrg echo sx7-nec-superux"$UNAME_RELEASE" 127933734831Smrg exit ;; 128033734831Smrg SX-8:SUPER-UX:*:*) 1281a570218aSmrg echo sx8-nec-superux"$UNAME_RELEASE" 128233734831Smrg exit ;; 128333734831Smrg SX-8R:SUPER-UX:*:*) 1284a570218aSmrg echo sx8r-nec-superux"$UNAME_RELEASE" 1285a570218aSmrg exit ;; 1286a570218aSmrg SX-ACE:SUPER-UX:*:*) 1287a570218aSmrg echo sxace-nec-superux"$UNAME_RELEASE" 128833734831Smrg exit ;; 1289b1297603Smrg Power*:Rhapsody:*:*) 1290a570218aSmrg echo powerpc-apple-rhapsody"$UNAME_RELEASE" 1291b1297603Smrg exit ;; 1292b1297603Smrg *:Rhapsody:*:*) 1293a570218aSmrg echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE" 1294b1297603Smrg exit ;; 1295b1297603Smrg *:Darwin:*:*) 1296b1297603Smrg UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 1297a570218aSmrg set_cc_for_build 1298a570218aSmrg if test "$UNAME_PROCESSOR" = unknown ; then 1299a570218aSmrg UNAME_PROCESSOR=powerpc 1300a570218aSmrg fi 1301a570218aSmrg if test "`echo "$UNAME_RELEASE" | sed -e 's/\..*//'`" -le 10 ; then 1302a570218aSmrg if [ "$CC_FOR_BUILD" != no_compiler_found ]; then 1303a570218aSmrg if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ 1304a570218aSmrg (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ 1305a570218aSmrg grep IS_64BIT_ARCH >/dev/null 1306a570218aSmrg then 1307a570218aSmrg case $UNAME_PROCESSOR in 1308a570218aSmrg i386) UNAME_PROCESSOR=x86_64 ;; 1309a570218aSmrg powerpc) UNAME_PROCESSOR=powerpc64 ;; 1310a570218aSmrg esac 1311a570218aSmrg fi 1312a570218aSmrg # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc 1313a570218aSmrg if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \ 1314a570218aSmrg (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ 1315a570218aSmrg grep IS_PPC >/dev/null 1316a570218aSmrg then 1317a570218aSmrg UNAME_PROCESSOR=powerpc 1318a570218aSmrg fi 1319a570218aSmrg fi 1320a570218aSmrg elif test "$UNAME_PROCESSOR" = i386 ; then 1321a570218aSmrg # Avoid executing cc on OS X 10.9, as it ships with a stub 1322a570218aSmrg # that puts up a graphical alert prompting to install 1323a570218aSmrg # developer tools. Any system running Mac OS X 10.7 or 1324a570218aSmrg # later (Darwin 11 and later) is required to have a 64-bit 1325a570218aSmrg # processor. This is not true of the ARM version of Darwin 1326a570218aSmrg # that Apple uses in portable devices. 1327a570218aSmrg UNAME_PROCESSOR=x86_64 1328a570218aSmrg fi 1329a570218aSmrg echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE" 1330b1297603Smrg exit ;; 1331b1297603Smrg *:procnto*:*:* | *:QNX:[0123456789]*:*) 1332b1297603Smrg UNAME_PROCESSOR=`uname -p` 1333a570218aSmrg if test "$UNAME_PROCESSOR" = x86; then 1334b1297603Smrg UNAME_PROCESSOR=i386 1335b1297603Smrg UNAME_MACHINE=pc 1336b1297603Smrg fi 1337a570218aSmrg echo "$UNAME_PROCESSOR"-"$UNAME_MACHINE"-nto-qnx"$UNAME_RELEASE" 1338b1297603Smrg exit ;; 1339b1297603Smrg *:QNX:*:4*) 1340b1297603Smrg echo i386-pc-qnx 1341b1297603Smrg exit ;; 1342a570218aSmrg NEO-*:NONSTOP_KERNEL:*:*) 1343a570218aSmrg echo neo-tandem-nsk"$UNAME_RELEASE" 134433734831Smrg exit ;; 134533734831Smrg NSE-*:NONSTOP_KERNEL:*:*) 1346a570218aSmrg echo nse-tandem-nsk"$UNAME_RELEASE" 1347b1297603Smrg exit ;; 1348a570218aSmrg NSR-*:NONSTOP_KERNEL:*:*) 1349a570218aSmrg echo nsr-tandem-nsk"$UNAME_RELEASE" 1350a570218aSmrg exit ;; 1351a570218aSmrg NSV-*:NONSTOP_KERNEL:*:*) 1352a570218aSmrg echo nsv-tandem-nsk"$UNAME_RELEASE" 1353a570218aSmrg exit ;; 1354a570218aSmrg NSX-*:NONSTOP_KERNEL:*:*) 1355a570218aSmrg echo nsx-tandem-nsk"$UNAME_RELEASE" 1356b1297603Smrg exit ;; 1357b1297603Smrg *:NonStop-UX:*:*) 1358b1297603Smrg echo mips-compaq-nonstopux 1359b1297603Smrg exit ;; 1360b1297603Smrg BS2000:POSIX*:*:*) 1361b1297603Smrg echo bs2000-siemens-sysv 1362b1297603Smrg exit ;; 1363b1297603Smrg DS/*:UNIX_System_V:*:*) 1364a570218aSmrg echo "$UNAME_MACHINE"-"$UNAME_SYSTEM"-"$UNAME_RELEASE" 1365b1297603Smrg exit ;; 1366b1297603Smrg *:Plan9:*:*) 1367b1297603Smrg # "uname -m" is not consistent, so use $cputype instead. 386 1368b1297603Smrg # is converted to i386 for consistency with other x86 1369b1297603Smrg # operating systems. 1370a570218aSmrg # shellcheck disable=SC2154 1371a570218aSmrg if test "$cputype" = 386; then 1372b1297603Smrg UNAME_MACHINE=i386 1373b1297603Smrg else 1374b1297603Smrg UNAME_MACHINE="$cputype" 1375b1297603Smrg fi 1376a570218aSmrg echo "$UNAME_MACHINE"-unknown-plan9 1377b1297603Smrg exit ;; 1378b1297603Smrg *:TOPS-10:*:*) 1379b1297603Smrg echo pdp10-unknown-tops10 1380b1297603Smrg exit ;; 1381b1297603Smrg *:TENEX:*:*) 1382b1297603Smrg echo pdp10-unknown-tenex 1383b1297603Smrg exit ;; 1384b1297603Smrg KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 1385b1297603Smrg echo pdp10-dec-tops20 1386b1297603Smrg exit ;; 1387b1297603Smrg XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 1388b1297603Smrg echo pdp10-xkl-tops20 1389b1297603Smrg exit ;; 1390b1297603Smrg *:TOPS-20:*:*) 1391b1297603Smrg echo pdp10-unknown-tops20 1392b1297603Smrg exit ;; 1393b1297603Smrg *:ITS:*:*) 1394b1297603Smrg echo pdp10-unknown-its 1395b1297603Smrg exit ;; 1396b1297603Smrg SEI:*:*:SEIUX) 1397a570218aSmrg echo mips-sei-seiux"$UNAME_RELEASE" 1398b1297603Smrg exit ;; 1399b1297603Smrg *:DragonFly:*:*) 1400a570218aSmrg echo "$UNAME_MACHINE"-unknown-dragonfly"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`" 1401b1297603Smrg exit ;; 1402b1297603Smrg *:*VMS:*:*) 140333734831Smrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 1404a570218aSmrg case "$UNAME_MACHINE" in 1405b1297603Smrg A*) echo alpha-dec-vms ; exit ;; 1406b1297603Smrg I*) echo ia64-dec-vms ; exit ;; 1407b1297603Smrg V*) echo vax-dec-vms ; exit ;; 1408b1297603Smrg esac ;; 1409b1297603Smrg *:XENIX:*:SysV) 1410b1297603Smrg echo i386-pc-xenix 1411b1297603Smrg exit ;; 1412b1297603Smrg i*86:skyos:*:*) 1413a570218aSmrg echo "$UNAME_MACHINE"-pc-skyos"`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`" 1414b1297603Smrg exit ;; 14155b944e2aSmrg i*86:rdos:*:*) 1416a570218aSmrg echo "$UNAME_MACHINE"-pc-rdos 14175b944e2aSmrg exit ;; 141833734831Smrg i*86:AROS:*:*) 1419a570218aSmrg echo "$UNAME_MACHINE"-pc-aros 142033734831Smrg exit ;; 142133734831Smrg x86_64:VMkernel:*:*) 1422a570218aSmrg echo "$UNAME_MACHINE"-unknown-esx 1423a570218aSmrg exit ;; 1424a570218aSmrg amd64:Isilon\ OneFS:*:*) 1425a570218aSmrg echo x86_64-unknown-onefs 142633734831Smrg exit ;; 1427b1297603Smrgesac 1428b1297603Smrg 1429a570218aSmrgecho "$0: unable to guess system type" >&2 1430b1297603Smrg 1431a570218aSmrgcase "$UNAME_MACHINE:$UNAME_SYSTEM" in 1432a570218aSmrg mips:Linux | mips64:Linux) 1433a570218aSmrg # If we got here on MIPS GNU/Linux, output extra information. 1434a570218aSmrg cat >&2 <<EOF 1435b1297603Smrg 1436a570218aSmrgNOTE: MIPS GNU/Linux systems require a C compiler to fully recognize 1437a570218aSmrgthe system type. Please install a C compiler and try again. 1438b1297603SmrgEOF 1439a570218aSmrg ;; 1440a570218aSmrgesac 1441b1297603Smrg 1442b1297603Smrgcat >&2 <<EOF 1443b1297603Smrg 1444a570218aSmrgThis script (version $timestamp), has failed to recognize the 1445a570218aSmrgoperating system you are using. If your script is old, overwrite *all* 1446a570218aSmrgcopies of config.guess and config.sub with the latest versions from: 1447b1297603Smrg 1448a570218aSmrg https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess 1449b1297603Smrgand 1450a570218aSmrg https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub 1451b1297603Smrg 1452a570218aSmrgIf $0 has already been updated, send the following data and any 1453a570218aSmrginformation you think might be pertinent to config-patches@gnu.org to 1454a570218aSmrgprovide the necessary information to handle your system. 1455b1297603Smrg 1456b1297603Smrgconfig.guess timestamp = $timestamp 1457b1297603Smrg 1458b1297603Smrguname -m = `(uname -m) 2>/dev/null || echo unknown` 1459b1297603Smrguname -r = `(uname -r) 2>/dev/null || echo unknown` 1460b1297603Smrguname -s = `(uname -s) 2>/dev/null || echo unknown` 1461b1297603Smrguname -v = `(uname -v) 2>/dev/null || echo unknown` 1462b1297603Smrg 1463b1297603Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 1464b1297603Smrg/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 1465b1297603Smrg 1466b1297603Smrghostinfo = `(hostinfo) 2>/dev/null` 1467b1297603Smrg/bin/universe = `(/bin/universe) 2>/dev/null` 1468b1297603Smrg/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 1469b1297603Smrg/bin/arch = `(/bin/arch) 2>/dev/null` 1470b1297603Smrg/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 1471b1297603Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 1472b1297603Smrg 1473a570218aSmrgUNAME_MACHINE = "$UNAME_MACHINE" 1474a570218aSmrgUNAME_RELEASE = "$UNAME_RELEASE" 1475a570218aSmrgUNAME_SYSTEM = "$UNAME_SYSTEM" 1476a570218aSmrgUNAME_VERSION = "$UNAME_VERSION" 1477b1297603SmrgEOF 1478b1297603Smrg 1479b1297603Smrgexit 1 1480b1297603Smrg 1481b1297603Smrg# Local variables: 1482a570218aSmrg# eval: (add-hook 'before-save-hook 'time-stamp) 1483b1297603Smrg# time-stamp-start: "timestamp='" 1484b1297603Smrg# time-stamp-format: "%:y-%02m-%02d" 1485b1297603Smrg# time-stamp-end: "'" 1486b1297603Smrg# End: 1487