config.guess revision b3e38ee4
150806d53Smrg#! /bin/sh 250806d53Smrg# Attempt to guess a canonical system name. 350806d53Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 47965d9acSmrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 57965d9acSmrg# Free Software Foundation, Inc. 650806d53Smrg 7b3e38ee4Smrgtimestamp='2008-11-15' 850806d53Smrg 950806d53Smrg# This file is free software; you can redistribute it and/or modify it 1050806d53Smrg# under the terms of the GNU General Public License as published by 1150806d53Smrg# the Free Software Foundation; either version 2 of the License, or 1250806d53Smrg# (at your option) any later version. 1350806d53Smrg# 1450806d53Smrg# This program is distributed in the hope that it will be useful, but 1550806d53Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of 1650806d53Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 1750806d53Smrg# General Public License for more details. 1850806d53Smrg# 1950806d53Smrg# You should have received a copy of the GNU General Public License 2050806d53Smrg# along with this program; if not, write to the Free Software 217965d9acSmrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 227965d9acSmrg# 02110-1301, USA. 2350806d53Smrg# 2450806d53Smrg# As a special exception to the GNU General Public License, if you 2550806d53Smrg# distribute this file as part of a program that contains a 2650806d53Smrg# configuration script generated by Autoconf, you may include it under 2750806d53Smrg# the same distribution terms that you use for the rest of that program. 2850806d53Smrg 297965d9acSmrg 3050806d53Smrg# Originally written by Per Bothner <per@bothner.com>. 3150806d53Smrg# Please send patches to <config-patches@gnu.org>. Submit a context 3250806d53Smrg# diff and a properly formatted ChangeLog entry. 3350806d53Smrg# 3450806d53Smrg# This script attempts to guess a canonical system name similar to 3550806d53Smrg# config.sub. If it succeeds, it prints the system name on stdout, and 3650806d53Smrg# exits with 0. Otherwise, it exits with 1. 3750806d53Smrg# 3850806d53Smrg# The plan is that this can be called by configure scripts if you 3950806d53Smrg# don't specify an explicit build system type. 4050806d53Smrg 4150806d53Smrgme=`echo "$0" | sed -e 's,.*/,,'` 4250806d53Smrg 4350806d53Smrgusage="\ 4450806d53SmrgUsage: $0 [OPTION] 4550806d53Smrg 4650806d53SmrgOutput the configuration name of the system \`$me' is run on. 4750806d53Smrg 4850806d53SmrgOperation modes: 4950806d53Smrg -h, --help print this help, then exit 5050806d53Smrg -t, --time-stamp print date of last modification, then exit 5150806d53Smrg -v, --version print version number, then exit 5250806d53Smrg 5350806d53SmrgReport bugs and patches to <config-patches@gnu.org>." 5450806d53Smrg 5550806d53Smrgversion="\ 5650806d53SmrgGNU config.guess ($timestamp) 5750806d53Smrg 5850806d53SmrgOriginally written by Per Bothner. 597965d9acSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 607965d9acSmrg2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. 6150806d53Smrg 6250806d53SmrgThis is free software; see the source for copying conditions. There is NO 6350806d53Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 6450806d53Smrg 6550806d53Smrghelp=" 6650806d53SmrgTry \`$me --help' for more information." 6750806d53Smrg 6850806d53Smrg# Parse command line 6950806d53Smrgwhile test $# -gt 0 ; do 7050806d53Smrg case $1 in 7150806d53Smrg --time-stamp | --time* | -t ) 727965d9acSmrg echo "$timestamp" ; exit ;; 7350806d53Smrg --version | -v ) 747965d9acSmrg echo "$version" ; exit ;; 7550806d53Smrg --help | --h* | -h ) 767965d9acSmrg echo "$usage"; exit ;; 7750806d53Smrg -- ) # Stop option processing 7850806d53Smrg shift; break ;; 7950806d53Smrg - ) # Use stdin as input. 8050806d53Smrg break ;; 8150806d53Smrg -* ) 8250806d53Smrg echo "$me: invalid option $1$help" >&2 8350806d53Smrg exit 1 ;; 8450806d53Smrg * ) 8550806d53Smrg break ;; 8650806d53Smrg esac 8750806d53Smrgdone 8850806d53Smrg 8950806d53Smrgif test $# != 0; then 9050806d53Smrg echo "$me: too many arguments$help" >&2 9150806d53Smrg exit 1 9250806d53Smrgfi 9350806d53Smrg 9450806d53Smrgtrap 'exit 1' 1 2 15 9550806d53Smrg 9650806d53Smrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 9750806d53Smrg# compiler to aid in system detection is discouraged as it requires 9850806d53Smrg# temporary files to be created and, as you can see below, it is a 9950806d53Smrg# headache to deal with in a portable fashion. 10050806d53Smrg 10150806d53Smrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 10250806d53Smrg# use `HOST_CC' if defined, but it is deprecated. 10350806d53Smrg 10450806d53Smrg# Portable tmp directory creation inspired by the Autoconf team. 10550806d53Smrg 10650806d53Smrgset_cc_for_build=' 10750806d53Smrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; 10850806d53Smrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 10950806d53Smrg: ${TMPDIR=/tmp} ; 1107965d9acSmrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 11150806d53Smrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 11250806d53Smrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || 11350806d53Smrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; 11450806d53Smrgdummy=$tmp/dummy ; 11550806d53Smrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; 11650806d53Smrgcase $CC_FOR_BUILD,$HOST_CC,$CC in 11750806d53Smrg ,,) echo "int x;" > $dummy.c ; 11850806d53Smrg for c in cc gcc c89 c99 ; do 11950806d53Smrg if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then 12050806d53Smrg CC_FOR_BUILD="$c"; break ; 12150806d53Smrg fi ; 12250806d53Smrg done ; 12350806d53Smrg if test x"$CC_FOR_BUILD" = x ; then 12450806d53Smrg CC_FOR_BUILD=no_compiler_found ; 12550806d53Smrg fi 12650806d53Smrg ;; 12750806d53Smrg ,,*) CC_FOR_BUILD=$CC ;; 12850806d53Smrg ,*,*) CC_FOR_BUILD=$HOST_CC ;; 1297965d9acSmrgesac ; set_cc_for_build= ;' 13050806d53Smrg 13150806d53Smrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 13250806d53Smrg# (ghazi@noc.rutgers.edu 1994-08-24) 13350806d53Smrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then 13450806d53Smrg PATH=$PATH:/.attbin ; export PATH 13550806d53Smrgfi 13650806d53Smrg 13750806d53SmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 13850806d53SmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 13950806d53SmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 14050806d53SmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 14150806d53Smrg 14250806d53Smrg# Note: order is significant - the case branches are not exclusive. 14350806d53Smrg 14450806d53Smrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 14550806d53Smrg *:NetBSD:*:*) 14650806d53Smrg # NetBSD (nbsd) targets should (where applicable) match one or 14750806d53Smrg # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, 14850806d53Smrg # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 14950806d53Smrg # switched to ELF, *-*-netbsd* would select the old 15050806d53Smrg # object file format. This provides both forward 15150806d53Smrg # compatibility and a consistent mechanism for selecting the 15250806d53Smrg # object file format. 15350806d53Smrg # 15450806d53Smrg # Note: NetBSD doesn't particularly care about the vendor 15550806d53Smrg # portion of the name. We always set it to "unknown". 15650806d53Smrg sysctl="sysctl -n hw.machine_arch" 15750806d53Smrg UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ 15850806d53Smrg /usr/sbin/$sysctl 2>/dev/null || echo unknown)` 15950806d53Smrg case "${UNAME_MACHINE_ARCH}" in 16050806d53Smrg armeb) machine=armeb-unknown ;; 16150806d53Smrg arm*) machine=arm-unknown ;; 16250806d53Smrg sh3el) machine=shl-unknown ;; 16350806d53Smrg sh3eb) machine=sh-unknown ;; 1647965d9acSmrg sh5el) machine=sh5le-unknown ;; 16550806d53Smrg *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 16650806d53Smrg esac 16750806d53Smrg # The Operating System including object format, if it has switched 16850806d53Smrg # to ELF recently, or will in the future. 16950806d53Smrg case "${UNAME_MACHINE_ARCH}" in 17050806d53Smrg arm*|i386|m68k|ns32k|sh3*|sparc|vax) 17150806d53Smrg eval $set_cc_for_build 17250806d53Smrg if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 17350806d53Smrg | grep __ELF__ >/dev/null 17450806d53Smrg then 17550806d53Smrg # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 17650806d53Smrg # Return netbsd for either. FIX? 17750806d53Smrg os=netbsd 17850806d53Smrg else 17950806d53Smrg os=netbsdelf 18050806d53Smrg fi 18150806d53Smrg ;; 18250806d53Smrg *) 18350806d53Smrg os=netbsd 18450806d53Smrg ;; 18550806d53Smrg esac 18650806d53Smrg # The OS release 18750806d53Smrg # Debian GNU/NetBSD machines have a different userland, and 18850806d53Smrg # thus, need a distinct triplet. However, they do not need 18950806d53Smrg # kernel version information, so it can be replaced with a 19050806d53Smrg # suitable tag, in the style of linux-gnu. 19150806d53Smrg case "${UNAME_VERSION}" in 19250806d53Smrg Debian*) 19350806d53Smrg release='-gnu' 19450806d53Smrg ;; 19550806d53Smrg *) 19650806d53Smrg release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` 19750806d53Smrg ;; 19850806d53Smrg esac 19950806d53Smrg # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 20050806d53Smrg # contains redundant information, the shorter form: 20150806d53Smrg # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 20250806d53Smrg echo "${machine}-${os}${release}" 2037965d9acSmrg exit ;; 20450806d53Smrg *:OpenBSD:*:*) 2057965d9acSmrg UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 2067965d9acSmrg echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 2077965d9acSmrg exit ;; 2087965d9acSmrg *:ekkoBSD:*:*) 2097965d9acSmrg echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 2107965d9acSmrg exit ;; 2117965d9acSmrg *:SolidBSD:*:*) 2127965d9acSmrg echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} 2137965d9acSmrg exit ;; 2147965d9acSmrg macppc:MirBSD:*:*) 2157965d9acSmrg echo powerpc-unknown-mirbsd${UNAME_RELEASE} 2167965d9acSmrg exit ;; 2177965d9acSmrg *:MirBSD:*:*) 2187965d9acSmrg echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 2197965d9acSmrg exit ;; 22050806d53Smrg alpha:OSF1:*:*) 2217965d9acSmrg case $UNAME_RELEASE in 2227965d9acSmrg *4.0) 22350806d53Smrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 2247965d9acSmrg ;; 2257965d9acSmrg *5.*) 2267965d9acSmrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 2277965d9acSmrg ;; 2287965d9acSmrg esac 22950806d53Smrg # According to Compaq, /usr/sbin/psrinfo has been available on 23050806d53Smrg # OSF/1 and Tru64 systems produced since 1995. I hope that 23150806d53Smrg # covers most systems running today. This code pipes the CPU 23250806d53Smrg # types through head -n 1, so we only detect the type of CPU 0. 23350806d53Smrg ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 23450806d53Smrg case "$ALPHA_CPU_TYPE" in 23550806d53Smrg "EV4 (21064)") 23650806d53Smrg UNAME_MACHINE="alpha" ;; 23750806d53Smrg "EV4.5 (21064)") 23850806d53Smrg UNAME_MACHINE="alpha" ;; 23950806d53Smrg "LCA4 (21066/21068)") 24050806d53Smrg UNAME_MACHINE="alpha" ;; 24150806d53Smrg "EV5 (21164)") 24250806d53Smrg UNAME_MACHINE="alphaev5" ;; 24350806d53Smrg "EV5.6 (21164A)") 24450806d53Smrg UNAME_MACHINE="alphaev56" ;; 24550806d53Smrg "EV5.6 (21164PC)") 24650806d53Smrg UNAME_MACHINE="alphapca56" ;; 24750806d53Smrg "EV5.7 (21164PC)") 24850806d53Smrg UNAME_MACHINE="alphapca57" ;; 24950806d53Smrg "EV6 (21264)") 25050806d53Smrg UNAME_MACHINE="alphaev6" ;; 25150806d53Smrg "EV6.7 (21264A)") 25250806d53Smrg UNAME_MACHINE="alphaev67" ;; 25350806d53Smrg "EV6.8CB (21264C)") 25450806d53Smrg UNAME_MACHINE="alphaev68" ;; 25550806d53Smrg "EV6.8AL (21264B)") 25650806d53Smrg UNAME_MACHINE="alphaev68" ;; 25750806d53Smrg "EV6.8CX (21264D)") 25850806d53Smrg UNAME_MACHINE="alphaev68" ;; 25950806d53Smrg "EV6.9A (21264/EV69A)") 26050806d53Smrg UNAME_MACHINE="alphaev69" ;; 26150806d53Smrg "EV7 (21364)") 26250806d53Smrg UNAME_MACHINE="alphaev7" ;; 26350806d53Smrg "EV7.9 (21364A)") 26450806d53Smrg UNAME_MACHINE="alphaev79" ;; 26550806d53Smrg esac 2667965d9acSmrg # A Pn.n version is a patched version. 26750806d53Smrg # A Vn.n version is a released version. 26850806d53Smrg # A Tn.n version is a released field test version. 26950806d53Smrg # A Xn.n version is an unreleased experimental baselevel. 27050806d53Smrg # 1.2 uses "1.2" for uname -r. 2717965d9acSmrg echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 2727965d9acSmrg exit ;; 27350806d53Smrg Alpha\ *:Windows_NT*:*) 27450806d53Smrg # How do we know it's Interix rather than the generic POSIX subsystem? 27550806d53Smrg # Should we change UNAME_MACHINE based on the output of uname instead 27650806d53Smrg # of the specific Alpha model? 27750806d53Smrg echo alpha-pc-interix 2787965d9acSmrg exit ;; 27950806d53Smrg 21064:Windows_NT:50:3) 28050806d53Smrg echo alpha-dec-winnt3.5 2817965d9acSmrg exit ;; 28250806d53Smrg Amiga*:UNIX_System_V:4.0:*) 28350806d53Smrg echo m68k-unknown-sysv4 2847965d9acSmrg exit ;; 28550806d53Smrg *:[Aa]miga[Oo][Ss]:*:*) 28650806d53Smrg echo ${UNAME_MACHINE}-unknown-amigaos 2877965d9acSmrg exit ;; 28850806d53Smrg *:[Mm]orph[Oo][Ss]:*:*) 28950806d53Smrg echo ${UNAME_MACHINE}-unknown-morphos 2907965d9acSmrg exit ;; 29150806d53Smrg *:OS/390:*:*) 29250806d53Smrg echo i370-ibm-openedition 2937965d9acSmrg exit ;; 2947965d9acSmrg *:z/VM:*:*) 2957965d9acSmrg echo s390-ibm-zvmoe 2967965d9acSmrg exit ;; 2977965d9acSmrg *:OS400:*:*) 2987965d9acSmrg echo powerpc-ibm-os400 2997965d9acSmrg exit ;; 30050806d53Smrg arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 30150806d53Smrg echo arm-acorn-riscix${UNAME_RELEASE} 3027965d9acSmrg exit ;; 3037965d9acSmrg arm:riscos:*:*|arm:RISCOS:*:*) 3047965d9acSmrg echo arm-unknown-riscos 3057965d9acSmrg exit ;; 30650806d53Smrg SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 30750806d53Smrg echo hppa1.1-hitachi-hiuxmpp 3087965d9acSmrg exit ;; 30950806d53Smrg Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 31050806d53Smrg # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 31150806d53Smrg if test "`(/bin/universe) 2>/dev/null`" = att ; then 31250806d53Smrg echo pyramid-pyramid-sysv3 31350806d53Smrg else 31450806d53Smrg echo pyramid-pyramid-bsd 31550806d53Smrg fi 3167965d9acSmrg exit ;; 31750806d53Smrg NILE*:*:*:dcosx) 31850806d53Smrg echo pyramid-pyramid-svr4 3197965d9acSmrg exit ;; 32050806d53Smrg DRS?6000:unix:4.0:6*) 32150806d53Smrg echo sparc-icl-nx6 3227965d9acSmrg exit ;; 3237965d9acSmrg DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 32450806d53Smrg case `/usr/bin/uname -p` in 3257965d9acSmrg sparc) echo sparc-icl-nx7; exit ;; 32650806d53Smrg esac ;; 32750806d53Smrg sun4H:SunOS:5.*:*) 32850806d53Smrg echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 3297965d9acSmrg exit ;; 33050806d53Smrg sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 33150806d53Smrg echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 3327965d9acSmrg exit ;; 3337965d9acSmrg i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) 334b3e38ee4Smrg eval $set_cc_for_build 335b3e38ee4Smrg SUN_ARCH="i386" 336b3e38ee4Smrg # If there is a compiler, see if it is configured for 64-bit objects. 337b3e38ee4Smrg # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. 338b3e38ee4Smrg # This test works for both compilers. 339b3e38ee4Smrg if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 340b3e38ee4Smrg if echo '\n#ifdef __amd64\nIS_64BIT_ARCH\n#endif' | \ 341b3e38ee4Smrg (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 342b3e38ee4Smrg grep IS_64BIT_ARCH >/dev/null 343b3e38ee4Smrg then 344b3e38ee4Smrg SUN_ARCH="x86_64" 345b3e38ee4Smrg fi 346b3e38ee4Smrg fi 347b3e38ee4Smrg echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 3487965d9acSmrg exit ;; 34950806d53Smrg sun4*:SunOS:6*:*) 35050806d53Smrg # According to config.sub, this is the proper way to canonicalize 35150806d53Smrg # SunOS6. Hard to guess exactly what SunOS6 will be like, but 35250806d53Smrg # it's likely to be more like Solaris than SunOS4. 35350806d53Smrg echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 3547965d9acSmrg exit ;; 35550806d53Smrg sun4*:SunOS:*:*) 35650806d53Smrg case "`/usr/bin/arch -k`" in 35750806d53Smrg Series*|S4*) 35850806d53Smrg UNAME_RELEASE=`uname -v` 35950806d53Smrg ;; 36050806d53Smrg esac 36150806d53Smrg # Japanese Language versions have a version number like `4.1.3-JL'. 36250806d53Smrg echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 3637965d9acSmrg exit ;; 36450806d53Smrg sun3*:SunOS:*:*) 36550806d53Smrg echo m68k-sun-sunos${UNAME_RELEASE} 3667965d9acSmrg exit ;; 36750806d53Smrg sun*:*:4.2BSD:*) 36850806d53Smrg UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 36950806d53Smrg test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 37050806d53Smrg case "`/bin/arch`" in 37150806d53Smrg sun3) 37250806d53Smrg echo m68k-sun-sunos${UNAME_RELEASE} 37350806d53Smrg ;; 37450806d53Smrg sun4) 37550806d53Smrg echo sparc-sun-sunos${UNAME_RELEASE} 37650806d53Smrg ;; 37750806d53Smrg esac 3787965d9acSmrg exit ;; 37950806d53Smrg aushp:SunOS:*:*) 38050806d53Smrg echo sparc-auspex-sunos${UNAME_RELEASE} 3817965d9acSmrg exit ;; 38250806d53Smrg # The situation for MiNT is a little confusing. The machine name 38350806d53Smrg # can be virtually everything (everything which is not 38450806d53Smrg # "atarist" or "atariste" at least should have a processor 38550806d53Smrg # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 38650806d53Smrg # to the lowercase version "mint" (or "freemint"). Finally 38750806d53Smrg # the system name "TOS" denotes a system which is actually not 38850806d53Smrg # MiNT. But MiNT is downward compatible to TOS, so this should 38950806d53Smrg # be no problem. 39050806d53Smrg atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 39150806d53Smrg echo m68k-atari-mint${UNAME_RELEASE} 3927965d9acSmrg exit ;; 39350806d53Smrg atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 39450806d53Smrg echo m68k-atari-mint${UNAME_RELEASE} 3957965d9acSmrg exit ;; 39650806d53Smrg *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 39750806d53Smrg echo m68k-atari-mint${UNAME_RELEASE} 3987965d9acSmrg exit ;; 39950806d53Smrg milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 40050806d53Smrg echo m68k-milan-mint${UNAME_RELEASE} 4017965d9acSmrg exit ;; 40250806d53Smrg hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 40350806d53Smrg echo m68k-hades-mint${UNAME_RELEASE} 4047965d9acSmrg exit ;; 40550806d53Smrg *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 40650806d53Smrg echo m68k-unknown-mint${UNAME_RELEASE} 4077965d9acSmrg exit ;; 4087965d9acSmrg m68k:machten:*:*) 4097965d9acSmrg echo m68k-apple-machten${UNAME_RELEASE} 4107965d9acSmrg exit ;; 41150806d53Smrg powerpc:machten:*:*) 41250806d53Smrg echo powerpc-apple-machten${UNAME_RELEASE} 4137965d9acSmrg exit ;; 41450806d53Smrg RISC*:Mach:*:*) 41550806d53Smrg echo mips-dec-mach_bsd4.3 4167965d9acSmrg exit ;; 41750806d53Smrg RISC*:ULTRIX:*:*) 41850806d53Smrg echo mips-dec-ultrix${UNAME_RELEASE} 4197965d9acSmrg exit ;; 42050806d53Smrg VAX*:ULTRIX*:*:*) 42150806d53Smrg echo vax-dec-ultrix${UNAME_RELEASE} 4227965d9acSmrg exit ;; 42350806d53Smrg 2020:CLIX:*:* | 2430:CLIX:*:*) 42450806d53Smrg echo clipper-intergraph-clix${UNAME_RELEASE} 4257965d9acSmrg exit ;; 42650806d53Smrg mips:*:*:UMIPS | mips:*:*:RISCos) 42750806d53Smrg eval $set_cc_for_build 42850806d53Smrg sed 's/^ //' << EOF >$dummy.c 42950806d53Smrg#ifdef __cplusplus 43050806d53Smrg#include <stdio.h> /* for printf() prototype */ 43150806d53Smrg int main (int argc, char *argv[]) { 43250806d53Smrg#else 43350806d53Smrg int main (argc, argv) int argc; char *argv[]; { 43450806d53Smrg#endif 43550806d53Smrg #if defined (host_mips) && defined (MIPSEB) 43650806d53Smrg #if defined (SYSTYPE_SYSV) 43750806d53Smrg printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 43850806d53Smrg #endif 43950806d53Smrg #if defined (SYSTYPE_SVR4) 44050806d53Smrg printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 44150806d53Smrg #endif 44250806d53Smrg #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 44350806d53Smrg printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 44450806d53Smrg #endif 44550806d53Smrg #endif 44650806d53Smrg exit (-1); 44750806d53Smrg } 44850806d53SmrgEOF 4497965d9acSmrg $CC_FOR_BUILD -o $dummy $dummy.c && 4507965d9acSmrg dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 4517965d9acSmrg SYSTEM_NAME=`$dummy $dummyarg` && 4527965d9acSmrg { echo "$SYSTEM_NAME"; exit; } 45350806d53Smrg echo mips-mips-riscos${UNAME_RELEASE} 4547965d9acSmrg exit ;; 45550806d53Smrg Motorola:PowerMAX_OS:*:*) 45650806d53Smrg echo powerpc-motorola-powermax 4577965d9acSmrg exit ;; 45850806d53Smrg Motorola:*:4.3:PL8-*) 45950806d53Smrg echo powerpc-harris-powermax 4607965d9acSmrg exit ;; 46150806d53Smrg Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 46250806d53Smrg echo powerpc-harris-powermax 4637965d9acSmrg exit ;; 46450806d53Smrg Night_Hawk:Power_UNIX:*:*) 46550806d53Smrg echo powerpc-harris-powerunix 4667965d9acSmrg exit ;; 46750806d53Smrg m88k:CX/UX:7*:*) 46850806d53Smrg echo m88k-harris-cxux7 4697965d9acSmrg exit ;; 47050806d53Smrg m88k:*:4*:R4*) 47150806d53Smrg echo m88k-motorola-sysv4 4727965d9acSmrg exit ;; 47350806d53Smrg m88k:*:3*:R3*) 47450806d53Smrg echo m88k-motorola-sysv3 4757965d9acSmrg exit ;; 47650806d53Smrg AViiON:dgux:*:*) 47750806d53Smrg # DG/UX returns AViiON for all architectures 47850806d53Smrg UNAME_PROCESSOR=`/usr/bin/uname -p` 47950806d53Smrg if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 48050806d53Smrg then 48150806d53Smrg if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 48250806d53Smrg [ ${TARGET_BINARY_INTERFACE}x = x ] 48350806d53Smrg then 48450806d53Smrg echo m88k-dg-dgux${UNAME_RELEASE} 48550806d53Smrg else 48650806d53Smrg echo m88k-dg-dguxbcs${UNAME_RELEASE} 48750806d53Smrg fi 48850806d53Smrg else 48950806d53Smrg echo i586-dg-dgux${UNAME_RELEASE} 49050806d53Smrg fi 4917965d9acSmrg exit ;; 49250806d53Smrg M88*:DolphinOS:*:*) # DolphinOS (SVR3) 49350806d53Smrg echo m88k-dolphin-sysv3 4947965d9acSmrg exit ;; 49550806d53Smrg M88*:*:R3*:*) 49650806d53Smrg # Delta 88k system running SVR3 49750806d53Smrg echo m88k-motorola-sysv3 4987965d9acSmrg exit ;; 49950806d53Smrg XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 50050806d53Smrg echo m88k-tektronix-sysv3 5017965d9acSmrg exit ;; 50250806d53Smrg Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 50350806d53Smrg echo m68k-tektronix-bsd 5047965d9acSmrg exit ;; 50550806d53Smrg *:IRIX*:*:*) 50650806d53Smrg echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 5077965d9acSmrg exit ;; 50850806d53Smrg ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 5097965d9acSmrg echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 5107965d9acSmrg exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 51150806d53Smrg i*86:AIX:*:*) 51250806d53Smrg echo i386-ibm-aix 5137965d9acSmrg exit ;; 51450806d53Smrg ia64:AIX:*:*) 51550806d53Smrg if [ -x /usr/bin/oslevel ] ; then 51650806d53Smrg IBM_REV=`/usr/bin/oslevel` 51750806d53Smrg else 51850806d53Smrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 51950806d53Smrg fi 52050806d53Smrg echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 5217965d9acSmrg exit ;; 52250806d53Smrg *:AIX:2:3) 52350806d53Smrg if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 52450806d53Smrg eval $set_cc_for_build 52550806d53Smrg sed 's/^ //' << EOF >$dummy.c 52650806d53Smrg #include <sys/systemcfg.h> 52750806d53Smrg 52850806d53Smrg main() 52950806d53Smrg { 53050806d53Smrg if (!__power_pc()) 53150806d53Smrg exit(1); 53250806d53Smrg puts("powerpc-ibm-aix3.2.5"); 53350806d53Smrg exit(0); 53450806d53Smrg } 53550806d53SmrgEOF 5367965d9acSmrg if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 5377965d9acSmrg then 5387965d9acSmrg echo "$SYSTEM_NAME" 5397965d9acSmrg else 5407965d9acSmrg echo rs6000-ibm-aix3.2.5 5417965d9acSmrg fi 54250806d53Smrg elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 54350806d53Smrg echo rs6000-ibm-aix3.2.4 54450806d53Smrg else 54550806d53Smrg echo rs6000-ibm-aix3.2 54650806d53Smrg fi 5477965d9acSmrg exit ;; 5487965d9acSmrg *:AIX:*:[456]) 54950806d53Smrg IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 55050806d53Smrg if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 55150806d53Smrg IBM_ARCH=rs6000 55250806d53Smrg else 55350806d53Smrg IBM_ARCH=powerpc 55450806d53Smrg fi 55550806d53Smrg if [ -x /usr/bin/oslevel ] ; then 55650806d53Smrg IBM_REV=`/usr/bin/oslevel` 55750806d53Smrg else 55850806d53Smrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 55950806d53Smrg fi 56050806d53Smrg echo ${IBM_ARCH}-ibm-aix${IBM_REV} 5617965d9acSmrg exit ;; 56250806d53Smrg *:AIX:*:*) 56350806d53Smrg echo rs6000-ibm-aix 5647965d9acSmrg exit ;; 56550806d53Smrg ibmrt:4.4BSD:*|romp-ibm:BSD:*) 56650806d53Smrg echo romp-ibm-bsd4.4 5677965d9acSmrg exit ;; 56850806d53Smrg ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 56950806d53Smrg echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 5707965d9acSmrg exit ;; # report: romp-ibm BSD 4.3 57150806d53Smrg *:BOSX:*:*) 57250806d53Smrg echo rs6000-bull-bosx 5737965d9acSmrg exit ;; 57450806d53Smrg DPX/2?00:B.O.S.:*:*) 57550806d53Smrg echo m68k-bull-sysv3 5767965d9acSmrg exit ;; 57750806d53Smrg 9000/[34]??:4.3bsd:1.*:*) 57850806d53Smrg echo m68k-hp-bsd 5797965d9acSmrg exit ;; 58050806d53Smrg hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 58150806d53Smrg echo m68k-hp-bsd4.4 5827965d9acSmrg exit ;; 58350806d53Smrg 9000/[34678]??:HP-UX:*:*) 58450806d53Smrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 58550806d53Smrg case "${UNAME_MACHINE}" in 58650806d53Smrg 9000/31? ) HP_ARCH=m68000 ;; 58750806d53Smrg 9000/[34]?? ) HP_ARCH=m68k ;; 58850806d53Smrg 9000/[678][0-9][0-9]) 58950806d53Smrg if [ -x /usr/bin/getconf ]; then 59050806d53Smrg sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 59150806d53Smrg sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 59250806d53Smrg case "${sc_cpu_version}" in 59350806d53Smrg 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 59450806d53Smrg 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 59550806d53Smrg 532) # CPU_PA_RISC2_0 59650806d53Smrg case "${sc_kernel_bits}" in 59750806d53Smrg 32) HP_ARCH="hppa2.0n" ;; 59850806d53Smrg 64) HP_ARCH="hppa2.0w" ;; 59950806d53Smrg '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 60050806d53Smrg esac ;; 60150806d53Smrg esac 60250806d53Smrg fi 60350806d53Smrg if [ "${HP_ARCH}" = "" ]; then 60450806d53Smrg eval $set_cc_for_build 60550806d53Smrg sed 's/^ //' << EOF >$dummy.c 60650806d53Smrg 60750806d53Smrg #define _HPUX_SOURCE 60850806d53Smrg #include <stdlib.h> 60950806d53Smrg #include <unistd.h> 61050806d53Smrg 61150806d53Smrg int main () 61250806d53Smrg { 61350806d53Smrg #if defined(_SC_KERNEL_BITS) 61450806d53Smrg long bits = sysconf(_SC_KERNEL_BITS); 61550806d53Smrg #endif 61650806d53Smrg long cpu = sysconf (_SC_CPU_VERSION); 61750806d53Smrg 61850806d53Smrg switch (cpu) 61950806d53Smrg { 62050806d53Smrg case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 62150806d53Smrg case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 62250806d53Smrg case CPU_PA_RISC2_0: 62350806d53Smrg #if defined(_SC_KERNEL_BITS) 62450806d53Smrg switch (bits) 62550806d53Smrg { 62650806d53Smrg case 64: puts ("hppa2.0w"); break; 62750806d53Smrg case 32: puts ("hppa2.0n"); break; 62850806d53Smrg default: puts ("hppa2.0"); break; 62950806d53Smrg } break; 63050806d53Smrg #else /* !defined(_SC_KERNEL_BITS) */ 63150806d53Smrg puts ("hppa2.0"); break; 63250806d53Smrg #endif 63350806d53Smrg default: puts ("hppa1.0"); break; 63450806d53Smrg } 63550806d53Smrg exit (0); 63650806d53Smrg } 63750806d53SmrgEOF 63850806d53Smrg (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 63950806d53Smrg test -z "$HP_ARCH" && HP_ARCH=hppa 64050806d53Smrg fi ;; 64150806d53Smrg esac 64250806d53Smrg if [ ${HP_ARCH} = "hppa2.0w" ] 64350806d53Smrg then 6447965d9acSmrg eval $set_cc_for_build 6457965d9acSmrg 6467965d9acSmrg # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 6477965d9acSmrg # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 6487965d9acSmrg # generating 64-bit code. GNU and HP use different nomenclature: 6497965d9acSmrg # 6507965d9acSmrg # $ CC_FOR_BUILD=cc ./config.guess 6517965d9acSmrg # => hppa2.0w-hp-hpux11.23 6527965d9acSmrg # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 6537965d9acSmrg # => hppa64-hp-hpux11.23 6547965d9acSmrg 6557965d9acSmrg if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | 6567965d9acSmrg grep __LP64__ >/dev/null 65750806d53Smrg then 65850806d53Smrg HP_ARCH="hppa2.0w" 65950806d53Smrg else 66050806d53Smrg HP_ARCH="hppa64" 66150806d53Smrg fi 66250806d53Smrg fi 66350806d53Smrg echo ${HP_ARCH}-hp-hpux${HPUX_REV} 6647965d9acSmrg exit ;; 66550806d53Smrg ia64:HP-UX:*:*) 66650806d53Smrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 66750806d53Smrg echo ia64-hp-hpux${HPUX_REV} 6687965d9acSmrg exit ;; 66950806d53Smrg 3050*:HI-UX:*:*) 67050806d53Smrg eval $set_cc_for_build 67150806d53Smrg sed 's/^ //' << EOF >$dummy.c 67250806d53Smrg #include <unistd.h> 67350806d53Smrg int 67450806d53Smrg main () 67550806d53Smrg { 67650806d53Smrg long cpu = sysconf (_SC_CPU_VERSION); 67750806d53Smrg /* The order matters, because CPU_IS_HP_MC68K erroneously returns 67850806d53Smrg true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 67950806d53Smrg results, however. */ 68050806d53Smrg if (CPU_IS_PA_RISC (cpu)) 68150806d53Smrg { 68250806d53Smrg switch (cpu) 68350806d53Smrg { 68450806d53Smrg case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 68550806d53Smrg case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 68650806d53Smrg case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 68750806d53Smrg default: puts ("hppa-hitachi-hiuxwe2"); break; 68850806d53Smrg } 68950806d53Smrg } 69050806d53Smrg else if (CPU_IS_HP_MC68K (cpu)) 69150806d53Smrg puts ("m68k-hitachi-hiuxwe2"); 69250806d53Smrg else puts ("unknown-hitachi-hiuxwe2"); 69350806d53Smrg exit (0); 69450806d53Smrg } 69550806d53SmrgEOF 6967965d9acSmrg $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 6977965d9acSmrg { echo "$SYSTEM_NAME"; exit; } 69850806d53Smrg echo unknown-hitachi-hiuxwe2 6997965d9acSmrg exit ;; 70050806d53Smrg 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 70150806d53Smrg echo hppa1.1-hp-bsd 7027965d9acSmrg exit ;; 70350806d53Smrg 9000/8??:4.3bsd:*:*) 70450806d53Smrg echo hppa1.0-hp-bsd 7057965d9acSmrg exit ;; 70650806d53Smrg *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 70750806d53Smrg echo hppa1.0-hp-mpeix 7087965d9acSmrg exit ;; 70950806d53Smrg hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 71050806d53Smrg echo hppa1.1-hp-osf 7117965d9acSmrg exit ;; 71250806d53Smrg hp8??:OSF1:*:*) 71350806d53Smrg echo hppa1.0-hp-osf 7147965d9acSmrg exit ;; 71550806d53Smrg i*86:OSF1:*:*) 71650806d53Smrg if [ -x /usr/sbin/sysversion ] ; then 71750806d53Smrg echo ${UNAME_MACHINE}-unknown-osf1mk 71850806d53Smrg else 71950806d53Smrg echo ${UNAME_MACHINE}-unknown-osf1 72050806d53Smrg fi 7217965d9acSmrg exit ;; 72250806d53Smrg parisc*:Lites*:*:*) 72350806d53Smrg echo hppa1.1-hp-lites 7247965d9acSmrg exit ;; 72550806d53Smrg C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 72650806d53Smrg echo c1-convex-bsd 7277965d9acSmrg exit ;; 72850806d53Smrg C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 72950806d53Smrg if getsysinfo -f scalar_acc 73050806d53Smrg then echo c32-convex-bsd 73150806d53Smrg else echo c2-convex-bsd 73250806d53Smrg fi 7337965d9acSmrg exit ;; 73450806d53Smrg C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 73550806d53Smrg echo c34-convex-bsd 7367965d9acSmrg exit ;; 73750806d53Smrg C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 73850806d53Smrg echo c38-convex-bsd 7397965d9acSmrg exit ;; 74050806d53Smrg C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 74150806d53Smrg echo c4-convex-bsd 7427965d9acSmrg exit ;; 74350806d53Smrg CRAY*Y-MP:*:*:*) 74450806d53Smrg echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7457965d9acSmrg exit ;; 74650806d53Smrg CRAY*[A-Z]90:*:*:*) 74750806d53Smrg echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 74850806d53Smrg | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 74950806d53Smrg -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 75050806d53Smrg -e 's/\.[^.]*$/.X/' 7517965d9acSmrg exit ;; 75250806d53Smrg CRAY*TS:*:*:*) 75350806d53Smrg echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7547965d9acSmrg exit ;; 75550806d53Smrg CRAY*T3E:*:*:*) 75650806d53Smrg echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7577965d9acSmrg exit ;; 75850806d53Smrg CRAY*SV1:*:*:*) 75950806d53Smrg echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7607965d9acSmrg exit ;; 76150806d53Smrg *:UNICOS/mp:*:*) 7627965d9acSmrg echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7637965d9acSmrg exit ;; 76450806d53Smrg F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 76550806d53Smrg FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 76650806d53Smrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 76750806d53Smrg FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 76850806d53Smrg echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 7697965d9acSmrg exit ;; 7707965d9acSmrg 5000:UNIX_System_V:4.*:*) 7717965d9acSmrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 7727965d9acSmrg FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` 7737965d9acSmrg echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 7747965d9acSmrg exit ;; 77550806d53Smrg i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 77650806d53Smrg echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 7777965d9acSmrg exit ;; 77850806d53Smrg sparc*:BSD/OS:*:*) 77950806d53Smrg echo sparc-unknown-bsdi${UNAME_RELEASE} 7807965d9acSmrg exit ;; 78150806d53Smrg *:BSD/OS:*:*) 78250806d53Smrg echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 7837965d9acSmrg exit ;; 7847965d9acSmrg *:FreeBSD:*:*) 7857965d9acSmrg case ${UNAME_MACHINE} in 7867965d9acSmrg pc98) 7877965d9acSmrg echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 7887965d9acSmrg amd64) 7897965d9acSmrg echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 7907965d9acSmrg *) 7917965d9acSmrg echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 7927965d9acSmrg esac 7937965d9acSmrg exit ;; 79450806d53Smrg i*:CYGWIN*:*) 79550806d53Smrg echo ${UNAME_MACHINE}-pc-cygwin 7967965d9acSmrg exit ;; 7977965d9acSmrg *:MINGW*:*) 79850806d53Smrg echo ${UNAME_MACHINE}-pc-mingw32 7997965d9acSmrg exit ;; 8007965d9acSmrg i*:windows32*:*) 8017965d9acSmrg # uname -m includes "-pc" on this system. 8027965d9acSmrg echo ${UNAME_MACHINE}-mingw32 8037965d9acSmrg exit ;; 80450806d53Smrg i*:PW*:*) 80550806d53Smrg echo ${UNAME_MACHINE}-pc-pw32 8067965d9acSmrg exit ;; 8077965d9acSmrg *:Interix*:[3456]*) 8087965d9acSmrg case ${UNAME_MACHINE} in 8097965d9acSmrg x86) 8107965d9acSmrg echo i586-pc-interix${UNAME_RELEASE} 8117965d9acSmrg exit ;; 812b3e38ee4Smrg EM64T | authenticamd | genuineintel) 8137965d9acSmrg echo x86_64-unknown-interix${UNAME_RELEASE} 8147965d9acSmrg exit ;; 8157965d9acSmrg IA64) 8167965d9acSmrg echo ia64-unknown-interix${UNAME_RELEASE} 8177965d9acSmrg exit ;; 8187965d9acSmrg esac ;; 81950806d53Smrg [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 82050806d53Smrg echo i${UNAME_MACHINE}-pc-mks 8217965d9acSmrg exit ;; 82250806d53Smrg i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 82350806d53Smrg # How do we know it's Interix rather than the generic POSIX subsystem? 82450806d53Smrg # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 82550806d53Smrg # UNAME_MACHINE based on the output of uname instead of i386? 82650806d53Smrg echo i586-pc-interix 8277965d9acSmrg exit ;; 82850806d53Smrg i*:UWIN*:*) 82950806d53Smrg echo ${UNAME_MACHINE}-pc-uwin 8307965d9acSmrg exit ;; 8317965d9acSmrg amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 8327965d9acSmrg echo x86_64-unknown-cygwin 8337965d9acSmrg exit ;; 83450806d53Smrg p*:CYGWIN*:*) 83550806d53Smrg echo powerpcle-unknown-cygwin 8367965d9acSmrg exit ;; 83750806d53Smrg prep*:SunOS:5.*:*) 83850806d53Smrg echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 8397965d9acSmrg exit ;; 84050806d53Smrg *:GNU:*:*) 8417965d9acSmrg # the GNU system 84250806d53Smrg echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 8437965d9acSmrg exit ;; 8447965d9acSmrg *:GNU/*:*:*) 8457965d9acSmrg # other systems with GNU libc and userland 8467965d9acSmrg echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu 8477965d9acSmrg exit ;; 84850806d53Smrg i*86:Minix:*:*) 84950806d53Smrg echo ${UNAME_MACHINE}-pc-minix 8507965d9acSmrg exit ;; 85150806d53Smrg arm*:Linux:*:*) 8527965d9acSmrg eval $set_cc_for_build 8537965d9acSmrg if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ 8547965d9acSmrg | grep -q __ARM_EABI__ 8557965d9acSmrg then 8567965d9acSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 8577965d9acSmrg else 8587965d9acSmrg echo ${UNAME_MACHINE}-unknown-linux-gnueabi 8597965d9acSmrg fi 8607965d9acSmrg exit ;; 8617965d9acSmrg avr32*:Linux:*:*) 86250806d53Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 8637965d9acSmrg exit ;; 86450806d53Smrg cris:Linux:*:*) 86550806d53Smrg echo cris-axis-linux-gnu 8667965d9acSmrg exit ;; 8677965d9acSmrg crisv32:Linux:*:*) 8687965d9acSmrg echo crisv32-axis-linux-gnu 8697965d9acSmrg exit ;; 8707965d9acSmrg frv:Linux:*:*) 8717965d9acSmrg echo frv-unknown-linux-gnu 8727965d9acSmrg exit ;; 87350806d53Smrg ia64:Linux:*:*) 8747965d9acSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 8757965d9acSmrg exit ;; 8767965d9acSmrg m32r*:Linux:*:*) 8777965d9acSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 8787965d9acSmrg exit ;; 87950806d53Smrg m68*:Linux:*:*) 88050806d53Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 8817965d9acSmrg exit ;; 88250806d53Smrg mips:Linux:*:*) 88350806d53Smrg eval $set_cc_for_build 88450806d53Smrg sed 's/^ //' << EOF >$dummy.c 88550806d53Smrg #undef CPU 88650806d53Smrg #undef mips 88750806d53Smrg #undef mipsel 88850806d53Smrg #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 88950806d53Smrg CPU=mipsel 89050806d53Smrg #else 89150806d53Smrg #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 89250806d53Smrg CPU=mips 89350806d53Smrg #else 89450806d53Smrg CPU= 89550806d53Smrg #endif 89650806d53Smrg #endif 89750806d53SmrgEOF 8987965d9acSmrg eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 8997965d9acSmrg /^CPU/{ 9007965d9acSmrg s: ::g 9017965d9acSmrg p 9027965d9acSmrg }'`" 9037965d9acSmrg test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 90450806d53Smrg ;; 90550806d53Smrg mips64:Linux:*:*) 90650806d53Smrg eval $set_cc_for_build 90750806d53Smrg sed 's/^ //' << EOF >$dummy.c 90850806d53Smrg #undef CPU 90950806d53Smrg #undef mips64 91050806d53Smrg #undef mips64el 91150806d53Smrg #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 91250806d53Smrg CPU=mips64el 91350806d53Smrg #else 91450806d53Smrg #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 91550806d53Smrg CPU=mips64 91650806d53Smrg #else 91750806d53Smrg CPU= 91850806d53Smrg #endif 91950806d53Smrg #endif 92050806d53SmrgEOF 9217965d9acSmrg eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 9227965d9acSmrg /^CPU/{ 9237965d9acSmrg s: ::g 9247965d9acSmrg p 9257965d9acSmrg }'`" 9267965d9acSmrg test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 92750806d53Smrg ;; 9287965d9acSmrg or32:Linux:*:*) 9297965d9acSmrg echo or32-unknown-linux-gnu 9307965d9acSmrg exit ;; 93150806d53Smrg ppc:Linux:*:*) 9327965d9acSmrg echo powerpc-unknown-linux-gnu 9337965d9acSmrg exit ;; 93450806d53Smrg ppc64:Linux:*:*) 9357965d9acSmrg echo powerpc64-unknown-linux-gnu 9367965d9acSmrg exit ;; 93750806d53Smrg alpha:Linux:*:*) 93850806d53Smrg case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 93950806d53Smrg EV5) UNAME_MACHINE=alphaev5 ;; 94050806d53Smrg EV56) UNAME_MACHINE=alphaev56 ;; 94150806d53Smrg PCA56) UNAME_MACHINE=alphapca56 ;; 94250806d53Smrg PCA57) UNAME_MACHINE=alphapca56 ;; 94350806d53Smrg EV6) UNAME_MACHINE=alphaev6 ;; 94450806d53Smrg EV67) UNAME_MACHINE=alphaev67 ;; 94550806d53Smrg EV68*) UNAME_MACHINE=alphaev68 ;; 94650806d53Smrg esac 94750806d53Smrg objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null 94850806d53Smrg if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi 94950806d53Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 9507965d9acSmrg exit ;; 951b3e38ee4Smrg padre:Linux:*:*) 952b3e38ee4Smrg echo sparc-unknown-linux-gnu 953b3e38ee4Smrg exit ;; 95450806d53Smrg parisc:Linux:*:* | hppa:Linux:*:*) 95550806d53Smrg # Look for CPU level 95650806d53Smrg case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 95750806d53Smrg PA7*) echo hppa1.1-unknown-linux-gnu ;; 95850806d53Smrg PA8*) echo hppa2.0-unknown-linux-gnu ;; 95950806d53Smrg *) echo hppa-unknown-linux-gnu ;; 96050806d53Smrg esac 9617965d9acSmrg exit ;; 96250806d53Smrg parisc64:Linux:*:* | hppa64:Linux:*:*) 96350806d53Smrg echo hppa64-unknown-linux-gnu 9647965d9acSmrg exit ;; 96550806d53Smrg s390:Linux:*:* | s390x:Linux:*:*) 9667965d9acSmrg echo ${UNAME_MACHINE}-ibm-linux 9677965d9acSmrg exit ;; 96850806d53Smrg sh64*:Linux:*:*) 96950806d53Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 9707965d9acSmrg exit ;; 97150806d53Smrg sh*:Linux:*:*) 97250806d53Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 9737965d9acSmrg exit ;; 97450806d53Smrg sparc:Linux:*:* | sparc64:Linux:*:*) 97550806d53Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 9767965d9acSmrg exit ;; 9777965d9acSmrg vax:Linux:*:*) 9787965d9acSmrg echo ${UNAME_MACHINE}-dec-linux-gnu 9797965d9acSmrg exit ;; 98050806d53Smrg x86_64:Linux:*:*) 9817965d9acSmrg echo x86_64-unknown-linux-gnu 9827965d9acSmrg exit ;; 9837965d9acSmrg xtensa*:Linux:*:*) 9847965d9acSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 9857965d9acSmrg exit ;; 98650806d53Smrg i*86:Linux:*:*) 98750806d53Smrg # The BFD linker knows what the default object file format is, so 98850806d53Smrg # first see if it will tell us. cd to the root directory to prevent 98950806d53Smrg # problems with other programs or directories called `ld' in the path. 99050806d53Smrg # Set LC_ALL=C to ensure ld outputs messages in English. 99150806d53Smrg ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ 99250806d53Smrg | sed -ne '/supported targets:/!d 99350806d53Smrg s/[ ][ ]*/ /g 99450806d53Smrg s/.*supported targets: *// 99550806d53Smrg s/ .*// 99650806d53Smrg p'` 99750806d53Smrg case "$ld_supported_targets" in 99850806d53Smrg elf32-i386) 99950806d53Smrg TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" 100050806d53Smrg ;; 100150806d53Smrg a.out-i386-linux) 100250806d53Smrg echo "${UNAME_MACHINE}-pc-linux-gnuaout" 10037965d9acSmrg exit ;; 100450806d53Smrg "") 100550806d53Smrg # Either a pre-BFD a.out linker (linux-gnuoldld) or 100650806d53Smrg # one that does not give us useful --help. 100750806d53Smrg echo "${UNAME_MACHINE}-pc-linux-gnuoldld" 10087965d9acSmrg exit ;; 100950806d53Smrg esac 101050806d53Smrg # Determine whether the default compiler is a.out or elf 101150806d53Smrg eval $set_cc_for_build 101250806d53Smrg sed 's/^ //' << EOF >$dummy.c 101350806d53Smrg #include <features.h> 101450806d53Smrg #ifdef __ELF__ 101550806d53Smrg # ifdef __GLIBC__ 101650806d53Smrg # if __GLIBC__ >= 2 101750806d53Smrg LIBC=gnu 101850806d53Smrg # else 101950806d53Smrg LIBC=gnulibc1 102050806d53Smrg # endif 102150806d53Smrg # else 102250806d53Smrg LIBC=gnulibc1 102350806d53Smrg # endif 102450806d53Smrg #else 10257965d9acSmrg #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC) 102650806d53Smrg LIBC=gnu 102750806d53Smrg #else 102850806d53Smrg LIBC=gnuaout 102950806d53Smrg #endif 103050806d53Smrg #endif 10317965d9acSmrg #ifdef __dietlibc__ 10327965d9acSmrg LIBC=dietlibc 10337965d9acSmrg #endif 103450806d53SmrgEOF 10357965d9acSmrg eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 10367965d9acSmrg /^LIBC/{ 10377965d9acSmrg s: ::g 10387965d9acSmrg p 10397965d9acSmrg }'`" 10407965d9acSmrg test x"${LIBC}" != x && { 10417965d9acSmrg echo "${UNAME_MACHINE}-pc-linux-${LIBC}" 10427965d9acSmrg exit 10437965d9acSmrg } 10447965d9acSmrg test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; } 104550806d53Smrg ;; 104650806d53Smrg i*86:DYNIX/ptx:4*:*) 104750806d53Smrg # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 104850806d53Smrg # earlier versions are messed up and put the nodename in both 104950806d53Smrg # sysname and nodename. 105050806d53Smrg echo i386-sequent-sysv4 10517965d9acSmrg exit ;; 105250806d53Smrg i*86:UNIX_SV:4.2MP:2.*) 105350806d53Smrg # Unixware is an offshoot of SVR4, but it has its own version 105450806d53Smrg # number series starting with 2... 105550806d53Smrg # I am not positive that other SVR4 systems won't match this, 105650806d53Smrg # I just have to hope. -- rms. 105750806d53Smrg # Use sysv4.2uw... so that sysv4* matches it. 105850806d53Smrg echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 10597965d9acSmrg exit ;; 106050806d53Smrg i*86:OS/2:*:*) 106150806d53Smrg # If we were able to find `uname', then EMX Unix compatibility 106250806d53Smrg # is probably installed. 106350806d53Smrg echo ${UNAME_MACHINE}-pc-os2-emx 10647965d9acSmrg exit ;; 106550806d53Smrg i*86:XTS-300:*:STOP) 106650806d53Smrg echo ${UNAME_MACHINE}-unknown-stop 10677965d9acSmrg exit ;; 106850806d53Smrg i*86:atheos:*:*) 106950806d53Smrg echo ${UNAME_MACHINE}-unknown-atheos 10707965d9acSmrg exit ;; 10717965d9acSmrg i*86:syllable:*:*) 10727965d9acSmrg echo ${UNAME_MACHINE}-pc-syllable 10737965d9acSmrg exit ;; 107450806d53Smrg i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) 107550806d53Smrg echo i386-unknown-lynxos${UNAME_RELEASE} 10767965d9acSmrg exit ;; 107750806d53Smrg i*86:*DOS:*:*) 107850806d53Smrg echo ${UNAME_MACHINE}-pc-msdosdjgpp 10797965d9acSmrg exit ;; 108050806d53Smrg i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 108150806d53Smrg UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 108250806d53Smrg if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 108350806d53Smrg echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 108450806d53Smrg else 108550806d53Smrg echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 108650806d53Smrg fi 10877965d9acSmrg exit ;; 10887965d9acSmrg i*86:*:5:[678]*) 10897965d9acSmrg # UnixWare 7.x, OpenUNIX and OpenServer 6. 109050806d53Smrg case `/bin/uname -X | grep "^Machine"` in 109150806d53Smrg *486*) UNAME_MACHINE=i486 ;; 109250806d53Smrg *Pentium) UNAME_MACHINE=i586 ;; 109350806d53Smrg *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 109450806d53Smrg esac 109550806d53Smrg echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 10967965d9acSmrg exit ;; 109750806d53Smrg i*86:*:3.2:*) 109850806d53Smrg if test -f /usr/options/cb.name; then 109950806d53Smrg UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 110050806d53Smrg echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 110150806d53Smrg elif /bin/uname -X 2>/dev/null >/dev/null ; then 110250806d53Smrg UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 110350806d53Smrg (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 110450806d53Smrg (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 110550806d53Smrg && UNAME_MACHINE=i586 110650806d53Smrg (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 110750806d53Smrg && UNAME_MACHINE=i686 110850806d53Smrg (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 110950806d53Smrg && UNAME_MACHINE=i686 111050806d53Smrg echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 111150806d53Smrg else 111250806d53Smrg echo ${UNAME_MACHINE}-pc-sysv32 111350806d53Smrg fi 11147965d9acSmrg exit ;; 111550806d53Smrg pc:*:*:*) 111650806d53Smrg # Left here for compatibility: 111750806d53Smrg # uname -m prints for DJGPP always 'pc', but it prints nothing about 111850806d53Smrg # the processor, so we play safe by assuming i386. 111950806d53Smrg echo i386-pc-msdosdjgpp 11207965d9acSmrg exit ;; 112150806d53Smrg Intel:Mach:3*:*) 112250806d53Smrg echo i386-pc-mach3 11237965d9acSmrg exit ;; 112450806d53Smrg paragon:*:*:*) 112550806d53Smrg echo i860-intel-osf1 11267965d9acSmrg exit ;; 112750806d53Smrg i860:*:4.*:*) # i860-SVR4 112850806d53Smrg if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 112950806d53Smrg echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 113050806d53Smrg else # Add other i860-SVR4 vendors below as they are discovered. 113150806d53Smrg echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 113250806d53Smrg fi 11337965d9acSmrg exit ;; 113450806d53Smrg mini*:CTIX:SYS*5:*) 113550806d53Smrg # "miniframe" 113650806d53Smrg echo m68010-convergent-sysv 11377965d9acSmrg exit ;; 113850806d53Smrg mc68k:UNIX:SYSTEM5:3.51m) 113950806d53Smrg echo m68k-convergent-sysv 11407965d9acSmrg exit ;; 114150806d53Smrg M680?0:D-NIX:5.3:*) 114250806d53Smrg echo m68k-diab-dnix 11437965d9acSmrg exit ;; 11447965d9acSmrg M68*:*:R3V[5678]*:*) 11457965d9acSmrg test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 11467965d9acSmrg 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) 114750806d53Smrg OS_REL='' 114850806d53Smrg test -r /etc/.relid \ 114950806d53Smrg && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 115050806d53Smrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 11517965d9acSmrg && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 115250806d53Smrg /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 11537965d9acSmrg && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 115450806d53Smrg 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 115550806d53Smrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 11567965d9acSmrg && { echo i486-ncr-sysv4; exit; } ;; 115750806d53Smrg m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 115850806d53Smrg echo m68k-unknown-lynxos${UNAME_RELEASE} 11597965d9acSmrg exit ;; 116050806d53Smrg mc68030:UNIX_System_V:4.*:*) 116150806d53Smrg echo m68k-atari-sysv4 11627965d9acSmrg exit ;; 116350806d53Smrg TSUNAMI:LynxOS:2.*:*) 116450806d53Smrg echo sparc-unknown-lynxos${UNAME_RELEASE} 11657965d9acSmrg exit ;; 116650806d53Smrg rs6000:LynxOS:2.*:*) 116750806d53Smrg echo rs6000-unknown-lynxos${UNAME_RELEASE} 11687965d9acSmrg exit ;; 116950806d53Smrg PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) 117050806d53Smrg echo powerpc-unknown-lynxos${UNAME_RELEASE} 11717965d9acSmrg exit ;; 117250806d53Smrg SM[BE]S:UNIX_SV:*:*) 117350806d53Smrg echo mips-dde-sysv${UNAME_RELEASE} 11747965d9acSmrg exit ;; 117550806d53Smrg RM*:ReliantUNIX-*:*:*) 117650806d53Smrg echo mips-sni-sysv4 11777965d9acSmrg exit ;; 117850806d53Smrg RM*:SINIX-*:*:*) 117950806d53Smrg echo mips-sni-sysv4 11807965d9acSmrg exit ;; 118150806d53Smrg *:SINIX-*:*:*) 118250806d53Smrg if uname -p 2>/dev/null >/dev/null ; then 118350806d53Smrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 118450806d53Smrg echo ${UNAME_MACHINE}-sni-sysv4 118550806d53Smrg else 118650806d53Smrg echo ns32k-sni-sysv 118750806d53Smrg fi 11887965d9acSmrg exit ;; 118950806d53Smrg PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 119050806d53Smrg # says <Richard.M.Bartel@ccMail.Census.GOV> 119150806d53Smrg echo i586-unisys-sysv4 11927965d9acSmrg exit ;; 119350806d53Smrg *:UNIX_System_V:4*:FTX*) 119450806d53Smrg # From Gerald Hewes <hewes@openmarket.com>. 119550806d53Smrg # How about differentiating between stratus architectures? -djm 119650806d53Smrg echo hppa1.1-stratus-sysv4 11977965d9acSmrg exit ;; 119850806d53Smrg *:*:*:FTX*) 119950806d53Smrg # From seanf@swdc.stratus.com. 120050806d53Smrg echo i860-stratus-sysv4 12017965d9acSmrg exit ;; 12027965d9acSmrg i*86:VOS:*:*) 12037965d9acSmrg # From Paul.Green@stratus.com. 12047965d9acSmrg echo ${UNAME_MACHINE}-stratus-vos 12057965d9acSmrg exit ;; 120650806d53Smrg *:VOS:*:*) 120750806d53Smrg # From Paul.Green@stratus.com. 120850806d53Smrg echo hppa1.1-stratus-vos 12097965d9acSmrg exit ;; 121050806d53Smrg mc68*:A/UX:*:*) 121150806d53Smrg echo m68k-apple-aux${UNAME_RELEASE} 12127965d9acSmrg exit ;; 121350806d53Smrg news*:NEWS-OS:6*:*) 121450806d53Smrg echo mips-sony-newsos6 12157965d9acSmrg exit ;; 121650806d53Smrg R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 121750806d53Smrg if [ -d /usr/nec ]; then 121850806d53Smrg echo mips-nec-sysv${UNAME_RELEASE} 121950806d53Smrg else 122050806d53Smrg echo mips-unknown-sysv${UNAME_RELEASE} 122150806d53Smrg fi 12227965d9acSmrg exit ;; 122350806d53Smrg BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 122450806d53Smrg echo powerpc-be-beos 12257965d9acSmrg exit ;; 122650806d53Smrg BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 122750806d53Smrg echo powerpc-apple-beos 12287965d9acSmrg exit ;; 122950806d53Smrg BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 123050806d53Smrg echo i586-pc-beos 12317965d9acSmrg exit ;; 1232b3e38ee4Smrg BePC:Haiku:*:*) # Haiku running on Intel PC compatible. 1233b3e38ee4Smrg echo i586-pc-haiku 1234b3e38ee4Smrg exit ;; 123550806d53Smrg SX-4:SUPER-UX:*:*) 123650806d53Smrg echo sx4-nec-superux${UNAME_RELEASE} 12377965d9acSmrg exit ;; 123850806d53Smrg SX-5:SUPER-UX:*:*) 123950806d53Smrg echo sx5-nec-superux${UNAME_RELEASE} 12407965d9acSmrg exit ;; 124150806d53Smrg SX-6:SUPER-UX:*:*) 124250806d53Smrg echo sx6-nec-superux${UNAME_RELEASE} 12437965d9acSmrg exit ;; 12447965d9acSmrg SX-7:SUPER-UX:*:*) 12457965d9acSmrg echo sx7-nec-superux${UNAME_RELEASE} 12467965d9acSmrg exit ;; 12477965d9acSmrg SX-8:SUPER-UX:*:*) 12487965d9acSmrg echo sx8-nec-superux${UNAME_RELEASE} 12497965d9acSmrg exit ;; 12507965d9acSmrg SX-8R:SUPER-UX:*:*) 12517965d9acSmrg echo sx8r-nec-superux${UNAME_RELEASE} 12527965d9acSmrg exit ;; 125350806d53Smrg Power*:Rhapsody:*:*) 125450806d53Smrg echo powerpc-apple-rhapsody${UNAME_RELEASE} 12557965d9acSmrg exit ;; 125650806d53Smrg *:Rhapsody:*:*) 125750806d53Smrg echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 12587965d9acSmrg exit ;; 125950806d53Smrg *:Darwin:*:*) 12607965d9acSmrg UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 12617965d9acSmrg case $UNAME_PROCESSOR in 12627965d9acSmrg unknown) UNAME_PROCESSOR=powerpc ;; 126350806d53Smrg esac 126450806d53Smrg echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 12657965d9acSmrg exit ;; 126650806d53Smrg *:procnto*:*:* | *:QNX:[0123456789]*:*) 126750806d53Smrg UNAME_PROCESSOR=`uname -p` 126850806d53Smrg if test "$UNAME_PROCESSOR" = "x86"; then 126950806d53Smrg UNAME_PROCESSOR=i386 127050806d53Smrg UNAME_MACHINE=pc 127150806d53Smrg fi 127250806d53Smrg echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 12737965d9acSmrg exit ;; 127450806d53Smrg *:QNX:*:4*) 127550806d53Smrg echo i386-pc-qnx 12767965d9acSmrg exit ;; 12777965d9acSmrg NSE-?:NONSTOP_KERNEL:*:*) 12787965d9acSmrg echo nse-tandem-nsk${UNAME_RELEASE} 12797965d9acSmrg exit ;; 12807965d9acSmrg NSR-?:NONSTOP_KERNEL:*:*) 128150806d53Smrg echo nsr-tandem-nsk${UNAME_RELEASE} 12827965d9acSmrg exit ;; 128350806d53Smrg *:NonStop-UX:*:*) 128450806d53Smrg echo mips-compaq-nonstopux 12857965d9acSmrg exit ;; 128650806d53Smrg BS2000:POSIX*:*:*) 128750806d53Smrg echo bs2000-siemens-sysv 12887965d9acSmrg exit ;; 128950806d53Smrg DS/*:UNIX_System_V:*:*) 129050806d53Smrg echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 12917965d9acSmrg exit ;; 129250806d53Smrg *:Plan9:*:*) 129350806d53Smrg # "uname -m" is not consistent, so use $cputype instead. 386 129450806d53Smrg # is converted to i386 for consistency with other x86 129550806d53Smrg # operating systems. 129650806d53Smrg if test "$cputype" = "386"; then 129750806d53Smrg UNAME_MACHINE=i386 129850806d53Smrg else 129950806d53Smrg UNAME_MACHINE="$cputype" 130050806d53Smrg fi 130150806d53Smrg echo ${UNAME_MACHINE}-unknown-plan9 13027965d9acSmrg exit ;; 130350806d53Smrg *:TOPS-10:*:*) 130450806d53Smrg echo pdp10-unknown-tops10 13057965d9acSmrg exit ;; 130650806d53Smrg *:TENEX:*:*) 130750806d53Smrg echo pdp10-unknown-tenex 13087965d9acSmrg exit ;; 130950806d53Smrg KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 131050806d53Smrg echo pdp10-dec-tops20 13117965d9acSmrg exit ;; 131250806d53Smrg XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 131350806d53Smrg echo pdp10-xkl-tops20 13147965d9acSmrg exit ;; 131550806d53Smrg *:TOPS-20:*:*) 131650806d53Smrg echo pdp10-unknown-tops20 13177965d9acSmrg exit ;; 131850806d53Smrg *:ITS:*:*) 131950806d53Smrg echo pdp10-unknown-its 13207965d9acSmrg exit ;; 132150806d53Smrg SEI:*:*:SEIUX) 132250806d53Smrg echo mips-sei-seiux${UNAME_RELEASE} 13237965d9acSmrg exit ;; 13247965d9acSmrg *:DragonFly:*:*) 13257965d9acSmrg echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 13267965d9acSmrg exit ;; 13277965d9acSmrg *:*VMS:*:*) 13287965d9acSmrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 13297965d9acSmrg case "${UNAME_MACHINE}" in 13307965d9acSmrg A*) echo alpha-dec-vms ; exit ;; 13317965d9acSmrg I*) echo ia64-dec-vms ; exit ;; 13327965d9acSmrg V*) echo vax-dec-vms ; exit ;; 13337965d9acSmrg esac ;; 13347965d9acSmrg *:XENIX:*:SysV) 13357965d9acSmrg echo i386-pc-xenix 13367965d9acSmrg exit ;; 13377965d9acSmrg i*86:skyos:*:*) 13387965d9acSmrg echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' 13397965d9acSmrg exit ;; 13407965d9acSmrg i*86:rdos:*:*) 13417965d9acSmrg echo ${UNAME_MACHINE}-pc-rdos 13427965d9acSmrg exit ;; 134350806d53Smrgesac 134450806d53Smrg 134550806d53Smrg#echo '(No uname command or uname output not recognized.)' 1>&2 134650806d53Smrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 134750806d53Smrg 134850806d53Smrgeval $set_cc_for_build 134950806d53Smrgcat >$dummy.c <<EOF 135050806d53Smrg#ifdef _SEQUENT_ 135150806d53Smrg# include <sys/types.h> 135250806d53Smrg# include <sys/utsname.h> 135350806d53Smrg#endif 135450806d53Smrgmain () 135550806d53Smrg{ 135650806d53Smrg#if defined (sony) 135750806d53Smrg#if defined (MIPSEB) 135850806d53Smrg /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, 135950806d53Smrg I don't know.... */ 136050806d53Smrg printf ("mips-sony-bsd\n"); exit (0); 136150806d53Smrg#else 136250806d53Smrg#include <sys/param.h> 136350806d53Smrg printf ("m68k-sony-newsos%s\n", 136450806d53Smrg#ifdef NEWSOS4 136550806d53Smrg "4" 136650806d53Smrg#else 136750806d53Smrg "" 136850806d53Smrg#endif 136950806d53Smrg ); exit (0); 137050806d53Smrg#endif 137150806d53Smrg#endif 137250806d53Smrg 137350806d53Smrg#if defined (__arm) && defined (__acorn) && defined (__unix) 13747965d9acSmrg printf ("arm-acorn-riscix\n"); exit (0); 137550806d53Smrg#endif 137650806d53Smrg 137750806d53Smrg#if defined (hp300) && !defined (hpux) 137850806d53Smrg printf ("m68k-hp-bsd\n"); exit (0); 137950806d53Smrg#endif 138050806d53Smrg 138150806d53Smrg#if defined (NeXT) 138250806d53Smrg#if !defined (__ARCHITECTURE__) 138350806d53Smrg#define __ARCHITECTURE__ "m68k" 138450806d53Smrg#endif 138550806d53Smrg int version; 138650806d53Smrg version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; 138750806d53Smrg if (version < 4) 138850806d53Smrg printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); 138950806d53Smrg else 139050806d53Smrg printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); 139150806d53Smrg exit (0); 139250806d53Smrg#endif 139350806d53Smrg 139450806d53Smrg#if defined (MULTIMAX) || defined (n16) 139550806d53Smrg#if defined (UMAXV) 139650806d53Smrg printf ("ns32k-encore-sysv\n"); exit (0); 139750806d53Smrg#else 139850806d53Smrg#if defined (CMU) 139950806d53Smrg printf ("ns32k-encore-mach\n"); exit (0); 140050806d53Smrg#else 140150806d53Smrg printf ("ns32k-encore-bsd\n"); exit (0); 140250806d53Smrg#endif 140350806d53Smrg#endif 140450806d53Smrg#endif 140550806d53Smrg 140650806d53Smrg#if defined (__386BSD__) 140750806d53Smrg printf ("i386-pc-bsd\n"); exit (0); 140850806d53Smrg#endif 140950806d53Smrg 141050806d53Smrg#if defined (sequent) 141150806d53Smrg#if defined (i386) 141250806d53Smrg printf ("i386-sequent-dynix\n"); exit (0); 141350806d53Smrg#endif 141450806d53Smrg#if defined (ns32000) 141550806d53Smrg printf ("ns32k-sequent-dynix\n"); exit (0); 141650806d53Smrg#endif 141750806d53Smrg#endif 141850806d53Smrg 141950806d53Smrg#if defined (_SEQUENT_) 142050806d53Smrg struct utsname un; 142150806d53Smrg 142250806d53Smrg uname(&un); 142350806d53Smrg 142450806d53Smrg if (strncmp(un.version, "V2", 2) == 0) { 142550806d53Smrg printf ("i386-sequent-ptx2\n"); exit (0); 142650806d53Smrg } 142750806d53Smrg if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ 142850806d53Smrg printf ("i386-sequent-ptx1\n"); exit (0); 142950806d53Smrg } 143050806d53Smrg printf ("i386-sequent-ptx\n"); exit (0); 143150806d53Smrg 143250806d53Smrg#endif 143350806d53Smrg 143450806d53Smrg#if defined (vax) 143550806d53Smrg# if !defined (ultrix) 143650806d53Smrg# include <sys/param.h> 143750806d53Smrg# if defined (BSD) 143850806d53Smrg# if BSD == 43 143950806d53Smrg printf ("vax-dec-bsd4.3\n"); exit (0); 144050806d53Smrg# else 144150806d53Smrg# if BSD == 199006 144250806d53Smrg printf ("vax-dec-bsd4.3reno\n"); exit (0); 144350806d53Smrg# else 144450806d53Smrg printf ("vax-dec-bsd\n"); exit (0); 144550806d53Smrg# endif 144650806d53Smrg# endif 144750806d53Smrg# else 144850806d53Smrg printf ("vax-dec-bsd\n"); exit (0); 144950806d53Smrg# endif 145050806d53Smrg# else 145150806d53Smrg printf ("vax-dec-ultrix\n"); exit (0); 145250806d53Smrg# endif 145350806d53Smrg#endif 145450806d53Smrg 145550806d53Smrg#if defined (alliant) && defined (i860) 145650806d53Smrg printf ("i860-alliant-bsd\n"); exit (0); 145750806d53Smrg#endif 145850806d53Smrg 145950806d53Smrg exit (1); 146050806d53Smrg} 146150806d53SmrgEOF 146250806d53Smrg 14637965d9acSmrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && 14647965d9acSmrg { echo "$SYSTEM_NAME"; exit; } 146550806d53Smrg 146650806d53Smrg# Apollos put the system type in the environment. 146750806d53Smrg 14687965d9acSmrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } 146950806d53Smrg 147050806d53Smrg# Convex versions that predate uname can use getsysinfo(1) 147150806d53Smrg 147250806d53Smrgif [ -x /usr/convex/getsysinfo ] 147350806d53Smrgthen 147450806d53Smrg case `getsysinfo -f cpu_type` in 147550806d53Smrg c1*) 147650806d53Smrg echo c1-convex-bsd 14777965d9acSmrg exit ;; 147850806d53Smrg c2*) 147950806d53Smrg if getsysinfo -f scalar_acc 148050806d53Smrg then echo c32-convex-bsd 148150806d53Smrg else echo c2-convex-bsd 148250806d53Smrg fi 14837965d9acSmrg exit ;; 148450806d53Smrg c34*) 148550806d53Smrg echo c34-convex-bsd 14867965d9acSmrg exit ;; 148750806d53Smrg c38*) 148850806d53Smrg echo c38-convex-bsd 14897965d9acSmrg exit ;; 149050806d53Smrg c4*) 149150806d53Smrg echo c4-convex-bsd 14927965d9acSmrg exit ;; 149350806d53Smrg esac 149450806d53Smrgfi 149550806d53Smrg 149650806d53Smrgcat >&2 <<EOF 149750806d53Smrg$0: unable to guess system type 149850806d53Smrg 149950806d53SmrgThis script, last modified $timestamp, has failed to recognize 150050806d53Smrgthe operating system you are using. It is advised that you 150150806d53Smrgdownload the most up to date version of the config scripts from 150250806d53Smrg 15037965d9acSmrg http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 15047965d9acSmrgand 15057965d9acSmrg http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 150650806d53Smrg 150750806d53SmrgIf the version you run ($0) is already up to date, please 150850806d53Smrgsend the following data and any information you think might be 150950806d53Smrgpertinent to <config-patches@gnu.org> in order to provide the needed 151050806d53Smrginformation to handle your system. 151150806d53Smrg 151250806d53Smrgconfig.guess timestamp = $timestamp 151350806d53Smrg 151450806d53Smrguname -m = `(uname -m) 2>/dev/null || echo unknown` 151550806d53Smrguname -r = `(uname -r) 2>/dev/null || echo unknown` 151650806d53Smrguname -s = `(uname -s) 2>/dev/null || echo unknown` 151750806d53Smrguname -v = `(uname -v) 2>/dev/null || echo unknown` 151850806d53Smrg 151950806d53Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 152050806d53Smrg/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 152150806d53Smrg 152250806d53Smrghostinfo = `(hostinfo) 2>/dev/null` 152350806d53Smrg/bin/universe = `(/bin/universe) 2>/dev/null` 152450806d53Smrg/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 152550806d53Smrg/bin/arch = `(/bin/arch) 2>/dev/null` 152650806d53Smrg/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 152750806d53Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 152850806d53Smrg 152950806d53SmrgUNAME_MACHINE = ${UNAME_MACHINE} 153050806d53SmrgUNAME_RELEASE = ${UNAME_RELEASE} 153150806d53SmrgUNAME_SYSTEM = ${UNAME_SYSTEM} 153250806d53SmrgUNAME_VERSION = ${UNAME_VERSION} 153350806d53SmrgEOF 153450806d53Smrg 153550806d53Smrgexit 1 153650806d53Smrg 153750806d53Smrg# Local variables: 153850806d53Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 153950806d53Smrg# time-stamp-start: "timestamp='" 154050806d53Smrg# time-stamp-format: "%:y-%02m-%02d" 154150806d53Smrg# time-stamp-end: "'" 154250806d53Smrg# End: 1543