config.guess revision 876ff6fe
1876ff6feSmrg#! /bin/sh 2876ff6feSmrg# Attempt to guess a canonical system name. 3876ff6feSmrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4876ff6feSmrg# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. 5876ff6feSmrg 6876ff6feSmrgtimestamp='2005-07-08' 7876ff6feSmrg 8876ff6feSmrg# This file is free software; you can redistribute it and/or modify it 9876ff6feSmrg# under the terms of the GNU General Public License as published by 10876ff6feSmrg# the Free Software Foundation; either version 2 of the License, or 11876ff6feSmrg# (at your option) any later version. 12876ff6feSmrg# 13876ff6feSmrg# This program is distributed in the hope that it will be useful, but 14876ff6feSmrg# WITHOUT ANY WARRANTY; without even the implied warranty of 15876ff6feSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 16876ff6feSmrg# General Public License for more details. 17876ff6feSmrg# 18876ff6feSmrg# You should have received a copy of the GNU General Public License 19876ff6feSmrg# along with this program; if not, write to the Free Software 20876ff6feSmrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 21876ff6feSmrg# 02110-1301, USA. 22876ff6feSmrg# 23876ff6feSmrg# As a special exception to the GNU General Public License, if you 24876ff6feSmrg# distribute this file as part of a program that contains a 25876ff6feSmrg# configuration script generated by Autoconf, you may include it under 26876ff6feSmrg# the same distribution terms that you use for the rest of that program. 27876ff6feSmrg 28876ff6feSmrg 29876ff6feSmrg# Originally written by Per Bothner <per@bothner.com>. 30876ff6feSmrg# Please send patches to <config-patches@gnu.org>. Submit a context 31876ff6feSmrg# diff and a properly formatted ChangeLog entry. 32876ff6feSmrg# 33876ff6feSmrg# This script attempts to guess a canonical system name similar to 34876ff6feSmrg# config.sub. If it succeeds, it prints the system name on stdout, and 35876ff6feSmrg# exits with 0. Otherwise, it exits with 1. 36876ff6feSmrg# 37876ff6feSmrg# The plan is that this can be called by configure scripts if you 38876ff6feSmrg# don't specify an explicit build system type. 39876ff6feSmrg 40876ff6feSmrgme=`echo "$0" | sed -e 's,.*/,,'` 41876ff6feSmrg 42876ff6feSmrgusage="\ 43876ff6feSmrgUsage: $0 [OPTION] 44876ff6feSmrg 45876ff6feSmrgOutput the configuration name of the system \`$me' is run on. 46876ff6feSmrg 47876ff6feSmrgOperation modes: 48876ff6feSmrg -h, --help print this help, then exit 49876ff6feSmrg -t, --time-stamp print date of last modification, then exit 50876ff6feSmrg -v, --version print version number, then exit 51876ff6feSmrg 52876ff6feSmrgReport bugs and patches to <config-patches@gnu.org>." 53876ff6feSmrg 54876ff6feSmrgversion="\ 55876ff6feSmrgGNU config.guess ($timestamp) 56876ff6feSmrg 57876ff6feSmrgOriginally written by Per Bothner. 58876ff6feSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 59876ff6feSmrgFree Software Foundation, Inc. 60876ff6feSmrg 61876ff6feSmrgThis is free software; see the source for copying conditions. There is NO 62876ff6feSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 63876ff6feSmrg 64876ff6feSmrghelp=" 65876ff6feSmrgTry \`$me --help' for more information." 66876ff6feSmrg 67876ff6feSmrg# Parse command line 68876ff6feSmrgwhile test $# -gt 0 ; do 69876ff6feSmrg case $1 in 70876ff6feSmrg --time-stamp | --time* | -t ) 71876ff6feSmrg echo "$timestamp" ; exit ;; 72876ff6feSmrg --version | -v ) 73876ff6feSmrg echo "$version" ; exit ;; 74876ff6feSmrg --help | --h* | -h ) 75876ff6feSmrg echo "$usage"; exit ;; 76876ff6feSmrg -- ) # Stop option processing 77876ff6feSmrg shift; break ;; 78876ff6feSmrg - ) # Use stdin as input. 79876ff6feSmrg break ;; 80876ff6feSmrg -* ) 81876ff6feSmrg echo "$me: invalid option $1$help" >&2 82876ff6feSmrg exit 1 ;; 83876ff6feSmrg * ) 84876ff6feSmrg break ;; 85876ff6feSmrg esac 86876ff6feSmrgdone 87876ff6feSmrg 88876ff6feSmrgif test $# != 0; then 89876ff6feSmrg echo "$me: too many arguments$help" >&2 90876ff6feSmrg exit 1 91876ff6feSmrgfi 92876ff6feSmrg 93876ff6feSmrgtrap 'exit 1' 1 2 15 94876ff6feSmrg 95876ff6feSmrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 96876ff6feSmrg# compiler to aid in system detection is discouraged as it requires 97876ff6feSmrg# temporary files to be created and, as you can see below, it is a 98876ff6feSmrg# headache to deal with in a portable fashion. 99876ff6feSmrg 100876ff6feSmrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 101876ff6feSmrg# use `HOST_CC' if defined, but it is deprecated. 102876ff6feSmrg 103876ff6feSmrg# Portable tmp directory creation inspired by the Autoconf team. 104876ff6feSmrg 105876ff6feSmrgset_cc_for_build=' 106876ff6feSmrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; 107876ff6feSmrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 108876ff6feSmrg: ${TMPDIR=/tmp} ; 109876ff6feSmrg { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 110876ff6feSmrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 111876ff6feSmrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || 112876ff6feSmrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; 113876ff6feSmrgdummy=$tmp/dummy ; 114876ff6feSmrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; 115876ff6feSmrgcase $CC_FOR_BUILD,$HOST_CC,$CC in 116876ff6feSmrg ,,) echo "int x;" > $dummy.c ; 117876ff6feSmrg for c in cc gcc c89 c99 ; do 118876ff6feSmrg if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then 119876ff6feSmrg CC_FOR_BUILD="$c"; break ; 120876ff6feSmrg fi ; 121876ff6feSmrg done ; 122876ff6feSmrg if test x"$CC_FOR_BUILD" = x ; then 123876ff6feSmrg CC_FOR_BUILD=no_compiler_found ; 124876ff6feSmrg fi 125876ff6feSmrg ;; 126876ff6feSmrg ,,*) CC_FOR_BUILD=$CC ;; 127876ff6feSmrg ,*,*) CC_FOR_BUILD=$HOST_CC ;; 128876ff6feSmrgesac ; set_cc_for_build= ;' 129876ff6feSmrg 130876ff6feSmrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 131876ff6feSmrg# (ghazi@noc.rutgers.edu 1994-08-24) 132876ff6feSmrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then 133876ff6feSmrg PATH=$PATH:/.attbin ; export PATH 134876ff6feSmrgfi 135876ff6feSmrg 136876ff6feSmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 137876ff6feSmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 138876ff6feSmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 139876ff6feSmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 140876ff6feSmrg 141876ff6feSmrg# Note: order is significant - the case branches are not exclusive. 142876ff6feSmrg 143876ff6feSmrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 144876ff6feSmrg *:NetBSD:*:*) 145876ff6feSmrg # NetBSD (nbsd) targets should (where applicable) match one or 146876ff6feSmrg # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, 147876ff6feSmrg # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 148876ff6feSmrg # switched to ELF, *-*-netbsd* would select the old 149876ff6feSmrg # object file format. This provides both forward 150876ff6feSmrg # compatibility and a consistent mechanism for selecting the 151876ff6feSmrg # object file format. 152876ff6feSmrg # 153876ff6feSmrg # Note: NetBSD doesn't particularly care about the vendor 154876ff6feSmrg # portion of the name. We always set it to "unknown". 155876ff6feSmrg sysctl="sysctl -n hw.machine_arch" 156876ff6feSmrg UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ 157876ff6feSmrg /usr/sbin/$sysctl 2>/dev/null || echo unknown)` 158876ff6feSmrg case "${UNAME_MACHINE_ARCH}" in 159876ff6feSmrg armeb) machine=armeb-unknown ;; 160876ff6feSmrg arm*) machine=arm-unknown ;; 161876ff6feSmrg sh3el) machine=shl-unknown ;; 162876ff6feSmrg sh3eb) machine=sh-unknown ;; 163876ff6feSmrg *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 164876ff6feSmrg esac 165876ff6feSmrg # The Operating System including object format, if it has switched 166876ff6feSmrg # to ELF recently, or will in the future. 167876ff6feSmrg case "${UNAME_MACHINE_ARCH}" in 168876ff6feSmrg arm*|i386|m68k|ns32k|sh3*|sparc|vax) 169876ff6feSmrg eval $set_cc_for_build 170876ff6feSmrg if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 171876ff6feSmrg | grep __ELF__ >/dev/null 172876ff6feSmrg then 173876ff6feSmrg # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 174876ff6feSmrg # Return netbsd for either. FIX? 175876ff6feSmrg os=netbsd 176876ff6feSmrg else 177876ff6feSmrg os=netbsdelf 178876ff6feSmrg fi 179876ff6feSmrg ;; 180876ff6feSmrg *) 181876ff6feSmrg os=netbsd 182876ff6feSmrg ;; 183876ff6feSmrg esac 184876ff6feSmrg # The OS release 185876ff6feSmrg # Debian GNU/NetBSD machines have a different userland, and 186876ff6feSmrg # thus, need a distinct triplet. However, they do not need 187876ff6feSmrg # kernel version information, so it can be replaced with a 188876ff6feSmrg # suitable tag, in the style of linux-gnu. 189876ff6feSmrg case "${UNAME_VERSION}" in 190876ff6feSmrg Debian*) 191876ff6feSmrg release='-gnu' 192876ff6feSmrg ;; 193876ff6feSmrg *) 194876ff6feSmrg release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` 195876ff6feSmrg ;; 196876ff6feSmrg esac 197876ff6feSmrg # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 198876ff6feSmrg # contains redundant information, the shorter form: 199876ff6feSmrg # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 200876ff6feSmrg echo "${machine}-${os}${release}" 201876ff6feSmrg exit ;; 202876ff6feSmrg *:OpenBSD:*:*) 203876ff6feSmrg UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 204876ff6feSmrg echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 205876ff6feSmrg exit ;; 206876ff6feSmrg *:ekkoBSD:*:*) 207876ff6feSmrg echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 208876ff6feSmrg exit ;; 209876ff6feSmrg macppc:MirBSD:*:*) 210876ff6feSmrg echo powerppc-unknown-mirbsd${UNAME_RELEASE} 211876ff6feSmrg exit ;; 212876ff6feSmrg *:MirBSD:*:*) 213876ff6feSmrg echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 214876ff6feSmrg exit ;; 215876ff6feSmrg alpha:OSF1:*:*) 216876ff6feSmrg case $UNAME_RELEASE in 217876ff6feSmrg *4.0) 218876ff6feSmrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 219876ff6feSmrg ;; 220876ff6feSmrg *5.*) 221876ff6feSmrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 222876ff6feSmrg ;; 223876ff6feSmrg esac 224876ff6feSmrg # According to Compaq, /usr/sbin/psrinfo has been available on 225876ff6feSmrg # OSF/1 and Tru64 systems produced since 1995. I hope that 226876ff6feSmrg # covers most systems running today. This code pipes the CPU 227876ff6feSmrg # types through head -n 1, so we only detect the type of CPU 0. 228876ff6feSmrg ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 229876ff6feSmrg case "$ALPHA_CPU_TYPE" in 230876ff6feSmrg "EV4 (21064)") 231876ff6feSmrg UNAME_MACHINE="alpha" ;; 232876ff6feSmrg "EV4.5 (21064)") 233876ff6feSmrg UNAME_MACHINE="alpha" ;; 234876ff6feSmrg "LCA4 (21066/21068)") 235876ff6feSmrg UNAME_MACHINE="alpha" ;; 236876ff6feSmrg "EV5 (21164)") 237876ff6feSmrg UNAME_MACHINE="alphaev5" ;; 238876ff6feSmrg "EV5.6 (21164A)") 239876ff6feSmrg UNAME_MACHINE="alphaev56" ;; 240876ff6feSmrg "EV5.6 (21164PC)") 241876ff6feSmrg UNAME_MACHINE="alphapca56" ;; 242876ff6feSmrg "EV5.7 (21164PC)") 243876ff6feSmrg UNAME_MACHINE="alphapca57" ;; 244876ff6feSmrg "EV6 (21264)") 245876ff6feSmrg UNAME_MACHINE="alphaev6" ;; 246876ff6feSmrg "EV6.7 (21264A)") 247876ff6feSmrg UNAME_MACHINE="alphaev67" ;; 248876ff6feSmrg "EV6.8CB (21264C)") 249876ff6feSmrg UNAME_MACHINE="alphaev68" ;; 250876ff6feSmrg "EV6.8AL (21264B)") 251876ff6feSmrg UNAME_MACHINE="alphaev68" ;; 252876ff6feSmrg "EV6.8CX (21264D)") 253876ff6feSmrg UNAME_MACHINE="alphaev68" ;; 254876ff6feSmrg "EV6.9A (21264/EV69A)") 255876ff6feSmrg UNAME_MACHINE="alphaev69" ;; 256876ff6feSmrg "EV7 (21364)") 257876ff6feSmrg UNAME_MACHINE="alphaev7" ;; 258876ff6feSmrg "EV7.9 (21364A)") 259876ff6feSmrg UNAME_MACHINE="alphaev79" ;; 260876ff6feSmrg esac 261876ff6feSmrg # A Pn.n version is a patched version. 262876ff6feSmrg # A Vn.n version is a released version. 263876ff6feSmrg # A Tn.n version is a released field test version. 264876ff6feSmrg # A Xn.n version is an unreleased experimental baselevel. 265876ff6feSmrg # 1.2 uses "1.2" for uname -r. 266876ff6feSmrg echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 267876ff6feSmrg exit ;; 268876ff6feSmrg Alpha\ *:Windows_NT*:*) 269876ff6feSmrg # How do we know it's Interix rather than the generic POSIX subsystem? 270876ff6feSmrg # Should we change UNAME_MACHINE based on the output of uname instead 271876ff6feSmrg # of the specific Alpha model? 272876ff6feSmrg echo alpha-pc-interix 273876ff6feSmrg exit ;; 274876ff6feSmrg 21064:Windows_NT:50:3) 275876ff6feSmrg echo alpha-dec-winnt3.5 276876ff6feSmrg exit ;; 277876ff6feSmrg Amiga*:UNIX_System_V:4.0:*) 278876ff6feSmrg echo m68k-unknown-sysv4 279876ff6feSmrg exit ;; 280876ff6feSmrg *:[Aa]miga[Oo][Ss]:*:*) 281876ff6feSmrg echo ${UNAME_MACHINE}-unknown-amigaos 282876ff6feSmrg exit ;; 283876ff6feSmrg *:[Mm]orph[Oo][Ss]:*:*) 284876ff6feSmrg echo ${UNAME_MACHINE}-unknown-morphos 285876ff6feSmrg exit ;; 286876ff6feSmrg *:OS/390:*:*) 287876ff6feSmrg echo i370-ibm-openedition 288876ff6feSmrg exit ;; 289876ff6feSmrg *:z/VM:*:*) 290876ff6feSmrg echo s390-ibm-zvmoe 291876ff6feSmrg exit ;; 292876ff6feSmrg *:OS400:*:*) 293876ff6feSmrg echo powerpc-ibm-os400 294876ff6feSmrg exit ;; 295876ff6feSmrg arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 296876ff6feSmrg echo arm-acorn-riscix${UNAME_RELEASE} 297876ff6feSmrg exit ;; 298876ff6feSmrg arm:riscos:*:*|arm:RISCOS:*:*) 299876ff6feSmrg echo arm-unknown-riscos 300876ff6feSmrg exit ;; 301876ff6feSmrg SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 302876ff6feSmrg echo hppa1.1-hitachi-hiuxmpp 303876ff6feSmrg exit ;; 304876ff6feSmrg Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 305876ff6feSmrg # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 306876ff6feSmrg if test "`(/bin/universe) 2>/dev/null`" = att ; then 307876ff6feSmrg echo pyramid-pyramid-sysv3 308876ff6feSmrg else 309876ff6feSmrg echo pyramid-pyramid-bsd 310876ff6feSmrg fi 311876ff6feSmrg exit ;; 312876ff6feSmrg NILE*:*:*:dcosx) 313876ff6feSmrg echo pyramid-pyramid-svr4 314876ff6feSmrg exit ;; 315876ff6feSmrg DRS?6000:unix:4.0:6*) 316876ff6feSmrg echo sparc-icl-nx6 317876ff6feSmrg exit ;; 318876ff6feSmrg DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 319876ff6feSmrg case `/usr/bin/uname -p` in 320876ff6feSmrg sparc) echo sparc-icl-nx7; exit ;; 321876ff6feSmrg esac ;; 322876ff6feSmrg sun4H:SunOS:5.*:*) 323876ff6feSmrg echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 324876ff6feSmrg exit ;; 325876ff6feSmrg sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 326876ff6feSmrg echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 327876ff6feSmrg exit ;; 328876ff6feSmrg i86pc:SunOS:5.*:*) 329876ff6feSmrg echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 330876ff6feSmrg exit ;; 331876ff6feSmrg sun4*:SunOS:6*:*) 332876ff6feSmrg # According to config.sub, this is the proper way to canonicalize 333876ff6feSmrg # SunOS6. Hard to guess exactly what SunOS6 will be like, but 334876ff6feSmrg # it's likely to be more like Solaris than SunOS4. 335876ff6feSmrg echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 336876ff6feSmrg exit ;; 337876ff6feSmrg sun4*:SunOS:*:*) 338876ff6feSmrg case "`/usr/bin/arch -k`" in 339876ff6feSmrg Series*|S4*) 340876ff6feSmrg UNAME_RELEASE=`uname -v` 341876ff6feSmrg ;; 342876ff6feSmrg esac 343876ff6feSmrg # Japanese Language versions have a version number like `4.1.3-JL'. 344876ff6feSmrg echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 345876ff6feSmrg exit ;; 346876ff6feSmrg sun3*:SunOS:*:*) 347876ff6feSmrg echo m68k-sun-sunos${UNAME_RELEASE} 348876ff6feSmrg exit ;; 349876ff6feSmrg sun*:*:4.2BSD:*) 350876ff6feSmrg UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 351876ff6feSmrg test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 352876ff6feSmrg case "`/bin/arch`" in 353876ff6feSmrg sun3) 354876ff6feSmrg echo m68k-sun-sunos${UNAME_RELEASE} 355876ff6feSmrg ;; 356876ff6feSmrg sun4) 357876ff6feSmrg echo sparc-sun-sunos${UNAME_RELEASE} 358876ff6feSmrg ;; 359876ff6feSmrg esac 360876ff6feSmrg exit ;; 361876ff6feSmrg aushp:SunOS:*:*) 362876ff6feSmrg echo sparc-auspex-sunos${UNAME_RELEASE} 363876ff6feSmrg exit ;; 364876ff6feSmrg # The situation for MiNT is a little confusing. The machine name 365876ff6feSmrg # can be virtually everything (everything which is not 366876ff6feSmrg # "atarist" or "atariste" at least should have a processor 367876ff6feSmrg # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 368876ff6feSmrg # to the lowercase version "mint" (or "freemint"). Finally 369876ff6feSmrg # the system name "TOS" denotes a system which is actually not 370876ff6feSmrg # MiNT. But MiNT is downward compatible to TOS, so this should 371876ff6feSmrg # be no problem. 372876ff6feSmrg atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 373876ff6feSmrg echo m68k-atari-mint${UNAME_RELEASE} 374876ff6feSmrg exit ;; 375876ff6feSmrg atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 376876ff6feSmrg echo m68k-atari-mint${UNAME_RELEASE} 377876ff6feSmrg exit ;; 378876ff6feSmrg *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 379876ff6feSmrg echo m68k-atari-mint${UNAME_RELEASE} 380876ff6feSmrg exit ;; 381876ff6feSmrg milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 382876ff6feSmrg echo m68k-milan-mint${UNAME_RELEASE} 383876ff6feSmrg exit ;; 384876ff6feSmrg hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 385876ff6feSmrg echo m68k-hades-mint${UNAME_RELEASE} 386876ff6feSmrg exit ;; 387876ff6feSmrg *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 388876ff6feSmrg echo m68k-unknown-mint${UNAME_RELEASE} 389876ff6feSmrg exit ;; 390876ff6feSmrg m68k:machten:*:*) 391876ff6feSmrg echo m68k-apple-machten${UNAME_RELEASE} 392876ff6feSmrg exit ;; 393876ff6feSmrg powerpc:machten:*:*) 394876ff6feSmrg echo powerpc-apple-machten${UNAME_RELEASE} 395876ff6feSmrg exit ;; 396876ff6feSmrg RISC*:Mach:*:*) 397876ff6feSmrg echo mips-dec-mach_bsd4.3 398876ff6feSmrg exit ;; 399876ff6feSmrg RISC*:ULTRIX:*:*) 400876ff6feSmrg echo mips-dec-ultrix${UNAME_RELEASE} 401876ff6feSmrg exit ;; 402876ff6feSmrg VAX*:ULTRIX*:*:*) 403876ff6feSmrg echo vax-dec-ultrix${UNAME_RELEASE} 404876ff6feSmrg exit ;; 405876ff6feSmrg 2020:CLIX:*:* | 2430:CLIX:*:*) 406876ff6feSmrg echo clipper-intergraph-clix${UNAME_RELEASE} 407876ff6feSmrg exit ;; 408876ff6feSmrg mips:*:*:UMIPS | mips:*:*:RISCos) 409876ff6feSmrg eval $set_cc_for_build 410876ff6feSmrg sed 's/^ //' << EOF >$dummy.c 411876ff6feSmrg#ifdef __cplusplus 412876ff6feSmrg#include <stdio.h> /* for printf() prototype */ 413876ff6feSmrg int main (int argc, char *argv[]) { 414876ff6feSmrg#else 415876ff6feSmrg int main (argc, argv) int argc; char *argv[]; { 416876ff6feSmrg#endif 417876ff6feSmrg #if defined (host_mips) && defined (MIPSEB) 418876ff6feSmrg #if defined (SYSTYPE_SYSV) 419876ff6feSmrg printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 420876ff6feSmrg #endif 421876ff6feSmrg #if defined (SYSTYPE_SVR4) 422876ff6feSmrg printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 423876ff6feSmrg #endif 424876ff6feSmrg #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 425876ff6feSmrg printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 426876ff6feSmrg #endif 427876ff6feSmrg #endif 428876ff6feSmrg exit (-1); 429876ff6feSmrg } 430876ff6feSmrgEOF 431876ff6feSmrg $CC_FOR_BUILD -o $dummy $dummy.c && 432876ff6feSmrg dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 433876ff6feSmrg SYSTEM_NAME=`$dummy $dummyarg` && 434876ff6feSmrg { echo "$SYSTEM_NAME"; exit; } 435876ff6feSmrg echo mips-mips-riscos${UNAME_RELEASE} 436876ff6feSmrg exit ;; 437876ff6feSmrg Motorola:PowerMAX_OS:*:*) 438876ff6feSmrg echo powerpc-motorola-powermax 439876ff6feSmrg exit ;; 440876ff6feSmrg Motorola:*:4.3:PL8-*) 441876ff6feSmrg echo powerpc-harris-powermax 442876ff6feSmrg exit ;; 443876ff6feSmrg Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 444876ff6feSmrg echo powerpc-harris-powermax 445876ff6feSmrg exit ;; 446876ff6feSmrg Night_Hawk:Power_UNIX:*:*) 447876ff6feSmrg echo powerpc-harris-powerunix 448876ff6feSmrg exit ;; 449876ff6feSmrg m88k:CX/UX:7*:*) 450876ff6feSmrg echo m88k-harris-cxux7 451876ff6feSmrg exit ;; 452876ff6feSmrg m88k:*:4*:R4*) 453876ff6feSmrg echo m88k-motorola-sysv4 454876ff6feSmrg exit ;; 455876ff6feSmrg m88k:*:3*:R3*) 456876ff6feSmrg echo m88k-motorola-sysv3 457876ff6feSmrg exit ;; 458876ff6feSmrg AViiON:dgux:*:*) 459876ff6feSmrg # DG/UX returns AViiON for all architectures 460876ff6feSmrg UNAME_PROCESSOR=`/usr/bin/uname -p` 461876ff6feSmrg if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 462876ff6feSmrg then 463876ff6feSmrg if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 464876ff6feSmrg [ ${TARGET_BINARY_INTERFACE}x = x ] 465876ff6feSmrg then 466876ff6feSmrg echo m88k-dg-dgux${UNAME_RELEASE} 467876ff6feSmrg else 468876ff6feSmrg echo m88k-dg-dguxbcs${UNAME_RELEASE} 469876ff6feSmrg fi 470876ff6feSmrg else 471876ff6feSmrg echo i586-dg-dgux${UNAME_RELEASE} 472876ff6feSmrg fi 473876ff6feSmrg exit ;; 474876ff6feSmrg M88*:DolphinOS:*:*) # DolphinOS (SVR3) 475876ff6feSmrg echo m88k-dolphin-sysv3 476876ff6feSmrg exit ;; 477876ff6feSmrg M88*:*:R3*:*) 478876ff6feSmrg # Delta 88k system running SVR3 479876ff6feSmrg echo m88k-motorola-sysv3 480876ff6feSmrg exit ;; 481876ff6feSmrg XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 482876ff6feSmrg echo m88k-tektronix-sysv3 483876ff6feSmrg exit ;; 484876ff6feSmrg Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 485876ff6feSmrg echo m68k-tektronix-bsd 486876ff6feSmrg exit ;; 487876ff6feSmrg *:IRIX*:*:*) 488876ff6feSmrg echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 489876ff6feSmrg exit ;; 490876ff6feSmrg ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 491876ff6feSmrg echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 492876ff6feSmrg exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 493876ff6feSmrg i*86:AIX:*:*) 494876ff6feSmrg echo i386-ibm-aix 495876ff6feSmrg exit ;; 496876ff6feSmrg ia64:AIX:*:*) 497876ff6feSmrg if [ -x /usr/bin/oslevel ] ; then 498876ff6feSmrg IBM_REV=`/usr/bin/oslevel` 499876ff6feSmrg else 500876ff6feSmrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 501876ff6feSmrg fi 502876ff6feSmrg echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 503876ff6feSmrg exit ;; 504876ff6feSmrg *:AIX:2:3) 505876ff6feSmrg if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 506876ff6feSmrg eval $set_cc_for_build 507876ff6feSmrg sed 's/^ //' << EOF >$dummy.c 508876ff6feSmrg #include <sys/systemcfg.h> 509876ff6feSmrg 510876ff6feSmrg main() 511876ff6feSmrg { 512876ff6feSmrg if (!__power_pc()) 513876ff6feSmrg exit(1); 514876ff6feSmrg puts("powerpc-ibm-aix3.2.5"); 515876ff6feSmrg exit(0); 516876ff6feSmrg } 517876ff6feSmrgEOF 518876ff6feSmrg if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 519876ff6feSmrg then 520876ff6feSmrg echo "$SYSTEM_NAME" 521876ff6feSmrg else 522876ff6feSmrg echo rs6000-ibm-aix3.2.5 523876ff6feSmrg fi 524876ff6feSmrg elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 525876ff6feSmrg echo rs6000-ibm-aix3.2.4 526876ff6feSmrg else 527876ff6feSmrg echo rs6000-ibm-aix3.2 528876ff6feSmrg fi 529876ff6feSmrg exit ;; 530876ff6feSmrg *:AIX:*:[45]) 531876ff6feSmrg IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 532876ff6feSmrg if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 533876ff6feSmrg IBM_ARCH=rs6000 534876ff6feSmrg else 535876ff6feSmrg IBM_ARCH=powerpc 536876ff6feSmrg fi 537876ff6feSmrg if [ -x /usr/bin/oslevel ] ; then 538876ff6feSmrg IBM_REV=`/usr/bin/oslevel` 539876ff6feSmrg else 540876ff6feSmrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 541876ff6feSmrg fi 542876ff6feSmrg echo ${IBM_ARCH}-ibm-aix${IBM_REV} 543876ff6feSmrg exit ;; 544876ff6feSmrg *:AIX:*:*) 545876ff6feSmrg echo rs6000-ibm-aix 546876ff6feSmrg exit ;; 547876ff6feSmrg ibmrt:4.4BSD:*|romp-ibm:BSD:*) 548876ff6feSmrg echo romp-ibm-bsd4.4 549876ff6feSmrg exit ;; 550876ff6feSmrg ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 551876ff6feSmrg echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 552876ff6feSmrg exit ;; # report: romp-ibm BSD 4.3 553876ff6feSmrg *:BOSX:*:*) 554876ff6feSmrg echo rs6000-bull-bosx 555876ff6feSmrg exit ;; 556876ff6feSmrg DPX/2?00:B.O.S.:*:*) 557876ff6feSmrg echo m68k-bull-sysv3 558876ff6feSmrg exit ;; 559876ff6feSmrg 9000/[34]??:4.3bsd:1.*:*) 560876ff6feSmrg echo m68k-hp-bsd 561876ff6feSmrg exit ;; 562876ff6feSmrg hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 563876ff6feSmrg echo m68k-hp-bsd4.4 564876ff6feSmrg exit ;; 565876ff6feSmrg 9000/[34678]??:HP-UX:*:*) 566876ff6feSmrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 567876ff6feSmrg case "${UNAME_MACHINE}" in 568876ff6feSmrg 9000/31? ) HP_ARCH=m68000 ;; 569876ff6feSmrg 9000/[34]?? ) HP_ARCH=m68k ;; 570876ff6feSmrg 9000/[678][0-9][0-9]) 571876ff6feSmrg if [ -x /usr/bin/getconf ]; then 572876ff6feSmrg sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 573876ff6feSmrg sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 574876ff6feSmrg case "${sc_cpu_version}" in 575876ff6feSmrg 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 576876ff6feSmrg 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 577876ff6feSmrg 532) # CPU_PA_RISC2_0 578876ff6feSmrg case "${sc_kernel_bits}" in 579876ff6feSmrg 32) HP_ARCH="hppa2.0n" ;; 580876ff6feSmrg 64) HP_ARCH="hppa2.0w" ;; 581876ff6feSmrg '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 582876ff6feSmrg esac ;; 583876ff6feSmrg esac 584876ff6feSmrg fi 585876ff6feSmrg if [ "${HP_ARCH}" = "" ]; then 586876ff6feSmrg eval $set_cc_for_build 587876ff6feSmrg sed 's/^ //' << EOF >$dummy.c 588876ff6feSmrg 589876ff6feSmrg #define _HPUX_SOURCE 590876ff6feSmrg #include <stdlib.h> 591876ff6feSmrg #include <unistd.h> 592876ff6feSmrg 593876ff6feSmrg int main () 594876ff6feSmrg { 595876ff6feSmrg #if defined(_SC_KERNEL_BITS) 596876ff6feSmrg long bits = sysconf(_SC_KERNEL_BITS); 597876ff6feSmrg #endif 598876ff6feSmrg long cpu = sysconf (_SC_CPU_VERSION); 599876ff6feSmrg 600876ff6feSmrg switch (cpu) 601876ff6feSmrg { 602876ff6feSmrg case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 603876ff6feSmrg case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 604876ff6feSmrg case CPU_PA_RISC2_0: 605876ff6feSmrg #if defined(_SC_KERNEL_BITS) 606876ff6feSmrg switch (bits) 607876ff6feSmrg { 608876ff6feSmrg case 64: puts ("hppa2.0w"); break; 609876ff6feSmrg case 32: puts ("hppa2.0n"); break; 610876ff6feSmrg default: puts ("hppa2.0"); break; 611876ff6feSmrg } break; 612876ff6feSmrg #else /* !defined(_SC_KERNEL_BITS) */ 613876ff6feSmrg puts ("hppa2.0"); break; 614876ff6feSmrg #endif 615876ff6feSmrg default: puts ("hppa1.0"); break; 616876ff6feSmrg } 617876ff6feSmrg exit (0); 618876ff6feSmrg } 619876ff6feSmrgEOF 620876ff6feSmrg (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 621876ff6feSmrg test -z "$HP_ARCH" && HP_ARCH=hppa 622876ff6feSmrg fi ;; 623876ff6feSmrg esac 624876ff6feSmrg if [ ${HP_ARCH} = "hppa2.0w" ] 625876ff6feSmrg then 626876ff6feSmrg eval $set_cc_for_build 627876ff6feSmrg 628876ff6feSmrg # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 629876ff6feSmrg # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 630876ff6feSmrg # generating 64-bit code. GNU and HP use different nomenclature: 631876ff6feSmrg # 632876ff6feSmrg # $ CC_FOR_BUILD=cc ./config.guess 633876ff6feSmrg # => hppa2.0w-hp-hpux11.23 634876ff6feSmrg # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 635876ff6feSmrg # => hppa64-hp-hpux11.23 636876ff6feSmrg 637876ff6feSmrg if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | 638876ff6feSmrg grep __LP64__ >/dev/null 639876ff6feSmrg then 640876ff6feSmrg HP_ARCH="hppa2.0w" 641876ff6feSmrg else 642876ff6feSmrg HP_ARCH="hppa64" 643876ff6feSmrg fi 644876ff6feSmrg fi 645876ff6feSmrg echo ${HP_ARCH}-hp-hpux${HPUX_REV} 646876ff6feSmrg exit ;; 647876ff6feSmrg ia64:HP-UX:*:*) 648876ff6feSmrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 649876ff6feSmrg echo ia64-hp-hpux${HPUX_REV} 650876ff6feSmrg exit ;; 651876ff6feSmrg 3050*:HI-UX:*:*) 652876ff6feSmrg eval $set_cc_for_build 653876ff6feSmrg sed 's/^ //' << EOF >$dummy.c 654876ff6feSmrg #include <unistd.h> 655876ff6feSmrg int 656876ff6feSmrg main () 657876ff6feSmrg { 658876ff6feSmrg long cpu = sysconf (_SC_CPU_VERSION); 659876ff6feSmrg /* The order matters, because CPU_IS_HP_MC68K erroneously returns 660876ff6feSmrg true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 661876ff6feSmrg results, however. */ 662876ff6feSmrg if (CPU_IS_PA_RISC (cpu)) 663876ff6feSmrg { 664876ff6feSmrg switch (cpu) 665876ff6feSmrg { 666876ff6feSmrg case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 667876ff6feSmrg case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 668876ff6feSmrg case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 669876ff6feSmrg default: puts ("hppa-hitachi-hiuxwe2"); break; 670876ff6feSmrg } 671876ff6feSmrg } 672876ff6feSmrg else if (CPU_IS_HP_MC68K (cpu)) 673876ff6feSmrg puts ("m68k-hitachi-hiuxwe2"); 674876ff6feSmrg else puts ("unknown-hitachi-hiuxwe2"); 675876ff6feSmrg exit (0); 676876ff6feSmrg } 677876ff6feSmrgEOF 678876ff6feSmrg $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 679876ff6feSmrg { echo "$SYSTEM_NAME"; exit; } 680876ff6feSmrg echo unknown-hitachi-hiuxwe2 681876ff6feSmrg exit ;; 682876ff6feSmrg 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 683876ff6feSmrg echo hppa1.1-hp-bsd 684876ff6feSmrg exit ;; 685876ff6feSmrg 9000/8??:4.3bsd:*:*) 686876ff6feSmrg echo hppa1.0-hp-bsd 687876ff6feSmrg exit ;; 688876ff6feSmrg *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 689876ff6feSmrg echo hppa1.0-hp-mpeix 690876ff6feSmrg exit ;; 691876ff6feSmrg hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 692876ff6feSmrg echo hppa1.1-hp-osf 693876ff6feSmrg exit ;; 694876ff6feSmrg hp8??:OSF1:*:*) 695876ff6feSmrg echo hppa1.0-hp-osf 696876ff6feSmrg exit ;; 697876ff6feSmrg i*86:OSF1:*:*) 698876ff6feSmrg if [ -x /usr/sbin/sysversion ] ; then 699876ff6feSmrg echo ${UNAME_MACHINE}-unknown-osf1mk 700876ff6feSmrg else 701876ff6feSmrg echo ${UNAME_MACHINE}-unknown-osf1 702876ff6feSmrg fi 703876ff6feSmrg exit ;; 704876ff6feSmrg parisc*:Lites*:*:*) 705876ff6feSmrg echo hppa1.1-hp-lites 706876ff6feSmrg exit ;; 707876ff6feSmrg C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 708876ff6feSmrg echo c1-convex-bsd 709876ff6feSmrg exit ;; 710876ff6feSmrg C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 711876ff6feSmrg if getsysinfo -f scalar_acc 712876ff6feSmrg then echo c32-convex-bsd 713876ff6feSmrg else echo c2-convex-bsd 714876ff6feSmrg fi 715876ff6feSmrg exit ;; 716876ff6feSmrg C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 717876ff6feSmrg echo c34-convex-bsd 718876ff6feSmrg exit ;; 719876ff6feSmrg C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 720876ff6feSmrg echo c38-convex-bsd 721876ff6feSmrg exit ;; 722876ff6feSmrg C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 723876ff6feSmrg echo c4-convex-bsd 724876ff6feSmrg exit ;; 725876ff6feSmrg CRAY*Y-MP:*:*:*) 726876ff6feSmrg echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 727876ff6feSmrg exit ;; 728876ff6feSmrg CRAY*[A-Z]90:*:*:*) 729876ff6feSmrg echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 730876ff6feSmrg | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 731876ff6feSmrg -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 732876ff6feSmrg -e 's/\.[^.]*$/.X/' 733876ff6feSmrg exit ;; 734876ff6feSmrg CRAY*TS:*:*:*) 735876ff6feSmrg echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 736876ff6feSmrg exit ;; 737876ff6feSmrg CRAY*T3E:*:*:*) 738876ff6feSmrg echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 739876ff6feSmrg exit ;; 740876ff6feSmrg CRAY*SV1:*:*:*) 741876ff6feSmrg echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 742876ff6feSmrg exit ;; 743876ff6feSmrg *:UNICOS/mp:*:*) 744876ff6feSmrg echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 745876ff6feSmrg exit ;; 746876ff6feSmrg F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 747876ff6feSmrg FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 748876ff6feSmrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 749876ff6feSmrg FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 750876ff6feSmrg echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 751876ff6feSmrg exit ;; 752876ff6feSmrg 5000:UNIX_System_V:4.*:*) 753876ff6feSmrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 754876ff6feSmrg FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` 755876ff6feSmrg echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 756876ff6feSmrg exit ;; 757876ff6feSmrg i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 758876ff6feSmrg echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 759876ff6feSmrg exit ;; 760876ff6feSmrg sparc*:BSD/OS:*:*) 761876ff6feSmrg echo sparc-unknown-bsdi${UNAME_RELEASE} 762876ff6feSmrg exit ;; 763876ff6feSmrg *:BSD/OS:*:*) 764876ff6feSmrg echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 765876ff6feSmrg exit ;; 766876ff6feSmrg *:FreeBSD:*:*) 767876ff6feSmrg echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 768876ff6feSmrg exit ;; 769876ff6feSmrg i*:CYGWIN*:*) 770876ff6feSmrg echo ${UNAME_MACHINE}-pc-cygwin 771876ff6feSmrg exit ;; 772876ff6feSmrg i*:MINGW*:*) 773876ff6feSmrg echo ${UNAME_MACHINE}-pc-mingw32 774876ff6feSmrg exit ;; 775876ff6feSmrg i*:windows32*:*) 776876ff6feSmrg # uname -m includes "-pc" on this system. 777876ff6feSmrg echo ${UNAME_MACHINE}-mingw32 778876ff6feSmrg exit ;; 779876ff6feSmrg i*:PW*:*) 780876ff6feSmrg echo ${UNAME_MACHINE}-pc-pw32 781876ff6feSmrg exit ;; 782876ff6feSmrg x86:Interix*:[34]*) 783876ff6feSmrg echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//' 784876ff6feSmrg exit ;; 785876ff6feSmrg [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 786876ff6feSmrg echo i${UNAME_MACHINE}-pc-mks 787876ff6feSmrg exit ;; 788876ff6feSmrg i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 789876ff6feSmrg # How do we know it's Interix rather than the generic POSIX subsystem? 790876ff6feSmrg # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 791876ff6feSmrg # UNAME_MACHINE based on the output of uname instead of i386? 792876ff6feSmrg echo i586-pc-interix 793876ff6feSmrg exit ;; 794876ff6feSmrg i*:UWIN*:*) 795876ff6feSmrg echo ${UNAME_MACHINE}-pc-uwin 796876ff6feSmrg exit ;; 797876ff6feSmrg amd64:CYGWIN*:*:*) 798876ff6feSmrg echo x86_64-unknown-cygwin 799876ff6feSmrg exit ;; 800876ff6feSmrg p*:CYGWIN*:*) 801876ff6feSmrg echo powerpcle-unknown-cygwin 802876ff6feSmrg exit ;; 803876ff6feSmrg prep*:SunOS:5.*:*) 804876ff6feSmrg echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 805876ff6feSmrg exit ;; 806876ff6feSmrg *:GNU:*:*) 807876ff6feSmrg # the GNU system 808876ff6feSmrg echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 809876ff6feSmrg exit ;; 810876ff6feSmrg *:GNU/*:*:*) 811876ff6feSmrg # other systems with GNU libc and userland 812876ff6feSmrg echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu 813876ff6feSmrg exit ;; 814876ff6feSmrg i*86:Minix:*:*) 815876ff6feSmrg echo ${UNAME_MACHINE}-pc-minix 816876ff6feSmrg exit ;; 817876ff6feSmrg arm*:Linux:*:*) 818876ff6feSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 819876ff6feSmrg exit ;; 820876ff6feSmrg cris:Linux:*:*) 821876ff6feSmrg echo cris-axis-linux-gnu 822876ff6feSmrg exit ;; 823876ff6feSmrg crisv32:Linux:*:*) 824876ff6feSmrg echo crisv32-axis-linux-gnu 825876ff6feSmrg exit ;; 826876ff6feSmrg frv:Linux:*:*) 827876ff6feSmrg echo frv-unknown-linux-gnu 828876ff6feSmrg exit ;; 829876ff6feSmrg ia64:Linux:*:*) 830876ff6feSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 831876ff6feSmrg exit ;; 832876ff6feSmrg m32r*:Linux:*:*) 833876ff6feSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 834876ff6feSmrg exit ;; 835876ff6feSmrg m68*:Linux:*:*) 836876ff6feSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 837876ff6feSmrg exit ;; 838876ff6feSmrg mips:Linux:*:*) 839876ff6feSmrg eval $set_cc_for_build 840876ff6feSmrg sed 's/^ //' << EOF >$dummy.c 841876ff6feSmrg #undef CPU 842876ff6feSmrg #undef mips 843876ff6feSmrg #undef mipsel 844876ff6feSmrg #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 845876ff6feSmrg CPU=mipsel 846876ff6feSmrg #else 847876ff6feSmrg #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 848876ff6feSmrg CPU=mips 849876ff6feSmrg #else 850876ff6feSmrg CPU= 851876ff6feSmrg #endif 852876ff6feSmrg #endif 853876ff6feSmrgEOF 854876ff6feSmrg eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` 855876ff6feSmrg test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 856876ff6feSmrg ;; 857876ff6feSmrg mips64:Linux:*:*) 858876ff6feSmrg eval $set_cc_for_build 859876ff6feSmrg sed 's/^ //' << EOF >$dummy.c 860876ff6feSmrg #undef CPU 861876ff6feSmrg #undef mips64 862876ff6feSmrg #undef mips64el 863876ff6feSmrg #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 864876ff6feSmrg CPU=mips64el 865876ff6feSmrg #else 866876ff6feSmrg #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 867876ff6feSmrg CPU=mips64 868876ff6feSmrg #else 869876ff6feSmrg CPU= 870876ff6feSmrg #endif 871876ff6feSmrg #endif 872876ff6feSmrgEOF 873876ff6feSmrg eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` 874876ff6feSmrg test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 875876ff6feSmrg ;; 876876ff6feSmrg ppc:Linux:*:*) 877876ff6feSmrg echo powerpc-unknown-linux-gnu 878876ff6feSmrg exit ;; 879876ff6feSmrg ppc64:Linux:*:*) 880876ff6feSmrg echo powerpc64-unknown-linux-gnu 881876ff6feSmrg exit ;; 882876ff6feSmrg alpha:Linux:*:*) 883876ff6feSmrg case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 884876ff6feSmrg EV5) UNAME_MACHINE=alphaev5 ;; 885876ff6feSmrg EV56) UNAME_MACHINE=alphaev56 ;; 886876ff6feSmrg PCA56) UNAME_MACHINE=alphapca56 ;; 887876ff6feSmrg PCA57) UNAME_MACHINE=alphapca56 ;; 888876ff6feSmrg EV6) UNAME_MACHINE=alphaev6 ;; 889876ff6feSmrg EV67) UNAME_MACHINE=alphaev67 ;; 890876ff6feSmrg EV68*) UNAME_MACHINE=alphaev68 ;; 891876ff6feSmrg esac 892876ff6feSmrg objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null 893876ff6feSmrg if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi 894876ff6feSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 895876ff6feSmrg exit ;; 896876ff6feSmrg parisc:Linux:*:* | hppa:Linux:*:*) 897876ff6feSmrg # Look for CPU level 898876ff6feSmrg case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 899876ff6feSmrg PA7*) echo hppa1.1-unknown-linux-gnu ;; 900876ff6feSmrg PA8*) echo hppa2.0-unknown-linux-gnu ;; 901876ff6feSmrg *) echo hppa-unknown-linux-gnu ;; 902876ff6feSmrg esac 903876ff6feSmrg exit ;; 904876ff6feSmrg parisc64:Linux:*:* | hppa64:Linux:*:*) 905876ff6feSmrg echo hppa64-unknown-linux-gnu 906876ff6feSmrg exit ;; 907876ff6feSmrg s390:Linux:*:* | s390x:Linux:*:*) 908876ff6feSmrg echo ${UNAME_MACHINE}-ibm-linux 909876ff6feSmrg exit ;; 910876ff6feSmrg sh64*:Linux:*:*) 911876ff6feSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 912876ff6feSmrg exit ;; 913876ff6feSmrg sh*:Linux:*:*) 914876ff6feSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 915876ff6feSmrg exit ;; 916876ff6feSmrg sparc:Linux:*:* | sparc64:Linux:*:*) 917876ff6feSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 918876ff6feSmrg exit ;; 919876ff6feSmrg x86_64:Linux:*:*) 920876ff6feSmrg echo x86_64-unknown-linux-gnu 921876ff6feSmrg exit ;; 922876ff6feSmrg i*86:Linux:*:*) 923876ff6feSmrg # The BFD linker knows what the default object file format is, so 924876ff6feSmrg # first see if it will tell us. cd to the root directory to prevent 925876ff6feSmrg # problems with other programs or directories called `ld' in the path. 926876ff6feSmrg # Set LC_ALL=C to ensure ld outputs messages in English. 927876ff6feSmrg ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ 928876ff6feSmrg | sed -ne '/supported targets:/!d 929876ff6feSmrg s/[ ][ ]*/ /g 930876ff6feSmrg s/.*supported targets: *// 931876ff6feSmrg s/ .*// 932876ff6feSmrg p'` 933876ff6feSmrg case "$ld_supported_targets" in 934876ff6feSmrg elf32-i386) 935876ff6feSmrg TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" 936876ff6feSmrg ;; 937876ff6feSmrg a.out-i386-linux) 938876ff6feSmrg echo "${UNAME_MACHINE}-pc-linux-gnuaout" 939876ff6feSmrg exit ;; 940876ff6feSmrg coff-i386) 941876ff6feSmrg echo "${UNAME_MACHINE}-pc-linux-gnucoff" 942876ff6feSmrg exit ;; 943876ff6feSmrg "") 944876ff6feSmrg # Either a pre-BFD a.out linker (linux-gnuoldld) or 945876ff6feSmrg # one that does not give us useful --help. 946876ff6feSmrg echo "${UNAME_MACHINE}-pc-linux-gnuoldld" 947876ff6feSmrg exit ;; 948876ff6feSmrg esac 949876ff6feSmrg # Determine whether the default compiler is a.out or elf 950876ff6feSmrg eval $set_cc_for_build 951876ff6feSmrg sed 's/^ //' << EOF >$dummy.c 952876ff6feSmrg #include <features.h> 953876ff6feSmrg #ifdef __ELF__ 954876ff6feSmrg # ifdef __GLIBC__ 955876ff6feSmrg # if __GLIBC__ >= 2 956876ff6feSmrg LIBC=gnu 957876ff6feSmrg # else 958876ff6feSmrg LIBC=gnulibc1 959876ff6feSmrg # endif 960876ff6feSmrg # else 961876ff6feSmrg LIBC=gnulibc1 962876ff6feSmrg # endif 963876ff6feSmrg #else 964876ff6feSmrg #ifdef __INTEL_COMPILER 965876ff6feSmrg LIBC=gnu 966876ff6feSmrg #else 967876ff6feSmrg LIBC=gnuaout 968876ff6feSmrg #endif 969876ff6feSmrg #endif 970876ff6feSmrg #ifdef __dietlibc__ 971876ff6feSmrg LIBC=dietlibc 972876ff6feSmrg #endif 973876ff6feSmrgEOF 974876ff6feSmrg eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` 975876ff6feSmrg test x"${LIBC}" != x && { 976876ff6feSmrg echo "${UNAME_MACHINE}-pc-linux-${LIBC}" 977876ff6feSmrg exit 978876ff6feSmrg } 979876ff6feSmrg test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; } 980876ff6feSmrg ;; 981876ff6feSmrg i*86:DYNIX/ptx:4*:*) 982876ff6feSmrg # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 983876ff6feSmrg # earlier versions are messed up and put the nodename in both 984876ff6feSmrg # sysname and nodename. 985876ff6feSmrg echo i386-sequent-sysv4 986876ff6feSmrg exit ;; 987876ff6feSmrg i*86:UNIX_SV:4.2MP:2.*) 988876ff6feSmrg # Unixware is an offshoot of SVR4, but it has its own version 989876ff6feSmrg # number series starting with 2... 990876ff6feSmrg # I am not positive that other SVR4 systems won't match this, 991876ff6feSmrg # I just have to hope. -- rms. 992876ff6feSmrg # Use sysv4.2uw... so that sysv4* matches it. 993876ff6feSmrg echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 994876ff6feSmrg exit ;; 995876ff6feSmrg i*86:OS/2:*:*) 996876ff6feSmrg # If we were able to find `uname', then EMX Unix compatibility 997876ff6feSmrg # is probably installed. 998876ff6feSmrg echo ${UNAME_MACHINE}-pc-os2-emx 999876ff6feSmrg exit ;; 1000876ff6feSmrg i*86:XTS-300:*:STOP) 1001876ff6feSmrg echo ${UNAME_MACHINE}-unknown-stop 1002876ff6feSmrg exit ;; 1003876ff6feSmrg i*86:atheos:*:*) 1004876ff6feSmrg echo ${UNAME_MACHINE}-unknown-atheos 1005876ff6feSmrg exit ;; 1006876ff6feSmrg i*86:syllable:*:*) 1007876ff6feSmrg echo ${UNAME_MACHINE}-pc-syllable 1008876ff6feSmrg exit ;; 1009876ff6feSmrg i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) 1010876ff6feSmrg echo i386-unknown-lynxos${UNAME_RELEASE} 1011876ff6feSmrg exit ;; 1012876ff6feSmrg i*86:*DOS:*:*) 1013876ff6feSmrg echo ${UNAME_MACHINE}-pc-msdosdjgpp 1014876ff6feSmrg exit ;; 1015876ff6feSmrg i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 1016876ff6feSmrg UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 1017876ff6feSmrg if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 1018876ff6feSmrg echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 1019876ff6feSmrg else 1020876ff6feSmrg echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 1021876ff6feSmrg fi 1022876ff6feSmrg exit ;; 1023876ff6feSmrg i*86:*:5:[678]*) 1024876ff6feSmrg # UnixWare 7.x, OpenUNIX and OpenServer 6. 1025876ff6feSmrg case `/bin/uname -X | grep "^Machine"` in 1026876ff6feSmrg *486*) UNAME_MACHINE=i486 ;; 1027876ff6feSmrg *Pentium) UNAME_MACHINE=i586 ;; 1028876ff6feSmrg *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 1029876ff6feSmrg esac 1030876ff6feSmrg echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 1031876ff6feSmrg exit ;; 1032876ff6feSmrg i*86:*:3.2:*) 1033876ff6feSmrg if test -f /usr/options/cb.name; then 1034876ff6feSmrg UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 1035876ff6feSmrg echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 1036876ff6feSmrg elif /bin/uname -X 2>/dev/null >/dev/null ; then 1037876ff6feSmrg UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 1038876ff6feSmrg (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 1039876ff6feSmrg (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 1040876ff6feSmrg && UNAME_MACHINE=i586 1041876ff6feSmrg (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 1042876ff6feSmrg && UNAME_MACHINE=i686 1043876ff6feSmrg (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 1044876ff6feSmrg && UNAME_MACHINE=i686 1045876ff6feSmrg echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 1046876ff6feSmrg else 1047876ff6feSmrg echo ${UNAME_MACHINE}-pc-sysv32 1048876ff6feSmrg fi 1049876ff6feSmrg exit ;; 1050876ff6feSmrg pc:*:*:*) 1051876ff6feSmrg # Left here for compatibility: 1052876ff6feSmrg # uname -m prints for DJGPP always 'pc', but it prints nothing about 1053876ff6feSmrg # the processor, so we play safe by assuming i386. 1054876ff6feSmrg echo i386-pc-msdosdjgpp 1055876ff6feSmrg exit ;; 1056876ff6feSmrg Intel:Mach:3*:*) 1057876ff6feSmrg echo i386-pc-mach3 1058876ff6feSmrg exit ;; 1059876ff6feSmrg paragon:*:*:*) 1060876ff6feSmrg echo i860-intel-osf1 1061876ff6feSmrg exit ;; 1062876ff6feSmrg i860:*:4.*:*) # i860-SVR4 1063876ff6feSmrg if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 1064876ff6feSmrg echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 1065876ff6feSmrg else # Add other i860-SVR4 vendors below as they are discovered. 1066876ff6feSmrg echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 1067876ff6feSmrg fi 1068876ff6feSmrg exit ;; 1069876ff6feSmrg mini*:CTIX:SYS*5:*) 1070876ff6feSmrg # "miniframe" 1071876ff6feSmrg echo m68010-convergent-sysv 1072876ff6feSmrg exit ;; 1073876ff6feSmrg mc68k:UNIX:SYSTEM5:3.51m) 1074876ff6feSmrg echo m68k-convergent-sysv 1075876ff6feSmrg exit ;; 1076876ff6feSmrg M680?0:D-NIX:5.3:*) 1077876ff6feSmrg echo m68k-diab-dnix 1078876ff6feSmrg exit ;; 1079876ff6feSmrg M68*:*:R3V[5678]*:*) 1080876ff6feSmrg test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 1081876ff6feSmrg 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) 1082876ff6feSmrg OS_REL='' 1083876ff6feSmrg test -r /etc/.relid \ 1084876ff6feSmrg && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1085876ff6feSmrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1086876ff6feSmrg && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 1087876ff6feSmrg /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1088876ff6feSmrg && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1089876ff6feSmrg 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 1090876ff6feSmrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1091876ff6feSmrg && { echo i486-ncr-sysv4; exit; } ;; 1092876ff6feSmrg m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 1093876ff6feSmrg echo m68k-unknown-lynxos${UNAME_RELEASE} 1094876ff6feSmrg exit ;; 1095876ff6feSmrg mc68030:UNIX_System_V:4.*:*) 1096876ff6feSmrg echo m68k-atari-sysv4 1097876ff6feSmrg exit ;; 1098876ff6feSmrg TSUNAMI:LynxOS:2.*:*) 1099876ff6feSmrg echo sparc-unknown-lynxos${UNAME_RELEASE} 1100876ff6feSmrg exit ;; 1101876ff6feSmrg rs6000:LynxOS:2.*:*) 1102876ff6feSmrg echo rs6000-unknown-lynxos${UNAME_RELEASE} 1103876ff6feSmrg exit ;; 1104876ff6feSmrg PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) 1105876ff6feSmrg echo powerpc-unknown-lynxos${UNAME_RELEASE} 1106876ff6feSmrg exit ;; 1107876ff6feSmrg SM[BE]S:UNIX_SV:*:*) 1108876ff6feSmrg echo mips-dde-sysv${UNAME_RELEASE} 1109876ff6feSmrg exit ;; 1110876ff6feSmrg RM*:ReliantUNIX-*:*:*) 1111876ff6feSmrg echo mips-sni-sysv4 1112876ff6feSmrg exit ;; 1113876ff6feSmrg RM*:SINIX-*:*:*) 1114876ff6feSmrg echo mips-sni-sysv4 1115876ff6feSmrg exit ;; 1116876ff6feSmrg *:SINIX-*:*:*) 1117876ff6feSmrg if uname -p 2>/dev/null >/dev/null ; then 1118876ff6feSmrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 1119876ff6feSmrg echo ${UNAME_MACHINE}-sni-sysv4 1120876ff6feSmrg else 1121876ff6feSmrg echo ns32k-sni-sysv 1122876ff6feSmrg fi 1123876ff6feSmrg exit ;; 1124876ff6feSmrg PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 1125876ff6feSmrg # says <Richard.M.Bartel@ccMail.Census.GOV> 1126876ff6feSmrg echo i586-unisys-sysv4 1127876ff6feSmrg exit ;; 1128876ff6feSmrg *:UNIX_System_V:4*:FTX*) 1129876ff6feSmrg # From Gerald Hewes <hewes@openmarket.com>. 1130876ff6feSmrg # How about differentiating between stratus architectures? -djm 1131876ff6feSmrg echo hppa1.1-stratus-sysv4 1132876ff6feSmrg exit ;; 1133876ff6feSmrg *:*:*:FTX*) 1134876ff6feSmrg # From seanf@swdc.stratus.com. 1135876ff6feSmrg echo i860-stratus-sysv4 1136876ff6feSmrg exit ;; 1137876ff6feSmrg i*86:VOS:*:*) 1138876ff6feSmrg # From Paul.Green@stratus.com. 1139876ff6feSmrg echo ${UNAME_MACHINE}-stratus-vos 1140876ff6feSmrg exit ;; 1141876ff6feSmrg *:VOS:*:*) 1142876ff6feSmrg # From Paul.Green@stratus.com. 1143876ff6feSmrg echo hppa1.1-stratus-vos 1144876ff6feSmrg exit ;; 1145876ff6feSmrg mc68*:A/UX:*:*) 1146876ff6feSmrg echo m68k-apple-aux${UNAME_RELEASE} 1147876ff6feSmrg exit ;; 1148876ff6feSmrg news*:NEWS-OS:6*:*) 1149876ff6feSmrg echo mips-sony-newsos6 1150876ff6feSmrg exit ;; 1151876ff6feSmrg R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 1152876ff6feSmrg if [ -d /usr/nec ]; then 1153876ff6feSmrg echo mips-nec-sysv${UNAME_RELEASE} 1154876ff6feSmrg else 1155876ff6feSmrg echo mips-unknown-sysv${UNAME_RELEASE} 1156876ff6feSmrg fi 1157876ff6feSmrg exit ;; 1158876ff6feSmrg BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 1159876ff6feSmrg echo powerpc-be-beos 1160876ff6feSmrg exit ;; 1161876ff6feSmrg BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 1162876ff6feSmrg echo powerpc-apple-beos 1163876ff6feSmrg exit ;; 1164876ff6feSmrg BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 1165876ff6feSmrg echo i586-pc-beos 1166876ff6feSmrg exit ;; 1167876ff6feSmrg SX-4:SUPER-UX:*:*) 1168876ff6feSmrg echo sx4-nec-superux${UNAME_RELEASE} 1169876ff6feSmrg exit ;; 1170876ff6feSmrg SX-5:SUPER-UX:*:*) 1171876ff6feSmrg echo sx5-nec-superux${UNAME_RELEASE} 1172876ff6feSmrg exit ;; 1173876ff6feSmrg SX-6:SUPER-UX:*:*) 1174876ff6feSmrg echo sx6-nec-superux${UNAME_RELEASE} 1175876ff6feSmrg exit ;; 1176876ff6feSmrg Power*:Rhapsody:*:*) 1177876ff6feSmrg echo powerpc-apple-rhapsody${UNAME_RELEASE} 1178876ff6feSmrg exit ;; 1179876ff6feSmrg *:Rhapsody:*:*) 1180876ff6feSmrg echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 1181876ff6feSmrg exit ;; 1182876ff6feSmrg *:Darwin:*:*) 1183876ff6feSmrg UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 1184876ff6feSmrg case $UNAME_PROCESSOR in 1185876ff6feSmrg *86) UNAME_PROCESSOR=i686 ;; 1186876ff6feSmrg unknown) UNAME_PROCESSOR=powerpc ;; 1187876ff6feSmrg esac 1188876ff6feSmrg echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 1189876ff6feSmrg exit ;; 1190876ff6feSmrg *:procnto*:*:* | *:QNX:[0123456789]*:*) 1191876ff6feSmrg UNAME_PROCESSOR=`uname -p` 1192876ff6feSmrg if test "$UNAME_PROCESSOR" = "x86"; then 1193876ff6feSmrg UNAME_PROCESSOR=i386 1194876ff6feSmrg UNAME_MACHINE=pc 1195876ff6feSmrg fi 1196876ff6feSmrg echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 1197876ff6feSmrg exit ;; 1198876ff6feSmrg *:QNX:*:4*) 1199876ff6feSmrg echo i386-pc-qnx 1200876ff6feSmrg exit ;; 1201876ff6feSmrg NSE-?:NONSTOP_KERNEL:*:*) 1202876ff6feSmrg echo nse-tandem-nsk${UNAME_RELEASE} 1203876ff6feSmrg exit ;; 1204876ff6feSmrg NSR-?:NONSTOP_KERNEL:*:*) 1205876ff6feSmrg echo nsr-tandem-nsk${UNAME_RELEASE} 1206876ff6feSmrg exit ;; 1207876ff6feSmrg *:NonStop-UX:*:*) 1208876ff6feSmrg echo mips-compaq-nonstopux 1209876ff6feSmrg exit ;; 1210876ff6feSmrg BS2000:POSIX*:*:*) 1211876ff6feSmrg echo bs2000-siemens-sysv 1212876ff6feSmrg exit ;; 1213876ff6feSmrg DS/*:UNIX_System_V:*:*) 1214876ff6feSmrg echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 1215876ff6feSmrg exit ;; 1216876ff6feSmrg *:Plan9:*:*) 1217876ff6feSmrg # "uname -m" is not consistent, so use $cputype instead. 386 1218876ff6feSmrg # is converted to i386 for consistency with other x86 1219876ff6feSmrg # operating systems. 1220876ff6feSmrg if test "$cputype" = "386"; then 1221876ff6feSmrg UNAME_MACHINE=i386 1222876ff6feSmrg else 1223876ff6feSmrg UNAME_MACHINE="$cputype" 1224876ff6feSmrg fi 1225876ff6feSmrg echo ${UNAME_MACHINE}-unknown-plan9 1226876ff6feSmrg exit ;; 1227876ff6feSmrg *:TOPS-10:*:*) 1228876ff6feSmrg echo pdp10-unknown-tops10 1229876ff6feSmrg exit ;; 1230876ff6feSmrg *:TENEX:*:*) 1231876ff6feSmrg echo pdp10-unknown-tenex 1232876ff6feSmrg exit ;; 1233876ff6feSmrg KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 1234876ff6feSmrg echo pdp10-dec-tops20 1235876ff6feSmrg exit ;; 1236876ff6feSmrg XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 1237876ff6feSmrg echo pdp10-xkl-tops20 1238876ff6feSmrg exit ;; 1239876ff6feSmrg *:TOPS-20:*:*) 1240876ff6feSmrg echo pdp10-unknown-tops20 1241876ff6feSmrg exit ;; 1242876ff6feSmrg *:ITS:*:*) 1243876ff6feSmrg echo pdp10-unknown-its 1244876ff6feSmrg exit ;; 1245876ff6feSmrg SEI:*:*:SEIUX) 1246876ff6feSmrg echo mips-sei-seiux${UNAME_RELEASE} 1247876ff6feSmrg exit ;; 1248876ff6feSmrg *:DragonFly:*:*) 1249876ff6feSmrg echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 1250876ff6feSmrg exit ;; 1251876ff6feSmrg *:*VMS:*:*) 1252876ff6feSmrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 1253876ff6feSmrg case "${UNAME_MACHINE}" in 1254876ff6feSmrg A*) echo alpha-dec-vms ; exit ;; 1255876ff6feSmrg I*) echo ia64-dec-vms ; exit ;; 1256876ff6feSmrg V*) echo vax-dec-vms ; exit ;; 1257876ff6feSmrg esac ;; 1258876ff6feSmrg *:XENIX:*:SysV) 1259876ff6feSmrg echo i386-pc-xenix 1260876ff6feSmrg exit ;; 1261876ff6feSmrg i*86:skyos:*:*) 1262876ff6feSmrg echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' 1263876ff6feSmrg exit ;; 1264876ff6feSmrgesac 1265876ff6feSmrg 1266876ff6feSmrg#echo '(No uname command or uname output not recognized.)' 1>&2 1267876ff6feSmrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 1268876ff6feSmrg 1269876ff6feSmrgeval $set_cc_for_build 1270876ff6feSmrgcat >$dummy.c <<EOF 1271876ff6feSmrg#ifdef _SEQUENT_ 1272876ff6feSmrg# include <sys/types.h> 1273876ff6feSmrg# include <sys/utsname.h> 1274876ff6feSmrg#endif 1275876ff6feSmrgmain () 1276876ff6feSmrg{ 1277876ff6feSmrg#if defined (sony) 1278876ff6feSmrg#if defined (MIPSEB) 1279876ff6feSmrg /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, 1280876ff6feSmrg I don't know.... */ 1281876ff6feSmrg printf ("mips-sony-bsd\n"); exit (0); 1282876ff6feSmrg#else 1283876ff6feSmrg#include <sys/param.h> 1284876ff6feSmrg printf ("m68k-sony-newsos%s\n", 1285876ff6feSmrg#ifdef NEWSOS4 1286876ff6feSmrg "4" 1287876ff6feSmrg#else 1288876ff6feSmrg "" 1289876ff6feSmrg#endif 1290876ff6feSmrg ); exit (0); 1291876ff6feSmrg#endif 1292876ff6feSmrg#endif 1293876ff6feSmrg 1294876ff6feSmrg#if defined (__arm) && defined (__acorn) && defined (__unix) 1295876ff6feSmrg printf ("arm-acorn-riscix\n"); exit (0); 1296876ff6feSmrg#endif 1297876ff6feSmrg 1298876ff6feSmrg#if defined (hp300) && !defined (hpux) 1299876ff6feSmrg printf ("m68k-hp-bsd\n"); exit (0); 1300876ff6feSmrg#endif 1301876ff6feSmrg 1302876ff6feSmrg#if defined (NeXT) 1303876ff6feSmrg#if !defined (__ARCHITECTURE__) 1304876ff6feSmrg#define __ARCHITECTURE__ "m68k" 1305876ff6feSmrg#endif 1306876ff6feSmrg int version; 1307876ff6feSmrg version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; 1308876ff6feSmrg if (version < 4) 1309876ff6feSmrg printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); 1310876ff6feSmrg else 1311876ff6feSmrg printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); 1312876ff6feSmrg exit (0); 1313876ff6feSmrg#endif 1314876ff6feSmrg 1315876ff6feSmrg#if defined (MULTIMAX) || defined (n16) 1316876ff6feSmrg#if defined (UMAXV) 1317876ff6feSmrg printf ("ns32k-encore-sysv\n"); exit (0); 1318876ff6feSmrg#else 1319876ff6feSmrg#if defined (CMU) 1320876ff6feSmrg printf ("ns32k-encore-mach\n"); exit (0); 1321876ff6feSmrg#else 1322876ff6feSmrg printf ("ns32k-encore-bsd\n"); exit (0); 1323876ff6feSmrg#endif 1324876ff6feSmrg#endif 1325876ff6feSmrg#endif 1326876ff6feSmrg 1327876ff6feSmrg#if defined (__386BSD__) 1328876ff6feSmrg printf ("i386-pc-bsd\n"); exit (0); 1329876ff6feSmrg#endif 1330876ff6feSmrg 1331876ff6feSmrg#if defined (sequent) 1332876ff6feSmrg#if defined (i386) 1333876ff6feSmrg printf ("i386-sequent-dynix\n"); exit (0); 1334876ff6feSmrg#endif 1335876ff6feSmrg#if defined (ns32000) 1336876ff6feSmrg printf ("ns32k-sequent-dynix\n"); exit (0); 1337876ff6feSmrg#endif 1338876ff6feSmrg#endif 1339876ff6feSmrg 1340876ff6feSmrg#if defined (_SEQUENT_) 1341876ff6feSmrg struct utsname un; 1342876ff6feSmrg 1343876ff6feSmrg uname(&un); 1344876ff6feSmrg 1345876ff6feSmrg if (strncmp(un.version, "V2", 2) == 0) { 1346876ff6feSmrg printf ("i386-sequent-ptx2\n"); exit (0); 1347876ff6feSmrg } 1348876ff6feSmrg if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ 1349876ff6feSmrg printf ("i386-sequent-ptx1\n"); exit (0); 1350876ff6feSmrg } 1351876ff6feSmrg printf ("i386-sequent-ptx\n"); exit (0); 1352876ff6feSmrg 1353876ff6feSmrg#endif 1354876ff6feSmrg 1355876ff6feSmrg#if defined (vax) 1356876ff6feSmrg# if !defined (ultrix) 1357876ff6feSmrg# include <sys/param.h> 1358876ff6feSmrg# if defined (BSD) 1359876ff6feSmrg# if BSD == 43 1360876ff6feSmrg printf ("vax-dec-bsd4.3\n"); exit (0); 1361876ff6feSmrg# else 1362876ff6feSmrg# if BSD == 199006 1363876ff6feSmrg printf ("vax-dec-bsd4.3reno\n"); exit (0); 1364876ff6feSmrg# else 1365876ff6feSmrg printf ("vax-dec-bsd\n"); exit (0); 1366876ff6feSmrg# endif 1367876ff6feSmrg# endif 1368876ff6feSmrg# else 1369876ff6feSmrg printf ("vax-dec-bsd\n"); exit (0); 1370876ff6feSmrg# endif 1371876ff6feSmrg# else 1372876ff6feSmrg printf ("vax-dec-ultrix\n"); exit (0); 1373876ff6feSmrg# endif 1374876ff6feSmrg#endif 1375876ff6feSmrg 1376876ff6feSmrg#if defined (alliant) && defined (i860) 1377876ff6feSmrg printf ("i860-alliant-bsd\n"); exit (0); 1378876ff6feSmrg#endif 1379876ff6feSmrg 1380876ff6feSmrg exit (1); 1381876ff6feSmrg} 1382876ff6feSmrgEOF 1383876ff6feSmrg 1384876ff6feSmrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && 1385876ff6feSmrg { echo "$SYSTEM_NAME"; exit; } 1386876ff6feSmrg 1387876ff6feSmrg# Apollos put the system type in the environment. 1388876ff6feSmrg 1389876ff6feSmrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } 1390876ff6feSmrg 1391876ff6feSmrg# Convex versions that predate uname can use getsysinfo(1) 1392876ff6feSmrg 1393876ff6feSmrgif [ -x /usr/convex/getsysinfo ] 1394876ff6feSmrgthen 1395876ff6feSmrg case `getsysinfo -f cpu_type` in 1396876ff6feSmrg c1*) 1397876ff6feSmrg echo c1-convex-bsd 1398876ff6feSmrg exit ;; 1399876ff6feSmrg c2*) 1400876ff6feSmrg if getsysinfo -f scalar_acc 1401876ff6feSmrg then echo c32-convex-bsd 1402876ff6feSmrg else echo c2-convex-bsd 1403876ff6feSmrg fi 1404876ff6feSmrg exit ;; 1405876ff6feSmrg c34*) 1406876ff6feSmrg echo c34-convex-bsd 1407876ff6feSmrg exit ;; 1408876ff6feSmrg c38*) 1409876ff6feSmrg echo c38-convex-bsd 1410876ff6feSmrg exit ;; 1411876ff6feSmrg c4*) 1412876ff6feSmrg echo c4-convex-bsd 1413876ff6feSmrg exit ;; 1414876ff6feSmrg esac 1415876ff6feSmrgfi 1416876ff6feSmrg 1417876ff6feSmrgcat >&2 <<EOF 1418876ff6feSmrg$0: unable to guess system type 1419876ff6feSmrg 1420876ff6feSmrgThis script, last modified $timestamp, has failed to recognize 1421876ff6feSmrgthe operating system you are using. It is advised that you 1422876ff6feSmrgdownload the most up to date version of the config scripts from 1423876ff6feSmrg 1424876ff6feSmrg http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess 1425876ff6feSmrgand 1426876ff6feSmrg http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub 1427876ff6feSmrg 1428876ff6feSmrgIf the version you run ($0) is already up to date, please 1429876ff6feSmrgsend the following data and any information you think might be 1430876ff6feSmrgpertinent to <config-patches@gnu.org> in order to provide the needed 1431876ff6feSmrginformation to handle your system. 1432876ff6feSmrg 1433876ff6feSmrgconfig.guess timestamp = $timestamp 1434876ff6feSmrg 1435876ff6feSmrguname -m = `(uname -m) 2>/dev/null || echo unknown` 1436876ff6feSmrguname -r = `(uname -r) 2>/dev/null || echo unknown` 1437876ff6feSmrguname -s = `(uname -s) 2>/dev/null || echo unknown` 1438876ff6feSmrguname -v = `(uname -v) 2>/dev/null || echo unknown` 1439876ff6feSmrg 1440876ff6feSmrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 1441876ff6feSmrg/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 1442876ff6feSmrg 1443876ff6feSmrghostinfo = `(hostinfo) 2>/dev/null` 1444876ff6feSmrg/bin/universe = `(/bin/universe) 2>/dev/null` 1445876ff6feSmrg/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 1446876ff6feSmrg/bin/arch = `(/bin/arch) 2>/dev/null` 1447876ff6feSmrg/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 1448876ff6feSmrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 1449876ff6feSmrg 1450876ff6feSmrgUNAME_MACHINE = ${UNAME_MACHINE} 1451876ff6feSmrgUNAME_RELEASE = ${UNAME_RELEASE} 1452876ff6feSmrgUNAME_SYSTEM = ${UNAME_SYSTEM} 1453876ff6feSmrgUNAME_VERSION = ${UNAME_VERSION} 1454876ff6feSmrgEOF 1455876ff6feSmrg 1456876ff6feSmrgexit 1 1457876ff6feSmrg 1458876ff6feSmrg# Local variables: 1459876ff6feSmrg# eval: (add-hook 'write-file-hooks 'time-stamp) 1460876ff6feSmrg# time-stamp-start: "timestamp='" 1461876ff6feSmrg# time-stamp-format: "%:y-%02m-%02d" 1462876ff6feSmrg# time-stamp-end: "'" 1463876ff6feSmrg# End: 1464