config.guess revision 067610f1
1067610f1Smrg#! /bin/sh 2067610f1Smrg# Attempt to guess a canonical system name. 3067610f1Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4067610f1Smrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 5067610f1Smrg# Free Software Foundation, Inc. 6067610f1Smrg 7067610f1Smrgtimestamp='2008-01-08' 8067610f1Smrg 9067610f1Smrg# This file is free software; you can redistribute it and/or modify it 10067610f1Smrg# under the terms of the GNU General Public License as published by 11067610f1Smrg# the Free Software Foundation; either version 2 of the License, or 12067610f1Smrg# (at your option) any later version. 13067610f1Smrg# 14067610f1Smrg# This program is distributed in the hope that it will be useful, but 15067610f1Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of 16067610f1Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 17067610f1Smrg# General Public License for more details. 18067610f1Smrg# 19067610f1Smrg# You should have received a copy of the GNU General Public License 20067610f1Smrg# along with this program; if not, write to the Free Software 21067610f1Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 22067610f1Smrg# 02110-1301, USA. 23067610f1Smrg# 24067610f1Smrg# As a special exception to the GNU General Public License, if you 25067610f1Smrg# distribute this file as part of a program that contains a 26067610f1Smrg# configuration script generated by Autoconf, you may include it under 27067610f1Smrg# the same distribution terms that you use for the rest of that program. 28067610f1Smrg 29067610f1Smrg 30067610f1Smrg# Originally written by Per Bothner <per@bothner.com>. 31067610f1Smrg# Please send patches to <config-patches@gnu.org>. Submit a context 32067610f1Smrg# diff and a properly formatted ChangeLog entry. 33067610f1Smrg# 34067610f1Smrg# This script attempts to guess a canonical system name similar to 35067610f1Smrg# config.sub. If it succeeds, it prints the system name on stdout, and 36067610f1Smrg# exits with 0. Otherwise, it exits with 1. 37067610f1Smrg# 38067610f1Smrg# The plan is that this can be called by configure scripts if you 39067610f1Smrg# don't specify an explicit build system type. 40067610f1Smrg 41067610f1Smrgme=`echo "$0" | sed -e 's,.*/,,'` 42067610f1Smrg 43067610f1Smrgusage="\ 44067610f1SmrgUsage: $0 [OPTION] 45067610f1Smrg 46067610f1SmrgOutput the configuration name of the system \`$me' is run on. 47067610f1Smrg 48067610f1SmrgOperation modes: 49067610f1Smrg -h, --help print this help, then exit 50067610f1Smrg -t, --time-stamp print date of last modification, then exit 51067610f1Smrg -v, --version print version number, then exit 52067610f1Smrg 53067610f1SmrgReport bugs and patches to <config-patches@gnu.org>." 54067610f1Smrg 55067610f1Smrgversion="\ 56067610f1SmrgGNU config.guess ($timestamp) 57067610f1Smrg 58067610f1SmrgOriginally written by Per Bothner. 59067610f1SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 60067610f1Smrg2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. 61067610f1Smrg 62067610f1SmrgThis is free software; see the source for copying conditions. There is NO 63067610f1Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 64067610f1Smrg 65067610f1Smrghelp=" 66067610f1SmrgTry \`$me --help' for more information." 67067610f1Smrg 68067610f1Smrg# Parse command line 69067610f1Smrgwhile test $# -gt 0 ; do 70067610f1Smrg case $1 in 71067610f1Smrg --time-stamp | --time* | -t ) 72067610f1Smrg echo "$timestamp" ; exit ;; 73067610f1Smrg --version | -v ) 74067610f1Smrg echo "$version" ; exit ;; 75067610f1Smrg --help | --h* | -h ) 76067610f1Smrg echo "$usage"; exit ;; 77067610f1Smrg -- ) # Stop option processing 78067610f1Smrg shift; break ;; 79067610f1Smrg - ) # Use stdin as input. 80067610f1Smrg break ;; 81067610f1Smrg -* ) 82067610f1Smrg echo "$me: invalid option $1$help" >&2 83067610f1Smrg exit 1 ;; 84067610f1Smrg * ) 85067610f1Smrg break ;; 86067610f1Smrg esac 87067610f1Smrgdone 88067610f1Smrg 89067610f1Smrgif test $# != 0; then 90067610f1Smrg echo "$me: too many arguments$help" >&2 91067610f1Smrg exit 1 92067610f1Smrgfi 93067610f1Smrg 94067610f1Smrgtrap 'exit 1' 1 2 15 95067610f1Smrg 96067610f1Smrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 97067610f1Smrg# compiler to aid in system detection is discouraged as it requires 98067610f1Smrg# temporary files to be created and, as you can see below, it is a 99067610f1Smrg# headache to deal with in a portable fashion. 100067610f1Smrg 101067610f1Smrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 102067610f1Smrg# use `HOST_CC' if defined, but it is deprecated. 103067610f1Smrg 104067610f1Smrg# Portable tmp directory creation inspired by the Autoconf team. 105067610f1Smrg 106067610f1Smrgset_cc_for_build=' 107067610f1Smrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; 108067610f1Smrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 109067610f1Smrg: ${TMPDIR=/tmp} ; 110067610f1Smrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 111067610f1Smrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 112067610f1Smrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || 113067610f1Smrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; 114067610f1Smrgdummy=$tmp/dummy ; 115067610f1Smrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; 116067610f1Smrgcase $CC_FOR_BUILD,$HOST_CC,$CC in 117067610f1Smrg ,,) echo "int x;" > $dummy.c ; 118067610f1Smrg for c in cc gcc c89 c99 ; do 119067610f1Smrg if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then 120067610f1Smrg CC_FOR_BUILD="$c"; break ; 121067610f1Smrg fi ; 122067610f1Smrg done ; 123067610f1Smrg if test x"$CC_FOR_BUILD" = x ; then 124067610f1Smrg CC_FOR_BUILD=no_compiler_found ; 125067610f1Smrg fi 126067610f1Smrg ;; 127067610f1Smrg ,,*) CC_FOR_BUILD=$CC ;; 128067610f1Smrg ,*,*) CC_FOR_BUILD=$HOST_CC ;; 129067610f1Smrgesac ; set_cc_for_build= ;' 130067610f1Smrg 131067610f1Smrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 132067610f1Smrg# (ghazi@noc.rutgers.edu 1994-08-24) 133067610f1Smrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then 134067610f1Smrg PATH=$PATH:/.attbin ; export PATH 135067610f1Smrgfi 136067610f1Smrg 137067610f1SmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 138067610f1SmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 139067610f1SmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 140067610f1SmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 141067610f1Smrg 142067610f1Smrg# Note: order is significant - the case branches are not exclusive. 143067610f1Smrg 144067610f1Smrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 145067610f1Smrg *:NetBSD:*:*) 146067610f1Smrg # NetBSD (nbsd) targets should (where applicable) match one or 147067610f1Smrg # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, 148067610f1Smrg # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 149067610f1Smrg # switched to ELF, *-*-netbsd* would select the old 150067610f1Smrg # object file format. This provides both forward 151067610f1Smrg # compatibility and a consistent mechanism for selecting the 152067610f1Smrg # object file format. 153067610f1Smrg # 154067610f1Smrg # Note: NetBSD doesn't particularly care about the vendor 155067610f1Smrg # portion of the name. We always set it to "unknown". 156067610f1Smrg sysctl="sysctl -n hw.machine_arch" 157067610f1Smrg UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ 158067610f1Smrg /usr/sbin/$sysctl 2>/dev/null || echo unknown)` 159067610f1Smrg case "${UNAME_MACHINE_ARCH}" in 160067610f1Smrg armeb) machine=armeb-unknown ;; 161067610f1Smrg arm*) machine=arm-unknown ;; 162067610f1Smrg sh3el) machine=shl-unknown ;; 163067610f1Smrg sh3eb) machine=sh-unknown ;; 164067610f1Smrg sh5el) machine=sh5le-unknown ;; 165067610f1Smrg *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 166067610f1Smrg esac 167067610f1Smrg # The Operating System including object format, if it has switched 168067610f1Smrg # to ELF recently, or will in the future. 169067610f1Smrg case "${UNAME_MACHINE_ARCH}" in 170067610f1Smrg arm*|i386|m68k|ns32k|sh3*|sparc|vax) 171067610f1Smrg eval $set_cc_for_build 172067610f1Smrg if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 173067610f1Smrg | grep __ELF__ >/dev/null 174067610f1Smrg then 175067610f1Smrg # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 176067610f1Smrg # Return netbsd for either. FIX? 177067610f1Smrg os=netbsd 178067610f1Smrg else 179067610f1Smrg os=netbsdelf 180067610f1Smrg fi 181067610f1Smrg ;; 182067610f1Smrg *) 183067610f1Smrg os=netbsd 184067610f1Smrg ;; 185067610f1Smrg esac 186067610f1Smrg # The OS release 187067610f1Smrg # Debian GNU/NetBSD machines have a different userland, and 188067610f1Smrg # thus, need a distinct triplet. However, they do not need 189067610f1Smrg # kernel version information, so it can be replaced with a 190067610f1Smrg # suitable tag, in the style of linux-gnu. 191067610f1Smrg case "${UNAME_VERSION}" in 192067610f1Smrg Debian*) 193067610f1Smrg release='-gnu' 194067610f1Smrg ;; 195067610f1Smrg *) 196067610f1Smrg release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` 197067610f1Smrg ;; 198067610f1Smrg esac 199067610f1Smrg # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 200067610f1Smrg # contains redundant information, the shorter form: 201067610f1Smrg # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 202067610f1Smrg echo "${machine}-${os}${release}" 203067610f1Smrg exit ;; 204067610f1Smrg *:OpenBSD:*:*) 205067610f1Smrg UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 206067610f1Smrg echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 207067610f1Smrg exit ;; 208067610f1Smrg *:ekkoBSD:*:*) 209067610f1Smrg echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 210067610f1Smrg exit ;; 211067610f1Smrg *:SolidBSD:*:*) 212067610f1Smrg echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} 213067610f1Smrg exit ;; 214067610f1Smrg macppc:MirBSD:*:*) 215067610f1Smrg echo powerpc-unknown-mirbsd${UNAME_RELEASE} 216067610f1Smrg exit ;; 217067610f1Smrg *:MirBSD:*:*) 218067610f1Smrg echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 219067610f1Smrg exit ;; 220067610f1Smrg alpha:OSF1:*:*) 221067610f1Smrg case $UNAME_RELEASE in 222067610f1Smrg *4.0) 223067610f1Smrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 224067610f1Smrg ;; 225067610f1Smrg *5.*) 226067610f1Smrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 227067610f1Smrg ;; 228067610f1Smrg esac 229067610f1Smrg # According to Compaq, /usr/sbin/psrinfo has been available on 230067610f1Smrg # OSF/1 and Tru64 systems produced since 1995. I hope that 231067610f1Smrg # covers most systems running today. This code pipes the CPU 232067610f1Smrg # types through head -n 1, so we only detect the type of CPU 0. 233067610f1Smrg ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 234067610f1Smrg case "$ALPHA_CPU_TYPE" in 235067610f1Smrg "EV4 (21064)") 236067610f1Smrg UNAME_MACHINE="alpha" ;; 237067610f1Smrg "EV4.5 (21064)") 238067610f1Smrg UNAME_MACHINE="alpha" ;; 239067610f1Smrg "LCA4 (21066/21068)") 240067610f1Smrg UNAME_MACHINE="alpha" ;; 241067610f1Smrg "EV5 (21164)") 242067610f1Smrg UNAME_MACHINE="alphaev5" ;; 243067610f1Smrg "EV5.6 (21164A)") 244067610f1Smrg UNAME_MACHINE="alphaev56" ;; 245067610f1Smrg "EV5.6 (21164PC)") 246067610f1Smrg UNAME_MACHINE="alphapca56" ;; 247067610f1Smrg "EV5.7 (21164PC)") 248067610f1Smrg UNAME_MACHINE="alphapca57" ;; 249067610f1Smrg "EV6 (21264)") 250067610f1Smrg UNAME_MACHINE="alphaev6" ;; 251067610f1Smrg "EV6.7 (21264A)") 252067610f1Smrg UNAME_MACHINE="alphaev67" ;; 253067610f1Smrg "EV6.8CB (21264C)") 254067610f1Smrg UNAME_MACHINE="alphaev68" ;; 255067610f1Smrg "EV6.8AL (21264B)") 256067610f1Smrg UNAME_MACHINE="alphaev68" ;; 257067610f1Smrg "EV6.8CX (21264D)") 258067610f1Smrg UNAME_MACHINE="alphaev68" ;; 259067610f1Smrg "EV6.9A (21264/EV69A)") 260067610f1Smrg UNAME_MACHINE="alphaev69" ;; 261067610f1Smrg "EV7 (21364)") 262067610f1Smrg UNAME_MACHINE="alphaev7" ;; 263067610f1Smrg "EV7.9 (21364A)") 264067610f1Smrg UNAME_MACHINE="alphaev79" ;; 265067610f1Smrg esac 266067610f1Smrg # A Pn.n version is a patched version. 267067610f1Smrg # A Vn.n version is a released version. 268067610f1Smrg # A Tn.n version is a released field test version. 269067610f1Smrg # A Xn.n version is an unreleased experimental baselevel. 270067610f1Smrg # 1.2 uses "1.2" for uname -r. 271067610f1Smrg echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 272067610f1Smrg exit ;; 273067610f1Smrg Alpha\ *:Windows_NT*:*) 274067610f1Smrg # How do we know it's Interix rather than the generic POSIX subsystem? 275067610f1Smrg # Should we change UNAME_MACHINE based on the output of uname instead 276067610f1Smrg # of the specific Alpha model? 277067610f1Smrg echo alpha-pc-interix 278067610f1Smrg exit ;; 279067610f1Smrg 21064:Windows_NT:50:3) 280067610f1Smrg echo alpha-dec-winnt3.5 281067610f1Smrg exit ;; 282067610f1Smrg Amiga*:UNIX_System_V:4.0:*) 283067610f1Smrg echo m68k-unknown-sysv4 284067610f1Smrg exit ;; 285067610f1Smrg *:[Aa]miga[Oo][Ss]:*:*) 286067610f1Smrg echo ${UNAME_MACHINE}-unknown-amigaos 287067610f1Smrg exit ;; 288067610f1Smrg *:[Mm]orph[Oo][Ss]:*:*) 289067610f1Smrg echo ${UNAME_MACHINE}-unknown-morphos 290067610f1Smrg exit ;; 291067610f1Smrg *:OS/390:*:*) 292067610f1Smrg echo i370-ibm-openedition 293067610f1Smrg exit ;; 294067610f1Smrg *:z/VM:*:*) 295067610f1Smrg echo s390-ibm-zvmoe 296067610f1Smrg exit ;; 297067610f1Smrg *:OS400:*:*) 298067610f1Smrg echo powerpc-ibm-os400 299067610f1Smrg exit ;; 300067610f1Smrg arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 301067610f1Smrg echo arm-acorn-riscix${UNAME_RELEASE} 302067610f1Smrg exit ;; 303067610f1Smrg arm:riscos:*:*|arm:RISCOS:*:*) 304067610f1Smrg echo arm-unknown-riscos 305067610f1Smrg exit ;; 306067610f1Smrg SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 307067610f1Smrg echo hppa1.1-hitachi-hiuxmpp 308067610f1Smrg exit ;; 309067610f1Smrg Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 310067610f1Smrg # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 311067610f1Smrg if test "`(/bin/universe) 2>/dev/null`" = att ; then 312067610f1Smrg echo pyramid-pyramid-sysv3 313067610f1Smrg else 314067610f1Smrg echo pyramid-pyramid-bsd 315067610f1Smrg fi 316067610f1Smrg exit ;; 317067610f1Smrg NILE*:*:*:dcosx) 318067610f1Smrg echo pyramid-pyramid-svr4 319067610f1Smrg exit ;; 320067610f1Smrg DRS?6000:unix:4.0:6*) 321067610f1Smrg echo sparc-icl-nx6 322067610f1Smrg exit ;; 323067610f1Smrg DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 324067610f1Smrg case `/usr/bin/uname -p` in 325067610f1Smrg sparc) echo sparc-icl-nx7; exit ;; 326067610f1Smrg esac ;; 327067610f1Smrg sun4H:SunOS:5.*:*) 328067610f1Smrg echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 329067610f1Smrg exit ;; 330067610f1Smrg sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 331067610f1Smrg echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 332067610f1Smrg exit ;; 333067610f1Smrg i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) 334067610f1Smrg echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 335067610f1Smrg exit ;; 336067610f1Smrg sun4*:SunOS:6*:*) 337067610f1Smrg # According to config.sub, this is the proper way to canonicalize 338067610f1Smrg # SunOS6. Hard to guess exactly what SunOS6 will be like, but 339067610f1Smrg # it's likely to be more like Solaris than SunOS4. 340067610f1Smrg echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 341067610f1Smrg exit ;; 342067610f1Smrg sun4*:SunOS:*:*) 343067610f1Smrg case "`/usr/bin/arch -k`" in 344067610f1Smrg Series*|S4*) 345067610f1Smrg UNAME_RELEASE=`uname -v` 346067610f1Smrg ;; 347067610f1Smrg esac 348067610f1Smrg # Japanese Language versions have a version number like `4.1.3-JL'. 349067610f1Smrg echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 350067610f1Smrg exit ;; 351067610f1Smrg sun3*:SunOS:*:*) 352067610f1Smrg echo m68k-sun-sunos${UNAME_RELEASE} 353067610f1Smrg exit ;; 354067610f1Smrg sun*:*:4.2BSD:*) 355067610f1Smrg UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 356067610f1Smrg test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 357067610f1Smrg case "`/bin/arch`" in 358067610f1Smrg sun3) 359067610f1Smrg echo m68k-sun-sunos${UNAME_RELEASE} 360067610f1Smrg ;; 361067610f1Smrg sun4) 362067610f1Smrg echo sparc-sun-sunos${UNAME_RELEASE} 363067610f1Smrg ;; 364067610f1Smrg esac 365067610f1Smrg exit ;; 366067610f1Smrg aushp:SunOS:*:*) 367067610f1Smrg echo sparc-auspex-sunos${UNAME_RELEASE} 368067610f1Smrg exit ;; 369067610f1Smrg # The situation for MiNT is a little confusing. The machine name 370067610f1Smrg # can be virtually everything (everything which is not 371067610f1Smrg # "atarist" or "atariste" at least should have a processor 372067610f1Smrg # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 373067610f1Smrg # to the lowercase version "mint" (or "freemint"). Finally 374067610f1Smrg # the system name "TOS" denotes a system which is actually not 375067610f1Smrg # MiNT. But MiNT is downward compatible to TOS, so this should 376067610f1Smrg # be no problem. 377067610f1Smrg atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 378067610f1Smrg echo m68k-atari-mint${UNAME_RELEASE} 379067610f1Smrg exit ;; 380067610f1Smrg atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 381067610f1Smrg echo m68k-atari-mint${UNAME_RELEASE} 382067610f1Smrg exit ;; 383067610f1Smrg *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 384067610f1Smrg echo m68k-atari-mint${UNAME_RELEASE} 385067610f1Smrg exit ;; 386067610f1Smrg milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 387067610f1Smrg echo m68k-milan-mint${UNAME_RELEASE} 388067610f1Smrg exit ;; 389067610f1Smrg hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 390067610f1Smrg echo m68k-hades-mint${UNAME_RELEASE} 391067610f1Smrg exit ;; 392067610f1Smrg *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 393067610f1Smrg echo m68k-unknown-mint${UNAME_RELEASE} 394067610f1Smrg exit ;; 395067610f1Smrg m68k:machten:*:*) 396067610f1Smrg echo m68k-apple-machten${UNAME_RELEASE} 397067610f1Smrg exit ;; 398067610f1Smrg powerpc:machten:*:*) 399067610f1Smrg echo powerpc-apple-machten${UNAME_RELEASE} 400067610f1Smrg exit ;; 401067610f1Smrg RISC*:Mach:*:*) 402067610f1Smrg echo mips-dec-mach_bsd4.3 403067610f1Smrg exit ;; 404067610f1Smrg RISC*:ULTRIX:*:*) 405067610f1Smrg echo mips-dec-ultrix${UNAME_RELEASE} 406067610f1Smrg exit ;; 407067610f1Smrg VAX*:ULTRIX*:*:*) 408067610f1Smrg echo vax-dec-ultrix${UNAME_RELEASE} 409067610f1Smrg exit ;; 410067610f1Smrg 2020:CLIX:*:* | 2430:CLIX:*:*) 411067610f1Smrg echo clipper-intergraph-clix${UNAME_RELEASE} 412067610f1Smrg exit ;; 413067610f1Smrg mips:*:*:UMIPS | mips:*:*:RISCos) 414067610f1Smrg eval $set_cc_for_build 415067610f1Smrg sed 's/^ //' << EOF >$dummy.c 416067610f1Smrg#ifdef __cplusplus 417067610f1Smrg#include <stdio.h> /* for printf() prototype */ 418067610f1Smrg int main (int argc, char *argv[]) { 419067610f1Smrg#else 420067610f1Smrg int main (argc, argv) int argc; char *argv[]; { 421067610f1Smrg#endif 422067610f1Smrg #if defined (host_mips) && defined (MIPSEB) 423067610f1Smrg #if defined (SYSTYPE_SYSV) 424067610f1Smrg printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 425067610f1Smrg #endif 426067610f1Smrg #if defined (SYSTYPE_SVR4) 427067610f1Smrg printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 428067610f1Smrg #endif 429067610f1Smrg #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 430067610f1Smrg printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 431067610f1Smrg #endif 432067610f1Smrg #endif 433067610f1Smrg exit (-1); 434067610f1Smrg } 435067610f1SmrgEOF 436067610f1Smrg $CC_FOR_BUILD -o $dummy $dummy.c && 437067610f1Smrg dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 438067610f1Smrg SYSTEM_NAME=`$dummy $dummyarg` && 439067610f1Smrg { echo "$SYSTEM_NAME"; exit; } 440067610f1Smrg echo mips-mips-riscos${UNAME_RELEASE} 441067610f1Smrg exit ;; 442067610f1Smrg Motorola:PowerMAX_OS:*:*) 443067610f1Smrg echo powerpc-motorola-powermax 444067610f1Smrg exit ;; 445067610f1Smrg Motorola:*:4.3:PL8-*) 446067610f1Smrg echo powerpc-harris-powermax 447067610f1Smrg exit ;; 448067610f1Smrg Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 449067610f1Smrg echo powerpc-harris-powermax 450067610f1Smrg exit ;; 451067610f1Smrg Night_Hawk:Power_UNIX:*:*) 452067610f1Smrg echo powerpc-harris-powerunix 453067610f1Smrg exit ;; 454067610f1Smrg m88k:CX/UX:7*:*) 455067610f1Smrg echo m88k-harris-cxux7 456067610f1Smrg exit ;; 457067610f1Smrg m88k:*:4*:R4*) 458067610f1Smrg echo m88k-motorola-sysv4 459067610f1Smrg exit ;; 460067610f1Smrg m88k:*:3*:R3*) 461067610f1Smrg echo m88k-motorola-sysv3 462067610f1Smrg exit ;; 463067610f1Smrg AViiON:dgux:*:*) 464067610f1Smrg # DG/UX returns AViiON for all architectures 465067610f1Smrg UNAME_PROCESSOR=`/usr/bin/uname -p` 466067610f1Smrg if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 467067610f1Smrg then 468067610f1Smrg if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 469067610f1Smrg [ ${TARGET_BINARY_INTERFACE}x = x ] 470067610f1Smrg then 471067610f1Smrg echo m88k-dg-dgux${UNAME_RELEASE} 472067610f1Smrg else 473067610f1Smrg echo m88k-dg-dguxbcs${UNAME_RELEASE} 474067610f1Smrg fi 475067610f1Smrg else 476067610f1Smrg echo i586-dg-dgux${UNAME_RELEASE} 477067610f1Smrg fi 478067610f1Smrg exit ;; 479067610f1Smrg M88*:DolphinOS:*:*) # DolphinOS (SVR3) 480067610f1Smrg echo m88k-dolphin-sysv3 481067610f1Smrg exit ;; 482067610f1Smrg M88*:*:R3*:*) 483067610f1Smrg # Delta 88k system running SVR3 484067610f1Smrg echo m88k-motorola-sysv3 485067610f1Smrg exit ;; 486067610f1Smrg XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 487067610f1Smrg echo m88k-tektronix-sysv3 488067610f1Smrg exit ;; 489067610f1Smrg Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 490067610f1Smrg echo m68k-tektronix-bsd 491067610f1Smrg exit ;; 492067610f1Smrg *:IRIX*:*:*) 493067610f1Smrg echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 494067610f1Smrg exit ;; 495067610f1Smrg ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 496067610f1Smrg echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 497067610f1Smrg exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 498067610f1Smrg i*86:AIX:*:*) 499067610f1Smrg echo i386-ibm-aix 500067610f1Smrg exit ;; 501067610f1Smrg ia64:AIX:*:*) 502067610f1Smrg if [ -x /usr/bin/oslevel ] ; then 503067610f1Smrg IBM_REV=`/usr/bin/oslevel` 504067610f1Smrg else 505067610f1Smrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 506067610f1Smrg fi 507067610f1Smrg echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 508067610f1Smrg exit ;; 509067610f1Smrg *:AIX:2:3) 510067610f1Smrg if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 511067610f1Smrg eval $set_cc_for_build 512067610f1Smrg sed 's/^ //' << EOF >$dummy.c 513067610f1Smrg #include <sys/systemcfg.h> 514067610f1Smrg 515067610f1Smrg main() 516067610f1Smrg { 517067610f1Smrg if (!__power_pc()) 518067610f1Smrg exit(1); 519067610f1Smrg puts("powerpc-ibm-aix3.2.5"); 520067610f1Smrg exit(0); 521067610f1Smrg } 522067610f1SmrgEOF 523067610f1Smrg if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 524067610f1Smrg then 525067610f1Smrg echo "$SYSTEM_NAME" 526067610f1Smrg else 527067610f1Smrg echo rs6000-ibm-aix3.2.5 528067610f1Smrg fi 529067610f1Smrg elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 530067610f1Smrg echo rs6000-ibm-aix3.2.4 531067610f1Smrg else 532067610f1Smrg echo rs6000-ibm-aix3.2 533067610f1Smrg fi 534067610f1Smrg exit ;; 535067610f1Smrg *:AIX:*:[456]) 536067610f1Smrg IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 537067610f1Smrg if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 538067610f1Smrg IBM_ARCH=rs6000 539067610f1Smrg else 540067610f1Smrg IBM_ARCH=powerpc 541067610f1Smrg fi 542067610f1Smrg if [ -x /usr/bin/oslevel ] ; then 543067610f1Smrg IBM_REV=`/usr/bin/oslevel` 544067610f1Smrg else 545067610f1Smrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 546067610f1Smrg fi 547067610f1Smrg echo ${IBM_ARCH}-ibm-aix${IBM_REV} 548067610f1Smrg exit ;; 549067610f1Smrg *:AIX:*:*) 550067610f1Smrg echo rs6000-ibm-aix 551067610f1Smrg exit ;; 552067610f1Smrg ibmrt:4.4BSD:*|romp-ibm:BSD:*) 553067610f1Smrg echo romp-ibm-bsd4.4 554067610f1Smrg exit ;; 555067610f1Smrg ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 556067610f1Smrg echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 557067610f1Smrg exit ;; # report: romp-ibm BSD 4.3 558067610f1Smrg *:BOSX:*:*) 559067610f1Smrg echo rs6000-bull-bosx 560067610f1Smrg exit ;; 561067610f1Smrg DPX/2?00:B.O.S.:*:*) 562067610f1Smrg echo m68k-bull-sysv3 563067610f1Smrg exit ;; 564067610f1Smrg 9000/[34]??:4.3bsd:1.*:*) 565067610f1Smrg echo m68k-hp-bsd 566067610f1Smrg exit ;; 567067610f1Smrg hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 568067610f1Smrg echo m68k-hp-bsd4.4 569067610f1Smrg exit ;; 570067610f1Smrg 9000/[34678]??:HP-UX:*:*) 571067610f1Smrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 572067610f1Smrg case "${UNAME_MACHINE}" in 573067610f1Smrg 9000/31? ) HP_ARCH=m68000 ;; 574067610f1Smrg 9000/[34]?? ) HP_ARCH=m68k ;; 575067610f1Smrg 9000/[678][0-9][0-9]) 576067610f1Smrg if [ -x /usr/bin/getconf ]; then 577067610f1Smrg sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 578067610f1Smrg sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 579067610f1Smrg case "${sc_cpu_version}" in 580067610f1Smrg 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 581067610f1Smrg 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 582067610f1Smrg 532) # CPU_PA_RISC2_0 583067610f1Smrg case "${sc_kernel_bits}" in 584067610f1Smrg 32) HP_ARCH="hppa2.0n" ;; 585067610f1Smrg 64) HP_ARCH="hppa2.0w" ;; 586067610f1Smrg '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 587067610f1Smrg esac ;; 588067610f1Smrg esac 589067610f1Smrg fi 590067610f1Smrg if [ "${HP_ARCH}" = "" ]; then 591067610f1Smrg eval $set_cc_for_build 592067610f1Smrg sed 's/^ //' << EOF >$dummy.c 593067610f1Smrg 594067610f1Smrg #define _HPUX_SOURCE 595067610f1Smrg #include <stdlib.h> 596067610f1Smrg #include <unistd.h> 597067610f1Smrg 598067610f1Smrg int main () 599067610f1Smrg { 600067610f1Smrg #if defined(_SC_KERNEL_BITS) 601067610f1Smrg long bits = sysconf(_SC_KERNEL_BITS); 602067610f1Smrg #endif 603067610f1Smrg long cpu = sysconf (_SC_CPU_VERSION); 604067610f1Smrg 605067610f1Smrg switch (cpu) 606067610f1Smrg { 607067610f1Smrg case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 608067610f1Smrg case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 609067610f1Smrg case CPU_PA_RISC2_0: 610067610f1Smrg #if defined(_SC_KERNEL_BITS) 611067610f1Smrg switch (bits) 612067610f1Smrg { 613067610f1Smrg case 64: puts ("hppa2.0w"); break; 614067610f1Smrg case 32: puts ("hppa2.0n"); break; 615067610f1Smrg default: puts ("hppa2.0"); break; 616067610f1Smrg } break; 617067610f1Smrg #else /* !defined(_SC_KERNEL_BITS) */ 618067610f1Smrg puts ("hppa2.0"); break; 619067610f1Smrg #endif 620067610f1Smrg default: puts ("hppa1.0"); break; 621067610f1Smrg } 622067610f1Smrg exit (0); 623067610f1Smrg } 624067610f1SmrgEOF 625067610f1Smrg (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 626067610f1Smrg test -z "$HP_ARCH" && HP_ARCH=hppa 627067610f1Smrg fi ;; 628067610f1Smrg esac 629067610f1Smrg if [ ${HP_ARCH} = "hppa2.0w" ] 630067610f1Smrg then 631067610f1Smrg eval $set_cc_for_build 632067610f1Smrg 633067610f1Smrg # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 634067610f1Smrg # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 635067610f1Smrg # generating 64-bit code. GNU and HP use different nomenclature: 636067610f1Smrg # 637067610f1Smrg # $ CC_FOR_BUILD=cc ./config.guess 638067610f1Smrg # => hppa2.0w-hp-hpux11.23 639067610f1Smrg # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 640067610f1Smrg # => hppa64-hp-hpux11.23 641067610f1Smrg 642067610f1Smrg if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | 643067610f1Smrg grep __LP64__ >/dev/null 644067610f1Smrg then 645067610f1Smrg HP_ARCH="hppa2.0w" 646067610f1Smrg else 647067610f1Smrg HP_ARCH="hppa64" 648067610f1Smrg fi 649067610f1Smrg fi 650067610f1Smrg echo ${HP_ARCH}-hp-hpux${HPUX_REV} 651067610f1Smrg exit ;; 652067610f1Smrg ia64:HP-UX:*:*) 653067610f1Smrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 654067610f1Smrg echo ia64-hp-hpux${HPUX_REV} 655067610f1Smrg exit ;; 656067610f1Smrg 3050*:HI-UX:*:*) 657067610f1Smrg eval $set_cc_for_build 658067610f1Smrg sed 's/^ //' << EOF >$dummy.c 659067610f1Smrg #include <unistd.h> 660067610f1Smrg int 661067610f1Smrg main () 662067610f1Smrg { 663067610f1Smrg long cpu = sysconf (_SC_CPU_VERSION); 664067610f1Smrg /* The order matters, because CPU_IS_HP_MC68K erroneously returns 665067610f1Smrg true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 666067610f1Smrg results, however. */ 667067610f1Smrg if (CPU_IS_PA_RISC (cpu)) 668067610f1Smrg { 669067610f1Smrg switch (cpu) 670067610f1Smrg { 671067610f1Smrg case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 672067610f1Smrg case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 673067610f1Smrg case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 674067610f1Smrg default: puts ("hppa-hitachi-hiuxwe2"); break; 675067610f1Smrg } 676067610f1Smrg } 677067610f1Smrg else if (CPU_IS_HP_MC68K (cpu)) 678067610f1Smrg puts ("m68k-hitachi-hiuxwe2"); 679067610f1Smrg else puts ("unknown-hitachi-hiuxwe2"); 680067610f1Smrg exit (0); 681067610f1Smrg } 682067610f1SmrgEOF 683067610f1Smrg $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 684067610f1Smrg { echo "$SYSTEM_NAME"; exit; } 685067610f1Smrg echo unknown-hitachi-hiuxwe2 686067610f1Smrg exit ;; 687067610f1Smrg 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 688067610f1Smrg echo hppa1.1-hp-bsd 689067610f1Smrg exit ;; 690067610f1Smrg 9000/8??:4.3bsd:*:*) 691067610f1Smrg echo hppa1.0-hp-bsd 692067610f1Smrg exit ;; 693067610f1Smrg *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 694067610f1Smrg echo hppa1.0-hp-mpeix 695067610f1Smrg exit ;; 696067610f1Smrg hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 697067610f1Smrg echo hppa1.1-hp-osf 698067610f1Smrg exit ;; 699067610f1Smrg hp8??:OSF1:*:*) 700067610f1Smrg echo hppa1.0-hp-osf 701067610f1Smrg exit ;; 702067610f1Smrg i*86:OSF1:*:*) 703067610f1Smrg if [ -x /usr/sbin/sysversion ] ; then 704067610f1Smrg echo ${UNAME_MACHINE}-unknown-osf1mk 705067610f1Smrg else 706067610f1Smrg echo ${UNAME_MACHINE}-unknown-osf1 707067610f1Smrg fi 708067610f1Smrg exit ;; 709067610f1Smrg parisc*:Lites*:*:*) 710067610f1Smrg echo hppa1.1-hp-lites 711067610f1Smrg exit ;; 712067610f1Smrg C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 713067610f1Smrg echo c1-convex-bsd 714067610f1Smrg exit ;; 715067610f1Smrg C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 716067610f1Smrg if getsysinfo -f scalar_acc 717067610f1Smrg then echo c32-convex-bsd 718067610f1Smrg else echo c2-convex-bsd 719067610f1Smrg fi 720067610f1Smrg exit ;; 721067610f1Smrg C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 722067610f1Smrg echo c34-convex-bsd 723067610f1Smrg exit ;; 724067610f1Smrg C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 725067610f1Smrg echo c38-convex-bsd 726067610f1Smrg exit ;; 727067610f1Smrg C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 728067610f1Smrg echo c4-convex-bsd 729067610f1Smrg exit ;; 730067610f1Smrg CRAY*Y-MP:*:*:*) 731067610f1Smrg echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 732067610f1Smrg exit ;; 733067610f1Smrg CRAY*[A-Z]90:*:*:*) 734067610f1Smrg echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 735067610f1Smrg | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 736067610f1Smrg -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 737067610f1Smrg -e 's/\.[^.]*$/.X/' 738067610f1Smrg exit ;; 739067610f1Smrg CRAY*TS:*:*:*) 740067610f1Smrg echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 741067610f1Smrg exit ;; 742067610f1Smrg CRAY*T3E:*:*:*) 743067610f1Smrg echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 744067610f1Smrg exit ;; 745067610f1Smrg CRAY*SV1:*:*:*) 746067610f1Smrg echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 747067610f1Smrg exit ;; 748067610f1Smrg *:UNICOS/mp:*:*) 749067610f1Smrg echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 750067610f1Smrg exit ;; 751067610f1Smrg F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 752067610f1Smrg FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 753067610f1Smrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 754067610f1Smrg FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 755067610f1Smrg echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 756067610f1Smrg exit ;; 757067610f1Smrg 5000:UNIX_System_V:4.*:*) 758067610f1Smrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 759067610f1Smrg FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` 760067610f1Smrg echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 761067610f1Smrg exit ;; 762067610f1Smrg i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 763067610f1Smrg echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 764067610f1Smrg exit ;; 765067610f1Smrg sparc*:BSD/OS:*:*) 766067610f1Smrg echo sparc-unknown-bsdi${UNAME_RELEASE} 767067610f1Smrg exit ;; 768067610f1Smrg *:BSD/OS:*:*) 769067610f1Smrg echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 770067610f1Smrg exit ;; 771067610f1Smrg *:FreeBSD:*:*) 772067610f1Smrg case ${UNAME_MACHINE} in 773067610f1Smrg pc98) 774067610f1Smrg echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 775067610f1Smrg amd64) 776067610f1Smrg echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 777067610f1Smrg *) 778067610f1Smrg echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 779067610f1Smrg esac 780067610f1Smrg exit ;; 781067610f1Smrg i*:CYGWIN*:*) 782067610f1Smrg echo ${UNAME_MACHINE}-pc-cygwin 783067610f1Smrg exit ;; 784067610f1Smrg *:MINGW*:*) 785067610f1Smrg echo ${UNAME_MACHINE}-pc-mingw32 786067610f1Smrg exit ;; 787067610f1Smrg i*:windows32*:*) 788067610f1Smrg # uname -m includes "-pc" on this system. 789067610f1Smrg echo ${UNAME_MACHINE}-mingw32 790067610f1Smrg exit ;; 791067610f1Smrg i*:PW*:*) 792067610f1Smrg echo ${UNAME_MACHINE}-pc-pw32 793067610f1Smrg exit ;; 794067610f1Smrg *:Interix*:[3456]*) 795067610f1Smrg case ${UNAME_MACHINE} in 796067610f1Smrg x86) 797067610f1Smrg echo i586-pc-interix${UNAME_RELEASE} 798067610f1Smrg exit ;; 799067610f1Smrg EM64T | authenticamd) 800067610f1Smrg echo x86_64-unknown-interix${UNAME_RELEASE} 801067610f1Smrg exit ;; 802067610f1Smrg IA64) 803067610f1Smrg echo ia64-unknown-interix${UNAME_RELEASE} 804067610f1Smrg exit ;; 805067610f1Smrg esac ;; 806067610f1Smrg [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 807067610f1Smrg echo i${UNAME_MACHINE}-pc-mks 808067610f1Smrg exit ;; 809067610f1Smrg i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 810067610f1Smrg # How do we know it's Interix rather than the generic POSIX subsystem? 811067610f1Smrg # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 812067610f1Smrg # UNAME_MACHINE based on the output of uname instead of i386? 813067610f1Smrg echo i586-pc-interix 814067610f1Smrg exit ;; 815067610f1Smrg i*:UWIN*:*) 816067610f1Smrg echo ${UNAME_MACHINE}-pc-uwin 817067610f1Smrg exit ;; 818067610f1Smrg amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 819067610f1Smrg echo x86_64-unknown-cygwin 820067610f1Smrg exit ;; 821067610f1Smrg p*:CYGWIN*:*) 822067610f1Smrg echo powerpcle-unknown-cygwin 823067610f1Smrg exit ;; 824067610f1Smrg prep*:SunOS:5.*:*) 825067610f1Smrg echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 826067610f1Smrg exit ;; 827067610f1Smrg *:GNU:*:*) 828067610f1Smrg # the GNU system 829067610f1Smrg echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 830067610f1Smrg exit ;; 831067610f1Smrg *:GNU/*:*:*) 832067610f1Smrg # other systems with GNU libc and userland 833067610f1Smrg echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu 834067610f1Smrg exit ;; 835067610f1Smrg i*86:Minix:*:*) 836067610f1Smrg echo ${UNAME_MACHINE}-pc-minix 837067610f1Smrg exit ;; 838067610f1Smrg arm*:Linux:*:*) 839067610f1Smrg eval $set_cc_for_build 840067610f1Smrg if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ 841067610f1Smrg | grep -q __ARM_EABI__ 842067610f1Smrg then 843067610f1Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 844067610f1Smrg else 845067610f1Smrg echo ${UNAME_MACHINE}-unknown-linux-gnueabi 846067610f1Smrg fi 847067610f1Smrg exit ;; 848067610f1Smrg avr32*:Linux:*:*) 849067610f1Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 850067610f1Smrg exit ;; 851067610f1Smrg cris:Linux:*:*) 852067610f1Smrg echo cris-axis-linux-gnu 853067610f1Smrg exit ;; 854067610f1Smrg crisv32:Linux:*:*) 855067610f1Smrg echo crisv32-axis-linux-gnu 856067610f1Smrg exit ;; 857067610f1Smrg frv:Linux:*:*) 858067610f1Smrg echo frv-unknown-linux-gnu 859067610f1Smrg exit ;; 860067610f1Smrg ia64:Linux:*:*) 861067610f1Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 862067610f1Smrg exit ;; 863067610f1Smrg m32r*:Linux:*:*) 864067610f1Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 865067610f1Smrg exit ;; 866067610f1Smrg m68*:Linux:*:*) 867067610f1Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 868067610f1Smrg exit ;; 869067610f1Smrg mips:Linux:*:*) 870067610f1Smrg eval $set_cc_for_build 871067610f1Smrg sed 's/^ //' << EOF >$dummy.c 872067610f1Smrg #undef CPU 873067610f1Smrg #undef mips 874067610f1Smrg #undef mipsel 875067610f1Smrg #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 876067610f1Smrg CPU=mipsel 877067610f1Smrg #else 878067610f1Smrg #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 879067610f1Smrg CPU=mips 880067610f1Smrg #else 881067610f1Smrg CPU= 882067610f1Smrg #endif 883067610f1Smrg #endif 884067610f1SmrgEOF 885067610f1Smrg eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 886067610f1Smrg /^CPU/{ 887067610f1Smrg s: ::g 888067610f1Smrg p 889067610f1Smrg }'`" 890067610f1Smrg test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 891067610f1Smrg ;; 892067610f1Smrg mips64:Linux:*:*) 893067610f1Smrg eval $set_cc_for_build 894067610f1Smrg sed 's/^ //' << EOF >$dummy.c 895067610f1Smrg #undef CPU 896067610f1Smrg #undef mips64 897067610f1Smrg #undef mips64el 898067610f1Smrg #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 899067610f1Smrg CPU=mips64el 900067610f1Smrg #else 901067610f1Smrg #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 902067610f1Smrg CPU=mips64 903067610f1Smrg #else 904067610f1Smrg CPU= 905067610f1Smrg #endif 906067610f1Smrg #endif 907067610f1SmrgEOF 908067610f1Smrg eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 909067610f1Smrg /^CPU/{ 910067610f1Smrg s: ::g 911067610f1Smrg p 912067610f1Smrg }'`" 913067610f1Smrg test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 914067610f1Smrg ;; 915067610f1Smrg or32:Linux:*:*) 916067610f1Smrg echo or32-unknown-linux-gnu 917067610f1Smrg exit ;; 918067610f1Smrg ppc:Linux:*:*) 919067610f1Smrg echo powerpc-unknown-linux-gnu 920067610f1Smrg exit ;; 921067610f1Smrg ppc64:Linux:*:*) 922067610f1Smrg echo powerpc64-unknown-linux-gnu 923067610f1Smrg exit ;; 924067610f1Smrg alpha:Linux:*:*) 925067610f1Smrg case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 926067610f1Smrg EV5) UNAME_MACHINE=alphaev5 ;; 927067610f1Smrg EV56) UNAME_MACHINE=alphaev56 ;; 928067610f1Smrg PCA56) UNAME_MACHINE=alphapca56 ;; 929067610f1Smrg PCA57) UNAME_MACHINE=alphapca56 ;; 930067610f1Smrg EV6) UNAME_MACHINE=alphaev6 ;; 931067610f1Smrg EV67) UNAME_MACHINE=alphaev67 ;; 932067610f1Smrg EV68*) UNAME_MACHINE=alphaev68 ;; 933067610f1Smrg esac 934067610f1Smrg objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null 935067610f1Smrg if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi 936067610f1Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 937067610f1Smrg exit ;; 938067610f1Smrg parisc:Linux:*:* | hppa:Linux:*:*) 939067610f1Smrg # Look for CPU level 940067610f1Smrg case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 941067610f1Smrg PA7*) echo hppa1.1-unknown-linux-gnu ;; 942067610f1Smrg PA8*) echo hppa2.0-unknown-linux-gnu ;; 943067610f1Smrg *) echo hppa-unknown-linux-gnu ;; 944067610f1Smrg esac 945067610f1Smrg exit ;; 946067610f1Smrg parisc64:Linux:*:* | hppa64:Linux:*:*) 947067610f1Smrg echo hppa64-unknown-linux-gnu 948067610f1Smrg exit ;; 949067610f1Smrg s390:Linux:*:* | s390x:Linux:*:*) 950067610f1Smrg echo ${UNAME_MACHINE}-ibm-linux 951067610f1Smrg exit ;; 952067610f1Smrg sh64*:Linux:*:*) 953067610f1Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 954067610f1Smrg exit ;; 955067610f1Smrg sh*:Linux:*:*) 956067610f1Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 957067610f1Smrg exit ;; 958067610f1Smrg sparc:Linux:*:* | sparc64:Linux:*:*) 959067610f1Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 960067610f1Smrg exit ;; 961067610f1Smrg vax:Linux:*:*) 962067610f1Smrg echo ${UNAME_MACHINE}-dec-linux-gnu 963067610f1Smrg exit ;; 964067610f1Smrg x86_64:Linux:*:*) 965067610f1Smrg echo x86_64-unknown-linux-gnu 966067610f1Smrg exit ;; 967067610f1Smrg xtensa*:Linux:*:*) 968067610f1Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 969067610f1Smrg exit ;; 970067610f1Smrg i*86:Linux:*:*) 971067610f1Smrg # The BFD linker knows what the default object file format is, so 972067610f1Smrg # first see if it will tell us. cd to the root directory to prevent 973067610f1Smrg # problems with other programs or directories called `ld' in the path. 974067610f1Smrg # Set LC_ALL=C to ensure ld outputs messages in English. 975067610f1Smrg ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ 976067610f1Smrg | sed -ne '/supported targets:/!d 977067610f1Smrg s/[ ][ ]*/ /g 978067610f1Smrg s/.*supported targets: *// 979067610f1Smrg s/ .*// 980067610f1Smrg p'` 981067610f1Smrg case "$ld_supported_targets" in 982067610f1Smrg elf32-i386) 983067610f1Smrg TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" 984067610f1Smrg ;; 985067610f1Smrg a.out-i386-linux) 986067610f1Smrg echo "${UNAME_MACHINE}-pc-linux-gnuaout" 987067610f1Smrg exit ;; 988067610f1Smrg coff-i386) 989067610f1Smrg echo "${UNAME_MACHINE}-pc-linux-gnucoff" 990067610f1Smrg exit ;; 991067610f1Smrg "") 992067610f1Smrg # Either a pre-BFD a.out linker (linux-gnuoldld) or 993067610f1Smrg # one that does not give us useful --help. 994067610f1Smrg echo "${UNAME_MACHINE}-pc-linux-gnuoldld" 995067610f1Smrg exit ;; 996067610f1Smrg esac 997067610f1Smrg # Determine whether the default compiler is a.out or elf 998067610f1Smrg eval $set_cc_for_build 999067610f1Smrg sed 's/^ //' << EOF >$dummy.c 1000067610f1Smrg #include <features.h> 1001067610f1Smrg #ifdef __ELF__ 1002067610f1Smrg # ifdef __GLIBC__ 1003067610f1Smrg # if __GLIBC__ >= 2 1004067610f1Smrg LIBC=gnu 1005067610f1Smrg # else 1006067610f1Smrg LIBC=gnulibc1 1007067610f1Smrg # endif 1008067610f1Smrg # else 1009067610f1Smrg LIBC=gnulibc1 1010067610f1Smrg # endif 1011067610f1Smrg #else 1012067610f1Smrg #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC) 1013067610f1Smrg LIBC=gnu 1014067610f1Smrg #else 1015067610f1Smrg LIBC=gnuaout 1016067610f1Smrg #endif 1017067610f1Smrg #endif 1018067610f1Smrg #ifdef __dietlibc__ 1019067610f1Smrg LIBC=dietlibc 1020067610f1Smrg #endif 1021067610f1SmrgEOF 1022067610f1Smrg eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 1023067610f1Smrg /^LIBC/{ 1024067610f1Smrg s: ::g 1025067610f1Smrg p 1026067610f1Smrg }'`" 1027067610f1Smrg test x"${LIBC}" != x && { 1028067610f1Smrg echo "${UNAME_MACHINE}-pc-linux-${LIBC}" 1029067610f1Smrg exit 1030067610f1Smrg } 1031067610f1Smrg test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; } 1032067610f1Smrg ;; 1033067610f1Smrg i*86:DYNIX/ptx:4*:*) 1034067610f1Smrg # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 1035067610f1Smrg # earlier versions are messed up and put the nodename in both 1036067610f1Smrg # sysname and nodename. 1037067610f1Smrg echo i386-sequent-sysv4 1038067610f1Smrg exit ;; 1039067610f1Smrg i*86:UNIX_SV:4.2MP:2.*) 1040067610f1Smrg # Unixware is an offshoot of SVR4, but it has its own version 1041067610f1Smrg # number series starting with 2... 1042067610f1Smrg # I am not positive that other SVR4 systems won't match this, 1043067610f1Smrg # I just have to hope. -- rms. 1044067610f1Smrg # Use sysv4.2uw... so that sysv4* matches it. 1045067610f1Smrg echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 1046067610f1Smrg exit ;; 1047067610f1Smrg i*86:OS/2:*:*) 1048067610f1Smrg # If we were able to find `uname', then EMX Unix compatibility 1049067610f1Smrg # is probably installed. 1050067610f1Smrg echo ${UNAME_MACHINE}-pc-os2-emx 1051067610f1Smrg exit ;; 1052067610f1Smrg i*86:XTS-300:*:STOP) 1053067610f1Smrg echo ${UNAME_MACHINE}-unknown-stop 1054067610f1Smrg exit ;; 1055067610f1Smrg i*86:atheos:*:*) 1056067610f1Smrg echo ${UNAME_MACHINE}-unknown-atheos 1057067610f1Smrg exit ;; 1058067610f1Smrg i*86:syllable:*:*) 1059067610f1Smrg echo ${UNAME_MACHINE}-pc-syllable 1060067610f1Smrg exit ;; 1061067610f1Smrg i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) 1062067610f1Smrg echo i386-unknown-lynxos${UNAME_RELEASE} 1063067610f1Smrg exit ;; 1064067610f1Smrg i*86:*DOS:*:*) 1065067610f1Smrg echo ${UNAME_MACHINE}-pc-msdosdjgpp 1066067610f1Smrg exit ;; 1067067610f1Smrg i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 1068067610f1Smrg UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 1069067610f1Smrg if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 1070067610f1Smrg echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 1071067610f1Smrg else 1072067610f1Smrg echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 1073067610f1Smrg fi 1074067610f1Smrg exit ;; 1075067610f1Smrg i*86:*:5:[678]*) 1076067610f1Smrg # UnixWare 7.x, OpenUNIX and OpenServer 6. 1077067610f1Smrg case `/bin/uname -X | grep "^Machine"` in 1078067610f1Smrg *486*) UNAME_MACHINE=i486 ;; 1079067610f1Smrg *Pentium) UNAME_MACHINE=i586 ;; 1080067610f1Smrg *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 1081067610f1Smrg esac 1082067610f1Smrg echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 1083067610f1Smrg exit ;; 1084067610f1Smrg i*86:*:3.2:*) 1085067610f1Smrg if test -f /usr/options/cb.name; then 1086067610f1Smrg UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 1087067610f1Smrg echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 1088067610f1Smrg elif /bin/uname -X 2>/dev/null >/dev/null ; then 1089067610f1Smrg UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 1090067610f1Smrg (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 1091067610f1Smrg (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 1092067610f1Smrg && UNAME_MACHINE=i586 1093067610f1Smrg (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 1094067610f1Smrg && UNAME_MACHINE=i686 1095067610f1Smrg (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 1096067610f1Smrg && UNAME_MACHINE=i686 1097067610f1Smrg echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 1098067610f1Smrg else 1099067610f1Smrg echo ${UNAME_MACHINE}-pc-sysv32 1100067610f1Smrg fi 1101067610f1Smrg exit ;; 1102067610f1Smrg pc:*:*:*) 1103067610f1Smrg # Left here for compatibility: 1104067610f1Smrg # uname -m prints for DJGPP always 'pc', but it prints nothing about 1105067610f1Smrg # the processor, so we play safe by assuming i386. 1106067610f1Smrg echo i386-pc-msdosdjgpp 1107067610f1Smrg exit ;; 1108067610f1Smrg Intel:Mach:3*:*) 1109067610f1Smrg echo i386-pc-mach3 1110067610f1Smrg exit ;; 1111067610f1Smrg paragon:*:*:*) 1112067610f1Smrg echo i860-intel-osf1 1113067610f1Smrg exit ;; 1114067610f1Smrg i860:*:4.*:*) # i860-SVR4 1115067610f1Smrg if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 1116067610f1Smrg echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 1117067610f1Smrg else # Add other i860-SVR4 vendors below as they are discovered. 1118067610f1Smrg echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 1119067610f1Smrg fi 1120067610f1Smrg exit ;; 1121067610f1Smrg mini*:CTIX:SYS*5:*) 1122067610f1Smrg # "miniframe" 1123067610f1Smrg echo m68010-convergent-sysv 1124067610f1Smrg exit ;; 1125067610f1Smrg mc68k:UNIX:SYSTEM5:3.51m) 1126067610f1Smrg echo m68k-convergent-sysv 1127067610f1Smrg exit ;; 1128067610f1Smrg M680?0:D-NIX:5.3:*) 1129067610f1Smrg echo m68k-diab-dnix 1130067610f1Smrg exit ;; 1131067610f1Smrg M68*:*:R3V[5678]*:*) 1132067610f1Smrg test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 1133067610f1Smrg 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) 1134067610f1Smrg OS_REL='' 1135067610f1Smrg test -r /etc/.relid \ 1136067610f1Smrg && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1137067610f1Smrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1138067610f1Smrg && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 1139067610f1Smrg /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1140067610f1Smrg && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1141067610f1Smrg 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 1142067610f1Smrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1143067610f1Smrg && { echo i486-ncr-sysv4; exit; } ;; 1144067610f1Smrg m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 1145067610f1Smrg echo m68k-unknown-lynxos${UNAME_RELEASE} 1146067610f1Smrg exit ;; 1147067610f1Smrg mc68030:UNIX_System_V:4.*:*) 1148067610f1Smrg echo m68k-atari-sysv4 1149067610f1Smrg exit ;; 1150067610f1Smrg TSUNAMI:LynxOS:2.*:*) 1151067610f1Smrg echo sparc-unknown-lynxos${UNAME_RELEASE} 1152067610f1Smrg exit ;; 1153067610f1Smrg rs6000:LynxOS:2.*:*) 1154067610f1Smrg echo rs6000-unknown-lynxos${UNAME_RELEASE} 1155067610f1Smrg exit ;; 1156067610f1Smrg PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) 1157067610f1Smrg echo powerpc-unknown-lynxos${UNAME_RELEASE} 1158067610f1Smrg exit ;; 1159067610f1Smrg SM[BE]S:UNIX_SV:*:*) 1160067610f1Smrg echo mips-dde-sysv${UNAME_RELEASE} 1161067610f1Smrg exit ;; 1162067610f1Smrg RM*:ReliantUNIX-*:*:*) 1163067610f1Smrg echo mips-sni-sysv4 1164067610f1Smrg exit ;; 1165067610f1Smrg RM*:SINIX-*:*:*) 1166067610f1Smrg echo mips-sni-sysv4 1167067610f1Smrg exit ;; 1168067610f1Smrg *:SINIX-*:*:*) 1169067610f1Smrg if uname -p 2>/dev/null >/dev/null ; then 1170067610f1Smrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 1171067610f1Smrg echo ${UNAME_MACHINE}-sni-sysv4 1172067610f1Smrg else 1173067610f1Smrg echo ns32k-sni-sysv 1174067610f1Smrg fi 1175067610f1Smrg exit ;; 1176067610f1Smrg PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 1177067610f1Smrg # says <Richard.M.Bartel@ccMail.Census.GOV> 1178067610f1Smrg echo i586-unisys-sysv4 1179067610f1Smrg exit ;; 1180067610f1Smrg *:UNIX_System_V:4*:FTX*) 1181067610f1Smrg # From Gerald Hewes <hewes@openmarket.com>. 1182067610f1Smrg # How about differentiating between stratus architectures? -djm 1183067610f1Smrg echo hppa1.1-stratus-sysv4 1184067610f1Smrg exit ;; 1185067610f1Smrg *:*:*:FTX*) 1186067610f1Smrg # From seanf@swdc.stratus.com. 1187067610f1Smrg echo i860-stratus-sysv4 1188067610f1Smrg exit ;; 1189067610f1Smrg i*86:VOS:*:*) 1190067610f1Smrg # From Paul.Green@stratus.com. 1191067610f1Smrg echo ${UNAME_MACHINE}-stratus-vos 1192067610f1Smrg exit ;; 1193067610f1Smrg *:VOS:*:*) 1194067610f1Smrg # From Paul.Green@stratus.com. 1195067610f1Smrg echo hppa1.1-stratus-vos 1196067610f1Smrg exit ;; 1197067610f1Smrg mc68*:A/UX:*:*) 1198067610f1Smrg echo m68k-apple-aux${UNAME_RELEASE} 1199067610f1Smrg exit ;; 1200067610f1Smrg news*:NEWS-OS:6*:*) 1201067610f1Smrg echo mips-sony-newsos6 1202067610f1Smrg exit ;; 1203067610f1Smrg R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 1204067610f1Smrg if [ -d /usr/nec ]; then 1205067610f1Smrg echo mips-nec-sysv${UNAME_RELEASE} 1206067610f1Smrg else 1207067610f1Smrg echo mips-unknown-sysv${UNAME_RELEASE} 1208067610f1Smrg fi 1209067610f1Smrg exit ;; 1210067610f1Smrg BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 1211067610f1Smrg echo powerpc-be-beos 1212067610f1Smrg exit ;; 1213067610f1Smrg BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 1214067610f1Smrg echo powerpc-apple-beos 1215067610f1Smrg exit ;; 1216067610f1Smrg BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 1217067610f1Smrg echo i586-pc-beos 1218067610f1Smrg exit ;; 1219067610f1Smrg SX-4:SUPER-UX:*:*) 1220067610f1Smrg echo sx4-nec-superux${UNAME_RELEASE} 1221067610f1Smrg exit ;; 1222067610f1Smrg SX-5:SUPER-UX:*:*) 1223067610f1Smrg echo sx5-nec-superux${UNAME_RELEASE} 1224067610f1Smrg exit ;; 1225067610f1Smrg SX-6:SUPER-UX:*:*) 1226067610f1Smrg echo sx6-nec-superux${UNAME_RELEASE} 1227067610f1Smrg exit ;; 1228067610f1Smrg SX-7:SUPER-UX:*:*) 1229067610f1Smrg echo sx7-nec-superux${UNAME_RELEASE} 1230067610f1Smrg exit ;; 1231067610f1Smrg SX-8:SUPER-UX:*:*) 1232067610f1Smrg echo sx8-nec-superux${UNAME_RELEASE} 1233067610f1Smrg exit ;; 1234067610f1Smrg SX-8R:SUPER-UX:*:*) 1235067610f1Smrg echo sx8r-nec-superux${UNAME_RELEASE} 1236067610f1Smrg exit ;; 1237067610f1Smrg Power*:Rhapsody:*:*) 1238067610f1Smrg echo powerpc-apple-rhapsody${UNAME_RELEASE} 1239067610f1Smrg exit ;; 1240067610f1Smrg *:Rhapsody:*:*) 1241067610f1Smrg echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 1242067610f1Smrg exit ;; 1243067610f1Smrg *:Darwin:*:*) 1244067610f1Smrg UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 1245067610f1Smrg case $UNAME_PROCESSOR in 1246067610f1Smrg unknown) UNAME_PROCESSOR=powerpc ;; 1247067610f1Smrg esac 1248067610f1Smrg echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 1249067610f1Smrg exit ;; 1250067610f1Smrg *:procnto*:*:* | *:QNX:[0123456789]*:*) 1251067610f1Smrg UNAME_PROCESSOR=`uname -p` 1252067610f1Smrg if test "$UNAME_PROCESSOR" = "x86"; then 1253067610f1Smrg UNAME_PROCESSOR=i386 1254067610f1Smrg UNAME_MACHINE=pc 1255067610f1Smrg fi 1256067610f1Smrg echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 1257067610f1Smrg exit ;; 1258067610f1Smrg *:QNX:*:4*) 1259067610f1Smrg echo i386-pc-qnx 1260067610f1Smrg exit ;; 1261067610f1Smrg NSE-?:NONSTOP_KERNEL:*:*) 1262067610f1Smrg echo nse-tandem-nsk${UNAME_RELEASE} 1263067610f1Smrg exit ;; 1264067610f1Smrg NSR-?:NONSTOP_KERNEL:*:*) 1265067610f1Smrg echo nsr-tandem-nsk${UNAME_RELEASE} 1266067610f1Smrg exit ;; 1267067610f1Smrg *:NonStop-UX:*:*) 1268067610f1Smrg echo mips-compaq-nonstopux 1269067610f1Smrg exit ;; 1270067610f1Smrg BS2000:POSIX*:*:*) 1271067610f1Smrg echo bs2000-siemens-sysv 1272067610f1Smrg exit ;; 1273067610f1Smrg DS/*:UNIX_System_V:*:*) 1274067610f1Smrg echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 1275067610f1Smrg exit ;; 1276067610f1Smrg *:Plan9:*:*) 1277067610f1Smrg # "uname -m" is not consistent, so use $cputype instead. 386 1278067610f1Smrg # is converted to i386 for consistency with other x86 1279067610f1Smrg # operating systems. 1280067610f1Smrg if test "$cputype" = "386"; then 1281067610f1Smrg UNAME_MACHINE=i386 1282067610f1Smrg else 1283067610f1Smrg UNAME_MACHINE="$cputype" 1284067610f1Smrg fi 1285067610f1Smrg echo ${UNAME_MACHINE}-unknown-plan9 1286067610f1Smrg exit ;; 1287067610f1Smrg *:TOPS-10:*:*) 1288067610f1Smrg echo pdp10-unknown-tops10 1289067610f1Smrg exit ;; 1290067610f1Smrg *:TENEX:*:*) 1291067610f1Smrg echo pdp10-unknown-tenex 1292067610f1Smrg exit ;; 1293067610f1Smrg KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 1294067610f1Smrg echo pdp10-dec-tops20 1295067610f1Smrg exit ;; 1296067610f1Smrg XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 1297067610f1Smrg echo pdp10-xkl-tops20 1298067610f1Smrg exit ;; 1299067610f1Smrg *:TOPS-20:*:*) 1300067610f1Smrg echo pdp10-unknown-tops20 1301067610f1Smrg exit ;; 1302067610f1Smrg *:ITS:*:*) 1303067610f1Smrg echo pdp10-unknown-its 1304067610f1Smrg exit ;; 1305067610f1Smrg SEI:*:*:SEIUX) 1306067610f1Smrg echo mips-sei-seiux${UNAME_RELEASE} 1307067610f1Smrg exit ;; 1308067610f1Smrg *:DragonFly:*:*) 1309067610f1Smrg echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 1310067610f1Smrg exit ;; 1311067610f1Smrg *:*VMS:*:*) 1312067610f1Smrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 1313067610f1Smrg case "${UNAME_MACHINE}" in 1314067610f1Smrg A*) echo alpha-dec-vms ; exit ;; 1315067610f1Smrg I*) echo ia64-dec-vms ; exit ;; 1316067610f1Smrg V*) echo vax-dec-vms ; exit ;; 1317067610f1Smrg esac ;; 1318067610f1Smrg *:XENIX:*:SysV) 1319067610f1Smrg echo i386-pc-xenix 1320067610f1Smrg exit ;; 1321067610f1Smrg i*86:skyos:*:*) 1322067610f1Smrg echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' 1323067610f1Smrg exit ;; 1324067610f1Smrg i*86:rdos:*:*) 1325067610f1Smrg echo ${UNAME_MACHINE}-pc-rdos 1326067610f1Smrg exit ;; 1327067610f1Smrgesac 1328067610f1Smrg 1329067610f1Smrg#echo '(No uname command or uname output not recognized.)' 1>&2 1330067610f1Smrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 1331067610f1Smrg 1332067610f1Smrgeval $set_cc_for_build 1333067610f1Smrgcat >$dummy.c <<EOF 1334067610f1Smrg#ifdef _SEQUENT_ 1335067610f1Smrg# include <sys/types.h> 1336067610f1Smrg# include <sys/utsname.h> 1337067610f1Smrg#endif 1338067610f1Smrgmain () 1339067610f1Smrg{ 1340067610f1Smrg#if defined (sony) 1341067610f1Smrg#if defined (MIPSEB) 1342067610f1Smrg /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, 1343067610f1Smrg I don't know.... */ 1344067610f1Smrg printf ("mips-sony-bsd\n"); exit (0); 1345067610f1Smrg#else 1346067610f1Smrg#include <sys/param.h> 1347067610f1Smrg printf ("m68k-sony-newsos%s\n", 1348067610f1Smrg#ifdef NEWSOS4 1349067610f1Smrg "4" 1350067610f1Smrg#else 1351067610f1Smrg "" 1352067610f1Smrg#endif 1353067610f1Smrg ); exit (0); 1354067610f1Smrg#endif 1355067610f1Smrg#endif 1356067610f1Smrg 1357067610f1Smrg#if defined (__arm) && defined (__acorn) && defined (__unix) 1358067610f1Smrg printf ("arm-acorn-riscix\n"); exit (0); 1359067610f1Smrg#endif 1360067610f1Smrg 1361067610f1Smrg#if defined (hp300) && !defined (hpux) 1362067610f1Smrg printf ("m68k-hp-bsd\n"); exit (0); 1363067610f1Smrg#endif 1364067610f1Smrg 1365067610f1Smrg#if defined (NeXT) 1366067610f1Smrg#if !defined (__ARCHITECTURE__) 1367067610f1Smrg#define __ARCHITECTURE__ "m68k" 1368067610f1Smrg#endif 1369067610f1Smrg int version; 1370067610f1Smrg version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; 1371067610f1Smrg if (version < 4) 1372067610f1Smrg printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); 1373067610f1Smrg else 1374067610f1Smrg printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); 1375067610f1Smrg exit (0); 1376067610f1Smrg#endif 1377067610f1Smrg 1378067610f1Smrg#if defined (MULTIMAX) || defined (n16) 1379067610f1Smrg#if defined (UMAXV) 1380067610f1Smrg printf ("ns32k-encore-sysv\n"); exit (0); 1381067610f1Smrg#else 1382067610f1Smrg#if defined (CMU) 1383067610f1Smrg printf ("ns32k-encore-mach\n"); exit (0); 1384067610f1Smrg#else 1385067610f1Smrg printf ("ns32k-encore-bsd\n"); exit (0); 1386067610f1Smrg#endif 1387067610f1Smrg#endif 1388067610f1Smrg#endif 1389067610f1Smrg 1390067610f1Smrg#if defined (__386BSD__) 1391067610f1Smrg printf ("i386-pc-bsd\n"); exit (0); 1392067610f1Smrg#endif 1393067610f1Smrg 1394067610f1Smrg#if defined (sequent) 1395067610f1Smrg#if defined (i386) 1396067610f1Smrg printf ("i386-sequent-dynix\n"); exit (0); 1397067610f1Smrg#endif 1398067610f1Smrg#if defined (ns32000) 1399067610f1Smrg printf ("ns32k-sequent-dynix\n"); exit (0); 1400067610f1Smrg#endif 1401067610f1Smrg#endif 1402067610f1Smrg 1403067610f1Smrg#if defined (_SEQUENT_) 1404067610f1Smrg struct utsname un; 1405067610f1Smrg 1406067610f1Smrg uname(&un); 1407067610f1Smrg 1408067610f1Smrg if (strncmp(un.version, "V2", 2) == 0) { 1409067610f1Smrg printf ("i386-sequent-ptx2\n"); exit (0); 1410067610f1Smrg } 1411067610f1Smrg if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ 1412067610f1Smrg printf ("i386-sequent-ptx1\n"); exit (0); 1413067610f1Smrg } 1414067610f1Smrg printf ("i386-sequent-ptx\n"); exit (0); 1415067610f1Smrg 1416067610f1Smrg#endif 1417067610f1Smrg 1418067610f1Smrg#if defined (vax) 1419067610f1Smrg# if !defined (ultrix) 1420067610f1Smrg# include <sys/param.h> 1421067610f1Smrg# if defined (BSD) 1422067610f1Smrg# if BSD == 43 1423067610f1Smrg printf ("vax-dec-bsd4.3\n"); exit (0); 1424067610f1Smrg# else 1425067610f1Smrg# if BSD == 199006 1426067610f1Smrg printf ("vax-dec-bsd4.3reno\n"); exit (0); 1427067610f1Smrg# else 1428067610f1Smrg printf ("vax-dec-bsd\n"); exit (0); 1429067610f1Smrg# endif 1430067610f1Smrg# endif 1431067610f1Smrg# else 1432067610f1Smrg printf ("vax-dec-bsd\n"); exit (0); 1433067610f1Smrg# endif 1434067610f1Smrg# else 1435067610f1Smrg printf ("vax-dec-ultrix\n"); exit (0); 1436067610f1Smrg# endif 1437067610f1Smrg#endif 1438067610f1Smrg 1439067610f1Smrg#if defined (alliant) && defined (i860) 1440067610f1Smrg printf ("i860-alliant-bsd\n"); exit (0); 1441067610f1Smrg#endif 1442067610f1Smrg 1443067610f1Smrg exit (1); 1444067610f1Smrg} 1445067610f1SmrgEOF 1446067610f1Smrg 1447067610f1Smrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && 1448067610f1Smrg { echo "$SYSTEM_NAME"; exit; } 1449067610f1Smrg 1450067610f1Smrg# Apollos put the system type in the environment. 1451067610f1Smrg 1452067610f1Smrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } 1453067610f1Smrg 1454067610f1Smrg# Convex versions that predate uname can use getsysinfo(1) 1455067610f1Smrg 1456067610f1Smrgif [ -x /usr/convex/getsysinfo ] 1457067610f1Smrgthen 1458067610f1Smrg case `getsysinfo -f cpu_type` in 1459067610f1Smrg c1*) 1460067610f1Smrg echo c1-convex-bsd 1461067610f1Smrg exit ;; 1462067610f1Smrg c2*) 1463067610f1Smrg if getsysinfo -f scalar_acc 1464067610f1Smrg then echo c32-convex-bsd 1465067610f1Smrg else echo c2-convex-bsd 1466067610f1Smrg fi 1467067610f1Smrg exit ;; 1468067610f1Smrg c34*) 1469067610f1Smrg echo c34-convex-bsd 1470067610f1Smrg exit ;; 1471067610f1Smrg c38*) 1472067610f1Smrg echo c38-convex-bsd 1473067610f1Smrg exit ;; 1474067610f1Smrg c4*) 1475067610f1Smrg echo c4-convex-bsd 1476067610f1Smrg exit ;; 1477067610f1Smrg esac 1478067610f1Smrgfi 1479067610f1Smrg 1480067610f1Smrgcat >&2 <<EOF 1481067610f1Smrg$0: unable to guess system type 1482067610f1Smrg 1483067610f1SmrgThis script, last modified $timestamp, has failed to recognize 1484067610f1Smrgthe operating system you are using. It is advised that you 1485067610f1Smrgdownload the most up to date version of the config scripts from 1486067610f1Smrg 1487067610f1Smrg http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess 1488067610f1Smrgand 1489067610f1Smrg http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub 1490067610f1Smrg 1491067610f1SmrgIf the version you run ($0) is already up to date, please 1492067610f1Smrgsend the following data and any information you think might be 1493067610f1Smrgpertinent to <config-patches@gnu.org> in order to provide the needed 1494067610f1Smrginformation to handle your system. 1495067610f1Smrg 1496067610f1Smrgconfig.guess timestamp = $timestamp 1497067610f1Smrg 1498067610f1Smrguname -m = `(uname -m) 2>/dev/null || echo unknown` 1499067610f1Smrguname -r = `(uname -r) 2>/dev/null || echo unknown` 1500067610f1Smrguname -s = `(uname -s) 2>/dev/null || echo unknown` 1501067610f1Smrguname -v = `(uname -v) 2>/dev/null || echo unknown` 1502067610f1Smrg 1503067610f1Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 1504067610f1Smrg/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 1505067610f1Smrg 1506067610f1Smrghostinfo = `(hostinfo) 2>/dev/null` 1507067610f1Smrg/bin/universe = `(/bin/universe) 2>/dev/null` 1508067610f1Smrg/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 1509067610f1Smrg/bin/arch = `(/bin/arch) 2>/dev/null` 1510067610f1Smrg/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 1511067610f1Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 1512067610f1Smrg 1513067610f1SmrgUNAME_MACHINE = ${UNAME_MACHINE} 1514067610f1SmrgUNAME_RELEASE = ${UNAME_RELEASE} 1515067610f1SmrgUNAME_SYSTEM = ${UNAME_SYSTEM} 1516067610f1SmrgUNAME_VERSION = ${UNAME_VERSION} 1517067610f1SmrgEOF 1518067610f1Smrg 1519067610f1Smrgexit 1 1520067610f1Smrg 1521067610f1Smrg# Local variables: 1522067610f1Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 1523067610f1Smrg# time-stamp-start: "timestamp='" 1524067610f1Smrg# time-stamp-format: "%:y-%02m-%02d" 1525067610f1Smrg# time-stamp-end: "'" 1526067610f1Smrg# End: 1527