config.guess revision 444c061a
1444c061aSmrg#! /bin/sh 2444c061aSmrg# Attempt to guess a canonical system name. 3444c061aSmrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4444c061aSmrg# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. 5444c061aSmrg 6444c061aSmrgtimestamp='2005-12-13' 7444c061aSmrg 8444c061aSmrg# This file is free software; you can redistribute it and/or modify it 9444c061aSmrg# under the terms of the GNU General Public License as published by 10444c061aSmrg# the Free Software Foundation; either version 2 of the License, or 11444c061aSmrg# (at your option) any later version. 12444c061aSmrg# 13444c061aSmrg# This program is distributed in the hope that it will be useful, but 14444c061aSmrg# WITHOUT ANY WARRANTY; without even the implied warranty of 15444c061aSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 16444c061aSmrg# General Public License for more details. 17444c061aSmrg# 18444c061aSmrg# You should have received a copy of the GNU General Public License 19444c061aSmrg# along with this program; if not, write to the Free Software 20444c061aSmrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 21444c061aSmrg# 02110-1301, USA. 22444c061aSmrg# 23444c061aSmrg# As a special exception to the GNU General Public License, if you 24444c061aSmrg# distribute this file as part of a program that contains a 25444c061aSmrg# configuration script generated by Autoconf, you may include it under 26444c061aSmrg# the same distribution terms that you use for the rest of that program. 27444c061aSmrg 28444c061aSmrg 29444c061aSmrg# Originally written by Per Bothner <per@bothner.com>. 30444c061aSmrg# Please send patches to <config-patches@gnu.org>. Submit a context 31444c061aSmrg# diff and a properly formatted ChangeLog entry. 32444c061aSmrg# 33444c061aSmrg# This script attempts to guess a canonical system name similar to 34444c061aSmrg# config.sub. If it succeeds, it prints the system name on stdout, and 35444c061aSmrg# exits with 0. Otherwise, it exits with 1. 36444c061aSmrg# 37444c061aSmrg# The plan is that this can be called by configure scripts if you 38444c061aSmrg# don't specify an explicit build system type. 39444c061aSmrg 40444c061aSmrgme=`echo "$0" | sed -e 's,.*/,,'` 41444c061aSmrg 42444c061aSmrgusage="\ 43444c061aSmrgUsage: $0 [OPTION] 44444c061aSmrg 45444c061aSmrgOutput the configuration name of the system \`$me' is run on. 46444c061aSmrg 47444c061aSmrgOperation modes: 48444c061aSmrg -h, --help print this help, then exit 49444c061aSmrg -t, --time-stamp print date of last modification, then exit 50444c061aSmrg -v, --version print version number, then exit 51444c061aSmrg 52444c061aSmrgReport bugs and patches to <config-patches@gnu.org>." 53444c061aSmrg 54444c061aSmrgversion="\ 55444c061aSmrgGNU config.guess ($timestamp) 56444c061aSmrg 57444c061aSmrgOriginally written by Per Bothner. 58444c061aSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 59444c061aSmrgFree Software Foundation, Inc. 60444c061aSmrg 61444c061aSmrgThis is free software; see the source for copying conditions. There is NO 62444c061aSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 63444c061aSmrg 64444c061aSmrghelp=" 65444c061aSmrgTry \`$me --help' for more information." 66444c061aSmrg 67444c061aSmrg# Parse command line 68444c061aSmrgwhile test $# -gt 0 ; do 69444c061aSmrg case $1 in 70444c061aSmrg --time-stamp | --time* | -t ) 71444c061aSmrg echo "$timestamp" ; exit ;; 72444c061aSmrg --version | -v ) 73444c061aSmrg echo "$version" ; exit ;; 74444c061aSmrg --help | --h* | -h ) 75444c061aSmrg echo "$usage"; exit ;; 76444c061aSmrg -- ) # Stop option processing 77444c061aSmrg shift; break ;; 78444c061aSmrg - ) # Use stdin as input. 79444c061aSmrg break ;; 80444c061aSmrg -* ) 81444c061aSmrg echo "$me: invalid option $1$help" >&2 82444c061aSmrg exit 1 ;; 83444c061aSmrg * ) 84444c061aSmrg break ;; 85444c061aSmrg esac 86444c061aSmrgdone 87444c061aSmrg 88444c061aSmrgif test $# != 0; then 89444c061aSmrg echo "$me: too many arguments$help" >&2 90444c061aSmrg exit 1 91444c061aSmrgfi 92444c061aSmrg 93444c061aSmrgtrap 'exit 1' 1 2 15 94444c061aSmrg 95444c061aSmrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 96444c061aSmrg# compiler to aid in system detection is discouraged as it requires 97444c061aSmrg# temporary files to be created and, as you can see below, it is a 98444c061aSmrg# headache to deal with in a portable fashion. 99444c061aSmrg 100444c061aSmrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 101444c061aSmrg# use `HOST_CC' if defined, but it is deprecated. 102444c061aSmrg 103444c061aSmrg# Portable tmp directory creation inspired by the Autoconf team. 104444c061aSmrg 105444c061aSmrgset_cc_for_build=' 106444c061aSmrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; 107444c061aSmrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 108444c061aSmrg: ${TMPDIR=/tmp} ; 109444c061aSmrg { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 110444c061aSmrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 111444c061aSmrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || 112444c061aSmrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; 113444c061aSmrgdummy=$tmp/dummy ; 114444c061aSmrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; 115444c061aSmrgcase $CC_FOR_BUILD,$HOST_CC,$CC in 116444c061aSmrg ,,) echo "int x;" > $dummy.c ; 117444c061aSmrg for c in cc gcc c89 c99 ; do 118444c061aSmrg if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then 119444c061aSmrg CC_FOR_BUILD="$c"; break ; 120444c061aSmrg fi ; 121444c061aSmrg done ; 122444c061aSmrg if test x"$CC_FOR_BUILD" = x ; then 123444c061aSmrg CC_FOR_BUILD=no_compiler_found ; 124444c061aSmrg fi 125444c061aSmrg ;; 126444c061aSmrg ,,*) CC_FOR_BUILD=$CC ;; 127444c061aSmrg ,*,*) CC_FOR_BUILD=$HOST_CC ;; 128444c061aSmrgesac ; set_cc_for_build= ;' 129444c061aSmrg 130444c061aSmrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 131444c061aSmrg# (ghazi@noc.rutgers.edu 1994-08-24) 132444c061aSmrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then 133444c061aSmrg PATH=$PATH:/.attbin ; export PATH 134444c061aSmrgfi 135444c061aSmrg 136444c061aSmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 137444c061aSmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 138444c061aSmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 139444c061aSmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 140444c061aSmrg 141444c061aSmrg# Note: order is significant - the case branches are not exclusive. 142444c061aSmrg 143444c061aSmrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 144444c061aSmrg *:NetBSD:*:*) 145444c061aSmrg # NetBSD (nbsd) targets should (where applicable) match one or 146444c061aSmrg # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, 147444c061aSmrg # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 148444c061aSmrg # switched to ELF, *-*-netbsd* would select the old 149444c061aSmrg # object file format. This provides both forward 150444c061aSmrg # compatibility and a consistent mechanism for selecting the 151444c061aSmrg # object file format. 152444c061aSmrg # 153444c061aSmrg # Note: NetBSD doesn't particularly care about the vendor 154444c061aSmrg # portion of the name. We always set it to "unknown". 155444c061aSmrg sysctl="sysctl -n hw.machine_arch" 156444c061aSmrg UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ 157444c061aSmrg /usr/sbin/$sysctl 2>/dev/null || echo unknown)` 158444c061aSmrg case "${UNAME_MACHINE_ARCH}" in 159444c061aSmrg armeb) machine=armeb-unknown ;; 160444c061aSmrg arm*) machine=arm-unknown ;; 161444c061aSmrg sh3el) machine=shl-unknown ;; 162444c061aSmrg sh3eb) machine=sh-unknown ;; 163444c061aSmrg *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 164444c061aSmrg esac 165444c061aSmrg # The Operating System including object format, if it has switched 166444c061aSmrg # to ELF recently, or will in the future. 167444c061aSmrg case "${UNAME_MACHINE_ARCH}" in 168444c061aSmrg arm*|i386|m68k|ns32k|sh3*|sparc|vax) 169444c061aSmrg eval $set_cc_for_build 170444c061aSmrg if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 171444c061aSmrg | grep __ELF__ >/dev/null 172444c061aSmrg then 173444c061aSmrg # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 174444c061aSmrg # Return netbsd for either. FIX? 175444c061aSmrg os=netbsd 176444c061aSmrg else 177444c061aSmrg os=netbsdelf 178444c061aSmrg fi 179444c061aSmrg ;; 180444c061aSmrg *) 181444c061aSmrg os=netbsd 182444c061aSmrg ;; 183444c061aSmrg esac 184444c061aSmrg # The OS release 185444c061aSmrg # Debian GNU/NetBSD machines have a different userland, and 186444c061aSmrg # thus, need a distinct triplet. However, they do not need 187444c061aSmrg # kernel version information, so it can be replaced with a 188444c061aSmrg # suitable tag, in the style of linux-gnu. 189444c061aSmrg case "${UNAME_VERSION}" in 190444c061aSmrg Debian*) 191444c061aSmrg release='-gnu' 192444c061aSmrg ;; 193444c061aSmrg *) 194444c061aSmrg release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` 195444c061aSmrg ;; 196444c061aSmrg esac 197444c061aSmrg # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 198444c061aSmrg # contains redundant information, the shorter form: 199444c061aSmrg # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 200444c061aSmrg echo "${machine}-${os}${release}" 201444c061aSmrg exit ;; 202444c061aSmrg *:OpenBSD:*:*) 203444c061aSmrg UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 204444c061aSmrg echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 205444c061aSmrg exit ;; 206444c061aSmrg *:ekkoBSD:*:*) 207444c061aSmrg echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 208444c061aSmrg exit ;; 209444c061aSmrg macppc:MirBSD:*:*) 210444c061aSmrg echo powerppc-unknown-mirbsd${UNAME_RELEASE} 211444c061aSmrg exit ;; 212444c061aSmrg *:MirBSD:*:*) 213444c061aSmrg echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 214444c061aSmrg exit ;; 215444c061aSmrg alpha:OSF1:*:*) 216444c061aSmrg case $UNAME_RELEASE in 217444c061aSmrg *4.0) 218444c061aSmrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 219444c061aSmrg ;; 220444c061aSmrg *5.*) 221444c061aSmrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 222444c061aSmrg ;; 223444c061aSmrg esac 224444c061aSmrg # According to Compaq, /usr/sbin/psrinfo has been available on 225444c061aSmrg # OSF/1 and Tru64 systems produced since 1995. I hope that 226444c061aSmrg # covers most systems running today. This code pipes the CPU 227444c061aSmrg # types through head -n 1, so we only detect the type of CPU 0. 228444c061aSmrg ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 229444c061aSmrg case "$ALPHA_CPU_TYPE" in 230444c061aSmrg "EV4 (21064)") 231444c061aSmrg UNAME_MACHINE="alpha" ;; 232444c061aSmrg "EV4.5 (21064)") 233444c061aSmrg UNAME_MACHINE="alpha" ;; 234444c061aSmrg "LCA4 (21066/21068)") 235444c061aSmrg UNAME_MACHINE="alpha" ;; 236444c061aSmrg "EV5 (21164)") 237444c061aSmrg UNAME_MACHINE="alphaev5" ;; 238444c061aSmrg "EV5.6 (21164A)") 239444c061aSmrg UNAME_MACHINE="alphaev56" ;; 240444c061aSmrg "EV5.6 (21164PC)") 241444c061aSmrg UNAME_MACHINE="alphapca56" ;; 242444c061aSmrg "EV5.7 (21164PC)") 243444c061aSmrg UNAME_MACHINE="alphapca57" ;; 244444c061aSmrg "EV6 (21264)") 245444c061aSmrg UNAME_MACHINE="alphaev6" ;; 246444c061aSmrg "EV6.7 (21264A)") 247444c061aSmrg UNAME_MACHINE="alphaev67" ;; 248444c061aSmrg "EV6.8CB (21264C)") 249444c061aSmrg UNAME_MACHINE="alphaev68" ;; 250444c061aSmrg "EV6.8AL (21264B)") 251444c061aSmrg UNAME_MACHINE="alphaev68" ;; 252444c061aSmrg "EV6.8CX (21264D)") 253444c061aSmrg UNAME_MACHINE="alphaev68" ;; 254444c061aSmrg "EV6.9A (21264/EV69A)") 255444c061aSmrg UNAME_MACHINE="alphaev69" ;; 256444c061aSmrg "EV7 (21364)") 257444c061aSmrg UNAME_MACHINE="alphaev7" ;; 258444c061aSmrg "EV7.9 (21364A)") 259444c061aSmrg UNAME_MACHINE="alphaev79" ;; 260444c061aSmrg esac 261444c061aSmrg # A Pn.n version is a patched version. 262444c061aSmrg # A Vn.n version is a released version. 263444c061aSmrg # A Tn.n version is a released field test version. 264444c061aSmrg # A Xn.n version is an unreleased experimental baselevel. 265444c061aSmrg # 1.2 uses "1.2" for uname -r. 266444c061aSmrg echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 267444c061aSmrg exit ;; 268444c061aSmrg Alpha\ *:Windows_NT*:*) 269444c061aSmrg # How do we know it's Interix rather than the generic POSIX subsystem? 270444c061aSmrg # Should we change UNAME_MACHINE based on the output of uname instead 271444c061aSmrg # of the specific Alpha model? 272444c061aSmrg echo alpha-pc-interix 273444c061aSmrg exit ;; 274444c061aSmrg 21064:Windows_NT:50:3) 275444c061aSmrg echo alpha-dec-winnt3.5 276444c061aSmrg exit ;; 277444c061aSmrg Amiga*:UNIX_System_V:4.0:*) 278444c061aSmrg echo m68k-unknown-sysv4 279444c061aSmrg exit ;; 280444c061aSmrg *:[Aa]miga[Oo][Ss]:*:*) 281444c061aSmrg echo ${UNAME_MACHINE}-unknown-amigaos 282444c061aSmrg exit ;; 283444c061aSmrg *:[Mm]orph[Oo][Ss]:*:*) 284444c061aSmrg echo ${UNAME_MACHINE}-unknown-morphos 285444c061aSmrg exit ;; 286444c061aSmrg *:OS/390:*:*) 287444c061aSmrg echo i370-ibm-openedition 288444c061aSmrg exit ;; 289444c061aSmrg *:z/VM:*:*) 290444c061aSmrg echo s390-ibm-zvmoe 291444c061aSmrg exit ;; 292444c061aSmrg *:OS400:*:*) 293444c061aSmrg echo powerpc-ibm-os400 294444c061aSmrg exit ;; 295444c061aSmrg arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 296444c061aSmrg echo arm-acorn-riscix${UNAME_RELEASE} 297444c061aSmrg exit ;; 298444c061aSmrg arm:riscos:*:*|arm:RISCOS:*:*) 299444c061aSmrg echo arm-unknown-riscos 300444c061aSmrg exit ;; 301444c061aSmrg SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 302444c061aSmrg echo hppa1.1-hitachi-hiuxmpp 303444c061aSmrg exit ;; 304444c061aSmrg Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 305444c061aSmrg # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 306444c061aSmrg if test "`(/bin/universe) 2>/dev/null`" = att ; then 307444c061aSmrg echo pyramid-pyramid-sysv3 308444c061aSmrg else 309444c061aSmrg echo pyramid-pyramid-bsd 310444c061aSmrg fi 311444c061aSmrg exit ;; 312444c061aSmrg NILE*:*:*:dcosx) 313444c061aSmrg echo pyramid-pyramid-svr4 314444c061aSmrg exit ;; 315444c061aSmrg DRS?6000:unix:4.0:6*) 316444c061aSmrg echo sparc-icl-nx6 317444c061aSmrg exit ;; 318444c061aSmrg DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 319444c061aSmrg case `/usr/bin/uname -p` in 320444c061aSmrg sparc) echo sparc-icl-nx7; exit ;; 321444c061aSmrg esac ;; 322444c061aSmrg sun4H:SunOS:5.*:*) 323444c061aSmrg echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 324444c061aSmrg exit ;; 325444c061aSmrg sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 326444c061aSmrg echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 327444c061aSmrg exit ;; 328444c061aSmrg i86pc:SunOS:5.*:*) 329444c061aSmrg echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 330444c061aSmrg exit ;; 331444c061aSmrg sun4*:SunOS:6*:*) 332444c061aSmrg # According to config.sub, this is the proper way to canonicalize 333444c061aSmrg # SunOS6. Hard to guess exactly what SunOS6 will be like, but 334444c061aSmrg # it's likely to be more like Solaris than SunOS4. 335444c061aSmrg echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 336444c061aSmrg exit ;; 337444c061aSmrg sun4*:SunOS:*:*) 338444c061aSmrg case "`/usr/bin/arch -k`" in 339444c061aSmrg Series*|S4*) 340444c061aSmrg UNAME_RELEASE=`uname -v` 341444c061aSmrg ;; 342444c061aSmrg esac 343444c061aSmrg # Japanese Language versions have a version number like `4.1.3-JL'. 344444c061aSmrg echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 345444c061aSmrg exit ;; 346444c061aSmrg sun3*:SunOS:*:*) 347444c061aSmrg echo m68k-sun-sunos${UNAME_RELEASE} 348444c061aSmrg exit ;; 349444c061aSmrg sun*:*:4.2BSD:*) 350444c061aSmrg UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 351444c061aSmrg test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 352444c061aSmrg case "`/bin/arch`" in 353444c061aSmrg sun3) 354444c061aSmrg echo m68k-sun-sunos${UNAME_RELEASE} 355444c061aSmrg ;; 356444c061aSmrg sun4) 357444c061aSmrg echo sparc-sun-sunos${UNAME_RELEASE} 358444c061aSmrg ;; 359444c061aSmrg esac 360444c061aSmrg exit ;; 361444c061aSmrg aushp:SunOS:*:*) 362444c061aSmrg echo sparc-auspex-sunos${UNAME_RELEASE} 363444c061aSmrg exit ;; 364444c061aSmrg # The situation for MiNT is a little confusing. The machine name 365444c061aSmrg # can be virtually everything (everything which is not 366444c061aSmrg # "atarist" or "atariste" at least should have a processor 367444c061aSmrg # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 368444c061aSmrg # to the lowercase version "mint" (or "freemint"). Finally 369444c061aSmrg # the system name "TOS" denotes a system which is actually not 370444c061aSmrg # MiNT. But MiNT is downward compatible to TOS, so this should 371444c061aSmrg # be no problem. 372444c061aSmrg atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 373444c061aSmrg echo m68k-atari-mint${UNAME_RELEASE} 374444c061aSmrg exit ;; 375444c061aSmrg atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 376444c061aSmrg echo m68k-atari-mint${UNAME_RELEASE} 377444c061aSmrg exit ;; 378444c061aSmrg *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 379444c061aSmrg echo m68k-atari-mint${UNAME_RELEASE} 380444c061aSmrg exit ;; 381444c061aSmrg milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 382444c061aSmrg echo m68k-milan-mint${UNAME_RELEASE} 383444c061aSmrg exit ;; 384444c061aSmrg hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 385444c061aSmrg echo m68k-hades-mint${UNAME_RELEASE} 386444c061aSmrg exit ;; 387444c061aSmrg *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 388444c061aSmrg echo m68k-unknown-mint${UNAME_RELEASE} 389444c061aSmrg exit ;; 390444c061aSmrg m68k:machten:*:*) 391444c061aSmrg echo m68k-apple-machten${UNAME_RELEASE} 392444c061aSmrg exit ;; 393444c061aSmrg powerpc:machten:*:*) 394444c061aSmrg echo powerpc-apple-machten${UNAME_RELEASE} 395444c061aSmrg exit ;; 396444c061aSmrg RISC*:Mach:*:*) 397444c061aSmrg echo mips-dec-mach_bsd4.3 398444c061aSmrg exit ;; 399444c061aSmrg RISC*:ULTRIX:*:*) 400444c061aSmrg echo mips-dec-ultrix${UNAME_RELEASE} 401444c061aSmrg exit ;; 402444c061aSmrg VAX*:ULTRIX*:*:*) 403444c061aSmrg echo vax-dec-ultrix${UNAME_RELEASE} 404444c061aSmrg exit ;; 405444c061aSmrg 2020:CLIX:*:* | 2430:CLIX:*:*) 406444c061aSmrg echo clipper-intergraph-clix${UNAME_RELEASE} 407444c061aSmrg exit ;; 408444c061aSmrg mips:*:*:UMIPS | mips:*:*:RISCos) 409444c061aSmrg eval $set_cc_for_build 410444c061aSmrg sed 's/^ //' << EOF >$dummy.c 411444c061aSmrg#ifdef __cplusplus 412444c061aSmrg#include <stdio.h> /* for printf() prototype */ 413444c061aSmrg int main (int argc, char *argv[]) { 414444c061aSmrg#else 415444c061aSmrg int main (argc, argv) int argc; char *argv[]; { 416444c061aSmrg#endif 417444c061aSmrg #if defined (host_mips) && defined (MIPSEB) 418444c061aSmrg #if defined (SYSTYPE_SYSV) 419444c061aSmrg printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 420444c061aSmrg #endif 421444c061aSmrg #if defined (SYSTYPE_SVR4) 422444c061aSmrg printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 423444c061aSmrg #endif 424444c061aSmrg #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 425444c061aSmrg printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 426444c061aSmrg #endif 427444c061aSmrg #endif 428444c061aSmrg exit (-1); 429444c061aSmrg } 430444c061aSmrgEOF 431444c061aSmrg $CC_FOR_BUILD -o $dummy $dummy.c && 432444c061aSmrg dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 433444c061aSmrg SYSTEM_NAME=`$dummy $dummyarg` && 434444c061aSmrg { echo "$SYSTEM_NAME"; exit; } 435444c061aSmrg echo mips-mips-riscos${UNAME_RELEASE} 436444c061aSmrg exit ;; 437444c061aSmrg Motorola:PowerMAX_OS:*:*) 438444c061aSmrg echo powerpc-motorola-powermax 439444c061aSmrg exit ;; 440444c061aSmrg Motorola:*:4.3:PL8-*) 441444c061aSmrg echo powerpc-harris-powermax 442444c061aSmrg exit ;; 443444c061aSmrg Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 444444c061aSmrg echo powerpc-harris-powermax 445444c061aSmrg exit ;; 446444c061aSmrg Night_Hawk:Power_UNIX:*:*) 447444c061aSmrg echo powerpc-harris-powerunix 448444c061aSmrg exit ;; 449444c061aSmrg m88k:CX/UX:7*:*) 450444c061aSmrg echo m88k-harris-cxux7 451444c061aSmrg exit ;; 452444c061aSmrg m88k:*:4*:R4*) 453444c061aSmrg echo m88k-motorola-sysv4 454444c061aSmrg exit ;; 455444c061aSmrg m88k:*:3*:R3*) 456444c061aSmrg echo m88k-motorola-sysv3 457444c061aSmrg exit ;; 458444c061aSmrg AViiON:dgux:*:*) 459444c061aSmrg # DG/UX returns AViiON for all architectures 460444c061aSmrg UNAME_PROCESSOR=`/usr/bin/uname -p` 461444c061aSmrg if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 462444c061aSmrg then 463444c061aSmrg if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 464444c061aSmrg [ ${TARGET_BINARY_INTERFACE}x = x ] 465444c061aSmrg then 466444c061aSmrg echo m88k-dg-dgux${UNAME_RELEASE} 467444c061aSmrg else 468444c061aSmrg echo m88k-dg-dguxbcs${UNAME_RELEASE} 469444c061aSmrg fi 470444c061aSmrg else 471444c061aSmrg echo i586-dg-dgux${UNAME_RELEASE} 472444c061aSmrg fi 473444c061aSmrg exit ;; 474444c061aSmrg M88*:DolphinOS:*:*) # DolphinOS (SVR3) 475444c061aSmrg echo m88k-dolphin-sysv3 476444c061aSmrg exit ;; 477444c061aSmrg M88*:*:R3*:*) 478444c061aSmrg # Delta 88k system running SVR3 479444c061aSmrg echo m88k-motorola-sysv3 480444c061aSmrg exit ;; 481444c061aSmrg XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 482444c061aSmrg echo m88k-tektronix-sysv3 483444c061aSmrg exit ;; 484444c061aSmrg Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 485444c061aSmrg echo m68k-tektronix-bsd 486444c061aSmrg exit ;; 487444c061aSmrg *:IRIX*:*:*) 488444c061aSmrg echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 489444c061aSmrg exit ;; 490444c061aSmrg ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 491444c061aSmrg echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 492444c061aSmrg exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 493444c061aSmrg i*86:AIX:*:*) 494444c061aSmrg echo i386-ibm-aix 495444c061aSmrg exit ;; 496444c061aSmrg ia64:AIX:*:*) 497444c061aSmrg if [ -x /usr/bin/oslevel ] ; then 498444c061aSmrg IBM_REV=`/usr/bin/oslevel` 499444c061aSmrg else 500444c061aSmrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 501444c061aSmrg fi 502444c061aSmrg echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 503444c061aSmrg exit ;; 504444c061aSmrg *:AIX:2:3) 505444c061aSmrg if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 506444c061aSmrg eval $set_cc_for_build 507444c061aSmrg sed 's/^ //' << EOF >$dummy.c 508444c061aSmrg #include <sys/systemcfg.h> 509444c061aSmrg 510444c061aSmrg main() 511444c061aSmrg { 512444c061aSmrg if (!__power_pc()) 513444c061aSmrg exit(1); 514444c061aSmrg puts("powerpc-ibm-aix3.2.5"); 515444c061aSmrg exit(0); 516444c061aSmrg } 517444c061aSmrgEOF 518444c061aSmrg if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 519444c061aSmrg then 520444c061aSmrg echo "$SYSTEM_NAME" 521444c061aSmrg else 522444c061aSmrg echo rs6000-ibm-aix3.2.5 523444c061aSmrg fi 524444c061aSmrg elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 525444c061aSmrg echo rs6000-ibm-aix3.2.4 526444c061aSmrg else 527444c061aSmrg echo rs6000-ibm-aix3.2 528444c061aSmrg fi 529444c061aSmrg exit ;; 530444c061aSmrg *:AIX:*:[45]) 531444c061aSmrg IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 532444c061aSmrg if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 533444c061aSmrg IBM_ARCH=rs6000 534444c061aSmrg else 535444c061aSmrg IBM_ARCH=powerpc 536444c061aSmrg fi 537444c061aSmrg if [ -x /usr/bin/oslevel ] ; then 538444c061aSmrg IBM_REV=`/usr/bin/oslevel` 539444c061aSmrg else 540444c061aSmrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 541444c061aSmrg fi 542444c061aSmrg echo ${IBM_ARCH}-ibm-aix${IBM_REV} 543444c061aSmrg exit ;; 544444c061aSmrg *:AIX:*:*) 545444c061aSmrg echo rs6000-ibm-aix 546444c061aSmrg exit ;; 547444c061aSmrg ibmrt:4.4BSD:*|romp-ibm:BSD:*) 548444c061aSmrg echo romp-ibm-bsd4.4 549444c061aSmrg exit ;; 550444c061aSmrg ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 551444c061aSmrg echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 552444c061aSmrg exit ;; # report: romp-ibm BSD 4.3 553444c061aSmrg *:BOSX:*:*) 554444c061aSmrg echo rs6000-bull-bosx 555444c061aSmrg exit ;; 556444c061aSmrg DPX/2?00:B.O.S.:*:*) 557444c061aSmrg echo m68k-bull-sysv3 558444c061aSmrg exit ;; 559444c061aSmrg 9000/[34]??:4.3bsd:1.*:*) 560444c061aSmrg echo m68k-hp-bsd 561444c061aSmrg exit ;; 562444c061aSmrg hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 563444c061aSmrg echo m68k-hp-bsd4.4 564444c061aSmrg exit ;; 565444c061aSmrg 9000/[34678]??:HP-UX:*:*) 566444c061aSmrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 567444c061aSmrg case "${UNAME_MACHINE}" in 568444c061aSmrg 9000/31? ) HP_ARCH=m68000 ;; 569444c061aSmrg 9000/[34]?? ) HP_ARCH=m68k ;; 570444c061aSmrg 9000/[678][0-9][0-9]) 571444c061aSmrg if [ -x /usr/bin/getconf ]; then 572444c061aSmrg sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 573444c061aSmrg sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 574444c061aSmrg case "${sc_cpu_version}" in 575444c061aSmrg 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 576444c061aSmrg 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 577444c061aSmrg 532) # CPU_PA_RISC2_0 578444c061aSmrg case "${sc_kernel_bits}" in 579444c061aSmrg 32) HP_ARCH="hppa2.0n" ;; 580444c061aSmrg 64) HP_ARCH="hppa2.0w" ;; 581444c061aSmrg '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 582444c061aSmrg esac ;; 583444c061aSmrg esac 584444c061aSmrg fi 585444c061aSmrg if [ "${HP_ARCH}" = "" ]; then 586444c061aSmrg eval $set_cc_for_build 587444c061aSmrg sed 's/^ //' << EOF >$dummy.c 588444c061aSmrg 589444c061aSmrg #define _HPUX_SOURCE 590444c061aSmrg #include <stdlib.h> 591444c061aSmrg #include <unistd.h> 592444c061aSmrg 593444c061aSmrg int main () 594444c061aSmrg { 595444c061aSmrg #if defined(_SC_KERNEL_BITS) 596444c061aSmrg long bits = sysconf(_SC_KERNEL_BITS); 597444c061aSmrg #endif 598444c061aSmrg long cpu = sysconf (_SC_CPU_VERSION); 599444c061aSmrg 600444c061aSmrg switch (cpu) 601444c061aSmrg { 602444c061aSmrg case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 603444c061aSmrg case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 604444c061aSmrg case CPU_PA_RISC2_0: 605444c061aSmrg #if defined(_SC_KERNEL_BITS) 606444c061aSmrg switch (bits) 607444c061aSmrg { 608444c061aSmrg case 64: puts ("hppa2.0w"); break; 609444c061aSmrg case 32: puts ("hppa2.0n"); break; 610444c061aSmrg default: puts ("hppa2.0"); break; 611444c061aSmrg } break; 612444c061aSmrg #else /* !defined(_SC_KERNEL_BITS) */ 613444c061aSmrg puts ("hppa2.0"); break; 614444c061aSmrg #endif 615444c061aSmrg default: puts ("hppa1.0"); break; 616444c061aSmrg } 617444c061aSmrg exit (0); 618444c061aSmrg } 619444c061aSmrgEOF 620444c061aSmrg (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 621444c061aSmrg test -z "$HP_ARCH" && HP_ARCH=hppa 622444c061aSmrg fi ;; 623444c061aSmrg esac 624444c061aSmrg if [ ${HP_ARCH} = "hppa2.0w" ] 625444c061aSmrg then 626444c061aSmrg eval $set_cc_for_build 627444c061aSmrg 628444c061aSmrg # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 629444c061aSmrg # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 630444c061aSmrg # generating 64-bit code. GNU and HP use different nomenclature: 631444c061aSmrg # 632444c061aSmrg # $ CC_FOR_BUILD=cc ./config.guess 633444c061aSmrg # => hppa2.0w-hp-hpux11.23 634444c061aSmrg # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 635444c061aSmrg # => hppa64-hp-hpux11.23 636444c061aSmrg 637444c061aSmrg if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | 638444c061aSmrg grep __LP64__ >/dev/null 639444c061aSmrg then 640444c061aSmrg HP_ARCH="hppa2.0w" 641444c061aSmrg else 642444c061aSmrg HP_ARCH="hppa64" 643444c061aSmrg fi 644444c061aSmrg fi 645444c061aSmrg echo ${HP_ARCH}-hp-hpux${HPUX_REV} 646444c061aSmrg exit ;; 647444c061aSmrg ia64:HP-UX:*:*) 648444c061aSmrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 649444c061aSmrg echo ia64-hp-hpux${HPUX_REV} 650444c061aSmrg exit ;; 651444c061aSmrg 3050*:HI-UX:*:*) 652444c061aSmrg eval $set_cc_for_build 653444c061aSmrg sed 's/^ //' << EOF >$dummy.c 654444c061aSmrg #include <unistd.h> 655444c061aSmrg int 656444c061aSmrg main () 657444c061aSmrg { 658444c061aSmrg long cpu = sysconf (_SC_CPU_VERSION); 659444c061aSmrg /* The order matters, because CPU_IS_HP_MC68K erroneously returns 660444c061aSmrg true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 661444c061aSmrg results, however. */ 662444c061aSmrg if (CPU_IS_PA_RISC (cpu)) 663444c061aSmrg { 664444c061aSmrg switch (cpu) 665444c061aSmrg { 666444c061aSmrg case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 667444c061aSmrg case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 668444c061aSmrg case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 669444c061aSmrg default: puts ("hppa-hitachi-hiuxwe2"); break; 670444c061aSmrg } 671444c061aSmrg } 672444c061aSmrg else if (CPU_IS_HP_MC68K (cpu)) 673444c061aSmrg puts ("m68k-hitachi-hiuxwe2"); 674444c061aSmrg else puts ("unknown-hitachi-hiuxwe2"); 675444c061aSmrg exit (0); 676444c061aSmrg } 677444c061aSmrgEOF 678444c061aSmrg $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 679444c061aSmrg { echo "$SYSTEM_NAME"; exit; } 680444c061aSmrg echo unknown-hitachi-hiuxwe2 681444c061aSmrg exit ;; 682444c061aSmrg 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 683444c061aSmrg echo hppa1.1-hp-bsd 684444c061aSmrg exit ;; 685444c061aSmrg 9000/8??:4.3bsd:*:*) 686444c061aSmrg echo hppa1.0-hp-bsd 687444c061aSmrg exit ;; 688444c061aSmrg *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 689444c061aSmrg echo hppa1.0-hp-mpeix 690444c061aSmrg exit ;; 691444c061aSmrg hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 692444c061aSmrg echo hppa1.1-hp-osf 693444c061aSmrg exit ;; 694444c061aSmrg hp8??:OSF1:*:*) 695444c061aSmrg echo hppa1.0-hp-osf 696444c061aSmrg exit ;; 697444c061aSmrg i*86:OSF1:*:*) 698444c061aSmrg if [ -x /usr/sbin/sysversion ] ; then 699444c061aSmrg echo ${UNAME_MACHINE}-unknown-osf1mk 700444c061aSmrg else 701444c061aSmrg echo ${UNAME_MACHINE}-unknown-osf1 702444c061aSmrg fi 703444c061aSmrg exit ;; 704444c061aSmrg parisc*:Lites*:*:*) 705444c061aSmrg echo hppa1.1-hp-lites 706444c061aSmrg exit ;; 707444c061aSmrg C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 708444c061aSmrg echo c1-convex-bsd 709444c061aSmrg exit ;; 710444c061aSmrg C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 711444c061aSmrg if getsysinfo -f scalar_acc 712444c061aSmrg then echo c32-convex-bsd 713444c061aSmrg else echo c2-convex-bsd 714444c061aSmrg fi 715444c061aSmrg exit ;; 716444c061aSmrg C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 717444c061aSmrg echo c34-convex-bsd 718444c061aSmrg exit ;; 719444c061aSmrg C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 720444c061aSmrg echo c38-convex-bsd 721444c061aSmrg exit ;; 722444c061aSmrg C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 723444c061aSmrg echo c4-convex-bsd 724444c061aSmrg exit ;; 725444c061aSmrg CRAY*Y-MP:*:*:*) 726444c061aSmrg echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 727444c061aSmrg exit ;; 728444c061aSmrg CRAY*[A-Z]90:*:*:*) 729444c061aSmrg echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 730444c061aSmrg | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 731444c061aSmrg -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 732444c061aSmrg -e 's/\.[^.]*$/.X/' 733444c061aSmrg exit ;; 734444c061aSmrg CRAY*TS:*:*:*) 735444c061aSmrg echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 736444c061aSmrg exit ;; 737444c061aSmrg CRAY*T3E:*:*:*) 738444c061aSmrg echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 739444c061aSmrg exit ;; 740444c061aSmrg CRAY*SV1:*:*:*) 741444c061aSmrg echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 742444c061aSmrg exit ;; 743444c061aSmrg *:UNICOS/mp:*:*) 744444c061aSmrg echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 745444c061aSmrg exit ;; 746444c061aSmrg F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 747444c061aSmrg FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 748444c061aSmrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 749444c061aSmrg FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 750444c061aSmrg echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 751444c061aSmrg exit ;; 752444c061aSmrg 5000:UNIX_System_V:4.*:*) 753444c061aSmrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 754444c061aSmrg FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` 755444c061aSmrg echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 756444c061aSmrg exit ;; 757444c061aSmrg i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 758444c061aSmrg echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 759444c061aSmrg exit ;; 760444c061aSmrg sparc*:BSD/OS:*:*) 761444c061aSmrg echo sparc-unknown-bsdi${UNAME_RELEASE} 762444c061aSmrg exit ;; 763444c061aSmrg *:BSD/OS:*:*) 764444c061aSmrg echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 765444c061aSmrg exit ;; 766444c061aSmrg *:FreeBSD:*:*) 767444c061aSmrg echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 768444c061aSmrg exit ;; 769444c061aSmrg i*:CYGWIN*:*) 770444c061aSmrg echo ${UNAME_MACHINE}-pc-cygwin 771444c061aSmrg exit ;; 772444c061aSmrg i*:MINGW*:*) 773444c061aSmrg echo ${UNAME_MACHINE}-pc-mingw32 774444c061aSmrg exit ;; 775444c061aSmrg i*:windows32*:*) 776444c061aSmrg # uname -m includes "-pc" on this system. 777444c061aSmrg echo ${UNAME_MACHINE}-mingw32 778444c061aSmrg exit ;; 779444c061aSmrg i*:PW*:*) 780444c061aSmrg echo ${UNAME_MACHINE}-pc-pw32 781444c061aSmrg exit ;; 782444c061aSmrg x86:Interix*:[345]*) 783444c061aSmrg echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//' 784444c061aSmrg exit ;; 785444c061aSmrg [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 786444c061aSmrg echo i${UNAME_MACHINE}-pc-mks 787444c061aSmrg exit ;; 788444c061aSmrg i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 789444c061aSmrg # How do we know it's Interix rather than the generic POSIX subsystem? 790444c061aSmrg # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 791444c061aSmrg # UNAME_MACHINE based on the output of uname instead of i386? 792444c061aSmrg echo i586-pc-interix 793444c061aSmrg exit ;; 794444c061aSmrg i*:UWIN*:*) 795444c061aSmrg echo ${UNAME_MACHINE}-pc-uwin 796444c061aSmrg exit ;; 797444c061aSmrg amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 798444c061aSmrg echo x86_64-unknown-cygwin 799444c061aSmrg exit ;; 800444c061aSmrg p*:CYGWIN*:*) 801444c061aSmrg echo powerpcle-unknown-cygwin 802444c061aSmrg exit ;; 803444c061aSmrg prep*:SunOS:5.*:*) 804444c061aSmrg echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 805444c061aSmrg exit ;; 806444c061aSmrg *:GNU:*:*) 807444c061aSmrg # the GNU system 808444c061aSmrg echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 809444c061aSmrg exit ;; 810444c061aSmrg *:GNU/*:*:*) 811444c061aSmrg # other systems with GNU libc and userland 812444c061aSmrg echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu 813444c061aSmrg exit ;; 814444c061aSmrg i*86:Minix:*:*) 815444c061aSmrg echo ${UNAME_MACHINE}-pc-minix 816444c061aSmrg exit ;; 817444c061aSmrg arm*:Linux:*:*) 818444c061aSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 819444c061aSmrg exit ;; 820444c061aSmrg cris:Linux:*:*) 821444c061aSmrg echo cris-axis-linux-gnu 822444c061aSmrg exit ;; 823444c061aSmrg crisv32:Linux:*:*) 824444c061aSmrg echo crisv32-axis-linux-gnu 825444c061aSmrg exit ;; 826444c061aSmrg frv:Linux:*:*) 827444c061aSmrg echo frv-unknown-linux-gnu 828444c061aSmrg exit ;; 829444c061aSmrg ia64:Linux:*:*) 830444c061aSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 831444c061aSmrg exit ;; 832444c061aSmrg m32r*:Linux:*:*) 833444c061aSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 834444c061aSmrg exit ;; 835444c061aSmrg m68*:Linux:*:*) 836444c061aSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 837444c061aSmrg exit ;; 838444c061aSmrg mips:Linux:*:*) 839444c061aSmrg eval $set_cc_for_build 840444c061aSmrg sed 's/^ //' << EOF >$dummy.c 841444c061aSmrg #undef CPU 842444c061aSmrg #undef mips 843444c061aSmrg #undef mipsel 844444c061aSmrg #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 845444c061aSmrg CPU=mipsel 846444c061aSmrg #else 847444c061aSmrg #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 848444c061aSmrg CPU=mips 849444c061aSmrg #else 850444c061aSmrg CPU= 851444c061aSmrg #endif 852444c061aSmrg #endif 853444c061aSmrgEOF 854444c061aSmrg eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '/^CPU/{s: ::g;p;}'`" 855444c061aSmrg test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 856444c061aSmrg ;; 857444c061aSmrg mips64:Linux:*:*) 858444c061aSmrg eval $set_cc_for_build 859444c061aSmrg sed 's/^ //' << EOF >$dummy.c 860444c061aSmrg #undef CPU 861444c061aSmrg #undef mips64 862444c061aSmrg #undef mips64el 863444c061aSmrg #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 864444c061aSmrg CPU=mips64el 865444c061aSmrg #else 866444c061aSmrg #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 867444c061aSmrg CPU=mips64 868444c061aSmrg #else 869444c061aSmrg CPU= 870444c061aSmrg #endif 871444c061aSmrg #endif 872444c061aSmrgEOF 873444c061aSmrg eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '/^CPU/{s: ::g;p;}'`" 874444c061aSmrg test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 875444c061aSmrg ;; 876444c061aSmrg or32:Linux:*:*) 877444c061aSmrg echo or32-unknown-linux-gnu 878444c061aSmrg exit ;; 879444c061aSmrg ppc:Linux:*:*) 880444c061aSmrg echo powerpc-unknown-linux-gnu 881444c061aSmrg exit ;; 882444c061aSmrg ppc64:Linux:*:*) 883444c061aSmrg echo powerpc64-unknown-linux-gnu 884444c061aSmrg exit ;; 885444c061aSmrg alpha:Linux:*:*) 886444c061aSmrg case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 887444c061aSmrg EV5) UNAME_MACHINE=alphaev5 ;; 888444c061aSmrg EV56) UNAME_MACHINE=alphaev56 ;; 889444c061aSmrg PCA56) UNAME_MACHINE=alphapca56 ;; 890444c061aSmrg PCA57) UNAME_MACHINE=alphapca56 ;; 891444c061aSmrg EV6) UNAME_MACHINE=alphaev6 ;; 892444c061aSmrg EV67) UNAME_MACHINE=alphaev67 ;; 893444c061aSmrg EV68*) UNAME_MACHINE=alphaev68 ;; 894444c061aSmrg esac 895444c061aSmrg objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null 896444c061aSmrg if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi 897444c061aSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 898444c061aSmrg exit ;; 899444c061aSmrg parisc:Linux:*:* | hppa:Linux:*:*) 900444c061aSmrg # Look for CPU level 901444c061aSmrg case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 902444c061aSmrg PA7*) echo hppa1.1-unknown-linux-gnu ;; 903444c061aSmrg PA8*) echo hppa2.0-unknown-linux-gnu ;; 904444c061aSmrg *) echo hppa-unknown-linux-gnu ;; 905444c061aSmrg esac 906444c061aSmrg exit ;; 907444c061aSmrg parisc64:Linux:*:* | hppa64:Linux:*:*) 908444c061aSmrg echo hppa64-unknown-linux-gnu 909444c061aSmrg exit ;; 910444c061aSmrg s390:Linux:*:* | s390x:Linux:*:*) 911444c061aSmrg echo ${UNAME_MACHINE}-ibm-linux 912444c061aSmrg exit ;; 913444c061aSmrg sh64*:Linux:*:*) 914444c061aSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 915444c061aSmrg exit ;; 916444c061aSmrg sh*:Linux:*:*) 917444c061aSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 918444c061aSmrg exit ;; 919444c061aSmrg sparc:Linux:*:* | sparc64:Linux:*:*) 920444c061aSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 921444c061aSmrg exit ;; 922444c061aSmrg vax:Linux:*:*) 923444c061aSmrg echo ${UNAME_MACHINE}-dec-linux-gnu 924444c061aSmrg exit ;; 925444c061aSmrg x86_64:Linux:*:*) 926444c061aSmrg echo x86_64-unknown-linux-gnu 927444c061aSmrg exit ;; 928444c061aSmrg i*86:Linux:*:*) 929444c061aSmrg # The BFD linker knows what the default object file format is, so 930444c061aSmrg # first see if it will tell us. cd to the root directory to prevent 931444c061aSmrg # problems with other programs or directories called `ld' in the path. 932444c061aSmrg # Set LC_ALL=C to ensure ld outputs messages in English. 933444c061aSmrg ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ 934444c061aSmrg | sed -ne '/supported targets:/!d 935444c061aSmrg s/[ ][ ]*/ /g 936444c061aSmrg s/.*supported targets: *// 937444c061aSmrg s/ .*// 938444c061aSmrg p'` 939444c061aSmrg case "$ld_supported_targets" in 940444c061aSmrg elf32-i386) 941444c061aSmrg TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" 942444c061aSmrg ;; 943444c061aSmrg a.out-i386-linux) 944444c061aSmrg echo "${UNAME_MACHINE}-pc-linux-gnuaout" 945444c061aSmrg exit ;; 946444c061aSmrg coff-i386) 947444c061aSmrg echo "${UNAME_MACHINE}-pc-linux-gnucoff" 948444c061aSmrg exit ;; 949444c061aSmrg "") 950444c061aSmrg # Either a pre-BFD a.out linker (linux-gnuoldld) or 951444c061aSmrg # one that does not give us useful --help. 952444c061aSmrg echo "${UNAME_MACHINE}-pc-linux-gnuoldld" 953444c061aSmrg exit ;; 954444c061aSmrg esac 955444c061aSmrg # Determine whether the default compiler is a.out or elf 956444c061aSmrg eval $set_cc_for_build 957444c061aSmrg sed 's/^ //' << EOF >$dummy.c 958444c061aSmrg #include <features.h> 959444c061aSmrg #ifdef __ELF__ 960444c061aSmrg # ifdef __GLIBC__ 961444c061aSmrg # if __GLIBC__ >= 2 962444c061aSmrg LIBC=gnu 963444c061aSmrg # else 964444c061aSmrg LIBC=gnulibc1 965444c061aSmrg # endif 966444c061aSmrg # else 967444c061aSmrg LIBC=gnulibc1 968444c061aSmrg # endif 969444c061aSmrg #else 970444c061aSmrg #if defined(__INTEL_COMPILER) || defined(__PGI) 971444c061aSmrg LIBC=gnu 972444c061aSmrg #else 973444c061aSmrg LIBC=gnuaout 974444c061aSmrg #endif 975444c061aSmrg #endif 976444c061aSmrg #ifdef __dietlibc__ 977444c061aSmrg LIBC=dietlibc 978444c061aSmrg #endif 979444c061aSmrgEOF 980444c061aSmrg eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '/^LIBC/{s: ::g;p;}'`" 981444c061aSmrg test x"${LIBC}" != x && { 982444c061aSmrg echo "${UNAME_MACHINE}-pc-linux-${LIBC}" 983444c061aSmrg exit 984444c061aSmrg } 985444c061aSmrg test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; } 986444c061aSmrg ;; 987444c061aSmrg i*86:DYNIX/ptx:4*:*) 988444c061aSmrg # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 989444c061aSmrg # earlier versions are messed up and put the nodename in both 990444c061aSmrg # sysname and nodename. 991444c061aSmrg echo i386-sequent-sysv4 992444c061aSmrg exit ;; 993444c061aSmrg i*86:UNIX_SV:4.2MP:2.*) 994444c061aSmrg # Unixware is an offshoot of SVR4, but it has its own version 995444c061aSmrg # number series starting with 2... 996444c061aSmrg # I am not positive that other SVR4 systems won't match this, 997444c061aSmrg # I just have to hope. -- rms. 998444c061aSmrg # Use sysv4.2uw... so that sysv4* matches it. 999444c061aSmrg echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 1000444c061aSmrg exit ;; 1001444c061aSmrg i*86:OS/2:*:*) 1002444c061aSmrg # If we were able to find `uname', then EMX Unix compatibility 1003444c061aSmrg # is probably installed. 1004444c061aSmrg echo ${UNAME_MACHINE}-pc-os2-emx 1005444c061aSmrg exit ;; 1006444c061aSmrg i*86:XTS-300:*:STOP) 1007444c061aSmrg echo ${UNAME_MACHINE}-unknown-stop 1008444c061aSmrg exit ;; 1009444c061aSmrg i*86:atheos:*:*) 1010444c061aSmrg echo ${UNAME_MACHINE}-unknown-atheos 1011444c061aSmrg exit ;; 1012444c061aSmrg i*86:syllable:*:*) 1013444c061aSmrg echo ${UNAME_MACHINE}-pc-syllable 1014444c061aSmrg exit ;; 1015444c061aSmrg i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) 1016444c061aSmrg echo i386-unknown-lynxos${UNAME_RELEASE} 1017444c061aSmrg exit ;; 1018444c061aSmrg i*86:*DOS:*:*) 1019444c061aSmrg echo ${UNAME_MACHINE}-pc-msdosdjgpp 1020444c061aSmrg exit ;; 1021444c061aSmrg i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 1022444c061aSmrg UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 1023444c061aSmrg if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 1024444c061aSmrg echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 1025444c061aSmrg else 1026444c061aSmrg echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 1027444c061aSmrg fi 1028444c061aSmrg exit ;; 1029444c061aSmrg i*86:*:5:[678]*) 1030444c061aSmrg # UnixWare 7.x, OpenUNIX and OpenServer 6. 1031444c061aSmrg case `/bin/uname -X | grep "^Machine"` in 1032444c061aSmrg *486*) UNAME_MACHINE=i486 ;; 1033444c061aSmrg *Pentium) UNAME_MACHINE=i586 ;; 1034444c061aSmrg *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 1035444c061aSmrg esac 1036444c061aSmrg echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 1037444c061aSmrg exit ;; 1038444c061aSmrg i*86:*:3.2:*) 1039444c061aSmrg if test -f /usr/options/cb.name; then 1040444c061aSmrg UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 1041444c061aSmrg echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 1042444c061aSmrg elif /bin/uname -X 2>/dev/null >/dev/null ; then 1043444c061aSmrg UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 1044444c061aSmrg (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 1045444c061aSmrg (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 1046444c061aSmrg && UNAME_MACHINE=i586 1047444c061aSmrg (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 1048444c061aSmrg && UNAME_MACHINE=i686 1049444c061aSmrg (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 1050444c061aSmrg && UNAME_MACHINE=i686 1051444c061aSmrg echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 1052444c061aSmrg else 1053444c061aSmrg echo ${UNAME_MACHINE}-pc-sysv32 1054444c061aSmrg fi 1055444c061aSmrg exit ;; 1056444c061aSmrg pc:*:*:*) 1057444c061aSmrg # Left here for compatibility: 1058444c061aSmrg # uname -m prints for DJGPP always 'pc', but it prints nothing about 1059444c061aSmrg # the processor, so we play safe by assuming i386. 1060444c061aSmrg echo i386-pc-msdosdjgpp 1061444c061aSmrg exit ;; 1062444c061aSmrg Intel:Mach:3*:*) 1063444c061aSmrg echo i386-pc-mach3 1064444c061aSmrg exit ;; 1065444c061aSmrg paragon:*:*:*) 1066444c061aSmrg echo i860-intel-osf1 1067444c061aSmrg exit ;; 1068444c061aSmrg i860:*:4.*:*) # i860-SVR4 1069444c061aSmrg if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 1070444c061aSmrg echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 1071444c061aSmrg else # Add other i860-SVR4 vendors below as they are discovered. 1072444c061aSmrg echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 1073444c061aSmrg fi 1074444c061aSmrg exit ;; 1075444c061aSmrg mini*:CTIX:SYS*5:*) 1076444c061aSmrg # "miniframe" 1077444c061aSmrg echo m68010-convergent-sysv 1078444c061aSmrg exit ;; 1079444c061aSmrg mc68k:UNIX:SYSTEM5:3.51m) 1080444c061aSmrg echo m68k-convergent-sysv 1081444c061aSmrg exit ;; 1082444c061aSmrg M680?0:D-NIX:5.3:*) 1083444c061aSmrg echo m68k-diab-dnix 1084444c061aSmrg exit ;; 1085444c061aSmrg M68*:*:R3V[5678]*:*) 1086444c061aSmrg test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 1087444c061aSmrg 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) 1088444c061aSmrg OS_REL='' 1089444c061aSmrg test -r /etc/.relid \ 1090444c061aSmrg && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1091444c061aSmrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1092444c061aSmrg && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 1093444c061aSmrg /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1094444c061aSmrg && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1095444c061aSmrg 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 1096444c061aSmrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1097444c061aSmrg && { echo i486-ncr-sysv4; exit; } ;; 1098444c061aSmrg m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 1099444c061aSmrg echo m68k-unknown-lynxos${UNAME_RELEASE} 1100444c061aSmrg exit ;; 1101444c061aSmrg mc68030:UNIX_System_V:4.*:*) 1102444c061aSmrg echo m68k-atari-sysv4 1103444c061aSmrg exit ;; 1104444c061aSmrg TSUNAMI:LynxOS:2.*:*) 1105444c061aSmrg echo sparc-unknown-lynxos${UNAME_RELEASE} 1106444c061aSmrg exit ;; 1107444c061aSmrg rs6000:LynxOS:2.*:*) 1108444c061aSmrg echo rs6000-unknown-lynxos${UNAME_RELEASE} 1109444c061aSmrg exit ;; 1110444c061aSmrg PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) 1111444c061aSmrg echo powerpc-unknown-lynxos${UNAME_RELEASE} 1112444c061aSmrg exit ;; 1113444c061aSmrg SM[BE]S:UNIX_SV:*:*) 1114444c061aSmrg echo mips-dde-sysv${UNAME_RELEASE} 1115444c061aSmrg exit ;; 1116444c061aSmrg RM*:ReliantUNIX-*:*:*) 1117444c061aSmrg echo mips-sni-sysv4 1118444c061aSmrg exit ;; 1119444c061aSmrg RM*:SINIX-*:*:*) 1120444c061aSmrg echo mips-sni-sysv4 1121444c061aSmrg exit ;; 1122444c061aSmrg *:SINIX-*:*:*) 1123444c061aSmrg if uname -p 2>/dev/null >/dev/null ; then 1124444c061aSmrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 1125444c061aSmrg echo ${UNAME_MACHINE}-sni-sysv4 1126444c061aSmrg else 1127444c061aSmrg echo ns32k-sni-sysv 1128444c061aSmrg fi 1129444c061aSmrg exit ;; 1130444c061aSmrg PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 1131444c061aSmrg # says <Richard.M.Bartel@ccMail.Census.GOV> 1132444c061aSmrg echo i586-unisys-sysv4 1133444c061aSmrg exit ;; 1134444c061aSmrg *:UNIX_System_V:4*:FTX*) 1135444c061aSmrg # From Gerald Hewes <hewes@openmarket.com>. 1136444c061aSmrg # How about differentiating between stratus architectures? -djm 1137444c061aSmrg echo hppa1.1-stratus-sysv4 1138444c061aSmrg exit ;; 1139444c061aSmrg *:*:*:FTX*) 1140444c061aSmrg # From seanf@swdc.stratus.com. 1141444c061aSmrg echo i860-stratus-sysv4 1142444c061aSmrg exit ;; 1143444c061aSmrg i*86:VOS:*:*) 1144444c061aSmrg # From Paul.Green@stratus.com. 1145444c061aSmrg echo ${UNAME_MACHINE}-stratus-vos 1146444c061aSmrg exit ;; 1147444c061aSmrg *:VOS:*:*) 1148444c061aSmrg # From Paul.Green@stratus.com. 1149444c061aSmrg echo hppa1.1-stratus-vos 1150444c061aSmrg exit ;; 1151444c061aSmrg mc68*:A/UX:*:*) 1152444c061aSmrg echo m68k-apple-aux${UNAME_RELEASE} 1153444c061aSmrg exit ;; 1154444c061aSmrg news*:NEWS-OS:6*:*) 1155444c061aSmrg echo mips-sony-newsos6 1156444c061aSmrg exit ;; 1157444c061aSmrg R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 1158444c061aSmrg if [ -d /usr/nec ]; then 1159444c061aSmrg echo mips-nec-sysv${UNAME_RELEASE} 1160444c061aSmrg else 1161444c061aSmrg echo mips-unknown-sysv${UNAME_RELEASE} 1162444c061aSmrg fi 1163444c061aSmrg exit ;; 1164444c061aSmrg BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 1165444c061aSmrg echo powerpc-be-beos 1166444c061aSmrg exit ;; 1167444c061aSmrg BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 1168444c061aSmrg echo powerpc-apple-beos 1169444c061aSmrg exit ;; 1170444c061aSmrg BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 1171444c061aSmrg echo i586-pc-beos 1172444c061aSmrg exit ;; 1173444c061aSmrg SX-4:SUPER-UX:*:*) 1174444c061aSmrg echo sx4-nec-superux${UNAME_RELEASE} 1175444c061aSmrg exit ;; 1176444c061aSmrg SX-5:SUPER-UX:*:*) 1177444c061aSmrg echo sx5-nec-superux${UNAME_RELEASE} 1178444c061aSmrg exit ;; 1179444c061aSmrg SX-6:SUPER-UX:*:*) 1180444c061aSmrg echo sx6-nec-superux${UNAME_RELEASE} 1181444c061aSmrg exit ;; 1182444c061aSmrg Power*:Rhapsody:*:*) 1183444c061aSmrg echo powerpc-apple-rhapsody${UNAME_RELEASE} 1184444c061aSmrg exit ;; 1185444c061aSmrg *:Rhapsody:*:*) 1186444c061aSmrg echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 1187444c061aSmrg exit ;; 1188444c061aSmrg *:Darwin:*:*) 1189444c061aSmrg UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 1190444c061aSmrg case $UNAME_PROCESSOR in 1191444c061aSmrg unknown) UNAME_PROCESSOR=powerpc ;; 1192444c061aSmrg esac 1193444c061aSmrg echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 1194444c061aSmrg exit ;; 1195444c061aSmrg *:procnto*:*:* | *:QNX:[0123456789]*:*) 1196444c061aSmrg UNAME_PROCESSOR=`uname -p` 1197444c061aSmrg if test "$UNAME_PROCESSOR" = "x86"; then 1198444c061aSmrg UNAME_PROCESSOR=i386 1199444c061aSmrg UNAME_MACHINE=pc 1200444c061aSmrg fi 1201444c061aSmrg echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 1202444c061aSmrg exit ;; 1203444c061aSmrg *:QNX:*:4*) 1204444c061aSmrg echo i386-pc-qnx 1205444c061aSmrg exit ;; 1206444c061aSmrg NSE-?:NONSTOP_KERNEL:*:*) 1207444c061aSmrg echo nse-tandem-nsk${UNAME_RELEASE} 1208444c061aSmrg exit ;; 1209444c061aSmrg NSR-?:NONSTOP_KERNEL:*:*) 1210444c061aSmrg echo nsr-tandem-nsk${UNAME_RELEASE} 1211444c061aSmrg exit ;; 1212444c061aSmrg *:NonStop-UX:*:*) 1213444c061aSmrg echo mips-compaq-nonstopux 1214444c061aSmrg exit ;; 1215444c061aSmrg BS2000:POSIX*:*:*) 1216444c061aSmrg echo bs2000-siemens-sysv 1217444c061aSmrg exit ;; 1218444c061aSmrg DS/*:UNIX_System_V:*:*) 1219444c061aSmrg echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 1220444c061aSmrg exit ;; 1221444c061aSmrg *:Plan9:*:*) 1222444c061aSmrg # "uname -m" is not consistent, so use $cputype instead. 386 1223444c061aSmrg # is converted to i386 for consistency with other x86 1224444c061aSmrg # operating systems. 1225444c061aSmrg if test "$cputype" = "386"; then 1226444c061aSmrg UNAME_MACHINE=i386 1227444c061aSmrg else 1228444c061aSmrg UNAME_MACHINE="$cputype" 1229444c061aSmrg fi 1230444c061aSmrg echo ${UNAME_MACHINE}-unknown-plan9 1231444c061aSmrg exit ;; 1232444c061aSmrg *:TOPS-10:*:*) 1233444c061aSmrg echo pdp10-unknown-tops10 1234444c061aSmrg exit ;; 1235444c061aSmrg *:TENEX:*:*) 1236444c061aSmrg echo pdp10-unknown-tenex 1237444c061aSmrg exit ;; 1238444c061aSmrg KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 1239444c061aSmrg echo pdp10-dec-tops20 1240444c061aSmrg exit ;; 1241444c061aSmrg XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 1242444c061aSmrg echo pdp10-xkl-tops20 1243444c061aSmrg exit ;; 1244444c061aSmrg *:TOPS-20:*:*) 1245444c061aSmrg echo pdp10-unknown-tops20 1246444c061aSmrg exit ;; 1247444c061aSmrg *:ITS:*:*) 1248444c061aSmrg echo pdp10-unknown-its 1249444c061aSmrg exit ;; 1250444c061aSmrg SEI:*:*:SEIUX) 1251444c061aSmrg echo mips-sei-seiux${UNAME_RELEASE} 1252444c061aSmrg exit ;; 1253444c061aSmrg *:DragonFly:*:*) 1254444c061aSmrg echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 1255444c061aSmrg exit ;; 1256444c061aSmrg *:*VMS:*:*) 1257444c061aSmrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 1258444c061aSmrg case "${UNAME_MACHINE}" in 1259444c061aSmrg A*) echo alpha-dec-vms ; exit ;; 1260444c061aSmrg I*) echo ia64-dec-vms ; exit ;; 1261444c061aSmrg V*) echo vax-dec-vms ; exit ;; 1262444c061aSmrg esac ;; 1263444c061aSmrg *:XENIX:*:SysV) 1264444c061aSmrg echo i386-pc-xenix 1265444c061aSmrg exit ;; 1266444c061aSmrg i*86:skyos:*:*) 1267444c061aSmrg echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' 1268444c061aSmrg exit ;; 1269444c061aSmrg i*86:rdos:*:*) 1270444c061aSmrg echo ${UNAME_MACHINE}-pc-rdos 1271444c061aSmrg exit ;; 1272444c061aSmrgesac 1273444c061aSmrg 1274444c061aSmrg#echo '(No uname command or uname output not recognized.)' 1>&2 1275444c061aSmrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 1276444c061aSmrg 1277444c061aSmrgeval $set_cc_for_build 1278444c061aSmrgcat >$dummy.c <<EOF 1279444c061aSmrg#ifdef _SEQUENT_ 1280444c061aSmrg# include <sys/types.h> 1281444c061aSmrg# include <sys/utsname.h> 1282444c061aSmrg#endif 1283444c061aSmrgmain () 1284444c061aSmrg{ 1285444c061aSmrg#if defined (sony) 1286444c061aSmrg#if defined (MIPSEB) 1287444c061aSmrg /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, 1288444c061aSmrg I don't know.... */ 1289444c061aSmrg printf ("mips-sony-bsd\n"); exit (0); 1290444c061aSmrg#else 1291444c061aSmrg#include <sys/param.h> 1292444c061aSmrg printf ("m68k-sony-newsos%s\n", 1293444c061aSmrg#ifdef NEWSOS4 1294444c061aSmrg "4" 1295444c061aSmrg#else 1296444c061aSmrg "" 1297444c061aSmrg#endif 1298444c061aSmrg ); exit (0); 1299444c061aSmrg#endif 1300444c061aSmrg#endif 1301444c061aSmrg 1302444c061aSmrg#if defined (__arm) && defined (__acorn) && defined (__unix) 1303444c061aSmrg printf ("arm-acorn-riscix\n"); exit (0); 1304444c061aSmrg#endif 1305444c061aSmrg 1306444c061aSmrg#if defined (hp300) && !defined (hpux) 1307444c061aSmrg printf ("m68k-hp-bsd\n"); exit (0); 1308444c061aSmrg#endif 1309444c061aSmrg 1310444c061aSmrg#if defined (NeXT) 1311444c061aSmrg#if !defined (__ARCHITECTURE__) 1312444c061aSmrg#define __ARCHITECTURE__ "m68k" 1313444c061aSmrg#endif 1314444c061aSmrg int version; 1315444c061aSmrg version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; 1316444c061aSmrg if (version < 4) 1317444c061aSmrg printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); 1318444c061aSmrg else 1319444c061aSmrg printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); 1320444c061aSmrg exit (0); 1321444c061aSmrg#endif 1322444c061aSmrg 1323444c061aSmrg#if defined (MULTIMAX) || defined (n16) 1324444c061aSmrg#if defined (UMAXV) 1325444c061aSmrg printf ("ns32k-encore-sysv\n"); exit (0); 1326444c061aSmrg#else 1327444c061aSmrg#if defined (CMU) 1328444c061aSmrg printf ("ns32k-encore-mach\n"); exit (0); 1329444c061aSmrg#else 1330444c061aSmrg printf ("ns32k-encore-bsd\n"); exit (0); 1331444c061aSmrg#endif 1332444c061aSmrg#endif 1333444c061aSmrg#endif 1334444c061aSmrg 1335444c061aSmrg#if defined (__386BSD__) 1336444c061aSmrg printf ("i386-pc-bsd\n"); exit (0); 1337444c061aSmrg#endif 1338444c061aSmrg 1339444c061aSmrg#if defined (sequent) 1340444c061aSmrg#if defined (i386) 1341444c061aSmrg printf ("i386-sequent-dynix\n"); exit (0); 1342444c061aSmrg#endif 1343444c061aSmrg#if defined (ns32000) 1344444c061aSmrg printf ("ns32k-sequent-dynix\n"); exit (0); 1345444c061aSmrg#endif 1346444c061aSmrg#endif 1347444c061aSmrg 1348444c061aSmrg#if defined (_SEQUENT_) 1349444c061aSmrg struct utsname un; 1350444c061aSmrg 1351444c061aSmrg uname(&un); 1352444c061aSmrg 1353444c061aSmrg if (strncmp(un.version, "V2", 2) == 0) { 1354444c061aSmrg printf ("i386-sequent-ptx2\n"); exit (0); 1355444c061aSmrg } 1356444c061aSmrg if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ 1357444c061aSmrg printf ("i386-sequent-ptx1\n"); exit (0); 1358444c061aSmrg } 1359444c061aSmrg printf ("i386-sequent-ptx\n"); exit (0); 1360444c061aSmrg 1361444c061aSmrg#endif 1362444c061aSmrg 1363444c061aSmrg#if defined (vax) 1364444c061aSmrg# if !defined (ultrix) 1365444c061aSmrg# include <sys/param.h> 1366444c061aSmrg# if defined (BSD) 1367444c061aSmrg# if BSD == 43 1368444c061aSmrg printf ("vax-dec-bsd4.3\n"); exit (0); 1369444c061aSmrg# else 1370444c061aSmrg# if BSD == 199006 1371444c061aSmrg printf ("vax-dec-bsd4.3reno\n"); exit (0); 1372444c061aSmrg# else 1373444c061aSmrg printf ("vax-dec-bsd\n"); exit (0); 1374444c061aSmrg# endif 1375444c061aSmrg# endif 1376444c061aSmrg# else 1377444c061aSmrg printf ("vax-dec-bsd\n"); exit (0); 1378444c061aSmrg# endif 1379444c061aSmrg# else 1380444c061aSmrg printf ("vax-dec-ultrix\n"); exit (0); 1381444c061aSmrg# endif 1382444c061aSmrg#endif 1383444c061aSmrg 1384444c061aSmrg#if defined (alliant) && defined (i860) 1385444c061aSmrg printf ("i860-alliant-bsd\n"); exit (0); 1386444c061aSmrg#endif 1387444c061aSmrg 1388444c061aSmrg exit (1); 1389444c061aSmrg} 1390444c061aSmrgEOF 1391444c061aSmrg 1392444c061aSmrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && 1393444c061aSmrg { echo "$SYSTEM_NAME"; exit; } 1394444c061aSmrg 1395444c061aSmrg# Apollos put the system type in the environment. 1396444c061aSmrg 1397444c061aSmrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } 1398444c061aSmrg 1399444c061aSmrg# Convex versions that predate uname can use getsysinfo(1) 1400444c061aSmrg 1401444c061aSmrgif [ -x /usr/convex/getsysinfo ] 1402444c061aSmrgthen 1403444c061aSmrg case `getsysinfo -f cpu_type` in 1404444c061aSmrg c1*) 1405444c061aSmrg echo c1-convex-bsd 1406444c061aSmrg exit ;; 1407444c061aSmrg c2*) 1408444c061aSmrg if getsysinfo -f scalar_acc 1409444c061aSmrg then echo c32-convex-bsd 1410444c061aSmrg else echo c2-convex-bsd 1411444c061aSmrg fi 1412444c061aSmrg exit ;; 1413444c061aSmrg c34*) 1414444c061aSmrg echo c34-convex-bsd 1415444c061aSmrg exit ;; 1416444c061aSmrg c38*) 1417444c061aSmrg echo c38-convex-bsd 1418444c061aSmrg exit ;; 1419444c061aSmrg c4*) 1420444c061aSmrg echo c4-convex-bsd 1421444c061aSmrg exit ;; 1422444c061aSmrg esac 1423444c061aSmrgfi 1424444c061aSmrg 1425444c061aSmrgcat >&2 <<EOF 1426444c061aSmrg$0: unable to guess system type 1427444c061aSmrg 1428444c061aSmrgThis script, last modified $timestamp, has failed to recognize 1429444c061aSmrgthe operating system you are using. It is advised that you 1430444c061aSmrgdownload the most up to date version of the config scripts from 1431444c061aSmrg 1432444c061aSmrg http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess 1433444c061aSmrgand 1434444c061aSmrg http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub 1435444c061aSmrg 1436444c061aSmrgIf the version you run ($0) is already up to date, please 1437444c061aSmrgsend the following data and any information you think might be 1438444c061aSmrgpertinent to <config-patches@gnu.org> in order to provide the needed 1439444c061aSmrginformation to handle your system. 1440444c061aSmrg 1441444c061aSmrgconfig.guess timestamp = $timestamp 1442444c061aSmrg 1443444c061aSmrguname -m = `(uname -m) 2>/dev/null || echo unknown` 1444444c061aSmrguname -r = `(uname -r) 2>/dev/null || echo unknown` 1445444c061aSmrguname -s = `(uname -s) 2>/dev/null || echo unknown` 1446444c061aSmrguname -v = `(uname -v) 2>/dev/null || echo unknown` 1447444c061aSmrg 1448444c061aSmrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 1449444c061aSmrg/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 1450444c061aSmrg 1451444c061aSmrghostinfo = `(hostinfo) 2>/dev/null` 1452444c061aSmrg/bin/universe = `(/bin/universe) 2>/dev/null` 1453444c061aSmrg/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 1454444c061aSmrg/bin/arch = `(/bin/arch) 2>/dev/null` 1455444c061aSmrg/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 1456444c061aSmrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 1457444c061aSmrg 1458444c061aSmrgUNAME_MACHINE = ${UNAME_MACHINE} 1459444c061aSmrgUNAME_RELEASE = ${UNAME_RELEASE} 1460444c061aSmrgUNAME_SYSTEM = ${UNAME_SYSTEM} 1461444c061aSmrgUNAME_VERSION = ${UNAME_VERSION} 1462444c061aSmrgEOF 1463444c061aSmrg 1464444c061aSmrgexit 1 1465444c061aSmrg 1466444c061aSmrg# Local variables: 1467444c061aSmrg# eval: (add-hook 'write-file-hooks 'time-stamp) 1468444c061aSmrg# time-stamp-start: "timestamp='" 1469444c061aSmrg# time-stamp-format: "%:y-%02m-%02d" 1470444c061aSmrg# time-stamp-end: "'" 1471444c061aSmrg# End: 1472