1234949Sbapt#! /bin/sh 2234949Sbapt# Attempt to guess a canonical system name. 3319349Sjkim# Copyright 1992-2017 Free Software Foundation, Inc. 4234949Sbapt 5319349Sjkimtimestamp='2017-01-01' 6234949Sbapt 7234949Sbapt# This file is free software; you can redistribute it and/or modify it 8234949Sbapt# under the terms of the GNU General Public License as published by 9251143Sbapt# the Free Software Foundation; either version 3 of the License, or 10234949Sbapt# (at your option) any later version. 11234949Sbapt# 12234949Sbapt# This program is distributed in the hope that it will be useful, but 13234949Sbapt# WITHOUT ANY WARRANTY; without even the implied warranty of 14234949Sbapt# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15234949Sbapt# General Public License for more details. 16234949Sbapt# 17234949Sbapt# You should have received a copy of the GNU General Public License 18251143Sbapt# along with this program; if not, see <http://www.gnu.org/licenses/>. 19234949Sbapt# 20234949Sbapt# As a special exception to the GNU General Public License, if you 21234949Sbapt# distribute this file as part of a program that contains a 22234949Sbapt# configuration script generated by Autoconf, you may include it under 23251143Sbapt# the same distribution terms that you use for the rest of that 24251143Sbapt# program. This Exception is an additional permission under section 7 25251143Sbapt# of the GNU General Public License, version 3 ("GPLv3"). 26234949Sbapt# 27296240Sjkim# Originally written by Per Bothner; maintained since 2000 by Ben Elliston. 28234949Sbapt# 29234949Sbapt# You can get the latest version of this script from: 30297276Sjkim# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess 31251143Sbapt# 32296240Sjkim# Please send patches to <config-patches@gnu.org>. 33234949Sbapt 34251143Sbapt 35234949Sbaptme=`echo "$0" | sed -e 's,.*/,,'` 36234949Sbapt 37234949Sbaptusage="\ 38234949SbaptUsage: $0 [OPTION] 39234949Sbapt 40234949SbaptOutput the configuration name of the system \`$me' is run on. 41234949Sbapt 42234949SbaptOperation modes: 43234949Sbapt -h, --help print this help, then exit 44234949Sbapt -t, --time-stamp print date of last modification, then exit 45234949Sbapt -v, --version print version number, then exit 46234949Sbapt 47234949SbaptReport bugs and patches to <config-patches@gnu.org>." 48234949Sbapt 49234949Sbaptversion="\ 50234949SbaptGNU config.guess ($timestamp) 51234949Sbapt 52234949SbaptOriginally written by Per Bothner. 53319349SjkimCopyright 1992-2017 Free Software Foundation, Inc. 54234949Sbapt 55234949SbaptThis is free software; see the source for copying conditions. There is NO 56234949Sbaptwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 57234949Sbapt 58234949Sbapthelp=" 59234949SbaptTry \`$me --help' for more information." 60234949Sbapt 61234949Sbapt# Parse command line 62234949Sbaptwhile test $# -gt 0 ; do 63234949Sbapt case $1 in 64234949Sbapt --time-stamp | --time* | -t ) 65234949Sbapt echo "$timestamp" ; exit ;; 66234949Sbapt --version | -v ) 67234949Sbapt echo "$version" ; exit ;; 68234949Sbapt --help | --h* | -h ) 69234949Sbapt echo "$usage"; exit ;; 70234949Sbapt -- ) # Stop option processing 71234949Sbapt shift; break ;; 72234949Sbapt - ) # Use stdin as input. 73234949Sbapt break ;; 74234949Sbapt -* ) 75234949Sbapt echo "$me: invalid option $1$help" >&2 76234949Sbapt exit 1 ;; 77234949Sbapt * ) 78234949Sbapt break ;; 79234949Sbapt esac 80234949Sbaptdone 81234949Sbapt 82234949Sbaptif test $# != 0; then 83234949Sbapt echo "$me: too many arguments$help" >&2 84234949Sbapt exit 1 85234949Sbaptfi 86234949Sbapt 87234949Sbapttrap 'exit 1' 1 2 15 88234949Sbapt 89234949Sbapt# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 90234949Sbapt# compiler to aid in system detection is discouraged as it requires 91234949Sbapt# temporary files to be created and, as you can see below, it is a 92234949Sbapt# headache to deal with in a portable fashion. 93234949Sbapt 94234949Sbapt# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 95234949Sbapt# use `HOST_CC' if defined, but it is deprecated. 96234949Sbapt 97234949Sbapt# Portable tmp directory creation inspired by the Autoconf team. 98234949Sbapt 99234949Sbaptset_cc_for_build=' 100234949Sbapttrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; 101234949Sbapttrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 102234949Sbapt: ${TMPDIR=/tmp} ; 103234949Sbapt { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 104234949Sbapt { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 105234949Sbapt { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || 106234949Sbapt { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; 107234949Sbaptdummy=$tmp/dummy ; 108234949Sbapttmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; 109234949Sbaptcase $CC_FOR_BUILD,$HOST_CC,$CC in 110234949Sbapt ,,) echo "int x;" > $dummy.c ; 111234949Sbapt for c in cc gcc c89 c99 ; do 112234949Sbapt if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then 113234949Sbapt CC_FOR_BUILD="$c"; break ; 114234949Sbapt fi ; 115234949Sbapt done ; 116234949Sbapt if test x"$CC_FOR_BUILD" = x ; then 117234949Sbapt CC_FOR_BUILD=no_compiler_found ; 118234949Sbapt fi 119234949Sbapt ;; 120234949Sbapt ,,*) CC_FOR_BUILD=$CC ;; 121234949Sbapt ,*,*) CC_FOR_BUILD=$HOST_CC ;; 122234949Sbaptesac ; set_cc_for_build= ;' 123234949Sbapt 124234949Sbapt# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 125234949Sbapt# (ghazi@noc.rutgers.edu 1994-08-24) 126234949Sbaptif (test -f /.attbin/uname) >/dev/null 2>&1 ; then 127234949Sbapt PATH=$PATH:/.attbin ; export PATH 128234949Sbaptfi 129234949Sbapt 130234949SbaptUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 131234949SbaptUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 132234949SbaptUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 133234949SbaptUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 134234949Sbapt 135257315Sbaptcase "${UNAME_SYSTEM}" in 136257315SbaptLinux|GNU|GNU/*) 137257315Sbapt # If the system lacks a compiler, then just pick glibc. 138257315Sbapt # We could probably try harder. 139257315Sbapt LIBC=gnu 140257315Sbapt 141257315Sbapt eval $set_cc_for_build 142257315Sbapt cat <<-EOF > $dummy.c 143257315Sbapt #include <features.h> 144257315Sbapt #if defined(__UCLIBC__) 145257315Sbapt LIBC=uclibc 146257315Sbapt #elif defined(__dietlibc__) 147257315Sbapt LIBC=dietlibc 148257315Sbapt #else 149257315Sbapt LIBC=gnu 150257315Sbapt #endif 151257315Sbapt EOF 152266639Sbapt eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'` 153257315Sbapt ;; 154257315Sbaptesac 155257315Sbapt 156234949Sbapt# Note: order is significant - the case branches are not exclusive. 157234949Sbapt 158234949Sbaptcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 159234949Sbapt *:NetBSD:*:*) 160234949Sbapt # NetBSD (nbsd) targets should (where applicable) match one or 161251143Sbapt # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, 162234949Sbapt # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 163234949Sbapt # switched to ELF, *-*-netbsd* would select the old 164234949Sbapt # object file format. This provides both forward 165234949Sbapt # compatibility and a consistent mechanism for selecting the 166234949Sbapt # object file format. 167234949Sbapt # 168234949Sbapt # Note: NetBSD doesn't particularly care about the vendor 169234949Sbapt # portion of the name. We always set it to "unknown". 170234949Sbapt sysctl="sysctl -n hw.machine_arch" 171296240Sjkim UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \ 172296240Sjkim /sbin/$sysctl 2>/dev/null || \ 173296240Sjkim /usr/sbin/$sysctl 2>/dev/null || \ 174296240Sjkim echo unknown)` 175234949Sbapt case "${UNAME_MACHINE_ARCH}" in 176234949Sbapt armeb) machine=armeb-unknown ;; 177234949Sbapt arm*) machine=arm-unknown ;; 178234949Sbapt sh3el) machine=shl-unknown ;; 179234949Sbapt sh3eb) machine=sh-unknown ;; 180234949Sbapt sh5el) machine=sh5le-unknown ;; 181296240Sjkim earmv*) 182296240Sjkim arch=`echo ${UNAME_MACHINE_ARCH} | sed -e 's,^e\(armv[0-9]\).*$,\1,'` 183296240Sjkim endian=`echo ${UNAME_MACHINE_ARCH} | sed -ne 's,^.*\(eb\)$,\1,p'` 184296240Sjkim machine=${arch}${endian}-unknown 185296240Sjkim ;; 186234949Sbapt *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 187234949Sbapt esac 188234949Sbapt # The Operating System including object format, if it has switched 189319297Sdelphij # to ELF recently (or will in the future) and ABI. 190234949Sbapt case "${UNAME_MACHINE_ARCH}" in 191319297Sdelphij earm*) 192319297Sdelphij os=netbsdelf 193319297Sdelphij ;; 194319297Sdelphij arm*|i386|m68k|ns32k|sh3*|sparc|vax) 195234949Sbapt eval $set_cc_for_build 196234949Sbapt if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 197234949Sbapt | grep -q __ELF__ 198234949Sbapt then 199234949Sbapt # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 200234949Sbapt # Return netbsd for either. FIX? 201234949Sbapt os=netbsd 202234949Sbapt else 203234949Sbapt os=netbsdelf 204234949Sbapt fi 205234949Sbapt ;; 206234949Sbapt *) 207234949Sbapt os=netbsd 208234949Sbapt ;; 209234949Sbapt esac 210296240Sjkim # Determine ABI tags. 211296240Sjkim case "${UNAME_MACHINE_ARCH}" in 212296240Sjkim earm*) 213296240Sjkim expr='s/^earmv[0-9]/-eabi/;s/eb$//' 214296240Sjkim abi=`echo ${UNAME_MACHINE_ARCH} | sed -e "$expr"` 215296240Sjkim ;; 216296240Sjkim esac 217234949Sbapt # The OS release 218234949Sbapt # Debian GNU/NetBSD machines have a different userland, and 219234949Sbapt # thus, need a distinct triplet. However, they do not need 220234949Sbapt # kernel version information, so it can be replaced with a 221234949Sbapt # suitable tag, in the style of linux-gnu. 222234949Sbapt case "${UNAME_VERSION}" in 223234949Sbapt Debian*) 224234949Sbapt release='-gnu' 225234949Sbapt ;; 226234949Sbapt *) 227297276Sjkim release=`echo ${UNAME_RELEASE} | sed -e 's/[-_].*//' | cut -d. -f1,2` 228234949Sbapt ;; 229234949Sbapt esac 230234949Sbapt # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 231234949Sbapt # contains redundant information, the shorter form: 232234949Sbapt # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 233296240Sjkim echo "${machine}-${os}${release}${abi}" 234234949Sbapt exit ;; 235251143Sbapt *:Bitrig:*:*) 236251143Sbapt UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` 237251143Sbapt echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE} 238251143Sbapt exit ;; 239234949Sbapt *:OpenBSD:*:*) 240234949Sbapt UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 241234949Sbapt echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 242234949Sbapt exit ;; 243319297Sdelphij *:LibertyBSD:*:*) 244319297Sdelphij UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'` 245319297Sdelphij echo ${UNAME_MACHINE_ARCH}-unknown-libertybsd${UNAME_RELEASE} 246319297Sdelphij exit ;; 247234949Sbapt *:ekkoBSD:*:*) 248234949Sbapt echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 249234949Sbapt exit ;; 250234949Sbapt *:SolidBSD:*:*) 251234949Sbapt echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} 252234949Sbapt exit ;; 253234949Sbapt macppc:MirBSD:*:*) 254234949Sbapt echo powerpc-unknown-mirbsd${UNAME_RELEASE} 255234949Sbapt exit ;; 256234949Sbapt *:MirBSD:*:*) 257234949Sbapt echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 258234949Sbapt exit ;; 259297276Sjkim *:Sortix:*:*) 260297276Sjkim echo ${UNAME_MACHINE}-unknown-sortix 261297276Sjkim exit ;; 262234949Sbapt alpha:OSF1:*:*) 263234949Sbapt case $UNAME_RELEASE in 264251143Sbapt *4.0) 265234949Sbapt UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 266234949Sbapt ;; 267251143Sbapt *5.*) 268234949Sbapt UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 269234949Sbapt ;; 270234949Sbapt esac 271234949Sbapt # According to Compaq, /usr/sbin/psrinfo has been available on 272234949Sbapt # OSF/1 and Tru64 systems produced since 1995. I hope that 273234949Sbapt # covers most systems running today. This code pipes the CPU 274234949Sbapt # types through head -n 1, so we only detect the type of CPU 0. 275234949Sbapt ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 276234949Sbapt case "$ALPHA_CPU_TYPE" in 277234949Sbapt "EV4 (21064)") 278319297Sdelphij UNAME_MACHINE=alpha ;; 279234949Sbapt "EV4.5 (21064)") 280319297Sdelphij UNAME_MACHINE=alpha ;; 281234949Sbapt "LCA4 (21066/21068)") 282319297Sdelphij UNAME_MACHINE=alpha ;; 283234949Sbapt "EV5 (21164)") 284319297Sdelphij UNAME_MACHINE=alphaev5 ;; 285234949Sbapt "EV5.6 (21164A)") 286319297Sdelphij UNAME_MACHINE=alphaev56 ;; 287234949Sbapt "EV5.6 (21164PC)") 288319297Sdelphij UNAME_MACHINE=alphapca56 ;; 289234949Sbapt "EV5.7 (21164PC)") 290319297Sdelphij UNAME_MACHINE=alphapca57 ;; 291234949Sbapt "EV6 (21264)") 292319297Sdelphij UNAME_MACHINE=alphaev6 ;; 293234949Sbapt "EV6.7 (21264A)") 294319297Sdelphij UNAME_MACHINE=alphaev67 ;; 295234949Sbapt "EV6.8CB (21264C)") 296319297Sdelphij UNAME_MACHINE=alphaev68 ;; 297234949Sbapt "EV6.8AL (21264B)") 298319297Sdelphij UNAME_MACHINE=alphaev68 ;; 299234949Sbapt "EV6.8CX (21264D)") 300319297Sdelphij UNAME_MACHINE=alphaev68 ;; 301234949Sbapt "EV6.9A (21264/EV69A)") 302319297Sdelphij UNAME_MACHINE=alphaev69 ;; 303234949Sbapt "EV7 (21364)") 304319297Sdelphij UNAME_MACHINE=alphaev7 ;; 305234949Sbapt "EV7.9 (21364A)") 306319297Sdelphij UNAME_MACHINE=alphaev79 ;; 307234949Sbapt esac 308234949Sbapt # A Pn.n version is a patched version. 309234949Sbapt # A Vn.n version is a released version. 310234949Sbapt # A Tn.n version is a released field test version. 311234949Sbapt # A Xn.n version is an unreleased experimental baselevel. 312234949Sbapt # 1.2 uses "1.2" for uname -r. 313319297Sdelphij echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` 314234949Sbapt # Reset EXIT trap before exiting to avoid spurious non-zero exit code. 315234949Sbapt exitcode=$? 316234949Sbapt trap '' 0 317234949Sbapt exit $exitcode ;; 318234949Sbapt Alpha\ *:Windows_NT*:*) 319234949Sbapt # How do we know it's Interix rather than the generic POSIX subsystem? 320234949Sbapt # Should we change UNAME_MACHINE based on the output of uname instead 321234949Sbapt # of the specific Alpha model? 322234949Sbapt echo alpha-pc-interix 323234949Sbapt exit ;; 324234949Sbapt 21064:Windows_NT:50:3) 325234949Sbapt echo alpha-dec-winnt3.5 326234949Sbapt exit ;; 327234949Sbapt Amiga*:UNIX_System_V:4.0:*) 328234949Sbapt echo m68k-unknown-sysv4 329234949Sbapt exit ;; 330234949Sbapt *:[Aa]miga[Oo][Ss]:*:*) 331234949Sbapt echo ${UNAME_MACHINE}-unknown-amigaos 332234949Sbapt exit ;; 333234949Sbapt *:[Mm]orph[Oo][Ss]:*:*) 334234949Sbapt echo ${UNAME_MACHINE}-unknown-morphos 335234949Sbapt exit ;; 336234949Sbapt *:OS/390:*:*) 337234949Sbapt echo i370-ibm-openedition 338234949Sbapt exit ;; 339234949Sbapt *:z/VM:*:*) 340234949Sbapt echo s390-ibm-zvmoe 341234949Sbapt exit ;; 342234949Sbapt *:OS400:*:*) 343234949Sbapt echo powerpc-ibm-os400 344234949Sbapt exit ;; 345234949Sbapt arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 346234949Sbapt echo arm-acorn-riscix${UNAME_RELEASE} 347234949Sbapt exit ;; 348251143Sbapt arm*:riscos:*:*|arm*:RISCOS:*:*) 349234949Sbapt echo arm-unknown-riscos 350234949Sbapt exit ;; 351234949Sbapt SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 352234949Sbapt echo hppa1.1-hitachi-hiuxmpp 353234949Sbapt exit ;; 354234949Sbapt Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 355234949Sbapt # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 356234949Sbapt if test "`(/bin/universe) 2>/dev/null`" = att ; then 357234949Sbapt echo pyramid-pyramid-sysv3 358234949Sbapt else 359234949Sbapt echo pyramid-pyramid-bsd 360234949Sbapt fi 361234949Sbapt exit ;; 362234949Sbapt NILE*:*:*:dcosx) 363234949Sbapt echo pyramid-pyramid-svr4 364234949Sbapt exit ;; 365234949Sbapt DRS?6000:unix:4.0:6*) 366234949Sbapt echo sparc-icl-nx6 367234949Sbapt exit ;; 368234949Sbapt DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 369234949Sbapt case `/usr/bin/uname -p` in 370234949Sbapt sparc) echo sparc-icl-nx7; exit ;; 371234949Sbapt esac ;; 372234949Sbapt s390x:SunOS:*:*) 373234949Sbapt echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 374234949Sbapt exit ;; 375234949Sbapt sun4H:SunOS:5.*:*) 376234949Sbapt echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 377234949Sbapt exit ;; 378234949Sbapt sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 379234949Sbapt echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 380234949Sbapt exit ;; 381234949Sbapt i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) 382234949Sbapt echo i386-pc-auroraux${UNAME_RELEASE} 383234949Sbapt exit ;; 384234949Sbapt i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) 385234949Sbapt eval $set_cc_for_build 386319297Sdelphij SUN_ARCH=i386 387234949Sbapt # If there is a compiler, see if it is configured for 64-bit objects. 388234949Sbapt # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. 389234949Sbapt # This test works for both compilers. 390319297Sdelphij if [ "$CC_FOR_BUILD" != no_compiler_found ]; then 391234949Sbapt if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ 392319297Sdelphij (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ 393234949Sbapt grep IS_64BIT_ARCH >/dev/null 394234949Sbapt then 395319297Sdelphij SUN_ARCH=x86_64 396234949Sbapt fi 397234949Sbapt fi 398234949Sbapt echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 399234949Sbapt exit ;; 400234949Sbapt sun4*:SunOS:6*:*) 401234949Sbapt # According to config.sub, this is the proper way to canonicalize 402234949Sbapt # SunOS6. Hard to guess exactly what SunOS6 will be like, but 403234949Sbapt # it's likely to be more like Solaris than SunOS4. 404234949Sbapt echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 405234949Sbapt exit ;; 406234949Sbapt sun4*:SunOS:*:*) 407234949Sbapt case "`/usr/bin/arch -k`" in 408234949Sbapt Series*|S4*) 409234949Sbapt UNAME_RELEASE=`uname -v` 410234949Sbapt ;; 411234949Sbapt esac 412234949Sbapt # Japanese Language versions have a version number like `4.1.3-JL'. 413234949Sbapt echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 414234949Sbapt exit ;; 415234949Sbapt sun3*:SunOS:*:*) 416234949Sbapt echo m68k-sun-sunos${UNAME_RELEASE} 417234949Sbapt exit ;; 418234949Sbapt sun*:*:4.2BSD:*) 419234949Sbapt UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 420319297Sdelphij test "x${UNAME_RELEASE}" = x && UNAME_RELEASE=3 421234949Sbapt case "`/bin/arch`" in 422234949Sbapt sun3) 423234949Sbapt echo m68k-sun-sunos${UNAME_RELEASE} 424234949Sbapt ;; 425234949Sbapt sun4) 426234949Sbapt echo sparc-sun-sunos${UNAME_RELEASE} 427234949Sbapt ;; 428234949Sbapt esac 429234949Sbapt exit ;; 430234949Sbapt aushp:SunOS:*:*) 431234949Sbapt echo sparc-auspex-sunos${UNAME_RELEASE} 432234949Sbapt exit ;; 433234949Sbapt # The situation for MiNT is a little confusing. The machine name 434234949Sbapt # can be virtually everything (everything which is not 435234949Sbapt # "atarist" or "atariste" at least should have a processor 436234949Sbapt # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 437234949Sbapt # to the lowercase version "mint" (or "freemint"). Finally 438234949Sbapt # the system name "TOS" denotes a system which is actually not 439234949Sbapt # MiNT. But MiNT is downward compatible to TOS, so this should 440234949Sbapt # be no problem. 441234949Sbapt atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 442234949Sbapt echo m68k-atari-mint${UNAME_RELEASE} 443234949Sbapt exit ;; 444234949Sbapt atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 445234949Sbapt echo m68k-atari-mint${UNAME_RELEASE} 446234949Sbapt exit ;; 447234949Sbapt *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 448234949Sbapt echo m68k-atari-mint${UNAME_RELEASE} 449234949Sbapt exit ;; 450234949Sbapt milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 451234949Sbapt echo m68k-milan-mint${UNAME_RELEASE} 452234949Sbapt exit ;; 453234949Sbapt hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 454234949Sbapt echo m68k-hades-mint${UNAME_RELEASE} 455234949Sbapt exit ;; 456234949Sbapt *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 457234949Sbapt echo m68k-unknown-mint${UNAME_RELEASE} 458234949Sbapt exit ;; 459234949Sbapt m68k:machten:*:*) 460234949Sbapt echo m68k-apple-machten${UNAME_RELEASE} 461234949Sbapt exit ;; 462234949Sbapt powerpc:machten:*:*) 463234949Sbapt echo powerpc-apple-machten${UNAME_RELEASE} 464234949Sbapt exit ;; 465234949Sbapt RISC*:Mach:*:*) 466234949Sbapt echo mips-dec-mach_bsd4.3 467234949Sbapt exit ;; 468234949Sbapt RISC*:ULTRIX:*:*) 469234949Sbapt echo mips-dec-ultrix${UNAME_RELEASE} 470234949Sbapt exit ;; 471234949Sbapt VAX*:ULTRIX*:*:*) 472234949Sbapt echo vax-dec-ultrix${UNAME_RELEASE} 473234949Sbapt exit ;; 474234949Sbapt 2020:CLIX:*:* | 2430:CLIX:*:*) 475234949Sbapt echo clipper-intergraph-clix${UNAME_RELEASE} 476234949Sbapt exit ;; 477234949Sbapt mips:*:*:UMIPS | mips:*:*:RISCos) 478234949Sbapt eval $set_cc_for_build 479234949Sbapt sed 's/^ //' << EOF >$dummy.c 480234949Sbapt#ifdef __cplusplus 481234949Sbapt#include <stdio.h> /* for printf() prototype */ 482234949Sbapt int main (int argc, char *argv[]) { 483234949Sbapt#else 484234949Sbapt int main (argc, argv) int argc; char *argv[]; { 485234949Sbapt#endif 486234949Sbapt #if defined (host_mips) && defined (MIPSEB) 487234949Sbapt #if defined (SYSTYPE_SYSV) 488234949Sbapt printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 489234949Sbapt #endif 490234949Sbapt #if defined (SYSTYPE_SVR4) 491234949Sbapt printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 492234949Sbapt #endif 493234949Sbapt #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 494234949Sbapt printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 495234949Sbapt #endif 496234949Sbapt #endif 497234949Sbapt exit (-1); 498234949Sbapt } 499234949SbaptEOF 500234949Sbapt $CC_FOR_BUILD -o $dummy $dummy.c && 501234949Sbapt dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 502234949Sbapt SYSTEM_NAME=`$dummy $dummyarg` && 503234949Sbapt { echo "$SYSTEM_NAME"; exit; } 504234949Sbapt echo mips-mips-riscos${UNAME_RELEASE} 505234949Sbapt exit ;; 506234949Sbapt Motorola:PowerMAX_OS:*:*) 507234949Sbapt echo powerpc-motorola-powermax 508234949Sbapt exit ;; 509234949Sbapt Motorola:*:4.3:PL8-*) 510234949Sbapt echo powerpc-harris-powermax 511234949Sbapt exit ;; 512234949Sbapt Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 513234949Sbapt echo powerpc-harris-powermax 514234949Sbapt exit ;; 515234949Sbapt Night_Hawk:Power_UNIX:*:*) 516234949Sbapt echo powerpc-harris-powerunix 517234949Sbapt exit ;; 518234949Sbapt m88k:CX/UX:7*:*) 519234949Sbapt echo m88k-harris-cxux7 520234949Sbapt exit ;; 521234949Sbapt m88k:*:4*:R4*) 522234949Sbapt echo m88k-motorola-sysv4 523234949Sbapt exit ;; 524234949Sbapt m88k:*:3*:R3*) 525234949Sbapt echo m88k-motorola-sysv3 526234949Sbapt exit ;; 527234949Sbapt AViiON:dgux:*:*) 528234949Sbapt # DG/UX returns AViiON for all architectures 529234949Sbapt UNAME_PROCESSOR=`/usr/bin/uname -p` 530234949Sbapt if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 531234949Sbapt then 532234949Sbapt if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 533234949Sbapt [ ${TARGET_BINARY_INTERFACE}x = x ] 534234949Sbapt then 535234949Sbapt echo m88k-dg-dgux${UNAME_RELEASE} 536234949Sbapt else 537234949Sbapt echo m88k-dg-dguxbcs${UNAME_RELEASE} 538234949Sbapt fi 539234949Sbapt else 540234949Sbapt echo i586-dg-dgux${UNAME_RELEASE} 541234949Sbapt fi 542234949Sbapt exit ;; 543234949Sbapt M88*:DolphinOS:*:*) # DolphinOS (SVR3) 544234949Sbapt echo m88k-dolphin-sysv3 545234949Sbapt exit ;; 546234949Sbapt M88*:*:R3*:*) 547234949Sbapt # Delta 88k system running SVR3 548234949Sbapt echo m88k-motorola-sysv3 549234949Sbapt exit ;; 550234949Sbapt XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 551234949Sbapt echo m88k-tektronix-sysv3 552234949Sbapt exit ;; 553234949Sbapt Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 554234949Sbapt echo m68k-tektronix-bsd 555234949Sbapt exit ;; 556234949Sbapt *:IRIX*:*:*) 557234949Sbapt echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 558234949Sbapt exit ;; 559234949Sbapt ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 560234949Sbapt echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 561234949Sbapt exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 562234949Sbapt i*86:AIX:*:*) 563234949Sbapt echo i386-ibm-aix 564234949Sbapt exit ;; 565234949Sbapt ia64:AIX:*:*) 566234949Sbapt if [ -x /usr/bin/oslevel ] ; then 567234949Sbapt IBM_REV=`/usr/bin/oslevel` 568234949Sbapt else 569234949Sbapt IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 570234949Sbapt fi 571234949Sbapt echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 572234949Sbapt exit ;; 573234949Sbapt *:AIX:2:3) 574234949Sbapt if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 575234949Sbapt eval $set_cc_for_build 576234949Sbapt sed 's/^ //' << EOF >$dummy.c 577234949Sbapt #include <sys/systemcfg.h> 578234949Sbapt 579234949Sbapt main() 580234949Sbapt { 581234949Sbapt if (!__power_pc()) 582234949Sbapt exit(1); 583234949Sbapt puts("powerpc-ibm-aix3.2.5"); 584234949Sbapt exit(0); 585234949Sbapt } 586234949SbaptEOF 587234949Sbapt if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 588234949Sbapt then 589234949Sbapt echo "$SYSTEM_NAME" 590234949Sbapt else 591234949Sbapt echo rs6000-ibm-aix3.2.5 592234949Sbapt fi 593234949Sbapt elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 594234949Sbapt echo rs6000-ibm-aix3.2.4 595234949Sbapt else 596234949Sbapt echo rs6000-ibm-aix3.2 597234949Sbapt fi 598234949Sbapt exit ;; 599234949Sbapt *:AIX:*:[4567]) 600234949Sbapt IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 601234949Sbapt if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 602234949Sbapt IBM_ARCH=rs6000 603234949Sbapt else 604234949Sbapt IBM_ARCH=powerpc 605234949Sbapt fi 606296240Sjkim if [ -x /usr/bin/lslpp ] ; then 607296240Sjkim IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | 608296240Sjkim awk -F: '{ print $3 }' | sed s/[0-9]*$/0/` 609234949Sbapt else 610234949Sbapt IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 611234949Sbapt fi 612234949Sbapt echo ${IBM_ARCH}-ibm-aix${IBM_REV} 613234949Sbapt exit ;; 614234949Sbapt *:AIX:*:*) 615234949Sbapt echo rs6000-ibm-aix 616234949Sbapt exit ;; 617234949Sbapt ibmrt:4.4BSD:*|romp-ibm:BSD:*) 618234949Sbapt echo romp-ibm-bsd4.4 619234949Sbapt exit ;; 620234949Sbapt ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 621234949Sbapt echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 622234949Sbapt exit ;; # report: romp-ibm BSD 4.3 623234949Sbapt *:BOSX:*:*) 624234949Sbapt echo rs6000-bull-bosx 625234949Sbapt exit ;; 626234949Sbapt DPX/2?00:B.O.S.:*:*) 627234949Sbapt echo m68k-bull-sysv3 628234949Sbapt exit ;; 629234949Sbapt 9000/[34]??:4.3bsd:1.*:*) 630234949Sbapt echo m68k-hp-bsd 631234949Sbapt exit ;; 632234949Sbapt hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 633234949Sbapt echo m68k-hp-bsd4.4 634234949Sbapt exit ;; 635234949Sbapt 9000/[34678]??:HP-UX:*:*) 636234949Sbapt HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 637234949Sbapt case "${UNAME_MACHINE}" in 638234949Sbapt 9000/31? ) HP_ARCH=m68000 ;; 639234949Sbapt 9000/[34]?? ) HP_ARCH=m68k ;; 640234949Sbapt 9000/[678][0-9][0-9]) 641234949Sbapt if [ -x /usr/bin/getconf ]; then 642234949Sbapt sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 643234949Sbapt sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 644234949Sbapt case "${sc_cpu_version}" in 645319297Sdelphij 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0 646319297Sdelphij 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1 647251143Sbapt 532) # CPU_PA_RISC2_0 648251143Sbapt case "${sc_kernel_bits}" in 649319297Sdelphij 32) HP_ARCH=hppa2.0n ;; 650319297Sdelphij 64) HP_ARCH=hppa2.0w ;; 651319297Sdelphij '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20 652251143Sbapt esac ;; 653251143Sbapt esac 654234949Sbapt fi 655234949Sbapt if [ "${HP_ARCH}" = "" ]; then 656234949Sbapt eval $set_cc_for_build 657251143Sbapt sed 's/^ //' << EOF >$dummy.c 658234949Sbapt 659251143Sbapt #define _HPUX_SOURCE 660251143Sbapt #include <stdlib.h> 661251143Sbapt #include <unistd.h> 662234949Sbapt 663251143Sbapt int main () 664251143Sbapt { 665251143Sbapt #if defined(_SC_KERNEL_BITS) 666251143Sbapt long bits = sysconf(_SC_KERNEL_BITS); 667251143Sbapt #endif 668251143Sbapt long cpu = sysconf (_SC_CPU_VERSION); 669234949Sbapt 670251143Sbapt switch (cpu) 671251143Sbapt { 672251143Sbapt case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 673251143Sbapt case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 674251143Sbapt case CPU_PA_RISC2_0: 675251143Sbapt #if defined(_SC_KERNEL_BITS) 676251143Sbapt switch (bits) 677251143Sbapt { 678251143Sbapt case 64: puts ("hppa2.0w"); break; 679251143Sbapt case 32: puts ("hppa2.0n"); break; 680251143Sbapt default: puts ("hppa2.0"); break; 681251143Sbapt } break; 682251143Sbapt #else /* !defined(_SC_KERNEL_BITS) */ 683251143Sbapt puts ("hppa2.0"); break; 684251143Sbapt #endif 685251143Sbapt default: puts ("hppa1.0"); break; 686251143Sbapt } 687251143Sbapt exit (0); 688251143Sbapt } 689234949SbaptEOF 690319297Sdelphij (CCOPTS="" $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 691234949Sbapt test -z "$HP_ARCH" && HP_ARCH=hppa 692234949Sbapt fi ;; 693234949Sbapt esac 694319297Sdelphij if [ ${HP_ARCH} = hppa2.0w ] 695234949Sbapt then 696234949Sbapt eval $set_cc_for_build 697234949Sbapt 698234949Sbapt # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 699234949Sbapt # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 700234949Sbapt # generating 64-bit code. GNU and HP use different nomenclature: 701234949Sbapt # 702234949Sbapt # $ CC_FOR_BUILD=cc ./config.guess 703234949Sbapt # => hppa2.0w-hp-hpux11.23 704234949Sbapt # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 705234949Sbapt # => hppa64-hp-hpux11.23 706234949Sbapt 707319297Sdelphij if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | 708234949Sbapt grep -q __LP64__ 709234949Sbapt then 710319297Sdelphij HP_ARCH=hppa2.0w 711234949Sbapt else 712319297Sdelphij HP_ARCH=hppa64 713234949Sbapt fi 714234949Sbapt fi 715234949Sbapt echo ${HP_ARCH}-hp-hpux${HPUX_REV} 716234949Sbapt exit ;; 717234949Sbapt ia64:HP-UX:*:*) 718234949Sbapt HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 719234949Sbapt echo ia64-hp-hpux${HPUX_REV} 720234949Sbapt exit ;; 721234949Sbapt 3050*:HI-UX:*:*) 722234949Sbapt eval $set_cc_for_build 723234949Sbapt sed 's/^ //' << EOF >$dummy.c 724234949Sbapt #include <unistd.h> 725234949Sbapt int 726234949Sbapt main () 727234949Sbapt { 728234949Sbapt long cpu = sysconf (_SC_CPU_VERSION); 729234949Sbapt /* The order matters, because CPU_IS_HP_MC68K erroneously returns 730234949Sbapt true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 731234949Sbapt results, however. */ 732234949Sbapt if (CPU_IS_PA_RISC (cpu)) 733234949Sbapt { 734234949Sbapt switch (cpu) 735234949Sbapt { 736234949Sbapt case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 737234949Sbapt case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 738234949Sbapt case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 739234949Sbapt default: puts ("hppa-hitachi-hiuxwe2"); break; 740234949Sbapt } 741234949Sbapt } 742234949Sbapt else if (CPU_IS_HP_MC68K (cpu)) 743234949Sbapt puts ("m68k-hitachi-hiuxwe2"); 744234949Sbapt else puts ("unknown-hitachi-hiuxwe2"); 745234949Sbapt exit (0); 746234949Sbapt } 747234949SbaptEOF 748234949Sbapt $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 749234949Sbapt { echo "$SYSTEM_NAME"; exit; } 750234949Sbapt echo unknown-hitachi-hiuxwe2 751234949Sbapt exit ;; 752234949Sbapt 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 753234949Sbapt echo hppa1.1-hp-bsd 754234949Sbapt exit ;; 755234949Sbapt 9000/8??:4.3bsd:*:*) 756234949Sbapt echo hppa1.0-hp-bsd 757234949Sbapt exit ;; 758234949Sbapt *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 759234949Sbapt echo hppa1.0-hp-mpeix 760234949Sbapt exit ;; 761234949Sbapt hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 762234949Sbapt echo hppa1.1-hp-osf 763234949Sbapt exit ;; 764234949Sbapt hp8??:OSF1:*:*) 765234949Sbapt echo hppa1.0-hp-osf 766234949Sbapt exit ;; 767234949Sbapt i*86:OSF1:*:*) 768234949Sbapt if [ -x /usr/sbin/sysversion ] ; then 769234949Sbapt echo ${UNAME_MACHINE}-unknown-osf1mk 770234949Sbapt else 771234949Sbapt echo ${UNAME_MACHINE}-unknown-osf1 772234949Sbapt fi 773234949Sbapt exit ;; 774234949Sbapt parisc*:Lites*:*:*) 775234949Sbapt echo hppa1.1-hp-lites 776234949Sbapt exit ;; 777234949Sbapt C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 778234949Sbapt echo c1-convex-bsd 779234949Sbapt exit ;; 780234949Sbapt C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 781234949Sbapt if getsysinfo -f scalar_acc 782234949Sbapt then echo c32-convex-bsd 783234949Sbapt else echo c2-convex-bsd 784234949Sbapt fi 785234949Sbapt exit ;; 786234949Sbapt C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 787234949Sbapt echo c34-convex-bsd 788234949Sbapt exit ;; 789234949Sbapt C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 790234949Sbapt echo c38-convex-bsd 791234949Sbapt exit ;; 792234949Sbapt C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 793234949Sbapt echo c4-convex-bsd 794234949Sbapt exit ;; 795234949Sbapt CRAY*Y-MP:*:*:*) 796234949Sbapt echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 797234949Sbapt exit ;; 798234949Sbapt CRAY*[A-Z]90:*:*:*) 799234949Sbapt echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 800234949Sbapt | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 801234949Sbapt -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 802234949Sbapt -e 's/\.[^.]*$/.X/' 803234949Sbapt exit ;; 804234949Sbapt CRAY*TS:*:*:*) 805234949Sbapt echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 806234949Sbapt exit ;; 807234949Sbapt CRAY*T3E:*:*:*) 808234949Sbapt echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 809234949Sbapt exit ;; 810234949Sbapt CRAY*SV1:*:*:*) 811234949Sbapt echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 812234949Sbapt exit ;; 813234949Sbapt *:UNICOS/mp:*:*) 814234949Sbapt echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 815234949Sbapt exit ;; 816234949Sbapt F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 817319297Sdelphij FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` 818319297Sdelphij FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` 819234949Sbapt FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 820234949Sbapt echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 821234949Sbapt exit ;; 822234949Sbapt 5000:UNIX_System_V:4.*:*) 823319297Sdelphij FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` 824319297Sdelphij FUJITSU_REL=`echo ${UNAME_RELEASE} | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'` 825234949Sbapt echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 826234949Sbapt exit ;; 827234949Sbapt i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 828234949Sbapt echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 829234949Sbapt exit ;; 830234949Sbapt sparc*:BSD/OS:*:*) 831234949Sbapt echo sparc-unknown-bsdi${UNAME_RELEASE} 832234949Sbapt exit ;; 833234949Sbapt *:BSD/OS:*:*) 834234949Sbapt echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 835234949Sbapt exit ;; 836234949Sbapt *:FreeBSD:*:*) 837251143Sbapt UNAME_PROCESSOR=`/usr/bin/uname -p` 838251143Sbapt case ${UNAME_PROCESSOR} in 839234949Sbapt amd64) 840234949Sbapt echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 841234949Sbapt *) 842251143Sbapt echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 843234949Sbapt esac 844234949Sbapt exit ;; 845234949Sbapt i*:CYGWIN*:*) 846234949Sbapt echo ${UNAME_MACHINE}-pc-cygwin 847234949Sbapt exit ;; 848251143Sbapt *:MINGW64*:*) 849251143Sbapt echo ${UNAME_MACHINE}-pc-mingw64 850251143Sbapt exit ;; 851234949Sbapt *:MINGW*:*) 852234949Sbapt echo ${UNAME_MACHINE}-pc-mingw32 853234949Sbapt exit ;; 854266639Sbapt *:MSYS*:*) 855251143Sbapt echo ${UNAME_MACHINE}-pc-msys 856251143Sbapt exit ;; 857234949Sbapt i*:windows32*:*) 858234949Sbapt # uname -m includes "-pc" on this system. 859234949Sbapt echo ${UNAME_MACHINE}-mingw32 860234949Sbapt exit ;; 861234949Sbapt i*:PW*:*) 862234949Sbapt echo ${UNAME_MACHINE}-pc-pw32 863234949Sbapt exit ;; 864234949Sbapt *:Interix*:*) 865234949Sbapt case ${UNAME_MACHINE} in 866234949Sbapt x86) 867234949Sbapt echo i586-pc-interix${UNAME_RELEASE} 868234949Sbapt exit ;; 869234949Sbapt authenticamd | genuineintel | EM64T) 870234949Sbapt echo x86_64-unknown-interix${UNAME_RELEASE} 871234949Sbapt exit ;; 872234949Sbapt IA64) 873234949Sbapt echo ia64-unknown-interix${UNAME_RELEASE} 874234949Sbapt exit ;; 875234949Sbapt esac ;; 876234949Sbapt [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 877234949Sbapt echo i${UNAME_MACHINE}-pc-mks 878234949Sbapt exit ;; 879234949Sbapt 8664:Windows_NT:*) 880234949Sbapt echo x86_64-pc-mks 881234949Sbapt exit ;; 882234949Sbapt i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 883234949Sbapt # How do we know it's Interix rather than the generic POSIX subsystem? 884234949Sbapt # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 885234949Sbapt # UNAME_MACHINE based on the output of uname instead of i386? 886234949Sbapt echo i586-pc-interix 887234949Sbapt exit ;; 888234949Sbapt i*:UWIN*:*) 889234949Sbapt echo ${UNAME_MACHINE}-pc-uwin 890234949Sbapt exit ;; 891234949Sbapt amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 892234949Sbapt echo x86_64-unknown-cygwin 893234949Sbapt exit ;; 894234949Sbapt p*:CYGWIN*:*) 895234949Sbapt echo powerpcle-unknown-cygwin 896234949Sbapt exit ;; 897234949Sbapt prep*:SunOS:5.*:*) 898234949Sbapt echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 899234949Sbapt exit ;; 900234949Sbapt *:GNU:*:*) 901234949Sbapt # the GNU system 902257315Sbapt echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 903234949Sbapt exit ;; 904234949Sbapt *:GNU/*:*:*) 905234949Sbapt # other systems with GNU libc and userland 906319297Sdelphij echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC} 907234949Sbapt exit ;; 908234949Sbapt i*86:Minix:*:*) 909234949Sbapt echo ${UNAME_MACHINE}-pc-minix 910234949Sbapt exit ;; 911251143Sbapt aarch64:Linux:*:*) 912257315Sbapt echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 913251143Sbapt exit ;; 914251143Sbapt aarch64_be:Linux:*:*) 915251143Sbapt UNAME_MACHINE=aarch64_be 916257315Sbapt echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 917251143Sbapt exit ;; 918234949Sbapt alpha:Linux:*:*) 919234949Sbapt case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 920251143Sbapt EV5) UNAME_MACHINE=alphaev5 ;; 921251143Sbapt EV56) UNAME_MACHINE=alphaev56 ;; 922251143Sbapt PCA56) UNAME_MACHINE=alphapca56 ;; 923251143Sbapt PCA57) UNAME_MACHINE=alphapca56 ;; 924251143Sbapt EV6) UNAME_MACHINE=alphaev6 ;; 925251143Sbapt EV67) UNAME_MACHINE=alphaev67 ;; 926251143Sbapt EV68*) UNAME_MACHINE=alphaev68 ;; 927234949Sbapt esac 928234949Sbapt objdump --private-headers /bin/sh | grep -q ld.so.1 929319297Sdelphij if test "$?" = 0 ; then LIBC=gnulibc1 ; fi 930257315Sbapt echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 931234949Sbapt exit ;; 932257315Sbapt arc:Linux:*:* | arceb:Linux:*:*) 933257315Sbapt echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 934257315Sbapt exit ;; 935234949Sbapt arm*:Linux:*:*) 936234949Sbapt eval $set_cc_for_build 937251143Sbapt if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ 938251143Sbapt | grep -q __ARM_EABI__ 939234949Sbapt then 940257315Sbapt echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 941234949Sbapt else 942251143Sbapt if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ 943251143Sbapt | grep -q __ARM_PCS_VFP 944251143Sbapt then 945257315Sbapt echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi 946251143Sbapt else 947257315Sbapt echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf 948251143Sbapt fi 949234949Sbapt fi 950234949Sbapt exit ;; 951234949Sbapt avr32*:Linux:*:*) 952257315Sbapt echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 953234949Sbapt exit ;; 954234949Sbapt cris:Linux:*:*) 955257315Sbapt echo ${UNAME_MACHINE}-axis-linux-${LIBC} 956234949Sbapt exit ;; 957234949Sbapt crisv32:Linux:*:*) 958257315Sbapt echo ${UNAME_MACHINE}-axis-linux-${LIBC} 959234949Sbapt exit ;; 960296240Sjkim e2k:Linux:*:*) 961296240Sjkim echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 962296240Sjkim exit ;; 963234949Sbapt frv:Linux:*:*) 964257315Sbapt echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 965234949Sbapt exit ;; 966251143Sbapt hexagon:Linux:*:*) 967257315Sbapt echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 968251143Sbapt exit ;; 969234949Sbapt i*86:Linux:*:*) 970257315Sbapt echo ${UNAME_MACHINE}-pc-linux-${LIBC} 971234949Sbapt exit ;; 972234949Sbapt ia64:Linux:*:*) 973257315Sbapt echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 974234949Sbapt exit ;; 975297276Sjkim k1om:Linux:*:*) 976297276Sjkim echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 977297276Sjkim exit ;; 978234949Sbapt m32r*:Linux:*:*) 979257315Sbapt echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 980234949Sbapt exit ;; 981234949Sbapt m68*:Linux:*:*) 982257315Sbapt echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 983234949Sbapt exit ;; 984234949Sbapt mips:Linux:*:* | mips64:Linux:*:*) 985234949Sbapt eval $set_cc_for_build 986234949Sbapt sed 's/^ //' << EOF >$dummy.c 987234949Sbapt #undef CPU 988234949Sbapt #undef ${UNAME_MACHINE} 989234949Sbapt #undef ${UNAME_MACHINE}el 990234949Sbapt #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 991234949Sbapt CPU=${UNAME_MACHINE}el 992234949Sbapt #else 993234949Sbapt #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 994234949Sbapt CPU=${UNAME_MACHINE} 995234949Sbapt #else 996234949Sbapt CPU= 997234949Sbapt #endif 998234949Sbapt #endif 999234949SbaptEOF 1000234949Sbapt eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` 1001257315Sbapt test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; } 1002234949Sbapt ;; 1003319297Sdelphij mips64el:Linux:*:*) 1004319297Sdelphij echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 1005319297Sdelphij exit ;; 1006266639Sbapt openrisc*:Linux:*:*) 1007266639Sbapt echo or1k-unknown-linux-${LIBC} 1008257315Sbapt exit ;; 1009266639Sbapt or32:Linux:*:* | or1k*:Linux:*:*) 1010257315Sbapt echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 1011234949Sbapt exit ;; 1012234949Sbapt padre:Linux:*:*) 1013257315Sbapt echo sparc-unknown-linux-${LIBC} 1014234949Sbapt exit ;; 1015234949Sbapt parisc64:Linux:*:* | hppa64:Linux:*:*) 1016257315Sbapt echo hppa64-unknown-linux-${LIBC} 1017234949Sbapt exit ;; 1018234949Sbapt parisc:Linux:*:* | hppa:Linux:*:*) 1019234949Sbapt # Look for CPU level 1020234949Sbapt case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 1021257315Sbapt PA7*) echo hppa1.1-unknown-linux-${LIBC} ;; 1022257315Sbapt PA8*) echo hppa2.0-unknown-linux-${LIBC} ;; 1023257315Sbapt *) echo hppa-unknown-linux-${LIBC} ;; 1024234949Sbapt esac 1025234949Sbapt exit ;; 1026234949Sbapt ppc64:Linux:*:*) 1027257315Sbapt echo powerpc64-unknown-linux-${LIBC} 1028234949Sbapt exit ;; 1029234949Sbapt ppc:Linux:*:*) 1030257315Sbapt echo powerpc-unknown-linux-${LIBC} 1031234949Sbapt exit ;; 1032257315Sbapt ppc64le:Linux:*:*) 1033257315Sbapt echo powerpc64le-unknown-linux-${LIBC} 1034257315Sbapt exit ;; 1035257315Sbapt ppcle:Linux:*:*) 1036257315Sbapt echo powerpcle-unknown-linux-${LIBC} 1037257315Sbapt exit ;; 1038319297Sdelphij riscv32:Linux:*:* | riscv64:Linux:*:*) 1039319297Sdelphij echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 1040319297Sdelphij exit ;; 1041234949Sbapt s390:Linux:*:* | s390x:Linux:*:*) 1042257315Sbapt echo ${UNAME_MACHINE}-ibm-linux-${LIBC} 1043234949Sbapt exit ;; 1044234949Sbapt sh64*:Linux:*:*) 1045257315Sbapt echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 1046234949Sbapt exit ;; 1047234949Sbapt sh*:Linux:*:*) 1048257315Sbapt echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 1049234949Sbapt exit ;; 1050234949Sbapt sparc:Linux:*:* | sparc64:Linux:*:*) 1051257315Sbapt echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 1052234949Sbapt exit ;; 1053234949Sbapt tile*:Linux:*:*) 1054257315Sbapt echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 1055234949Sbapt exit ;; 1056234949Sbapt vax:Linux:*:*) 1057257315Sbapt echo ${UNAME_MACHINE}-dec-linux-${LIBC} 1058234949Sbapt exit ;; 1059234949Sbapt x86_64:Linux:*:*) 1060297276Sjkim echo ${UNAME_MACHINE}-pc-linux-${LIBC} 1061234949Sbapt exit ;; 1062234949Sbapt xtensa*:Linux:*:*) 1063257315Sbapt echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 1064234949Sbapt exit ;; 1065234949Sbapt i*86:DYNIX/ptx:4*:*) 1066234949Sbapt # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 1067234949Sbapt # earlier versions are messed up and put the nodename in both 1068234949Sbapt # sysname and nodename. 1069234949Sbapt echo i386-sequent-sysv4 1070234949Sbapt exit ;; 1071234949Sbapt i*86:UNIX_SV:4.2MP:2.*) 1072234949Sbapt # Unixware is an offshoot of SVR4, but it has its own version 1073234949Sbapt # number series starting with 2... 1074234949Sbapt # I am not positive that other SVR4 systems won't match this, 1075234949Sbapt # I just have to hope. -- rms. 1076234949Sbapt # Use sysv4.2uw... so that sysv4* matches it. 1077234949Sbapt echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 1078234949Sbapt exit ;; 1079234949Sbapt i*86:OS/2:*:*) 1080234949Sbapt # If we were able to find `uname', then EMX Unix compatibility 1081234949Sbapt # is probably installed. 1082234949Sbapt echo ${UNAME_MACHINE}-pc-os2-emx 1083234949Sbapt exit ;; 1084234949Sbapt i*86:XTS-300:*:STOP) 1085234949Sbapt echo ${UNAME_MACHINE}-unknown-stop 1086234949Sbapt exit ;; 1087234949Sbapt i*86:atheos:*:*) 1088234949Sbapt echo ${UNAME_MACHINE}-unknown-atheos 1089234949Sbapt exit ;; 1090234949Sbapt i*86:syllable:*:*) 1091234949Sbapt echo ${UNAME_MACHINE}-pc-syllable 1092234949Sbapt exit ;; 1093234949Sbapt i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) 1094234949Sbapt echo i386-unknown-lynxos${UNAME_RELEASE} 1095234949Sbapt exit ;; 1096234949Sbapt i*86:*DOS:*:*) 1097234949Sbapt echo ${UNAME_MACHINE}-pc-msdosdjgpp 1098234949Sbapt exit ;; 1099234949Sbapt i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 1100234949Sbapt UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 1101234949Sbapt if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 1102234949Sbapt echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 1103234949Sbapt else 1104234949Sbapt echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 1105234949Sbapt fi 1106234949Sbapt exit ;; 1107234949Sbapt i*86:*:5:[678]*) 1108234949Sbapt # UnixWare 7.x, OpenUNIX and OpenServer 6. 1109234949Sbapt case `/bin/uname -X | grep "^Machine"` in 1110234949Sbapt *486*) UNAME_MACHINE=i486 ;; 1111234949Sbapt *Pentium) UNAME_MACHINE=i586 ;; 1112234949Sbapt *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 1113234949Sbapt esac 1114234949Sbapt echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 1115234949Sbapt exit ;; 1116234949Sbapt i*86:*:3.2:*) 1117234949Sbapt if test -f /usr/options/cb.name; then 1118234949Sbapt UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 1119234949Sbapt echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 1120234949Sbapt elif /bin/uname -X 2>/dev/null >/dev/null ; then 1121234949Sbapt UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 1122234949Sbapt (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 1123234949Sbapt (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 1124234949Sbapt && UNAME_MACHINE=i586 1125234949Sbapt (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 1126234949Sbapt && UNAME_MACHINE=i686 1127234949Sbapt (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 1128234949Sbapt && UNAME_MACHINE=i686 1129234949Sbapt echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 1130234949Sbapt else 1131234949Sbapt echo ${UNAME_MACHINE}-pc-sysv32 1132234949Sbapt fi 1133234949Sbapt exit ;; 1134234949Sbapt pc:*:*:*) 1135234949Sbapt # Left here for compatibility: 1136234949Sbapt # uname -m prints for DJGPP always 'pc', but it prints nothing about 1137234949Sbapt # the processor, so we play safe by assuming i586. 1138234949Sbapt # Note: whatever this is, it MUST be the same as what config.sub 1139297276Sjkim # prints for the "djgpp" host, or else GDB configure will decide that 1140234949Sbapt # this is a cross-build. 1141234949Sbapt echo i586-pc-msdosdjgpp 1142234949Sbapt exit ;; 1143234949Sbapt Intel:Mach:3*:*) 1144234949Sbapt echo i386-pc-mach3 1145234949Sbapt exit ;; 1146234949Sbapt paragon:*:*:*) 1147234949Sbapt echo i860-intel-osf1 1148234949Sbapt exit ;; 1149234949Sbapt i860:*:4.*:*) # i860-SVR4 1150234949Sbapt if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 1151234949Sbapt echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 1152234949Sbapt else # Add other i860-SVR4 vendors below as they are discovered. 1153234949Sbapt echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 1154234949Sbapt fi 1155234949Sbapt exit ;; 1156234949Sbapt mini*:CTIX:SYS*5:*) 1157234949Sbapt # "miniframe" 1158234949Sbapt echo m68010-convergent-sysv 1159234949Sbapt exit ;; 1160234949Sbapt mc68k:UNIX:SYSTEM5:3.51m) 1161234949Sbapt echo m68k-convergent-sysv 1162234949Sbapt exit ;; 1163234949Sbapt M680?0:D-NIX:5.3:*) 1164234949Sbapt echo m68k-diab-dnix 1165234949Sbapt exit ;; 1166234949Sbapt M68*:*:R3V[5678]*:*) 1167234949Sbapt test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 1168234949Sbapt 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) 1169234949Sbapt OS_REL='' 1170234949Sbapt test -r /etc/.relid \ 1171234949Sbapt && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1172234949Sbapt /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1173234949Sbapt && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 1174234949Sbapt /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1175234949Sbapt && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1176234949Sbapt 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 1177234949Sbapt /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1178251143Sbapt && { echo i486-ncr-sysv4; exit; } ;; 1179234949Sbapt NCR*:*:4.2:* | MPRAS*:*:4.2:*) 1180234949Sbapt OS_REL='.3' 1181234949Sbapt test -r /etc/.relid \ 1182234949Sbapt && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1183234949Sbapt /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1184234949Sbapt && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 1185234949Sbapt /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1186234949Sbapt && { echo i586-ncr-sysv4.3${OS_REL}; exit; } 1187234949Sbapt /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ 1188234949Sbapt && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1189234949Sbapt m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 1190234949Sbapt echo m68k-unknown-lynxos${UNAME_RELEASE} 1191234949Sbapt exit ;; 1192234949Sbapt mc68030:UNIX_System_V:4.*:*) 1193234949Sbapt echo m68k-atari-sysv4 1194234949Sbapt exit ;; 1195234949Sbapt TSUNAMI:LynxOS:2.*:*) 1196234949Sbapt echo sparc-unknown-lynxos${UNAME_RELEASE} 1197234949Sbapt exit ;; 1198234949Sbapt rs6000:LynxOS:2.*:*) 1199234949Sbapt echo rs6000-unknown-lynxos${UNAME_RELEASE} 1200234949Sbapt exit ;; 1201234949Sbapt PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) 1202234949Sbapt echo powerpc-unknown-lynxos${UNAME_RELEASE} 1203234949Sbapt exit ;; 1204234949Sbapt SM[BE]S:UNIX_SV:*:*) 1205234949Sbapt echo mips-dde-sysv${UNAME_RELEASE} 1206234949Sbapt exit ;; 1207234949Sbapt RM*:ReliantUNIX-*:*:*) 1208234949Sbapt echo mips-sni-sysv4 1209234949Sbapt exit ;; 1210234949Sbapt RM*:SINIX-*:*:*) 1211234949Sbapt echo mips-sni-sysv4 1212234949Sbapt exit ;; 1213234949Sbapt *:SINIX-*:*:*) 1214234949Sbapt if uname -p 2>/dev/null >/dev/null ; then 1215234949Sbapt UNAME_MACHINE=`(uname -p) 2>/dev/null` 1216234949Sbapt echo ${UNAME_MACHINE}-sni-sysv4 1217234949Sbapt else 1218234949Sbapt echo ns32k-sni-sysv 1219234949Sbapt fi 1220234949Sbapt exit ;; 1221251143Sbapt PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 1222251143Sbapt # says <Richard.M.Bartel@ccMail.Census.GOV> 1223234949Sbapt echo i586-unisys-sysv4 1224234949Sbapt exit ;; 1225234949Sbapt *:UNIX_System_V:4*:FTX*) 1226234949Sbapt # From Gerald Hewes <hewes@openmarket.com>. 1227234949Sbapt # How about differentiating between stratus architectures? -djm 1228234949Sbapt echo hppa1.1-stratus-sysv4 1229234949Sbapt exit ;; 1230234949Sbapt *:*:*:FTX*) 1231234949Sbapt # From seanf@swdc.stratus.com. 1232234949Sbapt echo i860-stratus-sysv4 1233234949Sbapt exit ;; 1234234949Sbapt i*86:VOS:*:*) 1235234949Sbapt # From Paul.Green@stratus.com. 1236234949Sbapt echo ${UNAME_MACHINE}-stratus-vos 1237234949Sbapt exit ;; 1238234949Sbapt *:VOS:*:*) 1239234949Sbapt # From Paul.Green@stratus.com. 1240234949Sbapt echo hppa1.1-stratus-vos 1241234949Sbapt exit ;; 1242234949Sbapt mc68*:A/UX:*:*) 1243234949Sbapt echo m68k-apple-aux${UNAME_RELEASE} 1244234949Sbapt exit ;; 1245234949Sbapt news*:NEWS-OS:6*:*) 1246234949Sbapt echo mips-sony-newsos6 1247234949Sbapt exit ;; 1248234949Sbapt R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 1249234949Sbapt if [ -d /usr/nec ]; then 1250251143Sbapt echo mips-nec-sysv${UNAME_RELEASE} 1251234949Sbapt else 1252251143Sbapt echo mips-unknown-sysv${UNAME_RELEASE} 1253234949Sbapt fi 1254234949Sbapt exit ;; 1255234949Sbapt BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 1256234949Sbapt echo powerpc-be-beos 1257234949Sbapt exit ;; 1258234949Sbapt BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 1259234949Sbapt echo powerpc-apple-beos 1260234949Sbapt exit ;; 1261234949Sbapt BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 1262234949Sbapt echo i586-pc-beos 1263234949Sbapt exit ;; 1264234949Sbapt BePC:Haiku:*:*) # Haiku running on Intel PC compatible. 1265234949Sbapt echo i586-pc-haiku 1266234949Sbapt exit ;; 1267251143Sbapt x86_64:Haiku:*:*) 1268251143Sbapt echo x86_64-unknown-haiku 1269251143Sbapt exit ;; 1270234949Sbapt SX-4:SUPER-UX:*:*) 1271234949Sbapt echo sx4-nec-superux${UNAME_RELEASE} 1272234949Sbapt exit ;; 1273234949Sbapt SX-5:SUPER-UX:*:*) 1274234949Sbapt echo sx5-nec-superux${UNAME_RELEASE} 1275234949Sbapt exit ;; 1276234949Sbapt SX-6:SUPER-UX:*:*) 1277234949Sbapt echo sx6-nec-superux${UNAME_RELEASE} 1278234949Sbapt exit ;; 1279234949Sbapt SX-7:SUPER-UX:*:*) 1280234949Sbapt echo sx7-nec-superux${UNAME_RELEASE} 1281234949Sbapt exit ;; 1282234949Sbapt SX-8:SUPER-UX:*:*) 1283234949Sbapt echo sx8-nec-superux${UNAME_RELEASE} 1284234949Sbapt exit ;; 1285234949Sbapt SX-8R:SUPER-UX:*:*) 1286234949Sbapt echo sx8r-nec-superux${UNAME_RELEASE} 1287234949Sbapt exit ;; 1288319297Sdelphij SX-ACE:SUPER-UX:*:*) 1289319297Sdelphij echo sxace-nec-superux${UNAME_RELEASE} 1290319297Sdelphij exit ;; 1291234949Sbapt Power*:Rhapsody:*:*) 1292234949Sbapt echo powerpc-apple-rhapsody${UNAME_RELEASE} 1293234949Sbapt exit ;; 1294234949Sbapt *:Rhapsody:*:*) 1295234949Sbapt echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 1296234949Sbapt exit ;; 1297234949Sbapt *:Darwin:*:*) 1298234949Sbapt UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 1299257315Sbapt eval $set_cc_for_build 1300257315Sbapt if test "$UNAME_PROCESSOR" = unknown ; then 1301257315Sbapt UNAME_PROCESSOR=powerpc 1302257315Sbapt fi 1303260445Sbapt if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then 1304319297Sdelphij if [ "$CC_FOR_BUILD" != no_compiler_found ]; then 1305260445Sbapt if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ 1306319297Sdelphij (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ 1307260445Sbapt grep IS_64BIT_ARCH >/dev/null 1308260445Sbapt then 1309260445Sbapt case $UNAME_PROCESSOR in 1310260445Sbapt i386) UNAME_PROCESSOR=x86_64 ;; 1311260445Sbapt powerpc) UNAME_PROCESSOR=powerpc64 ;; 1312260445Sbapt esac 1313260445Sbapt fi 1314257315Sbapt fi 1315260445Sbapt elif test "$UNAME_PROCESSOR" = i386 ; then 1316260445Sbapt # Avoid executing cc on OS X 10.9, as it ships with a stub 1317260445Sbapt # that puts up a graphical alert prompting to install 1318260445Sbapt # developer tools. Any system running Mac OS X 10.7 or 1319260445Sbapt # later (Darwin 11 and later) is required to have a 64-bit 1320260445Sbapt # processor. This is not true of the ARM version of Darwin 1321260445Sbapt # that Apple uses in portable devices. 1322260445Sbapt UNAME_PROCESSOR=x86_64 1323257315Sbapt fi 1324234949Sbapt echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 1325234949Sbapt exit ;; 1326234949Sbapt *:procnto*:*:* | *:QNX:[0123456789]*:*) 1327234949Sbapt UNAME_PROCESSOR=`uname -p` 1328319297Sdelphij if test "$UNAME_PROCESSOR" = x86; then 1329251143Sbapt UNAME_PROCESSOR=i386 1330251143Sbapt UNAME_MACHINE=pc 1331234949Sbapt fi 1332234949Sbapt echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 1333234949Sbapt exit ;; 1334234949Sbapt *:QNX:*:4*) 1335234949Sbapt echo i386-pc-qnx 1336234949Sbapt exit ;; 1337234949Sbapt NEO-?:NONSTOP_KERNEL:*:*) 1338234949Sbapt echo neo-tandem-nsk${UNAME_RELEASE} 1339234949Sbapt exit ;; 1340251143Sbapt NSE-*:NONSTOP_KERNEL:*:*) 1341234949Sbapt echo nse-tandem-nsk${UNAME_RELEASE} 1342234949Sbapt exit ;; 1343234949Sbapt NSR-?:NONSTOP_KERNEL:*:*) 1344234949Sbapt echo nsr-tandem-nsk${UNAME_RELEASE} 1345234949Sbapt exit ;; 1346234949Sbapt *:NonStop-UX:*:*) 1347234949Sbapt echo mips-compaq-nonstopux 1348234949Sbapt exit ;; 1349234949Sbapt BS2000:POSIX*:*:*) 1350234949Sbapt echo bs2000-siemens-sysv 1351234949Sbapt exit ;; 1352234949Sbapt DS/*:UNIX_System_V:*:*) 1353234949Sbapt echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 1354234949Sbapt exit ;; 1355234949Sbapt *:Plan9:*:*) 1356234949Sbapt # "uname -m" is not consistent, so use $cputype instead. 386 1357234949Sbapt # is converted to i386 for consistency with other x86 1358234949Sbapt # operating systems. 1359319297Sdelphij if test "$cputype" = 386; then 1360234949Sbapt UNAME_MACHINE=i386 1361234949Sbapt else 1362234949Sbapt UNAME_MACHINE="$cputype" 1363234949Sbapt fi 1364234949Sbapt echo ${UNAME_MACHINE}-unknown-plan9 1365234949Sbapt exit ;; 1366234949Sbapt *:TOPS-10:*:*) 1367234949Sbapt echo pdp10-unknown-tops10 1368234949Sbapt exit ;; 1369234949Sbapt *:TENEX:*:*) 1370234949Sbapt echo pdp10-unknown-tenex 1371234949Sbapt exit ;; 1372234949Sbapt KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 1373234949Sbapt echo pdp10-dec-tops20 1374234949Sbapt exit ;; 1375234949Sbapt XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 1376234949Sbapt echo pdp10-xkl-tops20 1377234949Sbapt exit ;; 1378234949Sbapt *:TOPS-20:*:*) 1379234949Sbapt echo pdp10-unknown-tops20 1380234949Sbapt exit ;; 1381234949Sbapt *:ITS:*:*) 1382234949Sbapt echo pdp10-unknown-its 1383234949Sbapt exit ;; 1384234949Sbapt SEI:*:*:SEIUX) 1385234949Sbapt echo mips-sei-seiux${UNAME_RELEASE} 1386234949Sbapt exit ;; 1387234949Sbapt *:DragonFly:*:*) 1388234949Sbapt echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 1389234949Sbapt exit ;; 1390234949Sbapt *:*VMS:*:*) 1391234949Sbapt UNAME_MACHINE=`(uname -p) 2>/dev/null` 1392234949Sbapt case "${UNAME_MACHINE}" in 1393234949Sbapt A*) echo alpha-dec-vms ; exit ;; 1394234949Sbapt I*) echo ia64-dec-vms ; exit ;; 1395234949Sbapt V*) echo vax-dec-vms ; exit ;; 1396234949Sbapt esac ;; 1397234949Sbapt *:XENIX:*:SysV) 1398234949Sbapt echo i386-pc-xenix 1399234949Sbapt exit ;; 1400234949Sbapt i*86:skyos:*:*) 1401319297Sdelphij echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE} | sed -e 's/ .*$//'` 1402234949Sbapt exit ;; 1403234949Sbapt i*86:rdos:*:*) 1404234949Sbapt echo ${UNAME_MACHINE}-pc-rdos 1405234949Sbapt exit ;; 1406234949Sbapt i*86:AROS:*:*) 1407234949Sbapt echo ${UNAME_MACHINE}-pc-aros 1408234949Sbapt exit ;; 1409251143Sbapt x86_64:VMkernel:*:*) 1410251143Sbapt echo ${UNAME_MACHINE}-unknown-esx 1411251143Sbapt exit ;; 1412297276Sjkim amd64:Isilon\ OneFS:*:*) 1413297276Sjkim echo x86_64-unknown-onefs 1414297276Sjkim exit ;; 1415234949Sbaptesac 1416234949Sbapt 1417234949Sbaptcat >&2 <<EOF 1418234949Sbapt$0: unable to guess system type 1419234949Sbapt 1420319297SdelphijThis script (version $timestamp), has failed to recognize the 1421319297Sdelphijoperating system you are using. If your script is old, overwrite 1422319297Sdelphijconfig.guess and config.sub with the latest versions from: 1423234949Sbapt 1424297276Sjkim http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess 1425234949Sbaptand 1426297276Sjkim http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub 1427234949Sbapt 1428319297SdelphijIf $0 has already been updated, send the following data and any 1429319297Sdelphijinformation you think might be pertinent to config-patches@gnu.org to 1430319297Sdelphijprovide the necessary information to handle your system. 1431234949Sbapt 1432234949Sbaptconfig.guess timestamp = $timestamp 1433234949Sbapt 1434234949Sbaptuname -m = `(uname -m) 2>/dev/null || echo unknown` 1435234949Sbaptuname -r = `(uname -r) 2>/dev/null || echo unknown` 1436234949Sbaptuname -s = `(uname -s) 2>/dev/null || echo unknown` 1437234949Sbaptuname -v = `(uname -v) 2>/dev/null || echo unknown` 1438234949Sbapt 1439234949Sbapt/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 1440234949Sbapt/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 1441234949Sbapt 1442234949Sbapthostinfo = `(hostinfo) 2>/dev/null` 1443234949Sbapt/bin/universe = `(/bin/universe) 2>/dev/null` 1444234949Sbapt/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 1445234949Sbapt/bin/arch = `(/bin/arch) 2>/dev/null` 1446234949Sbapt/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 1447234949Sbapt/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 1448234949Sbapt 1449234949SbaptUNAME_MACHINE = ${UNAME_MACHINE} 1450234949SbaptUNAME_RELEASE = ${UNAME_RELEASE} 1451234949SbaptUNAME_SYSTEM = ${UNAME_SYSTEM} 1452234949SbaptUNAME_VERSION = ${UNAME_VERSION} 1453234949SbaptEOF 1454234949Sbapt 1455234949Sbaptexit 1 1456234949Sbapt 1457234949Sbapt# Local variables: 1458234949Sbapt# eval: (add-hook 'write-file-hooks 'time-stamp) 1459234949Sbapt# time-stamp-start: "timestamp='" 1460234949Sbapt# time-stamp-format: "%:y-%02m-%02d" 1461234949Sbapt# time-stamp-end: "'" 1462234949Sbapt# End: 1463