config.guess revision f67b85aa
1943345d3Smrg#! /bin/sh 2943345d3Smrg# Attempt to guess a canonical system name. 3943345d3Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4f67b85aaSmrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, 5f67b85aaSmrg# Inc. 6943345d3Smrg 7f67b85aaSmrgtimestamp='2006-07-02' 8943345d3Smrg 9943345d3Smrg# This file is free software; you can redistribute it and/or modify it 10943345d3Smrg# under the terms of the GNU General Public License as published by 11943345d3Smrg# the Free Software Foundation; either version 2 of the License, or 12943345d3Smrg# (at your option) any later version. 13943345d3Smrg# 14943345d3Smrg# This program is distributed in the hope that it will be useful, but 15943345d3Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of 16943345d3Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 17943345d3Smrg# General Public License for more details. 18943345d3Smrg# 19943345d3Smrg# You should have received a copy of the GNU General Public License 20943345d3Smrg# along with this program; if not, write to the Free Software 21f67b85aaSmrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 22f67b85aaSmrg# 02110-1301, USA. 23943345d3Smrg# 24943345d3Smrg# As a special exception to the GNU General Public License, if you 25943345d3Smrg# distribute this file as part of a program that contains a 26943345d3Smrg# configuration script generated by Autoconf, you may include it under 27943345d3Smrg# the same distribution terms that you use for the rest of that program. 28943345d3Smrg 29f67b85aaSmrg 30943345d3Smrg# Originally written by Per Bothner <per@bothner.com>. 31943345d3Smrg# Please send patches to <config-patches@gnu.org>. Submit a context 32943345d3Smrg# diff and a properly formatted ChangeLog entry. 33943345d3Smrg# 34943345d3Smrg# This script attempts to guess a canonical system name similar to 35943345d3Smrg# config.sub. If it succeeds, it prints the system name on stdout, and 36943345d3Smrg# exits with 0. Otherwise, it exits with 1. 37943345d3Smrg# 38943345d3Smrg# The plan is that this can be called by configure scripts if you 39943345d3Smrg# don't specify an explicit build system type. 40943345d3Smrg 41943345d3Smrgme=`echo "$0" | sed -e 's,.*/,,'` 42943345d3Smrg 43943345d3Smrgusage="\ 44943345d3SmrgUsage: $0 [OPTION] 45943345d3Smrg 46943345d3SmrgOutput the configuration name of the system \`$me' is run on. 47943345d3Smrg 48943345d3SmrgOperation modes: 49943345d3Smrg -h, --help print this help, then exit 50943345d3Smrg -t, --time-stamp print date of last modification, then exit 51943345d3Smrg -v, --version print version number, then exit 52943345d3Smrg 53943345d3SmrgReport bugs and patches to <config-patches@gnu.org>." 54943345d3Smrg 55943345d3Smrgversion="\ 56943345d3SmrgGNU config.guess ($timestamp) 57943345d3Smrg 58943345d3SmrgOriginally written by Per Bothner. 59f67b85aaSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 60943345d3SmrgFree Software Foundation, Inc. 61943345d3Smrg 62943345d3SmrgThis is free software; see the source for copying conditions. There is NO 63943345d3Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 64943345d3Smrg 65943345d3Smrghelp=" 66943345d3SmrgTry \`$me --help' for more information." 67943345d3Smrg 68943345d3Smrg# Parse command line 69943345d3Smrgwhile test $# -gt 0 ; do 70943345d3Smrg case $1 in 71943345d3Smrg --time-stamp | --time* | -t ) 72f67b85aaSmrg echo "$timestamp" ; exit ;; 73943345d3Smrg --version | -v ) 74f67b85aaSmrg echo "$version" ; exit ;; 75943345d3Smrg --help | --h* | -h ) 76f67b85aaSmrg echo "$usage"; exit ;; 77943345d3Smrg -- ) # Stop option processing 78943345d3Smrg shift; break ;; 79943345d3Smrg - ) # Use stdin as input. 80943345d3Smrg break ;; 81943345d3Smrg -* ) 82943345d3Smrg echo "$me: invalid option $1$help" >&2 83943345d3Smrg exit 1 ;; 84943345d3Smrg * ) 85943345d3Smrg break ;; 86943345d3Smrg esac 87943345d3Smrgdone 88943345d3Smrg 89943345d3Smrgif test $# != 0; then 90943345d3Smrg echo "$me: too many arguments$help" >&2 91943345d3Smrg exit 1 92943345d3Smrgfi 93943345d3Smrg 94943345d3Smrgtrap 'exit 1' 1 2 15 95943345d3Smrg 96943345d3Smrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 97943345d3Smrg# compiler to aid in system detection is discouraged as it requires 98943345d3Smrg# temporary files to be created and, as you can see below, it is a 99943345d3Smrg# headache to deal with in a portable fashion. 100943345d3Smrg 101943345d3Smrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 102943345d3Smrg# use `HOST_CC' if defined, but it is deprecated. 103943345d3Smrg 104943345d3Smrg# Portable tmp directory creation inspired by the Autoconf team. 105943345d3Smrg 106943345d3Smrgset_cc_for_build=' 107943345d3Smrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; 108943345d3Smrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 109943345d3Smrg: ${TMPDIR=/tmp} ; 110f67b85aaSmrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 111943345d3Smrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 112943345d3Smrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || 113943345d3Smrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; 114943345d3Smrgdummy=$tmp/dummy ; 115943345d3Smrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; 116943345d3Smrgcase $CC_FOR_BUILD,$HOST_CC,$CC in 117943345d3Smrg ,,) echo "int x;" > $dummy.c ; 118943345d3Smrg for c in cc gcc c89 c99 ; do 119943345d3Smrg if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then 120943345d3Smrg CC_FOR_BUILD="$c"; break ; 121943345d3Smrg fi ; 122943345d3Smrg done ; 123943345d3Smrg if test x"$CC_FOR_BUILD" = x ; then 124943345d3Smrg CC_FOR_BUILD=no_compiler_found ; 125943345d3Smrg fi 126943345d3Smrg ;; 127943345d3Smrg ,,*) CC_FOR_BUILD=$CC ;; 128943345d3Smrg ,*,*) CC_FOR_BUILD=$HOST_CC ;; 129f67b85aaSmrgesac ; set_cc_for_build= ;' 130943345d3Smrg 131943345d3Smrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 132943345d3Smrg# (ghazi@noc.rutgers.edu 1994-08-24) 133943345d3Smrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then 134943345d3Smrg PATH=$PATH:/.attbin ; export PATH 135943345d3Smrgfi 136943345d3Smrg 137943345d3SmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 138943345d3SmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 139943345d3SmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 140943345d3SmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 141943345d3Smrg 142943345d3Smrg# Note: order is significant - the case branches are not exclusive. 143943345d3Smrg 144943345d3Smrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 145943345d3Smrg *:NetBSD:*:*) 146943345d3Smrg # NetBSD (nbsd) targets should (where applicable) match one or 147943345d3Smrg # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, 148943345d3Smrg # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 149943345d3Smrg # switched to ELF, *-*-netbsd* would select the old 150943345d3Smrg # object file format. This provides both forward 151943345d3Smrg # compatibility and a consistent mechanism for selecting the 152943345d3Smrg # object file format. 153943345d3Smrg # 154943345d3Smrg # Note: NetBSD doesn't particularly care about the vendor 155943345d3Smrg # portion of the name. We always set it to "unknown". 156943345d3Smrg sysctl="sysctl -n hw.machine_arch" 157943345d3Smrg UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ 158943345d3Smrg /usr/sbin/$sysctl 2>/dev/null || echo unknown)` 159943345d3Smrg case "${UNAME_MACHINE_ARCH}" in 160943345d3Smrg armeb) machine=armeb-unknown ;; 161943345d3Smrg arm*) machine=arm-unknown ;; 162943345d3Smrg sh3el) machine=shl-unknown ;; 163943345d3Smrg sh3eb) machine=sh-unknown ;; 164943345d3Smrg *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 165943345d3Smrg esac 166943345d3Smrg # The Operating System including object format, if it has switched 167943345d3Smrg # to ELF recently, or will in the future. 168943345d3Smrg case "${UNAME_MACHINE_ARCH}" in 169943345d3Smrg arm*|i386|m68k|ns32k|sh3*|sparc|vax) 170943345d3Smrg eval $set_cc_for_build 171943345d3Smrg if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 172943345d3Smrg | grep __ELF__ >/dev/null 173943345d3Smrg then 174943345d3Smrg # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 175943345d3Smrg # Return netbsd for either. FIX? 176943345d3Smrg os=netbsd 177943345d3Smrg else 178943345d3Smrg os=netbsdelf 179943345d3Smrg fi 180943345d3Smrg ;; 181943345d3Smrg *) 182943345d3Smrg os=netbsd 183943345d3Smrg ;; 184943345d3Smrg esac 185943345d3Smrg # The OS release 186943345d3Smrg # Debian GNU/NetBSD machines have a different userland, and 187943345d3Smrg # thus, need a distinct triplet. However, they do not need 188943345d3Smrg # kernel version information, so it can be replaced with a 189943345d3Smrg # suitable tag, in the style of linux-gnu. 190943345d3Smrg case "${UNAME_VERSION}" in 191943345d3Smrg Debian*) 192943345d3Smrg release='-gnu' 193943345d3Smrg ;; 194943345d3Smrg *) 195943345d3Smrg release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` 196943345d3Smrg ;; 197943345d3Smrg esac 198943345d3Smrg # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 199943345d3Smrg # contains redundant information, the shorter form: 200943345d3Smrg # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 201943345d3Smrg echo "${machine}-${os}${release}" 202f67b85aaSmrg exit ;; 203943345d3Smrg *:OpenBSD:*:*) 204f67b85aaSmrg UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 205f67b85aaSmrg echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 206f67b85aaSmrg exit ;; 207f67b85aaSmrg *:ekkoBSD:*:*) 208f67b85aaSmrg echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 209f67b85aaSmrg exit ;; 210f67b85aaSmrg *:SolidBSD:*:*) 211f67b85aaSmrg echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} 212f67b85aaSmrg exit ;; 213f67b85aaSmrg macppc:MirBSD:*:*) 214f67b85aaSmrg echo powerpc-unknown-mirbsd${UNAME_RELEASE} 215f67b85aaSmrg exit ;; 216f67b85aaSmrg *:MirBSD:*:*) 217f67b85aaSmrg echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 218f67b85aaSmrg exit ;; 219943345d3Smrg alpha:OSF1:*:*) 220f67b85aaSmrg case $UNAME_RELEASE in 221f67b85aaSmrg *4.0) 222943345d3Smrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 223f67b85aaSmrg ;; 224f67b85aaSmrg *5.*) 225f67b85aaSmrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 226f67b85aaSmrg ;; 227f67b85aaSmrg esac 228943345d3Smrg # According to Compaq, /usr/sbin/psrinfo has been available on 229943345d3Smrg # OSF/1 and Tru64 systems produced since 1995. I hope that 230943345d3Smrg # covers most systems running today. This code pipes the CPU 231943345d3Smrg # types through head -n 1, so we only detect the type of CPU 0. 232943345d3Smrg ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 233943345d3Smrg case "$ALPHA_CPU_TYPE" in 234943345d3Smrg "EV4 (21064)") 235943345d3Smrg UNAME_MACHINE="alpha" ;; 236943345d3Smrg "EV4.5 (21064)") 237943345d3Smrg UNAME_MACHINE="alpha" ;; 238943345d3Smrg "LCA4 (21066/21068)") 239943345d3Smrg UNAME_MACHINE="alpha" ;; 240943345d3Smrg "EV5 (21164)") 241943345d3Smrg UNAME_MACHINE="alphaev5" ;; 242943345d3Smrg "EV5.6 (21164A)") 243943345d3Smrg UNAME_MACHINE="alphaev56" ;; 244943345d3Smrg "EV5.6 (21164PC)") 245943345d3Smrg UNAME_MACHINE="alphapca56" ;; 246943345d3Smrg "EV5.7 (21164PC)") 247943345d3Smrg UNAME_MACHINE="alphapca57" ;; 248943345d3Smrg "EV6 (21264)") 249943345d3Smrg UNAME_MACHINE="alphaev6" ;; 250943345d3Smrg "EV6.7 (21264A)") 251943345d3Smrg UNAME_MACHINE="alphaev67" ;; 252943345d3Smrg "EV6.8CB (21264C)") 253943345d3Smrg UNAME_MACHINE="alphaev68" ;; 254943345d3Smrg "EV6.8AL (21264B)") 255943345d3Smrg UNAME_MACHINE="alphaev68" ;; 256943345d3Smrg "EV6.8CX (21264D)") 257943345d3Smrg UNAME_MACHINE="alphaev68" ;; 258943345d3Smrg "EV6.9A (21264/EV69A)") 259943345d3Smrg UNAME_MACHINE="alphaev69" ;; 260943345d3Smrg "EV7 (21364)") 261943345d3Smrg UNAME_MACHINE="alphaev7" ;; 262943345d3Smrg "EV7.9 (21364A)") 263943345d3Smrg UNAME_MACHINE="alphaev79" ;; 264943345d3Smrg esac 265f67b85aaSmrg # A Pn.n version is a patched version. 266943345d3Smrg # A Vn.n version is a released version. 267943345d3Smrg # A Tn.n version is a released field test version. 268943345d3Smrg # A Xn.n version is an unreleased experimental baselevel. 269943345d3Smrg # 1.2 uses "1.2" for uname -r. 270f67b85aaSmrg echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 271f67b85aaSmrg exit ;; 272943345d3Smrg Alpha\ *:Windows_NT*:*) 273943345d3Smrg # How do we know it's Interix rather than the generic POSIX subsystem? 274943345d3Smrg # Should we change UNAME_MACHINE based on the output of uname instead 275943345d3Smrg # of the specific Alpha model? 276943345d3Smrg echo alpha-pc-interix 277f67b85aaSmrg exit ;; 278943345d3Smrg 21064:Windows_NT:50:3) 279943345d3Smrg echo alpha-dec-winnt3.5 280f67b85aaSmrg exit ;; 281943345d3Smrg Amiga*:UNIX_System_V:4.0:*) 282943345d3Smrg echo m68k-unknown-sysv4 283f67b85aaSmrg exit ;; 284943345d3Smrg *:[Aa]miga[Oo][Ss]:*:*) 285943345d3Smrg echo ${UNAME_MACHINE}-unknown-amigaos 286f67b85aaSmrg exit ;; 287943345d3Smrg *:[Mm]orph[Oo][Ss]:*:*) 288943345d3Smrg echo ${UNAME_MACHINE}-unknown-morphos 289f67b85aaSmrg exit ;; 290943345d3Smrg *:OS/390:*:*) 291943345d3Smrg echo i370-ibm-openedition 292f67b85aaSmrg exit ;; 293f67b85aaSmrg *:z/VM:*:*) 294f67b85aaSmrg echo s390-ibm-zvmoe 295f67b85aaSmrg exit ;; 296f67b85aaSmrg *:OS400:*:*) 297f67b85aaSmrg echo powerpc-ibm-os400 298f67b85aaSmrg exit ;; 299943345d3Smrg arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 300943345d3Smrg echo arm-acorn-riscix${UNAME_RELEASE} 301f67b85aaSmrg exit ;; 302f67b85aaSmrg arm:riscos:*:*|arm:RISCOS:*:*) 303f67b85aaSmrg echo arm-unknown-riscos 304f67b85aaSmrg exit ;; 305943345d3Smrg SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 306943345d3Smrg echo hppa1.1-hitachi-hiuxmpp 307f67b85aaSmrg exit ;; 308943345d3Smrg Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 309943345d3Smrg # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 310943345d3Smrg if test "`(/bin/universe) 2>/dev/null`" = att ; then 311943345d3Smrg echo pyramid-pyramid-sysv3 312943345d3Smrg else 313943345d3Smrg echo pyramid-pyramid-bsd 314943345d3Smrg fi 315f67b85aaSmrg exit ;; 316943345d3Smrg NILE*:*:*:dcosx) 317943345d3Smrg echo pyramid-pyramid-svr4 318f67b85aaSmrg exit ;; 319943345d3Smrg DRS?6000:unix:4.0:6*) 320943345d3Smrg echo sparc-icl-nx6 321f67b85aaSmrg exit ;; 322f67b85aaSmrg DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 323943345d3Smrg case `/usr/bin/uname -p` in 324f67b85aaSmrg sparc) echo sparc-icl-nx7; exit ;; 325943345d3Smrg esac ;; 326943345d3Smrg sun4H:SunOS:5.*:*) 327943345d3Smrg echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 328f67b85aaSmrg exit ;; 329943345d3Smrg sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 330943345d3Smrg echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 331f67b85aaSmrg exit ;; 332943345d3Smrg i86pc:SunOS:5.*:*) 333943345d3Smrg echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 334f67b85aaSmrg exit ;; 335943345d3Smrg sun4*:SunOS:6*:*) 336943345d3Smrg # According to config.sub, this is the proper way to canonicalize 337943345d3Smrg # SunOS6. Hard to guess exactly what SunOS6 will be like, but 338943345d3Smrg # it's likely to be more like Solaris than SunOS4. 339943345d3Smrg echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 340f67b85aaSmrg exit ;; 341943345d3Smrg sun4*:SunOS:*:*) 342943345d3Smrg case "`/usr/bin/arch -k`" in 343943345d3Smrg Series*|S4*) 344943345d3Smrg UNAME_RELEASE=`uname -v` 345943345d3Smrg ;; 346943345d3Smrg esac 347943345d3Smrg # Japanese Language versions have a version number like `4.1.3-JL'. 348943345d3Smrg echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 349f67b85aaSmrg exit ;; 350943345d3Smrg sun3*:SunOS:*:*) 351943345d3Smrg echo m68k-sun-sunos${UNAME_RELEASE} 352f67b85aaSmrg exit ;; 353943345d3Smrg sun*:*:4.2BSD:*) 354943345d3Smrg UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 355943345d3Smrg test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 356943345d3Smrg case "`/bin/arch`" in 357943345d3Smrg sun3) 358943345d3Smrg echo m68k-sun-sunos${UNAME_RELEASE} 359943345d3Smrg ;; 360943345d3Smrg sun4) 361943345d3Smrg echo sparc-sun-sunos${UNAME_RELEASE} 362943345d3Smrg ;; 363943345d3Smrg esac 364f67b85aaSmrg exit ;; 365943345d3Smrg aushp:SunOS:*:*) 366943345d3Smrg echo sparc-auspex-sunos${UNAME_RELEASE} 367f67b85aaSmrg exit ;; 368943345d3Smrg # The situation for MiNT is a little confusing. The machine name 369943345d3Smrg # can be virtually everything (everything which is not 370943345d3Smrg # "atarist" or "atariste" at least should have a processor 371943345d3Smrg # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 372943345d3Smrg # to the lowercase version "mint" (or "freemint"). Finally 373943345d3Smrg # the system name "TOS" denotes a system which is actually not 374943345d3Smrg # MiNT. But MiNT is downward compatible to TOS, so this should 375943345d3Smrg # be no problem. 376943345d3Smrg atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 377943345d3Smrg echo m68k-atari-mint${UNAME_RELEASE} 378f67b85aaSmrg exit ;; 379943345d3Smrg atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 380943345d3Smrg echo m68k-atari-mint${UNAME_RELEASE} 381f67b85aaSmrg exit ;; 382943345d3Smrg *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 383943345d3Smrg echo m68k-atari-mint${UNAME_RELEASE} 384f67b85aaSmrg exit ;; 385943345d3Smrg milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 386943345d3Smrg echo m68k-milan-mint${UNAME_RELEASE} 387f67b85aaSmrg exit ;; 388943345d3Smrg hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 389943345d3Smrg echo m68k-hades-mint${UNAME_RELEASE} 390f67b85aaSmrg exit ;; 391943345d3Smrg *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 392943345d3Smrg echo m68k-unknown-mint${UNAME_RELEASE} 393f67b85aaSmrg exit ;; 394f67b85aaSmrg m68k:machten:*:*) 395f67b85aaSmrg echo m68k-apple-machten${UNAME_RELEASE} 396f67b85aaSmrg exit ;; 397943345d3Smrg powerpc:machten:*:*) 398943345d3Smrg echo powerpc-apple-machten${UNAME_RELEASE} 399f67b85aaSmrg exit ;; 400943345d3Smrg RISC*:Mach:*:*) 401943345d3Smrg echo mips-dec-mach_bsd4.3 402f67b85aaSmrg exit ;; 403943345d3Smrg RISC*:ULTRIX:*:*) 404943345d3Smrg echo mips-dec-ultrix${UNAME_RELEASE} 405f67b85aaSmrg exit ;; 406943345d3Smrg VAX*:ULTRIX*:*:*) 407943345d3Smrg echo vax-dec-ultrix${UNAME_RELEASE} 408f67b85aaSmrg exit ;; 409943345d3Smrg 2020:CLIX:*:* | 2430:CLIX:*:*) 410943345d3Smrg echo clipper-intergraph-clix${UNAME_RELEASE} 411f67b85aaSmrg exit ;; 412943345d3Smrg mips:*:*:UMIPS | mips:*:*:RISCos) 413943345d3Smrg eval $set_cc_for_build 414943345d3Smrg sed 's/^ //' << EOF >$dummy.c 415943345d3Smrg#ifdef __cplusplus 416943345d3Smrg#include <stdio.h> /* for printf() prototype */ 417943345d3Smrg int main (int argc, char *argv[]) { 418943345d3Smrg#else 419943345d3Smrg int main (argc, argv) int argc; char *argv[]; { 420943345d3Smrg#endif 421943345d3Smrg #if defined (host_mips) && defined (MIPSEB) 422943345d3Smrg #if defined (SYSTYPE_SYSV) 423943345d3Smrg printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 424943345d3Smrg #endif 425943345d3Smrg #if defined (SYSTYPE_SVR4) 426943345d3Smrg printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 427943345d3Smrg #endif 428943345d3Smrg #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 429943345d3Smrg printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 430943345d3Smrg #endif 431943345d3Smrg #endif 432943345d3Smrg exit (-1); 433943345d3Smrg } 434943345d3SmrgEOF 435f67b85aaSmrg $CC_FOR_BUILD -o $dummy $dummy.c && 436f67b85aaSmrg dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 437f67b85aaSmrg SYSTEM_NAME=`$dummy $dummyarg` && 438f67b85aaSmrg { echo "$SYSTEM_NAME"; exit; } 439943345d3Smrg echo mips-mips-riscos${UNAME_RELEASE} 440f67b85aaSmrg exit ;; 441943345d3Smrg Motorola:PowerMAX_OS:*:*) 442943345d3Smrg echo powerpc-motorola-powermax 443f67b85aaSmrg exit ;; 444943345d3Smrg Motorola:*:4.3:PL8-*) 445943345d3Smrg echo powerpc-harris-powermax 446f67b85aaSmrg exit ;; 447943345d3Smrg Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 448943345d3Smrg echo powerpc-harris-powermax 449f67b85aaSmrg exit ;; 450943345d3Smrg Night_Hawk:Power_UNIX:*:*) 451943345d3Smrg echo powerpc-harris-powerunix 452f67b85aaSmrg exit ;; 453943345d3Smrg m88k:CX/UX:7*:*) 454943345d3Smrg echo m88k-harris-cxux7 455f67b85aaSmrg exit ;; 456943345d3Smrg m88k:*:4*:R4*) 457943345d3Smrg echo m88k-motorola-sysv4 458f67b85aaSmrg exit ;; 459943345d3Smrg m88k:*:3*:R3*) 460943345d3Smrg echo m88k-motorola-sysv3 461f67b85aaSmrg exit ;; 462943345d3Smrg AViiON:dgux:*:*) 463943345d3Smrg # DG/UX returns AViiON for all architectures 464943345d3Smrg UNAME_PROCESSOR=`/usr/bin/uname -p` 465943345d3Smrg if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 466943345d3Smrg then 467943345d3Smrg if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 468943345d3Smrg [ ${TARGET_BINARY_INTERFACE}x = x ] 469943345d3Smrg then 470943345d3Smrg echo m88k-dg-dgux${UNAME_RELEASE} 471943345d3Smrg else 472943345d3Smrg echo m88k-dg-dguxbcs${UNAME_RELEASE} 473943345d3Smrg fi 474943345d3Smrg else 475943345d3Smrg echo i586-dg-dgux${UNAME_RELEASE} 476943345d3Smrg fi 477f67b85aaSmrg exit ;; 478943345d3Smrg M88*:DolphinOS:*:*) # DolphinOS (SVR3) 479943345d3Smrg echo m88k-dolphin-sysv3 480f67b85aaSmrg exit ;; 481943345d3Smrg M88*:*:R3*:*) 482943345d3Smrg # Delta 88k system running SVR3 483943345d3Smrg echo m88k-motorola-sysv3 484f67b85aaSmrg exit ;; 485943345d3Smrg XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 486943345d3Smrg echo m88k-tektronix-sysv3 487f67b85aaSmrg exit ;; 488943345d3Smrg Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 489943345d3Smrg echo m68k-tektronix-bsd 490f67b85aaSmrg exit ;; 491943345d3Smrg *:IRIX*:*:*) 492943345d3Smrg echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 493f67b85aaSmrg exit ;; 494943345d3Smrg ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 495f67b85aaSmrg echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 496f67b85aaSmrg exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 497943345d3Smrg i*86:AIX:*:*) 498943345d3Smrg echo i386-ibm-aix 499f67b85aaSmrg exit ;; 500943345d3Smrg ia64:AIX:*:*) 501943345d3Smrg if [ -x /usr/bin/oslevel ] ; then 502943345d3Smrg IBM_REV=`/usr/bin/oslevel` 503943345d3Smrg else 504943345d3Smrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 505943345d3Smrg fi 506943345d3Smrg echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 507f67b85aaSmrg exit ;; 508943345d3Smrg *:AIX:2:3) 509943345d3Smrg if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 510943345d3Smrg eval $set_cc_for_build 511943345d3Smrg sed 's/^ //' << EOF >$dummy.c 512943345d3Smrg #include <sys/systemcfg.h> 513943345d3Smrg 514943345d3Smrg main() 515943345d3Smrg { 516943345d3Smrg if (!__power_pc()) 517943345d3Smrg exit(1); 518943345d3Smrg puts("powerpc-ibm-aix3.2.5"); 519943345d3Smrg exit(0); 520943345d3Smrg } 521943345d3SmrgEOF 522f67b85aaSmrg if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 523f67b85aaSmrg then 524f67b85aaSmrg echo "$SYSTEM_NAME" 525f67b85aaSmrg else 526f67b85aaSmrg echo rs6000-ibm-aix3.2.5 527f67b85aaSmrg fi 528943345d3Smrg elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 529943345d3Smrg echo rs6000-ibm-aix3.2.4 530943345d3Smrg else 531943345d3Smrg echo rs6000-ibm-aix3.2 532943345d3Smrg fi 533f67b85aaSmrg exit ;; 534943345d3Smrg *:AIX:*:[45]) 535943345d3Smrg IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 536943345d3Smrg if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 537943345d3Smrg IBM_ARCH=rs6000 538943345d3Smrg else 539943345d3Smrg IBM_ARCH=powerpc 540943345d3Smrg fi 541943345d3Smrg if [ -x /usr/bin/oslevel ] ; then 542943345d3Smrg IBM_REV=`/usr/bin/oslevel` 543943345d3Smrg else 544943345d3Smrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 545943345d3Smrg fi 546943345d3Smrg echo ${IBM_ARCH}-ibm-aix${IBM_REV} 547f67b85aaSmrg exit ;; 548943345d3Smrg *:AIX:*:*) 549943345d3Smrg echo rs6000-ibm-aix 550f67b85aaSmrg exit ;; 551943345d3Smrg ibmrt:4.4BSD:*|romp-ibm:BSD:*) 552943345d3Smrg echo romp-ibm-bsd4.4 553f67b85aaSmrg exit ;; 554943345d3Smrg ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 555943345d3Smrg echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 556f67b85aaSmrg exit ;; # report: romp-ibm BSD 4.3 557943345d3Smrg *:BOSX:*:*) 558943345d3Smrg echo rs6000-bull-bosx 559f67b85aaSmrg exit ;; 560943345d3Smrg DPX/2?00:B.O.S.:*:*) 561943345d3Smrg echo m68k-bull-sysv3 562f67b85aaSmrg exit ;; 563943345d3Smrg 9000/[34]??:4.3bsd:1.*:*) 564943345d3Smrg echo m68k-hp-bsd 565f67b85aaSmrg exit ;; 566943345d3Smrg hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 567943345d3Smrg echo m68k-hp-bsd4.4 568f67b85aaSmrg exit ;; 569943345d3Smrg 9000/[34678]??:HP-UX:*:*) 570943345d3Smrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 571943345d3Smrg case "${UNAME_MACHINE}" in 572943345d3Smrg 9000/31? ) HP_ARCH=m68000 ;; 573943345d3Smrg 9000/[34]?? ) HP_ARCH=m68k ;; 574943345d3Smrg 9000/[678][0-9][0-9]) 575943345d3Smrg if [ -x /usr/bin/getconf ]; then 576943345d3Smrg sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 577943345d3Smrg sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 578943345d3Smrg case "${sc_cpu_version}" in 579943345d3Smrg 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 580943345d3Smrg 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 581943345d3Smrg 532) # CPU_PA_RISC2_0 582943345d3Smrg case "${sc_kernel_bits}" in 583943345d3Smrg 32) HP_ARCH="hppa2.0n" ;; 584943345d3Smrg 64) HP_ARCH="hppa2.0w" ;; 585943345d3Smrg '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 586943345d3Smrg esac ;; 587943345d3Smrg esac 588943345d3Smrg fi 589943345d3Smrg if [ "${HP_ARCH}" = "" ]; then 590943345d3Smrg eval $set_cc_for_build 591943345d3Smrg sed 's/^ //' << EOF >$dummy.c 592943345d3Smrg 593943345d3Smrg #define _HPUX_SOURCE 594943345d3Smrg #include <stdlib.h> 595943345d3Smrg #include <unistd.h> 596943345d3Smrg 597943345d3Smrg int main () 598943345d3Smrg { 599943345d3Smrg #if defined(_SC_KERNEL_BITS) 600943345d3Smrg long bits = sysconf(_SC_KERNEL_BITS); 601943345d3Smrg #endif 602943345d3Smrg long cpu = sysconf (_SC_CPU_VERSION); 603943345d3Smrg 604943345d3Smrg switch (cpu) 605943345d3Smrg { 606943345d3Smrg case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 607943345d3Smrg case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 608943345d3Smrg case CPU_PA_RISC2_0: 609943345d3Smrg #if defined(_SC_KERNEL_BITS) 610943345d3Smrg switch (bits) 611943345d3Smrg { 612943345d3Smrg case 64: puts ("hppa2.0w"); break; 613943345d3Smrg case 32: puts ("hppa2.0n"); break; 614943345d3Smrg default: puts ("hppa2.0"); break; 615943345d3Smrg } break; 616943345d3Smrg #else /* !defined(_SC_KERNEL_BITS) */ 617943345d3Smrg puts ("hppa2.0"); break; 618943345d3Smrg #endif 619943345d3Smrg default: puts ("hppa1.0"); break; 620943345d3Smrg } 621943345d3Smrg exit (0); 622943345d3Smrg } 623943345d3SmrgEOF 624943345d3Smrg (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 625943345d3Smrg test -z "$HP_ARCH" && HP_ARCH=hppa 626943345d3Smrg fi ;; 627943345d3Smrg esac 628943345d3Smrg if [ ${HP_ARCH} = "hppa2.0w" ] 629943345d3Smrg then 630f67b85aaSmrg eval $set_cc_for_build 631f67b85aaSmrg 632f67b85aaSmrg # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 633f67b85aaSmrg # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 634f67b85aaSmrg # generating 64-bit code. GNU and HP use different nomenclature: 635f67b85aaSmrg # 636f67b85aaSmrg # $ CC_FOR_BUILD=cc ./config.guess 637f67b85aaSmrg # => hppa2.0w-hp-hpux11.23 638f67b85aaSmrg # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 639f67b85aaSmrg # => hppa64-hp-hpux11.23 640f67b85aaSmrg 641f67b85aaSmrg if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | 642f67b85aaSmrg grep __LP64__ >/dev/null 643943345d3Smrg then 644943345d3Smrg HP_ARCH="hppa2.0w" 645943345d3Smrg else 646943345d3Smrg HP_ARCH="hppa64" 647943345d3Smrg fi 648943345d3Smrg fi 649943345d3Smrg echo ${HP_ARCH}-hp-hpux${HPUX_REV} 650f67b85aaSmrg exit ;; 651943345d3Smrg ia64:HP-UX:*:*) 652943345d3Smrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 653943345d3Smrg echo ia64-hp-hpux${HPUX_REV} 654f67b85aaSmrg exit ;; 655943345d3Smrg 3050*:HI-UX:*:*) 656943345d3Smrg eval $set_cc_for_build 657943345d3Smrg sed 's/^ //' << EOF >$dummy.c 658943345d3Smrg #include <unistd.h> 659943345d3Smrg int 660943345d3Smrg main () 661943345d3Smrg { 662943345d3Smrg long cpu = sysconf (_SC_CPU_VERSION); 663943345d3Smrg /* The order matters, because CPU_IS_HP_MC68K erroneously returns 664943345d3Smrg true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 665943345d3Smrg results, however. */ 666943345d3Smrg if (CPU_IS_PA_RISC (cpu)) 667943345d3Smrg { 668943345d3Smrg switch (cpu) 669943345d3Smrg { 670943345d3Smrg case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 671943345d3Smrg case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 672943345d3Smrg case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 673943345d3Smrg default: puts ("hppa-hitachi-hiuxwe2"); break; 674943345d3Smrg } 675943345d3Smrg } 676943345d3Smrg else if (CPU_IS_HP_MC68K (cpu)) 677943345d3Smrg puts ("m68k-hitachi-hiuxwe2"); 678943345d3Smrg else puts ("unknown-hitachi-hiuxwe2"); 679943345d3Smrg exit (0); 680943345d3Smrg } 681943345d3SmrgEOF 682f67b85aaSmrg $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 683f67b85aaSmrg { echo "$SYSTEM_NAME"; exit; } 684943345d3Smrg echo unknown-hitachi-hiuxwe2 685f67b85aaSmrg exit ;; 686943345d3Smrg 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 687943345d3Smrg echo hppa1.1-hp-bsd 688f67b85aaSmrg exit ;; 689943345d3Smrg 9000/8??:4.3bsd:*:*) 690943345d3Smrg echo hppa1.0-hp-bsd 691f67b85aaSmrg exit ;; 692943345d3Smrg *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 693943345d3Smrg echo hppa1.0-hp-mpeix 694f67b85aaSmrg exit ;; 695943345d3Smrg hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 696943345d3Smrg echo hppa1.1-hp-osf 697f67b85aaSmrg exit ;; 698943345d3Smrg hp8??:OSF1:*:*) 699943345d3Smrg echo hppa1.0-hp-osf 700f67b85aaSmrg exit ;; 701943345d3Smrg i*86:OSF1:*:*) 702943345d3Smrg if [ -x /usr/sbin/sysversion ] ; then 703943345d3Smrg echo ${UNAME_MACHINE}-unknown-osf1mk 704943345d3Smrg else 705943345d3Smrg echo ${UNAME_MACHINE}-unknown-osf1 706943345d3Smrg fi 707f67b85aaSmrg exit ;; 708943345d3Smrg parisc*:Lites*:*:*) 709943345d3Smrg echo hppa1.1-hp-lites 710f67b85aaSmrg exit ;; 711943345d3Smrg C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 712943345d3Smrg echo c1-convex-bsd 713f67b85aaSmrg exit ;; 714943345d3Smrg C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 715943345d3Smrg if getsysinfo -f scalar_acc 716943345d3Smrg then echo c32-convex-bsd 717943345d3Smrg else echo c2-convex-bsd 718943345d3Smrg fi 719f67b85aaSmrg exit ;; 720943345d3Smrg C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 721943345d3Smrg echo c34-convex-bsd 722f67b85aaSmrg exit ;; 723943345d3Smrg C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 724943345d3Smrg echo c38-convex-bsd 725f67b85aaSmrg exit ;; 726943345d3Smrg C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 727943345d3Smrg echo c4-convex-bsd 728f67b85aaSmrg exit ;; 729943345d3Smrg CRAY*Y-MP:*:*:*) 730943345d3Smrg echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 731f67b85aaSmrg exit ;; 732943345d3Smrg CRAY*[A-Z]90:*:*:*) 733943345d3Smrg echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 734943345d3Smrg | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 735943345d3Smrg -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 736943345d3Smrg -e 's/\.[^.]*$/.X/' 737f67b85aaSmrg exit ;; 738943345d3Smrg CRAY*TS:*:*:*) 739943345d3Smrg echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 740f67b85aaSmrg exit ;; 741943345d3Smrg CRAY*T3E:*:*:*) 742943345d3Smrg echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 743f67b85aaSmrg exit ;; 744943345d3Smrg CRAY*SV1:*:*:*) 745943345d3Smrg echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 746f67b85aaSmrg exit ;; 747943345d3Smrg *:UNICOS/mp:*:*) 748f67b85aaSmrg echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 749f67b85aaSmrg exit ;; 750943345d3Smrg F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 751943345d3Smrg FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 752943345d3Smrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 753943345d3Smrg FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 754943345d3Smrg echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 755f67b85aaSmrg exit ;; 756f67b85aaSmrg 5000:UNIX_System_V:4.*:*) 757f67b85aaSmrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 758f67b85aaSmrg FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` 759f67b85aaSmrg echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 760f67b85aaSmrg exit ;; 761943345d3Smrg i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 762943345d3Smrg echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 763f67b85aaSmrg exit ;; 764943345d3Smrg sparc*:BSD/OS:*:*) 765943345d3Smrg echo sparc-unknown-bsdi${UNAME_RELEASE} 766f67b85aaSmrg exit ;; 767943345d3Smrg *:BSD/OS:*:*) 768943345d3Smrg echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 769f67b85aaSmrg exit ;; 770f67b85aaSmrg *:FreeBSD:*:*) 771f67b85aaSmrg case ${UNAME_MACHINE} in 772f67b85aaSmrg pc98) 773f67b85aaSmrg echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 774f67b85aaSmrg amd64) 775f67b85aaSmrg echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 776f67b85aaSmrg *) 777f67b85aaSmrg echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 778f67b85aaSmrg esac 779f67b85aaSmrg exit ;; 780943345d3Smrg i*:CYGWIN*:*) 781943345d3Smrg echo ${UNAME_MACHINE}-pc-cygwin 782f67b85aaSmrg exit ;; 783943345d3Smrg i*:MINGW*:*) 784943345d3Smrg echo ${UNAME_MACHINE}-pc-mingw32 785f67b85aaSmrg exit ;; 786f67b85aaSmrg i*:windows32*:*) 787f67b85aaSmrg # uname -m includes "-pc" on this system. 788f67b85aaSmrg echo ${UNAME_MACHINE}-mingw32 789f67b85aaSmrg exit ;; 790943345d3Smrg i*:PW*:*) 791943345d3Smrg echo ${UNAME_MACHINE}-pc-pw32 792f67b85aaSmrg exit ;; 793f67b85aaSmrg x86:Interix*:[3456]*) 794f67b85aaSmrg echo i586-pc-interix${UNAME_RELEASE} 795f67b85aaSmrg exit ;; 796f67b85aaSmrg EM64T:Interix*:[3456]*) 797f67b85aaSmrg echo x86_64-unknown-interix${UNAME_RELEASE} 798f67b85aaSmrg exit ;; 799943345d3Smrg [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 800943345d3Smrg echo i${UNAME_MACHINE}-pc-mks 801f67b85aaSmrg exit ;; 802943345d3Smrg i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 803943345d3Smrg # How do we know it's Interix rather than the generic POSIX subsystem? 804943345d3Smrg # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 805943345d3Smrg # UNAME_MACHINE based on the output of uname instead of i386? 806943345d3Smrg echo i586-pc-interix 807f67b85aaSmrg exit ;; 808943345d3Smrg i*:UWIN*:*) 809943345d3Smrg echo ${UNAME_MACHINE}-pc-uwin 810f67b85aaSmrg exit ;; 811f67b85aaSmrg amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 812f67b85aaSmrg echo x86_64-unknown-cygwin 813f67b85aaSmrg exit ;; 814943345d3Smrg p*:CYGWIN*:*) 815943345d3Smrg echo powerpcle-unknown-cygwin 816f67b85aaSmrg exit ;; 817943345d3Smrg prep*:SunOS:5.*:*) 818943345d3Smrg echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 819f67b85aaSmrg exit ;; 820943345d3Smrg *:GNU:*:*) 821f67b85aaSmrg # the GNU system 822943345d3Smrg echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 823f67b85aaSmrg exit ;; 824f67b85aaSmrg *:GNU/*:*:*) 825f67b85aaSmrg # other systems with GNU libc and userland 826f67b85aaSmrg echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu 827f67b85aaSmrg exit ;; 828943345d3Smrg i*86:Minix:*:*) 829943345d3Smrg echo ${UNAME_MACHINE}-pc-minix 830f67b85aaSmrg exit ;; 831943345d3Smrg arm*:Linux:*:*) 832943345d3Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 833f67b85aaSmrg exit ;; 834f67b85aaSmrg avr32*:Linux:*:*) 835f67b85aaSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 836f67b85aaSmrg exit ;; 837943345d3Smrg cris:Linux:*:*) 838943345d3Smrg echo cris-axis-linux-gnu 839f67b85aaSmrg exit ;; 840f67b85aaSmrg crisv32:Linux:*:*) 841f67b85aaSmrg echo crisv32-axis-linux-gnu 842f67b85aaSmrg exit ;; 843f67b85aaSmrg frv:Linux:*:*) 844f67b85aaSmrg echo frv-unknown-linux-gnu 845f67b85aaSmrg exit ;; 846943345d3Smrg ia64:Linux:*:*) 847f67b85aaSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 848f67b85aaSmrg exit ;; 849f67b85aaSmrg m32r*:Linux:*:*) 850f67b85aaSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 851f67b85aaSmrg exit ;; 852943345d3Smrg m68*:Linux:*:*) 853943345d3Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 854f67b85aaSmrg exit ;; 855943345d3Smrg mips:Linux:*:*) 856943345d3Smrg eval $set_cc_for_build 857943345d3Smrg sed 's/^ //' << EOF >$dummy.c 858943345d3Smrg #undef CPU 859943345d3Smrg #undef mips 860943345d3Smrg #undef mipsel 861943345d3Smrg #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 862943345d3Smrg CPU=mipsel 863943345d3Smrg #else 864943345d3Smrg #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 865943345d3Smrg CPU=mips 866943345d3Smrg #else 867943345d3Smrg CPU= 868943345d3Smrg #endif 869943345d3Smrg #endif 870943345d3SmrgEOF 871f67b85aaSmrg eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 872f67b85aaSmrg /^CPU/{ 873f67b85aaSmrg s: ::g 874f67b85aaSmrg p 875f67b85aaSmrg }'`" 876f67b85aaSmrg test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 877943345d3Smrg ;; 878943345d3Smrg mips64:Linux:*:*) 879943345d3Smrg eval $set_cc_for_build 880943345d3Smrg sed 's/^ //' << EOF >$dummy.c 881943345d3Smrg #undef CPU 882943345d3Smrg #undef mips64 883943345d3Smrg #undef mips64el 884943345d3Smrg #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 885943345d3Smrg CPU=mips64el 886943345d3Smrg #else 887943345d3Smrg #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 888943345d3Smrg CPU=mips64 889943345d3Smrg #else 890943345d3Smrg CPU= 891943345d3Smrg #endif 892943345d3Smrg #endif 893943345d3SmrgEOF 894f67b85aaSmrg eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 895f67b85aaSmrg /^CPU/{ 896f67b85aaSmrg s: ::g 897f67b85aaSmrg p 898f67b85aaSmrg }'`" 899f67b85aaSmrg test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 900943345d3Smrg ;; 901f67b85aaSmrg or32:Linux:*:*) 902f67b85aaSmrg echo or32-unknown-linux-gnu 903f67b85aaSmrg exit ;; 904943345d3Smrg ppc:Linux:*:*) 905f67b85aaSmrg echo powerpc-unknown-linux-gnu 906f67b85aaSmrg exit ;; 907943345d3Smrg ppc64:Linux:*:*) 908f67b85aaSmrg echo powerpc64-unknown-linux-gnu 909f67b85aaSmrg exit ;; 910943345d3Smrg alpha:Linux:*:*) 911943345d3Smrg case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 912943345d3Smrg EV5) UNAME_MACHINE=alphaev5 ;; 913943345d3Smrg EV56) UNAME_MACHINE=alphaev56 ;; 914943345d3Smrg PCA56) UNAME_MACHINE=alphapca56 ;; 915943345d3Smrg PCA57) UNAME_MACHINE=alphapca56 ;; 916943345d3Smrg EV6) UNAME_MACHINE=alphaev6 ;; 917943345d3Smrg EV67) UNAME_MACHINE=alphaev67 ;; 918943345d3Smrg EV68*) UNAME_MACHINE=alphaev68 ;; 919943345d3Smrg esac 920943345d3Smrg objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null 921943345d3Smrg if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi 922943345d3Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 923f67b85aaSmrg exit ;; 924943345d3Smrg parisc:Linux:*:* | hppa:Linux:*:*) 925943345d3Smrg # Look for CPU level 926943345d3Smrg case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 927943345d3Smrg PA7*) echo hppa1.1-unknown-linux-gnu ;; 928943345d3Smrg PA8*) echo hppa2.0-unknown-linux-gnu ;; 929943345d3Smrg *) echo hppa-unknown-linux-gnu ;; 930943345d3Smrg esac 931f67b85aaSmrg exit ;; 932943345d3Smrg parisc64:Linux:*:* | hppa64:Linux:*:*) 933943345d3Smrg echo hppa64-unknown-linux-gnu 934f67b85aaSmrg exit ;; 935943345d3Smrg s390:Linux:*:* | s390x:Linux:*:*) 936f67b85aaSmrg echo ${UNAME_MACHINE}-ibm-linux 937f67b85aaSmrg exit ;; 938943345d3Smrg sh64*:Linux:*:*) 939943345d3Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 940f67b85aaSmrg exit ;; 941943345d3Smrg sh*:Linux:*:*) 942943345d3Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 943f67b85aaSmrg exit ;; 944943345d3Smrg sparc:Linux:*:* | sparc64:Linux:*:*) 945943345d3Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 946f67b85aaSmrg exit ;; 947f67b85aaSmrg vax:Linux:*:*) 948f67b85aaSmrg echo ${UNAME_MACHINE}-dec-linux-gnu 949f67b85aaSmrg exit ;; 950943345d3Smrg x86_64:Linux:*:*) 951f67b85aaSmrg echo x86_64-unknown-linux-gnu 952f67b85aaSmrg exit ;; 953943345d3Smrg i*86:Linux:*:*) 954943345d3Smrg # The BFD linker knows what the default object file format is, so 955943345d3Smrg # first see if it will tell us. cd to the root directory to prevent 956943345d3Smrg # problems with other programs or directories called `ld' in the path. 957943345d3Smrg # Set LC_ALL=C to ensure ld outputs messages in English. 958943345d3Smrg ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ 959943345d3Smrg | sed -ne '/supported targets:/!d 960943345d3Smrg s/[ ][ ]*/ /g 961943345d3Smrg s/.*supported targets: *// 962943345d3Smrg s/ .*// 963943345d3Smrg p'` 964943345d3Smrg case "$ld_supported_targets" in 965943345d3Smrg elf32-i386) 966943345d3Smrg TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" 967943345d3Smrg ;; 968943345d3Smrg a.out-i386-linux) 969943345d3Smrg echo "${UNAME_MACHINE}-pc-linux-gnuaout" 970f67b85aaSmrg exit ;; 971943345d3Smrg coff-i386) 972943345d3Smrg echo "${UNAME_MACHINE}-pc-linux-gnucoff" 973f67b85aaSmrg exit ;; 974943345d3Smrg "") 975943345d3Smrg # Either a pre-BFD a.out linker (linux-gnuoldld) or 976943345d3Smrg # one that does not give us useful --help. 977943345d3Smrg echo "${UNAME_MACHINE}-pc-linux-gnuoldld" 978f67b85aaSmrg exit ;; 979943345d3Smrg esac 980943345d3Smrg # Determine whether the default compiler is a.out or elf 981943345d3Smrg eval $set_cc_for_build 982943345d3Smrg sed 's/^ //' << EOF >$dummy.c 983943345d3Smrg #include <features.h> 984943345d3Smrg #ifdef __ELF__ 985943345d3Smrg # ifdef __GLIBC__ 986943345d3Smrg # if __GLIBC__ >= 2 987943345d3Smrg LIBC=gnu 988943345d3Smrg # else 989943345d3Smrg LIBC=gnulibc1 990943345d3Smrg # endif 991943345d3Smrg # else 992943345d3Smrg LIBC=gnulibc1 993943345d3Smrg # endif 994943345d3Smrg #else 995f67b85aaSmrg #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC) 996943345d3Smrg LIBC=gnu 997943345d3Smrg #else 998943345d3Smrg LIBC=gnuaout 999943345d3Smrg #endif 1000943345d3Smrg #endif 1001f67b85aaSmrg #ifdef __dietlibc__ 1002f67b85aaSmrg LIBC=dietlibc 1003f67b85aaSmrg #endif 1004943345d3SmrgEOF 1005f67b85aaSmrg eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 1006f67b85aaSmrg /^LIBC/{ 1007f67b85aaSmrg s: ::g 1008f67b85aaSmrg p 1009f67b85aaSmrg }'`" 1010f67b85aaSmrg test x"${LIBC}" != x && { 1011f67b85aaSmrg echo "${UNAME_MACHINE}-pc-linux-${LIBC}" 1012f67b85aaSmrg exit 1013f67b85aaSmrg } 1014f67b85aaSmrg test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; } 1015943345d3Smrg ;; 1016943345d3Smrg i*86:DYNIX/ptx:4*:*) 1017943345d3Smrg # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 1018943345d3Smrg # earlier versions are messed up and put the nodename in both 1019943345d3Smrg # sysname and nodename. 1020943345d3Smrg echo i386-sequent-sysv4 1021f67b85aaSmrg exit ;; 1022943345d3Smrg i*86:UNIX_SV:4.2MP:2.*) 1023943345d3Smrg # Unixware is an offshoot of SVR4, but it has its own version 1024943345d3Smrg # number series starting with 2... 1025943345d3Smrg # I am not positive that other SVR4 systems won't match this, 1026943345d3Smrg # I just have to hope. -- rms. 1027943345d3Smrg # Use sysv4.2uw... so that sysv4* matches it. 1028943345d3Smrg echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 1029f67b85aaSmrg exit ;; 1030943345d3Smrg i*86:OS/2:*:*) 1031943345d3Smrg # If we were able to find `uname', then EMX Unix compatibility 1032943345d3Smrg # is probably installed. 1033943345d3Smrg echo ${UNAME_MACHINE}-pc-os2-emx 1034f67b85aaSmrg exit ;; 1035943345d3Smrg i*86:XTS-300:*:STOP) 1036943345d3Smrg echo ${UNAME_MACHINE}-unknown-stop 1037f67b85aaSmrg exit ;; 1038943345d3Smrg i*86:atheos:*:*) 1039943345d3Smrg echo ${UNAME_MACHINE}-unknown-atheos 1040f67b85aaSmrg exit ;; 1041f67b85aaSmrg i*86:syllable:*:*) 1042f67b85aaSmrg echo ${UNAME_MACHINE}-pc-syllable 1043f67b85aaSmrg exit ;; 1044943345d3Smrg i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) 1045943345d3Smrg echo i386-unknown-lynxos${UNAME_RELEASE} 1046f67b85aaSmrg exit ;; 1047943345d3Smrg i*86:*DOS:*:*) 1048943345d3Smrg echo ${UNAME_MACHINE}-pc-msdosdjgpp 1049f67b85aaSmrg exit ;; 1050943345d3Smrg i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 1051943345d3Smrg UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 1052943345d3Smrg if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 1053943345d3Smrg echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 1054943345d3Smrg else 1055943345d3Smrg echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 1056943345d3Smrg fi 1057f67b85aaSmrg exit ;; 1058f67b85aaSmrg i*86:*:5:[678]*) 1059f67b85aaSmrg # UnixWare 7.x, OpenUNIX and OpenServer 6. 1060943345d3Smrg case `/bin/uname -X | grep "^Machine"` in 1061943345d3Smrg *486*) UNAME_MACHINE=i486 ;; 1062943345d3Smrg *Pentium) UNAME_MACHINE=i586 ;; 1063943345d3Smrg *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 1064943345d3Smrg esac 1065943345d3Smrg echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 1066f67b85aaSmrg exit ;; 1067943345d3Smrg i*86:*:3.2:*) 1068943345d3Smrg if test -f /usr/options/cb.name; then 1069943345d3Smrg UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 1070943345d3Smrg echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 1071943345d3Smrg elif /bin/uname -X 2>/dev/null >/dev/null ; then 1072943345d3Smrg UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 1073943345d3Smrg (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 1074943345d3Smrg (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 1075943345d3Smrg && UNAME_MACHINE=i586 1076943345d3Smrg (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 1077943345d3Smrg && UNAME_MACHINE=i686 1078943345d3Smrg (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 1079943345d3Smrg && UNAME_MACHINE=i686 1080943345d3Smrg echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 1081943345d3Smrg else 1082943345d3Smrg echo ${UNAME_MACHINE}-pc-sysv32 1083943345d3Smrg fi 1084f67b85aaSmrg exit ;; 1085943345d3Smrg pc:*:*:*) 1086943345d3Smrg # Left here for compatibility: 1087943345d3Smrg # uname -m prints for DJGPP always 'pc', but it prints nothing about 1088943345d3Smrg # the processor, so we play safe by assuming i386. 1089943345d3Smrg echo i386-pc-msdosdjgpp 1090f67b85aaSmrg exit ;; 1091943345d3Smrg Intel:Mach:3*:*) 1092943345d3Smrg echo i386-pc-mach3 1093f67b85aaSmrg exit ;; 1094943345d3Smrg paragon:*:*:*) 1095943345d3Smrg echo i860-intel-osf1 1096f67b85aaSmrg exit ;; 1097943345d3Smrg i860:*:4.*:*) # i860-SVR4 1098943345d3Smrg if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 1099943345d3Smrg echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 1100943345d3Smrg else # Add other i860-SVR4 vendors below as they are discovered. 1101943345d3Smrg echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 1102943345d3Smrg fi 1103f67b85aaSmrg exit ;; 1104943345d3Smrg mini*:CTIX:SYS*5:*) 1105943345d3Smrg # "miniframe" 1106943345d3Smrg echo m68010-convergent-sysv 1107f67b85aaSmrg exit ;; 1108943345d3Smrg mc68k:UNIX:SYSTEM5:3.51m) 1109943345d3Smrg echo m68k-convergent-sysv 1110f67b85aaSmrg exit ;; 1111943345d3Smrg M680?0:D-NIX:5.3:*) 1112943345d3Smrg echo m68k-diab-dnix 1113f67b85aaSmrg exit ;; 1114f67b85aaSmrg M68*:*:R3V[5678]*:*) 1115f67b85aaSmrg test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 1116f67b85aaSmrg 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) 1117943345d3Smrg OS_REL='' 1118943345d3Smrg test -r /etc/.relid \ 1119943345d3Smrg && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1120943345d3Smrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1121f67b85aaSmrg && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 1122943345d3Smrg /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1123f67b85aaSmrg && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1124943345d3Smrg 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 1125943345d3Smrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1126f67b85aaSmrg && { echo i486-ncr-sysv4; exit; } ;; 1127943345d3Smrg m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 1128943345d3Smrg echo m68k-unknown-lynxos${UNAME_RELEASE} 1129f67b85aaSmrg exit ;; 1130943345d3Smrg mc68030:UNIX_System_V:4.*:*) 1131943345d3Smrg echo m68k-atari-sysv4 1132f67b85aaSmrg exit ;; 1133943345d3Smrg TSUNAMI:LynxOS:2.*:*) 1134943345d3Smrg echo sparc-unknown-lynxos${UNAME_RELEASE} 1135f67b85aaSmrg exit ;; 1136943345d3Smrg rs6000:LynxOS:2.*:*) 1137943345d3Smrg echo rs6000-unknown-lynxos${UNAME_RELEASE} 1138f67b85aaSmrg exit ;; 1139943345d3Smrg PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) 1140943345d3Smrg echo powerpc-unknown-lynxos${UNAME_RELEASE} 1141f67b85aaSmrg exit ;; 1142943345d3Smrg SM[BE]S:UNIX_SV:*:*) 1143943345d3Smrg echo mips-dde-sysv${UNAME_RELEASE} 1144f67b85aaSmrg exit ;; 1145943345d3Smrg RM*:ReliantUNIX-*:*:*) 1146943345d3Smrg echo mips-sni-sysv4 1147f67b85aaSmrg exit ;; 1148943345d3Smrg RM*:SINIX-*:*:*) 1149943345d3Smrg echo mips-sni-sysv4 1150f67b85aaSmrg exit ;; 1151943345d3Smrg *:SINIX-*:*:*) 1152943345d3Smrg if uname -p 2>/dev/null >/dev/null ; then 1153943345d3Smrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 1154943345d3Smrg echo ${UNAME_MACHINE}-sni-sysv4 1155943345d3Smrg else 1156943345d3Smrg echo ns32k-sni-sysv 1157943345d3Smrg fi 1158f67b85aaSmrg exit ;; 1159943345d3Smrg PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 1160943345d3Smrg # says <Richard.M.Bartel@ccMail.Census.GOV> 1161943345d3Smrg echo i586-unisys-sysv4 1162f67b85aaSmrg exit ;; 1163943345d3Smrg *:UNIX_System_V:4*:FTX*) 1164943345d3Smrg # From Gerald Hewes <hewes@openmarket.com>. 1165943345d3Smrg # How about differentiating between stratus architectures? -djm 1166943345d3Smrg echo hppa1.1-stratus-sysv4 1167f67b85aaSmrg exit ;; 1168943345d3Smrg *:*:*:FTX*) 1169943345d3Smrg # From seanf@swdc.stratus.com. 1170943345d3Smrg echo i860-stratus-sysv4 1171f67b85aaSmrg exit ;; 1172f67b85aaSmrg i*86:VOS:*:*) 1173f67b85aaSmrg # From Paul.Green@stratus.com. 1174f67b85aaSmrg echo ${UNAME_MACHINE}-stratus-vos 1175f67b85aaSmrg exit ;; 1176943345d3Smrg *:VOS:*:*) 1177943345d3Smrg # From Paul.Green@stratus.com. 1178943345d3Smrg echo hppa1.1-stratus-vos 1179f67b85aaSmrg exit ;; 1180943345d3Smrg mc68*:A/UX:*:*) 1181943345d3Smrg echo m68k-apple-aux${UNAME_RELEASE} 1182f67b85aaSmrg exit ;; 1183943345d3Smrg news*:NEWS-OS:6*:*) 1184943345d3Smrg echo mips-sony-newsos6 1185f67b85aaSmrg exit ;; 1186943345d3Smrg R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 1187943345d3Smrg if [ -d /usr/nec ]; then 1188943345d3Smrg echo mips-nec-sysv${UNAME_RELEASE} 1189943345d3Smrg else 1190943345d3Smrg echo mips-unknown-sysv${UNAME_RELEASE} 1191943345d3Smrg fi 1192f67b85aaSmrg exit ;; 1193943345d3Smrg BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 1194943345d3Smrg echo powerpc-be-beos 1195f67b85aaSmrg exit ;; 1196943345d3Smrg BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 1197943345d3Smrg echo powerpc-apple-beos 1198f67b85aaSmrg exit ;; 1199943345d3Smrg BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 1200943345d3Smrg echo i586-pc-beos 1201f67b85aaSmrg exit ;; 1202943345d3Smrg SX-4:SUPER-UX:*:*) 1203943345d3Smrg echo sx4-nec-superux${UNAME_RELEASE} 1204f67b85aaSmrg exit ;; 1205943345d3Smrg SX-5:SUPER-UX:*:*) 1206943345d3Smrg echo sx5-nec-superux${UNAME_RELEASE} 1207f67b85aaSmrg exit ;; 1208943345d3Smrg SX-6:SUPER-UX:*:*) 1209943345d3Smrg echo sx6-nec-superux${UNAME_RELEASE} 1210f67b85aaSmrg exit ;; 1211943345d3Smrg Power*:Rhapsody:*:*) 1212943345d3Smrg echo powerpc-apple-rhapsody${UNAME_RELEASE} 1213f67b85aaSmrg exit ;; 1214943345d3Smrg *:Rhapsody:*:*) 1215943345d3Smrg echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 1216f67b85aaSmrg exit ;; 1217943345d3Smrg *:Darwin:*:*) 1218f67b85aaSmrg UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 1219f67b85aaSmrg case $UNAME_PROCESSOR in 1220f67b85aaSmrg unknown) UNAME_PROCESSOR=powerpc ;; 1221943345d3Smrg esac 1222943345d3Smrg echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 1223f67b85aaSmrg exit ;; 1224943345d3Smrg *:procnto*:*:* | *:QNX:[0123456789]*:*) 1225943345d3Smrg UNAME_PROCESSOR=`uname -p` 1226943345d3Smrg if test "$UNAME_PROCESSOR" = "x86"; then 1227943345d3Smrg UNAME_PROCESSOR=i386 1228943345d3Smrg UNAME_MACHINE=pc 1229943345d3Smrg fi 1230943345d3Smrg echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 1231f67b85aaSmrg exit ;; 1232943345d3Smrg *:QNX:*:4*) 1233943345d3Smrg echo i386-pc-qnx 1234f67b85aaSmrg exit ;; 1235f67b85aaSmrg NSE-?:NONSTOP_KERNEL:*:*) 1236f67b85aaSmrg echo nse-tandem-nsk${UNAME_RELEASE} 1237f67b85aaSmrg exit ;; 1238f67b85aaSmrg NSR-?:NONSTOP_KERNEL:*:*) 1239943345d3Smrg echo nsr-tandem-nsk${UNAME_RELEASE} 1240f67b85aaSmrg exit ;; 1241943345d3Smrg *:NonStop-UX:*:*) 1242943345d3Smrg echo mips-compaq-nonstopux 1243f67b85aaSmrg exit ;; 1244943345d3Smrg BS2000:POSIX*:*:*) 1245943345d3Smrg echo bs2000-siemens-sysv 1246f67b85aaSmrg exit ;; 1247943345d3Smrg DS/*:UNIX_System_V:*:*) 1248943345d3Smrg echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 1249f67b85aaSmrg exit ;; 1250943345d3Smrg *:Plan9:*:*) 1251943345d3Smrg # "uname -m" is not consistent, so use $cputype instead. 386 1252943345d3Smrg # is converted to i386 for consistency with other x86 1253943345d3Smrg # operating systems. 1254943345d3Smrg if test "$cputype" = "386"; then 1255943345d3Smrg UNAME_MACHINE=i386 1256943345d3Smrg else 1257943345d3Smrg UNAME_MACHINE="$cputype" 1258943345d3Smrg fi 1259943345d3Smrg echo ${UNAME_MACHINE}-unknown-plan9 1260f67b85aaSmrg exit ;; 1261943345d3Smrg *:TOPS-10:*:*) 1262943345d3Smrg echo pdp10-unknown-tops10 1263f67b85aaSmrg exit ;; 1264943345d3Smrg *:TENEX:*:*) 1265943345d3Smrg echo pdp10-unknown-tenex 1266f67b85aaSmrg exit ;; 1267943345d3Smrg KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 1268943345d3Smrg echo pdp10-dec-tops20 1269f67b85aaSmrg exit ;; 1270943345d3Smrg XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 1271943345d3Smrg echo pdp10-xkl-tops20 1272f67b85aaSmrg exit ;; 1273943345d3Smrg *:TOPS-20:*:*) 1274943345d3Smrg echo pdp10-unknown-tops20 1275f67b85aaSmrg exit ;; 1276943345d3Smrg *:ITS:*:*) 1277943345d3Smrg echo pdp10-unknown-its 1278f67b85aaSmrg exit ;; 1279943345d3Smrg SEI:*:*:SEIUX) 1280943345d3Smrg echo mips-sei-seiux${UNAME_RELEASE} 1281f67b85aaSmrg exit ;; 1282f67b85aaSmrg *:DragonFly:*:*) 1283f67b85aaSmrg echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 1284f67b85aaSmrg exit ;; 1285f67b85aaSmrg *:*VMS:*:*) 1286f67b85aaSmrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 1287f67b85aaSmrg case "${UNAME_MACHINE}" in 1288f67b85aaSmrg A*) echo alpha-dec-vms ; exit ;; 1289f67b85aaSmrg I*) echo ia64-dec-vms ; exit ;; 1290f67b85aaSmrg V*) echo vax-dec-vms ; exit ;; 1291f67b85aaSmrg esac ;; 1292f67b85aaSmrg *:XENIX:*:SysV) 1293f67b85aaSmrg echo i386-pc-xenix 1294f67b85aaSmrg exit ;; 1295f67b85aaSmrg i*86:skyos:*:*) 1296f67b85aaSmrg echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' 1297f67b85aaSmrg exit ;; 1298f67b85aaSmrg i*86:rdos:*:*) 1299f67b85aaSmrg echo ${UNAME_MACHINE}-pc-rdos 1300f67b85aaSmrg exit ;; 1301943345d3Smrgesac 1302943345d3Smrg 1303943345d3Smrg#echo '(No uname command or uname output not recognized.)' 1>&2 1304943345d3Smrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 1305943345d3Smrg 1306943345d3Smrgeval $set_cc_for_build 1307943345d3Smrgcat >$dummy.c <<EOF 1308943345d3Smrg#ifdef _SEQUENT_ 1309943345d3Smrg# include <sys/types.h> 1310943345d3Smrg# include <sys/utsname.h> 1311943345d3Smrg#endif 1312943345d3Smrgmain () 1313943345d3Smrg{ 1314943345d3Smrg#if defined (sony) 1315943345d3Smrg#if defined (MIPSEB) 1316943345d3Smrg /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, 1317943345d3Smrg I don't know.... */ 1318943345d3Smrg printf ("mips-sony-bsd\n"); exit (0); 1319943345d3Smrg#else 1320943345d3Smrg#include <sys/param.h> 1321943345d3Smrg printf ("m68k-sony-newsos%s\n", 1322943345d3Smrg#ifdef NEWSOS4 1323943345d3Smrg "4" 1324943345d3Smrg#else 1325943345d3Smrg "" 1326943345d3Smrg#endif 1327943345d3Smrg ); exit (0); 1328943345d3Smrg#endif 1329943345d3Smrg#endif 1330943345d3Smrg 1331943345d3Smrg#if defined (__arm) && defined (__acorn) && defined (__unix) 1332f67b85aaSmrg printf ("arm-acorn-riscix\n"); exit (0); 1333943345d3Smrg#endif 1334943345d3Smrg 1335943345d3Smrg#if defined (hp300) && !defined (hpux) 1336943345d3Smrg printf ("m68k-hp-bsd\n"); exit (0); 1337943345d3Smrg#endif 1338943345d3Smrg 1339943345d3Smrg#if defined (NeXT) 1340943345d3Smrg#if !defined (__ARCHITECTURE__) 1341943345d3Smrg#define __ARCHITECTURE__ "m68k" 1342943345d3Smrg#endif 1343943345d3Smrg int version; 1344943345d3Smrg version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; 1345943345d3Smrg if (version < 4) 1346943345d3Smrg printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); 1347943345d3Smrg else 1348943345d3Smrg printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); 1349943345d3Smrg exit (0); 1350943345d3Smrg#endif 1351943345d3Smrg 1352943345d3Smrg#if defined (MULTIMAX) || defined (n16) 1353943345d3Smrg#if defined (UMAXV) 1354943345d3Smrg printf ("ns32k-encore-sysv\n"); exit (0); 1355943345d3Smrg#else 1356943345d3Smrg#if defined (CMU) 1357943345d3Smrg printf ("ns32k-encore-mach\n"); exit (0); 1358943345d3Smrg#else 1359943345d3Smrg printf ("ns32k-encore-bsd\n"); exit (0); 1360943345d3Smrg#endif 1361943345d3Smrg#endif 1362943345d3Smrg#endif 1363943345d3Smrg 1364943345d3Smrg#if defined (__386BSD__) 1365943345d3Smrg printf ("i386-pc-bsd\n"); exit (0); 1366943345d3Smrg#endif 1367943345d3Smrg 1368943345d3Smrg#if defined (sequent) 1369943345d3Smrg#if defined (i386) 1370943345d3Smrg printf ("i386-sequent-dynix\n"); exit (0); 1371943345d3Smrg#endif 1372943345d3Smrg#if defined (ns32000) 1373943345d3Smrg printf ("ns32k-sequent-dynix\n"); exit (0); 1374943345d3Smrg#endif 1375943345d3Smrg#endif 1376943345d3Smrg 1377943345d3Smrg#if defined (_SEQUENT_) 1378943345d3Smrg struct utsname un; 1379943345d3Smrg 1380943345d3Smrg uname(&un); 1381943345d3Smrg 1382943345d3Smrg if (strncmp(un.version, "V2", 2) == 0) { 1383943345d3Smrg printf ("i386-sequent-ptx2\n"); exit (0); 1384943345d3Smrg } 1385943345d3Smrg if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ 1386943345d3Smrg printf ("i386-sequent-ptx1\n"); exit (0); 1387943345d3Smrg } 1388943345d3Smrg printf ("i386-sequent-ptx\n"); exit (0); 1389943345d3Smrg 1390943345d3Smrg#endif 1391943345d3Smrg 1392943345d3Smrg#if defined (vax) 1393943345d3Smrg# if !defined (ultrix) 1394943345d3Smrg# include <sys/param.h> 1395943345d3Smrg# if defined (BSD) 1396943345d3Smrg# if BSD == 43 1397943345d3Smrg printf ("vax-dec-bsd4.3\n"); exit (0); 1398943345d3Smrg# else 1399943345d3Smrg# if BSD == 199006 1400943345d3Smrg printf ("vax-dec-bsd4.3reno\n"); exit (0); 1401943345d3Smrg# else 1402943345d3Smrg printf ("vax-dec-bsd\n"); exit (0); 1403943345d3Smrg# endif 1404943345d3Smrg# endif 1405943345d3Smrg# else 1406943345d3Smrg printf ("vax-dec-bsd\n"); exit (0); 1407943345d3Smrg# endif 1408943345d3Smrg# else 1409943345d3Smrg printf ("vax-dec-ultrix\n"); exit (0); 1410943345d3Smrg# endif 1411943345d3Smrg#endif 1412943345d3Smrg 1413943345d3Smrg#if defined (alliant) && defined (i860) 1414943345d3Smrg printf ("i860-alliant-bsd\n"); exit (0); 1415943345d3Smrg#endif 1416943345d3Smrg 1417943345d3Smrg exit (1); 1418943345d3Smrg} 1419943345d3SmrgEOF 1420943345d3Smrg 1421f67b85aaSmrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && 1422f67b85aaSmrg { echo "$SYSTEM_NAME"; exit; } 1423943345d3Smrg 1424943345d3Smrg# Apollos put the system type in the environment. 1425943345d3Smrg 1426f67b85aaSmrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } 1427943345d3Smrg 1428943345d3Smrg# Convex versions that predate uname can use getsysinfo(1) 1429943345d3Smrg 1430943345d3Smrgif [ -x /usr/convex/getsysinfo ] 1431943345d3Smrgthen 1432943345d3Smrg case `getsysinfo -f cpu_type` in 1433943345d3Smrg c1*) 1434943345d3Smrg echo c1-convex-bsd 1435f67b85aaSmrg exit ;; 1436943345d3Smrg c2*) 1437943345d3Smrg if getsysinfo -f scalar_acc 1438943345d3Smrg then echo c32-convex-bsd 1439943345d3Smrg else echo c2-convex-bsd 1440943345d3Smrg fi 1441f67b85aaSmrg exit ;; 1442943345d3Smrg c34*) 1443943345d3Smrg echo c34-convex-bsd 1444f67b85aaSmrg exit ;; 1445943345d3Smrg c38*) 1446943345d3Smrg echo c38-convex-bsd 1447f67b85aaSmrg exit ;; 1448943345d3Smrg c4*) 1449943345d3Smrg echo c4-convex-bsd 1450f67b85aaSmrg exit ;; 1451943345d3Smrg esac 1452943345d3Smrgfi 1453943345d3Smrg 1454943345d3Smrgcat >&2 <<EOF 1455943345d3Smrg$0: unable to guess system type 1456943345d3Smrg 1457943345d3SmrgThis script, last modified $timestamp, has failed to recognize 1458943345d3Smrgthe operating system you are using. It is advised that you 1459943345d3Smrgdownload the most up to date version of the config scripts from 1460943345d3Smrg 1461f67b85aaSmrg http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess 1462f67b85aaSmrgand 1463f67b85aaSmrg http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub 1464943345d3Smrg 1465943345d3SmrgIf the version you run ($0) is already up to date, please 1466943345d3Smrgsend the following data and any information you think might be 1467943345d3Smrgpertinent to <config-patches@gnu.org> in order to provide the needed 1468943345d3Smrginformation to handle your system. 1469943345d3Smrg 1470943345d3Smrgconfig.guess timestamp = $timestamp 1471943345d3Smrg 1472943345d3Smrguname -m = `(uname -m) 2>/dev/null || echo unknown` 1473943345d3Smrguname -r = `(uname -r) 2>/dev/null || echo unknown` 1474943345d3Smrguname -s = `(uname -s) 2>/dev/null || echo unknown` 1475943345d3Smrguname -v = `(uname -v) 2>/dev/null || echo unknown` 1476943345d3Smrg 1477943345d3Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 1478943345d3Smrg/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 1479943345d3Smrg 1480943345d3Smrghostinfo = `(hostinfo) 2>/dev/null` 1481943345d3Smrg/bin/universe = `(/bin/universe) 2>/dev/null` 1482943345d3Smrg/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 1483943345d3Smrg/bin/arch = `(/bin/arch) 2>/dev/null` 1484943345d3Smrg/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 1485943345d3Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 1486943345d3Smrg 1487943345d3SmrgUNAME_MACHINE = ${UNAME_MACHINE} 1488943345d3SmrgUNAME_RELEASE = ${UNAME_RELEASE} 1489943345d3SmrgUNAME_SYSTEM = ${UNAME_SYSTEM} 1490943345d3SmrgUNAME_VERSION = ${UNAME_VERSION} 1491943345d3SmrgEOF 1492943345d3Smrg 1493943345d3Smrgexit 1 1494943345d3Smrg 1495943345d3Smrg# Local variables: 1496943345d3Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 1497943345d3Smrg# time-stamp-start: "timestamp='" 1498943345d3Smrg# time-stamp-format: "%:y-%02m-%02d" 1499943345d3Smrg# time-stamp-end: "'" 1500943345d3Smrg# End: 1501