config.guess revision 7bd0f98d
1cbeba4aeSmrg#! /bin/sh 2cbeba4aeSmrg# Attempt to guess a canonical system name. 3cbeba4aeSmrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 47bd0f98dSmrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 57bd0f98dSmrg# Free Software Foundation, Inc. 6cbeba4aeSmrg 77bd0f98dSmrgtimestamp='2009-11-20' 8cbeba4aeSmrg 9cbeba4aeSmrg# This file is free software; you can redistribute it and/or modify it 10cbeba4aeSmrg# under the terms of the GNU General Public License as published by 11cbeba4aeSmrg# the Free Software Foundation; either version 2 of the License, or 12cbeba4aeSmrg# (at your option) any later version. 13cbeba4aeSmrg# 14cbeba4aeSmrg# This program is distributed in the hope that it will be useful, but 15cbeba4aeSmrg# WITHOUT ANY WARRANTY; without even the implied warranty of 16cbeba4aeSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 17cbeba4aeSmrg# General Public License for more details. 18cbeba4aeSmrg# 19cbeba4aeSmrg# You should have received a copy of the GNU General Public License 20cbeba4aeSmrg# along with this program; if not, write to the Free Software 217bd0f98dSmrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 227bd0f98dSmrg# 02110-1301, USA. 23cbeba4aeSmrg# 24cbeba4aeSmrg# As a special exception to the GNU General Public License, if you 25cbeba4aeSmrg# distribute this file as part of a program that contains a 26cbeba4aeSmrg# configuration script generated by Autoconf, you may include it under 27cbeba4aeSmrg# the same distribution terms that you use for the rest of that program. 28cbeba4aeSmrg 297bd0f98dSmrg 307bd0f98dSmrg# Originally written by Per Bothner. Please send patches (context 317bd0f98dSmrg# diff format) to <config-patches@gnu.org> and include a ChangeLog 327bd0f98dSmrg# entry. 33cbeba4aeSmrg# 34cbeba4aeSmrg# This script attempts to guess a canonical system name similar to 35cbeba4aeSmrg# config.sub. If it succeeds, it prints the system name on stdout, and 36cbeba4aeSmrg# exits with 0. Otherwise, it exits with 1. 37cbeba4aeSmrg# 387bd0f98dSmrg# You can get the latest version of this script from: 397bd0f98dSmrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 40cbeba4aeSmrg 41cbeba4aeSmrgme=`echo "$0" | sed -e 's,.*/,,'` 42cbeba4aeSmrg 43cbeba4aeSmrgusage="\ 44cbeba4aeSmrgUsage: $0 [OPTION] 45cbeba4aeSmrg 46cbeba4aeSmrgOutput the configuration name of the system \`$me' is run on. 47cbeba4aeSmrg 48cbeba4aeSmrgOperation modes: 49cbeba4aeSmrg -h, --help print this help, then exit 50cbeba4aeSmrg -t, --time-stamp print date of last modification, then exit 51cbeba4aeSmrg -v, --version print version number, then exit 52cbeba4aeSmrg 53cbeba4aeSmrgReport bugs and patches to <config-patches@gnu.org>." 54cbeba4aeSmrg 55cbeba4aeSmrgversion="\ 56cbeba4aeSmrgGNU config.guess ($timestamp) 57cbeba4aeSmrg 58cbeba4aeSmrgOriginally written by Per Bothner. 597bd0f98dSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 607bd0f98dSmrg2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. 61cbeba4aeSmrg 62cbeba4aeSmrgThis is free software; see the source for copying conditions. There is NO 63cbeba4aeSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 64cbeba4aeSmrg 65cbeba4aeSmrghelp=" 66cbeba4aeSmrgTry \`$me --help' for more information." 67cbeba4aeSmrg 68cbeba4aeSmrg# Parse command line 69cbeba4aeSmrgwhile test $# -gt 0 ; do 70cbeba4aeSmrg case $1 in 71cbeba4aeSmrg --time-stamp | --time* | -t ) 727bd0f98dSmrg echo "$timestamp" ; exit ;; 73cbeba4aeSmrg --version | -v ) 747bd0f98dSmrg echo "$version" ; exit ;; 75cbeba4aeSmrg --help | --h* | -h ) 767bd0f98dSmrg echo "$usage"; exit ;; 77cbeba4aeSmrg -- ) # Stop option processing 78cbeba4aeSmrg shift; break ;; 79cbeba4aeSmrg - ) # Use stdin as input. 80cbeba4aeSmrg break ;; 81cbeba4aeSmrg -* ) 82cbeba4aeSmrg echo "$me: invalid option $1$help" >&2 83cbeba4aeSmrg exit 1 ;; 84cbeba4aeSmrg * ) 85cbeba4aeSmrg break ;; 86cbeba4aeSmrg esac 87cbeba4aeSmrgdone 88cbeba4aeSmrg 89cbeba4aeSmrgif test $# != 0; then 90cbeba4aeSmrg echo "$me: too many arguments$help" >&2 91cbeba4aeSmrg exit 1 92cbeba4aeSmrgfi 93cbeba4aeSmrg 94cbeba4aeSmrgtrap 'exit 1' 1 2 15 95cbeba4aeSmrg 96cbeba4aeSmrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 97cbeba4aeSmrg# compiler to aid in system detection is discouraged as it requires 98cbeba4aeSmrg# temporary files to be created and, as you can see below, it is a 99cbeba4aeSmrg# headache to deal with in a portable fashion. 100cbeba4aeSmrg 101cbeba4aeSmrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 102cbeba4aeSmrg# use `HOST_CC' if defined, but it is deprecated. 103cbeba4aeSmrg 104cbeba4aeSmrg# Portable tmp directory creation inspired by the Autoconf team. 105cbeba4aeSmrg 106cbeba4aeSmrgset_cc_for_build=' 107cbeba4aeSmrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; 108cbeba4aeSmrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 109cbeba4aeSmrg: ${TMPDIR=/tmp} ; 1107bd0f98dSmrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 111cbeba4aeSmrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 112cbeba4aeSmrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || 113cbeba4aeSmrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; 114cbeba4aeSmrgdummy=$tmp/dummy ; 115cbeba4aeSmrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; 116cbeba4aeSmrgcase $CC_FOR_BUILD,$HOST_CC,$CC in 117cbeba4aeSmrg ,,) echo "int x;" > $dummy.c ; 118cbeba4aeSmrg for c in cc gcc c89 c99 ; do 119cbeba4aeSmrg if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then 120cbeba4aeSmrg CC_FOR_BUILD="$c"; break ; 121cbeba4aeSmrg fi ; 122cbeba4aeSmrg done ; 123cbeba4aeSmrg if test x"$CC_FOR_BUILD" = x ; then 124cbeba4aeSmrg CC_FOR_BUILD=no_compiler_found ; 125cbeba4aeSmrg fi 126cbeba4aeSmrg ;; 127cbeba4aeSmrg ,,*) CC_FOR_BUILD=$CC ;; 128cbeba4aeSmrg ,*,*) CC_FOR_BUILD=$HOST_CC ;; 1297bd0f98dSmrgesac ; set_cc_for_build= ;' 130cbeba4aeSmrg 131cbeba4aeSmrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 132cbeba4aeSmrg# (ghazi@noc.rutgers.edu 1994-08-24) 133cbeba4aeSmrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then 134cbeba4aeSmrg PATH=$PATH:/.attbin ; export PATH 135cbeba4aeSmrgfi 136cbeba4aeSmrg 137cbeba4aeSmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 138cbeba4aeSmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 139cbeba4aeSmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 140cbeba4aeSmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 141cbeba4aeSmrg 142cbeba4aeSmrg# Note: order is significant - the case branches are not exclusive. 143cbeba4aeSmrg 144cbeba4aeSmrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 145cbeba4aeSmrg *:NetBSD:*:*) 146cbeba4aeSmrg # NetBSD (nbsd) targets should (where applicable) match one or 147cbeba4aeSmrg # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, 148cbeba4aeSmrg # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 149cbeba4aeSmrg # switched to ELF, *-*-netbsd* would select the old 150cbeba4aeSmrg # object file format. This provides both forward 151cbeba4aeSmrg # compatibility and a consistent mechanism for selecting the 152cbeba4aeSmrg # object file format. 153cbeba4aeSmrg # 154cbeba4aeSmrg # Note: NetBSD doesn't particularly care about the vendor 155cbeba4aeSmrg # portion of the name. We always set it to "unknown". 156cbeba4aeSmrg sysctl="sysctl -n hw.machine_arch" 157cbeba4aeSmrg UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ 158cbeba4aeSmrg /usr/sbin/$sysctl 2>/dev/null || echo unknown)` 159cbeba4aeSmrg case "${UNAME_MACHINE_ARCH}" in 160cbeba4aeSmrg armeb) machine=armeb-unknown ;; 161cbeba4aeSmrg arm*) machine=arm-unknown ;; 162cbeba4aeSmrg sh3el) machine=shl-unknown ;; 163cbeba4aeSmrg sh3eb) machine=sh-unknown ;; 1647bd0f98dSmrg sh5el) machine=sh5le-unknown ;; 165cbeba4aeSmrg *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 166cbeba4aeSmrg esac 167cbeba4aeSmrg # The Operating System including object format, if it has switched 168cbeba4aeSmrg # to ELF recently, or will in the future. 169cbeba4aeSmrg case "${UNAME_MACHINE_ARCH}" in 170cbeba4aeSmrg arm*|i386|m68k|ns32k|sh3*|sparc|vax) 171cbeba4aeSmrg eval $set_cc_for_build 172cbeba4aeSmrg if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 1737bd0f98dSmrg | grep -q __ELF__ 174cbeba4aeSmrg then 175cbeba4aeSmrg # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 176cbeba4aeSmrg # Return netbsd for either. FIX? 177cbeba4aeSmrg os=netbsd 178cbeba4aeSmrg else 179cbeba4aeSmrg os=netbsdelf 180cbeba4aeSmrg fi 181cbeba4aeSmrg ;; 182cbeba4aeSmrg *) 183cbeba4aeSmrg os=netbsd 184cbeba4aeSmrg ;; 185cbeba4aeSmrg esac 186cbeba4aeSmrg # The OS release 187cbeba4aeSmrg # Debian GNU/NetBSD machines have a different userland, and 188cbeba4aeSmrg # thus, need a distinct triplet. However, they do not need 189cbeba4aeSmrg # kernel version information, so it can be replaced with a 190cbeba4aeSmrg # suitable tag, in the style of linux-gnu. 191cbeba4aeSmrg case "${UNAME_VERSION}" in 192cbeba4aeSmrg Debian*) 193cbeba4aeSmrg release='-gnu' 194cbeba4aeSmrg ;; 195cbeba4aeSmrg *) 196cbeba4aeSmrg release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` 197cbeba4aeSmrg ;; 198cbeba4aeSmrg esac 199cbeba4aeSmrg # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 200cbeba4aeSmrg # contains redundant information, the shorter form: 201cbeba4aeSmrg # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 202cbeba4aeSmrg echo "${machine}-${os}${release}" 2037bd0f98dSmrg exit ;; 204cbeba4aeSmrg *:OpenBSD:*:*) 2057bd0f98dSmrg UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 2067bd0f98dSmrg echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 2077bd0f98dSmrg exit ;; 2087bd0f98dSmrg *:ekkoBSD:*:*) 2097bd0f98dSmrg echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 2107bd0f98dSmrg exit ;; 2117bd0f98dSmrg *:SolidBSD:*:*) 2127bd0f98dSmrg echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} 2137bd0f98dSmrg exit ;; 2147bd0f98dSmrg macppc:MirBSD:*:*) 2157bd0f98dSmrg echo powerpc-unknown-mirbsd${UNAME_RELEASE} 2167bd0f98dSmrg exit ;; 2177bd0f98dSmrg *:MirBSD:*:*) 2187bd0f98dSmrg echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 2197bd0f98dSmrg exit ;; 220cbeba4aeSmrg alpha:OSF1:*:*) 2217bd0f98dSmrg case $UNAME_RELEASE in 2227bd0f98dSmrg *4.0) 223cbeba4aeSmrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 2247bd0f98dSmrg ;; 2257bd0f98dSmrg *5.*) 2267bd0f98dSmrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 2277bd0f98dSmrg ;; 2287bd0f98dSmrg esac 229cbeba4aeSmrg # According to Compaq, /usr/sbin/psrinfo has been available on 230cbeba4aeSmrg # OSF/1 and Tru64 systems produced since 1995. I hope that 231cbeba4aeSmrg # covers most systems running today. This code pipes the CPU 232cbeba4aeSmrg # types through head -n 1, so we only detect the type of CPU 0. 233cbeba4aeSmrg ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 234cbeba4aeSmrg case "$ALPHA_CPU_TYPE" in 235cbeba4aeSmrg "EV4 (21064)") 236cbeba4aeSmrg UNAME_MACHINE="alpha" ;; 237cbeba4aeSmrg "EV4.5 (21064)") 238cbeba4aeSmrg UNAME_MACHINE="alpha" ;; 239cbeba4aeSmrg "LCA4 (21066/21068)") 240cbeba4aeSmrg UNAME_MACHINE="alpha" ;; 241cbeba4aeSmrg "EV5 (21164)") 242cbeba4aeSmrg UNAME_MACHINE="alphaev5" ;; 243cbeba4aeSmrg "EV5.6 (21164A)") 244cbeba4aeSmrg UNAME_MACHINE="alphaev56" ;; 245cbeba4aeSmrg "EV5.6 (21164PC)") 246cbeba4aeSmrg UNAME_MACHINE="alphapca56" ;; 247cbeba4aeSmrg "EV5.7 (21164PC)") 248cbeba4aeSmrg UNAME_MACHINE="alphapca57" ;; 249cbeba4aeSmrg "EV6 (21264)") 250cbeba4aeSmrg UNAME_MACHINE="alphaev6" ;; 251cbeba4aeSmrg "EV6.7 (21264A)") 252cbeba4aeSmrg UNAME_MACHINE="alphaev67" ;; 253cbeba4aeSmrg "EV6.8CB (21264C)") 254cbeba4aeSmrg UNAME_MACHINE="alphaev68" ;; 255cbeba4aeSmrg "EV6.8AL (21264B)") 256cbeba4aeSmrg UNAME_MACHINE="alphaev68" ;; 257cbeba4aeSmrg "EV6.8CX (21264D)") 258cbeba4aeSmrg UNAME_MACHINE="alphaev68" ;; 259cbeba4aeSmrg "EV6.9A (21264/EV69A)") 260cbeba4aeSmrg UNAME_MACHINE="alphaev69" ;; 261cbeba4aeSmrg "EV7 (21364)") 262cbeba4aeSmrg UNAME_MACHINE="alphaev7" ;; 263cbeba4aeSmrg "EV7.9 (21364A)") 264cbeba4aeSmrg UNAME_MACHINE="alphaev79" ;; 265cbeba4aeSmrg esac 2667bd0f98dSmrg # A Pn.n version is a patched version. 267cbeba4aeSmrg # A Vn.n version is a released version. 268cbeba4aeSmrg # A Tn.n version is a released field test version. 269cbeba4aeSmrg # A Xn.n version is an unreleased experimental baselevel. 270cbeba4aeSmrg # 1.2 uses "1.2" for uname -r. 2717bd0f98dSmrg echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 2727bd0f98dSmrg exit ;; 273cbeba4aeSmrg Alpha\ *:Windows_NT*:*) 274cbeba4aeSmrg # How do we know it's Interix rather than the generic POSIX subsystem? 275cbeba4aeSmrg # Should we change UNAME_MACHINE based on the output of uname instead 276cbeba4aeSmrg # of the specific Alpha model? 277cbeba4aeSmrg echo alpha-pc-interix 2787bd0f98dSmrg exit ;; 279cbeba4aeSmrg 21064:Windows_NT:50:3) 280cbeba4aeSmrg echo alpha-dec-winnt3.5 2817bd0f98dSmrg exit ;; 282cbeba4aeSmrg Amiga*:UNIX_System_V:4.0:*) 283cbeba4aeSmrg echo m68k-unknown-sysv4 2847bd0f98dSmrg exit ;; 285cbeba4aeSmrg *:[Aa]miga[Oo][Ss]:*:*) 286cbeba4aeSmrg echo ${UNAME_MACHINE}-unknown-amigaos 2877bd0f98dSmrg exit ;; 288cbeba4aeSmrg *:[Mm]orph[Oo][Ss]:*:*) 289cbeba4aeSmrg echo ${UNAME_MACHINE}-unknown-morphos 2907bd0f98dSmrg exit ;; 291cbeba4aeSmrg *:OS/390:*:*) 292cbeba4aeSmrg echo i370-ibm-openedition 2937bd0f98dSmrg exit ;; 2947bd0f98dSmrg *:z/VM:*:*) 2957bd0f98dSmrg echo s390-ibm-zvmoe 2967bd0f98dSmrg exit ;; 2977bd0f98dSmrg *:OS400:*:*) 2987bd0f98dSmrg echo powerpc-ibm-os400 2997bd0f98dSmrg exit ;; 300cbeba4aeSmrg arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 301cbeba4aeSmrg echo arm-acorn-riscix${UNAME_RELEASE} 3027bd0f98dSmrg exit ;; 3037bd0f98dSmrg arm:riscos:*:*|arm:RISCOS:*:*) 3047bd0f98dSmrg echo arm-unknown-riscos 3057bd0f98dSmrg exit ;; 306cbeba4aeSmrg SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 307cbeba4aeSmrg echo hppa1.1-hitachi-hiuxmpp 3087bd0f98dSmrg exit ;; 309cbeba4aeSmrg Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 310cbeba4aeSmrg # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 311cbeba4aeSmrg if test "`(/bin/universe) 2>/dev/null`" = att ; then 312cbeba4aeSmrg echo pyramid-pyramid-sysv3 313cbeba4aeSmrg else 314cbeba4aeSmrg echo pyramid-pyramid-bsd 315cbeba4aeSmrg fi 3167bd0f98dSmrg exit ;; 317cbeba4aeSmrg NILE*:*:*:dcosx) 318cbeba4aeSmrg echo pyramid-pyramid-svr4 3197bd0f98dSmrg exit ;; 320cbeba4aeSmrg DRS?6000:unix:4.0:6*) 321cbeba4aeSmrg echo sparc-icl-nx6 3227bd0f98dSmrg exit ;; 3237bd0f98dSmrg DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 324cbeba4aeSmrg case `/usr/bin/uname -p` in 3257bd0f98dSmrg sparc) echo sparc-icl-nx7; exit ;; 326cbeba4aeSmrg esac ;; 3277bd0f98dSmrg s390x:SunOS:*:*) 3287bd0f98dSmrg echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 3297bd0f98dSmrg exit ;; 330cbeba4aeSmrg sun4H:SunOS:5.*:*) 331cbeba4aeSmrg echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 3327bd0f98dSmrg exit ;; 333cbeba4aeSmrg sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 334cbeba4aeSmrg echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 3357bd0f98dSmrg exit ;; 3367bd0f98dSmrg i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) 3377bd0f98dSmrg echo i386-pc-auroraux${UNAME_RELEASE} 3387bd0f98dSmrg exit ;; 3397bd0f98dSmrg i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) 3407bd0f98dSmrg eval $set_cc_for_build 3417bd0f98dSmrg SUN_ARCH="i386" 3427bd0f98dSmrg # If there is a compiler, see if it is configured for 64-bit objects. 3437bd0f98dSmrg # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. 3447bd0f98dSmrg # This test works for both compilers. 3457bd0f98dSmrg if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 3467bd0f98dSmrg if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ 3477bd0f98dSmrg (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 3487bd0f98dSmrg grep IS_64BIT_ARCH >/dev/null 3497bd0f98dSmrg then 3507bd0f98dSmrg SUN_ARCH="x86_64" 3517bd0f98dSmrg fi 3527bd0f98dSmrg fi 3537bd0f98dSmrg echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 3547bd0f98dSmrg exit ;; 355cbeba4aeSmrg sun4*:SunOS:6*:*) 356cbeba4aeSmrg # According to config.sub, this is the proper way to canonicalize 357cbeba4aeSmrg # SunOS6. Hard to guess exactly what SunOS6 will be like, but 358cbeba4aeSmrg # it's likely to be more like Solaris than SunOS4. 359cbeba4aeSmrg echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 3607bd0f98dSmrg exit ;; 361cbeba4aeSmrg sun4*:SunOS:*:*) 362cbeba4aeSmrg case "`/usr/bin/arch -k`" in 363cbeba4aeSmrg Series*|S4*) 364cbeba4aeSmrg UNAME_RELEASE=`uname -v` 365cbeba4aeSmrg ;; 366cbeba4aeSmrg esac 367cbeba4aeSmrg # Japanese Language versions have a version number like `4.1.3-JL'. 368cbeba4aeSmrg echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 3697bd0f98dSmrg exit ;; 370cbeba4aeSmrg sun3*:SunOS:*:*) 371cbeba4aeSmrg echo m68k-sun-sunos${UNAME_RELEASE} 3727bd0f98dSmrg exit ;; 373cbeba4aeSmrg sun*:*:4.2BSD:*) 374cbeba4aeSmrg UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 375cbeba4aeSmrg test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 376cbeba4aeSmrg case "`/bin/arch`" in 377cbeba4aeSmrg sun3) 378cbeba4aeSmrg echo m68k-sun-sunos${UNAME_RELEASE} 379cbeba4aeSmrg ;; 380cbeba4aeSmrg sun4) 381cbeba4aeSmrg echo sparc-sun-sunos${UNAME_RELEASE} 382cbeba4aeSmrg ;; 383cbeba4aeSmrg esac 3847bd0f98dSmrg exit ;; 385cbeba4aeSmrg aushp:SunOS:*:*) 386cbeba4aeSmrg echo sparc-auspex-sunos${UNAME_RELEASE} 3877bd0f98dSmrg exit ;; 388cbeba4aeSmrg # The situation for MiNT is a little confusing. The machine name 389cbeba4aeSmrg # can be virtually everything (everything which is not 390cbeba4aeSmrg # "atarist" or "atariste" at least should have a processor 391cbeba4aeSmrg # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 392cbeba4aeSmrg # to the lowercase version "mint" (or "freemint"). Finally 393cbeba4aeSmrg # the system name "TOS" denotes a system which is actually not 394cbeba4aeSmrg # MiNT. But MiNT is downward compatible to TOS, so this should 395cbeba4aeSmrg # be no problem. 396cbeba4aeSmrg atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 397cbeba4aeSmrg echo m68k-atari-mint${UNAME_RELEASE} 3987bd0f98dSmrg exit ;; 399cbeba4aeSmrg atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 400cbeba4aeSmrg echo m68k-atari-mint${UNAME_RELEASE} 4017bd0f98dSmrg exit ;; 402cbeba4aeSmrg *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 403cbeba4aeSmrg echo m68k-atari-mint${UNAME_RELEASE} 4047bd0f98dSmrg exit ;; 405cbeba4aeSmrg milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 406cbeba4aeSmrg echo m68k-milan-mint${UNAME_RELEASE} 4077bd0f98dSmrg exit ;; 408cbeba4aeSmrg hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 409cbeba4aeSmrg echo m68k-hades-mint${UNAME_RELEASE} 4107bd0f98dSmrg exit ;; 411cbeba4aeSmrg *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 412cbeba4aeSmrg echo m68k-unknown-mint${UNAME_RELEASE} 4137bd0f98dSmrg exit ;; 4147bd0f98dSmrg m68k:machten:*:*) 4157bd0f98dSmrg echo m68k-apple-machten${UNAME_RELEASE} 4167bd0f98dSmrg exit ;; 417cbeba4aeSmrg powerpc:machten:*:*) 418cbeba4aeSmrg echo powerpc-apple-machten${UNAME_RELEASE} 4197bd0f98dSmrg exit ;; 420cbeba4aeSmrg RISC*:Mach:*:*) 421cbeba4aeSmrg echo mips-dec-mach_bsd4.3 4227bd0f98dSmrg exit ;; 423cbeba4aeSmrg RISC*:ULTRIX:*:*) 424cbeba4aeSmrg echo mips-dec-ultrix${UNAME_RELEASE} 4257bd0f98dSmrg exit ;; 426cbeba4aeSmrg VAX*:ULTRIX*:*:*) 427cbeba4aeSmrg echo vax-dec-ultrix${UNAME_RELEASE} 4287bd0f98dSmrg exit ;; 429cbeba4aeSmrg 2020:CLIX:*:* | 2430:CLIX:*:*) 430cbeba4aeSmrg echo clipper-intergraph-clix${UNAME_RELEASE} 4317bd0f98dSmrg exit ;; 432cbeba4aeSmrg mips:*:*:UMIPS | mips:*:*:RISCos) 433cbeba4aeSmrg eval $set_cc_for_build 434cbeba4aeSmrg sed 's/^ //' << EOF >$dummy.c 435cbeba4aeSmrg#ifdef __cplusplus 436cbeba4aeSmrg#include <stdio.h> /* for printf() prototype */ 437cbeba4aeSmrg int main (int argc, char *argv[]) { 438cbeba4aeSmrg#else 439cbeba4aeSmrg int main (argc, argv) int argc; char *argv[]; { 440cbeba4aeSmrg#endif 441cbeba4aeSmrg #if defined (host_mips) && defined (MIPSEB) 442cbeba4aeSmrg #if defined (SYSTYPE_SYSV) 443cbeba4aeSmrg printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 444cbeba4aeSmrg #endif 445cbeba4aeSmrg #if defined (SYSTYPE_SVR4) 446cbeba4aeSmrg printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 447cbeba4aeSmrg #endif 448cbeba4aeSmrg #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 449cbeba4aeSmrg printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 450cbeba4aeSmrg #endif 451cbeba4aeSmrg #endif 452cbeba4aeSmrg exit (-1); 453cbeba4aeSmrg } 454cbeba4aeSmrgEOF 4557bd0f98dSmrg $CC_FOR_BUILD -o $dummy $dummy.c && 4567bd0f98dSmrg dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 4577bd0f98dSmrg SYSTEM_NAME=`$dummy $dummyarg` && 4587bd0f98dSmrg { echo "$SYSTEM_NAME"; exit; } 459cbeba4aeSmrg echo mips-mips-riscos${UNAME_RELEASE} 4607bd0f98dSmrg exit ;; 461cbeba4aeSmrg Motorola:PowerMAX_OS:*:*) 462cbeba4aeSmrg echo powerpc-motorola-powermax 4637bd0f98dSmrg exit ;; 464cbeba4aeSmrg Motorola:*:4.3:PL8-*) 465cbeba4aeSmrg echo powerpc-harris-powermax 4667bd0f98dSmrg exit ;; 467cbeba4aeSmrg Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 468cbeba4aeSmrg echo powerpc-harris-powermax 4697bd0f98dSmrg exit ;; 470cbeba4aeSmrg Night_Hawk:Power_UNIX:*:*) 471cbeba4aeSmrg echo powerpc-harris-powerunix 4727bd0f98dSmrg exit ;; 473cbeba4aeSmrg m88k:CX/UX:7*:*) 474cbeba4aeSmrg echo m88k-harris-cxux7 4757bd0f98dSmrg exit ;; 476cbeba4aeSmrg m88k:*:4*:R4*) 477cbeba4aeSmrg echo m88k-motorola-sysv4 4787bd0f98dSmrg exit ;; 479cbeba4aeSmrg m88k:*:3*:R3*) 480cbeba4aeSmrg echo m88k-motorola-sysv3 4817bd0f98dSmrg exit ;; 482cbeba4aeSmrg AViiON:dgux:*:*) 483cbeba4aeSmrg # DG/UX returns AViiON for all architectures 484cbeba4aeSmrg UNAME_PROCESSOR=`/usr/bin/uname -p` 485cbeba4aeSmrg if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 486cbeba4aeSmrg then 487cbeba4aeSmrg if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 488cbeba4aeSmrg [ ${TARGET_BINARY_INTERFACE}x = x ] 489cbeba4aeSmrg then 490cbeba4aeSmrg echo m88k-dg-dgux${UNAME_RELEASE} 491cbeba4aeSmrg else 492cbeba4aeSmrg echo m88k-dg-dguxbcs${UNAME_RELEASE} 493cbeba4aeSmrg fi 494cbeba4aeSmrg else 495cbeba4aeSmrg echo i586-dg-dgux${UNAME_RELEASE} 496cbeba4aeSmrg fi 4977bd0f98dSmrg exit ;; 498cbeba4aeSmrg M88*:DolphinOS:*:*) # DolphinOS (SVR3) 499cbeba4aeSmrg echo m88k-dolphin-sysv3 5007bd0f98dSmrg exit ;; 501cbeba4aeSmrg M88*:*:R3*:*) 502cbeba4aeSmrg # Delta 88k system running SVR3 503cbeba4aeSmrg echo m88k-motorola-sysv3 5047bd0f98dSmrg exit ;; 505cbeba4aeSmrg XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 506cbeba4aeSmrg echo m88k-tektronix-sysv3 5077bd0f98dSmrg exit ;; 508cbeba4aeSmrg Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 509cbeba4aeSmrg echo m68k-tektronix-bsd 5107bd0f98dSmrg exit ;; 511cbeba4aeSmrg *:IRIX*:*:*) 512cbeba4aeSmrg echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 5137bd0f98dSmrg exit ;; 514cbeba4aeSmrg ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 5157bd0f98dSmrg echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 5167bd0f98dSmrg exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 517cbeba4aeSmrg i*86:AIX:*:*) 518cbeba4aeSmrg echo i386-ibm-aix 5197bd0f98dSmrg exit ;; 520cbeba4aeSmrg ia64:AIX:*:*) 521cbeba4aeSmrg if [ -x /usr/bin/oslevel ] ; then 522cbeba4aeSmrg IBM_REV=`/usr/bin/oslevel` 523cbeba4aeSmrg else 524cbeba4aeSmrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 525cbeba4aeSmrg fi 526cbeba4aeSmrg echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 5277bd0f98dSmrg exit ;; 528cbeba4aeSmrg *:AIX:2:3) 529cbeba4aeSmrg if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 530cbeba4aeSmrg eval $set_cc_for_build 531cbeba4aeSmrg sed 's/^ //' << EOF >$dummy.c 532cbeba4aeSmrg #include <sys/systemcfg.h> 533cbeba4aeSmrg 534cbeba4aeSmrg main() 535cbeba4aeSmrg { 536cbeba4aeSmrg if (!__power_pc()) 537cbeba4aeSmrg exit(1); 538cbeba4aeSmrg puts("powerpc-ibm-aix3.2.5"); 539cbeba4aeSmrg exit(0); 540cbeba4aeSmrg } 541cbeba4aeSmrgEOF 5427bd0f98dSmrg if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 5437bd0f98dSmrg then 5447bd0f98dSmrg echo "$SYSTEM_NAME" 5457bd0f98dSmrg else 5467bd0f98dSmrg echo rs6000-ibm-aix3.2.5 5477bd0f98dSmrg fi 548cbeba4aeSmrg elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 549cbeba4aeSmrg echo rs6000-ibm-aix3.2.4 550cbeba4aeSmrg else 551cbeba4aeSmrg echo rs6000-ibm-aix3.2 552cbeba4aeSmrg fi 5537bd0f98dSmrg exit ;; 5547bd0f98dSmrg *:AIX:*:[456]) 555cbeba4aeSmrg IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 556cbeba4aeSmrg if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 557cbeba4aeSmrg IBM_ARCH=rs6000 558cbeba4aeSmrg else 559cbeba4aeSmrg IBM_ARCH=powerpc 560cbeba4aeSmrg fi 561cbeba4aeSmrg if [ -x /usr/bin/oslevel ] ; then 562cbeba4aeSmrg IBM_REV=`/usr/bin/oslevel` 563cbeba4aeSmrg else 564cbeba4aeSmrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 565cbeba4aeSmrg fi 566cbeba4aeSmrg echo ${IBM_ARCH}-ibm-aix${IBM_REV} 5677bd0f98dSmrg exit ;; 568cbeba4aeSmrg *:AIX:*:*) 569cbeba4aeSmrg echo rs6000-ibm-aix 5707bd0f98dSmrg exit ;; 571cbeba4aeSmrg ibmrt:4.4BSD:*|romp-ibm:BSD:*) 572cbeba4aeSmrg echo romp-ibm-bsd4.4 5737bd0f98dSmrg exit ;; 574cbeba4aeSmrg ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 575cbeba4aeSmrg echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 5767bd0f98dSmrg exit ;; # report: romp-ibm BSD 4.3 577cbeba4aeSmrg *:BOSX:*:*) 578cbeba4aeSmrg echo rs6000-bull-bosx 5797bd0f98dSmrg exit ;; 580cbeba4aeSmrg DPX/2?00:B.O.S.:*:*) 581cbeba4aeSmrg echo m68k-bull-sysv3 5827bd0f98dSmrg exit ;; 583cbeba4aeSmrg 9000/[34]??:4.3bsd:1.*:*) 584cbeba4aeSmrg echo m68k-hp-bsd 5857bd0f98dSmrg exit ;; 586cbeba4aeSmrg hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 587cbeba4aeSmrg echo m68k-hp-bsd4.4 5887bd0f98dSmrg exit ;; 589cbeba4aeSmrg 9000/[34678]??:HP-UX:*:*) 590cbeba4aeSmrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 591cbeba4aeSmrg case "${UNAME_MACHINE}" in 592cbeba4aeSmrg 9000/31? ) HP_ARCH=m68000 ;; 593cbeba4aeSmrg 9000/[34]?? ) HP_ARCH=m68k ;; 594cbeba4aeSmrg 9000/[678][0-9][0-9]) 595cbeba4aeSmrg if [ -x /usr/bin/getconf ]; then 596cbeba4aeSmrg sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 597cbeba4aeSmrg sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 598cbeba4aeSmrg case "${sc_cpu_version}" in 599cbeba4aeSmrg 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 600cbeba4aeSmrg 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 601cbeba4aeSmrg 532) # CPU_PA_RISC2_0 602cbeba4aeSmrg case "${sc_kernel_bits}" in 603cbeba4aeSmrg 32) HP_ARCH="hppa2.0n" ;; 604cbeba4aeSmrg 64) HP_ARCH="hppa2.0w" ;; 605cbeba4aeSmrg '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 606cbeba4aeSmrg esac ;; 607cbeba4aeSmrg esac 608cbeba4aeSmrg fi 609cbeba4aeSmrg if [ "${HP_ARCH}" = "" ]; then 610cbeba4aeSmrg eval $set_cc_for_build 611cbeba4aeSmrg sed 's/^ //' << EOF >$dummy.c 612cbeba4aeSmrg 613cbeba4aeSmrg #define _HPUX_SOURCE 614cbeba4aeSmrg #include <stdlib.h> 615cbeba4aeSmrg #include <unistd.h> 616cbeba4aeSmrg 617cbeba4aeSmrg int main () 618cbeba4aeSmrg { 619cbeba4aeSmrg #if defined(_SC_KERNEL_BITS) 620cbeba4aeSmrg long bits = sysconf(_SC_KERNEL_BITS); 621cbeba4aeSmrg #endif 622cbeba4aeSmrg long cpu = sysconf (_SC_CPU_VERSION); 623cbeba4aeSmrg 624cbeba4aeSmrg switch (cpu) 625cbeba4aeSmrg { 626cbeba4aeSmrg case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 627cbeba4aeSmrg case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 628cbeba4aeSmrg case CPU_PA_RISC2_0: 629cbeba4aeSmrg #if defined(_SC_KERNEL_BITS) 630cbeba4aeSmrg switch (bits) 631cbeba4aeSmrg { 632cbeba4aeSmrg case 64: puts ("hppa2.0w"); break; 633cbeba4aeSmrg case 32: puts ("hppa2.0n"); break; 634cbeba4aeSmrg default: puts ("hppa2.0"); break; 635cbeba4aeSmrg } break; 636cbeba4aeSmrg #else /* !defined(_SC_KERNEL_BITS) */ 637cbeba4aeSmrg puts ("hppa2.0"); break; 638cbeba4aeSmrg #endif 639cbeba4aeSmrg default: puts ("hppa1.0"); break; 640cbeba4aeSmrg } 641cbeba4aeSmrg exit (0); 642cbeba4aeSmrg } 643cbeba4aeSmrgEOF 644cbeba4aeSmrg (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 645cbeba4aeSmrg test -z "$HP_ARCH" && HP_ARCH=hppa 646cbeba4aeSmrg fi ;; 647cbeba4aeSmrg esac 648cbeba4aeSmrg if [ ${HP_ARCH} = "hppa2.0w" ] 649cbeba4aeSmrg then 6507bd0f98dSmrg eval $set_cc_for_build 6517bd0f98dSmrg 6527bd0f98dSmrg # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 6537bd0f98dSmrg # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 6547bd0f98dSmrg # generating 64-bit code. GNU and HP use different nomenclature: 6557bd0f98dSmrg # 6567bd0f98dSmrg # $ CC_FOR_BUILD=cc ./config.guess 6577bd0f98dSmrg # => hppa2.0w-hp-hpux11.23 6587bd0f98dSmrg # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 6597bd0f98dSmrg # => hppa64-hp-hpux11.23 6607bd0f98dSmrg 6617bd0f98dSmrg if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | 6627bd0f98dSmrg grep -q __LP64__ 663cbeba4aeSmrg then 664cbeba4aeSmrg HP_ARCH="hppa2.0w" 665cbeba4aeSmrg else 666cbeba4aeSmrg HP_ARCH="hppa64" 667cbeba4aeSmrg fi 668cbeba4aeSmrg fi 669cbeba4aeSmrg echo ${HP_ARCH}-hp-hpux${HPUX_REV} 6707bd0f98dSmrg exit ;; 671cbeba4aeSmrg ia64:HP-UX:*:*) 672cbeba4aeSmrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 673cbeba4aeSmrg echo ia64-hp-hpux${HPUX_REV} 6747bd0f98dSmrg exit ;; 675cbeba4aeSmrg 3050*:HI-UX:*:*) 676cbeba4aeSmrg eval $set_cc_for_build 677cbeba4aeSmrg sed 's/^ //' << EOF >$dummy.c 678cbeba4aeSmrg #include <unistd.h> 679cbeba4aeSmrg int 680cbeba4aeSmrg main () 681cbeba4aeSmrg { 682cbeba4aeSmrg long cpu = sysconf (_SC_CPU_VERSION); 683cbeba4aeSmrg /* The order matters, because CPU_IS_HP_MC68K erroneously returns 684cbeba4aeSmrg true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 685cbeba4aeSmrg results, however. */ 686cbeba4aeSmrg if (CPU_IS_PA_RISC (cpu)) 687cbeba4aeSmrg { 688cbeba4aeSmrg switch (cpu) 689cbeba4aeSmrg { 690cbeba4aeSmrg case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 691cbeba4aeSmrg case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 692cbeba4aeSmrg case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 693cbeba4aeSmrg default: puts ("hppa-hitachi-hiuxwe2"); break; 694cbeba4aeSmrg } 695cbeba4aeSmrg } 696cbeba4aeSmrg else if (CPU_IS_HP_MC68K (cpu)) 697cbeba4aeSmrg puts ("m68k-hitachi-hiuxwe2"); 698cbeba4aeSmrg else puts ("unknown-hitachi-hiuxwe2"); 699cbeba4aeSmrg exit (0); 700cbeba4aeSmrg } 701cbeba4aeSmrgEOF 7027bd0f98dSmrg $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 7037bd0f98dSmrg { echo "$SYSTEM_NAME"; exit; } 704cbeba4aeSmrg echo unknown-hitachi-hiuxwe2 7057bd0f98dSmrg exit ;; 706cbeba4aeSmrg 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 707cbeba4aeSmrg echo hppa1.1-hp-bsd 7087bd0f98dSmrg exit ;; 709cbeba4aeSmrg 9000/8??:4.3bsd:*:*) 710cbeba4aeSmrg echo hppa1.0-hp-bsd 7117bd0f98dSmrg exit ;; 712cbeba4aeSmrg *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 713cbeba4aeSmrg echo hppa1.0-hp-mpeix 7147bd0f98dSmrg exit ;; 715cbeba4aeSmrg hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 716cbeba4aeSmrg echo hppa1.1-hp-osf 7177bd0f98dSmrg exit ;; 718cbeba4aeSmrg hp8??:OSF1:*:*) 719cbeba4aeSmrg echo hppa1.0-hp-osf 7207bd0f98dSmrg exit ;; 721cbeba4aeSmrg i*86:OSF1:*:*) 722cbeba4aeSmrg if [ -x /usr/sbin/sysversion ] ; then 723cbeba4aeSmrg echo ${UNAME_MACHINE}-unknown-osf1mk 724cbeba4aeSmrg else 725cbeba4aeSmrg echo ${UNAME_MACHINE}-unknown-osf1 726cbeba4aeSmrg fi 7277bd0f98dSmrg exit ;; 728cbeba4aeSmrg parisc*:Lites*:*:*) 729cbeba4aeSmrg echo hppa1.1-hp-lites 7307bd0f98dSmrg exit ;; 731cbeba4aeSmrg C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 732cbeba4aeSmrg echo c1-convex-bsd 7337bd0f98dSmrg exit ;; 734cbeba4aeSmrg C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 735cbeba4aeSmrg if getsysinfo -f scalar_acc 736cbeba4aeSmrg then echo c32-convex-bsd 737cbeba4aeSmrg else echo c2-convex-bsd 738cbeba4aeSmrg fi 7397bd0f98dSmrg exit ;; 740cbeba4aeSmrg C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 741cbeba4aeSmrg echo c34-convex-bsd 7427bd0f98dSmrg exit ;; 743cbeba4aeSmrg C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 744cbeba4aeSmrg echo c38-convex-bsd 7457bd0f98dSmrg exit ;; 746cbeba4aeSmrg C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 747cbeba4aeSmrg echo c4-convex-bsd 7487bd0f98dSmrg exit ;; 749cbeba4aeSmrg CRAY*Y-MP:*:*:*) 750cbeba4aeSmrg echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7517bd0f98dSmrg exit ;; 752cbeba4aeSmrg CRAY*[A-Z]90:*:*:*) 753cbeba4aeSmrg echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 754cbeba4aeSmrg | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 755cbeba4aeSmrg -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 756cbeba4aeSmrg -e 's/\.[^.]*$/.X/' 7577bd0f98dSmrg exit ;; 758cbeba4aeSmrg CRAY*TS:*:*:*) 759cbeba4aeSmrg echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7607bd0f98dSmrg exit ;; 761cbeba4aeSmrg CRAY*T3E:*:*:*) 762cbeba4aeSmrg echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7637bd0f98dSmrg exit ;; 764cbeba4aeSmrg CRAY*SV1:*:*:*) 765cbeba4aeSmrg echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7667bd0f98dSmrg exit ;; 767cbeba4aeSmrg *:UNICOS/mp:*:*) 7687bd0f98dSmrg echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7697bd0f98dSmrg exit ;; 770cbeba4aeSmrg F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 771cbeba4aeSmrg FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 772cbeba4aeSmrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 773cbeba4aeSmrg FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 774cbeba4aeSmrg echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 7757bd0f98dSmrg exit ;; 7767bd0f98dSmrg 5000:UNIX_System_V:4.*:*) 7777bd0f98dSmrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 7787bd0f98dSmrg FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` 7797bd0f98dSmrg echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 7807bd0f98dSmrg exit ;; 781cbeba4aeSmrg i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 782cbeba4aeSmrg echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 7837bd0f98dSmrg exit ;; 784cbeba4aeSmrg sparc*:BSD/OS:*:*) 785cbeba4aeSmrg echo sparc-unknown-bsdi${UNAME_RELEASE} 7867bd0f98dSmrg exit ;; 787cbeba4aeSmrg *:BSD/OS:*:*) 788cbeba4aeSmrg echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 7897bd0f98dSmrg exit ;; 7907bd0f98dSmrg *:FreeBSD:*:*) 7917bd0f98dSmrg case ${UNAME_MACHINE} in 7927bd0f98dSmrg pc98) 7937bd0f98dSmrg echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 7947bd0f98dSmrg amd64) 7957bd0f98dSmrg echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 7967bd0f98dSmrg *) 7977bd0f98dSmrg echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 7987bd0f98dSmrg esac 7997bd0f98dSmrg exit ;; 800cbeba4aeSmrg i*:CYGWIN*:*) 801cbeba4aeSmrg echo ${UNAME_MACHINE}-pc-cygwin 8027bd0f98dSmrg exit ;; 8037bd0f98dSmrg *:MINGW*:*) 804cbeba4aeSmrg echo ${UNAME_MACHINE}-pc-mingw32 8057bd0f98dSmrg exit ;; 8067bd0f98dSmrg i*:windows32*:*) 8077bd0f98dSmrg # uname -m includes "-pc" on this system. 8087bd0f98dSmrg echo ${UNAME_MACHINE}-mingw32 8097bd0f98dSmrg exit ;; 810cbeba4aeSmrg i*:PW*:*) 811cbeba4aeSmrg echo ${UNAME_MACHINE}-pc-pw32 8127bd0f98dSmrg exit ;; 8137bd0f98dSmrg *:Interix*:*) 8147bd0f98dSmrg case ${UNAME_MACHINE} in 8157bd0f98dSmrg x86) 8167bd0f98dSmrg echo i586-pc-interix${UNAME_RELEASE} 8177bd0f98dSmrg exit ;; 8187bd0f98dSmrg authenticamd | genuineintel | EM64T) 8197bd0f98dSmrg echo x86_64-unknown-interix${UNAME_RELEASE} 8207bd0f98dSmrg exit ;; 8217bd0f98dSmrg IA64) 8227bd0f98dSmrg echo ia64-unknown-interix${UNAME_RELEASE} 8237bd0f98dSmrg exit ;; 8247bd0f98dSmrg esac ;; 825cbeba4aeSmrg [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 826cbeba4aeSmrg echo i${UNAME_MACHINE}-pc-mks 8277bd0f98dSmrg exit ;; 8287bd0f98dSmrg 8664:Windows_NT:*) 8297bd0f98dSmrg echo x86_64-pc-mks 8307bd0f98dSmrg exit ;; 831cbeba4aeSmrg i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 832cbeba4aeSmrg # How do we know it's Interix rather than the generic POSIX subsystem? 833cbeba4aeSmrg # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 834cbeba4aeSmrg # UNAME_MACHINE based on the output of uname instead of i386? 835cbeba4aeSmrg echo i586-pc-interix 8367bd0f98dSmrg exit ;; 837cbeba4aeSmrg i*:UWIN*:*) 838cbeba4aeSmrg echo ${UNAME_MACHINE}-pc-uwin 8397bd0f98dSmrg exit ;; 8407bd0f98dSmrg amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 8417bd0f98dSmrg echo x86_64-unknown-cygwin 8427bd0f98dSmrg exit ;; 843cbeba4aeSmrg p*:CYGWIN*:*) 844cbeba4aeSmrg echo powerpcle-unknown-cygwin 8457bd0f98dSmrg exit ;; 846cbeba4aeSmrg prep*:SunOS:5.*:*) 847cbeba4aeSmrg echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 8487bd0f98dSmrg exit ;; 849cbeba4aeSmrg *:GNU:*:*) 8507bd0f98dSmrg # the GNU system 851cbeba4aeSmrg echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 8527bd0f98dSmrg exit ;; 8537bd0f98dSmrg *:GNU/*:*:*) 8547bd0f98dSmrg # other systems with GNU libc and userland 8557bd0f98dSmrg echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu 8567bd0f98dSmrg exit ;; 857cbeba4aeSmrg i*86:Minix:*:*) 858cbeba4aeSmrg echo ${UNAME_MACHINE}-pc-minix 8597bd0f98dSmrg exit ;; 8607bd0f98dSmrg alpha:Linux:*:*) 8617bd0f98dSmrg case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 8627bd0f98dSmrg EV5) UNAME_MACHINE=alphaev5 ;; 8637bd0f98dSmrg EV56) UNAME_MACHINE=alphaev56 ;; 8647bd0f98dSmrg PCA56) UNAME_MACHINE=alphapca56 ;; 8657bd0f98dSmrg PCA57) UNAME_MACHINE=alphapca56 ;; 8667bd0f98dSmrg EV6) UNAME_MACHINE=alphaev6 ;; 8677bd0f98dSmrg EV67) UNAME_MACHINE=alphaev67 ;; 8687bd0f98dSmrg EV68*) UNAME_MACHINE=alphaev68 ;; 8697bd0f98dSmrg esac 8707bd0f98dSmrg objdump --private-headers /bin/sh | grep -q ld.so.1 8717bd0f98dSmrg if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi 8727bd0f98dSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 8737bd0f98dSmrg exit ;; 874cbeba4aeSmrg arm*:Linux:*:*) 8757bd0f98dSmrg eval $set_cc_for_build 8767bd0f98dSmrg if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ 8777bd0f98dSmrg | grep -q __ARM_EABI__ 8787bd0f98dSmrg then 8797bd0f98dSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 8807bd0f98dSmrg else 8817bd0f98dSmrg echo ${UNAME_MACHINE}-unknown-linux-gnueabi 8827bd0f98dSmrg fi 8837bd0f98dSmrg exit ;; 8847bd0f98dSmrg avr32*:Linux:*:*) 885cbeba4aeSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 8867bd0f98dSmrg exit ;; 887cbeba4aeSmrg cris:Linux:*:*) 888cbeba4aeSmrg echo cris-axis-linux-gnu 8897bd0f98dSmrg exit ;; 8907bd0f98dSmrg crisv32:Linux:*:*) 8917bd0f98dSmrg echo crisv32-axis-linux-gnu 8927bd0f98dSmrg exit ;; 8937bd0f98dSmrg frv:Linux:*:*) 8947bd0f98dSmrg echo frv-unknown-linux-gnu 8957bd0f98dSmrg exit ;; 8967bd0f98dSmrg i*86:Linux:*:*) 8977bd0f98dSmrg LIBC=gnu 898cbeba4aeSmrg eval $set_cc_for_build 899cbeba4aeSmrg sed 's/^ //' << EOF >$dummy.c 9007bd0f98dSmrg #ifdef __dietlibc__ 9017bd0f98dSmrg LIBC=dietlibc 902cbeba4aeSmrg #endif 903cbeba4aeSmrgEOF 9047bd0f98dSmrg eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` 9057bd0f98dSmrg echo "${UNAME_MACHINE}-pc-linux-${LIBC}" 9067bd0f98dSmrg exit ;; 9077bd0f98dSmrg ia64:Linux:*:*) 9087bd0f98dSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 9097bd0f98dSmrg exit ;; 9107bd0f98dSmrg m32r*:Linux:*:*) 9117bd0f98dSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 9127bd0f98dSmrg exit ;; 9137bd0f98dSmrg m68*:Linux:*:*) 9147bd0f98dSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 9157bd0f98dSmrg exit ;; 9167bd0f98dSmrg mips:Linux:*:* | mips64:Linux:*:*) 917cbeba4aeSmrg eval $set_cc_for_build 918cbeba4aeSmrg sed 's/^ //' << EOF >$dummy.c 919cbeba4aeSmrg #undef CPU 9207bd0f98dSmrg #undef ${UNAME_MACHINE} 9217bd0f98dSmrg #undef ${UNAME_MACHINE}el 922cbeba4aeSmrg #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 9237bd0f98dSmrg CPU=${UNAME_MACHINE}el 924cbeba4aeSmrg #else 925cbeba4aeSmrg #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 9267bd0f98dSmrg CPU=${UNAME_MACHINE} 927cbeba4aeSmrg #else 928cbeba4aeSmrg CPU= 929cbeba4aeSmrg #endif 930cbeba4aeSmrg #endif 931cbeba4aeSmrgEOF 9327bd0f98dSmrg eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` 9337bd0f98dSmrg test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 934cbeba4aeSmrg ;; 9357bd0f98dSmrg or32:Linux:*:*) 9367bd0f98dSmrg echo or32-unknown-linux-gnu 9377bd0f98dSmrg exit ;; 9387bd0f98dSmrg padre:Linux:*:*) 9397bd0f98dSmrg echo sparc-unknown-linux-gnu 9407bd0f98dSmrg exit ;; 9417bd0f98dSmrg parisc64:Linux:*:* | hppa64:Linux:*:*) 9427bd0f98dSmrg echo hppa64-unknown-linux-gnu 9437bd0f98dSmrg exit ;; 944cbeba4aeSmrg parisc:Linux:*:* | hppa:Linux:*:*) 945cbeba4aeSmrg # Look for CPU level 946cbeba4aeSmrg case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 947cbeba4aeSmrg PA7*) echo hppa1.1-unknown-linux-gnu ;; 948cbeba4aeSmrg PA8*) echo hppa2.0-unknown-linux-gnu ;; 949cbeba4aeSmrg *) echo hppa-unknown-linux-gnu ;; 950cbeba4aeSmrg esac 9517bd0f98dSmrg exit ;; 9527bd0f98dSmrg ppc64:Linux:*:*) 9537bd0f98dSmrg echo powerpc64-unknown-linux-gnu 9547bd0f98dSmrg exit ;; 9557bd0f98dSmrg ppc:Linux:*:*) 9567bd0f98dSmrg echo powerpc-unknown-linux-gnu 9577bd0f98dSmrg exit ;; 958cbeba4aeSmrg s390:Linux:*:* | s390x:Linux:*:*) 9597bd0f98dSmrg echo ${UNAME_MACHINE}-ibm-linux 9607bd0f98dSmrg exit ;; 961cbeba4aeSmrg sh64*:Linux:*:*) 962cbeba4aeSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 9637bd0f98dSmrg exit ;; 964cbeba4aeSmrg sh*:Linux:*:*) 965cbeba4aeSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 9667bd0f98dSmrg exit ;; 967cbeba4aeSmrg sparc:Linux:*:* | sparc64:Linux:*:*) 968cbeba4aeSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 9697bd0f98dSmrg exit ;; 9707bd0f98dSmrg vax:Linux:*:*) 9717bd0f98dSmrg echo ${UNAME_MACHINE}-dec-linux-gnu 9727bd0f98dSmrg exit ;; 973cbeba4aeSmrg x86_64:Linux:*:*) 9747bd0f98dSmrg echo x86_64-unknown-linux-gnu 9757bd0f98dSmrg exit ;; 9767bd0f98dSmrg xtensa*:Linux:*:*) 9777bd0f98dSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 9787bd0f98dSmrg exit ;; 979cbeba4aeSmrg i*86:DYNIX/ptx:4*:*) 980cbeba4aeSmrg # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 981cbeba4aeSmrg # earlier versions are messed up and put the nodename in both 982cbeba4aeSmrg # sysname and nodename. 983cbeba4aeSmrg echo i386-sequent-sysv4 9847bd0f98dSmrg exit ;; 985cbeba4aeSmrg i*86:UNIX_SV:4.2MP:2.*) 986cbeba4aeSmrg # Unixware is an offshoot of SVR4, but it has its own version 987cbeba4aeSmrg # number series starting with 2... 988cbeba4aeSmrg # I am not positive that other SVR4 systems won't match this, 989cbeba4aeSmrg # I just have to hope. -- rms. 990cbeba4aeSmrg # Use sysv4.2uw... so that sysv4* matches it. 991cbeba4aeSmrg echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 9927bd0f98dSmrg exit ;; 993cbeba4aeSmrg i*86:OS/2:*:*) 994cbeba4aeSmrg # If we were able to find `uname', then EMX Unix compatibility 995cbeba4aeSmrg # is probably installed. 996cbeba4aeSmrg echo ${UNAME_MACHINE}-pc-os2-emx 9977bd0f98dSmrg exit ;; 998cbeba4aeSmrg i*86:XTS-300:*:STOP) 999cbeba4aeSmrg echo ${UNAME_MACHINE}-unknown-stop 10007bd0f98dSmrg exit ;; 1001cbeba4aeSmrg i*86:atheos:*:*) 1002cbeba4aeSmrg echo ${UNAME_MACHINE}-unknown-atheos 10037bd0f98dSmrg exit ;; 10047bd0f98dSmrg i*86:syllable:*:*) 10057bd0f98dSmrg echo ${UNAME_MACHINE}-pc-syllable 10067bd0f98dSmrg exit ;; 10077bd0f98dSmrg i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) 1008cbeba4aeSmrg echo i386-unknown-lynxos${UNAME_RELEASE} 10097bd0f98dSmrg exit ;; 1010cbeba4aeSmrg i*86:*DOS:*:*) 1011cbeba4aeSmrg echo ${UNAME_MACHINE}-pc-msdosdjgpp 10127bd0f98dSmrg exit ;; 1013cbeba4aeSmrg i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 1014cbeba4aeSmrg UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 1015cbeba4aeSmrg if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 1016cbeba4aeSmrg echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 1017cbeba4aeSmrg else 1018cbeba4aeSmrg echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 1019cbeba4aeSmrg fi 10207bd0f98dSmrg exit ;; 10217bd0f98dSmrg i*86:*:5:[678]*) 10227bd0f98dSmrg # UnixWare 7.x, OpenUNIX and OpenServer 6. 1023cbeba4aeSmrg case `/bin/uname -X | grep "^Machine"` in 1024cbeba4aeSmrg *486*) UNAME_MACHINE=i486 ;; 1025cbeba4aeSmrg *Pentium) UNAME_MACHINE=i586 ;; 1026cbeba4aeSmrg *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 1027cbeba4aeSmrg esac 1028cbeba4aeSmrg echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 10297bd0f98dSmrg exit ;; 1030cbeba4aeSmrg i*86:*:3.2:*) 1031cbeba4aeSmrg if test -f /usr/options/cb.name; then 1032cbeba4aeSmrg UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 1033cbeba4aeSmrg echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 1034cbeba4aeSmrg elif /bin/uname -X 2>/dev/null >/dev/null ; then 1035cbeba4aeSmrg UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 1036cbeba4aeSmrg (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 1037cbeba4aeSmrg (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 1038cbeba4aeSmrg && UNAME_MACHINE=i586 1039cbeba4aeSmrg (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 1040cbeba4aeSmrg && UNAME_MACHINE=i686 1041cbeba4aeSmrg (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 1042cbeba4aeSmrg && UNAME_MACHINE=i686 1043cbeba4aeSmrg echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 1044cbeba4aeSmrg else 1045cbeba4aeSmrg echo ${UNAME_MACHINE}-pc-sysv32 1046cbeba4aeSmrg fi 10477bd0f98dSmrg exit ;; 1048cbeba4aeSmrg pc:*:*:*) 1049cbeba4aeSmrg # Left here for compatibility: 1050cbeba4aeSmrg # uname -m prints for DJGPP always 'pc', but it prints nothing about 10517bd0f98dSmrg # the processor, so we play safe by assuming i586. 10527bd0f98dSmrg # Note: whatever this is, it MUST be the same as what config.sub 10537bd0f98dSmrg # prints for the "djgpp" host, or else GDB configury will decide that 10547bd0f98dSmrg # this is a cross-build. 10557bd0f98dSmrg echo i586-pc-msdosdjgpp 10567bd0f98dSmrg exit ;; 1057cbeba4aeSmrg Intel:Mach:3*:*) 1058cbeba4aeSmrg echo i386-pc-mach3 10597bd0f98dSmrg exit ;; 1060cbeba4aeSmrg paragon:*:*:*) 1061cbeba4aeSmrg echo i860-intel-osf1 10627bd0f98dSmrg exit ;; 1063cbeba4aeSmrg i860:*:4.*:*) # i860-SVR4 1064cbeba4aeSmrg if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 1065cbeba4aeSmrg echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 1066cbeba4aeSmrg else # Add other i860-SVR4 vendors below as they are discovered. 1067cbeba4aeSmrg echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 1068cbeba4aeSmrg fi 10697bd0f98dSmrg exit ;; 1070cbeba4aeSmrg mini*:CTIX:SYS*5:*) 1071cbeba4aeSmrg # "miniframe" 1072cbeba4aeSmrg echo m68010-convergent-sysv 10737bd0f98dSmrg exit ;; 1074cbeba4aeSmrg mc68k:UNIX:SYSTEM5:3.51m) 1075cbeba4aeSmrg echo m68k-convergent-sysv 10767bd0f98dSmrg exit ;; 1077cbeba4aeSmrg M680?0:D-NIX:5.3:*) 1078cbeba4aeSmrg echo m68k-diab-dnix 10797bd0f98dSmrg exit ;; 10807bd0f98dSmrg M68*:*:R3V[5678]*:*) 10817bd0f98dSmrg test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 10827bd0f98dSmrg 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) 1083cbeba4aeSmrg OS_REL='' 1084cbeba4aeSmrg test -r /etc/.relid \ 1085cbeba4aeSmrg && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1086cbeba4aeSmrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 10877bd0f98dSmrg && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 1088cbeba4aeSmrg /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 10897bd0f98dSmrg && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1090cbeba4aeSmrg 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 1091cbeba4aeSmrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 10927bd0f98dSmrg && { echo i486-ncr-sysv4; exit; } ;; 10937bd0f98dSmrg NCR*:*:4.2:* | MPRAS*:*:4.2:*) 10947bd0f98dSmrg OS_REL='.3' 10957bd0f98dSmrg test -r /etc/.relid \ 10967bd0f98dSmrg && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 10977bd0f98dSmrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 10987bd0f98dSmrg && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 10997bd0f98dSmrg /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 11007bd0f98dSmrg && { echo i586-ncr-sysv4.3${OS_REL}; exit; } 11017bd0f98dSmrg /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ 11027bd0f98dSmrg && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1103cbeba4aeSmrg m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 1104cbeba4aeSmrg echo m68k-unknown-lynxos${UNAME_RELEASE} 11057bd0f98dSmrg exit ;; 1106cbeba4aeSmrg mc68030:UNIX_System_V:4.*:*) 1107cbeba4aeSmrg echo m68k-atari-sysv4 11087bd0f98dSmrg exit ;; 1109cbeba4aeSmrg TSUNAMI:LynxOS:2.*:*) 1110cbeba4aeSmrg echo sparc-unknown-lynxos${UNAME_RELEASE} 11117bd0f98dSmrg exit ;; 1112cbeba4aeSmrg rs6000:LynxOS:2.*:*) 1113cbeba4aeSmrg echo rs6000-unknown-lynxos${UNAME_RELEASE} 11147bd0f98dSmrg exit ;; 11157bd0f98dSmrg PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) 1116cbeba4aeSmrg echo powerpc-unknown-lynxos${UNAME_RELEASE} 11177bd0f98dSmrg exit ;; 1118cbeba4aeSmrg SM[BE]S:UNIX_SV:*:*) 1119cbeba4aeSmrg echo mips-dde-sysv${UNAME_RELEASE} 11207bd0f98dSmrg exit ;; 1121cbeba4aeSmrg RM*:ReliantUNIX-*:*:*) 1122cbeba4aeSmrg echo mips-sni-sysv4 11237bd0f98dSmrg exit ;; 1124cbeba4aeSmrg RM*:SINIX-*:*:*) 1125cbeba4aeSmrg echo mips-sni-sysv4 11267bd0f98dSmrg exit ;; 1127cbeba4aeSmrg *:SINIX-*:*:*) 1128cbeba4aeSmrg if uname -p 2>/dev/null >/dev/null ; then 1129cbeba4aeSmrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 1130cbeba4aeSmrg echo ${UNAME_MACHINE}-sni-sysv4 1131cbeba4aeSmrg else 1132cbeba4aeSmrg echo ns32k-sni-sysv 1133cbeba4aeSmrg fi 11347bd0f98dSmrg exit ;; 1135cbeba4aeSmrg PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 1136cbeba4aeSmrg # says <Richard.M.Bartel@ccMail.Census.GOV> 1137cbeba4aeSmrg echo i586-unisys-sysv4 11387bd0f98dSmrg exit ;; 1139cbeba4aeSmrg *:UNIX_System_V:4*:FTX*) 1140cbeba4aeSmrg # From Gerald Hewes <hewes@openmarket.com>. 1141cbeba4aeSmrg # How about differentiating between stratus architectures? -djm 1142cbeba4aeSmrg echo hppa1.1-stratus-sysv4 11437bd0f98dSmrg exit ;; 1144cbeba4aeSmrg *:*:*:FTX*) 1145cbeba4aeSmrg # From seanf@swdc.stratus.com. 1146cbeba4aeSmrg echo i860-stratus-sysv4 11477bd0f98dSmrg exit ;; 11487bd0f98dSmrg i*86:VOS:*:*) 11497bd0f98dSmrg # From Paul.Green@stratus.com. 11507bd0f98dSmrg echo ${UNAME_MACHINE}-stratus-vos 11517bd0f98dSmrg exit ;; 1152cbeba4aeSmrg *:VOS:*:*) 1153cbeba4aeSmrg # From Paul.Green@stratus.com. 1154cbeba4aeSmrg echo hppa1.1-stratus-vos 11557bd0f98dSmrg exit ;; 1156cbeba4aeSmrg mc68*:A/UX:*:*) 1157cbeba4aeSmrg echo m68k-apple-aux${UNAME_RELEASE} 11587bd0f98dSmrg exit ;; 1159cbeba4aeSmrg news*:NEWS-OS:6*:*) 1160cbeba4aeSmrg echo mips-sony-newsos6 11617bd0f98dSmrg exit ;; 1162cbeba4aeSmrg R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 1163cbeba4aeSmrg if [ -d /usr/nec ]; then 1164cbeba4aeSmrg echo mips-nec-sysv${UNAME_RELEASE} 1165cbeba4aeSmrg else 1166cbeba4aeSmrg echo mips-unknown-sysv${UNAME_RELEASE} 1167cbeba4aeSmrg fi 11687bd0f98dSmrg exit ;; 1169cbeba4aeSmrg BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 1170cbeba4aeSmrg echo powerpc-be-beos 11717bd0f98dSmrg exit ;; 1172cbeba4aeSmrg BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 1173cbeba4aeSmrg echo powerpc-apple-beos 11747bd0f98dSmrg exit ;; 1175cbeba4aeSmrg BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 1176cbeba4aeSmrg echo i586-pc-beos 11777bd0f98dSmrg exit ;; 11787bd0f98dSmrg BePC:Haiku:*:*) # Haiku running on Intel PC compatible. 11797bd0f98dSmrg echo i586-pc-haiku 11807bd0f98dSmrg exit ;; 1181cbeba4aeSmrg SX-4:SUPER-UX:*:*) 1182cbeba4aeSmrg echo sx4-nec-superux${UNAME_RELEASE} 11837bd0f98dSmrg exit ;; 1184cbeba4aeSmrg SX-5:SUPER-UX:*:*) 1185cbeba4aeSmrg echo sx5-nec-superux${UNAME_RELEASE} 11867bd0f98dSmrg exit ;; 1187cbeba4aeSmrg SX-6:SUPER-UX:*:*) 1188cbeba4aeSmrg echo sx6-nec-superux${UNAME_RELEASE} 11897bd0f98dSmrg exit ;; 11907bd0f98dSmrg SX-7:SUPER-UX:*:*) 11917bd0f98dSmrg echo sx7-nec-superux${UNAME_RELEASE} 11927bd0f98dSmrg exit ;; 11937bd0f98dSmrg SX-8:SUPER-UX:*:*) 11947bd0f98dSmrg echo sx8-nec-superux${UNAME_RELEASE} 11957bd0f98dSmrg exit ;; 11967bd0f98dSmrg SX-8R:SUPER-UX:*:*) 11977bd0f98dSmrg echo sx8r-nec-superux${UNAME_RELEASE} 11987bd0f98dSmrg exit ;; 1199cbeba4aeSmrg Power*:Rhapsody:*:*) 1200cbeba4aeSmrg echo powerpc-apple-rhapsody${UNAME_RELEASE} 12017bd0f98dSmrg exit ;; 1202cbeba4aeSmrg *:Rhapsody:*:*) 1203cbeba4aeSmrg echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 12047bd0f98dSmrg exit ;; 1205cbeba4aeSmrg *:Darwin:*:*) 12067bd0f98dSmrg UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 12077bd0f98dSmrg case $UNAME_PROCESSOR in 12087bd0f98dSmrg i386) 12097bd0f98dSmrg eval $set_cc_for_build 12107bd0f98dSmrg if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 12117bd0f98dSmrg if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ 12127bd0f98dSmrg (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 12137bd0f98dSmrg grep IS_64BIT_ARCH >/dev/null 12147bd0f98dSmrg then 12157bd0f98dSmrg UNAME_PROCESSOR="x86_64" 12167bd0f98dSmrg fi 12177bd0f98dSmrg fi ;; 12187bd0f98dSmrg unknown) UNAME_PROCESSOR=powerpc ;; 1219cbeba4aeSmrg esac 1220cbeba4aeSmrg echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 12217bd0f98dSmrg exit ;; 1222cbeba4aeSmrg *:procnto*:*:* | *:QNX:[0123456789]*:*) 1223cbeba4aeSmrg UNAME_PROCESSOR=`uname -p` 1224cbeba4aeSmrg if test "$UNAME_PROCESSOR" = "x86"; then 1225cbeba4aeSmrg UNAME_PROCESSOR=i386 1226cbeba4aeSmrg UNAME_MACHINE=pc 1227cbeba4aeSmrg fi 1228cbeba4aeSmrg echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 12297bd0f98dSmrg exit ;; 1230cbeba4aeSmrg *:QNX:*:4*) 1231cbeba4aeSmrg echo i386-pc-qnx 12327bd0f98dSmrg exit ;; 12337bd0f98dSmrg NSE-?:NONSTOP_KERNEL:*:*) 12347bd0f98dSmrg echo nse-tandem-nsk${UNAME_RELEASE} 12357bd0f98dSmrg exit ;; 12367bd0f98dSmrg NSR-?:NONSTOP_KERNEL:*:*) 1237cbeba4aeSmrg echo nsr-tandem-nsk${UNAME_RELEASE} 12387bd0f98dSmrg exit ;; 1239cbeba4aeSmrg *:NonStop-UX:*:*) 1240cbeba4aeSmrg echo mips-compaq-nonstopux 12417bd0f98dSmrg exit ;; 1242cbeba4aeSmrg BS2000:POSIX*:*:*) 1243cbeba4aeSmrg echo bs2000-siemens-sysv 12447bd0f98dSmrg exit ;; 1245cbeba4aeSmrg DS/*:UNIX_System_V:*:*) 1246cbeba4aeSmrg echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 12477bd0f98dSmrg exit ;; 1248cbeba4aeSmrg *:Plan9:*:*) 1249cbeba4aeSmrg # "uname -m" is not consistent, so use $cputype instead. 386 1250cbeba4aeSmrg # is converted to i386 for consistency with other x86 1251cbeba4aeSmrg # operating systems. 1252cbeba4aeSmrg if test "$cputype" = "386"; then 1253cbeba4aeSmrg UNAME_MACHINE=i386 1254cbeba4aeSmrg else 1255cbeba4aeSmrg UNAME_MACHINE="$cputype" 1256cbeba4aeSmrg fi 1257cbeba4aeSmrg echo ${UNAME_MACHINE}-unknown-plan9 12587bd0f98dSmrg exit ;; 1259cbeba4aeSmrg *:TOPS-10:*:*) 1260cbeba4aeSmrg echo pdp10-unknown-tops10 12617bd0f98dSmrg exit ;; 1262cbeba4aeSmrg *:TENEX:*:*) 1263cbeba4aeSmrg echo pdp10-unknown-tenex 12647bd0f98dSmrg exit ;; 1265cbeba4aeSmrg KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 1266cbeba4aeSmrg echo pdp10-dec-tops20 12677bd0f98dSmrg exit ;; 1268cbeba4aeSmrg XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 1269cbeba4aeSmrg echo pdp10-xkl-tops20 12707bd0f98dSmrg exit ;; 1271cbeba4aeSmrg *:TOPS-20:*:*) 1272cbeba4aeSmrg echo pdp10-unknown-tops20 12737bd0f98dSmrg exit ;; 1274cbeba4aeSmrg *:ITS:*:*) 1275cbeba4aeSmrg echo pdp10-unknown-its 12767bd0f98dSmrg exit ;; 1277cbeba4aeSmrg SEI:*:*:SEIUX) 1278cbeba4aeSmrg echo mips-sei-seiux${UNAME_RELEASE} 12797bd0f98dSmrg exit ;; 12807bd0f98dSmrg *:DragonFly:*:*) 12817bd0f98dSmrg echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 12827bd0f98dSmrg exit ;; 12837bd0f98dSmrg *:*VMS:*:*) 12847bd0f98dSmrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 12857bd0f98dSmrg case "${UNAME_MACHINE}" in 12867bd0f98dSmrg A*) echo alpha-dec-vms ; exit ;; 12877bd0f98dSmrg I*) echo ia64-dec-vms ; exit ;; 12887bd0f98dSmrg V*) echo vax-dec-vms ; exit ;; 12897bd0f98dSmrg esac ;; 12907bd0f98dSmrg *:XENIX:*:SysV) 12917bd0f98dSmrg echo i386-pc-xenix 12927bd0f98dSmrg exit ;; 12937bd0f98dSmrg i*86:skyos:*:*) 12947bd0f98dSmrg echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' 12957bd0f98dSmrg exit ;; 12967bd0f98dSmrg i*86:rdos:*:*) 12977bd0f98dSmrg echo ${UNAME_MACHINE}-pc-rdos 12987bd0f98dSmrg exit ;; 12997bd0f98dSmrg i*86:AROS:*:*) 13007bd0f98dSmrg echo ${UNAME_MACHINE}-pc-aros 13017bd0f98dSmrg exit ;; 1302cbeba4aeSmrgesac 1303cbeba4aeSmrg 1304cbeba4aeSmrg#echo '(No uname command or uname output not recognized.)' 1>&2 1305cbeba4aeSmrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 1306cbeba4aeSmrg 1307cbeba4aeSmrgeval $set_cc_for_build 1308cbeba4aeSmrgcat >$dummy.c <<EOF 1309cbeba4aeSmrg#ifdef _SEQUENT_ 1310cbeba4aeSmrg# include <sys/types.h> 1311cbeba4aeSmrg# include <sys/utsname.h> 1312cbeba4aeSmrg#endif 1313cbeba4aeSmrgmain () 1314cbeba4aeSmrg{ 1315cbeba4aeSmrg#if defined (sony) 1316cbeba4aeSmrg#if defined (MIPSEB) 1317cbeba4aeSmrg /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, 1318cbeba4aeSmrg I don't know.... */ 1319cbeba4aeSmrg printf ("mips-sony-bsd\n"); exit (0); 1320cbeba4aeSmrg#else 1321cbeba4aeSmrg#include <sys/param.h> 1322cbeba4aeSmrg printf ("m68k-sony-newsos%s\n", 1323cbeba4aeSmrg#ifdef NEWSOS4 1324cbeba4aeSmrg "4" 1325cbeba4aeSmrg#else 1326cbeba4aeSmrg "" 1327cbeba4aeSmrg#endif 1328cbeba4aeSmrg ); exit (0); 1329cbeba4aeSmrg#endif 1330cbeba4aeSmrg#endif 1331cbeba4aeSmrg 1332cbeba4aeSmrg#if defined (__arm) && defined (__acorn) && defined (__unix) 13337bd0f98dSmrg printf ("arm-acorn-riscix\n"); exit (0); 1334cbeba4aeSmrg#endif 1335cbeba4aeSmrg 1336cbeba4aeSmrg#if defined (hp300) && !defined (hpux) 1337cbeba4aeSmrg printf ("m68k-hp-bsd\n"); exit (0); 1338cbeba4aeSmrg#endif 1339cbeba4aeSmrg 1340cbeba4aeSmrg#if defined (NeXT) 1341cbeba4aeSmrg#if !defined (__ARCHITECTURE__) 1342cbeba4aeSmrg#define __ARCHITECTURE__ "m68k" 1343cbeba4aeSmrg#endif 1344cbeba4aeSmrg int version; 1345cbeba4aeSmrg version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; 1346cbeba4aeSmrg if (version < 4) 1347cbeba4aeSmrg printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); 1348cbeba4aeSmrg else 1349cbeba4aeSmrg printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); 1350cbeba4aeSmrg exit (0); 1351cbeba4aeSmrg#endif 1352cbeba4aeSmrg 1353cbeba4aeSmrg#if defined (MULTIMAX) || defined (n16) 1354cbeba4aeSmrg#if defined (UMAXV) 1355cbeba4aeSmrg printf ("ns32k-encore-sysv\n"); exit (0); 1356cbeba4aeSmrg#else 1357cbeba4aeSmrg#if defined (CMU) 1358cbeba4aeSmrg printf ("ns32k-encore-mach\n"); exit (0); 1359cbeba4aeSmrg#else 1360cbeba4aeSmrg printf ("ns32k-encore-bsd\n"); exit (0); 1361cbeba4aeSmrg#endif 1362cbeba4aeSmrg#endif 1363cbeba4aeSmrg#endif 1364cbeba4aeSmrg 1365cbeba4aeSmrg#if defined (__386BSD__) 1366cbeba4aeSmrg printf ("i386-pc-bsd\n"); exit (0); 1367cbeba4aeSmrg#endif 1368cbeba4aeSmrg 1369cbeba4aeSmrg#if defined (sequent) 1370cbeba4aeSmrg#if defined (i386) 1371cbeba4aeSmrg printf ("i386-sequent-dynix\n"); exit (0); 1372cbeba4aeSmrg#endif 1373cbeba4aeSmrg#if defined (ns32000) 1374cbeba4aeSmrg printf ("ns32k-sequent-dynix\n"); exit (0); 1375cbeba4aeSmrg#endif 1376cbeba4aeSmrg#endif 1377cbeba4aeSmrg 1378cbeba4aeSmrg#if defined (_SEQUENT_) 1379cbeba4aeSmrg struct utsname un; 1380cbeba4aeSmrg 1381cbeba4aeSmrg uname(&un); 1382cbeba4aeSmrg 1383cbeba4aeSmrg if (strncmp(un.version, "V2", 2) == 0) { 1384cbeba4aeSmrg printf ("i386-sequent-ptx2\n"); exit (0); 1385cbeba4aeSmrg } 1386cbeba4aeSmrg if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ 1387cbeba4aeSmrg printf ("i386-sequent-ptx1\n"); exit (0); 1388cbeba4aeSmrg } 1389cbeba4aeSmrg printf ("i386-sequent-ptx\n"); exit (0); 1390cbeba4aeSmrg 1391cbeba4aeSmrg#endif 1392cbeba4aeSmrg 1393cbeba4aeSmrg#if defined (vax) 1394cbeba4aeSmrg# if !defined (ultrix) 1395cbeba4aeSmrg# include <sys/param.h> 1396cbeba4aeSmrg# if defined (BSD) 1397cbeba4aeSmrg# if BSD == 43 1398cbeba4aeSmrg printf ("vax-dec-bsd4.3\n"); exit (0); 1399cbeba4aeSmrg# else 1400cbeba4aeSmrg# if BSD == 199006 1401cbeba4aeSmrg printf ("vax-dec-bsd4.3reno\n"); exit (0); 1402cbeba4aeSmrg# else 1403cbeba4aeSmrg printf ("vax-dec-bsd\n"); exit (0); 1404cbeba4aeSmrg# endif 1405cbeba4aeSmrg# endif 1406cbeba4aeSmrg# else 1407cbeba4aeSmrg printf ("vax-dec-bsd\n"); exit (0); 1408cbeba4aeSmrg# endif 1409cbeba4aeSmrg# else 1410cbeba4aeSmrg printf ("vax-dec-ultrix\n"); exit (0); 1411cbeba4aeSmrg# endif 1412cbeba4aeSmrg#endif 1413cbeba4aeSmrg 1414cbeba4aeSmrg#if defined (alliant) && defined (i860) 1415cbeba4aeSmrg printf ("i860-alliant-bsd\n"); exit (0); 1416cbeba4aeSmrg#endif 1417cbeba4aeSmrg 1418cbeba4aeSmrg exit (1); 1419cbeba4aeSmrg} 1420cbeba4aeSmrgEOF 1421cbeba4aeSmrg 14227bd0f98dSmrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && 14237bd0f98dSmrg { echo "$SYSTEM_NAME"; exit; } 1424cbeba4aeSmrg 1425cbeba4aeSmrg# Apollos put the system type in the environment. 1426cbeba4aeSmrg 14277bd0f98dSmrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } 1428cbeba4aeSmrg 1429cbeba4aeSmrg# Convex versions that predate uname can use getsysinfo(1) 1430cbeba4aeSmrg 1431cbeba4aeSmrgif [ -x /usr/convex/getsysinfo ] 1432cbeba4aeSmrgthen 1433cbeba4aeSmrg case `getsysinfo -f cpu_type` in 1434cbeba4aeSmrg c1*) 1435cbeba4aeSmrg echo c1-convex-bsd 14367bd0f98dSmrg exit ;; 1437cbeba4aeSmrg c2*) 1438cbeba4aeSmrg if getsysinfo -f scalar_acc 1439cbeba4aeSmrg then echo c32-convex-bsd 1440cbeba4aeSmrg else echo c2-convex-bsd 1441cbeba4aeSmrg fi 14427bd0f98dSmrg exit ;; 1443cbeba4aeSmrg c34*) 1444cbeba4aeSmrg echo c34-convex-bsd 14457bd0f98dSmrg exit ;; 1446cbeba4aeSmrg c38*) 1447cbeba4aeSmrg echo c38-convex-bsd 14487bd0f98dSmrg exit ;; 1449cbeba4aeSmrg c4*) 1450cbeba4aeSmrg echo c4-convex-bsd 14517bd0f98dSmrg exit ;; 1452cbeba4aeSmrg esac 1453cbeba4aeSmrgfi 1454cbeba4aeSmrg 1455cbeba4aeSmrgcat >&2 <<EOF 1456cbeba4aeSmrg$0: unable to guess system type 1457cbeba4aeSmrg 1458cbeba4aeSmrgThis script, last modified $timestamp, has failed to recognize 1459cbeba4aeSmrgthe operating system you are using. It is advised that you 1460cbeba4aeSmrgdownload the most up to date version of the config scripts from 1461cbeba4aeSmrg 14627bd0f98dSmrg http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 14637bd0f98dSmrgand 14647bd0f98dSmrg http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 1465cbeba4aeSmrg 1466cbeba4aeSmrgIf the version you run ($0) is already up to date, please 1467cbeba4aeSmrgsend the following data and any information you think might be 1468cbeba4aeSmrgpertinent to <config-patches@gnu.org> in order to provide the needed 1469cbeba4aeSmrginformation to handle your system. 1470cbeba4aeSmrg 1471cbeba4aeSmrgconfig.guess timestamp = $timestamp 1472cbeba4aeSmrg 1473cbeba4aeSmrguname -m = `(uname -m) 2>/dev/null || echo unknown` 1474cbeba4aeSmrguname -r = `(uname -r) 2>/dev/null || echo unknown` 1475cbeba4aeSmrguname -s = `(uname -s) 2>/dev/null || echo unknown` 1476cbeba4aeSmrguname -v = `(uname -v) 2>/dev/null || echo unknown` 1477cbeba4aeSmrg 1478cbeba4aeSmrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 1479cbeba4aeSmrg/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 1480cbeba4aeSmrg 1481cbeba4aeSmrghostinfo = `(hostinfo) 2>/dev/null` 1482cbeba4aeSmrg/bin/universe = `(/bin/universe) 2>/dev/null` 1483cbeba4aeSmrg/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 1484cbeba4aeSmrg/bin/arch = `(/bin/arch) 2>/dev/null` 1485cbeba4aeSmrg/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 1486cbeba4aeSmrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 1487cbeba4aeSmrg 1488cbeba4aeSmrgUNAME_MACHINE = ${UNAME_MACHINE} 1489cbeba4aeSmrgUNAME_RELEASE = ${UNAME_RELEASE} 1490cbeba4aeSmrgUNAME_SYSTEM = ${UNAME_SYSTEM} 1491cbeba4aeSmrgUNAME_VERSION = ${UNAME_VERSION} 1492cbeba4aeSmrgEOF 1493cbeba4aeSmrg 1494cbeba4aeSmrgexit 1 1495cbeba4aeSmrg 1496cbeba4aeSmrg# Local variables: 1497cbeba4aeSmrg# eval: (add-hook 'write-file-hooks 'time-stamp) 1498cbeba4aeSmrg# time-stamp-start: "timestamp='" 1499cbeba4aeSmrg# time-stamp-format: "%:y-%02m-%02d" 1500cbeba4aeSmrg# time-stamp-end: "'" 1501cbeba4aeSmrg# End: 1502