109467b48Spatrick#! /bin/sh 209467b48Spatrick# Attempt to guess a canonical system name. 309467b48Spatrick# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 409467b48Spatrick# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 509467b48Spatrick# 2011 Free Software Foundation, Inc. 609467b48Spatrick 709467b48Spatricktimestamp='2011-08-20' 809467b48Spatrick 909467b48Spatrick# This file is free software; you can redistribute it and/or modify it 1009467b48Spatrick# under the terms of the GNU General Public License as published by 1109467b48Spatrick# the Free Software Foundation; either version 2 of the License, or 1209467b48Spatrick# (at your option) any later version. 1309467b48Spatrick# 1409467b48Spatrick# This program is distributed in the hope that it will be useful, but 1509467b48Spatrick# WITHOUT ANY WARRANTY; without even the implied warranty of 1609467b48Spatrick# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 1709467b48Spatrick# General Public License for more details. 1809467b48Spatrick# 1909467b48Spatrick# You should have received a copy of the GNU General Public License 2009467b48Spatrick# along with this program; if not, write to the Free Software 2109467b48Spatrick# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 2209467b48Spatrick# 02110-1301, USA. 2309467b48Spatrick# 2409467b48Spatrick# As a special exception to the GNU General Public License, if you 2509467b48Spatrick# distribute this file as part of a program that contains a 2609467b48Spatrick# configuration script generated by Autoconf, you may include it under 2709467b48Spatrick# the same distribution terms that you use for the rest of that program. 2809467b48Spatrick 2909467b48Spatrick 3009467b48Spatrick# Originally written by Per Bothner. Please send patches (context 3109467b48Spatrick# diff format) to <config-patches@gnu.org> and include a ChangeLog 3209467b48Spatrick# entry. 3309467b48Spatrick# 3409467b48Spatrick# This script attempts to guess a canonical system name similar to 3509467b48Spatrick# config.sub. If it succeeds, it prints the system name on stdout, and 3609467b48Spatrick# exits with 0. Otherwise, it exits with 1. 3709467b48Spatrick# 3809467b48Spatrick# You can get the latest version of this script from: 3909467b48Spatrick# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 4009467b48Spatrick 4109467b48Spatrickme=`echo "$0" | sed -e 's,.*/,,'` 4209467b48Spatrick 4309467b48Spatrickusage="\ 4409467b48SpatrickUsage: $0 [OPTION] 4509467b48Spatrick 4609467b48SpatrickOutput the configuration name of the system \`$me' is run on. 4709467b48Spatrick 4809467b48SpatrickOperation modes: 4909467b48Spatrick -h, --help print this help, then exit 5009467b48Spatrick -t, --time-stamp print date of last modification, then exit 5109467b48Spatrick -v, --version print version number, then exit 5209467b48Spatrick 5309467b48SpatrickReport bugs and patches to <config-patches@gnu.org>." 5409467b48Spatrick 5509467b48Spatrickversion="\ 5609467b48SpatrickGNU config.guess ($timestamp) 5709467b48Spatrick 5809467b48SpatrickOriginally written by Per Bothner. 5909467b48SpatrickCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 6009467b48Spatrick2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free 6109467b48SpatrickSoftware Foundation, Inc. 6209467b48Spatrick 6309467b48SpatrickThis is free software; see the source for copying conditions. There is NO 6409467b48Spatrickwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 6509467b48Spatrick 6609467b48Spatrickhelp=" 6709467b48SpatrickTry \`$me --help' for more information." 6809467b48Spatrick 6909467b48Spatrick# Parse command line 7009467b48Spatrickwhile test $# -gt 0 ; do 7109467b48Spatrick case $1 in 7209467b48Spatrick --time-stamp | --time* | -t ) 7309467b48Spatrick echo "$timestamp" ; exit ;; 7409467b48Spatrick --version | -v ) 7509467b48Spatrick echo "$version" ; exit ;; 7609467b48Spatrick --help | --h* | -h ) 7709467b48Spatrick echo "$usage"; exit ;; 7809467b48Spatrick -- ) # Stop option processing 7909467b48Spatrick shift; break ;; 8009467b48Spatrick - ) # Use stdin as input. 8109467b48Spatrick break ;; 8209467b48Spatrick -* ) 8309467b48Spatrick echo "$me: invalid option $1$help" >&2 8409467b48Spatrick exit 1 ;; 8509467b48Spatrick * ) 8609467b48Spatrick break ;; 8709467b48Spatrick esac 8809467b48Spatrickdone 8909467b48Spatrick 9009467b48Spatrickif test $# != 0; then 9109467b48Spatrick echo "$me: too many arguments$help" >&2 9209467b48Spatrick exit 1 9309467b48Spatrickfi 9409467b48Spatrick 9509467b48Spatricktrap 'exit 1' 1 2 15 9609467b48Spatrick 9709467b48Spatrick# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 9809467b48Spatrick# compiler to aid in system detection is discouraged as it requires 9909467b48Spatrick# temporary files to be created and, as you can see below, it is a 10009467b48Spatrick# headache to deal with in a portable fashion. 10109467b48Spatrick 10209467b48Spatrick# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 10309467b48Spatrick# use `HOST_CC' if defined, but it is deprecated. 10409467b48Spatrick 10509467b48Spatrick# Portable tmp directory creation inspired by the Autoconf team. 10609467b48Spatrick 10709467b48Spatrickset_cc_for_build=' 10809467b48Spatricktrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; 10909467b48Spatricktrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 11009467b48Spatrick: ${TMPDIR=/tmp} ; 11109467b48Spatrick { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 11209467b48Spatrick { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 11309467b48Spatrick { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || 11409467b48Spatrick { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; 11509467b48Spatrickdummy=$tmp/dummy ; 11609467b48Spatricktmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; 11709467b48Spatrickcase $CC_FOR_BUILD,$HOST_CC,$CC in 11809467b48Spatrick ,,) echo "int x;" > $dummy.c ; 11909467b48Spatrick for c in cc gcc c89 c99 ; do 12009467b48Spatrick if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then 12109467b48Spatrick CC_FOR_BUILD="$c"; break ; 12209467b48Spatrick fi ; 12309467b48Spatrick done ; 12409467b48Spatrick if test x"$CC_FOR_BUILD" = x ; then 12509467b48Spatrick CC_FOR_BUILD=no_compiler_found ; 12609467b48Spatrick fi 12709467b48Spatrick ;; 12809467b48Spatrick ,,*) CC_FOR_BUILD=$CC ;; 12909467b48Spatrick ,*,*) CC_FOR_BUILD=$HOST_CC ;; 13009467b48Spatrickesac ; set_cc_for_build= ;' 13109467b48Spatrick 13209467b48Spatrick# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 13309467b48Spatrick# (ghazi@noc.rutgers.edu 1994-08-24) 13409467b48Spatrickif (test -f /.attbin/uname) >/dev/null 2>&1 ; then 13509467b48Spatrick PATH=$PATH:/.attbin ; export PATH 13609467b48Spatrickfi 13709467b48Spatrick 13809467b48SpatrickUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 13909467b48SpatrickUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 14009467b48SpatrickUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 14109467b48SpatrickUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 14209467b48Spatrick 14309467b48Spatrick# Note: order is significant - the case branches are not exclusive. 14409467b48Spatrick 14509467b48Spatrickcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 14609467b48Spatrick *:NetBSD:*:*) 14709467b48Spatrick # NetBSD (nbsd) targets should (where applicable) match one or 14809467b48Spatrick # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, 14909467b48Spatrick # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 15009467b48Spatrick # switched to ELF, *-*-netbsd* would select the old 15109467b48Spatrick # object file format. This provides both forward 15209467b48Spatrick # compatibility and a consistent mechanism for selecting the 15309467b48Spatrick # object file format. 15409467b48Spatrick # 15509467b48Spatrick # Note: NetBSD doesn't particularly care about the vendor 15609467b48Spatrick # portion of the name. We always set it to "unknown". 15709467b48Spatrick sysctl="sysctl -n hw.machine_arch" 15809467b48Spatrick UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ 15909467b48Spatrick /usr/sbin/$sysctl 2>/dev/null || echo unknown)` 16009467b48Spatrick case "${UNAME_MACHINE_ARCH}" in 16109467b48Spatrick armeb) machine=armeb-unknown ;; 16209467b48Spatrick arm*) machine=arm-unknown ;; 16309467b48Spatrick sh3el) machine=shl-unknown ;; 16409467b48Spatrick sh3eb) machine=sh-unknown ;; 16509467b48Spatrick sh5el) machine=sh5le-unknown ;; 16609467b48Spatrick *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 16709467b48Spatrick esac 16809467b48Spatrick # The Operating System including object format, if it has switched 16909467b48Spatrick # to ELF recently, or will in the future. 17009467b48Spatrick case "${UNAME_MACHINE_ARCH}" in 17109467b48Spatrick arm*|i386|m68k|ns32k|sh3*|sparc|vax) 17209467b48Spatrick eval $set_cc_for_build 17309467b48Spatrick if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 17409467b48Spatrick | grep -q __ELF__ 17509467b48Spatrick then 17609467b48Spatrick # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 17709467b48Spatrick # Return netbsd for either. FIX? 17809467b48Spatrick os=netbsd 17909467b48Spatrick else 18009467b48Spatrick os=netbsdelf 18109467b48Spatrick fi 18209467b48Spatrick ;; 18309467b48Spatrick *) 18409467b48Spatrick os=netbsd 18509467b48Spatrick ;; 18609467b48Spatrick esac 18709467b48Spatrick # The OS release 18809467b48Spatrick # Debian GNU/NetBSD machines have a different userland, and 18909467b48Spatrick # thus, need a distinct triplet. However, they do not need 19009467b48Spatrick # kernel version information, so it can be replaced with a 19109467b48Spatrick # suitable tag, in the style of linux-gnu. 19209467b48Spatrick case "${UNAME_VERSION}" in 19309467b48Spatrick Debian*) 19409467b48Spatrick release='-gnu' 19509467b48Spatrick ;; 19609467b48Spatrick *) 19709467b48Spatrick release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` 19809467b48Spatrick ;; 19909467b48Spatrick esac 20009467b48Spatrick # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 20109467b48Spatrick # contains redundant information, the shorter form: 20209467b48Spatrick # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 20309467b48Spatrick echo "${machine}-${os}${release}" 20409467b48Spatrick exit ;; 20509467b48Spatrick *:OpenBSD:*:*) 20609467b48Spatrick UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 20709467b48Spatrick echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 20809467b48Spatrick exit ;; 20909467b48Spatrick *:ekkoBSD:*:*) 21009467b48Spatrick echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 21109467b48Spatrick exit ;; 21209467b48Spatrick *:SolidBSD:*:*) 21309467b48Spatrick echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} 21409467b48Spatrick exit ;; 21509467b48Spatrick macppc:MirBSD:*:*) 21609467b48Spatrick echo powerpc-unknown-mirbsd${UNAME_RELEASE} 21709467b48Spatrick exit ;; 21809467b48Spatrick *:MirBSD:*:*) 21909467b48Spatrick echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 22009467b48Spatrick exit ;; 22109467b48Spatrick alpha:OSF1:*:*) 22209467b48Spatrick case $UNAME_RELEASE in 22309467b48Spatrick *4.0) 22409467b48Spatrick UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 22509467b48Spatrick ;; 22609467b48Spatrick *5.*) 22709467b48Spatrick UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 22809467b48Spatrick ;; 22909467b48Spatrick esac 23009467b48Spatrick # According to Compaq, /usr/sbin/psrinfo has been available on 23109467b48Spatrick # OSF/1 and Tru64 systems produced since 1995. I hope that 23209467b48Spatrick # covers most systems running today. This code pipes the CPU 23309467b48Spatrick # types through head -n 1, so we only detect the type of CPU 0. 23409467b48Spatrick ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 23509467b48Spatrick case "$ALPHA_CPU_TYPE" in 23609467b48Spatrick "EV4 (21064)") 23709467b48Spatrick UNAME_MACHINE="alpha" ;; 23809467b48Spatrick "EV4.5 (21064)") 23909467b48Spatrick UNAME_MACHINE="alpha" ;; 24009467b48Spatrick "LCA4 (21066/21068)") 24109467b48Spatrick UNAME_MACHINE="alpha" ;; 24209467b48Spatrick "EV5 (21164)") 24309467b48Spatrick UNAME_MACHINE="alphaev5" ;; 24409467b48Spatrick "EV5.6 (21164A)") 24509467b48Spatrick UNAME_MACHINE="alphaev56" ;; 24609467b48Spatrick "EV5.6 (21164PC)") 24709467b48Spatrick UNAME_MACHINE="alphapca56" ;; 24809467b48Spatrick "EV5.7 (21164PC)") 24909467b48Spatrick UNAME_MACHINE="alphapca57" ;; 25009467b48Spatrick "EV6 (21264)") 25109467b48Spatrick UNAME_MACHINE="alphaev6" ;; 25209467b48Spatrick "EV6.7 (21264A)") 25309467b48Spatrick UNAME_MACHINE="alphaev67" ;; 25409467b48Spatrick "EV6.8CB (21264C)") 25509467b48Spatrick UNAME_MACHINE="alphaev68" ;; 25609467b48Spatrick "EV6.8AL (21264B)") 25709467b48Spatrick UNAME_MACHINE="alphaev68" ;; 25809467b48Spatrick "EV6.8CX (21264D)") 25909467b48Spatrick UNAME_MACHINE="alphaev68" ;; 26009467b48Spatrick "EV6.9A (21264/EV69A)") 26109467b48Spatrick UNAME_MACHINE="alphaev69" ;; 26209467b48Spatrick "EV7 (21364)") 26309467b48Spatrick UNAME_MACHINE="alphaev7" ;; 26409467b48Spatrick "EV7.9 (21364A)") 26509467b48Spatrick UNAME_MACHINE="alphaev79" ;; 26609467b48Spatrick esac 26709467b48Spatrick # A Pn.n version is a patched version. 26809467b48Spatrick # A Vn.n version is a released version. 26909467b48Spatrick # A Tn.n version is a released field test version. 27009467b48Spatrick # A Xn.n version is an unreleased experimental baselevel. 27109467b48Spatrick # 1.2 uses "1.2" for uname -r. 27209467b48Spatrick echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 27309467b48Spatrick # Reset EXIT trap before exiting to avoid spurious non-zero exit code. 27409467b48Spatrick exitcode=$? 27509467b48Spatrick trap '' 0 27609467b48Spatrick exit $exitcode ;; 27709467b48Spatrick Alpha\ *:Windows_NT*:*) 27809467b48Spatrick # How do we know it's Interix rather than the generic POSIX subsystem? 27909467b48Spatrick # Should we change UNAME_MACHINE based on the output of uname instead 28009467b48Spatrick # of the specific Alpha model? 28109467b48Spatrick echo alpha-pc-interix 28209467b48Spatrick exit ;; 28309467b48Spatrick 21064:Windows_NT:50:3) 28409467b48Spatrick echo alpha-dec-winnt3.5 28509467b48Spatrick exit ;; 28609467b48Spatrick Amiga*:UNIX_System_V:4.0:*) 28709467b48Spatrick echo m68k-unknown-sysv4 28809467b48Spatrick exit ;; 28909467b48Spatrick *:[Aa]miga[Oo][Ss]:*:*) 29009467b48Spatrick echo ${UNAME_MACHINE}-unknown-amigaos 29109467b48Spatrick exit ;; 29209467b48Spatrick *:[Mm]orph[Oo][Ss]:*:*) 29309467b48Spatrick echo ${UNAME_MACHINE}-unknown-morphos 29409467b48Spatrick exit ;; 29509467b48Spatrick *:OS/390:*:*) 29609467b48Spatrick echo i370-ibm-openedition 29709467b48Spatrick exit ;; 29809467b48Spatrick *:z/VM:*:*) 29909467b48Spatrick echo s390-ibm-zvmoe 30009467b48Spatrick exit ;; 30109467b48Spatrick *:OS400:*:*) 30209467b48Spatrick echo powerpc-ibm-os400 30309467b48Spatrick exit ;; 30409467b48Spatrick arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 30509467b48Spatrick echo arm-acorn-riscix${UNAME_RELEASE} 30609467b48Spatrick exit ;; 30709467b48Spatrick arm:riscos:*:*|arm:RISCOS:*:*) 30809467b48Spatrick echo arm-unknown-riscos 30909467b48Spatrick exit ;; 31009467b48Spatrick SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 31109467b48Spatrick echo hppa1.1-hitachi-hiuxmpp 31209467b48Spatrick exit ;; 31309467b48Spatrick Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 31409467b48Spatrick # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 31509467b48Spatrick if test "`(/bin/universe) 2>/dev/null`" = att ; then 31609467b48Spatrick echo pyramid-pyramid-sysv3 31709467b48Spatrick else 31809467b48Spatrick echo pyramid-pyramid-bsd 31909467b48Spatrick fi 32009467b48Spatrick exit ;; 32109467b48Spatrick NILE*:*:*:dcosx) 32209467b48Spatrick echo pyramid-pyramid-svr4 32309467b48Spatrick exit ;; 32409467b48Spatrick DRS?6000:unix:4.0:6*) 32509467b48Spatrick echo sparc-icl-nx6 32609467b48Spatrick exit ;; 32709467b48Spatrick DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 32809467b48Spatrick case `/usr/bin/uname -p` in 32909467b48Spatrick sparc) echo sparc-icl-nx7; exit ;; 33009467b48Spatrick esac ;; 33109467b48Spatrick s390x:SunOS:*:*) 33209467b48Spatrick echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 33309467b48Spatrick exit ;; 33409467b48Spatrick sun4H:SunOS:5.*:*) 33509467b48Spatrick echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 33609467b48Spatrick exit ;; 33709467b48Spatrick sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 33809467b48Spatrick echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 33909467b48Spatrick exit ;; 34009467b48Spatrick i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) 34109467b48Spatrick echo i386-pc-auroraux${UNAME_RELEASE} 34209467b48Spatrick exit ;; 34309467b48Spatrick i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) 34409467b48Spatrick eval $set_cc_for_build 34509467b48Spatrick SUN_ARCH="i386" 34609467b48Spatrick # If there is a compiler, see if it is configured for 64-bit objects. 34709467b48Spatrick # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. 34809467b48Spatrick # This test works for both compilers. 34909467b48Spatrick if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 35009467b48Spatrick if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ 35109467b48Spatrick (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 35209467b48Spatrick grep IS_64BIT_ARCH >/dev/null 35309467b48Spatrick then 35409467b48Spatrick SUN_ARCH="x86_64" 35509467b48Spatrick fi 35609467b48Spatrick fi 35709467b48Spatrick echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 35809467b48Spatrick exit ;; 35909467b48Spatrick sun4*:SunOS:6*:*) 36009467b48Spatrick # According to config.sub, this is the proper way to canonicalize 36109467b48Spatrick # SunOS6. Hard to guess exactly what SunOS6 will be like, but 36209467b48Spatrick # it's likely to be more like Solaris than SunOS4. 36309467b48Spatrick echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 36409467b48Spatrick exit ;; 36509467b48Spatrick sun4*:SunOS:*:*) 36609467b48Spatrick case "`/usr/bin/arch -k`" in 36709467b48Spatrick Series*|S4*) 36809467b48Spatrick UNAME_RELEASE=`uname -v` 36909467b48Spatrick ;; 37009467b48Spatrick esac 37109467b48Spatrick # Japanese Language versions have a version number like `4.1.3-JL'. 37209467b48Spatrick echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 37309467b48Spatrick exit ;; 37409467b48Spatrick sun3*:SunOS:*:*) 37509467b48Spatrick echo m68k-sun-sunos${UNAME_RELEASE} 37609467b48Spatrick exit ;; 37709467b48Spatrick sun*:*:4.2BSD:*) 37809467b48Spatrick UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 37909467b48Spatrick test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 38009467b48Spatrick case "`/bin/arch`" in 38109467b48Spatrick sun3) 38209467b48Spatrick echo m68k-sun-sunos${UNAME_RELEASE} 38309467b48Spatrick ;; 38409467b48Spatrick sun4) 38509467b48Spatrick echo sparc-sun-sunos${UNAME_RELEASE} 38609467b48Spatrick ;; 38709467b48Spatrick esac 38809467b48Spatrick exit ;; 38909467b48Spatrick aushp:SunOS:*:*) 39009467b48Spatrick echo sparc-auspex-sunos${UNAME_RELEASE} 39109467b48Spatrick exit ;; 39209467b48Spatrick # The situation for MiNT is a little confusing. The machine name 39309467b48Spatrick # can be virtually everything (everything which is not 39409467b48Spatrick # "atarist" or "atariste" at least should have a processor 39509467b48Spatrick # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 39609467b48Spatrick # to the lowercase version "mint" (or "freemint"). Finally 39709467b48Spatrick # the system name "TOS" denotes a system which is actually not 39809467b48Spatrick # MiNT. But MiNT is downward compatible to TOS, so this should 39909467b48Spatrick # be no problem. 40009467b48Spatrick atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 40109467b48Spatrick echo m68k-atari-mint${UNAME_RELEASE} 40209467b48Spatrick exit ;; 40309467b48Spatrick atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 40409467b48Spatrick echo m68k-atari-mint${UNAME_RELEASE} 40509467b48Spatrick exit ;; 40609467b48Spatrick *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 40709467b48Spatrick echo m68k-atari-mint${UNAME_RELEASE} 40809467b48Spatrick exit ;; 40909467b48Spatrick milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 41009467b48Spatrick echo m68k-milan-mint${UNAME_RELEASE} 41109467b48Spatrick exit ;; 41209467b48Spatrick hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 41309467b48Spatrick echo m68k-hades-mint${UNAME_RELEASE} 41409467b48Spatrick exit ;; 41509467b48Spatrick *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 41609467b48Spatrick echo m68k-unknown-mint${UNAME_RELEASE} 41709467b48Spatrick exit ;; 41809467b48Spatrick m68k:machten:*:*) 41909467b48Spatrick echo m68k-apple-machten${UNAME_RELEASE} 42009467b48Spatrick exit ;; 42109467b48Spatrick powerpc:machten:*:*) 42209467b48Spatrick echo powerpc-apple-machten${UNAME_RELEASE} 42309467b48Spatrick exit ;; 42409467b48Spatrick RISC*:Mach:*:*) 42509467b48Spatrick echo mips-dec-mach_bsd4.3 42609467b48Spatrick exit ;; 42709467b48Spatrick RISC*:ULTRIX:*:*) 42809467b48Spatrick echo mips-dec-ultrix${UNAME_RELEASE} 42909467b48Spatrick exit ;; 43009467b48Spatrick VAX*:ULTRIX*:*:*) 43109467b48Spatrick echo vax-dec-ultrix${UNAME_RELEASE} 43209467b48Spatrick exit ;; 43309467b48Spatrick 2020:CLIX:*:* | 2430:CLIX:*:*) 43409467b48Spatrick echo clipper-intergraph-clix${UNAME_RELEASE} 43509467b48Spatrick exit ;; 43609467b48Spatrick mips:*:*:UMIPS | mips:*:*:RISCos) 43709467b48Spatrick eval $set_cc_for_build 43809467b48Spatrick sed 's/^ //' << EOF >$dummy.c 43909467b48Spatrick#ifdef __cplusplus 44009467b48Spatrick#include <stdio.h> /* for printf() prototype */ 44109467b48Spatrick int main (int argc, char *argv[]) { 44209467b48Spatrick#else 44309467b48Spatrick int main (argc, argv) int argc; char *argv[]; { 44409467b48Spatrick#endif 44509467b48Spatrick #if defined (host_mips) && defined (MIPSEB) 44609467b48Spatrick #if defined (SYSTYPE_SYSV) 44709467b48Spatrick printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 44809467b48Spatrick #endif 44909467b48Spatrick #if defined (SYSTYPE_SVR4) 45009467b48Spatrick printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 45109467b48Spatrick #endif 45209467b48Spatrick #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 45309467b48Spatrick printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 45409467b48Spatrick #endif 45509467b48Spatrick #endif 45609467b48Spatrick exit (-1); 45709467b48Spatrick } 45809467b48SpatrickEOF 45909467b48Spatrick $CC_FOR_BUILD -o $dummy $dummy.c && 46009467b48Spatrick dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 46109467b48Spatrick SYSTEM_NAME=`$dummy $dummyarg` && 46209467b48Spatrick { echo "$SYSTEM_NAME"; exit; } 46309467b48Spatrick echo mips-mips-riscos${UNAME_RELEASE} 46409467b48Spatrick exit ;; 46509467b48Spatrick Motorola:PowerMAX_OS:*:*) 46609467b48Spatrick echo powerpc-motorola-powermax 46709467b48Spatrick exit ;; 46809467b48Spatrick Motorola:*:4.3:PL8-*) 46909467b48Spatrick echo powerpc-harris-powermax 47009467b48Spatrick exit ;; 47109467b48Spatrick Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 47209467b48Spatrick echo powerpc-harris-powermax 47309467b48Spatrick exit ;; 47409467b48Spatrick Night_Hawk:Power_UNIX:*:*) 47509467b48Spatrick echo powerpc-harris-powerunix 47609467b48Spatrick exit ;; 47709467b48Spatrick m88k:CX/UX:7*:*) 47809467b48Spatrick echo m88k-harris-cxux7 47909467b48Spatrick exit ;; 48009467b48Spatrick m88k:*:4*:R4*) 48109467b48Spatrick echo m88k-motorola-sysv4 48209467b48Spatrick exit ;; 48309467b48Spatrick m88k:*:3*:R3*) 48409467b48Spatrick echo m88k-motorola-sysv3 48509467b48Spatrick exit ;; 48609467b48Spatrick AViiON:dgux:*:*) 48709467b48Spatrick # DG/UX returns AViiON for all architectures 48809467b48Spatrick UNAME_PROCESSOR=`/usr/bin/uname -p` 48909467b48Spatrick if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 49009467b48Spatrick then 49109467b48Spatrick if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 49209467b48Spatrick [ ${TARGET_BINARY_INTERFACE}x = x ] 49309467b48Spatrick then 49409467b48Spatrick echo m88k-dg-dgux${UNAME_RELEASE} 49509467b48Spatrick else 49609467b48Spatrick echo m88k-dg-dguxbcs${UNAME_RELEASE} 49709467b48Spatrick fi 49809467b48Spatrick else 49909467b48Spatrick echo i586-dg-dgux${UNAME_RELEASE} 50009467b48Spatrick fi 50109467b48Spatrick exit ;; 50209467b48Spatrick M88*:DolphinOS:*:*) # DolphinOS (SVR3) 50309467b48Spatrick echo m88k-dolphin-sysv3 50409467b48Spatrick exit ;; 50509467b48Spatrick M88*:*:R3*:*) 50609467b48Spatrick # Delta 88k system running SVR3 50709467b48Spatrick echo m88k-motorola-sysv3 50809467b48Spatrick exit ;; 50909467b48Spatrick XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 51009467b48Spatrick echo m88k-tektronix-sysv3 51109467b48Spatrick exit ;; 51209467b48Spatrick Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 51309467b48Spatrick echo m68k-tektronix-bsd 51409467b48Spatrick exit ;; 51509467b48Spatrick *:IRIX*:*:*) 51609467b48Spatrick echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 51709467b48Spatrick exit ;; 51809467b48Spatrick ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 51909467b48Spatrick echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 52009467b48Spatrick exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 52109467b48Spatrick i*86:AIX:*:*) 52209467b48Spatrick echo i386-ibm-aix 52309467b48Spatrick exit ;; 52409467b48Spatrick ia64:AIX:*:*) 52509467b48Spatrick if [ -x /usr/bin/oslevel ] ; then 52609467b48Spatrick IBM_REV=`/usr/bin/oslevel` 52709467b48Spatrick else 52809467b48Spatrick IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 52909467b48Spatrick fi 53009467b48Spatrick echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 53109467b48Spatrick exit ;; 53209467b48Spatrick *:AIX:2:3) 53309467b48Spatrick if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 53409467b48Spatrick eval $set_cc_for_build 53509467b48Spatrick sed 's/^ //' << EOF >$dummy.c 53609467b48Spatrick #include <sys/systemcfg.h> 53709467b48Spatrick 53809467b48Spatrick main() 53909467b48Spatrick { 54009467b48Spatrick if (!__power_pc()) 54109467b48Spatrick exit(1); 54209467b48Spatrick puts("powerpc-ibm-aix3.2.5"); 54309467b48Spatrick exit(0); 54409467b48Spatrick } 54509467b48SpatrickEOF 54609467b48Spatrick if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 54709467b48Spatrick then 54809467b48Spatrick echo "$SYSTEM_NAME" 54909467b48Spatrick else 55009467b48Spatrick echo rs6000-ibm-aix3.2.5 55109467b48Spatrick fi 55209467b48Spatrick elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 55309467b48Spatrick echo rs6000-ibm-aix3.2.4 55409467b48Spatrick else 55509467b48Spatrick echo rs6000-ibm-aix3.2 55609467b48Spatrick fi 55709467b48Spatrick exit ;; 55809467b48Spatrick *:AIX:*:[4567]) 55909467b48Spatrick IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 56009467b48Spatrick if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 56109467b48Spatrick IBM_ARCH=rs6000 56209467b48Spatrick else 56309467b48Spatrick IBM_ARCH=powerpc 56409467b48Spatrick fi 56509467b48Spatrick if [ -x /usr/bin/oslevel ] ; then 56609467b48Spatrick IBM_REV=`/usr/bin/oslevel` 56709467b48Spatrick else 56809467b48Spatrick IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 56909467b48Spatrick fi 57009467b48Spatrick echo ${IBM_ARCH}-ibm-aix${IBM_REV} 57109467b48Spatrick exit ;; 57209467b48Spatrick *:AIX:*:*) 57309467b48Spatrick echo rs6000-ibm-aix 57409467b48Spatrick exit ;; 57509467b48Spatrick ibmrt:4.4BSD:*|romp-ibm:BSD:*) 57609467b48Spatrick echo romp-ibm-bsd4.4 57709467b48Spatrick exit ;; 57809467b48Spatrick ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 57909467b48Spatrick echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 58009467b48Spatrick exit ;; # report: romp-ibm BSD 4.3 58109467b48Spatrick *:BOSX:*:*) 58209467b48Spatrick echo rs6000-bull-bosx 58309467b48Spatrick exit ;; 58409467b48Spatrick DPX/2?00:B.O.S.:*:*) 58509467b48Spatrick echo m68k-bull-sysv3 58609467b48Spatrick exit ;; 58709467b48Spatrick 9000/[34]??:4.3bsd:1.*:*) 58809467b48Spatrick echo m68k-hp-bsd 58909467b48Spatrick exit ;; 59009467b48Spatrick hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 59109467b48Spatrick echo m68k-hp-bsd4.4 59209467b48Spatrick exit ;; 59309467b48Spatrick 9000/[34678]??:HP-UX:*:*) 59409467b48Spatrick HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 59509467b48Spatrick case "${UNAME_MACHINE}" in 59609467b48Spatrick 9000/31? ) HP_ARCH=m68000 ;; 59709467b48Spatrick 9000/[34]?? ) HP_ARCH=m68k ;; 59809467b48Spatrick 9000/[678][0-9][0-9]) 59909467b48Spatrick if [ -x /usr/bin/getconf ]; then 60009467b48Spatrick sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 60109467b48Spatrick sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 60209467b48Spatrick case "${sc_cpu_version}" in 60309467b48Spatrick 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 60409467b48Spatrick 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 60509467b48Spatrick 532) # CPU_PA_RISC2_0 60609467b48Spatrick case "${sc_kernel_bits}" in 60709467b48Spatrick 32) HP_ARCH="hppa2.0n" ;; 60809467b48Spatrick 64) HP_ARCH="hppa2.0w" ;; 60909467b48Spatrick '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 61009467b48Spatrick esac ;; 61109467b48Spatrick esac 61209467b48Spatrick fi 61309467b48Spatrick if [ "${HP_ARCH}" = "" ]; then 61409467b48Spatrick eval $set_cc_for_build 61509467b48Spatrick sed 's/^ //' << EOF >$dummy.c 61609467b48Spatrick 61709467b48Spatrick #define _HPUX_SOURCE 61809467b48Spatrick #include <stdlib.h> 61909467b48Spatrick #include <unistd.h> 62009467b48Spatrick 62109467b48Spatrick int main () 62209467b48Spatrick { 62309467b48Spatrick #if defined(_SC_KERNEL_BITS) 62409467b48Spatrick long bits = sysconf(_SC_KERNEL_BITS); 62509467b48Spatrick #endif 62609467b48Spatrick long cpu = sysconf (_SC_CPU_VERSION); 62709467b48Spatrick 62809467b48Spatrick switch (cpu) 62909467b48Spatrick { 63009467b48Spatrick case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 63109467b48Spatrick case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 63209467b48Spatrick case CPU_PA_RISC2_0: 63309467b48Spatrick #if defined(_SC_KERNEL_BITS) 63409467b48Spatrick switch (bits) 63509467b48Spatrick { 63609467b48Spatrick case 64: puts ("hppa2.0w"); break; 63709467b48Spatrick case 32: puts ("hppa2.0n"); break; 63809467b48Spatrick default: puts ("hppa2.0"); break; 63909467b48Spatrick } break; 64009467b48Spatrick #else /* !defined(_SC_KERNEL_BITS) */ 64109467b48Spatrick puts ("hppa2.0"); break; 64209467b48Spatrick #endif 64309467b48Spatrick default: puts ("hppa1.0"); break; 64409467b48Spatrick } 64509467b48Spatrick exit (0); 64609467b48Spatrick } 64709467b48SpatrickEOF 64809467b48Spatrick (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 64909467b48Spatrick test -z "$HP_ARCH" && HP_ARCH=hppa 65009467b48Spatrick fi ;; 65109467b48Spatrick esac 65209467b48Spatrick if [ ${HP_ARCH} = "hppa2.0w" ] 65309467b48Spatrick then 65409467b48Spatrick eval $set_cc_for_build 65509467b48Spatrick 65609467b48Spatrick # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 65709467b48Spatrick # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 65809467b48Spatrick # generating 64-bit code. GNU and HP use different nomenclature: 65909467b48Spatrick # 66009467b48Spatrick # $ CC_FOR_BUILD=cc ./config.guess 66109467b48Spatrick # => hppa2.0w-hp-hpux11.23 66209467b48Spatrick # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 66309467b48Spatrick # => hppa64-hp-hpux11.23 66409467b48Spatrick 66509467b48Spatrick if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | 66609467b48Spatrick grep -q __LP64__ 66709467b48Spatrick then 66809467b48Spatrick HP_ARCH="hppa2.0w" 66909467b48Spatrick else 67009467b48Spatrick HP_ARCH="hppa64" 67109467b48Spatrick fi 67209467b48Spatrick fi 67309467b48Spatrick echo ${HP_ARCH}-hp-hpux${HPUX_REV} 67409467b48Spatrick exit ;; 67509467b48Spatrick ia64:HP-UX:*:*) 67609467b48Spatrick HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 67709467b48Spatrick echo ia64-hp-hpux${HPUX_REV} 67809467b48Spatrick exit ;; 67909467b48Spatrick 3050*:HI-UX:*:*) 68009467b48Spatrick eval $set_cc_for_build 68109467b48Spatrick sed 's/^ //' << EOF >$dummy.c 68209467b48Spatrick #include <unistd.h> 68309467b48Spatrick int 68409467b48Spatrick main () 68509467b48Spatrick { 68609467b48Spatrick long cpu = sysconf (_SC_CPU_VERSION); 68709467b48Spatrick /* The order matters, because CPU_IS_HP_MC68K erroneously returns 68809467b48Spatrick true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 68909467b48Spatrick results, however. */ 69009467b48Spatrick if (CPU_IS_PA_RISC (cpu)) 69109467b48Spatrick { 69209467b48Spatrick switch (cpu) 69309467b48Spatrick { 69409467b48Spatrick case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 69509467b48Spatrick case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 69609467b48Spatrick case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 69709467b48Spatrick default: puts ("hppa-hitachi-hiuxwe2"); break; 69809467b48Spatrick } 69909467b48Spatrick } 70009467b48Spatrick else if (CPU_IS_HP_MC68K (cpu)) 70109467b48Spatrick puts ("m68k-hitachi-hiuxwe2"); 70209467b48Spatrick else puts ("unknown-hitachi-hiuxwe2"); 70309467b48Spatrick exit (0); 70409467b48Spatrick } 70509467b48SpatrickEOF 70609467b48Spatrick $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 70709467b48Spatrick { echo "$SYSTEM_NAME"; exit; } 70809467b48Spatrick echo unknown-hitachi-hiuxwe2 70909467b48Spatrick exit ;; 71009467b48Spatrick 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 71109467b48Spatrick echo hppa1.1-hp-bsd 71209467b48Spatrick exit ;; 71309467b48Spatrick 9000/8??:4.3bsd:*:*) 71409467b48Spatrick echo hppa1.0-hp-bsd 71509467b48Spatrick exit ;; 71609467b48Spatrick *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 71709467b48Spatrick echo hppa1.0-hp-mpeix 71809467b48Spatrick exit ;; 71909467b48Spatrick hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 72009467b48Spatrick echo hppa1.1-hp-osf 72109467b48Spatrick exit ;; 72209467b48Spatrick hp8??:OSF1:*:*) 72309467b48Spatrick echo hppa1.0-hp-osf 72409467b48Spatrick exit ;; 72509467b48Spatrick i*86:OSF1:*:*) 72609467b48Spatrick if [ -x /usr/sbin/sysversion ] ; then 72709467b48Spatrick echo ${UNAME_MACHINE}-unknown-osf1mk 72809467b48Spatrick else 72909467b48Spatrick echo ${UNAME_MACHINE}-unknown-osf1 73009467b48Spatrick fi 73109467b48Spatrick exit ;; 73209467b48Spatrick parisc*:Lites*:*:*) 73309467b48Spatrick echo hppa1.1-hp-lites 73409467b48Spatrick exit ;; 73509467b48Spatrick C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 73609467b48Spatrick echo c1-convex-bsd 73709467b48Spatrick exit ;; 73809467b48Spatrick C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 73909467b48Spatrick if getsysinfo -f scalar_acc 74009467b48Spatrick then echo c32-convex-bsd 74109467b48Spatrick else echo c2-convex-bsd 74209467b48Spatrick fi 74309467b48Spatrick exit ;; 74409467b48Spatrick C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 74509467b48Spatrick echo c34-convex-bsd 74609467b48Spatrick exit ;; 74709467b48Spatrick C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 74809467b48Spatrick echo c38-convex-bsd 74909467b48Spatrick exit ;; 75009467b48Spatrick C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 75109467b48Spatrick echo c4-convex-bsd 75209467b48Spatrick exit ;; 75309467b48Spatrick CRAY*Y-MP:*:*:*) 75409467b48Spatrick echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 75509467b48Spatrick exit ;; 75609467b48Spatrick CRAY*[A-Z]90:*:*:*) 75709467b48Spatrick echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 75809467b48Spatrick | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 75909467b48Spatrick -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 76009467b48Spatrick -e 's/\.[^.]*$/.X/' 76109467b48Spatrick exit ;; 76209467b48Spatrick CRAY*TS:*:*:*) 76309467b48Spatrick echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 76409467b48Spatrick exit ;; 76509467b48Spatrick CRAY*T3E:*:*:*) 76609467b48Spatrick echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 76709467b48Spatrick exit ;; 76809467b48Spatrick CRAY*SV1:*:*:*) 76909467b48Spatrick echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 77009467b48Spatrick exit ;; 77109467b48Spatrick *:UNICOS/mp:*:*) 77209467b48Spatrick echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 77309467b48Spatrick exit ;; 77409467b48Spatrick F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 77509467b48Spatrick FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 77609467b48Spatrick FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 77709467b48Spatrick FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 77809467b48Spatrick echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 77909467b48Spatrick exit ;; 78009467b48Spatrick 5000:UNIX_System_V:4.*:*) 78109467b48Spatrick FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 78209467b48Spatrick FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` 78309467b48Spatrick echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 78409467b48Spatrick exit ;; 78509467b48Spatrick i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 78609467b48Spatrick echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 78709467b48Spatrick exit ;; 78809467b48Spatrick sparc*:BSD/OS:*:*) 78909467b48Spatrick echo sparc-unknown-bsdi${UNAME_RELEASE} 79009467b48Spatrick exit ;; 79109467b48Spatrick *:BSD/OS:*:*) 79209467b48Spatrick echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 79309467b48Spatrick exit ;; 79409467b48Spatrick *:FreeBSD:*:*) 79509467b48Spatrick UNAME_PROCESSOR=`/usr/bin/uname -p` 79609467b48Spatrick case ${UNAME_PROCESSOR} in 79709467b48Spatrick amd64) 79809467b48Spatrick echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 79909467b48Spatrick *) 80009467b48Spatrick echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 80109467b48Spatrick esac 80209467b48Spatrick exit ;; 80309467b48Spatrick i*:CYGWIN*:*) 80409467b48Spatrick echo ${UNAME_MACHINE}-pc-cygwin 80509467b48Spatrick exit ;; 80609467b48Spatrick *:MINGW*:*) 80709467b48Spatrick echo ${UNAME_MACHINE}-pc-mingw32 80809467b48Spatrick exit ;; 80909467b48Spatrick *:MSYS*:*) 81009467b48Spatrick echo ${UNAME_MACHINE}-pc-msys 81109467b48Spatrick exit ;; 81209467b48Spatrick i*:windows32*:*) 81309467b48Spatrick # uname -m includes "-pc" on this system. 81409467b48Spatrick echo ${UNAME_MACHINE}-mingw32 81509467b48Spatrick exit ;; 81609467b48Spatrick i*:PW*:*) 81709467b48Spatrick echo ${UNAME_MACHINE}-pc-pw32 81809467b48Spatrick exit ;; 81909467b48Spatrick *:Interix*:*) 82009467b48Spatrick case ${UNAME_MACHINE} in 82109467b48Spatrick x86) 82209467b48Spatrick echo i586-pc-interix${UNAME_RELEASE} 82309467b48Spatrick exit ;; 82409467b48Spatrick authenticamd | genuineintel | EM64T) 82509467b48Spatrick echo x86_64-unknown-interix${UNAME_RELEASE} 82609467b48Spatrick exit ;; 82709467b48Spatrick IA64) 82809467b48Spatrick echo ia64-unknown-interix${UNAME_RELEASE} 82909467b48Spatrick exit ;; 83009467b48Spatrick esac ;; 83109467b48Spatrick [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 83209467b48Spatrick echo i${UNAME_MACHINE}-pc-mks 83309467b48Spatrick exit ;; 83409467b48Spatrick 8664:Windows_NT:*) 83509467b48Spatrick echo x86_64-pc-mks 83609467b48Spatrick exit ;; 83709467b48Spatrick i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 83809467b48Spatrick # How do we know it's Interix rather than the generic POSIX subsystem? 83909467b48Spatrick # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 84009467b48Spatrick # UNAME_MACHINE based on the output of uname instead of i386? 84109467b48Spatrick echo i586-pc-interix 84209467b48Spatrick exit ;; 84309467b48Spatrick i*:UWIN*:*) 84409467b48Spatrick echo ${UNAME_MACHINE}-pc-uwin 84509467b48Spatrick exit ;; 84609467b48Spatrick amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 84709467b48Spatrick echo x86_64-unknown-cygwin 84809467b48Spatrick exit ;; 84909467b48Spatrick p*:CYGWIN*:*) 85009467b48Spatrick echo powerpcle-unknown-cygwin 85109467b48Spatrick exit ;; 85209467b48Spatrick prep*:SunOS:5.*:*) 85309467b48Spatrick echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 85409467b48Spatrick exit ;; 85509467b48Spatrick *:GNU:*:*) 85609467b48Spatrick # the GNU system 85709467b48Spatrick echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 85809467b48Spatrick exit ;; 85909467b48Spatrick *:GNU/*:*:*) 86009467b48Spatrick # other systems with GNU libc and userland 86109467b48Spatrick echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu 86209467b48Spatrick exit ;; 86309467b48Spatrick i*86:Minix:*:*) 86409467b48Spatrick echo ${UNAME_MACHINE}-pc-minix 86509467b48Spatrick exit ;; 86609467b48Spatrick aarch64*:Linux:*) 86709467b48Spatrick echo ${UNAME_MACHINE}-unknown-linux-gnu 86809467b48Spatrick exit ;; 86909467b48Spatrick alpha:Linux:*:*) 87009467b48Spatrick case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 87109467b48Spatrick EV5) UNAME_MACHINE=alphaev5 ;; 87209467b48Spatrick EV56) UNAME_MACHINE=alphaev56 ;; 87309467b48Spatrick PCA56) UNAME_MACHINE=alphapca56 ;; 87409467b48Spatrick PCA57) UNAME_MACHINE=alphapca56 ;; 87509467b48Spatrick EV6) UNAME_MACHINE=alphaev6 ;; 87609467b48Spatrick EV67) UNAME_MACHINE=alphaev67 ;; 87709467b48Spatrick EV68*) UNAME_MACHINE=alphaev68 ;; 87809467b48Spatrick esac 87909467b48Spatrick objdump --private-headers /bin/sh | grep -q ld.so.1 88009467b48Spatrick if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi 88109467b48Spatrick echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 88209467b48Spatrick exit ;; 88309467b48Spatrick arm*:Linux:*:*) 88409467b48Spatrick eval $set_cc_for_build 88509467b48Spatrick if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ 88609467b48Spatrick | grep -q __ARM_EABI__ 88709467b48Spatrick then 88809467b48Spatrick echo ${UNAME_MACHINE}-unknown-linux-gnu 88909467b48Spatrick else 89009467b48Spatrick if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ 89109467b48Spatrick | grep -q __ARM_PCS_VFP 89209467b48Spatrick then 89309467b48Spatrick echo ${UNAME_MACHINE}-unknown-linux-gnueabi 89409467b48Spatrick else 89509467b48Spatrick echo ${UNAME_MACHINE}-unknown-linux-gnueabihf 89609467b48Spatrick fi 89709467b48Spatrick fi 89809467b48Spatrick exit ;; 89909467b48Spatrick avr32*:Linux:*:*) 90009467b48Spatrick echo ${UNAME_MACHINE}-unknown-linux-gnu 90109467b48Spatrick exit ;; 90209467b48Spatrick cris:Linux:*:*) 90309467b48Spatrick echo cris-axis-linux-gnu 90409467b48Spatrick exit ;; 90509467b48Spatrick crisv32:Linux:*:*) 90609467b48Spatrick echo crisv32-axis-linux-gnu 90709467b48Spatrick exit ;; 90809467b48Spatrick frv:Linux:*:*) 90909467b48Spatrick echo frv-unknown-linux-gnu 91009467b48Spatrick exit ;; 91109467b48Spatrick i*86:Linux:*:*) 91209467b48Spatrick LIBC=gnu 91309467b48Spatrick eval $set_cc_for_build 91409467b48Spatrick sed 's/^ //' << EOF >$dummy.c 91509467b48Spatrick #ifdef __dietlibc__ 91609467b48Spatrick LIBC=dietlibc 91709467b48Spatrick #endif 91809467b48SpatrickEOF 91909467b48Spatrick eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` 92009467b48Spatrick echo "${UNAME_MACHINE}-pc-linux-${LIBC}" 92109467b48Spatrick exit ;; 92209467b48Spatrick ia64:Linux:*:*) 92309467b48Spatrick echo ${UNAME_MACHINE}-unknown-linux-gnu 92409467b48Spatrick exit ;; 925*d415bd75Srobert loongarch32:Linux:*:* | loongarch64:Linux:*:* | loongarchx32:Linux:*:*) 926*d415bd75Srobert LIBC=gnu 927*d415bd75Srobert eval $set_cc_for_build 928*d415bd75Srobert # Do not check for __GLIBC__ because uclibc defines it too 929*d415bd75Srobert sed 's/^ //' << EOF >$dummy.c 930*d415bd75Srobert #include <features.h> 931*d415bd75Srobert #if defined(__UCLIBC__) 932*d415bd75Srobert LIBC=uclibc 933*d415bd75Srobert #elif defined(__dietlibc__) 934*d415bd75Srobert LIBC=dietlibc 935*d415bd75Srobert #endif 936*d415bd75SrobertEOF 937*d415bd75Srobert eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` 938*d415bd75Srobert 939*d415bd75Srobert # There is no features test macro for musl 940*d415bd75Srobert # Follow the GNU's config.guess approach of 941*d415bd75Srobert # checking the output of ldd 942*d415bd75Srobert if command -v ldd >/dev/null && \ 943*d415bd75Srobert ldd --version 2>&1 | grep -q ^musl; then 944*d415bd75Srobert LIBC=musl 945*d415bd75Srobert fi 946*d415bd75Srobert 947*d415bd75Srobert echo "${UNAME_MACHINE}-unknown-linux-${LIBC}" 948*d415bd75Srobert exit ;; 94909467b48Spatrick m32r*:Linux:*:*) 95009467b48Spatrick echo ${UNAME_MACHINE}-unknown-linux-gnu 95109467b48Spatrick exit ;; 95209467b48Spatrick m68*:Linux:*:*) 95309467b48Spatrick echo ${UNAME_MACHINE}-unknown-linux-gnu 95409467b48Spatrick exit ;; 95509467b48Spatrick mips:Linux:*:* | mips64:Linux:*:*) 95609467b48Spatrick eval $set_cc_for_build 95709467b48Spatrick sed 's/^ //' << EOF >$dummy.c 95809467b48Spatrick #undef CPU 95909467b48Spatrick #undef ${UNAME_MACHINE} 96009467b48Spatrick #undef ${UNAME_MACHINE}el 96109467b48Spatrick #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 96209467b48Spatrick CPU=${UNAME_MACHINE}el 96309467b48Spatrick #else 96409467b48Spatrick #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 96509467b48Spatrick CPU=${UNAME_MACHINE} 96609467b48Spatrick #else 96709467b48Spatrick CPU= 96809467b48Spatrick #endif 96909467b48Spatrick #endif 97009467b48SpatrickEOF 97109467b48Spatrick eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` 97209467b48Spatrick test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 97309467b48Spatrick ;; 97409467b48Spatrick or32:Linux:*:*) 97509467b48Spatrick echo or32-unknown-linux-gnu 97609467b48Spatrick exit ;; 97709467b48Spatrick padre:Linux:*:*) 97809467b48Spatrick echo sparc-unknown-linux-gnu 97909467b48Spatrick exit ;; 98009467b48Spatrick parisc64:Linux:*:* | hppa64:Linux:*:*) 98109467b48Spatrick echo hppa64-unknown-linux-gnu 98209467b48Spatrick exit ;; 98309467b48Spatrick parisc:Linux:*:* | hppa:Linux:*:*) 98409467b48Spatrick # Look for CPU level 98509467b48Spatrick case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 98609467b48Spatrick PA7*) echo hppa1.1-unknown-linux-gnu ;; 98709467b48Spatrick PA8*) echo hppa2.0-unknown-linux-gnu ;; 98809467b48Spatrick *) echo hppa-unknown-linux-gnu ;; 98909467b48Spatrick esac 99009467b48Spatrick exit ;; 99109467b48Spatrick ppc64:Linux:*:*) 99209467b48Spatrick echo powerpc64-unknown-linux-gnu 99309467b48Spatrick exit ;; 99409467b48Spatrick ppc64le:Linux:*:*) 99509467b48Spatrick echo powerpc64le-unknown-linux-gnu 99609467b48Spatrick exit ;; 99709467b48Spatrick ppc:Linux:*:*) 99809467b48Spatrick echo powerpc-unknown-linux-gnu 99909467b48Spatrick exit ;; 100073471bf0Spatrick ppcle:Linux:*:*) 100173471bf0Spatrick echo powerpcle-unknown-linux-gnu 100273471bf0Spatrick exit ;; 1003097a140dSpatrick riscv32:Linux:*:* | riscv64:Linux:*:*) 1004097a140dSpatrick LIBC=gnu 1005097a140dSpatrick eval $set_cc_for_build 1006097a140dSpatrick # Do not check for __GLIBC__ because uclibc defines it too 1007097a140dSpatrick sed 's/^ //' << EOF >$dummy.c 1008097a140dSpatrick #include <features.h> 1009097a140dSpatrick #if defined(__UCLIBC__) 1010097a140dSpatrick LIBC=uclibc 1011097a140dSpatrick #elif defined(__dietlibc__) 1012097a140dSpatrick LIBC=dietlibc 1013097a140dSpatrick #endif 1014097a140dSpatrickEOF 1015097a140dSpatrick eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` 1016097a140dSpatrick 1017097a140dSpatrick # There is no features test macro for musl 1018097a140dSpatrick # Follow the GNU's config.guess approach of 1019097a140dSpatrick # checking the output of ldd 1020097a140dSpatrick if command -v ldd >/dev/null && \ 1021097a140dSpatrick ldd --version 2>&1 | grep -q ^musl; then 1022097a140dSpatrick LIBC=musl 1023097a140dSpatrick fi 1024097a140dSpatrick 1025097a140dSpatrick echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 1026097a140dSpatrick exit ;; 102709467b48Spatrick s390:Linux:*:* | s390x:Linux:*:*) 102809467b48Spatrick echo ${UNAME_MACHINE}-ibm-linux 102909467b48Spatrick exit ;; 103009467b48Spatrick sh64*:Linux:*:*) 103109467b48Spatrick echo ${UNAME_MACHINE}-unknown-linux-gnu 103209467b48Spatrick exit ;; 103309467b48Spatrick sh*:Linux:*:*) 103409467b48Spatrick echo ${UNAME_MACHINE}-unknown-linux-gnu 103509467b48Spatrick exit ;; 103609467b48Spatrick sparc:Linux:*:* | sparc64:Linux:*:*) 103709467b48Spatrick echo ${UNAME_MACHINE}-unknown-linux-gnu 103809467b48Spatrick exit ;; 103909467b48Spatrick tile*:Linux:*:*) 104009467b48Spatrick echo ${UNAME_MACHINE}-unknown-linux-gnu 104109467b48Spatrick exit ;; 104209467b48Spatrick vax:Linux:*:*) 104309467b48Spatrick echo ${UNAME_MACHINE}-dec-linux-gnu 104409467b48Spatrick exit ;; 104509467b48Spatrick x86_64:Linux:*:*) 104609467b48Spatrick echo x86_64-unknown-linux-gnu 104709467b48Spatrick exit ;; 104809467b48Spatrick xtensa*:Linux:*:*) 104909467b48Spatrick echo ${UNAME_MACHINE}-unknown-linux-gnu 105009467b48Spatrick exit ;; 105109467b48Spatrick i*86:DYNIX/ptx:4*:*) 105209467b48Spatrick # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 105309467b48Spatrick # earlier versions are messed up and put the nodename in both 105409467b48Spatrick # sysname and nodename. 105509467b48Spatrick echo i386-sequent-sysv4 105609467b48Spatrick exit ;; 105709467b48Spatrick i*86:UNIX_SV:4.2MP:2.*) 105809467b48Spatrick # Unixware is an offshoot of SVR4, but it has its own version 105909467b48Spatrick # number series starting with 2... 106009467b48Spatrick # I am not positive that other SVR4 systems won't match this, 106109467b48Spatrick # I just have to hope. -- rms. 106209467b48Spatrick # Use sysv4.2uw... so that sysv4* matches it. 106309467b48Spatrick echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 106409467b48Spatrick exit ;; 106509467b48Spatrick i*86:OS/2:*:*) 106609467b48Spatrick # If we were able to find `uname', then EMX Unix compatibility 106709467b48Spatrick # is probably installed. 106809467b48Spatrick echo ${UNAME_MACHINE}-pc-os2-emx 106909467b48Spatrick exit ;; 107009467b48Spatrick i*86:XTS-300:*:STOP) 107109467b48Spatrick echo ${UNAME_MACHINE}-unknown-stop 107209467b48Spatrick exit ;; 107309467b48Spatrick i*86:atheos:*:*) 107409467b48Spatrick echo ${UNAME_MACHINE}-unknown-atheos 107509467b48Spatrick exit ;; 107609467b48Spatrick i*86:syllable:*:*) 107709467b48Spatrick echo ${UNAME_MACHINE}-pc-syllable 107809467b48Spatrick exit ;; 107909467b48Spatrick i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) 108009467b48Spatrick echo i386-unknown-lynxos${UNAME_RELEASE} 108109467b48Spatrick exit ;; 108209467b48Spatrick i*86:*DOS:*:*) 108309467b48Spatrick echo ${UNAME_MACHINE}-pc-msdosdjgpp 108409467b48Spatrick exit ;; 108509467b48Spatrick i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 108609467b48Spatrick UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 108709467b48Spatrick if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 108809467b48Spatrick echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 108909467b48Spatrick else 109009467b48Spatrick echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 109109467b48Spatrick fi 109209467b48Spatrick exit ;; 109309467b48Spatrick i*86:*:5:[678]*) 109409467b48Spatrick # UnixWare 7.x, OpenUNIX and OpenServer 6. 109509467b48Spatrick case `/bin/uname -X | grep "^Machine"` in 109609467b48Spatrick *486*) UNAME_MACHINE=i486 ;; 109709467b48Spatrick *Pentium) UNAME_MACHINE=i586 ;; 109809467b48Spatrick *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 109909467b48Spatrick esac 110009467b48Spatrick echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 110109467b48Spatrick exit ;; 110209467b48Spatrick i*86:*:3.2:*) 110309467b48Spatrick if test -f /usr/options/cb.name; then 110409467b48Spatrick UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 110509467b48Spatrick echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 110609467b48Spatrick elif /bin/uname -X 2>/dev/null >/dev/null ; then 110709467b48Spatrick UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 110809467b48Spatrick (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 110909467b48Spatrick (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 111009467b48Spatrick && UNAME_MACHINE=i586 111109467b48Spatrick (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 111209467b48Spatrick && UNAME_MACHINE=i686 111309467b48Spatrick (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 111409467b48Spatrick && UNAME_MACHINE=i686 111509467b48Spatrick echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 111609467b48Spatrick else 111709467b48Spatrick echo ${UNAME_MACHINE}-pc-sysv32 111809467b48Spatrick fi 111909467b48Spatrick exit ;; 112009467b48Spatrick pc:*:*:*) 112109467b48Spatrick # Left here for compatibility: 112209467b48Spatrick # uname -m prints for DJGPP always 'pc', but it prints nothing about 112309467b48Spatrick # the processor, so we play safe by assuming i586. 112409467b48Spatrick # Note: whatever this is, it MUST be the same as what config.sub 112509467b48Spatrick # prints for the "djgpp" host, or else GDB configury will decide that 112609467b48Spatrick # this is a cross-build. 112709467b48Spatrick echo i586-pc-msdosdjgpp 112809467b48Spatrick exit ;; 112909467b48Spatrick Intel:Mach:3*:*) 113009467b48Spatrick echo i386-pc-mach3 113109467b48Spatrick exit ;; 113209467b48Spatrick paragon:*:*:*) 113309467b48Spatrick echo i860-intel-osf1 113409467b48Spatrick exit ;; 113509467b48Spatrick i860:*:4.*:*) # i860-SVR4 113609467b48Spatrick if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 113709467b48Spatrick echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 113809467b48Spatrick else # Add other i860-SVR4 vendors below as they are discovered. 113909467b48Spatrick echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 114009467b48Spatrick fi 114109467b48Spatrick exit ;; 114209467b48Spatrick mini*:CTIX:SYS*5:*) 114309467b48Spatrick # "miniframe" 114409467b48Spatrick echo m68010-convergent-sysv 114509467b48Spatrick exit ;; 114609467b48Spatrick mc68k:UNIX:SYSTEM5:3.51m) 114709467b48Spatrick echo m68k-convergent-sysv 114809467b48Spatrick exit ;; 114909467b48Spatrick M680?0:D-NIX:5.3:*) 115009467b48Spatrick echo m68k-diab-dnix 115109467b48Spatrick exit ;; 115209467b48Spatrick M68*:*:R3V[5678]*:*) 115309467b48Spatrick test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 115409467b48Spatrick 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) 115509467b48Spatrick OS_REL='' 115609467b48Spatrick test -r /etc/.relid \ 115709467b48Spatrick && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 115809467b48Spatrick /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 115909467b48Spatrick && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 116009467b48Spatrick /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 116109467b48Spatrick && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 116209467b48Spatrick 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 116309467b48Spatrick /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 116409467b48Spatrick && { echo i486-ncr-sysv4; exit; } ;; 116509467b48Spatrick NCR*:*:4.2:* | MPRAS*:*:4.2:*) 116609467b48Spatrick OS_REL='.3' 116709467b48Spatrick test -r /etc/.relid \ 116809467b48Spatrick && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 116909467b48Spatrick /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 117009467b48Spatrick && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 117109467b48Spatrick /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 117209467b48Spatrick && { echo i586-ncr-sysv4.3${OS_REL}; exit; } 117309467b48Spatrick /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ 117409467b48Spatrick && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 117509467b48Spatrick m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 117609467b48Spatrick echo m68k-unknown-lynxos${UNAME_RELEASE} 117709467b48Spatrick exit ;; 117809467b48Spatrick mc68030:UNIX_System_V:4.*:*) 117909467b48Spatrick echo m68k-atari-sysv4 118009467b48Spatrick exit ;; 118109467b48Spatrick TSUNAMI:LynxOS:2.*:*) 118209467b48Spatrick echo sparc-unknown-lynxos${UNAME_RELEASE} 118309467b48Spatrick exit ;; 118409467b48Spatrick rs6000:LynxOS:2.*:*) 118509467b48Spatrick echo rs6000-unknown-lynxos${UNAME_RELEASE} 118609467b48Spatrick exit ;; 118709467b48Spatrick PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) 118809467b48Spatrick echo powerpc-unknown-lynxos${UNAME_RELEASE} 118909467b48Spatrick exit ;; 119009467b48Spatrick SM[BE]S:UNIX_SV:*:*) 119109467b48Spatrick echo mips-dde-sysv${UNAME_RELEASE} 119209467b48Spatrick exit ;; 119309467b48Spatrick RM*:ReliantUNIX-*:*:*) 119409467b48Spatrick echo mips-sni-sysv4 119509467b48Spatrick exit ;; 119609467b48Spatrick RM*:SINIX-*:*:*) 119709467b48Spatrick echo mips-sni-sysv4 119809467b48Spatrick exit ;; 119909467b48Spatrick *:SINIX-*:*:*) 120009467b48Spatrick if uname -p 2>/dev/null >/dev/null ; then 120109467b48Spatrick UNAME_MACHINE=`(uname -p) 2>/dev/null` 120209467b48Spatrick echo ${UNAME_MACHINE}-sni-sysv4 120309467b48Spatrick else 120409467b48Spatrick echo ns32k-sni-sysv 120509467b48Spatrick fi 120609467b48Spatrick exit ;; 120709467b48Spatrick PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 120809467b48Spatrick # says <Richard.M.Bartel@ccMail.Census.GOV> 120909467b48Spatrick echo i586-unisys-sysv4 121009467b48Spatrick exit ;; 121109467b48Spatrick *:UNIX_System_V:4*:FTX*) 121209467b48Spatrick # From Gerald Hewes <hewes@openmarket.com>. 121309467b48Spatrick # How about differentiating between stratus architectures? -djm 121409467b48Spatrick echo hppa1.1-stratus-sysv4 121509467b48Spatrick exit ;; 121609467b48Spatrick *:*:*:FTX*) 121709467b48Spatrick # From seanf@swdc.stratus.com. 121809467b48Spatrick echo i860-stratus-sysv4 121909467b48Spatrick exit ;; 122009467b48Spatrick i*86:VOS:*:*) 122109467b48Spatrick # From Paul.Green@stratus.com. 122209467b48Spatrick echo ${UNAME_MACHINE}-stratus-vos 122309467b48Spatrick exit ;; 122409467b48Spatrick *:VOS:*:*) 122509467b48Spatrick # From Paul.Green@stratus.com. 122609467b48Spatrick echo hppa1.1-stratus-vos 122709467b48Spatrick exit ;; 122809467b48Spatrick mc68*:A/UX:*:*) 122909467b48Spatrick echo m68k-apple-aux${UNAME_RELEASE} 123009467b48Spatrick exit ;; 123109467b48Spatrick news*:NEWS-OS:6*:*) 123209467b48Spatrick echo mips-sony-newsos6 123309467b48Spatrick exit ;; 123409467b48Spatrick R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 123509467b48Spatrick if [ -d /usr/nec ]; then 123609467b48Spatrick echo mips-nec-sysv${UNAME_RELEASE} 123709467b48Spatrick else 123809467b48Spatrick echo mips-unknown-sysv${UNAME_RELEASE} 123909467b48Spatrick fi 124009467b48Spatrick exit ;; 124109467b48Spatrick BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 124209467b48Spatrick echo powerpc-be-beos 124309467b48Spatrick exit ;; 124409467b48Spatrick BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 124509467b48Spatrick echo powerpc-apple-beos 124609467b48Spatrick exit ;; 124709467b48Spatrick BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 124809467b48Spatrick echo i586-pc-beos 124909467b48Spatrick exit ;; 125009467b48Spatrick BePC:Haiku:*:*) # Haiku running on Intel PC compatible. 125109467b48Spatrick echo i586-pc-haiku 125209467b48Spatrick exit ;; 125309467b48Spatrick x86_64:Haiku:*:*) # Haiku running on x86_64. 125409467b48Spatrick echo x86_64-unknown-haiku 125509467b48Spatrick exit ;; 125609467b48Spatrick SX-4:SUPER-UX:*:*) 125709467b48Spatrick echo sx4-nec-superux${UNAME_RELEASE} 125809467b48Spatrick exit ;; 125909467b48Spatrick SX-5:SUPER-UX:*:*) 126009467b48Spatrick echo sx5-nec-superux${UNAME_RELEASE} 126109467b48Spatrick exit ;; 126209467b48Spatrick SX-6:SUPER-UX:*:*) 126309467b48Spatrick echo sx6-nec-superux${UNAME_RELEASE} 126409467b48Spatrick exit ;; 126509467b48Spatrick SX-7:SUPER-UX:*:*) 126609467b48Spatrick echo sx7-nec-superux${UNAME_RELEASE} 126709467b48Spatrick exit ;; 126809467b48Spatrick SX-8:SUPER-UX:*:*) 126909467b48Spatrick echo sx8-nec-superux${UNAME_RELEASE} 127009467b48Spatrick exit ;; 127109467b48Spatrick SX-8R:SUPER-UX:*:*) 127209467b48Spatrick echo sx8r-nec-superux${UNAME_RELEASE} 127309467b48Spatrick exit ;; 127409467b48Spatrick Power*:Rhapsody:*:*) 127509467b48Spatrick echo powerpc-apple-rhapsody${UNAME_RELEASE} 127609467b48Spatrick exit ;; 127709467b48Spatrick *:Rhapsody:*:*) 127809467b48Spatrick echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 127909467b48Spatrick exit ;; 128009467b48Spatrick *:Darwin:*:*) 128109467b48Spatrick UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 128209467b48Spatrick case $UNAME_PROCESSOR in 128309467b48Spatrick i386) 128409467b48Spatrick eval $set_cc_for_build 128509467b48Spatrick if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 128609467b48Spatrick if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ 128709467b48Spatrick (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 128809467b48Spatrick grep IS_64BIT_ARCH >/dev/null 128909467b48Spatrick then 129009467b48Spatrick UNAME_PROCESSOR="x86_64" 129109467b48Spatrick fi 129209467b48Spatrick fi ;; 1293097a140dSpatrick arm) 1294097a140dSpatrick eval $set_cc_for_build 1295097a140dSpatrick if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 1296097a140dSpatrick if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ 1297097a140dSpatrick (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 1298097a140dSpatrick grep IS_64BIT_ARCH >/dev/null 1299097a140dSpatrick then 1300097a140dSpatrick if (echo '#ifdef __PTRAUTH_INTRINSICS__'; echo HAS_AUTH; echo '#endif') | \ 1301097a140dSpatrick (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 1302097a140dSpatrick grep HAS_AUTH >/dev/null 1303097a140dSpatrick then 1304097a140dSpatrick UNAME_PROCESSOR="arm64e" 1305097a140dSpatrick else 1306097a140dSpatrick UNAME_PROCESSOR="arm64" 1307097a140dSpatrick fi 1308097a140dSpatrick fi 1309097a140dSpatrick fi ;; 131009467b48Spatrick unknown) UNAME_PROCESSOR=powerpc ;; 131109467b48Spatrick esac 131209467b48Spatrick echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 131309467b48Spatrick exit ;; 131409467b48Spatrick *:procnto*:*:* | *:QNX:[0123456789]*:*) 131509467b48Spatrick UNAME_PROCESSOR=`uname -p` 131609467b48Spatrick if test "$UNAME_PROCESSOR" = "x86"; then 131709467b48Spatrick UNAME_PROCESSOR=i386 131809467b48Spatrick UNAME_MACHINE=pc 131909467b48Spatrick fi 132009467b48Spatrick echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 132109467b48Spatrick exit ;; 132209467b48Spatrick *:QNX:*:4*) 132309467b48Spatrick echo i386-pc-qnx 132409467b48Spatrick exit ;; 132509467b48Spatrick NEO-?:NONSTOP_KERNEL:*:*) 132609467b48Spatrick echo neo-tandem-nsk${UNAME_RELEASE} 132709467b48Spatrick exit ;; 132809467b48Spatrick NSE-?:NONSTOP_KERNEL:*:*) 132909467b48Spatrick echo nse-tandem-nsk${UNAME_RELEASE} 133009467b48Spatrick exit ;; 133109467b48Spatrick NSR-?:NONSTOP_KERNEL:*:*) 133209467b48Spatrick echo nsr-tandem-nsk${UNAME_RELEASE} 133309467b48Spatrick exit ;; 133409467b48Spatrick *:NonStop-UX:*:*) 133509467b48Spatrick echo mips-compaq-nonstopux 133609467b48Spatrick exit ;; 133709467b48Spatrick BS2000:POSIX*:*:*) 133809467b48Spatrick echo bs2000-siemens-sysv 133909467b48Spatrick exit ;; 134009467b48Spatrick DS/*:UNIX_System_V:*:*) 134109467b48Spatrick echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 134209467b48Spatrick exit ;; 134309467b48Spatrick *:Plan9:*:*) 134409467b48Spatrick # "uname -m" is not consistent, so use $cputype instead. 386 134509467b48Spatrick # is converted to i386 for consistency with other x86 134609467b48Spatrick # operating systems. 134709467b48Spatrick if test "$cputype" = "386"; then 134809467b48Spatrick UNAME_MACHINE=i386 134909467b48Spatrick else 135009467b48Spatrick UNAME_MACHINE="$cputype" 135109467b48Spatrick fi 135209467b48Spatrick echo ${UNAME_MACHINE}-unknown-plan9 135309467b48Spatrick exit ;; 135409467b48Spatrick *:TOPS-10:*:*) 135509467b48Spatrick echo pdp10-unknown-tops10 135609467b48Spatrick exit ;; 135709467b48Spatrick *:TENEX:*:*) 135809467b48Spatrick echo pdp10-unknown-tenex 135909467b48Spatrick exit ;; 136009467b48Spatrick KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 136109467b48Spatrick echo pdp10-dec-tops20 136209467b48Spatrick exit ;; 136309467b48Spatrick XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 136409467b48Spatrick echo pdp10-xkl-tops20 136509467b48Spatrick exit ;; 136609467b48Spatrick *:TOPS-20:*:*) 136709467b48Spatrick echo pdp10-unknown-tops20 136809467b48Spatrick exit ;; 136909467b48Spatrick *:ITS:*:*) 137009467b48Spatrick echo pdp10-unknown-its 137109467b48Spatrick exit ;; 137209467b48Spatrick SEI:*:*:SEIUX) 137309467b48Spatrick echo mips-sei-seiux${UNAME_RELEASE} 137409467b48Spatrick exit ;; 137509467b48Spatrick *:DragonFly:*:*) 137609467b48Spatrick echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 137709467b48Spatrick exit ;; 137809467b48Spatrick *:*VMS:*:*) 137909467b48Spatrick UNAME_MACHINE=`(uname -p) 2>/dev/null` 138009467b48Spatrick case "${UNAME_MACHINE}" in 138109467b48Spatrick A*) echo alpha-dec-vms ; exit ;; 138209467b48Spatrick I*) echo ia64-dec-vms ; exit ;; 138309467b48Spatrick V*) echo vax-dec-vms ; exit ;; 138409467b48Spatrick esac ;; 138509467b48Spatrick *:XENIX:*:SysV) 138609467b48Spatrick echo i386-pc-xenix 138709467b48Spatrick exit ;; 138809467b48Spatrick i*86:skyos:*:*) 138909467b48Spatrick echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' 139009467b48Spatrick exit ;; 139109467b48Spatrick i*86:rdos:*:*) 139209467b48Spatrick echo ${UNAME_MACHINE}-pc-rdos 139309467b48Spatrick exit ;; 139409467b48Spatrick i*86:AROS:*:*) 139509467b48Spatrick echo ${UNAME_MACHINE}-pc-aros 139609467b48Spatrick exit ;; 139709467b48Spatrickesac 139809467b48Spatrick 139909467b48Spatrick#echo '(No uname command or uname output not recognized.)' 1>&2 140009467b48Spatrick#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 140109467b48Spatrick 140209467b48Spatrickeval $set_cc_for_build 140309467b48Spatrickcat >$dummy.c <<EOF 140409467b48Spatrick#ifdef _SEQUENT_ 140509467b48Spatrick# include <sys/types.h> 140609467b48Spatrick# include <sys/utsname.h> 140709467b48Spatrick#endif 140809467b48Spatrickmain () 140909467b48Spatrick{ 141009467b48Spatrick#if defined (sony) 141109467b48Spatrick#if defined (MIPSEB) 141209467b48Spatrick /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, 141309467b48Spatrick I don't know.... */ 141409467b48Spatrick printf ("mips-sony-bsd\n"); exit (0); 141509467b48Spatrick#else 141609467b48Spatrick#include <sys/param.h> 141709467b48Spatrick printf ("m68k-sony-newsos%s\n", 141809467b48Spatrick#ifdef NEWSOS4 141909467b48Spatrick "4" 142009467b48Spatrick#else 142109467b48Spatrick "" 142209467b48Spatrick#endif 142309467b48Spatrick ); exit (0); 142409467b48Spatrick#endif 142509467b48Spatrick#endif 142609467b48Spatrick 142709467b48Spatrick#if defined (__arm) && defined (__acorn) && defined (__unix) 142809467b48Spatrick printf ("arm-acorn-riscix\n"); exit (0); 142909467b48Spatrick#endif 143009467b48Spatrick 143109467b48Spatrick#if defined (hp300) && !defined (hpux) 143209467b48Spatrick printf ("m68k-hp-bsd\n"); exit (0); 143309467b48Spatrick#endif 143409467b48Spatrick 143509467b48Spatrick#if defined (NeXT) 143609467b48Spatrick#if !defined (__ARCHITECTURE__) 143709467b48Spatrick#define __ARCHITECTURE__ "m68k" 143809467b48Spatrick#endif 143909467b48Spatrick int version; 144009467b48Spatrick version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; 144109467b48Spatrick if (version < 4) 144209467b48Spatrick printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); 144309467b48Spatrick else 144409467b48Spatrick printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); 144509467b48Spatrick exit (0); 144609467b48Spatrick#endif 144709467b48Spatrick 144809467b48Spatrick#if defined (MULTIMAX) || defined (n16) 144909467b48Spatrick#if defined (UMAXV) 145009467b48Spatrick printf ("ns32k-encore-sysv\n"); exit (0); 145109467b48Spatrick#else 145209467b48Spatrick#if defined (CMU) 145309467b48Spatrick printf ("ns32k-encore-mach\n"); exit (0); 145409467b48Spatrick#else 145509467b48Spatrick printf ("ns32k-encore-bsd\n"); exit (0); 145609467b48Spatrick#endif 145709467b48Spatrick#endif 145809467b48Spatrick#endif 145909467b48Spatrick 146009467b48Spatrick#if defined (__386BSD__) 146109467b48Spatrick printf ("i386-pc-bsd\n"); exit (0); 146209467b48Spatrick#endif 146309467b48Spatrick 146409467b48Spatrick#if defined (sequent) 146509467b48Spatrick#if defined (i386) 146609467b48Spatrick printf ("i386-sequent-dynix\n"); exit (0); 146709467b48Spatrick#endif 146809467b48Spatrick#if defined (ns32000) 146909467b48Spatrick printf ("ns32k-sequent-dynix\n"); exit (0); 147009467b48Spatrick#endif 147109467b48Spatrick#endif 147209467b48Spatrick 147309467b48Spatrick#if defined (_SEQUENT_) 147409467b48Spatrick struct utsname un; 147509467b48Spatrick 147609467b48Spatrick uname(&un); 147709467b48Spatrick 147809467b48Spatrick if (strncmp(un.version, "V2", 2) == 0) { 147909467b48Spatrick printf ("i386-sequent-ptx2\n"); exit (0); 148009467b48Spatrick } 148109467b48Spatrick if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ 148209467b48Spatrick printf ("i386-sequent-ptx1\n"); exit (0); 148309467b48Spatrick } 148409467b48Spatrick printf ("i386-sequent-ptx\n"); exit (0); 148509467b48Spatrick 148609467b48Spatrick#endif 148709467b48Spatrick 148809467b48Spatrick#if defined (vax) 148909467b48Spatrick# if !defined (ultrix) 149009467b48Spatrick# include <sys/param.h> 149109467b48Spatrick# if defined (BSD) 149209467b48Spatrick# if BSD == 43 149309467b48Spatrick printf ("vax-dec-bsd4.3\n"); exit (0); 149409467b48Spatrick# else 149509467b48Spatrick# if BSD == 199006 149609467b48Spatrick printf ("vax-dec-bsd4.3reno\n"); exit (0); 149709467b48Spatrick# else 149809467b48Spatrick printf ("vax-dec-bsd\n"); exit (0); 149909467b48Spatrick# endif 150009467b48Spatrick# endif 150109467b48Spatrick# else 150209467b48Spatrick printf ("vax-dec-bsd\n"); exit (0); 150309467b48Spatrick# endif 150409467b48Spatrick# else 150509467b48Spatrick printf ("vax-dec-ultrix\n"); exit (0); 150609467b48Spatrick# endif 150709467b48Spatrick#endif 150809467b48Spatrick 150909467b48Spatrick#if defined (alliant) && defined (i860) 151009467b48Spatrick printf ("i860-alliant-bsd\n"); exit (0); 151109467b48Spatrick#endif 151209467b48Spatrick 151309467b48Spatrick exit (1); 151409467b48Spatrick} 151509467b48SpatrickEOF 151609467b48Spatrick 151709467b48Spatrick$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && 151809467b48Spatrick { echo "$SYSTEM_NAME"; exit; } 151909467b48Spatrick 152009467b48Spatrick# Apollos put the system type in the environment. 152109467b48Spatrick 152209467b48Spatricktest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } 152309467b48Spatrick 152409467b48Spatrick# Convex versions that predate uname can use getsysinfo(1) 152509467b48Spatrick 152609467b48Spatrickif [ -x /usr/convex/getsysinfo ] 152709467b48Spatrickthen 152809467b48Spatrick case `getsysinfo -f cpu_type` in 152909467b48Spatrick c1*) 153009467b48Spatrick echo c1-convex-bsd 153109467b48Spatrick exit ;; 153209467b48Spatrick c2*) 153309467b48Spatrick if getsysinfo -f scalar_acc 153409467b48Spatrick then echo c32-convex-bsd 153509467b48Spatrick else echo c2-convex-bsd 153609467b48Spatrick fi 153709467b48Spatrick exit ;; 153809467b48Spatrick c34*) 153909467b48Spatrick echo c34-convex-bsd 154009467b48Spatrick exit ;; 154109467b48Spatrick c38*) 154209467b48Spatrick echo c38-convex-bsd 154309467b48Spatrick exit ;; 154409467b48Spatrick c4*) 154509467b48Spatrick echo c4-convex-bsd 154609467b48Spatrick exit ;; 154709467b48Spatrick esac 154809467b48Spatrickfi 154909467b48Spatrick 155009467b48Spatrickcat >&2 <<EOF 155109467b48Spatrick$0: unable to guess system type 155209467b48Spatrick 155309467b48SpatrickThis script, last modified $timestamp, has failed to recognize 155409467b48Spatrickthe operating system you are using. It is advised that you 155509467b48Spatrickdownload the most up to date version of the config scripts from 155609467b48Spatrick 155709467b48Spatrick http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 155809467b48Spatrickand 155909467b48Spatrick http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 156009467b48Spatrick 156109467b48SpatrickIf the version you run ($0) is already up to date, please 156209467b48Spatricksend the following data and any information you think might be 156309467b48Spatrickpertinent to <config-patches@gnu.org> in order to provide the needed 156409467b48Spatrickinformation to handle your system. 156509467b48Spatrick 156609467b48Spatrickconfig.guess timestamp = $timestamp 156709467b48Spatrick 156809467b48Spatrickuname -m = `(uname -m) 2>/dev/null || echo unknown` 156909467b48Spatrickuname -r = `(uname -r) 2>/dev/null || echo unknown` 157009467b48Spatrickuname -s = `(uname -s) 2>/dev/null || echo unknown` 157109467b48Spatrickuname -v = `(uname -v) 2>/dev/null || echo unknown` 157209467b48Spatrick 157309467b48Spatrick/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 157409467b48Spatrick/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 157509467b48Spatrick 157609467b48Spatrickhostinfo = `(hostinfo) 2>/dev/null` 157709467b48Spatrick/bin/universe = `(/bin/universe) 2>/dev/null` 157809467b48Spatrick/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 157909467b48Spatrick/bin/arch = `(/bin/arch) 2>/dev/null` 158009467b48Spatrick/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 158109467b48Spatrick/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 158209467b48Spatrick 158309467b48SpatrickUNAME_MACHINE = ${UNAME_MACHINE} 158409467b48SpatrickUNAME_RELEASE = ${UNAME_RELEASE} 158509467b48SpatrickUNAME_SYSTEM = ${UNAME_SYSTEM} 158609467b48SpatrickUNAME_VERSION = ${UNAME_VERSION} 158709467b48SpatrickEOF 158809467b48Spatrick 158909467b48Spatrickexit 1 159009467b48Spatrick 159109467b48Spatrick# Local variables: 159209467b48Spatrick# eval: (add-hook 'write-file-hooks 'time-stamp) 159309467b48Spatrick# time-stamp-start: "timestamp='" 159409467b48Spatrick# time-stamp-format: "%:y-%02m-%02d" 159509467b48Spatrick# time-stamp-end: "'" 159609467b48Spatrick# End: 1597