1234949Sbapt#! /bin/sh 2234949Sbapt# Attempt to guess a canonical system name. 3251143Sbapt# Copyright 1992-2013 Free Software Foundation, Inc. 4234949Sbapt 5251143Sbapttimestamp='2013-02-04' 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# 27251143Sbapt# Originally written by Per Bothner. 28234949Sbapt# 29234949Sbapt# You can get the latest version of this script from: 30234949Sbapt# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 31251143Sbapt# 32251143Sbapt# Please send patches with a ChangeLog entry 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. 53251143SbaptCopyright 1992-2013 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 135234949Sbapt# Note: order is significant - the case branches are not exclusive. 136234949Sbapt 137234949Sbaptcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 138234949Sbapt *:NetBSD:*:*) 139234949Sbapt # NetBSD (nbsd) targets should (where applicable) match one or 140251143Sbapt # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, 141234949Sbapt # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 142234949Sbapt # switched to ELF, *-*-netbsd* would select the old 143234949Sbapt # object file format. This provides both forward 144234949Sbapt # compatibility and a consistent mechanism for selecting the 145234949Sbapt # object file format. 146234949Sbapt # 147234949Sbapt # Note: NetBSD doesn't particularly care about the vendor 148234949Sbapt # portion of the name. We always set it to "unknown". 149234949Sbapt sysctl="sysctl -n hw.machine_arch" 150234949Sbapt UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ 151234949Sbapt /usr/sbin/$sysctl 2>/dev/null || echo unknown)` 152234949Sbapt case "${UNAME_MACHINE_ARCH}" in 153234949Sbapt armeb) machine=armeb-unknown ;; 154234949Sbapt arm*) machine=arm-unknown ;; 155234949Sbapt sh3el) machine=shl-unknown ;; 156234949Sbapt sh3eb) machine=sh-unknown ;; 157234949Sbapt sh5el) machine=sh5le-unknown ;; 158234949Sbapt *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 159234949Sbapt esac 160234949Sbapt # The Operating System including object format, if it has switched 161234949Sbapt # to ELF recently, or will in the future. 162234949Sbapt case "${UNAME_MACHINE_ARCH}" in 163234949Sbapt arm*|i386|m68k|ns32k|sh3*|sparc|vax) 164234949Sbapt eval $set_cc_for_build 165234949Sbapt if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 166234949Sbapt | grep -q __ELF__ 167234949Sbapt then 168234949Sbapt # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 169234949Sbapt # Return netbsd for either. FIX? 170234949Sbapt os=netbsd 171234949Sbapt else 172234949Sbapt os=netbsdelf 173234949Sbapt fi 174234949Sbapt ;; 175234949Sbapt *) 176234949Sbapt os=netbsd 177234949Sbapt ;; 178234949Sbapt esac 179234949Sbapt # The OS release 180234949Sbapt # Debian GNU/NetBSD machines have a different userland, and 181234949Sbapt # thus, need a distinct triplet. However, they do not need 182234949Sbapt # kernel version information, so it can be replaced with a 183234949Sbapt # suitable tag, in the style of linux-gnu. 184234949Sbapt case "${UNAME_VERSION}" in 185234949Sbapt Debian*) 186234949Sbapt release='-gnu' 187234949Sbapt ;; 188234949Sbapt *) 189234949Sbapt release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` 190234949Sbapt ;; 191234949Sbapt esac 192234949Sbapt # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 193234949Sbapt # contains redundant information, the shorter form: 194234949Sbapt # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 195234949Sbapt echo "${machine}-${os}${release}" 196234949Sbapt exit ;; 197251143Sbapt *:Bitrig:*:*) 198251143Sbapt UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` 199251143Sbapt echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE} 200251143Sbapt exit ;; 201234949Sbapt *:OpenBSD:*:*) 202234949Sbapt UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 203234949Sbapt echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 204234949Sbapt exit ;; 205234949Sbapt *:ekkoBSD:*:*) 206234949Sbapt echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 207234949Sbapt exit ;; 208234949Sbapt *:SolidBSD:*:*) 209234949Sbapt echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} 210234949Sbapt exit ;; 211234949Sbapt macppc:MirBSD:*:*) 212234949Sbapt echo powerpc-unknown-mirbsd${UNAME_RELEASE} 213234949Sbapt exit ;; 214234949Sbapt *:MirBSD:*:*) 215234949Sbapt echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 216234949Sbapt exit ;; 217234949Sbapt alpha:OSF1:*:*) 218234949Sbapt case $UNAME_RELEASE in 219251143Sbapt *4.0) 220234949Sbapt UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 221234949Sbapt ;; 222251143Sbapt *5.*) 223234949Sbapt UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 224234949Sbapt ;; 225234949Sbapt esac 226234949Sbapt # According to Compaq, /usr/sbin/psrinfo has been available on 227234949Sbapt # OSF/1 and Tru64 systems produced since 1995. I hope that 228234949Sbapt # covers most systems running today. This code pipes the CPU 229234949Sbapt # types through head -n 1, so we only detect the type of CPU 0. 230234949Sbapt ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 231234949Sbapt case "$ALPHA_CPU_TYPE" in 232234949Sbapt "EV4 (21064)") 233234949Sbapt UNAME_MACHINE="alpha" ;; 234234949Sbapt "EV4.5 (21064)") 235234949Sbapt UNAME_MACHINE="alpha" ;; 236234949Sbapt "LCA4 (21066/21068)") 237234949Sbapt UNAME_MACHINE="alpha" ;; 238234949Sbapt "EV5 (21164)") 239234949Sbapt UNAME_MACHINE="alphaev5" ;; 240234949Sbapt "EV5.6 (21164A)") 241234949Sbapt UNAME_MACHINE="alphaev56" ;; 242234949Sbapt "EV5.6 (21164PC)") 243234949Sbapt UNAME_MACHINE="alphapca56" ;; 244234949Sbapt "EV5.7 (21164PC)") 245234949Sbapt UNAME_MACHINE="alphapca57" ;; 246234949Sbapt "EV6 (21264)") 247234949Sbapt UNAME_MACHINE="alphaev6" ;; 248234949Sbapt "EV6.7 (21264A)") 249234949Sbapt UNAME_MACHINE="alphaev67" ;; 250234949Sbapt "EV6.8CB (21264C)") 251234949Sbapt UNAME_MACHINE="alphaev68" ;; 252234949Sbapt "EV6.8AL (21264B)") 253234949Sbapt UNAME_MACHINE="alphaev68" ;; 254234949Sbapt "EV6.8CX (21264D)") 255234949Sbapt UNAME_MACHINE="alphaev68" ;; 256234949Sbapt "EV6.9A (21264/EV69A)") 257234949Sbapt UNAME_MACHINE="alphaev69" ;; 258234949Sbapt "EV7 (21364)") 259234949Sbapt UNAME_MACHINE="alphaev7" ;; 260234949Sbapt "EV7.9 (21364A)") 261234949Sbapt UNAME_MACHINE="alphaev79" ;; 262234949Sbapt esac 263234949Sbapt # A Pn.n version is a patched version. 264234949Sbapt # A Vn.n version is a released version. 265234949Sbapt # A Tn.n version is a released field test version. 266234949Sbapt # A Xn.n version is an unreleased experimental baselevel. 267234949Sbapt # 1.2 uses "1.2" for uname -r. 268234949Sbapt echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 269234949Sbapt # Reset EXIT trap before exiting to avoid spurious non-zero exit code. 270234949Sbapt exitcode=$? 271234949Sbapt trap '' 0 272234949Sbapt exit $exitcode ;; 273234949Sbapt Alpha\ *:Windows_NT*:*) 274234949Sbapt # How do we know it's Interix rather than the generic POSIX subsystem? 275234949Sbapt # Should we change UNAME_MACHINE based on the output of uname instead 276234949Sbapt # of the specific Alpha model? 277234949Sbapt echo alpha-pc-interix 278234949Sbapt exit ;; 279234949Sbapt 21064:Windows_NT:50:3) 280234949Sbapt echo alpha-dec-winnt3.5 281234949Sbapt exit ;; 282234949Sbapt Amiga*:UNIX_System_V:4.0:*) 283234949Sbapt echo m68k-unknown-sysv4 284234949Sbapt exit ;; 285234949Sbapt *:[Aa]miga[Oo][Ss]:*:*) 286234949Sbapt echo ${UNAME_MACHINE}-unknown-amigaos 287234949Sbapt exit ;; 288234949Sbapt *:[Mm]orph[Oo][Ss]:*:*) 289234949Sbapt echo ${UNAME_MACHINE}-unknown-morphos 290234949Sbapt exit ;; 291234949Sbapt *:OS/390:*:*) 292234949Sbapt echo i370-ibm-openedition 293234949Sbapt exit ;; 294234949Sbapt *:z/VM:*:*) 295234949Sbapt echo s390-ibm-zvmoe 296234949Sbapt exit ;; 297234949Sbapt *:OS400:*:*) 298234949Sbapt echo powerpc-ibm-os400 299234949Sbapt exit ;; 300234949Sbapt arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 301234949Sbapt echo arm-acorn-riscix${UNAME_RELEASE} 302234949Sbapt exit ;; 303251143Sbapt arm*:riscos:*:*|arm*:RISCOS:*:*) 304234949Sbapt echo arm-unknown-riscos 305234949Sbapt exit ;; 306234949Sbapt SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 307234949Sbapt echo hppa1.1-hitachi-hiuxmpp 308234949Sbapt exit ;; 309234949Sbapt Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 310234949Sbapt # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 311234949Sbapt if test "`(/bin/universe) 2>/dev/null`" = att ; then 312234949Sbapt echo pyramid-pyramid-sysv3 313234949Sbapt else 314234949Sbapt echo pyramid-pyramid-bsd 315234949Sbapt fi 316234949Sbapt exit ;; 317234949Sbapt NILE*:*:*:dcosx) 318234949Sbapt echo pyramid-pyramid-svr4 319234949Sbapt exit ;; 320234949Sbapt DRS?6000:unix:4.0:6*) 321234949Sbapt echo sparc-icl-nx6 322234949Sbapt exit ;; 323234949Sbapt DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 324234949Sbapt case `/usr/bin/uname -p` in 325234949Sbapt sparc) echo sparc-icl-nx7; exit ;; 326234949Sbapt esac ;; 327234949Sbapt s390x:SunOS:*:*) 328234949Sbapt echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 329234949Sbapt exit ;; 330234949Sbapt sun4H:SunOS:5.*:*) 331234949Sbapt echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 332234949Sbapt exit ;; 333234949Sbapt sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 334234949Sbapt echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 335234949Sbapt exit ;; 336234949Sbapt i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) 337234949Sbapt echo i386-pc-auroraux${UNAME_RELEASE} 338234949Sbapt exit ;; 339234949Sbapt i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) 340234949Sbapt eval $set_cc_for_build 341234949Sbapt SUN_ARCH="i386" 342234949Sbapt # If there is a compiler, see if it is configured for 64-bit objects. 343234949Sbapt # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. 344234949Sbapt # This test works for both compilers. 345234949Sbapt if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 346234949Sbapt if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ 347234949Sbapt (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 348234949Sbapt grep IS_64BIT_ARCH >/dev/null 349234949Sbapt then 350234949Sbapt SUN_ARCH="x86_64" 351234949Sbapt fi 352234949Sbapt fi 353234949Sbapt echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 354234949Sbapt exit ;; 355234949Sbapt sun4*:SunOS:6*:*) 356234949Sbapt # According to config.sub, this is the proper way to canonicalize 357234949Sbapt # SunOS6. Hard to guess exactly what SunOS6 will be like, but 358234949Sbapt # it's likely to be more like Solaris than SunOS4. 359234949Sbapt echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 360234949Sbapt exit ;; 361234949Sbapt sun4*:SunOS:*:*) 362234949Sbapt case "`/usr/bin/arch -k`" in 363234949Sbapt Series*|S4*) 364234949Sbapt UNAME_RELEASE=`uname -v` 365234949Sbapt ;; 366234949Sbapt esac 367234949Sbapt # Japanese Language versions have a version number like `4.1.3-JL'. 368234949Sbapt echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 369234949Sbapt exit ;; 370234949Sbapt sun3*:SunOS:*:*) 371234949Sbapt echo m68k-sun-sunos${UNAME_RELEASE} 372234949Sbapt exit ;; 373234949Sbapt sun*:*:4.2BSD:*) 374234949Sbapt UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 375234949Sbapt test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 376234949Sbapt case "`/bin/arch`" in 377234949Sbapt sun3) 378234949Sbapt echo m68k-sun-sunos${UNAME_RELEASE} 379234949Sbapt ;; 380234949Sbapt sun4) 381234949Sbapt echo sparc-sun-sunos${UNAME_RELEASE} 382234949Sbapt ;; 383234949Sbapt esac 384234949Sbapt exit ;; 385234949Sbapt aushp:SunOS:*:*) 386234949Sbapt echo sparc-auspex-sunos${UNAME_RELEASE} 387234949Sbapt exit ;; 388234949Sbapt # The situation for MiNT is a little confusing. The machine name 389234949Sbapt # can be virtually everything (everything which is not 390234949Sbapt # "atarist" or "atariste" at least should have a processor 391234949Sbapt # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 392234949Sbapt # to the lowercase version "mint" (or "freemint"). Finally 393234949Sbapt # the system name "TOS" denotes a system which is actually not 394234949Sbapt # MiNT. But MiNT is downward compatible to TOS, so this should 395234949Sbapt # be no problem. 396234949Sbapt atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 397234949Sbapt echo m68k-atari-mint${UNAME_RELEASE} 398234949Sbapt exit ;; 399234949Sbapt atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 400234949Sbapt echo m68k-atari-mint${UNAME_RELEASE} 401234949Sbapt exit ;; 402234949Sbapt *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 403234949Sbapt echo m68k-atari-mint${UNAME_RELEASE} 404234949Sbapt exit ;; 405234949Sbapt milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 406234949Sbapt echo m68k-milan-mint${UNAME_RELEASE} 407234949Sbapt exit ;; 408234949Sbapt hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 409234949Sbapt echo m68k-hades-mint${UNAME_RELEASE} 410234949Sbapt exit ;; 411234949Sbapt *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 412234949Sbapt echo m68k-unknown-mint${UNAME_RELEASE} 413234949Sbapt exit ;; 414234949Sbapt m68k:machten:*:*) 415234949Sbapt echo m68k-apple-machten${UNAME_RELEASE} 416234949Sbapt exit ;; 417234949Sbapt powerpc:machten:*:*) 418234949Sbapt echo powerpc-apple-machten${UNAME_RELEASE} 419234949Sbapt exit ;; 420234949Sbapt RISC*:Mach:*:*) 421234949Sbapt echo mips-dec-mach_bsd4.3 422234949Sbapt exit ;; 423234949Sbapt RISC*:ULTRIX:*:*) 424234949Sbapt echo mips-dec-ultrix${UNAME_RELEASE} 425234949Sbapt exit ;; 426234949Sbapt VAX*:ULTRIX*:*:*) 427234949Sbapt echo vax-dec-ultrix${UNAME_RELEASE} 428234949Sbapt exit ;; 429234949Sbapt 2020:CLIX:*:* | 2430:CLIX:*:*) 430234949Sbapt echo clipper-intergraph-clix${UNAME_RELEASE} 431234949Sbapt exit ;; 432234949Sbapt mips:*:*:UMIPS | mips:*:*:RISCos) 433234949Sbapt eval $set_cc_for_build 434234949Sbapt sed 's/^ //' << EOF >$dummy.c 435234949Sbapt#ifdef __cplusplus 436234949Sbapt#include <stdio.h> /* for printf() prototype */ 437234949Sbapt int main (int argc, char *argv[]) { 438234949Sbapt#else 439234949Sbapt int main (argc, argv) int argc; char *argv[]; { 440234949Sbapt#endif 441234949Sbapt #if defined (host_mips) && defined (MIPSEB) 442234949Sbapt #if defined (SYSTYPE_SYSV) 443234949Sbapt printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 444234949Sbapt #endif 445234949Sbapt #if defined (SYSTYPE_SVR4) 446234949Sbapt printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 447234949Sbapt #endif 448234949Sbapt #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 449234949Sbapt printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 450234949Sbapt #endif 451234949Sbapt #endif 452234949Sbapt exit (-1); 453234949Sbapt } 454234949SbaptEOF 455234949Sbapt $CC_FOR_BUILD -o $dummy $dummy.c && 456234949Sbapt dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 457234949Sbapt SYSTEM_NAME=`$dummy $dummyarg` && 458234949Sbapt { echo "$SYSTEM_NAME"; exit; } 459234949Sbapt echo mips-mips-riscos${UNAME_RELEASE} 460234949Sbapt exit ;; 461234949Sbapt Motorola:PowerMAX_OS:*:*) 462234949Sbapt echo powerpc-motorola-powermax 463234949Sbapt exit ;; 464234949Sbapt Motorola:*:4.3:PL8-*) 465234949Sbapt echo powerpc-harris-powermax 466234949Sbapt exit ;; 467234949Sbapt Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 468234949Sbapt echo powerpc-harris-powermax 469234949Sbapt exit ;; 470234949Sbapt Night_Hawk:Power_UNIX:*:*) 471234949Sbapt echo powerpc-harris-powerunix 472234949Sbapt exit ;; 473234949Sbapt m88k:CX/UX:7*:*) 474234949Sbapt echo m88k-harris-cxux7 475234949Sbapt exit ;; 476234949Sbapt m88k:*:4*:R4*) 477234949Sbapt echo m88k-motorola-sysv4 478234949Sbapt exit ;; 479234949Sbapt m88k:*:3*:R3*) 480234949Sbapt echo m88k-motorola-sysv3 481234949Sbapt exit ;; 482234949Sbapt AViiON:dgux:*:*) 483234949Sbapt # DG/UX returns AViiON for all architectures 484234949Sbapt UNAME_PROCESSOR=`/usr/bin/uname -p` 485234949Sbapt if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 486234949Sbapt then 487234949Sbapt if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 488234949Sbapt [ ${TARGET_BINARY_INTERFACE}x = x ] 489234949Sbapt then 490234949Sbapt echo m88k-dg-dgux${UNAME_RELEASE} 491234949Sbapt else 492234949Sbapt echo m88k-dg-dguxbcs${UNAME_RELEASE} 493234949Sbapt fi 494234949Sbapt else 495234949Sbapt echo i586-dg-dgux${UNAME_RELEASE} 496234949Sbapt fi 497234949Sbapt exit ;; 498234949Sbapt M88*:DolphinOS:*:*) # DolphinOS (SVR3) 499234949Sbapt echo m88k-dolphin-sysv3 500234949Sbapt exit ;; 501234949Sbapt M88*:*:R3*:*) 502234949Sbapt # Delta 88k system running SVR3 503234949Sbapt echo m88k-motorola-sysv3 504234949Sbapt exit ;; 505234949Sbapt XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 506234949Sbapt echo m88k-tektronix-sysv3 507234949Sbapt exit ;; 508234949Sbapt Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 509234949Sbapt echo m68k-tektronix-bsd 510234949Sbapt exit ;; 511234949Sbapt *:IRIX*:*:*) 512234949Sbapt echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 513234949Sbapt exit ;; 514234949Sbapt ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 515234949Sbapt echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 516234949Sbapt exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 517234949Sbapt i*86:AIX:*:*) 518234949Sbapt echo i386-ibm-aix 519234949Sbapt exit ;; 520234949Sbapt ia64:AIX:*:*) 521234949Sbapt if [ -x /usr/bin/oslevel ] ; then 522234949Sbapt IBM_REV=`/usr/bin/oslevel` 523234949Sbapt else 524234949Sbapt IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 525234949Sbapt fi 526234949Sbapt echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 527234949Sbapt exit ;; 528234949Sbapt *:AIX:2:3) 529234949Sbapt if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 530234949Sbapt eval $set_cc_for_build 531234949Sbapt sed 's/^ //' << EOF >$dummy.c 532234949Sbapt #include <sys/systemcfg.h> 533234949Sbapt 534234949Sbapt main() 535234949Sbapt { 536234949Sbapt if (!__power_pc()) 537234949Sbapt exit(1); 538234949Sbapt puts("powerpc-ibm-aix3.2.5"); 539234949Sbapt exit(0); 540234949Sbapt } 541234949SbaptEOF 542234949Sbapt if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 543234949Sbapt then 544234949Sbapt echo "$SYSTEM_NAME" 545234949Sbapt else 546234949Sbapt echo rs6000-ibm-aix3.2.5 547234949Sbapt fi 548234949Sbapt elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 549234949Sbapt echo rs6000-ibm-aix3.2.4 550234949Sbapt else 551234949Sbapt echo rs6000-ibm-aix3.2 552234949Sbapt fi 553234949Sbapt exit ;; 554234949Sbapt *:AIX:*:[4567]) 555234949Sbapt IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 556234949Sbapt if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 557234949Sbapt IBM_ARCH=rs6000 558234949Sbapt else 559234949Sbapt IBM_ARCH=powerpc 560234949Sbapt fi 561234949Sbapt if [ -x /usr/bin/oslevel ] ; then 562234949Sbapt IBM_REV=`/usr/bin/oslevel` 563234949Sbapt else 564234949Sbapt IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 565234949Sbapt fi 566234949Sbapt echo ${IBM_ARCH}-ibm-aix${IBM_REV} 567234949Sbapt exit ;; 568234949Sbapt *:AIX:*:*) 569234949Sbapt echo rs6000-ibm-aix 570234949Sbapt exit ;; 571234949Sbapt ibmrt:4.4BSD:*|romp-ibm:BSD:*) 572234949Sbapt echo romp-ibm-bsd4.4 573234949Sbapt exit ;; 574234949Sbapt ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 575234949Sbapt echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 576234949Sbapt exit ;; # report: romp-ibm BSD 4.3 577234949Sbapt *:BOSX:*:*) 578234949Sbapt echo rs6000-bull-bosx 579234949Sbapt exit ;; 580234949Sbapt DPX/2?00:B.O.S.:*:*) 581234949Sbapt echo m68k-bull-sysv3 582234949Sbapt exit ;; 583234949Sbapt 9000/[34]??:4.3bsd:1.*:*) 584234949Sbapt echo m68k-hp-bsd 585234949Sbapt exit ;; 586234949Sbapt hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 587234949Sbapt echo m68k-hp-bsd4.4 588234949Sbapt exit ;; 589234949Sbapt 9000/[34678]??:HP-UX:*:*) 590234949Sbapt HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 591234949Sbapt case "${UNAME_MACHINE}" in 592234949Sbapt 9000/31? ) HP_ARCH=m68000 ;; 593234949Sbapt 9000/[34]?? ) HP_ARCH=m68k ;; 594234949Sbapt 9000/[678][0-9][0-9]) 595234949Sbapt if [ -x /usr/bin/getconf ]; then 596234949Sbapt sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 597234949Sbapt sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 598234949Sbapt case "${sc_cpu_version}" in 599251143Sbapt 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 600251143Sbapt 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 601251143Sbapt 532) # CPU_PA_RISC2_0 602251143Sbapt case "${sc_kernel_bits}" in 603251143Sbapt 32) HP_ARCH="hppa2.0n" ;; 604251143Sbapt 64) HP_ARCH="hppa2.0w" ;; 605234949Sbapt '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 606251143Sbapt esac ;; 607251143Sbapt esac 608234949Sbapt fi 609234949Sbapt if [ "${HP_ARCH}" = "" ]; then 610234949Sbapt eval $set_cc_for_build 611251143Sbapt sed 's/^ //' << EOF >$dummy.c 612234949Sbapt 613251143Sbapt #define _HPUX_SOURCE 614251143Sbapt #include <stdlib.h> 615251143Sbapt #include <unistd.h> 616234949Sbapt 617251143Sbapt int main () 618251143Sbapt { 619251143Sbapt #if defined(_SC_KERNEL_BITS) 620251143Sbapt long bits = sysconf(_SC_KERNEL_BITS); 621251143Sbapt #endif 622251143Sbapt long cpu = sysconf (_SC_CPU_VERSION); 623234949Sbapt 624251143Sbapt switch (cpu) 625251143Sbapt { 626251143Sbapt case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 627251143Sbapt case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 628251143Sbapt case CPU_PA_RISC2_0: 629251143Sbapt #if defined(_SC_KERNEL_BITS) 630251143Sbapt switch (bits) 631251143Sbapt { 632251143Sbapt case 64: puts ("hppa2.0w"); break; 633251143Sbapt case 32: puts ("hppa2.0n"); break; 634251143Sbapt default: puts ("hppa2.0"); break; 635251143Sbapt } break; 636251143Sbapt #else /* !defined(_SC_KERNEL_BITS) */ 637251143Sbapt puts ("hppa2.0"); break; 638251143Sbapt #endif 639251143Sbapt default: puts ("hppa1.0"); break; 640251143Sbapt } 641251143Sbapt exit (0); 642251143Sbapt } 643234949SbaptEOF 644234949Sbapt (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 645234949Sbapt test -z "$HP_ARCH" && HP_ARCH=hppa 646234949Sbapt fi ;; 647234949Sbapt esac 648234949Sbapt if [ ${HP_ARCH} = "hppa2.0w" ] 649234949Sbapt then 650234949Sbapt eval $set_cc_for_build 651234949Sbapt 652234949Sbapt # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 653234949Sbapt # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 654234949Sbapt # generating 64-bit code. GNU and HP use different nomenclature: 655234949Sbapt # 656234949Sbapt # $ CC_FOR_BUILD=cc ./config.guess 657234949Sbapt # => hppa2.0w-hp-hpux11.23 658234949Sbapt # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 659234949Sbapt # => hppa64-hp-hpux11.23 660234949Sbapt 661234949Sbapt if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | 662234949Sbapt grep -q __LP64__ 663234949Sbapt then 664234949Sbapt HP_ARCH="hppa2.0w" 665234949Sbapt else 666234949Sbapt HP_ARCH="hppa64" 667234949Sbapt fi 668234949Sbapt fi 669234949Sbapt echo ${HP_ARCH}-hp-hpux${HPUX_REV} 670234949Sbapt exit ;; 671234949Sbapt ia64:HP-UX:*:*) 672234949Sbapt HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 673234949Sbapt echo ia64-hp-hpux${HPUX_REV} 674234949Sbapt exit ;; 675234949Sbapt 3050*:HI-UX:*:*) 676234949Sbapt eval $set_cc_for_build 677234949Sbapt sed 's/^ //' << EOF >$dummy.c 678234949Sbapt #include <unistd.h> 679234949Sbapt int 680234949Sbapt main () 681234949Sbapt { 682234949Sbapt long cpu = sysconf (_SC_CPU_VERSION); 683234949Sbapt /* The order matters, because CPU_IS_HP_MC68K erroneously returns 684234949Sbapt true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 685234949Sbapt results, however. */ 686234949Sbapt if (CPU_IS_PA_RISC (cpu)) 687234949Sbapt { 688234949Sbapt switch (cpu) 689234949Sbapt { 690234949Sbapt case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 691234949Sbapt case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 692234949Sbapt case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 693234949Sbapt default: puts ("hppa-hitachi-hiuxwe2"); break; 694234949Sbapt } 695234949Sbapt } 696234949Sbapt else if (CPU_IS_HP_MC68K (cpu)) 697234949Sbapt puts ("m68k-hitachi-hiuxwe2"); 698234949Sbapt else puts ("unknown-hitachi-hiuxwe2"); 699234949Sbapt exit (0); 700234949Sbapt } 701234949SbaptEOF 702234949Sbapt $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 703234949Sbapt { echo "$SYSTEM_NAME"; exit; } 704234949Sbapt echo unknown-hitachi-hiuxwe2 705234949Sbapt exit ;; 706234949Sbapt 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 707234949Sbapt echo hppa1.1-hp-bsd 708234949Sbapt exit ;; 709234949Sbapt 9000/8??:4.3bsd:*:*) 710234949Sbapt echo hppa1.0-hp-bsd 711234949Sbapt exit ;; 712234949Sbapt *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 713234949Sbapt echo hppa1.0-hp-mpeix 714234949Sbapt exit ;; 715234949Sbapt hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 716234949Sbapt echo hppa1.1-hp-osf 717234949Sbapt exit ;; 718234949Sbapt hp8??:OSF1:*:*) 719234949Sbapt echo hppa1.0-hp-osf 720234949Sbapt exit ;; 721234949Sbapt i*86:OSF1:*:*) 722234949Sbapt if [ -x /usr/sbin/sysversion ] ; then 723234949Sbapt echo ${UNAME_MACHINE}-unknown-osf1mk 724234949Sbapt else 725234949Sbapt echo ${UNAME_MACHINE}-unknown-osf1 726234949Sbapt fi 727234949Sbapt exit ;; 728234949Sbapt parisc*:Lites*:*:*) 729234949Sbapt echo hppa1.1-hp-lites 730234949Sbapt exit ;; 731234949Sbapt C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 732234949Sbapt echo c1-convex-bsd 733234949Sbapt exit ;; 734234949Sbapt C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 735234949Sbapt if getsysinfo -f scalar_acc 736234949Sbapt then echo c32-convex-bsd 737234949Sbapt else echo c2-convex-bsd 738234949Sbapt fi 739234949Sbapt exit ;; 740234949Sbapt C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 741234949Sbapt echo c34-convex-bsd 742234949Sbapt exit ;; 743234949Sbapt C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 744234949Sbapt echo c38-convex-bsd 745234949Sbapt exit ;; 746234949Sbapt C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 747234949Sbapt echo c4-convex-bsd 748234949Sbapt exit ;; 749234949Sbapt CRAY*Y-MP:*:*:*) 750234949Sbapt echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 751234949Sbapt exit ;; 752234949Sbapt CRAY*[A-Z]90:*:*:*) 753234949Sbapt echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 754234949Sbapt | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 755234949Sbapt -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 756234949Sbapt -e 's/\.[^.]*$/.X/' 757234949Sbapt exit ;; 758234949Sbapt CRAY*TS:*:*:*) 759234949Sbapt echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 760234949Sbapt exit ;; 761234949Sbapt CRAY*T3E:*:*:*) 762234949Sbapt echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 763234949Sbapt exit ;; 764234949Sbapt CRAY*SV1:*:*:*) 765234949Sbapt echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 766234949Sbapt exit ;; 767234949Sbapt *:UNICOS/mp:*:*) 768234949Sbapt echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 769234949Sbapt exit ;; 770234949Sbapt F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 771234949Sbapt FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 772234949Sbapt FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 773234949Sbapt FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 774234949Sbapt echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 775234949Sbapt exit ;; 776234949Sbapt 5000:UNIX_System_V:4.*:*) 777234949Sbapt FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 778234949Sbapt FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` 779234949Sbapt echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 780234949Sbapt exit ;; 781234949Sbapt i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 782234949Sbapt echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 783234949Sbapt exit ;; 784234949Sbapt sparc*:BSD/OS:*:*) 785234949Sbapt echo sparc-unknown-bsdi${UNAME_RELEASE} 786234949Sbapt exit ;; 787234949Sbapt *:BSD/OS:*:*) 788234949Sbapt echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 789234949Sbapt exit ;; 790234949Sbapt *:FreeBSD:*:*) 791251143Sbapt UNAME_PROCESSOR=`/usr/bin/uname -p` 792251143Sbapt case ${UNAME_PROCESSOR} in 793234949Sbapt amd64) 794234949Sbapt echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 795234949Sbapt *) 796251143Sbapt echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 797234949Sbapt esac 798234949Sbapt exit ;; 799234949Sbapt i*:CYGWIN*:*) 800234949Sbapt echo ${UNAME_MACHINE}-pc-cygwin 801234949Sbapt exit ;; 802251143Sbapt *:MINGW64*:*) 803251143Sbapt echo ${UNAME_MACHINE}-pc-mingw64 804251143Sbapt exit ;; 805234949Sbapt *:MINGW*:*) 806234949Sbapt echo ${UNAME_MACHINE}-pc-mingw32 807234949Sbapt exit ;; 808251143Sbapt i*:MSYS*:*) 809251143Sbapt echo ${UNAME_MACHINE}-pc-msys 810251143Sbapt exit ;; 811234949Sbapt i*:windows32*:*) 812234949Sbapt # uname -m includes "-pc" on this system. 813234949Sbapt echo ${UNAME_MACHINE}-mingw32 814234949Sbapt exit ;; 815234949Sbapt i*:PW*:*) 816234949Sbapt echo ${UNAME_MACHINE}-pc-pw32 817234949Sbapt exit ;; 818234949Sbapt *:Interix*:*) 819234949Sbapt case ${UNAME_MACHINE} in 820234949Sbapt x86) 821234949Sbapt echo i586-pc-interix${UNAME_RELEASE} 822234949Sbapt exit ;; 823234949Sbapt authenticamd | genuineintel | EM64T) 824234949Sbapt echo x86_64-unknown-interix${UNAME_RELEASE} 825234949Sbapt exit ;; 826234949Sbapt IA64) 827234949Sbapt echo ia64-unknown-interix${UNAME_RELEASE} 828234949Sbapt exit ;; 829234949Sbapt esac ;; 830234949Sbapt [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 831234949Sbapt echo i${UNAME_MACHINE}-pc-mks 832234949Sbapt exit ;; 833234949Sbapt 8664:Windows_NT:*) 834234949Sbapt echo x86_64-pc-mks 835234949Sbapt exit ;; 836234949Sbapt i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 837234949Sbapt # How do we know it's Interix rather than the generic POSIX subsystem? 838234949Sbapt # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 839234949Sbapt # UNAME_MACHINE based on the output of uname instead of i386? 840234949Sbapt echo i586-pc-interix 841234949Sbapt exit ;; 842234949Sbapt i*:UWIN*:*) 843234949Sbapt echo ${UNAME_MACHINE}-pc-uwin 844234949Sbapt exit ;; 845234949Sbapt amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 846234949Sbapt echo x86_64-unknown-cygwin 847234949Sbapt exit ;; 848234949Sbapt p*:CYGWIN*:*) 849234949Sbapt echo powerpcle-unknown-cygwin 850234949Sbapt exit ;; 851234949Sbapt prep*:SunOS:5.*:*) 852234949Sbapt echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 853234949Sbapt exit ;; 854234949Sbapt *:GNU:*:*) 855234949Sbapt # the GNU system 856234949Sbapt echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 857234949Sbapt exit ;; 858234949Sbapt *:GNU/*:*:*) 859234949Sbapt # other systems with GNU libc and userland 860234949Sbapt echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu 861234949Sbapt exit ;; 862234949Sbapt i*86:Minix:*:*) 863234949Sbapt echo ${UNAME_MACHINE}-pc-minix 864234949Sbapt exit ;; 865251143Sbapt aarch64:Linux:*:*) 866251143Sbapt echo ${UNAME_MACHINE}-unknown-linux-gnu 867251143Sbapt exit ;; 868251143Sbapt aarch64_be:Linux:*:*) 869251143Sbapt UNAME_MACHINE=aarch64_be 870251143Sbapt echo ${UNAME_MACHINE}-unknown-linux-gnu 871251143Sbapt exit ;; 872234949Sbapt alpha:Linux:*:*) 873234949Sbapt case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 874251143Sbapt EV5) UNAME_MACHINE=alphaev5 ;; 875251143Sbapt EV56) UNAME_MACHINE=alphaev56 ;; 876251143Sbapt PCA56) UNAME_MACHINE=alphapca56 ;; 877251143Sbapt PCA57) UNAME_MACHINE=alphapca56 ;; 878251143Sbapt EV6) UNAME_MACHINE=alphaev6 ;; 879251143Sbapt EV67) UNAME_MACHINE=alphaev67 ;; 880251143Sbapt EV68*) UNAME_MACHINE=alphaev68 ;; 881234949Sbapt esac 882234949Sbapt objdump --private-headers /bin/sh | grep -q ld.so.1 883234949Sbapt if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi 884234949Sbapt echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 885234949Sbapt exit ;; 886234949Sbapt arm*:Linux:*:*) 887234949Sbapt eval $set_cc_for_build 888251143Sbapt if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ 889251143Sbapt | grep -q __ARM_EABI__ 890234949Sbapt then 891234949Sbapt echo ${UNAME_MACHINE}-unknown-linux-gnu 892234949Sbapt else 893251143Sbapt if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ 894251143Sbapt | grep -q __ARM_PCS_VFP 895251143Sbapt then 896251143Sbapt echo ${UNAME_MACHINE}-unknown-linux-gnueabi 897251143Sbapt else 898251143Sbapt echo ${UNAME_MACHINE}-unknown-linux-gnueabihf 899251143Sbapt fi 900234949Sbapt fi 901234949Sbapt exit ;; 902234949Sbapt avr32*:Linux:*:*) 903234949Sbapt echo ${UNAME_MACHINE}-unknown-linux-gnu 904234949Sbapt exit ;; 905234949Sbapt cris:Linux:*:*) 906251143Sbapt echo ${UNAME_MACHINE}-axis-linux-gnu 907234949Sbapt exit ;; 908234949Sbapt crisv32:Linux:*:*) 909251143Sbapt echo ${UNAME_MACHINE}-axis-linux-gnu 910234949Sbapt exit ;; 911234949Sbapt frv:Linux:*:*) 912251143Sbapt echo ${UNAME_MACHINE}-unknown-linux-gnu 913234949Sbapt exit ;; 914251143Sbapt hexagon:Linux:*:*) 915251143Sbapt echo ${UNAME_MACHINE}-unknown-linux-gnu 916251143Sbapt exit ;; 917234949Sbapt i*86:Linux:*:*) 918234949Sbapt LIBC=gnu 919234949Sbapt eval $set_cc_for_build 920251143Sbapt sed 's/^ //' << EOF >$dummy.c 921234949Sbapt #ifdef __dietlibc__ 922234949Sbapt LIBC=dietlibc 923234949Sbapt #endif 924234949SbaptEOF 925234949Sbapt eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` 926234949Sbapt echo "${UNAME_MACHINE}-pc-linux-${LIBC}" 927234949Sbapt exit ;; 928234949Sbapt ia64:Linux:*:*) 929234949Sbapt echo ${UNAME_MACHINE}-unknown-linux-gnu 930234949Sbapt exit ;; 931234949Sbapt m32r*:Linux:*:*) 932234949Sbapt echo ${UNAME_MACHINE}-unknown-linux-gnu 933234949Sbapt exit ;; 934234949Sbapt m68*:Linux:*:*) 935234949Sbapt echo ${UNAME_MACHINE}-unknown-linux-gnu 936234949Sbapt exit ;; 937234949Sbapt mips:Linux:*:* | mips64:Linux:*:*) 938234949Sbapt eval $set_cc_for_build 939234949Sbapt sed 's/^ //' << EOF >$dummy.c 940234949Sbapt #undef CPU 941234949Sbapt #undef ${UNAME_MACHINE} 942234949Sbapt #undef ${UNAME_MACHINE}el 943234949Sbapt #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 944234949Sbapt CPU=${UNAME_MACHINE}el 945234949Sbapt #else 946234949Sbapt #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 947234949Sbapt CPU=${UNAME_MACHINE} 948234949Sbapt #else 949234949Sbapt CPU= 950234949Sbapt #endif 951234949Sbapt #endif 952234949SbaptEOF 953234949Sbapt eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` 954234949Sbapt test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 955234949Sbapt ;; 956234949Sbapt or32:Linux:*:*) 957251143Sbapt echo ${UNAME_MACHINE}-unknown-linux-gnu 958234949Sbapt exit ;; 959234949Sbapt padre:Linux:*:*) 960234949Sbapt echo sparc-unknown-linux-gnu 961234949Sbapt exit ;; 962234949Sbapt parisc64:Linux:*:* | hppa64:Linux:*:*) 963234949Sbapt echo hppa64-unknown-linux-gnu 964234949Sbapt exit ;; 965234949Sbapt parisc:Linux:*:* | hppa:Linux:*:*) 966234949Sbapt # Look for CPU level 967234949Sbapt case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 968234949Sbapt PA7*) echo hppa1.1-unknown-linux-gnu ;; 969234949Sbapt PA8*) echo hppa2.0-unknown-linux-gnu ;; 970234949Sbapt *) echo hppa-unknown-linux-gnu ;; 971234949Sbapt esac 972234949Sbapt exit ;; 973234949Sbapt ppc64:Linux:*:*) 974234949Sbapt echo powerpc64-unknown-linux-gnu 975234949Sbapt exit ;; 976234949Sbapt ppc:Linux:*:*) 977234949Sbapt echo powerpc-unknown-linux-gnu 978234949Sbapt exit ;; 979234949Sbapt s390:Linux:*:* | s390x:Linux:*:*) 980234949Sbapt echo ${UNAME_MACHINE}-ibm-linux 981234949Sbapt exit ;; 982234949Sbapt sh64*:Linux:*:*) 983234949Sbapt echo ${UNAME_MACHINE}-unknown-linux-gnu 984234949Sbapt exit ;; 985234949Sbapt sh*:Linux:*:*) 986234949Sbapt echo ${UNAME_MACHINE}-unknown-linux-gnu 987234949Sbapt exit ;; 988234949Sbapt sparc:Linux:*:* | sparc64:Linux:*:*) 989234949Sbapt echo ${UNAME_MACHINE}-unknown-linux-gnu 990234949Sbapt exit ;; 991234949Sbapt tile*:Linux:*:*) 992251143Sbapt echo ${UNAME_MACHINE}-unknown-linux-gnu 993234949Sbapt exit ;; 994234949Sbapt vax:Linux:*:*) 995234949Sbapt echo ${UNAME_MACHINE}-dec-linux-gnu 996234949Sbapt exit ;; 997234949Sbapt x86_64:Linux:*:*) 998251143Sbapt echo ${UNAME_MACHINE}-unknown-linux-gnu 999234949Sbapt exit ;; 1000234949Sbapt xtensa*:Linux:*:*) 1001234949Sbapt echo ${UNAME_MACHINE}-unknown-linux-gnu 1002234949Sbapt exit ;; 1003234949Sbapt i*86:DYNIX/ptx:4*:*) 1004234949Sbapt # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 1005234949Sbapt # earlier versions are messed up and put the nodename in both 1006234949Sbapt # sysname and nodename. 1007234949Sbapt echo i386-sequent-sysv4 1008234949Sbapt exit ;; 1009234949Sbapt i*86:UNIX_SV:4.2MP:2.*) 1010234949Sbapt # Unixware is an offshoot of SVR4, but it has its own version 1011234949Sbapt # number series starting with 2... 1012234949Sbapt # I am not positive that other SVR4 systems won't match this, 1013234949Sbapt # I just have to hope. -- rms. 1014234949Sbapt # Use sysv4.2uw... so that sysv4* matches it. 1015234949Sbapt echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 1016234949Sbapt exit ;; 1017234949Sbapt i*86:OS/2:*:*) 1018234949Sbapt # If we were able to find `uname', then EMX Unix compatibility 1019234949Sbapt # is probably installed. 1020234949Sbapt echo ${UNAME_MACHINE}-pc-os2-emx 1021234949Sbapt exit ;; 1022234949Sbapt i*86:XTS-300:*:STOP) 1023234949Sbapt echo ${UNAME_MACHINE}-unknown-stop 1024234949Sbapt exit ;; 1025234949Sbapt i*86:atheos:*:*) 1026234949Sbapt echo ${UNAME_MACHINE}-unknown-atheos 1027234949Sbapt exit ;; 1028234949Sbapt i*86:syllable:*:*) 1029234949Sbapt echo ${UNAME_MACHINE}-pc-syllable 1030234949Sbapt exit ;; 1031234949Sbapt i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) 1032234949Sbapt echo i386-unknown-lynxos${UNAME_RELEASE} 1033234949Sbapt exit ;; 1034234949Sbapt i*86:*DOS:*:*) 1035234949Sbapt echo ${UNAME_MACHINE}-pc-msdosdjgpp 1036234949Sbapt exit ;; 1037234949Sbapt i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 1038234949Sbapt UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 1039234949Sbapt if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 1040234949Sbapt echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 1041234949Sbapt else 1042234949Sbapt echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 1043234949Sbapt fi 1044234949Sbapt exit ;; 1045234949Sbapt i*86:*:5:[678]*) 1046234949Sbapt # UnixWare 7.x, OpenUNIX and OpenServer 6. 1047234949Sbapt case `/bin/uname -X | grep "^Machine"` in 1048234949Sbapt *486*) UNAME_MACHINE=i486 ;; 1049234949Sbapt *Pentium) UNAME_MACHINE=i586 ;; 1050234949Sbapt *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 1051234949Sbapt esac 1052234949Sbapt echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 1053234949Sbapt exit ;; 1054234949Sbapt i*86:*:3.2:*) 1055234949Sbapt if test -f /usr/options/cb.name; then 1056234949Sbapt UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 1057234949Sbapt echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 1058234949Sbapt elif /bin/uname -X 2>/dev/null >/dev/null ; then 1059234949Sbapt UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 1060234949Sbapt (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 1061234949Sbapt (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 1062234949Sbapt && UNAME_MACHINE=i586 1063234949Sbapt (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 1064234949Sbapt && UNAME_MACHINE=i686 1065234949Sbapt (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 1066234949Sbapt && UNAME_MACHINE=i686 1067234949Sbapt echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 1068234949Sbapt else 1069234949Sbapt echo ${UNAME_MACHINE}-pc-sysv32 1070234949Sbapt fi 1071234949Sbapt exit ;; 1072234949Sbapt pc:*:*:*) 1073234949Sbapt # Left here for compatibility: 1074234949Sbapt # uname -m prints for DJGPP always 'pc', but it prints nothing about 1075234949Sbapt # the processor, so we play safe by assuming i586. 1076234949Sbapt # Note: whatever this is, it MUST be the same as what config.sub 1077234949Sbapt # prints for the "djgpp" host, or else GDB configury will decide that 1078234949Sbapt # this is a cross-build. 1079234949Sbapt echo i586-pc-msdosdjgpp 1080234949Sbapt exit ;; 1081234949Sbapt Intel:Mach:3*:*) 1082234949Sbapt echo i386-pc-mach3 1083234949Sbapt exit ;; 1084234949Sbapt paragon:*:*:*) 1085234949Sbapt echo i860-intel-osf1 1086234949Sbapt exit ;; 1087234949Sbapt i860:*:4.*:*) # i860-SVR4 1088234949Sbapt if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 1089234949Sbapt echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 1090234949Sbapt else # Add other i860-SVR4 vendors below as they are discovered. 1091234949Sbapt echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 1092234949Sbapt fi 1093234949Sbapt exit ;; 1094234949Sbapt mini*:CTIX:SYS*5:*) 1095234949Sbapt # "miniframe" 1096234949Sbapt echo m68010-convergent-sysv 1097234949Sbapt exit ;; 1098234949Sbapt mc68k:UNIX:SYSTEM5:3.51m) 1099234949Sbapt echo m68k-convergent-sysv 1100234949Sbapt exit ;; 1101234949Sbapt M680?0:D-NIX:5.3:*) 1102234949Sbapt echo m68k-diab-dnix 1103234949Sbapt exit ;; 1104234949Sbapt M68*:*:R3V[5678]*:*) 1105234949Sbapt test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 1106234949Sbapt 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) 1107234949Sbapt OS_REL='' 1108234949Sbapt test -r /etc/.relid \ 1109234949Sbapt && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1110234949Sbapt /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1111234949Sbapt && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 1112234949Sbapt /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1113234949Sbapt && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1114234949Sbapt 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 1115234949Sbapt /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1116251143Sbapt && { echo i486-ncr-sysv4; exit; } ;; 1117234949Sbapt NCR*:*:4.2:* | MPRAS*:*:4.2:*) 1118234949Sbapt OS_REL='.3' 1119234949Sbapt test -r /etc/.relid \ 1120234949Sbapt && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1121234949Sbapt /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1122234949Sbapt && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 1123234949Sbapt /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1124234949Sbapt && { echo i586-ncr-sysv4.3${OS_REL}; exit; } 1125234949Sbapt /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ 1126234949Sbapt && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1127234949Sbapt m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 1128234949Sbapt echo m68k-unknown-lynxos${UNAME_RELEASE} 1129234949Sbapt exit ;; 1130234949Sbapt mc68030:UNIX_System_V:4.*:*) 1131234949Sbapt echo m68k-atari-sysv4 1132234949Sbapt exit ;; 1133234949Sbapt TSUNAMI:LynxOS:2.*:*) 1134234949Sbapt echo sparc-unknown-lynxos${UNAME_RELEASE} 1135234949Sbapt exit ;; 1136234949Sbapt rs6000:LynxOS:2.*:*) 1137234949Sbapt echo rs6000-unknown-lynxos${UNAME_RELEASE} 1138234949Sbapt exit ;; 1139234949Sbapt PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) 1140234949Sbapt echo powerpc-unknown-lynxos${UNAME_RELEASE} 1141234949Sbapt exit ;; 1142234949Sbapt SM[BE]S:UNIX_SV:*:*) 1143234949Sbapt echo mips-dde-sysv${UNAME_RELEASE} 1144234949Sbapt exit ;; 1145234949Sbapt RM*:ReliantUNIX-*:*:*) 1146234949Sbapt echo mips-sni-sysv4 1147234949Sbapt exit ;; 1148234949Sbapt RM*:SINIX-*:*:*) 1149234949Sbapt echo mips-sni-sysv4 1150234949Sbapt exit ;; 1151234949Sbapt *:SINIX-*:*:*) 1152234949Sbapt if uname -p 2>/dev/null >/dev/null ; then 1153234949Sbapt UNAME_MACHINE=`(uname -p) 2>/dev/null` 1154234949Sbapt echo ${UNAME_MACHINE}-sni-sysv4 1155234949Sbapt else 1156234949Sbapt echo ns32k-sni-sysv 1157234949Sbapt fi 1158234949Sbapt exit ;; 1159251143Sbapt PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 1160251143Sbapt # says <Richard.M.Bartel@ccMail.Census.GOV> 1161234949Sbapt echo i586-unisys-sysv4 1162234949Sbapt exit ;; 1163234949Sbapt *:UNIX_System_V:4*:FTX*) 1164234949Sbapt # From Gerald Hewes <hewes@openmarket.com>. 1165234949Sbapt # How about differentiating between stratus architectures? -djm 1166234949Sbapt echo hppa1.1-stratus-sysv4 1167234949Sbapt exit ;; 1168234949Sbapt *:*:*:FTX*) 1169234949Sbapt # From seanf@swdc.stratus.com. 1170234949Sbapt echo i860-stratus-sysv4 1171234949Sbapt exit ;; 1172234949Sbapt i*86:VOS:*:*) 1173234949Sbapt # From Paul.Green@stratus.com. 1174234949Sbapt echo ${UNAME_MACHINE}-stratus-vos 1175234949Sbapt exit ;; 1176234949Sbapt *:VOS:*:*) 1177234949Sbapt # From Paul.Green@stratus.com. 1178234949Sbapt echo hppa1.1-stratus-vos 1179234949Sbapt exit ;; 1180234949Sbapt mc68*:A/UX:*:*) 1181234949Sbapt echo m68k-apple-aux${UNAME_RELEASE} 1182234949Sbapt exit ;; 1183234949Sbapt news*:NEWS-OS:6*:*) 1184234949Sbapt echo mips-sony-newsos6 1185234949Sbapt exit ;; 1186234949Sbapt R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 1187234949Sbapt if [ -d /usr/nec ]; then 1188251143Sbapt echo mips-nec-sysv${UNAME_RELEASE} 1189234949Sbapt else 1190251143Sbapt echo mips-unknown-sysv${UNAME_RELEASE} 1191234949Sbapt fi 1192234949Sbapt exit ;; 1193234949Sbapt BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 1194234949Sbapt echo powerpc-be-beos 1195234949Sbapt exit ;; 1196234949Sbapt BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 1197234949Sbapt echo powerpc-apple-beos 1198234949Sbapt exit ;; 1199234949Sbapt BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 1200234949Sbapt echo i586-pc-beos 1201234949Sbapt exit ;; 1202234949Sbapt BePC:Haiku:*:*) # Haiku running on Intel PC compatible. 1203234949Sbapt echo i586-pc-haiku 1204234949Sbapt exit ;; 1205251143Sbapt x86_64:Haiku:*:*) 1206251143Sbapt echo x86_64-unknown-haiku 1207251143Sbapt exit ;; 1208234949Sbapt SX-4:SUPER-UX:*:*) 1209234949Sbapt echo sx4-nec-superux${UNAME_RELEASE} 1210234949Sbapt exit ;; 1211234949Sbapt SX-5:SUPER-UX:*:*) 1212234949Sbapt echo sx5-nec-superux${UNAME_RELEASE} 1213234949Sbapt exit ;; 1214234949Sbapt SX-6:SUPER-UX:*:*) 1215234949Sbapt echo sx6-nec-superux${UNAME_RELEASE} 1216234949Sbapt exit ;; 1217234949Sbapt SX-7:SUPER-UX:*:*) 1218234949Sbapt echo sx7-nec-superux${UNAME_RELEASE} 1219234949Sbapt exit ;; 1220234949Sbapt SX-8:SUPER-UX:*:*) 1221234949Sbapt echo sx8-nec-superux${UNAME_RELEASE} 1222234949Sbapt exit ;; 1223234949Sbapt SX-8R:SUPER-UX:*:*) 1224234949Sbapt echo sx8r-nec-superux${UNAME_RELEASE} 1225234949Sbapt exit ;; 1226234949Sbapt Power*:Rhapsody:*:*) 1227234949Sbapt echo powerpc-apple-rhapsody${UNAME_RELEASE} 1228234949Sbapt exit ;; 1229234949Sbapt *:Rhapsody:*:*) 1230234949Sbapt echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 1231234949Sbapt exit ;; 1232234949Sbapt *:Darwin:*:*) 1233234949Sbapt UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 1234234949Sbapt case $UNAME_PROCESSOR in 1235234949Sbapt i386) 1236234949Sbapt eval $set_cc_for_build 1237234949Sbapt if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 1238251143Sbapt if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ 1239251143Sbapt (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 1240251143Sbapt grep IS_64BIT_ARCH >/dev/null 1241251143Sbapt then 1242251143Sbapt UNAME_PROCESSOR="x86_64" 1243251143Sbapt fi 1244234949Sbapt fi ;; 1245234949Sbapt unknown) UNAME_PROCESSOR=powerpc ;; 1246234949Sbapt esac 1247234949Sbapt echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 1248234949Sbapt exit ;; 1249234949Sbapt *:procnto*:*:* | *:QNX:[0123456789]*:*) 1250234949Sbapt UNAME_PROCESSOR=`uname -p` 1251234949Sbapt if test "$UNAME_PROCESSOR" = "x86"; then 1252251143Sbapt UNAME_PROCESSOR=i386 1253251143Sbapt UNAME_MACHINE=pc 1254234949Sbapt fi 1255234949Sbapt echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 1256234949Sbapt exit ;; 1257234949Sbapt *:QNX:*:4*) 1258234949Sbapt echo i386-pc-qnx 1259234949Sbapt exit ;; 1260234949Sbapt NEO-?:NONSTOP_KERNEL:*:*) 1261234949Sbapt echo neo-tandem-nsk${UNAME_RELEASE} 1262234949Sbapt exit ;; 1263251143Sbapt NSE-*:NONSTOP_KERNEL:*:*) 1264234949Sbapt echo nse-tandem-nsk${UNAME_RELEASE} 1265234949Sbapt exit ;; 1266234949Sbapt NSR-?:NONSTOP_KERNEL:*:*) 1267234949Sbapt echo nsr-tandem-nsk${UNAME_RELEASE} 1268234949Sbapt exit ;; 1269234949Sbapt *:NonStop-UX:*:*) 1270234949Sbapt echo mips-compaq-nonstopux 1271234949Sbapt exit ;; 1272234949Sbapt BS2000:POSIX*:*:*) 1273234949Sbapt echo bs2000-siemens-sysv 1274234949Sbapt exit ;; 1275234949Sbapt DS/*:UNIX_System_V:*:*) 1276234949Sbapt echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 1277234949Sbapt exit ;; 1278234949Sbapt *:Plan9:*:*) 1279234949Sbapt # "uname -m" is not consistent, so use $cputype instead. 386 1280234949Sbapt # is converted to i386 for consistency with other x86 1281234949Sbapt # operating systems. 1282234949Sbapt if test "$cputype" = "386"; then 1283234949Sbapt UNAME_MACHINE=i386 1284234949Sbapt else 1285234949Sbapt UNAME_MACHINE="$cputype" 1286234949Sbapt fi 1287234949Sbapt echo ${UNAME_MACHINE}-unknown-plan9 1288234949Sbapt exit ;; 1289234949Sbapt *:TOPS-10:*:*) 1290234949Sbapt echo pdp10-unknown-tops10 1291234949Sbapt exit ;; 1292234949Sbapt *:TENEX:*:*) 1293234949Sbapt echo pdp10-unknown-tenex 1294234949Sbapt exit ;; 1295234949Sbapt KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 1296234949Sbapt echo pdp10-dec-tops20 1297234949Sbapt exit ;; 1298234949Sbapt XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 1299234949Sbapt echo pdp10-xkl-tops20 1300234949Sbapt exit ;; 1301234949Sbapt *:TOPS-20:*:*) 1302234949Sbapt echo pdp10-unknown-tops20 1303234949Sbapt exit ;; 1304234949Sbapt *:ITS:*:*) 1305234949Sbapt echo pdp10-unknown-its 1306234949Sbapt exit ;; 1307234949Sbapt SEI:*:*:SEIUX) 1308234949Sbapt echo mips-sei-seiux${UNAME_RELEASE} 1309234949Sbapt exit ;; 1310234949Sbapt *:DragonFly:*:*) 1311234949Sbapt echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 1312234949Sbapt exit ;; 1313234949Sbapt *:*VMS:*:*) 1314234949Sbapt UNAME_MACHINE=`(uname -p) 2>/dev/null` 1315234949Sbapt case "${UNAME_MACHINE}" in 1316234949Sbapt A*) echo alpha-dec-vms ; exit ;; 1317234949Sbapt I*) echo ia64-dec-vms ; exit ;; 1318234949Sbapt V*) echo vax-dec-vms ; exit ;; 1319234949Sbapt esac ;; 1320234949Sbapt *:XENIX:*:SysV) 1321234949Sbapt echo i386-pc-xenix 1322234949Sbapt exit ;; 1323234949Sbapt i*86:skyos:*:*) 1324234949Sbapt echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' 1325234949Sbapt exit ;; 1326234949Sbapt i*86:rdos:*:*) 1327234949Sbapt echo ${UNAME_MACHINE}-pc-rdos 1328234949Sbapt exit ;; 1329234949Sbapt i*86:AROS:*:*) 1330234949Sbapt echo ${UNAME_MACHINE}-pc-aros 1331234949Sbapt exit ;; 1332251143Sbapt x86_64:VMkernel:*:*) 1333251143Sbapt echo ${UNAME_MACHINE}-unknown-esx 1334251143Sbapt exit ;; 1335234949Sbaptesac 1336234949Sbapt 1337234949Sbapteval $set_cc_for_build 1338234949Sbaptcat >$dummy.c <<EOF 1339234949Sbapt#ifdef _SEQUENT_ 1340234949Sbapt# include <sys/types.h> 1341234949Sbapt# include <sys/utsname.h> 1342234949Sbapt#endif 1343234949Sbaptmain () 1344234949Sbapt{ 1345234949Sbapt#if defined (sony) 1346234949Sbapt#if defined (MIPSEB) 1347234949Sbapt /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, 1348234949Sbapt I don't know.... */ 1349234949Sbapt printf ("mips-sony-bsd\n"); exit (0); 1350234949Sbapt#else 1351234949Sbapt#include <sys/param.h> 1352234949Sbapt printf ("m68k-sony-newsos%s\n", 1353234949Sbapt#ifdef NEWSOS4 1354251143Sbapt "4" 1355234949Sbapt#else 1356251143Sbapt "" 1357234949Sbapt#endif 1358251143Sbapt ); exit (0); 1359234949Sbapt#endif 1360234949Sbapt#endif 1361234949Sbapt 1362234949Sbapt#if defined (__arm) && defined (__acorn) && defined (__unix) 1363234949Sbapt printf ("arm-acorn-riscix\n"); exit (0); 1364234949Sbapt#endif 1365234949Sbapt 1366234949Sbapt#if defined (hp300) && !defined (hpux) 1367234949Sbapt printf ("m68k-hp-bsd\n"); exit (0); 1368234949Sbapt#endif 1369234949Sbapt 1370234949Sbapt#if defined (NeXT) 1371234949Sbapt#if !defined (__ARCHITECTURE__) 1372234949Sbapt#define __ARCHITECTURE__ "m68k" 1373234949Sbapt#endif 1374234949Sbapt int version; 1375234949Sbapt version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; 1376234949Sbapt if (version < 4) 1377234949Sbapt printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); 1378234949Sbapt else 1379234949Sbapt printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); 1380234949Sbapt exit (0); 1381234949Sbapt#endif 1382234949Sbapt 1383234949Sbapt#if defined (MULTIMAX) || defined (n16) 1384234949Sbapt#if defined (UMAXV) 1385234949Sbapt printf ("ns32k-encore-sysv\n"); exit (0); 1386234949Sbapt#else 1387234949Sbapt#if defined (CMU) 1388234949Sbapt printf ("ns32k-encore-mach\n"); exit (0); 1389234949Sbapt#else 1390234949Sbapt printf ("ns32k-encore-bsd\n"); exit (0); 1391234949Sbapt#endif 1392234949Sbapt#endif 1393234949Sbapt#endif 1394234949Sbapt 1395234949Sbapt#if defined (__386BSD__) 1396234949Sbapt printf ("i386-pc-bsd\n"); exit (0); 1397234949Sbapt#endif 1398234949Sbapt 1399234949Sbapt#if defined (sequent) 1400234949Sbapt#if defined (i386) 1401234949Sbapt printf ("i386-sequent-dynix\n"); exit (0); 1402234949Sbapt#endif 1403234949Sbapt#if defined (ns32000) 1404234949Sbapt printf ("ns32k-sequent-dynix\n"); exit (0); 1405234949Sbapt#endif 1406234949Sbapt#endif 1407234949Sbapt 1408234949Sbapt#if defined (_SEQUENT_) 1409234949Sbapt struct utsname un; 1410234949Sbapt 1411234949Sbapt uname(&un); 1412234949Sbapt 1413234949Sbapt if (strncmp(un.version, "V2", 2) == 0) { 1414234949Sbapt printf ("i386-sequent-ptx2\n"); exit (0); 1415234949Sbapt } 1416234949Sbapt if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ 1417234949Sbapt printf ("i386-sequent-ptx1\n"); exit (0); 1418234949Sbapt } 1419234949Sbapt printf ("i386-sequent-ptx\n"); exit (0); 1420234949Sbapt 1421234949Sbapt#endif 1422234949Sbapt 1423234949Sbapt#if defined (vax) 1424234949Sbapt# if !defined (ultrix) 1425234949Sbapt# include <sys/param.h> 1426234949Sbapt# if defined (BSD) 1427234949Sbapt# if BSD == 43 1428234949Sbapt printf ("vax-dec-bsd4.3\n"); exit (0); 1429234949Sbapt# else 1430234949Sbapt# if BSD == 199006 1431234949Sbapt printf ("vax-dec-bsd4.3reno\n"); exit (0); 1432234949Sbapt# else 1433234949Sbapt printf ("vax-dec-bsd\n"); exit (0); 1434234949Sbapt# endif 1435234949Sbapt# endif 1436234949Sbapt# else 1437234949Sbapt printf ("vax-dec-bsd\n"); exit (0); 1438234949Sbapt# endif 1439234949Sbapt# else 1440234949Sbapt printf ("vax-dec-ultrix\n"); exit (0); 1441234949Sbapt# endif 1442234949Sbapt#endif 1443234949Sbapt 1444234949Sbapt#if defined (alliant) && defined (i860) 1445234949Sbapt printf ("i860-alliant-bsd\n"); exit (0); 1446234949Sbapt#endif 1447234949Sbapt 1448234949Sbapt exit (1); 1449234949Sbapt} 1450234949SbaptEOF 1451234949Sbapt 1452234949Sbapt$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && 1453234949Sbapt { echo "$SYSTEM_NAME"; exit; } 1454234949Sbapt 1455234949Sbapt# Apollos put the system type in the environment. 1456234949Sbapt 1457234949Sbapttest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } 1458234949Sbapt 1459234949Sbapt# Convex versions that predate uname can use getsysinfo(1) 1460234949Sbapt 1461234949Sbaptif [ -x /usr/convex/getsysinfo ] 1462234949Sbaptthen 1463234949Sbapt case `getsysinfo -f cpu_type` in 1464234949Sbapt c1*) 1465234949Sbapt echo c1-convex-bsd 1466234949Sbapt exit ;; 1467234949Sbapt c2*) 1468234949Sbapt if getsysinfo -f scalar_acc 1469234949Sbapt then echo c32-convex-bsd 1470234949Sbapt else echo c2-convex-bsd 1471234949Sbapt fi 1472234949Sbapt exit ;; 1473234949Sbapt c34*) 1474234949Sbapt echo c34-convex-bsd 1475234949Sbapt exit ;; 1476234949Sbapt c38*) 1477234949Sbapt echo c38-convex-bsd 1478234949Sbapt exit ;; 1479234949Sbapt c4*) 1480234949Sbapt echo c4-convex-bsd 1481234949Sbapt exit ;; 1482234949Sbapt esac 1483234949Sbaptfi 1484234949Sbapt 1485234949Sbaptcat >&2 <<EOF 1486234949Sbapt$0: unable to guess system type 1487234949Sbapt 1488234949SbaptThis script, last modified $timestamp, has failed to recognize 1489234949Sbaptthe operating system you are using. It is advised that you 1490234949Sbaptdownload the most up to date version of the config scripts from 1491234949Sbapt 1492234949Sbapt http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 1493234949Sbaptand 1494234949Sbapt http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 1495234949Sbapt 1496234949SbaptIf the version you run ($0) is already up to date, please 1497234949Sbaptsend the following data and any information you think might be 1498234949Sbaptpertinent to <config-patches@gnu.org> in order to provide the needed 1499234949Sbaptinformation to handle your system. 1500234949Sbapt 1501234949Sbaptconfig.guess timestamp = $timestamp 1502234949Sbapt 1503234949Sbaptuname -m = `(uname -m) 2>/dev/null || echo unknown` 1504234949Sbaptuname -r = `(uname -r) 2>/dev/null || echo unknown` 1505234949Sbaptuname -s = `(uname -s) 2>/dev/null || echo unknown` 1506234949Sbaptuname -v = `(uname -v) 2>/dev/null || echo unknown` 1507234949Sbapt 1508234949Sbapt/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 1509234949Sbapt/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 1510234949Sbapt 1511234949Sbapthostinfo = `(hostinfo) 2>/dev/null` 1512234949Sbapt/bin/universe = `(/bin/universe) 2>/dev/null` 1513234949Sbapt/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 1514234949Sbapt/bin/arch = `(/bin/arch) 2>/dev/null` 1515234949Sbapt/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 1516234949Sbapt/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 1517234949Sbapt 1518234949SbaptUNAME_MACHINE = ${UNAME_MACHINE} 1519234949SbaptUNAME_RELEASE = ${UNAME_RELEASE} 1520234949SbaptUNAME_SYSTEM = ${UNAME_SYSTEM} 1521234949SbaptUNAME_VERSION = ${UNAME_VERSION} 1522234949SbaptEOF 1523234949Sbapt 1524234949Sbaptexit 1 1525234949Sbapt 1526234949Sbapt# Local variables: 1527234949Sbapt# eval: (add-hook 'write-file-hooks 'time-stamp) 1528234949Sbapt# time-stamp-start: "timestamp='" 1529234949Sbapt# time-stamp-format: "%:y-%02m-%02d" 1530234949Sbapt# time-stamp-end: "'" 1531234949Sbapt# End: 1532