config.guess revision 1ab64890
11ab64890Smrg#! /bin/sh 21ab64890Smrg# Attempt to guess a canonical system name. 31ab64890Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 41ab64890Smrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, 51ab64890Smrg# Inc. 61ab64890Smrg 71ab64890Smrgtimestamp='2007-05-17' 81ab64890Smrg 91ab64890Smrg# This file is free software; you can redistribute it and/or modify it 101ab64890Smrg# under the terms of the GNU General Public License as published by 111ab64890Smrg# the Free Software Foundation; either version 2 of the License, or 121ab64890Smrg# (at your option) any later version. 131ab64890Smrg# 141ab64890Smrg# This program is distributed in the hope that it will be useful, but 151ab64890Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of 161ab64890Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 171ab64890Smrg# General Public License for more details. 181ab64890Smrg# 191ab64890Smrg# You should have received a copy of the GNU General Public License 201ab64890Smrg# along with this program; if not, write to the Free Software 211ab64890Smrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 221ab64890Smrg# 02110-1301, USA. 231ab64890Smrg# 241ab64890Smrg# As a special exception to the GNU General Public License, if you 251ab64890Smrg# distribute this file as part of a program that contains a 261ab64890Smrg# configuration script generated by Autoconf, you may include it under 271ab64890Smrg# the same distribution terms that you use for the rest of that program. 281ab64890Smrg 291ab64890Smrg 301ab64890Smrg# Originally written by Per Bothner <per@bothner.com>. 311ab64890Smrg# Please send patches to <config-patches@gnu.org>. Submit a context 321ab64890Smrg# diff and a properly formatted ChangeLog entry. 331ab64890Smrg# 341ab64890Smrg# This script attempts to guess a canonical system name similar to 351ab64890Smrg# config.sub. If it succeeds, it prints the system name on stdout, and 361ab64890Smrg# exits with 0. Otherwise, it exits with 1. 371ab64890Smrg# 381ab64890Smrg# The plan is that this can be called by configure scripts if you 391ab64890Smrg# don't specify an explicit build system type. 401ab64890Smrg 411ab64890Smrgme=`echo "$0" | sed -e 's,.*/,,'` 421ab64890Smrg 431ab64890Smrgusage="\ 441ab64890SmrgUsage: $0 [OPTION] 451ab64890Smrg 461ab64890SmrgOutput the configuration name of the system \`$me' is run on. 471ab64890Smrg 481ab64890SmrgOperation modes: 491ab64890Smrg -h, --help print this help, then exit 501ab64890Smrg -t, --time-stamp print date of last modification, then exit 511ab64890Smrg -v, --version print version number, then exit 521ab64890Smrg 531ab64890SmrgReport bugs and patches to <config-patches@gnu.org>." 541ab64890Smrg 551ab64890Smrgversion="\ 561ab64890SmrgGNU config.guess ($timestamp) 571ab64890Smrg 581ab64890SmrgOriginally written by Per Bothner. 591ab64890SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 601ab64890SmrgFree Software Foundation, Inc. 611ab64890Smrg 621ab64890SmrgThis is free software; see the source for copying conditions. There is NO 631ab64890Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 641ab64890Smrg 651ab64890Smrghelp=" 661ab64890SmrgTry \`$me --help' for more information." 671ab64890Smrg 681ab64890Smrg# Parse command line 691ab64890Smrgwhile test $# -gt 0 ; do 701ab64890Smrg case $1 in 711ab64890Smrg --time-stamp | --time* | -t ) 721ab64890Smrg echo "$timestamp" ; exit ;; 731ab64890Smrg --version | -v ) 741ab64890Smrg echo "$version" ; exit ;; 751ab64890Smrg --help | --h* | -h ) 761ab64890Smrg echo "$usage"; exit ;; 771ab64890Smrg -- ) # Stop option processing 781ab64890Smrg shift; break ;; 791ab64890Smrg - ) # Use stdin as input. 801ab64890Smrg break ;; 811ab64890Smrg -* ) 821ab64890Smrg echo "$me: invalid option $1$help" >&2 831ab64890Smrg exit 1 ;; 841ab64890Smrg * ) 851ab64890Smrg break ;; 861ab64890Smrg esac 871ab64890Smrgdone 881ab64890Smrg 891ab64890Smrgif test $# != 0; then 901ab64890Smrg echo "$me: too many arguments$help" >&2 911ab64890Smrg exit 1 921ab64890Smrgfi 931ab64890Smrg 941ab64890Smrgtrap 'exit 1' 1 2 15 951ab64890Smrg 961ab64890Smrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 971ab64890Smrg# compiler to aid in system detection is discouraged as it requires 981ab64890Smrg# temporary files to be created and, as you can see below, it is a 991ab64890Smrg# headache to deal with in a portable fashion. 1001ab64890Smrg 1011ab64890Smrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 1021ab64890Smrg# use `HOST_CC' if defined, but it is deprecated. 1031ab64890Smrg 1041ab64890Smrg# Portable tmp directory creation inspired by the Autoconf team. 1051ab64890Smrg 1061ab64890Smrgset_cc_for_build=' 1071ab64890Smrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; 1081ab64890Smrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 1091ab64890Smrg: ${TMPDIR=/tmp} ; 1101ab64890Smrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 1111ab64890Smrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 1121ab64890Smrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || 1131ab64890Smrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; 1141ab64890Smrgdummy=$tmp/dummy ; 1151ab64890Smrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; 1161ab64890Smrgcase $CC_FOR_BUILD,$HOST_CC,$CC in 1171ab64890Smrg ,,) echo "int x;" > $dummy.c ; 1181ab64890Smrg for c in cc gcc c89 c99 ; do 1191ab64890Smrg if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then 1201ab64890Smrg CC_FOR_BUILD="$c"; break ; 1211ab64890Smrg fi ; 1221ab64890Smrg done ; 1231ab64890Smrg if test x"$CC_FOR_BUILD" = x ; then 1241ab64890Smrg CC_FOR_BUILD=no_compiler_found ; 1251ab64890Smrg fi 1261ab64890Smrg ;; 1271ab64890Smrg ,,*) CC_FOR_BUILD=$CC ;; 1281ab64890Smrg ,*,*) CC_FOR_BUILD=$HOST_CC ;; 1291ab64890Smrgesac ; set_cc_for_build= ;' 1301ab64890Smrg 1311ab64890Smrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 1321ab64890Smrg# (ghazi@noc.rutgers.edu 1994-08-24) 1331ab64890Smrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then 1341ab64890Smrg PATH=$PATH:/.attbin ; export PATH 1351ab64890Smrgfi 1361ab64890Smrg 1371ab64890SmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 1381ab64890SmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 1391ab64890SmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 1401ab64890SmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 1411ab64890Smrg 1421ab64890Smrg# Note: order is significant - the case branches are not exclusive. 1431ab64890Smrg 1441ab64890Smrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 1451ab64890Smrg *:NetBSD:*:*) 1461ab64890Smrg # NetBSD (nbsd) targets should (where applicable) match one or 1471ab64890Smrg # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, 1481ab64890Smrg # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 1491ab64890Smrg # switched to ELF, *-*-netbsd* would select the old 1501ab64890Smrg # object file format. This provides both forward 1511ab64890Smrg # compatibility and a consistent mechanism for selecting the 1521ab64890Smrg # object file format. 1531ab64890Smrg # 1541ab64890Smrg # Note: NetBSD doesn't particularly care about the vendor 1551ab64890Smrg # portion of the name. We always set it to "unknown". 1561ab64890Smrg sysctl="sysctl -n hw.machine_arch" 1571ab64890Smrg UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ 1581ab64890Smrg /usr/sbin/$sysctl 2>/dev/null || echo unknown)` 1591ab64890Smrg case "${UNAME_MACHINE_ARCH}" in 1601ab64890Smrg armeb) machine=armeb-unknown ;; 1611ab64890Smrg arm*) machine=arm-unknown ;; 1621ab64890Smrg sh3el) machine=shl-unknown ;; 1631ab64890Smrg sh3eb) machine=sh-unknown ;; 1641ab64890Smrg sh5el) machine=sh5le-unknown ;; 1651ab64890Smrg *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 1661ab64890Smrg esac 1671ab64890Smrg # The Operating System including object format, if it has switched 1681ab64890Smrg # to ELF recently, or will in the future. 1691ab64890Smrg case "${UNAME_MACHINE_ARCH}" in 1701ab64890Smrg arm*|i386|m68k|ns32k|sh3*|sparc|vax) 1711ab64890Smrg eval $set_cc_for_build 1721ab64890Smrg if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 1731ab64890Smrg | grep __ELF__ >/dev/null 1741ab64890Smrg then 1751ab64890Smrg # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 1761ab64890Smrg # Return netbsd for either. FIX? 1771ab64890Smrg os=netbsd 1781ab64890Smrg else 1791ab64890Smrg os=netbsdelf 1801ab64890Smrg fi 1811ab64890Smrg ;; 1821ab64890Smrg *) 1831ab64890Smrg os=netbsd 1841ab64890Smrg ;; 1851ab64890Smrg esac 1861ab64890Smrg # The OS release 1871ab64890Smrg # Debian GNU/NetBSD machines have a different userland, and 1881ab64890Smrg # thus, need a distinct triplet. However, they do not need 1891ab64890Smrg # kernel version information, so it can be replaced with a 1901ab64890Smrg # suitable tag, in the style of linux-gnu. 1911ab64890Smrg case "${UNAME_VERSION}" in 1921ab64890Smrg Debian*) 1931ab64890Smrg release='-gnu' 1941ab64890Smrg ;; 1951ab64890Smrg *) 1961ab64890Smrg release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` 1971ab64890Smrg ;; 1981ab64890Smrg esac 1991ab64890Smrg # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 2001ab64890Smrg # contains redundant information, the shorter form: 2011ab64890Smrg # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 2021ab64890Smrg echo "${machine}-${os}${release}" 2031ab64890Smrg exit ;; 2041ab64890Smrg *:OpenBSD:*:*) 2051ab64890Smrg UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 2061ab64890Smrg echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 2071ab64890Smrg exit ;; 2081ab64890Smrg *:ekkoBSD:*:*) 2091ab64890Smrg echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 2101ab64890Smrg exit ;; 2111ab64890Smrg *:SolidBSD:*:*) 2121ab64890Smrg echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} 2131ab64890Smrg exit ;; 2141ab64890Smrg macppc:MirBSD:*:*) 2151ab64890Smrg echo powerpc-unknown-mirbsd${UNAME_RELEASE} 2161ab64890Smrg exit ;; 2171ab64890Smrg *:MirBSD:*:*) 2181ab64890Smrg echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 2191ab64890Smrg exit ;; 2201ab64890Smrg alpha:OSF1:*:*) 2211ab64890Smrg case $UNAME_RELEASE in 2221ab64890Smrg *4.0) 2231ab64890Smrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 2241ab64890Smrg ;; 2251ab64890Smrg *5.*) 2261ab64890Smrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 2271ab64890Smrg ;; 2281ab64890Smrg esac 2291ab64890Smrg # According to Compaq, /usr/sbin/psrinfo has been available on 2301ab64890Smrg # OSF/1 and Tru64 systems produced since 1995. I hope that 2311ab64890Smrg # covers most systems running today. This code pipes the CPU 2321ab64890Smrg # types through head -n 1, so we only detect the type of CPU 0. 2331ab64890Smrg ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 2341ab64890Smrg case "$ALPHA_CPU_TYPE" in 2351ab64890Smrg "EV4 (21064)") 2361ab64890Smrg UNAME_MACHINE="alpha" ;; 2371ab64890Smrg "EV4.5 (21064)") 2381ab64890Smrg UNAME_MACHINE="alpha" ;; 2391ab64890Smrg "LCA4 (21066/21068)") 2401ab64890Smrg UNAME_MACHINE="alpha" ;; 2411ab64890Smrg "EV5 (21164)") 2421ab64890Smrg UNAME_MACHINE="alphaev5" ;; 2431ab64890Smrg "EV5.6 (21164A)") 2441ab64890Smrg UNAME_MACHINE="alphaev56" ;; 2451ab64890Smrg "EV5.6 (21164PC)") 2461ab64890Smrg UNAME_MACHINE="alphapca56" ;; 2471ab64890Smrg "EV5.7 (21164PC)") 2481ab64890Smrg UNAME_MACHINE="alphapca57" ;; 2491ab64890Smrg "EV6 (21264)") 2501ab64890Smrg UNAME_MACHINE="alphaev6" ;; 2511ab64890Smrg "EV6.7 (21264A)") 2521ab64890Smrg UNAME_MACHINE="alphaev67" ;; 2531ab64890Smrg "EV6.8CB (21264C)") 2541ab64890Smrg UNAME_MACHINE="alphaev68" ;; 2551ab64890Smrg "EV6.8AL (21264B)") 2561ab64890Smrg UNAME_MACHINE="alphaev68" ;; 2571ab64890Smrg "EV6.8CX (21264D)") 2581ab64890Smrg UNAME_MACHINE="alphaev68" ;; 2591ab64890Smrg "EV6.9A (21264/EV69A)") 2601ab64890Smrg UNAME_MACHINE="alphaev69" ;; 2611ab64890Smrg "EV7 (21364)") 2621ab64890Smrg UNAME_MACHINE="alphaev7" ;; 2631ab64890Smrg "EV7.9 (21364A)") 2641ab64890Smrg UNAME_MACHINE="alphaev79" ;; 2651ab64890Smrg esac 2661ab64890Smrg # A Pn.n version is a patched version. 2671ab64890Smrg # A Vn.n version is a released version. 2681ab64890Smrg # A Tn.n version is a released field test version. 2691ab64890Smrg # A Xn.n version is an unreleased experimental baselevel. 2701ab64890Smrg # 1.2 uses "1.2" for uname -r. 2711ab64890Smrg echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 2721ab64890Smrg exit ;; 2731ab64890Smrg Alpha\ *:Windows_NT*:*) 2741ab64890Smrg # How do we know it's Interix rather than the generic POSIX subsystem? 2751ab64890Smrg # Should we change UNAME_MACHINE based on the output of uname instead 2761ab64890Smrg # of the specific Alpha model? 2771ab64890Smrg echo alpha-pc-interix 2781ab64890Smrg exit ;; 2791ab64890Smrg 21064:Windows_NT:50:3) 2801ab64890Smrg echo alpha-dec-winnt3.5 2811ab64890Smrg exit ;; 2821ab64890Smrg Amiga*:UNIX_System_V:4.0:*) 2831ab64890Smrg echo m68k-unknown-sysv4 2841ab64890Smrg exit ;; 2851ab64890Smrg *:[Aa]miga[Oo][Ss]:*:*) 2861ab64890Smrg echo ${UNAME_MACHINE}-unknown-amigaos 2871ab64890Smrg exit ;; 2881ab64890Smrg *:[Mm]orph[Oo][Ss]:*:*) 2891ab64890Smrg echo ${UNAME_MACHINE}-unknown-morphos 2901ab64890Smrg exit ;; 2911ab64890Smrg *:OS/390:*:*) 2921ab64890Smrg echo i370-ibm-openedition 2931ab64890Smrg exit ;; 2941ab64890Smrg *:z/VM:*:*) 2951ab64890Smrg echo s390-ibm-zvmoe 2961ab64890Smrg exit ;; 2971ab64890Smrg *:OS400:*:*) 2981ab64890Smrg echo powerpc-ibm-os400 2991ab64890Smrg exit ;; 3001ab64890Smrg arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 3011ab64890Smrg echo arm-acorn-riscix${UNAME_RELEASE} 3021ab64890Smrg exit ;; 3031ab64890Smrg arm:riscos:*:*|arm:RISCOS:*:*) 3041ab64890Smrg echo arm-unknown-riscos 3051ab64890Smrg exit ;; 3061ab64890Smrg SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 3071ab64890Smrg echo hppa1.1-hitachi-hiuxmpp 3081ab64890Smrg exit ;; 3091ab64890Smrg Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 3101ab64890Smrg # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 3111ab64890Smrg if test "`(/bin/universe) 2>/dev/null`" = att ; then 3121ab64890Smrg echo pyramid-pyramid-sysv3 3131ab64890Smrg else 3141ab64890Smrg echo pyramid-pyramid-bsd 3151ab64890Smrg fi 3161ab64890Smrg exit ;; 3171ab64890Smrg NILE*:*:*:dcosx) 3181ab64890Smrg echo pyramid-pyramid-svr4 3191ab64890Smrg exit ;; 3201ab64890Smrg DRS?6000:unix:4.0:6*) 3211ab64890Smrg echo sparc-icl-nx6 3221ab64890Smrg exit ;; 3231ab64890Smrg DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 3241ab64890Smrg case `/usr/bin/uname -p` in 3251ab64890Smrg sparc) echo sparc-icl-nx7; exit ;; 3261ab64890Smrg esac ;; 3271ab64890Smrg sun4H:SunOS:5.*:*) 3281ab64890Smrg echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 3291ab64890Smrg exit ;; 3301ab64890Smrg sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 3311ab64890Smrg echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 3321ab64890Smrg exit ;; 3331ab64890Smrg i86pc:SunOS:5.*:* | ix86xen:SunOS:5.*:*) 3341ab64890Smrg echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 3351ab64890Smrg exit ;; 3361ab64890Smrg sun4*:SunOS:6*:*) 3371ab64890Smrg # According to config.sub, this is the proper way to canonicalize 3381ab64890Smrg # SunOS6. Hard to guess exactly what SunOS6 will be like, but 3391ab64890Smrg # it's likely to be more like Solaris than SunOS4. 3401ab64890Smrg echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 3411ab64890Smrg exit ;; 3421ab64890Smrg sun4*:SunOS:*:*) 3431ab64890Smrg case "`/usr/bin/arch -k`" in 3441ab64890Smrg Series*|S4*) 3451ab64890Smrg UNAME_RELEASE=`uname -v` 3461ab64890Smrg ;; 3471ab64890Smrg esac 3481ab64890Smrg # Japanese Language versions have a version number like `4.1.3-JL'. 3491ab64890Smrg echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 3501ab64890Smrg exit ;; 3511ab64890Smrg sun3*:SunOS:*:*) 3521ab64890Smrg echo m68k-sun-sunos${UNAME_RELEASE} 3531ab64890Smrg exit ;; 3541ab64890Smrg sun*:*:4.2BSD:*) 3551ab64890Smrg UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 3561ab64890Smrg test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 3571ab64890Smrg case "`/bin/arch`" in 3581ab64890Smrg sun3) 3591ab64890Smrg echo m68k-sun-sunos${UNAME_RELEASE} 3601ab64890Smrg ;; 3611ab64890Smrg sun4) 3621ab64890Smrg echo sparc-sun-sunos${UNAME_RELEASE} 3631ab64890Smrg ;; 3641ab64890Smrg esac 3651ab64890Smrg exit ;; 3661ab64890Smrg aushp:SunOS:*:*) 3671ab64890Smrg echo sparc-auspex-sunos${UNAME_RELEASE} 3681ab64890Smrg exit ;; 3691ab64890Smrg # The situation for MiNT is a little confusing. The machine name 3701ab64890Smrg # can be virtually everything (everything which is not 3711ab64890Smrg # "atarist" or "atariste" at least should have a processor 3721ab64890Smrg # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 3731ab64890Smrg # to the lowercase version "mint" (or "freemint"). Finally 3741ab64890Smrg # the system name "TOS" denotes a system which is actually not 3751ab64890Smrg # MiNT. But MiNT is downward compatible to TOS, so this should 3761ab64890Smrg # be no problem. 3771ab64890Smrg atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 3781ab64890Smrg echo m68k-atari-mint${UNAME_RELEASE} 3791ab64890Smrg exit ;; 3801ab64890Smrg atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 3811ab64890Smrg echo m68k-atari-mint${UNAME_RELEASE} 3821ab64890Smrg exit ;; 3831ab64890Smrg *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 3841ab64890Smrg echo m68k-atari-mint${UNAME_RELEASE} 3851ab64890Smrg exit ;; 3861ab64890Smrg milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 3871ab64890Smrg echo m68k-milan-mint${UNAME_RELEASE} 3881ab64890Smrg exit ;; 3891ab64890Smrg hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 3901ab64890Smrg echo m68k-hades-mint${UNAME_RELEASE} 3911ab64890Smrg exit ;; 3921ab64890Smrg *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 3931ab64890Smrg echo m68k-unknown-mint${UNAME_RELEASE} 3941ab64890Smrg exit ;; 3951ab64890Smrg m68k:machten:*:*) 3961ab64890Smrg echo m68k-apple-machten${UNAME_RELEASE} 3971ab64890Smrg exit ;; 3981ab64890Smrg powerpc:machten:*:*) 3991ab64890Smrg echo powerpc-apple-machten${UNAME_RELEASE} 4001ab64890Smrg exit ;; 4011ab64890Smrg RISC*:Mach:*:*) 4021ab64890Smrg echo mips-dec-mach_bsd4.3 4031ab64890Smrg exit ;; 4041ab64890Smrg RISC*:ULTRIX:*:*) 4051ab64890Smrg echo mips-dec-ultrix${UNAME_RELEASE} 4061ab64890Smrg exit ;; 4071ab64890Smrg VAX*:ULTRIX*:*:*) 4081ab64890Smrg echo vax-dec-ultrix${UNAME_RELEASE} 4091ab64890Smrg exit ;; 4101ab64890Smrg 2020:CLIX:*:* | 2430:CLIX:*:*) 4111ab64890Smrg echo clipper-intergraph-clix${UNAME_RELEASE} 4121ab64890Smrg exit ;; 4131ab64890Smrg mips:*:*:UMIPS | mips:*:*:RISCos) 4141ab64890Smrg eval $set_cc_for_build 4151ab64890Smrg sed 's/^ //' << EOF >$dummy.c 4161ab64890Smrg#ifdef __cplusplus 4171ab64890Smrg#include <stdio.h> /* for printf() prototype */ 4181ab64890Smrg int main (int argc, char *argv[]) { 4191ab64890Smrg#else 4201ab64890Smrg int main (argc, argv) int argc; char *argv[]; { 4211ab64890Smrg#endif 4221ab64890Smrg #if defined (host_mips) && defined (MIPSEB) 4231ab64890Smrg #if defined (SYSTYPE_SYSV) 4241ab64890Smrg printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 4251ab64890Smrg #endif 4261ab64890Smrg #if defined (SYSTYPE_SVR4) 4271ab64890Smrg printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 4281ab64890Smrg #endif 4291ab64890Smrg #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 4301ab64890Smrg printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 4311ab64890Smrg #endif 4321ab64890Smrg #endif 4331ab64890Smrg exit (-1); 4341ab64890Smrg } 4351ab64890SmrgEOF 4361ab64890Smrg $CC_FOR_BUILD -o $dummy $dummy.c && 4371ab64890Smrg dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 4381ab64890Smrg SYSTEM_NAME=`$dummy $dummyarg` && 4391ab64890Smrg { echo "$SYSTEM_NAME"; exit; } 4401ab64890Smrg echo mips-mips-riscos${UNAME_RELEASE} 4411ab64890Smrg exit ;; 4421ab64890Smrg Motorola:PowerMAX_OS:*:*) 4431ab64890Smrg echo powerpc-motorola-powermax 4441ab64890Smrg exit ;; 4451ab64890Smrg Motorola:*:4.3:PL8-*) 4461ab64890Smrg echo powerpc-harris-powermax 4471ab64890Smrg exit ;; 4481ab64890Smrg Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 4491ab64890Smrg echo powerpc-harris-powermax 4501ab64890Smrg exit ;; 4511ab64890Smrg Night_Hawk:Power_UNIX:*:*) 4521ab64890Smrg echo powerpc-harris-powerunix 4531ab64890Smrg exit ;; 4541ab64890Smrg m88k:CX/UX:7*:*) 4551ab64890Smrg echo m88k-harris-cxux7 4561ab64890Smrg exit ;; 4571ab64890Smrg m88k:*:4*:R4*) 4581ab64890Smrg echo m88k-motorola-sysv4 4591ab64890Smrg exit ;; 4601ab64890Smrg m88k:*:3*:R3*) 4611ab64890Smrg echo m88k-motorola-sysv3 4621ab64890Smrg exit ;; 4631ab64890Smrg AViiON:dgux:*:*) 4641ab64890Smrg # DG/UX returns AViiON for all architectures 4651ab64890Smrg UNAME_PROCESSOR=`/usr/bin/uname -p` 4661ab64890Smrg if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 4671ab64890Smrg then 4681ab64890Smrg if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 4691ab64890Smrg [ ${TARGET_BINARY_INTERFACE}x = x ] 4701ab64890Smrg then 4711ab64890Smrg echo m88k-dg-dgux${UNAME_RELEASE} 4721ab64890Smrg else 4731ab64890Smrg echo m88k-dg-dguxbcs${UNAME_RELEASE} 4741ab64890Smrg fi 4751ab64890Smrg else 4761ab64890Smrg echo i586-dg-dgux${UNAME_RELEASE} 4771ab64890Smrg fi 4781ab64890Smrg exit ;; 4791ab64890Smrg M88*:DolphinOS:*:*) # DolphinOS (SVR3) 4801ab64890Smrg echo m88k-dolphin-sysv3 4811ab64890Smrg exit ;; 4821ab64890Smrg M88*:*:R3*:*) 4831ab64890Smrg # Delta 88k system running SVR3 4841ab64890Smrg echo m88k-motorola-sysv3 4851ab64890Smrg exit ;; 4861ab64890Smrg XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 4871ab64890Smrg echo m88k-tektronix-sysv3 4881ab64890Smrg exit ;; 4891ab64890Smrg Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 4901ab64890Smrg echo m68k-tektronix-bsd 4911ab64890Smrg exit ;; 4921ab64890Smrg *:IRIX*:*:*) 4931ab64890Smrg echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 4941ab64890Smrg exit ;; 4951ab64890Smrg ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 4961ab64890Smrg echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 4971ab64890Smrg exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 4981ab64890Smrg i*86:AIX:*:*) 4991ab64890Smrg echo i386-ibm-aix 5001ab64890Smrg exit ;; 5011ab64890Smrg ia64:AIX:*:*) 5021ab64890Smrg if [ -x /usr/bin/oslevel ] ; then 5031ab64890Smrg IBM_REV=`/usr/bin/oslevel` 5041ab64890Smrg else 5051ab64890Smrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 5061ab64890Smrg fi 5071ab64890Smrg echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 5081ab64890Smrg exit ;; 5091ab64890Smrg *:AIX:2:3) 5101ab64890Smrg if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 5111ab64890Smrg eval $set_cc_for_build 5121ab64890Smrg sed 's/^ //' << EOF >$dummy.c 5131ab64890Smrg #include <sys/systemcfg.h> 5141ab64890Smrg 5151ab64890Smrg main() 5161ab64890Smrg { 5171ab64890Smrg if (!__power_pc()) 5181ab64890Smrg exit(1); 5191ab64890Smrg puts("powerpc-ibm-aix3.2.5"); 5201ab64890Smrg exit(0); 5211ab64890Smrg } 5221ab64890SmrgEOF 5231ab64890Smrg if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 5241ab64890Smrg then 5251ab64890Smrg echo "$SYSTEM_NAME" 5261ab64890Smrg else 5271ab64890Smrg echo rs6000-ibm-aix3.2.5 5281ab64890Smrg fi 5291ab64890Smrg elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 5301ab64890Smrg echo rs6000-ibm-aix3.2.4 5311ab64890Smrg else 5321ab64890Smrg echo rs6000-ibm-aix3.2 5331ab64890Smrg fi 5341ab64890Smrg exit ;; 5351ab64890Smrg *:AIX:*:[45]) 5361ab64890Smrg IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 5371ab64890Smrg if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 5381ab64890Smrg IBM_ARCH=rs6000 5391ab64890Smrg else 5401ab64890Smrg IBM_ARCH=powerpc 5411ab64890Smrg fi 5421ab64890Smrg if [ -x /usr/bin/oslevel ] ; then 5431ab64890Smrg IBM_REV=`/usr/bin/oslevel` 5441ab64890Smrg else 5451ab64890Smrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 5461ab64890Smrg fi 5471ab64890Smrg echo ${IBM_ARCH}-ibm-aix${IBM_REV} 5481ab64890Smrg exit ;; 5491ab64890Smrg *:AIX:*:*) 5501ab64890Smrg echo rs6000-ibm-aix 5511ab64890Smrg exit ;; 5521ab64890Smrg ibmrt:4.4BSD:*|romp-ibm:BSD:*) 5531ab64890Smrg echo romp-ibm-bsd4.4 5541ab64890Smrg exit ;; 5551ab64890Smrg ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 5561ab64890Smrg echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 5571ab64890Smrg exit ;; # report: romp-ibm BSD 4.3 5581ab64890Smrg *:BOSX:*:*) 5591ab64890Smrg echo rs6000-bull-bosx 5601ab64890Smrg exit ;; 5611ab64890Smrg DPX/2?00:B.O.S.:*:*) 5621ab64890Smrg echo m68k-bull-sysv3 5631ab64890Smrg exit ;; 5641ab64890Smrg 9000/[34]??:4.3bsd:1.*:*) 5651ab64890Smrg echo m68k-hp-bsd 5661ab64890Smrg exit ;; 5671ab64890Smrg hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 5681ab64890Smrg echo m68k-hp-bsd4.4 5691ab64890Smrg exit ;; 5701ab64890Smrg 9000/[34678]??:HP-UX:*:*) 5711ab64890Smrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 5721ab64890Smrg case "${UNAME_MACHINE}" in 5731ab64890Smrg 9000/31? ) HP_ARCH=m68000 ;; 5741ab64890Smrg 9000/[34]?? ) HP_ARCH=m68k ;; 5751ab64890Smrg 9000/[678][0-9][0-9]) 5761ab64890Smrg if [ -x /usr/bin/getconf ]; then 5771ab64890Smrg sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 5781ab64890Smrg sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 5791ab64890Smrg case "${sc_cpu_version}" in 5801ab64890Smrg 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 5811ab64890Smrg 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 5821ab64890Smrg 532) # CPU_PA_RISC2_0 5831ab64890Smrg case "${sc_kernel_bits}" in 5841ab64890Smrg 32) HP_ARCH="hppa2.0n" ;; 5851ab64890Smrg 64) HP_ARCH="hppa2.0w" ;; 5861ab64890Smrg '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 5871ab64890Smrg esac ;; 5881ab64890Smrg esac 5891ab64890Smrg fi 5901ab64890Smrg if [ "${HP_ARCH}" = "" ]; then 5911ab64890Smrg eval $set_cc_for_build 5921ab64890Smrg sed 's/^ //' << EOF >$dummy.c 5931ab64890Smrg 5941ab64890Smrg #define _HPUX_SOURCE 5951ab64890Smrg #include <stdlib.h> 5961ab64890Smrg #include <unistd.h> 5971ab64890Smrg 5981ab64890Smrg int main () 5991ab64890Smrg { 6001ab64890Smrg #if defined(_SC_KERNEL_BITS) 6011ab64890Smrg long bits = sysconf(_SC_KERNEL_BITS); 6021ab64890Smrg #endif 6031ab64890Smrg long cpu = sysconf (_SC_CPU_VERSION); 6041ab64890Smrg 6051ab64890Smrg switch (cpu) 6061ab64890Smrg { 6071ab64890Smrg case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 6081ab64890Smrg case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 6091ab64890Smrg case CPU_PA_RISC2_0: 6101ab64890Smrg #if defined(_SC_KERNEL_BITS) 6111ab64890Smrg switch (bits) 6121ab64890Smrg { 6131ab64890Smrg case 64: puts ("hppa2.0w"); break; 6141ab64890Smrg case 32: puts ("hppa2.0n"); break; 6151ab64890Smrg default: puts ("hppa2.0"); break; 6161ab64890Smrg } break; 6171ab64890Smrg #else /* !defined(_SC_KERNEL_BITS) */ 6181ab64890Smrg puts ("hppa2.0"); break; 6191ab64890Smrg #endif 6201ab64890Smrg default: puts ("hppa1.0"); break; 6211ab64890Smrg } 6221ab64890Smrg exit (0); 6231ab64890Smrg } 6241ab64890SmrgEOF 6251ab64890Smrg (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 6261ab64890Smrg test -z "$HP_ARCH" && HP_ARCH=hppa 6271ab64890Smrg fi ;; 6281ab64890Smrg esac 6291ab64890Smrg if [ ${HP_ARCH} = "hppa2.0w" ] 6301ab64890Smrg then 6311ab64890Smrg eval $set_cc_for_build 6321ab64890Smrg 6331ab64890Smrg # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 6341ab64890Smrg # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 6351ab64890Smrg # generating 64-bit code. GNU and HP use different nomenclature: 6361ab64890Smrg # 6371ab64890Smrg # $ CC_FOR_BUILD=cc ./config.guess 6381ab64890Smrg # => hppa2.0w-hp-hpux11.23 6391ab64890Smrg # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 6401ab64890Smrg # => hppa64-hp-hpux11.23 6411ab64890Smrg 6421ab64890Smrg if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | 6431ab64890Smrg grep __LP64__ >/dev/null 6441ab64890Smrg then 6451ab64890Smrg HP_ARCH="hppa2.0w" 6461ab64890Smrg else 6471ab64890Smrg HP_ARCH="hppa64" 6481ab64890Smrg fi 6491ab64890Smrg fi 6501ab64890Smrg echo ${HP_ARCH}-hp-hpux${HPUX_REV} 6511ab64890Smrg exit ;; 6521ab64890Smrg ia64:HP-UX:*:*) 6531ab64890Smrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 6541ab64890Smrg echo ia64-hp-hpux${HPUX_REV} 6551ab64890Smrg exit ;; 6561ab64890Smrg 3050*:HI-UX:*:*) 6571ab64890Smrg eval $set_cc_for_build 6581ab64890Smrg sed 's/^ //' << EOF >$dummy.c 6591ab64890Smrg #include <unistd.h> 6601ab64890Smrg int 6611ab64890Smrg main () 6621ab64890Smrg { 6631ab64890Smrg long cpu = sysconf (_SC_CPU_VERSION); 6641ab64890Smrg /* The order matters, because CPU_IS_HP_MC68K erroneously returns 6651ab64890Smrg true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 6661ab64890Smrg results, however. */ 6671ab64890Smrg if (CPU_IS_PA_RISC (cpu)) 6681ab64890Smrg { 6691ab64890Smrg switch (cpu) 6701ab64890Smrg { 6711ab64890Smrg case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 6721ab64890Smrg case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 6731ab64890Smrg case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 6741ab64890Smrg default: puts ("hppa-hitachi-hiuxwe2"); break; 6751ab64890Smrg } 6761ab64890Smrg } 6771ab64890Smrg else if (CPU_IS_HP_MC68K (cpu)) 6781ab64890Smrg puts ("m68k-hitachi-hiuxwe2"); 6791ab64890Smrg else puts ("unknown-hitachi-hiuxwe2"); 6801ab64890Smrg exit (0); 6811ab64890Smrg } 6821ab64890SmrgEOF 6831ab64890Smrg $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 6841ab64890Smrg { echo "$SYSTEM_NAME"; exit; } 6851ab64890Smrg echo unknown-hitachi-hiuxwe2 6861ab64890Smrg exit ;; 6871ab64890Smrg 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 6881ab64890Smrg echo hppa1.1-hp-bsd 6891ab64890Smrg exit ;; 6901ab64890Smrg 9000/8??:4.3bsd:*:*) 6911ab64890Smrg echo hppa1.0-hp-bsd 6921ab64890Smrg exit ;; 6931ab64890Smrg *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 6941ab64890Smrg echo hppa1.0-hp-mpeix 6951ab64890Smrg exit ;; 6961ab64890Smrg hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 6971ab64890Smrg echo hppa1.1-hp-osf 6981ab64890Smrg exit ;; 6991ab64890Smrg hp8??:OSF1:*:*) 7001ab64890Smrg echo hppa1.0-hp-osf 7011ab64890Smrg exit ;; 7021ab64890Smrg i*86:OSF1:*:*) 7031ab64890Smrg if [ -x /usr/sbin/sysversion ] ; then 7041ab64890Smrg echo ${UNAME_MACHINE}-unknown-osf1mk 7051ab64890Smrg else 7061ab64890Smrg echo ${UNAME_MACHINE}-unknown-osf1 7071ab64890Smrg fi 7081ab64890Smrg exit ;; 7091ab64890Smrg parisc*:Lites*:*:*) 7101ab64890Smrg echo hppa1.1-hp-lites 7111ab64890Smrg exit ;; 7121ab64890Smrg C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 7131ab64890Smrg echo c1-convex-bsd 7141ab64890Smrg exit ;; 7151ab64890Smrg C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 7161ab64890Smrg if getsysinfo -f scalar_acc 7171ab64890Smrg then echo c32-convex-bsd 7181ab64890Smrg else echo c2-convex-bsd 7191ab64890Smrg fi 7201ab64890Smrg exit ;; 7211ab64890Smrg C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 7221ab64890Smrg echo c34-convex-bsd 7231ab64890Smrg exit ;; 7241ab64890Smrg C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 7251ab64890Smrg echo c38-convex-bsd 7261ab64890Smrg exit ;; 7271ab64890Smrg C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 7281ab64890Smrg echo c4-convex-bsd 7291ab64890Smrg exit ;; 7301ab64890Smrg CRAY*Y-MP:*:*:*) 7311ab64890Smrg echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7321ab64890Smrg exit ;; 7331ab64890Smrg CRAY*[A-Z]90:*:*:*) 7341ab64890Smrg echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 7351ab64890Smrg | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 7361ab64890Smrg -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 7371ab64890Smrg -e 's/\.[^.]*$/.X/' 7381ab64890Smrg exit ;; 7391ab64890Smrg CRAY*TS:*:*:*) 7401ab64890Smrg echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7411ab64890Smrg exit ;; 7421ab64890Smrg CRAY*T3E:*:*:*) 7431ab64890Smrg echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7441ab64890Smrg exit ;; 7451ab64890Smrg CRAY*SV1:*:*:*) 7461ab64890Smrg echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7471ab64890Smrg exit ;; 7481ab64890Smrg *:UNICOS/mp:*:*) 7491ab64890Smrg echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7501ab64890Smrg exit ;; 7511ab64890Smrg F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 7521ab64890Smrg FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 7531ab64890Smrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 7541ab64890Smrg FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 7551ab64890Smrg echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 7561ab64890Smrg exit ;; 7571ab64890Smrg 5000:UNIX_System_V:4.*:*) 7581ab64890Smrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 7591ab64890Smrg FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` 7601ab64890Smrg echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 7611ab64890Smrg exit ;; 7621ab64890Smrg i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 7631ab64890Smrg echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 7641ab64890Smrg exit ;; 7651ab64890Smrg sparc*:BSD/OS:*:*) 7661ab64890Smrg echo sparc-unknown-bsdi${UNAME_RELEASE} 7671ab64890Smrg exit ;; 7681ab64890Smrg *:BSD/OS:*:*) 7691ab64890Smrg echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 7701ab64890Smrg exit ;; 7711ab64890Smrg *:FreeBSD:*:*) 7721ab64890Smrg case ${UNAME_MACHINE} in 7731ab64890Smrg pc98) 7741ab64890Smrg echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 7751ab64890Smrg amd64) 7761ab64890Smrg echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 7771ab64890Smrg *) 7781ab64890Smrg echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 7791ab64890Smrg esac 7801ab64890Smrg exit ;; 7811ab64890Smrg i*:CYGWIN*:*) 7821ab64890Smrg echo ${UNAME_MACHINE}-pc-cygwin 7831ab64890Smrg exit ;; 7841ab64890Smrg *:MINGW*:*) 7851ab64890Smrg echo ${UNAME_MACHINE}-pc-mingw32 7861ab64890Smrg exit ;; 7871ab64890Smrg i*:windows32*:*) 7881ab64890Smrg # uname -m includes "-pc" on this system. 7891ab64890Smrg echo ${UNAME_MACHINE}-mingw32 7901ab64890Smrg exit ;; 7911ab64890Smrg i*:PW*:*) 7921ab64890Smrg echo ${UNAME_MACHINE}-pc-pw32 7931ab64890Smrg exit ;; 7941ab64890Smrg *:Interix*:[3456]*) 7951ab64890Smrg case ${UNAME_MACHINE} in 7961ab64890Smrg x86) 7971ab64890Smrg echo i586-pc-interix${UNAME_RELEASE} 7981ab64890Smrg exit ;; 7991ab64890Smrg EM64T | authenticamd) 8001ab64890Smrg echo x86_64-unknown-interix${UNAME_RELEASE} 8011ab64890Smrg exit ;; 8021ab64890Smrg esac ;; 8031ab64890Smrg [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 8041ab64890Smrg echo i${UNAME_MACHINE}-pc-mks 8051ab64890Smrg exit ;; 8061ab64890Smrg i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 8071ab64890Smrg # How do we know it's Interix rather than the generic POSIX subsystem? 8081ab64890Smrg # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 8091ab64890Smrg # UNAME_MACHINE based on the output of uname instead of i386? 8101ab64890Smrg echo i586-pc-interix 8111ab64890Smrg exit ;; 8121ab64890Smrg i*:UWIN*:*) 8131ab64890Smrg echo ${UNAME_MACHINE}-pc-uwin 8141ab64890Smrg exit ;; 8151ab64890Smrg amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 8161ab64890Smrg echo x86_64-unknown-cygwin 8171ab64890Smrg exit ;; 8181ab64890Smrg p*:CYGWIN*:*) 8191ab64890Smrg echo powerpcle-unknown-cygwin 8201ab64890Smrg exit ;; 8211ab64890Smrg prep*:SunOS:5.*:*) 8221ab64890Smrg echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 8231ab64890Smrg exit ;; 8241ab64890Smrg *:GNU:*:*) 8251ab64890Smrg # the GNU system 8261ab64890Smrg echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 8271ab64890Smrg exit ;; 8281ab64890Smrg *:GNU/*:*:*) 8291ab64890Smrg # other systems with GNU libc and userland 8301ab64890Smrg echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu 8311ab64890Smrg exit ;; 8321ab64890Smrg i*86:Minix:*:*) 8331ab64890Smrg echo ${UNAME_MACHINE}-pc-minix 8341ab64890Smrg exit ;; 8351ab64890Smrg arm*:Linux:*:*) 8361ab64890Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 8371ab64890Smrg exit ;; 8381ab64890Smrg avr32*:Linux:*:*) 8391ab64890Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 8401ab64890Smrg exit ;; 8411ab64890Smrg cris:Linux:*:*) 8421ab64890Smrg echo cris-axis-linux-gnu 8431ab64890Smrg exit ;; 8441ab64890Smrg crisv32:Linux:*:*) 8451ab64890Smrg echo crisv32-axis-linux-gnu 8461ab64890Smrg exit ;; 8471ab64890Smrg frv:Linux:*:*) 8481ab64890Smrg echo frv-unknown-linux-gnu 8491ab64890Smrg exit ;; 8501ab64890Smrg ia64:Linux:*:*) 8511ab64890Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 8521ab64890Smrg exit ;; 8531ab64890Smrg m32r*:Linux:*:*) 8541ab64890Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 8551ab64890Smrg exit ;; 8561ab64890Smrg m68*:Linux:*:*) 8571ab64890Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 8581ab64890Smrg exit ;; 8591ab64890Smrg mips:Linux:*:*) 8601ab64890Smrg eval $set_cc_for_build 8611ab64890Smrg sed 's/^ //' << EOF >$dummy.c 8621ab64890Smrg #undef CPU 8631ab64890Smrg #undef mips 8641ab64890Smrg #undef mipsel 8651ab64890Smrg #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 8661ab64890Smrg CPU=mipsel 8671ab64890Smrg #else 8681ab64890Smrg #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 8691ab64890Smrg CPU=mips 8701ab64890Smrg #else 8711ab64890Smrg CPU= 8721ab64890Smrg #endif 8731ab64890Smrg #endif 8741ab64890SmrgEOF 8751ab64890Smrg eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 8761ab64890Smrg /^CPU/{ 8771ab64890Smrg s: ::g 8781ab64890Smrg p 8791ab64890Smrg }'`" 8801ab64890Smrg test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 8811ab64890Smrg ;; 8821ab64890Smrg mips64:Linux:*:*) 8831ab64890Smrg eval $set_cc_for_build 8841ab64890Smrg sed 's/^ //' << EOF >$dummy.c 8851ab64890Smrg #undef CPU 8861ab64890Smrg #undef mips64 8871ab64890Smrg #undef mips64el 8881ab64890Smrg #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 8891ab64890Smrg CPU=mips64el 8901ab64890Smrg #else 8911ab64890Smrg #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 8921ab64890Smrg CPU=mips64 8931ab64890Smrg #else 8941ab64890Smrg CPU= 8951ab64890Smrg #endif 8961ab64890Smrg #endif 8971ab64890SmrgEOF 8981ab64890Smrg eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 8991ab64890Smrg /^CPU/{ 9001ab64890Smrg s: ::g 9011ab64890Smrg p 9021ab64890Smrg }'`" 9031ab64890Smrg test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 9041ab64890Smrg ;; 9051ab64890Smrg or32:Linux:*:*) 9061ab64890Smrg echo or32-unknown-linux-gnu 9071ab64890Smrg exit ;; 9081ab64890Smrg ppc:Linux:*:*) 9091ab64890Smrg echo powerpc-unknown-linux-gnu 9101ab64890Smrg exit ;; 9111ab64890Smrg ppc64:Linux:*:*) 9121ab64890Smrg echo powerpc64-unknown-linux-gnu 9131ab64890Smrg exit ;; 9141ab64890Smrg alpha:Linux:*:*) 9151ab64890Smrg case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 9161ab64890Smrg EV5) UNAME_MACHINE=alphaev5 ;; 9171ab64890Smrg EV56) UNAME_MACHINE=alphaev56 ;; 9181ab64890Smrg PCA56) UNAME_MACHINE=alphapca56 ;; 9191ab64890Smrg PCA57) UNAME_MACHINE=alphapca56 ;; 9201ab64890Smrg EV6) UNAME_MACHINE=alphaev6 ;; 9211ab64890Smrg EV67) UNAME_MACHINE=alphaev67 ;; 9221ab64890Smrg EV68*) UNAME_MACHINE=alphaev68 ;; 9231ab64890Smrg esac 9241ab64890Smrg objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null 9251ab64890Smrg if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi 9261ab64890Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 9271ab64890Smrg exit ;; 9281ab64890Smrg parisc:Linux:*:* | hppa:Linux:*:*) 9291ab64890Smrg # Look for CPU level 9301ab64890Smrg case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 9311ab64890Smrg PA7*) echo hppa1.1-unknown-linux-gnu ;; 9321ab64890Smrg PA8*) echo hppa2.0-unknown-linux-gnu ;; 9331ab64890Smrg *) echo hppa-unknown-linux-gnu ;; 9341ab64890Smrg esac 9351ab64890Smrg exit ;; 9361ab64890Smrg parisc64:Linux:*:* | hppa64:Linux:*:*) 9371ab64890Smrg echo hppa64-unknown-linux-gnu 9381ab64890Smrg exit ;; 9391ab64890Smrg s390:Linux:*:* | s390x:Linux:*:*) 9401ab64890Smrg echo ${UNAME_MACHINE}-ibm-linux 9411ab64890Smrg exit ;; 9421ab64890Smrg sh64*:Linux:*:*) 9431ab64890Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 9441ab64890Smrg exit ;; 9451ab64890Smrg sh*:Linux:*:*) 9461ab64890Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 9471ab64890Smrg exit ;; 9481ab64890Smrg sparc:Linux:*:* | sparc64:Linux:*:*) 9491ab64890Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 9501ab64890Smrg exit ;; 9511ab64890Smrg vax:Linux:*:*) 9521ab64890Smrg echo ${UNAME_MACHINE}-dec-linux-gnu 9531ab64890Smrg exit ;; 9541ab64890Smrg x86_64:Linux:*:*) 9551ab64890Smrg echo x86_64-unknown-linux-gnu 9561ab64890Smrg exit ;; 9571ab64890Smrg xtensa:Linux:*:*) 9581ab64890Smrg echo xtensa-unknown-linux-gnu 9591ab64890Smrg exit ;; 9601ab64890Smrg i*86:Linux:*:*) 9611ab64890Smrg # The BFD linker knows what the default object file format is, so 9621ab64890Smrg # first see if it will tell us. cd to the root directory to prevent 9631ab64890Smrg # problems with other programs or directories called `ld' in the path. 9641ab64890Smrg # Set LC_ALL=C to ensure ld outputs messages in English. 9651ab64890Smrg ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ 9661ab64890Smrg | sed -ne '/supported targets:/!d 9671ab64890Smrg s/[ ][ ]*/ /g 9681ab64890Smrg s/.*supported targets: *// 9691ab64890Smrg s/ .*// 9701ab64890Smrg p'` 9711ab64890Smrg case "$ld_supported_targets" in 9721ab64890Smrg elf32-i386) 9731ab64890Smrg TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" 9741ab64890Smrg ;; 9751ab64890Smrg a.out-i386-linux) 9761ab64890Smrg echo "${UNAME_MACHINE}-pc-linux-gnuaout" 9771ab64890Smrg exit ;; 9781ab64890Smrg coff-i386) 9791ab64890Smrg echo "${UNAME_MACHINE}-pc-linux-gnucoff" 9801ab64890Smrg exit ;; 9811ab64890Smrg "") 9821ab64890Smrg # Either a pre-BFD a.out linker (linux-gnuoldld) or 9831ab64890Smrg # one that does not give us useful --help. 9841ab64890Smrg echo "${UNAME_MACHINE}-pc-linux-gnuoldld" 9851ab64890Smrg exit ;; 9861ab64890Smrg esac 9871ab64890Smrg # Determine whether the default compiler is a.out or elf 9881ab64890Smrg eval $set_cc_for_build 9891ab64890Smrg sed 's/^ //' << EOF >$dummy.c 9901ab64890Smrg #include <features.h> 9911ab64890Smrg #ifdef __ELF__ 9921ab64890Smrg # ifdef __GLIBC__ 9931ab64890Smrg # if __GLIBC__ >= 2 9941ab64890Smrg LIBC=gnu 9951ab64890Smrg # else 9961ab64890Smrg LIBC=gnulibc1 9971ab64890Smrg # endif 9981ab64890Smrg # else 9991ab64890Smrg LIBC=gnulibc1 10001ab64890Smrg # endif 10011ab64890Smrg #else 10021ab64890Smrg #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC) 10031ab64890Smrg LIBC=gnu 10041ab64890Smrg #else 10051ab64890Smrg LIBC=gnuaout 10061ab64890Smrg #endif 10071ab64890Smrg #endif 10081ab64890Smrg #ifdef __dietlibc__ 10091ab64890Smrg LIBC=dietlibc 10101ab64890Smrg #endif 10111ab64890SmrgEOF 10121ab64890Smrg eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 10131ab64890Smrg /^LIBC/{ 10141ab64890Smrg s: ::g 10151ab64890Smrg p 10161ab64890Smrg }'`" 10171ab64890Smrg test x"${LIBC}" != x && { 10181ab64890Smrg echo "${UNAME_MACHINE}-pc-linux-${LIBC}" 10191ab64890Smrg exit 10201ab64890Smrg } 10211ab64890Smrg test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; } 10221ab64890Smrg ;; 10231ab64890Smrg i*86:DYNIX/ptx:4*:*) 10241ab64890Smrg # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 10251ab64890Smrg # earlier versions are messed up and put the nodename in both 10261ab64890Smrg # sysname and nodename. 10271ab64890Smrg echo i386-sequent-sysv4 10281ab64890Smrg exit ;; 10291ab64890Smrg i*86:UNIX_SV:4.2MP:2.*) 10301ab64890Smrg # Unixware is an offshoot of SVR4, but it has its own version 10311ab64890Smrg # number series starting with 2... 10321ab64890Smrg # I am not positive that other SVR4 systems won't match this, 10331ab64890Smrg # I just have to hope. -- rms. 10341ab64890Smrg # Use sysv4.2uw... so that sysv4* matches it. 10351ab64890Smrg echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 10361ab64890Smrg exit ;; 10371ab64890Smrg i*86:OS/2:*:*) 10381ab64890Smrg # If we were able to find `uname', then EMX Unix compatibility 10391ab64890Smrg # is probably installed. 10401ab64890Smrg echo ${UNAME_MACHINE}-pc-os2-emx 10411ab64890Smrg exit ;; 10421ab64890Smrg i*86:XTS-300:*:STOP) 10431ab64890Smrg echo ${UNAME_MACHINE}-unknown-stop 10441ab64890Smrg exit ;; 10451ab64890Smrg i*86:atheos:*:*) 10461ab64890Smrg echo ${UNAME_MACHINE}-unknown-atheos 10471ab64890Smrg exit ;; 10481ab64890Smrg i*86:syllable:*:*) 10491ab64890Smrg echo ${UNAME_MACHINE}-pc-syllable 10501ab64890Smrg exit ;; 10511ab64890Smrg i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) 10521ab64890Smrg echo i386-unknown-lynxos${UNAME_RELEASE} 10531ab64890Smrg exit ;; 10541ab64890Smrg i*86:*DOS:*:*) 10551ab64890Smrg echo ${UNAME_MACHINE}-pc-msdosdjgpp 10561ab64890Smrg exit ;; 10571ab64890Smrg i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 10581ab64890Smrg UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 10591ab64890Smrg if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 10601ab64890Smrg echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 10611ab64890Smrg else 10621ab64890Smrg echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 10631ab64890Smrg fi 10641ab64890Smrg exit ;; 10651ab64890Smrg i*86:*:5:[678]*) 10661ab64890Smrg # UnixWare 7.x, OpenUNIX and OpenServer 6. 10671ab64890Smrg case `/bin/uname -X | grep "^Machine"` in 10681ab64890Smrg *486*) UNAME_MACHINE=i486 ;; 10691ab64890Smrg *Pentium) UNAME_MACHINE=i586 ;; 10701ab64890Smrg *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 10711ab64890Smrg esac 10721ab64890Smrg echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 10731ab64890Smrg exit ;; 10741ab64890Smrg i*86:*:3.2:*) 10751ab64890Smrg if test -f /usr/options/cb.name; then 10761ab64890Smrg UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 10771ab64890Smrg echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 10781ab64890Smrg elif /bin/uname -X 2>/dev/null >/dev/null ; then 10791ab64890Smrg UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 10801ab64890Smrg (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 10811ab64890Smrg (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 10821ab64890Smrg && UNAME_MACHINE=i586 10831ab64890Smrg (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 10841ab64890Smrg && UNAME_MACHINE=i686 10851ab64890Smrg (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 10861ab64890Smrg && UNAME_MACHINE=i686 10871ab64890Smrg echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 10881ab64890Smrg else 10891ab64890Smrg echo ${UNAME_MACHINE}-pc-sysv32 10901ab64890Smrg fi 10911ab64890Smrg exit ;; 10921ab64890Smrg pc:*:*:*) 10931ab64890Smrg # Left here for compatibility: 10941ab64890Smrg # uname -m prints for DJGPP always 'pc', but it prints nothing about 10951ab64890Smrg # the processor, so we play safe by assuming i386. 10961ab64890Smrg echo i386-pc-msdosdjgpp 10971ab64890Smrg exit ;; 10981ab64890Smrg Intel:Mach:3*:*) 10991ab64890Smrg echo i386-pc-mach3 11001ab64890Smrg exit ;; 11011ab64890Smrg paragon:*:*:*) 11021ab64890Smrg echo i860-intel-osf1 11031ab64890Smrg exit ;; 11041ab64890Smrg i860:*:4.*:*) # i860-SVR4 11051ab64890Smrg if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 11061ab64890Smrg echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 11071ab64890Smrg else # Add other i860-SVR4 vendors below as they are discovered. 11081ab64890Smrg echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 11091ab64890Smrg fi 11101ab64890Smrg exit ;; 11111ab64890Smrg mini*:CTIX:SYS*5:*) 11121ab64890Smrg # "miniframe" 11131ab64890Smrg echo m68010-convergent-sysv 11141ab64890Smrg exit ;; 11151ab64890Smrg mc68k:UNIX:SYSTEM5:3.51m) 11161ab64890Smrg echo m68k-convergent-sysv 11171ab64890Smrg exit ;; 11181ab64890Smrg M680?0:D-NIX:5.3:*) 11191ab64890Smrg echo m68k-diab-dnix 11201ab64890Smrg exit ;; 11211ab64890Smrg M68*:*:R3V[5678]*:*) 11221ab64890Smrg test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 11231ab64890Smrg 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) 11241ab64890Smrg OS_REL='' 11251ab64890Smrg test -r /etc/.relid \ 11261ab64890Smrg && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 11271ab64890Smrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 11281ab64890Smrg && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 11291ab64890Smrg /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 11301ab64890Smrg && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 11311ab64890Smrg 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 11321ab64890Smrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 11331ab64890Smrg && { echo i486-ncr-sysv4; exit; } ;; 11341ab64890Smrg m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 11351ab64890Smrg echo m68k-unknown-lynxos${UNAME_RELEASE} 11361ab64890Smrg exit ;; 11371ab64890Smrg mc68030:UNIX_System_V:4.*:*) 11381ab64890Smrg echo m68k-atari-sysv4 11391ab64890Smrg exit ;; 11401ab64890Smrg TSUNAMI:LynxOS:2.*:*) 11411ab64890Smrg echo sparc-unknown-lynxos${UNAME_RELEASE} 11421ab64890Smrg exit ;; 11431ab64890Smrg rs6000:LynxOS:2.*:*) 11441ab64890Smrg echo rs6000-unknown-lynxos${UNAME_RELEASE} 11451ab64890Smrg exit ;; 11461ab64890Smrg PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) 11471ab64890Smrg echo powerpc-unknown-lynxos${UNAME_RELEASE} 11481ab64890Smrg exit ;; 11491ab64890Smrg SM[BE]S:UNIX_SV:*:*) 11501ab64890Smrg echo mips-dde-sysv${UNAME_RELEASE} 11511ab64890Smrg exit ;; 11521ab64890Smrg RM*:ReliantUNIX-*:*:*) 11531ab64890Smrg echo mips-sni-sysv4 11541ab64890Smrg exit ;; 11551ab64890Smrg RM*:SINIX-*:*:*) 11561ab64890Smrg echo mips-sni-sysv4 11571ab64890Smrg exit ;; 11581ab64890Smrg *:SINIX-*:*:*) 11591ab64890Smrg if uname -p 2>/dev/null >/dev/null ; then 11601ab64890Smrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 11611ab64890Smrg echo ${UNAME_MACHINE}-sni-sysv4 11621ab64890Smrg else 11631ab64890Smrg echo ns32k-sni-sysv 11641ab64890Smrg fi 11651ab64890Smrg exit ;; 11661ab64890Smrg PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 11671ab64890Smrg # says <Richard.M.Bartel@ccMail.Census.GOV> 11681ab64890Smrg echo i586-unisys-sysv4 11691ab64890Smrg exit ;; 11701ab64890Smrg *:UNIX_System_V:4*:FTX*) 11711ab64890Smrg # From Gerald Hewes <hewes@openmarket.com>. 11721ab64890Smrg # How about differentiating between stratus architectures? -djm 11731ab64890Smrg echo hppa1.1-stratus-sysv4 11741ab64890Smrg exit ;; 11751ab64890Smrg *:*:*:FTX*) 11761ab64890Smrg # From seanf@swdc.stratus.com. 11771ab64890Smrg echo i860-stratus-sysv4 11781ab64890Smrg exit ;; 11791ab64890Smrg i*86:VOS:*:*) 11801ab64890Smrg # From Paul.Green@stratus.com. 11811ab64890Smrg echo ${UNAME_MACHINE}-stratus-vos 11821ab64890Smrg exit ;; 11831ab64890Smrg *:VOS:*:*) 11841ab64890Smrg # From Paul.Green@stratus.com. 11851ab64890Smrg echo hppa1.1-stratus-vos 11861ab64890Smrg exit ;; 11871ab64890Smrg mc68*:A/UX:*:*) 11881ab64890Smrg echo m68k-apple-aux${UNAME_RELEASE} 11891ab64890Smrg exit ;; 11901ab64890Smrg news*:NEWS-OS:6*:*) 11911ab64890Smrg echo mips-sony-newsos6 11921ab64890Smrg exit ;; 11931ab64890Smrg R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 11941ab64890Smrg if [ -d /usr/nec ]; then 11951ab64890Smrg echo mips-nec-sysv${UNAME_RELEASE} 11961ab64890Smrg else 11971ab64890Smrg echo mips-unknown-sysv${UNAME_RELEASE} 11981ab64890Smrg fi 11991ab64890Smrg exit ;; 12001ab64890Smrg BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 12011ab64890Smrg echo powerpc-be-beos 12021ab64890Smrg exit ;; 12031ab64890Smrg BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 12041ab64890Smrg echo powerpc-apple-beos 12051ab64890Smrg exit ;; 12061ab64890Smrg BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 12071ab64890Smrg echo i586-pc-beos 12081ab64890Smrg exit ;; 12091ab64890Smrg SX-4:SUPER-UX:*:*) 12101ab64890Smrg echo sx4-nec-superux${UNAME_RELEASE} 12111ab64890Smrg exit ;; 12121ab64890Smrg SX-5:SUPER-UX:*:*) 12131ab64890Smrg echo sx5-nec-superux${UNAME_RELEASE} 12141ab64890Smrg exit ;; 12151ab64890Smrg SX-6:SUPER-UX:*:*) 12161ab64890Smrg echo sx6-nec-superux${UNAME_RELEASE} 12171ab64890Smrg exit ;; 12181ab64890Smrg SX-7:SUPER-UX:*:*) 12191ab64890Smrg echo sx7-nec-superux${UNAME_RELEASE} 12201ab64890Smrg exit ;; 12211ab64890Smrg SX-8:SUPER-UX:*:*) 12221ab64890Smrg echo sx8-nec-superux${UNAME_RELEASE} 12231ab64890Smrg exit ;; 12241ab64890Smrg SX-8R:SUPER-UX:*:*) 12251ab64890Smrg echo sx8r-nec-superux${UNAME_RELEASE} 12261ab64890Smrg exit ;; 12271ab64890Smrg Power*:Rhapsody:*:*) 12281ab64890Smrg echo powerpc-apple-rhapsody${UNAME_RELEASE} 12291ab64890Smrg exit ;; 12301ab64890Smrg *:Rhapsody:*:*) 12311ab64890Smrg echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 12321ab64890Smrg exit ;; 12331ab64890Smrg *:Darwin:*:*) 12341ab64890Smrg UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 12351ab64890Smrg case $UNAME_PROCESSOR in 12361ab64890Smrg unknown) UNAME_PROCESSOR=powerpc ;; 12371ab64890Smrg esac 12381ab64890Smrg echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 12391ab64890Smrg exit ;; 12401ab64890Smrg *:procnto*:*:* | *:QNX:[0123456789]*:*) 12411ab64890Smrg UNAME_PROCESSOR=`uname -p` 12421ab64890Smrg if test "$UNAME_PROCESSOR" = "x86"; then 12431ab64890Smrg UNAME_PROCESSOR=i386 12441ab64890Smrg UNAME_MACHINE=pc 12451ab64890Smrg fi 12461ab64890Smrg echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 12471ab64890Smrg exit ;; 12481ab64890Smrg *:QNX:*:4*) 12491ab64890Smrg echo i386-pc-qnx 12501ab64890Smrg exit ;; 12511ab64890Smrg NSE-?:NONSTOP_KERNEL:*:*) 12521ab64890Smrg echo nse-tandem-nsk${UNAME_RELEASE} 12531ab64890Smrg exit ;; 12541ab64890Smrg NSR-?:NONSTOP_KERNEL:*:*) 12551ab64890Smrg echo nsr-tandem-nsk${UNAME_RELEASE} 12561ab64890Smrg exit ;; 12571ab64890Smrg *:NonStop-UX:*:*) 12581ab64890Smrg echo mips-compaq-nonstopux 12591ab64890Smrg exit ;; 12601ab64890Smrg BS2000:POSIX*:*:*) 12611ab64890Smrg echo bs2000-siemens-sysv 12621ab64890Smrg exit ;; 12631ab64890Smrg DS/*:UNIX_System_V:*:*) 12641ab64890Smrg echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 12651ab64890Smrg exit ;; 12661ab64890Smrg *:Plan9:*:*) 12671ab64890Smrg # "uname -m" is not consistent, so use $cputype instead. 386 12681ab64890Smrg # is converted to i386 for consistency with other x86 12691ab64890Smrg # operating systems. 12701ab64890Smrg if test "$cputype" = "386"; then 12711ab64890Smrg UNAME_MACHINE=i386 12721ab64890Smrg else 12731ab64890Smrg UNAME_MACHINE="$cputype" 12741ab64890Smrg fi 12751ab64890Smrg echo ${UNAME_MACHINE}-unknown-plan9 12761ab64890Smrg exit ;; 12771ab64890Smrg *:TOPS-10:*:*) 12781ab64890Smrg echo pdp10-unknown-tops10 12791ab64890Smrg exit ;; 12801ab64890Smrg *:TENEX:*:*) 12811ab64890Smrg echo pdp10-unknown-tenex 12821ab64890Smrg exit ;; 12831ab64890Smrg KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 12841ab64890Smrg echo pdp10-dec-tops20 12851ab64890Smrg exit ;; 12861ab64890Smrg XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 12871ab64890Smrg echo pdp10-xkl-tops20 12881ab64890Smrg exit ;; 12891ab64890Smrg *:TOPS-20:*:*) 12901ab64890Smrg echo pdp10-unknown-tops20 12911ab64890Smrg exit ;; 12921ab64890Smrg *:ITS:*:*) 12931ab64890Smrg echo pdp10-unknown-its 12941ab64890Smrg exit ;; 12951ab64890Smrg SEI:*:*:SEIUX) 12961ab64890Smrg echo mips-sei-seiux${UNAME_RELEASE} 12971ab64890Smrg exit ;; 12981ab64890Smrg *:DragonFly:*:*) 12991ab64890Smrg echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 13001ab64890Smrg exit ;; 13011ab64890Smrg *:*VMS:*:*) 13021ab64890Smrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 13031ab64890Smrg case "${UNAME_MACHINE}" in 13041ab64890Smrg A*) echo alpha-dec-vms ; exit ;; 13051ab64890Smrg I*) echo ia64-dec-vms ; exit ;; 13061ab64890Smrg V*) echo vax-dec-vms ; exit ;; 13071ab64890Smrg esac ;; 13081ab64890Smrg *:XENIX:*:SysV) 13091ab64890Smrg echo i386-pc-xenix 13101ab64890Smrg exit ;; 13111ab64890Smrg i*86:skyos:*:*) 13121ab64890Smrg echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' 13131ab64890Smrg exit ;; 13141ab64890Smrg i*86:rdos:*:*) 13151ab64890Smrg echo ${UNAME_MACHINE}-pc-rdos 13161ab64890Smrg exit ;; 13171ab64890Smrgesac 13181ab64890Smrg 13191ab64890Smrg#echo '(No uname command or uname output not recognized.)' 1>&2 13201ab64890Smrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 13211ab64890Smrg 13221ab64890Smrgeval $set_cc_for_build 13231ab64890Smrgcat >$dummy.c <<EOF 13241ab64890Smrg#ifdef _SEQUENT_ 13251ab64890Smrg# include <sys/types.h> 13261ab64890Smrg# include <sys/utsname.h> 13271ab64890Smrg#endif 13281ab64890Smrgmain () 13291ab64890Smrg{ 13301ab64890Smrg#if defined (sony) 13311ab64890Smrg#if defined (MIPSEB) 13321ab64890Smrg /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, 13331ab64890Smrg I don't know.... */ 13341ab64890Smrg printf ("mips-sony-bsd\n"); exit (0); 13351ab64890Smrg#else 13361ab64890Smrg#include <sys/param.h> 13371ab64890Smrg printf ("m68k-sony-newsos%s\n", 13381ab64890Smrg#ifdef NEWSOS4 13391ab64890Smrg "4" 13401ab64890Smrg#else 13411ab64890Smrg "" 13421ab64890Smrg#endif 13431ab64890Smrg ); exit (0); 13441ab64890Smrg#endif 13451ab64890Smrg#endif 13461ab64890Smrg 13471ab64890Smrg#if defined (__arm) && defined (__acorn) && defined (__unix) 13481ab64890Smrg printf ("arm-acorn-riscix\n"); exit (0); 13491ab64890Smrg#endif 13501ab64890Smrg 13511ab64890Smrg#if defined (hp300) && !defined (hpux) 13521ab64890Smrg printf ("m68k-hp-bsd\n"); exit (0); 13531ab64890Smrg#endif 13541ab64890Smrg 13551ab64890Smrg#if defined (NeXT) 13561ab64890Smrg#if !defined (__ARCHITECTURE__) 13571ab64890Smrg#define __ARCHITECTURE__ "m68k" 13581ab64890Smrg#endif 13591ab64890Smrg int version; 13601ab64890Smrg version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; 13611ab64890Smrg if (version < 4) 13621ab64890Smrg printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); 13631ab64890Smrg else 13641ab64890Smrg printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); 13651ab64890Smrg exit (0); 13661ab64890Smrg#endif 13671ab64890Smrg 13681ab64890Smrg#if defined (MULTIMAX) || defined (n16) 13691ab64890Smrg#if defined (UMAXV) 13701ab64890Smrg printf ("ns32k-encore-sysv\n"); exit (0); 13711ab64890Smrg#else 13721ab64890Smrg#if defined (CMU) 13731ab64890Smrg printf ("ns32k-encore-mach\n"); exit (0); 13741ab64890Smrg#else 13751ab64890Smrg printf ("ns32k-encore-bsd\n"); exit (0); 13761ab64890Smrg#endif 13771ab64890Smrg#endif 13781ab64890Smrg#endif 13791ab64890Smrg 13801ab64890Smrg#if defined (__386BSD__) 13811ab64890Smrg printf ("i386-pc-bsd\n"); exit (0); 13821ab64890Smrg#endif 13831ab64890Smrg 13841ab64890Smrg#if defined (sequent) 13851ab64890Smrg#if defined (i386) 13861ab64890Smrg printf ("i386-sequent-dynix\n"); exit (0); 13871ab64890Smrg#endif 13881ab64890Smrg#if defined (ns32000) 13891ab64890Smrg printf ("ns32k-sequent-dynix\n"); exit (0); 13901ab64890Smrg#endif 13911ab64890Smrg#endif 13921ab64890Smrg 13931ab64890Smrg#if defined (_SEQUENT_) 13941ab64890Smrg struct utsname un; 13951ab64890Smrg 13961ab64890Smrg uname(&un); 13971ab64890Smrg 13981ab64890Smrg if (strncmp(un.version, "V2", 2) == 0) { 13991ab64890Smrg printf ("i386-sequent-ptx2\n"); exit (0); 14001ab64890Smrg } 14011ab64890Smrg if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ 14021ab64890Smrg printf ("i386-sequent-ptx1\n"); exit (0); 14031ab64890Smrg } 14041ab64890Smrg printf ("i386-sequent-ptx\n"); exit (0); 14051ab64890Smrg 14061ab64890Smrg#endif 14071ab64890Smrg 14081ab64890Smrg#if defined (vax) 14091ab64890Smrg# if !defined (ultrix) 14101ab64890Smrg# include <sys/param.h> 14111ab64890Smrg# if defined (BSD) 14121ab64890Smrg# if BSD == 43 14131ab64890Smrg printf ("vax-dec-bsd4.3\n"); exit (0); 14141ab64890Smrg# else 14151ab64890Smrg# if BSD == 199006 14161ab64890Smrg printf ("vax-dec-bsd4.3reno\n"); exit (0); 14171ab64890Smrg# else 14181ab64890Smrg printf ("vax-dec-bsd\n"); exit (0); 14191ab64890Smrg# endif 14201ab64890Smrg# endif 14211ab64890Smrg# else 14221ab64890Smrg printf ("vax-dec-bsd\n"); exit (0); 14231ab64890Smrg# endif 14241ab64890Smrg# else 14251ab64890Smrg printf ("vax-dec-ultrix\n"); exit (0); 14261ab64890Smrg# endif 14271ab64890Smrg#endif 14281ab64890Smrg 14291ab64890Smrg#if defined (alliant) && defined (i860) 14301ab64890Smrg printf ("i860-alliant-bsd\n"); exit (0); 14311ab64890Smrg#endif 14321ab64890Smrg 14331ab64890Smrg exit (1); 14341ab64890Smrg} 14351ab64890SmrgEOF 14361ab64890Smrg 14371ab64890Smrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && 14381ab64890Smrg { echo "$SYSTEM_NAME"; exit; } 14391ab64890Smrg 14401ab64890Smrg# Apollos put the system type in the environment. 14411ab64890Smrg 14421ab64890Smrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } 14431ab64890Smrg 14441ab64890Smrg# Convex versions that predate uname can use getsysinfo(1) 14451ab64890Smrg 14461ab64890Smrgif [ -x /usr/convex/getsysinfo ] 14471ab64890Smrgthen 14481ab64890Smrg case `getsysinfo -f cpu_type` in 14491ab64890Smrg c1*) 14501ab64890Smrg echo c1-convex-bsd 14511ab64890Smrg exit ;; 14521ab64890Smrg c2*) 14531ab64890Smrg if getsysinfo -f scalar_acc 14541ab64890Smrg then echo c32-convex-bsd 14551ab64890Smrg else echo c2-convex-bsd 14561ab64890Smrg fi 14571ab64890Smrg exit ;; 14581ab64890Smrg c34*) 14591ab64890Smrg echo c34-convex-bsd 14601ab64890Smrg exit ;; 14611ab64890Smrg c38*) 14621ab64890Smrg echo c38-convex-bsd 14631ab64890Smrg exit ;; 14641ab64890Smrg c4*) 14651ab64890Smrg echo c4-convex-bsd 14661ab64890Smrg exit ;; 14671ab64890Smrg esac 14681ab64890Smrgfi 14691ab64890Smrg 14701ab64890Smrgcat >&2 <<EOF 14711ab64890Smrg$0: unable to guess system type 14721ab64890Smrg 14731ab64890SmrgThis script, last modified $timestamp, has failed to recognize 14741ab64890Smrgthe operating system you are using. It is advised that you 14751ab64890Smrgdownload the most up to date version of the config scripts from 14761ab64890Smrg 14771ab64890Smrg http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess 14781ab64890Smrgand 14791ab64890Smrg http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub 14801ab64890Smrg 14811ab64890SmrgIf the version you run ($0) is already up to date, please 14821ab64890Smrgsend the following data and any information you think might be 14831ab64890Smrgpertinent to <config-patches@gnu.org> in order to provide the needed 14841ab64890Smrginformation to handle your system. 14851ab64890Smrg 14861ab64890Smrgconfig.guess timestamp = $timestamp 14871ab64890Smrg 14881ab64890Smrguname -m = `(uname -m) 2>/dev/null || echo unknown` 14891ab64890Smrguname -r = `(uname -r) 2>/dev/null || echo unknown` 14901ab64890Smrguname -s = `(uname -s) 2>/dev/null || echo unknown` 14911ab64890Smrguname -v = `(uname -v) 2>/dev/null || echo unknown` 14921ab64890Smrg 14931ab64890Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 14941ab64890Smrg/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 14951ab64890Smrg 14961ab64890Smrghostinfo = `(hostinfo) 2>/dev/null` 14971ab64890Smrg/bin/universe = `(/bin/universe) 2>/dev/null` 14981ab64890Smrg/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 14991ab64890Smrg/bin/arch = `(/bin/arch) 2>/dev/null` 15001ab64890Smrg/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 15011ab64890Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 15021ab64890Smrg 15031ab64890SmrgUNAME_MACHINE = ${UNAME_MACHINE} 15041ab64890SmrgUNAME_RELEASE = ${UNAME_RELEASE} 15051ab64890SmrgUNAME_SYSTEM = ${UNAME_SYSTEM} 15061ab64890SmrgUNAME_VERSION = ${UNAME_VERSION} 15071ab64890SmrgEOF 15081ab64890Smrg 15091ab64890Smrgexit 1 15101ab64890Smrg 15111ab64890Smrg# Local variables: 15121ab64890Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 15131ab64890Smrg# time-stamp-start: "timestamp='" 15141ab64890Smrg# time-stamp-format: "%:y-%02m-%02d" 15151ab64890Smrg# time-stamp-end: "'" 15161ab64890Smrg# End: 1517