1b528cefcSMark Murray#! /bin/sh 2b528cefcSMark Murray# Attempt to guess a canonical system name. 38373020dSJacques Vidrine# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4*ae771770SStanislav Sedov# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 5*ae771770SStanislav Sedov# Free Software Foundation, Inc. 65e9cd1aeSAssar Westerlund 7*ae771770SStanislav Sedovtimestamp='2009-11-20' 85e9cd1aeSAssar Westerlund 9b528cefcSMark Murray# This file is free software; you can redistribute it and/or modify it 10b528cefcSMark Murray# under the terms of the GNU General Public License as published by 11b528cefcSMark Murray# the Free Software Foundation; either version 2 of the License, or 12b528cefcSMark Murray# (at your option) any later version. 13b528cefcSMark Murray# 14b528cefcSMark Murray# This program is distributed in the hope that it will be useful, but 15b528cefcSMark Murray# WITHOUT ANY WARRANTY; without even the implied warranty of 16b528cefcSMark Murray# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 17b528cefcSMark Murray# General Public License for more details. 18b528cefcSMark Murray# 19b528cefcSMark Murray# You should have received a copy of the GNU General Public License 20b528cefcSMark Murray# along with this program; if not, write to the Free Software 21c19800e8SDoug Rabson# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 22c19800e8SDoug Rabson# 02110-1301, USA. 23b528cefcSMark Murray# 24b528cefcSMark Murray# As a special exception to the GNU General Public License, if you 25b528cefcSMark Murray# distribute this file as part of a program that contains a 26b528cefcSMark Murray# configuration script generated by Autoconf, you may include it under 27b528cefcSMark Murray# the same distribution terms that you use for the rest of that program. 28b528cefcSMark Murray 29c19800e8SDoug Rabson 30*ae771770SStanislav Sedov# Originally written by Per Bothner. Please send patches (context 31*ae771770SStanislav Sedov# diff format) to <config-patches@gnu.org> and include a ChangeLog 32*ae771770SStanislav Sedov# entry. 33b528cefcSMark Murray# 34b528cefcSMark Murray# This script attempts to guess a canonical system name similar to 35b528cefcSMark Murray# config.sub. If it succeeds, it prints the system name on stdout, and 36b528cefcSMark Murray# exits with 0. Otherwise, it exits with 1. 37b528cefcSMark Murray# 38*ae771770SStanislav Sedov# You can get the latest version of this script from: 39*ae771770SStanislav Sedov# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 40b528cefcSMark Murray 415e9cd1aeSAssar Westerlundme=`echo "$0" | sed -e 's,.*/,,'` 425e9cd1aeSAssar Westerlund 435e9cd1aeSAssar Westerlundusage="\ 445e9cd1aeSAssar WesterlundUsage: $0 [OPTION] 455e9cd1aeSAssar Westerlund 464137ff4cSJacques VidrineOutput the configuration name of the system \`$me' is run on. 475e9cd1aeSAssar Westerlund 485e9cd1aeSAssar WesterlundOperation modes: 495e9cd1aeSAssar Westerlund -h, --help print this help, then exit 504137ff4cSJacques Vidrine -t, --time-stamp print date of last modification, then exit 514137ff4cSJacques Vidrine -v, --version print version number, then exit 524137ff4cSJacques Vidrine 534137ff4cSJacques VidrineReport bugs and patches to <config-patches@gnu.org>." 544137ff4cSJacques Vidrine 554137ff4cSJacques Vidrineversion="\ 564137ff4cSJacques VidrineGNU config.guess ($timestamp) 574137ff4cSJacques Vidrine 584137ff4cSJacques VidrineOriginally written by Per Bothner. 59*ae771770SStanislav SedovCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 60*ae771770SStanislav Sedov2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. 614137ff4cSJacques Vidrine 624137ff4cSJacques VidrineThis is free software; see the source for copying conditions. There is NO 634137ff4cSJacques Vidrinewarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 645e9cd1aeSAssar Westerlund 655e9cd1aeSAssar Westerlundhelp=" 665e9cd1aeSAssar WesterlundTry \`$me --help' for more information." 675e9cd1aeSAssar Westerlund 685e9cd1aeSAssar Westerlund# Parse command line 695e9cd1aeSAssar Westerlundwhile test $# -gt 0 ; do 704137ff4cSJacques Vidrine case $1 in 714137ff4cSJacques Vidrine --time-stamp | --time* | -t ) 72c19800e8SDoug Rabson echo "$timestamp" ; exit ;; 734137ff4cSJacques Vidrine --version | -v ) 74c19800e8SDoug Rabson echo "$version" ; exit ;; 755e9cd1aeSAssar Westerlund --help | --h* | -h ) 76c19800e8SDoug Rabson echo "$usage"; exit ;; 775e9cd1aeSAssar Westerlund -- ) # Stop option processing 785e9cd1aeSAssar Westerlund shift; break ;; 795e9cd1aeSAssar Westerlund - ) # Use stdin as input. 805e9cd1aeSAssar Westerlund break ;; 815e9cd1aeSAssar Westerlund -* ) 824137ff4cSJacques Vidrine echo "$me: invalid option $1$help" >&2 835e9cd1aeSAssar Westerlund exit 1 ;; 845e9cd1aeSAssar Westerlund * ) 855e9cd1aeSAssar Westerlund break ;; 865e9cd1aeSAssar Westerlund esac 875e9cd1aeSAssar Westerlunddone 885e9cd1aeSAssar Westerlund 895e9cd1aeSAssar Westerlundif test $# != 0; then 905e9cd1aeSAssar Westerlund echo "$me: too many arguments$help" >&2 915e9cd1aeSAssar Westerlund exit 1 925e9cd1aeSAssar Westerlundfi 935e9cd1aeSAssar Westerlund 941c43270aSJacques Vidrinetrap 'exit 1' 1 2 15 955e9cd1aeSAssar Westerlund 961c43270aSJacques Vidrine# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 971c43270aSJacques Vidrine# compiler to aid in system detection is discouraged as it requires 981c43270aSJacques Vidrine# temporary files to be created and, as you can see below, it is a 991c43270aSJacques Vidrine# headache to deal with in a portable fashion. 1004137ff4cSJacques Vidrine 1014137ff4cSJacques Vidrine# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 1024137ff4cSJacques Vidrine# use `HOST_CC' if defined, but it is deprecated. 1034137ff4cSJacques Vidrine 1041c43270aSJacques Vidrine# Portable tmp directory creation inspired by the Autoconf team. 1051c43270aSJacques Vidrine 1061c43270aSJacques Vidrineset_cc_for_build=' 1071c43270aSJacques Vidrinetrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; 1081c43270aSJacques Vidrinetrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 1091c43270aSJacques Vidrine: ${TMPDIR=/tmp} ; 110c19800e8SDoug Rabson { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 1111c43270aSJacques Vidrine { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 1121c43270aSJacques Vidrine { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || 1131c43270aSJacques Vidrine { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; 1141c43270aSJacques Vidrinedummy=$tmp/dummy ; 1151c43270aSJacques Vidrinetmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; 1161c43270aSJacques Vidrinecase $CC_FOR_BUILD,$HOST_CC,$CC in 1171c43270aSJacques Vidrine ,,) echo "int x;" > $dummy.c ; 1188373020dSJacques Vidrine for c in cc gcc c89 c99 ; do 1191c43270aSJacques Vidrine if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then 1204137ff4cSJacques Vidrine CC_FOR_BUILD="$c"; break ; 1214137ff4cSJacques Vidrine fi ; 1224137ff4cSJacques Vidrine done ; 1234137ff4cSJacques Vidrine if test x"$CC_FOR_BUILD" = x ; then 1244137ff4cSJacques Vidrine CC_FOR_BUILD=no_compiler_found ; 1254137ff4cSJacques Vidrine fi 1264137ff4cSJacques Vidrine ;; 1274137ff4cSJacques Vidrine ,,*) CC_FOR_BUILD=$CC ;; 1284137ff4cSJacques Vidrine ,*,*) CC_FOR_BUILD=$HOST_CC ;; 129c19800e8SDoug Rabsonesac ; set_cc_for_build= ;' 1305e9cd1aeSAssar Westerlund 131b528cefcSMark Murray# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 1324137ff4cSJacques Vidrine# (ghazi@noc.rutgers.edu 1994-08-24) 133b528cefcSMark Murrayif (test -f /.attbin/uname) >/dev/null 2>&1 ; then 134b528cefcSMark Murray PATH=$PATH:/.attbin ; export PATH 135b528cefcSMark Murrayfi 136b528cefcSMark Murray 137b528cefcSMark MurrayUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 138b528cefcSMark MurrayUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 139b528cefcSMark MurrayUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 140b528cefcSMark MurrayUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 141b528cefcSMark Murray 142b528cefcSMark Murray# Note: order is significant - the case branches are not exclusive. 143b528cefcSMark Murray 144b528cefcSMark Murraycase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 1455e9cd1aeSAssar Westerlund *:NetBSD:*:*) 1468373020dSJacques Vidrine # NetBSD (nbsd) targets should (where applicable) match one or 1475e9cd1aeSAssar Westerlund # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, 1485e9cd1aeSAssar Westerlund # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 1495e9cd1aeSAssar Westerlund # switched to ELF, *-*-netbsd* would select the old 1505e9cd1aeSAssar Westerlund # object file format. This provides both forward 1515e9cd1aeSAssar Westerlund # compatibility and a consistent mechanism for selecting the 1525e9cd1aeSAssar Westerlund # object file format. 1538373020dSJacques Vidrine # 1548373020dSJacques Vidrine # Note: NetBSD doesn't particularly care about the vendor 1558373020dSJacques Vidrine # portion of the name. We always set it to "unknown". 1568373020dSJacques Vidrine sysctl="sysctl -n hw.machine_arch" 1578373020dSJacques Vidrine UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ 1588373020dSJacques Vidrine /usr/sbin/$sysctl 2>/dev/null || echo unknown)` 1598373020dSJacques Vidrine case "${UNAME_MACHINE_ARCH}" in 1601c43270aSJacques Vidrine armeb) machine=armeb-unknown ;; 1618373020dSJacques Vidrine arm*) machine=arm-unknown ;; 1628373020dSJacques Vidrine sh3el) machine=shl-unknown ;; 1638373020dSJacques Vidrine sh3eb) machine=sh-unknown ;; 164*ae771770SStanislav Sedov sh5el) machine=sh5le-unknown ;; 1658373020dSJacques Vidrine *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 1665e9cd1aeSAssar Westerlund esac 1674137ff4cSJacques Vidrine # The Operating System including object format, if it has switched 1684137ff4cSJacques Vidrine # to ELF recently, or will in the future. 1698373020dSJacques Vidrine case "${UNAME_MACHINE_ARCH}" in 1708373020dSJacques Vidrine arm*|i386|m68k|ns32k|sh3*|sparc|vax) 1714137ff4cSJacques Vidrine eval $set_cc_for_build 1725e9cd1aeSAssar Westerlund if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 173*ae771770SStanislav Sedov | grep -q __ELF__ 1745e9cd1aeSAssar Westerlund then 1755e9cd1aeSAssar Westerlund # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 1765e9cd1aeSAssar Westerlund # Return netbsd for either. FIX? 1775e9cd1aeSAssar Westerlund os=netbsd 1785e9cd1aeSAssar Westerlund else 1795e9cd1aeSAssar Westerlund os=netbsdelf 1805e9cd1aeSAssar Westerlund fi 1814137ff4cSJacques Vidrine ;; 1824137ff4cSJacques Vidrine *) 1834137ff4cSJacques Vidrine os=netbsd 1844137ff4cSJacques Vidrine ;; 1854137ff4cSJacques Vidrine esac 1865e9cd1aeSAssar Westerlund # The OS release 1871c43270aSJacques Vidrine # Debian GNU/NetBSD machines have a different userland, and 1881c43270aSJacques Vidrine # thus, need a distinct triplet. However, they do not need 1891c43270aSJacques Vidrine # kernel version information, so it can be replaced with a 1901c43270aSJacques Vidrine # suitable tag, in the style of linux-gnu. 1911c43270aSJacques Vidrine case "${UNAME_VERSION}" in 1921c43270aSJacques Vidrine Debian*) 1931c43270aSJacques Vidrine release='-gnu' 1941c43270aSJacques Vidrine ;; 1951c43270aSJacques Vidrine *) 1965e9cd1aeSAssar Westerlund release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` 1971c43270aSJacques Vidrine ;; 1981c43270aSJacques Vidrine esac 1995e9cd1aeSAssar Westerlund # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 2005e9cd1aeSAssar Westerlund # contains redundant information, the shorter form: 2015e9cd1aeSAssar Westerlund # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 2025e9cd1aeSAssar Westerlund echo "${machine}-${os}${release}" 203c19800e8SDoug Rabson exit ;; 2048373020dSJacques Vidrine *:OpenBSD:*:*) 205c19800e8SDoug Rabson UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 206c19800e8SDoug Rabson echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 207c19800e8SDoug Rabson exit ;; 2088d4ba808SJacques Vidrine *:ekkoBSD:*:*) 2098d4ba808SJacques Vidrine echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 210c19800e8SDoug Rabson exit ;; 211c19800e8SDoug Rabson *:SolidBSD:*:*) 212c19800e8SDoug Rabson echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} 213c19800e8SDoug Rabson exit ;; 2148d4ba808SJacques Vidrine macppc:MirBSD:*:*) 215c19800e8SDoug Rabson echo powerpc-unknown-mirbsd${UNAME_RELEASE} 216c19800e8SDoug Rabson exit ;; 2178d4ba808SJacques Vidrine *:MirBSD:*:*) 2188d4ba808SJacques Vidrine echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 219c19800e8SDoug Rabson exit ;; 220b528cefcSMark Murray alpha:OSF1:*:*) 2218d4ba808SJacques Vidrine case $UNAME_RELEASE in 2228d4ba808SJacques Vidrine *4.0) 223b528cefcSMark Murray UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 2248d4ba808SJacques Vidrine ;; 2258d4ba808SJacques Vidrine *5.*) 2268d4ba808SJacques Vidrine UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 2278d4ba808SJacques Vidrine ;; 2288d4ba808SJacques Vidrine esac 2291c43270aSJacques Vidrine # According to Compaq, /usr/sbin/psrinfo has been available on 2301c43270aSJacques Vidrine # OSF/1 and Tru64 systems produced since 1995. I hope that 2311c43270aSJacques Vidrine # covers most systems running today. This code pipes the CPU 2321c43270aSJacques Vidrine # types through head -n 1, so we only detect the type of CPU 0. 2331c43270aSJacques Vidrine ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 2341c43270aSJacques Vidrine case "$ALPHA_CPU_TYPE" in 2351c43270aSJacques Vidrine "EV4 (21064)") 2361c43270aSJacques Vidrine UNAME_MACHINE="alpha" ;; 2371c43270aSJacques Vidrine "EV4.5 (21064)") 2381c43270aSJacques Vidrine UNAME_MACHINE="alpha" ;; 2391c43270aSJacques Vidrine "LCA4 (21066/21068)") 2401c43270aSJacques Vidrine UNAME_MACHINE="alpha" ;; 2411c43270aSJacques Vidrine "EV5 (21164)") 2421c43270aSJacques Vidrine UNAME_MACHINE="alphaev5" ;; 2431c43270aSJacques Vidrine "EV5.6 (21164A)") 2441c43270aSJacques Vidrine UNAME_MACHINE="alphaev56" ;; 2451c43270aSJacques Vidrine "EV5.6 (21164PC)") 2461c43270aSJacques Vidrine UNAME_MACHINE="alphapca56" ;; 2471c43270aSJacques Vidrine "EV5.7 (21164PC)") 2481c43270aSJacques Vidrine UNAME_MACHINE="alphapca57" ;; 2491c43270aSJacques Vidrine "EV6 (21264)") 2501c43270aSJacques Vidrine UNAME_MACHINE="alphaev6" ;; 2511c43270aSJacques Vidrine "EV6.7 (21264A)") 2521c43270aSJacques Vidrine UNAME_MACHINE="alphaev67" ;; 2531c43270aSJacques Vidrine "EV6.8CB (21264C)") 2541c43270aSJacques Vidrine UNAME_MACHINE="alphaev68" ;; 2551c43270aSJacques Vidrine "EV6.8AL (21264B)") 2561c43270aSJacques Vidrine UNAME_MACHINE="alphaev68" ;; 2571c43270aSJacques Vidrine "EV6.8CX (21264D)") 2581c43270aSJacques Vidrine UNAME_MACHINE="alphaev68" ;; 2591c43270aSJacques Vidrine "EV6.9A (21264/EV69A)") 2601c43270aSJacques Vidrine UNAME_MACHINE="alphaev69" ;; 2611c43270aSJacques Vidrine "EV7 (21364)") 2621c43270aSJacques Vidrine UNAME_MACHINE="alphaev7" ;; 2631c43270aSJacques Vidrine "EV7.9 (21364A)") 2641c43270aSJacques Vidrine UNAME_MACHINE="alphaev79" ;; 2651c43270aSJacques Vidrine esac 2668d4ba808SJacques Vidrine # A Pn.n version is a patched version. 267b528cefcSMark Murray # A Vn.n version is a released version. 268b528cefcSMark Murray # A Tn.n version is a released field test version. 269b528cefcSMark Murray # A Xn.n version is an unreleased experimental baselevel. 270b528cefcSMark Murray # 1.2 uses "1.2" for uname -r. 2718d4ba808SJacques Vidrine echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 272c19800e8SDoug Rabson exit ;; 2735e9cd1aeSAssar Westerlund Alpha\ *:Windows_NT*:*) 2745e9cd1aeSAssar Westerlund # How do we know it's Interix rather than the generic POSIX subsystem? 2755e9cd1aeSAssar Westerlund # Should we change UNAME_MACHINE based on the output of uname instead 2765e9cd1aeSAssar Westerlund # of the specific Alpha model? 2775e9cd1aeSAssar Westerlund echo alpha-pc-interix 278c19800e8SDoug Rabson exit ;; 279b528cefcSMark Murray 21064:Windows_NT:50:3) 280b528cefcSMark Murray echo alpha-dec-winnt3.5 281c19800e8SDoug Rabson exit ;; 282b528cefcSMark Murray Amiga*:UNIX_System_V:4.0:*) 2835e9cd1aeSAssar Westerlund echo m68k-unknown-sysv4 284c19800e8SDoug Rabson exit ;; 285b528cefcSMark Murray *:[Aa]miga[Oo][Ss]:*:*) 286b528cefcSMark Murray echo ${UNAME_MACHINE}-unknown-amigaos 287c19800e8SDoug Rabson exit ;; 2888373020dSJacques Vidrine *:[Mm]orph[Oo][Ss]:*:*) 2898373020dSJacques Vidrine echo ${UNAME_MACHINE}-unknown-morphos 290c19800e8SDoug Rabson exit ;; 2915e9cd1aeSAssar Westerlund *:OS/390:*:*) 2925e9cd1aeSAssar Westerlund echo i370-ibm-openedition 293c19800e8SDoug Rabson exit ;; 294c19800e8SDoug Rabson *:z/VM:*:*) 295c19800e8SDoug Rabson echo s390-ibm-zvmoe 296c19800e8SDoug Rabson exit ;; 2978d4ba808SJacques Vidrine *:OS400:*:*) 2988d4ba808SJacques Vidrine echo powerpc-ibm-os400 299c19800e8SDoug Rabson exit ;; 300b528cefcSMark Murray arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 301b528cefcSMark Murray echo arm-acorn-riscix${UNAME_RELEASE} 302c19800e8SDoug Rabson exit ;; 303c19800e8SDoug Rabson arm:riscos:*:*|arm:RISCOS:*:*) 304c19800e8SDoug Rabson echo arm-unknown-riscos 305c19800e8SDoug Rabson exit ;; 3064137ff4cSJacques Vidrine SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 307b528cefcSMark Murray echo hppa1.1-hitachi-hiuxmpp 308c19800e8SDoug Rabson exit ;; 309b528cefcSMark Murray Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 310b528cefcSMark Murray # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 311b528cefcSMark Murray if test "`(/bin/universe) 2>/dev/null`" = att ; then 312b528cefcSMark Murray echo pyramid-pyramid-sysv3 313b528cefcSMark Murray else 314b528cefcSMark Murray echo pyramid-pyramid-bsd 315b528cefcSMark Murray fi 316c19800e8SDoug Rabson exit ;; 3175e9cd1aeSAssar Westerlund NILE*:*:*:dcosx) 318b528cefcSMark Murray echo pyramid-pyramid-svr4 319c19800e8SDoug Rabson exit ;; 3201c43270aSJacques Vidrine DRS?6000:unix:4.0:6*) 3211c43270aSJacques Vidrine echo sparc-icl-nx6 322c19800e8SDoug Rabson exit ;; 323c19800e8SDoug Rabson DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 3241c43270aSJacques Vidrine case `/usr/bin/uname -p` in 325c19800e8SDoug Rabson sparc) echo sparc-icl-nx7; exit ;; 3261c43270aSJacques Vidrine esac ;; 327*ae771770SStanislav Sedov s390x:SunOS:*:*) 328*ae771770SStanislav Sedov echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 329*ae771770SStanislav Sedov exit ;; 330b528cefcSMark Murray sun4H:SunOS:5.*:*) 331b528cefcSMark Murray echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 332c19800e8SDoug Rabson exit ;; 333b528cefcSMark Murray sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 334b528cefcSMark Murray echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 335c19800e8SDoug Rabson exit ;; 336*ae771770SStanislav Sedov i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) 337*ae771770SStanislav Sedov echo i386-pc-auroraux${UNAME_RELEASE} 338*ae771770SStanislav Sedov exit ;; 339*ae771770SStanislav Sedov i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) 340*ae771770SStanislav Sedov eval $set_cc_for_build 341*ae771770SStanislav Sedov SUN_ARCH="i386" 342*ae771770SStanislav Sedov # If there is a compiler, see if it is configured for 64-bit objects. 343*ae771770SStanislav Sedov # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. 344*ae771770SStanislav Sedov # This test works for both compilers. 345*ae771770SStanislav Sedov if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 346*ae771770SStanislav Sedov if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ 347*ae771770SStanislav Sedov (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 348*ae771770SStanislav Sedov grep IS_64BIT_ARCH >/dev/null 349*ae771770SStanislav Sedov then 350*ae771770SStanislav Sedov SUN_ARCH="x86_64" 351*ae771770SStanislav Sedov fi 352*ae771770SStanislav Sedov fi 353*ae771770SStanislav Sedov echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 354c19800e8SDoug Rabson exit ;; 355b528cefcSMark Murray sun4*:SunOS:6*:*) 356b528cefcSMark Murray # According to config.sub, this is the proper way to canonicalize 357b528cefcSMark Murray # SunOS6. Hard to guess exactly what SunOS6 will be like, but 358b528cefcSMark Murray # it's likely to be more like Solaris than SunOS4. 359b528cefcSMark Murray echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 360c19800e8SDoug Rabson exit ;; 361b528cefcSMark Murray sun4*:SunOS:*:*) 362b528cefcSMark Murray case "`/usr/bin/arch -k`" in 363b528cefcSMark Murray Series*|S4*) 364b528cefcSMark Murray UNAME_RELEASE=`uname -v` 365b528cefcSMark Murray ;; 366b528cefcSMark Murray esac 367b528cefcSMark Murray # Japanese Language versions have a version number like `4.1.3-JL'. 368b528cefcSMark Murray echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 369c19800e8SDoug Rabson exit ;; 370b528cefcSMark Murray sun3*:SunOS:*:*) 371b528cefcSMark Murray echo m68k-sun-sunos${UNAME_RELEASE} 372c19800e8SDoug Rabson exit ;; 373b528cefcSMark Murray sun*:*:4.2BSD:*) 3748373020dSJacques Vidrine UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 375b528cefcSMark Murray test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 376b528cefcSMark Murray case "`/bin/arch`" in 377b528cefcSMark Murray sun3) 378b528cefcSMark Murray echo m68k-sun-sunos${UNAME_RELEASE} 379b528cefcSMark Murray ;; 380b528cefcSMark Murray sun4) 381b528cefcSMark Murray echo sparc-sun-sunos${UNAME_RELEASE} 382b528cefcSMark Murray ;; 383b528cefcSMark Murray esac 384c19800e8SDoug Rabson exit ;; 385b528cefcSMark Murray aushp:SunOS:*:*) 386b528cefcSMark Murray echo sparc-auspex-sunos${UNAME_RELEASE} 387c19800e8SDoug Rabson exit ;; 3885e9cd1aeSAssar Westerlund # The situation for MiNT is a little confusing. The machine name 3895e9cd1aeSAssar Westerlund # can be virtually everything (everything which is not 3905e9cd1aeSAssar Westerlund # "atarist" or "atariste" at least should have a processor 3915e9cd1aeSAssar Westerlund # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 3925e9cd1aeSAssar Westerlund # to the lowercase version "mint" (or "freemint"). Finally 3935e9cd1aeSAssar Westerlund # the system name "TOS" denotes a system which is actually not 3945e9cd1aeSAssar Westerlund # MiNT. But MiNT is downward compatible to TOS, so this should 3955e9cd1aeSAssar Westerlund # be no problem. 3965e9cd1aeSAssar Westerlund atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 3975e9cd1aeSAssar Westerlund echo m68k-atari-mint${UNAME_RELEASE} 398c19800e8SDoug Rabson exit ;; 3995e9cd1aeSAssar Westerlund atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 4005e9cd1aeSAssar Westerlund echo m68k-atari-mint${UNAME_RELEASE} 401c19800e8SDoug Rabson exit ;; 4025e9cd1aeSAssar Westerlund *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 4035e9cd1aeSAssar Westerlund echo m68k-atari-mint${UNAME_RELEASE} 404c19800e8SDoug Rabson exit ;; 4055e9cd1aeSAssar Westerlund milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 4065e9cd1aeSAssar Westerlund echo m68k-milan-mint${UNAME_RELEASE} 407c19800e8SDoug Rabson exit ;; 4085e9cd1aeSAssar Westerlund hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 4095e9cd1aeSAssar Westerlund echo m68k-hades-mint${UNAME_RELEASE} 410c19800e8SDoug Rabson exit ;; 4115e9cd1aeSAssar Westerlund *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 4125e9cd1aeSAssar Westerlund echo m68k-unknown-mint${UNAME_RELEASE} 413c19800e8SDoug Rabson exit ;; 4148d4ba808SJacques Vidrine m68k:machten:*:*) 4158d4ba808SJacques Vidrine echo m68k-apple-machten${UNAME_RELEASE} 416c19800e8SDoug Rabson exit ;; 417b528cefcSMark Murray powerpc:machten:*:*) 418b528cefcSMark Murray echo powerpc-apple-machten${UNAME_RELEASE} 419c19800e8SDoug Rabson exit ;; 420b528cefcSMark Murray RISC*:Mach:*:*) 421b528cefcSMark Murray echo mips-dec-mach_bsd4.3 422c19800e8SDoug Rabson exit ;; 423b528cefcSMark Murray RISC*:ULTRIX:*:*) 424b528cefcSMark Murray echo mips-dec-ultrix${UNAME_RELEASE} 425c19800e8SDoug Rabson exit ;; 426b528cefcSMark Murray VAX*:ULTRIX*:*:*) 427b528cefcSMark Murray echo vax-dec-ultrix${UNAME_RELEASE} 428c19800e8SDoug Rabson exit ;; 4295e9cd1aeSAssar Westerlund 2020:CLIX:*:* | 2430:CLIX:*:*) 430b528cefcSMark Murray echo clipper-intergraph-clix${UNAME_RELEASE} 431c19800e8SDoug Rabson exit ;; 432b528cefcSMark Murray mips:*:*:UMIPS | mips:*:*:RISCos) 4334137ff4cSJacques Vidrine eval $set_cc_for_build 434b528cefcSMark Murray sed 's/^ //' << EOF >$dummy.c 4355e9cd1aeSAssar Westerlund#ifdef __cplusplus 4365e9cd1aeSAssar Westerlund#include <stdio.h> /* for printf() prototype */ 4375e9cd1aeSAssar Westerlund int main (int argc, char *argv[]) { 4385e9cd1aeSAssar Westerlund#else 4395e9cd1aeSAssar Westerlund int main (argc, argv) int argc; char *argv[]; { 4405e9cd1aeSAssar Westerlund#endif 441b528cefcSMark Murray #if defined (host_mips) && defined (MIPSEB) 442b528cefcSMark Murray #if defined (SYSTYPE_SYSV) 443b528cefcSMark Murray printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 444b528cefcSMark Murray #endif 445b528cefcSMark Murray #if defined (SYSTYPE_SVR4) 446b528cefcSMark Murray printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 447b528cefcSMark Murray #endif 448b528cefcSMark Murray #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 449b528cefcSMark Murray printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 450b528cefcSMark Murray #endif 451b528cefcSMark Murray #endif 452b528cefcSMark Murray exit (-1); 453b528cefcSMark Murray } 454b528cefcSMark MurrayEOF 455c19800e8SDoug Rabson $CC_FOR_BUILD -o $dummy $dummy.c && 456c19800e8SDoug Rabson dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 457c19800e8SDoug Rabson SYSTEM_NAME=`$dummy $dummyarg` && 458c19800e8SDoug Rabson { echo "$SYSTEM_NAME"; exit; } 459b528cefcSMark Murray echo mips-mips-riscos${UNAME_RELEASE} 460c19800e8SDoug Rabson exit ;; 4614137ff4cSJacques Vidrine Motorola:PowerMAX_OS:*:*) 4624137ff4cSJacques Vidrine echo powerpc-motorola-powermax 463c19800e8SDoug Rabson exit ;; 4641c43270aSJacques Vidrine Motorola:*:4.3:PL8-*) 4651c43270aSJacques Vidrine echo powerpc-harris-powermax 466c19800e8SDoug Rabson exit ;; 4671c43270aSJacques Vidrine Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 4681c43270aSJacques Vidrine echo powerpc-harris-powermax 469c19800e8SDoug Rabson exit ;; 470b528cefcSMark Murray Night_Hawk:Power_UNIX:*:*) 471b528cefcSMark Murray echo powerpc-harris-powerunix 472c19800e8SDoug Rabson exit ;; 473b528cefcSMark Murray m88k:CX/UX:7*:*) 474b528cefcSMark Murray echo m88k-harris-cxux7 475c19800e8SDoug Rabson exit ;; 476b528cefcSMark Murray m88k:*:4*:R4*) 477b528cefcSMark Murray echo m88k-motorola-sysv4 478c19800e8SDoug Rabson exit ;; 479b528cefcSMark Murray m88k:*:3*:R3*) 480b528cefcSMark Murray echo m88k-motorola-sysv3 481c19800e8SDoug Rabson exit ;; 482b528cefcSMark Murray AViiON:dgux:*:*) 483b528cefcSMark Murray # DG/UX returns AViiON for all architectures 484b528cefcSMark Murray UNAME_PROCESSOR=`/usr/bin/uname -p` 4855e9cd1aeSAssar Westerlund if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 4865e9cd1aeSAssar Westerlund then 4875e9cd1aeSAssar Westerlund if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 4885e9cd1aeSAssar Westerlund [ ${TARGET_BINARY_INTERFACE}x = x ] 4895e9cd1aeSAssar Westerlund then 490b528cefcSMark Murray echo m88k-dg-dgux${UNAME_RELEASE} 491b528cefcSMark Murray else 492b528cefcSMark Murray echo m88k-dg-dguxbcs${UNAME_RELEASE} 493b528cefcSMark Murray fi 4945e9cd1aeSAssar Westerlund else 4955e9cd1aeSAssar Westerlund echo i586-dg-dgux${UNAME_RELEASE} 496b528cefcSMark Murray fi 497c19800e8SDoug Rabson exit ;; 498b528cefcSMark Murray M88*:DolphinOS:*:*) # DolphinOS (SVR3) 499b528cefcSMark Murray echo m88k-dolphin-sysv3 500c19800e8SDoug Rabson exit ;; 501b528cefcSMark Murray M88*:*:R3*:*) 502b528cefcSMark Murray # Delta 88k system running SVR3 503b528cefcSMark Murray echo m88k-motorola-sysv3 504c19800e8SDoug Rabson exit ;; 505b528cefcSMark Murray XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 506b528cefcSMark Murray echo m88k-tektronix-sysv3 507c19800e8SDoug Rabson exit ;; 508b528cefcSMark Murray Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 509b528cefcSMark Murray echo m68k-tektronix-bsd 510c19800e8SDoug Rabson exit ;; 511b528cefcSMark Murray *:IRIX*:*:*) 512b528cefcSMark Murray echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 513c19800e8SDoug Rabson exit ;; 514b528cefcSMark Murray ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 515b528cefcSMark Murray echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 516c19800e8SDoug Rabson exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 5174137ff4cSJacques Vidrine i*86:AIX:*:*) 518b528cefcSMark Murray echo i386-ibm-aix 519c19800e8SDoug Rabson exit ;; 5204137ff4cSJacques Vidrine ia64:AIX:*:*) 5214137ff4cSJacques Vidrine if [ -x /usr/bin/oslevel ] ; then 5224137ff4cSJacques Vidrine IBM_REV=`/usr/bin/oslevel` 5234137ff4cSJacques Vidrine else 5244137ff4cSJacques Vidrine IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 5254137ff4cSJacques Vidrine fi 5264137ff4cSJacques Vidrine echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 527c19800e8SDoug Rabson exit ;; 528b528cefcSMark Murray *:AIX:2:3) 529b528cefcSMark Murray if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 5304137ff4cSJacques Vidrine eval $set_cc_for_build 531b528cefcSMark Murray sed 's/^ //' << EOF >$dummy.c 532b528cefcSMark Murray #include <sys/systemcfg.h> 533b528cefcSMark Murray 534b528cefcSMark Murray main() 535b528cefcSMark Murray { 536b528cefcSMark Murray if (!__power_pc()) 537b528cefcSMark Murray exit(1); 538b528cefcSMark Murray puts("powerpc-ibm-aix3.2.5"); 539b528cefcSMark Murray exit(0); 540b528cefcSMark Murray } 541b528cefcSMark MurrayEOF 542c19800e8SDoug Rabson if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 543c19800e8SDoug Rabson then 544c19800e8SDoug Rabson echo "$SYSTEM_NAME" 545c19800e8SDoug Rabson else 546b528cefcSMark Murray echo rs6000-ibm-aix3.2.5 547c19800e8SDoug Rabson fi 548b528cefcSMark Murray elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 549b528cefcSMark Murray echo rs6000-ibm-aix3.2.4 550b528cefcSMark Murray else 551b528cefcSMark Murray echo rs6000-ibm-aix3.2 552b528cefcSMark Murray fi 553c19800e8SDoug Rabson exit ;; 554*ae771770SStanislav Sedov *:AIX:*:[456]) 5558373020dSJacques Vidrine IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 5564137ff4cSJacques Vidrine if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 557b528cefcSMark Murray IBM_ARCH=rs6000 558b528cefcSMark Murray else 559b528cefcSMark Murray IBM_ARCH=powerpc 560b528cefcSMark Murray fi 561b528cefcSMark Murray if [ -x /usr/bin/oslevel ] ; then 562b528cefcSMark Murray IBM_REV=`/usr/bin/oslevel` 563b528cefcSMark Murray else 5644137ff4cSJacques Vidrine IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 565b528cefcSMark Murray fi 566b528cefcSMark Murray echo ${IBM_ARCH}-ibm-aix${IBM_REV} 567c19800e8SDoug Rabson exit ;; 568b528cefcSMark Murray *:AIX:*:*) 569b528cefcSMark Murray echo rs6000-ibm-aix 570c19800e8SDoug Rabson exit ;; 571b528cefcSMark Murray ibmrt:4.4BSD:*|romp-ibm:BSD:*) 572b528cefcSMark Murray echo romp-ibm-bsd4.4 573c19800e8SDoug Rabson exit ;; 5745e9cd1aeSAssar Westerlund ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 575b528cefcSMark Murray echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 576c19800e8SDoug Rabson exit ;; # report: romp-ibm BSD 4.3 577b528cefcSMark Murray *:BOSX:*:*) 578b528cefcSMark Murray echo rs6000-bull-bosx 579c19800e8SDoug Rabson exit ;; 580b528cefcSMark Murray DPX/2?00:B.O.S.:*:*) 581b528cefcSMark Murray echo m68k-bull-sysv3 582c19800e8SDoug Rabson exit ;; 583b528cefcSMark Murray 9000/[34]??:4.3bsd:1.*:*) 584b528cefcSMark Murray echo m68k-hp-bsd 585c19800e8SDoug Rabson exit ;; 586b528cefcSMark Murray hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 587b528cefcSMark Murray echo m68k-hp-bsd4.4 588c19800e8SDoug Rabson exit ;; 589b528cefcSMark Murray 9000/[34678]??:HP-UX:*:*) 5904137ff4cSJacques Vidrine HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 591b528cefcSMark Murray case "${UNAME_MACHINE}" in 592b528cefcSMark Murray 9000/31? ) HP_ARCH=m68000 ;; 593b528cefcSMark Murray 9000/[34]?? ) HP_ARCH=m68k ;; 5945e9cd1aeSAssar Westerlund 9000/[678][0-9][0-9]) 5954137ff4cSJacques Vidrine if [ -x /usr/bin/getconf ]; then 5964137ff4cSJacques Vidrine sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 5974137ff4cSJacques Vidrine sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 5984137ff4cSJacques Vidrine case "${sc_cpu_version}" in 5994137ff4cSJacques Vidrine 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 6004137ff4cSJacques Vidrine 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 6014137ff4cSJacques Vidrine 532) # CPU_PA_RISC2_0 6024137ff4cSJacques Vidrine case "${sc_kernel_bits}" in 6034137ff4cSJacques Vidrine 32) HP_ARCH="hppa2.0n" ;; 6044137ff4cSJacques Vidrine 64) HP_ARCH="hppa2.0w" ;; 6058373020dSJacques Vidrine '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 6064137ff4cSJacques Vidrine esac ;; 6074137ff4cSJacques Vidrine esac 6088373020dSJacques Vidrine fi 6094137ff4cSJacques Vidrine if [ "${HP_ARCH}" = "" ]; then 6104137ff4cSJacques Vidrine eval $set_cc_for_build 611b528cefcSMark Murray sed 's/^ //' << EOF >$dummy.c 6125e9cd1aeSAssar Westerlund 6135e9cd1aeSAssar Westerlund #define _HPUX_SOURCE 614b528cefcSMark Murray #include <stdlib.h> 615b528cefcSMark Murray #include <unistd.h> 616b528cefcSMark Murray 617b528cefcSMark Murray int main () 618b528cefcSMark Murray { 619b528cefcSMark Murray #if defined(_SC_KERNEL_BITS) 620b528cefcSMark Murray long bits = sysconf(_SC_KERNEL_BITS); 621b528cefcSMark Murray #endif 622b528cefcSMark Murray long cpu = sysconf (_SC_CPU_VERSION); 623b528cefcSMark Murray 624b528cefcSMark Murray switch (cpu) 625b528cefcSMark Murray { 626b528cefcSMark Murray case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 627b528cefcSMark Murray case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 628b528cefcSMark Murray case CPU_PA_RISC2_0: 629b528cefcSMark Murray #if defined(_SC_KERNEL_BITS) 630b528cefcSMark Murray switch (bits) 631b528cefcSMark Murray { 632b528cefcSMark Murray case 64: puts ("hppa2.0w"); break; 633b528cefcSMark Murray case 32: puts ("hppa2.0n"); break; 634b528cefcSMark Murray default: puts ("hppa2.0"); break; 635b528cefcSMark Murray } break; 636b528cefcSMark Murray #else /* !defined(_SC_KERNEL_BITS) */ 637b528cefcSMark Murray puts ("hppa2.0"); break; 638b528cefcSMark Murray #endif 639b528cefcSMark Murray default: puts ("hppa1.0"); break; 640b528cefcSMark Murray } 641b528cefcSMark Murray exit (0); 642b528cefcSMark Murray } 643b528cefcSMark MurrayEOF 6441c43270aSJacques Vidrine (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 6451c43270aSJacques Vidrine test -z "$HP_ARCH" && HP_ARCH=hppa 6464137ff4cSJacques Vidrine fi ;; 647b528cefcSMark Murray esac 6481c43270aSJacques Vidrine if [ ${HP_ARCH} = "hppa2.0w" ] 6491c43270aSJacques Vidrine then 650c19800e8SDoug Rabson eval $set_cc_for_build 651c19800e8SDoug Rabson 652c19800e8SDoug Rabson # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 653c19800e8SDoug Rabson # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 654c19800e8SDoug Rabson # generating 64-bit code. GNU and HP use different nomenclature: 655c19800e8SDoug Rabson # 656c19800e8SDoug Rabson # $ CC_FOR_BUILD=cc ./config.guess 657c19800e8SDoug Rabson # => hppa2.0w-hp-hpux11.23 658c19800e8SDoug Rabson # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 659c19800e8SDoug Rabson # => hppa64-hp-hpux11.23 660c19800e8SDoug Rabson 661c19800e8SDoug Rabson if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | 662*ae771770SStanislav Sedov grep -q __LP64__ 6631c43270aSJacques Vidrine then 6641c43270aSJacques Vidrine HP_ARCH="hppa2.0w" 6651c43270aSJacques Vidrine else 6661c43270aSJacques Vidrine HP_ARCH="hppa64" 6671c43270aSJacques Vidrine fi 6681c43270aSJacques Vidrine fi 669b528cefcSMark Murray echo ${HP_ARCH}-hp-hpux${HPUX_REV} 670c19800e8SDoug Rabson exit ;; 6714137ff4cSJacques Vidrine ia64:HP-UX:*:*) 6724137ff4cSJacques Vidrine HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 6734137ff4cSJacques Vidrine echo ia64-hp-hpux${HPUX_REV} 674c19800e8SDoug Rabson exit ;; 675b528cefcSMark Murray 3050*:HI-UX:*:*) 6764137ff4cSJacques Vidrine eval $set_cc_for_build 677b528cefcSMark Murray sed 's/^ //' << EOF >$dummy.c 678b528cefcSMark Murray #include <unistd.h> 679b528cefcSMark Murray int 680b528cefcSMark Murray main () 681b528cefcSMark Murray { 682b528cefcSMark Murray long cpu = sysconf (_SC_CPU_VERSION); 683b528cefcSMark Murray /* The order matters, because CPU_IS_HP_MC68K erroneously returns 684b528cefcSMark Murray true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 685b528cefcSMark Murray results, however. */ 686b528cefcSMark Murray if (CPU_IS_PA_RISC (cpu)) 687b528cefcSMark Murray { 688b528cefcSMark Murray switch (cpu) 689b528cefcSMark Murray { 690b528cefcSMark Murray case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 691b528cefcSMark Murray case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 692b528cefcSMark Murray case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 693b528cefcSMark Murray default: puts ("hppa-hitachi-hiuxwe2"); break; 694b528cefcSMark Murray } 695b528cefcSMark Murray } 696b528cefcSMark Murray else if (CPU_IS_HP_MC68K (cpu)) 697b528cefcSMark Murray puts ("m68k-hitachi-hiuxwe2"); 698b528cefcSMark Murray else puts ("unknown-hitachi-hiuxwe2"); 699b528cefcSMark Murray exit (0); 700b528cefcSMark Murray } 701b528cefcSMark MurrayEOF 702c19800e8SDoug Rabson $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 703c19800e8SDoug Rabson { echo "$SYSTEM_NAME"; exit; } 704b528cefcSMark Murray echo unknown-hitachi-hiuxwe2 705c19800e8SDoug Rabson exit ;; 706b528cefcSMark Murray 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 707b528cefcSMark Murray echo hppa1.1-hp-bsd 708c19800e8SDoug Rabson exit ;; 709b528cefcSMark Murray 9000/8??:4.3bsd:*:*) 710b528cefcSMark Murray echo hppa1.0-hp-bsd 711c19800e8SDoug Rabson exit ;; 7124137ff4cSJacques Vidrine *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 7135e9cd1aeSAssar Westerlund echo hppa1.0-hp-mpeix 714c19800e8SDoug Rabson exit ;; 715b528cefcSMark Murray hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 716b528cefcSMark Murray echo hppa1.1-hp-osf 717c19800e8SDoug Rabson exit ;; 718b528cefcSMark Murray hp8??:OSF1:*:*) 719b528cefcSMark Murray echo hppa1.0-hp-osf 720c19800e8SDoug Rabson exit ;; 7214137ff4cSJacques Vidrine i*86:OSF1:*:*) 722b528cefcSMark Murray if [ -x /usr/sbin/sysversion ] ; then 723b528cefcSMark Murray echo ${UNAME_MACHINE}-unknown-osf1mk 724b528cefcSMark Murray else 725b528cefcSMark Murray echo ${UNAME_MACHINE}-unknown-osf1 726b528cefcSMark Murray fi 727c19800e8SDoug Rabson exit ;; 728b528cefcSMark Murray parisc*:Lites*:*:*) 729b528cefcSMark Murray echo hppa1.1-hp-lites 730c19800e8SDoug Rabson exit ;; 731b528cefcSMark Murray C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 732b528cefcSMark Murray echo c1-convex-bsd 733c19800e8SDoug Rabson exit ;; 734b528cefcSMark Murray C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 735b528cefcSMark Murray if getsysinfo -f scalar_acc 736b528cefcSMark Murray then echo c32-convex-bsd 737b528cefcSMark Murray else echo c2-convex-bsd 738b528cefcSMark Murray fi 739c19800e8SDoug Rabson exit ;; 740b528cefcSMark Murray C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 741b528cefcSMark Murray echo c34-convex-bsd 742c19800e8SDoug Rabson exit ;; 743b528cefcSMark Murray C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 744b528cefcSMark Murray echo c38-convex-bsd 745c19800e8SDoug Rabson exit ;; 746b528cefcSMark Murray C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 747b528cefcSMark Murray echo c4-convex-bsd 748c19800e8SDoug Rabson exit ;; 749b528cefcSMark Murray CRAY*Y-MP:*:*:*) 7504137ff4cSJacques Vidrine echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 751c19800e8SDoug Rabson exit ;; 752b528cefcSMark Murray CRAY*[A-Z]90:*:*:*) 753b528cefcSMark Murray echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 754b528cefcSMark Murray | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 7554137ff4cSJacques Vidrine -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 7564137ff4cSJacques Vidrine -e 's/\.[^.]*$/.X/' 757c19800e8SDoug Rabson exit ;; 758b528cefcSMark Murray CRAY*TS:*:*:*) 7595e9cd1aeSAssar Westerlund echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 760c19800e8SDoug Rabson exit ;; 7614137ff4cSJacques Vidrine CRAY*T3E:*:*:*) 7624137ff4cSJacques Vidrine echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 763c19800e8SDoug Rabson exit ;; 7645e9cd1aeSAssar Westerlund CRAY*SV1:*:*:*) 7655e9cd1aeSAssar Westerlund echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 766c19800e8SDoug Rabson exit ;; 7671c43270aSJacques Vidrine *:UNICOS/mp:*:*) 768c19800e8SDoug Rabson echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 769c19800e8SDoug Rabson exit ;; 7704137ff4cSJacques Vidrine F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 7714137ff4cSJacques Vidrine FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 7725e9cd1aeSAssar Westerlund FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 773b528cefcSMark Murray FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 7744137ff4cSJacques Vidrine echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 775c19800e8SDoug Rabson exit ;; 7768d4ba808SJacques Vidrine 5000:UNIX_System_V:4.*:*) 7778d4ba808SJacques Vidrine FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 7788d4ba808SJacques Vidrine FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` 7798d4ba808SJacques Vidrine echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 780c19800e8SDoug Rabson exit ;; 7814137ff4cSJacques Vidrine i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 7825e9cd1aeSAssar Westerlund echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 783c19800e8SDoug Rabson exit ;; 784b528cefcSMark Murray sparc*:BSD/OS:*:*) 785b528cefcSMark Murray echo sparc-unknown-bsdi${UNAME_RELEASE} 786c19800e8SDoug Rabson exit ;; 787b528cefcSMark Murray *:BSD/OS:*:*) 788b528cefcSMark Murray echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 789c19800e8SDoug Rabson exit ;; 7908d4ba808SJacques Vidrine *:FreeBSD:*:*) 791c19800e8SDoug Rabson case ${UNAME_MACHINE} in 792c19800e8SDoug Rabson pc98) 793c19800e8SDoug Rabson echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 794c19800e8SDoug Rabson amd64) 795c19800e8SDoug Rabson echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 796c19800e8SDoug Rabson *) 797c19800e8SDoug Rabson echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 798c19800e8SDoug Rabson esac 799c19800e8SDoug Rabson exit ;; 800b528cefcSMark Murray i*:CYGWIN*:*) 801b528cefcSMark Murray echo ${UNAME_MACHINE}-pc-cygwin 802c19800e8SDoug Rabson exit ;; 803*ae771770SStanislav Sedov *:MINGW*:*) 804b528cefcSMark Murray echo ${UNAME_MACHINE}-pc-mingw32 805c19800e8SDoug Rabson exit ;; 806c19800e8SDoug Rabson i*:windows32*:*) 807c19800e8SDoug Rabson # uname -m includes "-pc" on this system. 808c19800e8SDoug Rabson echo ${UNAME_MACHINE}-mingw32 809c19800e8SDoug Rabson exit ;; 8105e9cd1aeSAssar Westerlund i*:PW*:*) 8115e9cd1aeSAssar Westerlund echo ${UNAME_MACHINE}-pc-pw32 812c19800e8SDoug Rabson exit ;; 813*ae771770SStanislav Sedov *:Interix*:*) 814*ae771770SStanislav Sedov case ${UNAME_MACHINE} in 815*ae771770SStanislav Sedov x86) 816c19800e8SDoug Rabson echo i586-pc-interix${UNAME_RELEASE} 817c19800e8SDoug Rabson exit ;; 818*ae771770SStanislav Sedov authenticamd | genuineintel | EM64T) 819c19800e8SDoug Rabson echo x86_64-unknown-interix${UNAME_RELEASE} 820c19800e8SDoug Rabson exit ;; 821*ae771770SStanislav Sedov IA64) 822*ae771770SStanislav Sedov echo ia64-unknown-interix${UNAME_RELEASE} 823*ae771770SStanislav Sedov exit ;; 824*ae771770SStanislav Sedov esac ;; 8251c43270aSJacques Vidrine [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 8261c43270aSJacques Vidrine echo i${UNAME_MACHINE}-pc-mks 827c19800e8SDoug Rabson exit ;; 828*ae771770SStanislav Sedov 8664:Windows_NT:*) 829*ae771770SStanislav Sedov echo x86_64-pc-mks 830*ae771770SStanislav Sedov exit ;; 8315e9cd1aeSAssar Westerlund i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 8325e9cd1aeSAssar Westerlund # How do we know it's Interix rather than the generic POSIX subsystem? 8335e9cd1aeSAssar Westerlund # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 8345e9cd1aeSAssar Westerlund # UNAME_MACHINE based on the output of uname instead of i386? 8351c43270aSJacques Vidrine echo i586-pc-interix 836c19800e8SDoug Rabson exit ;; 8375e9cd1aeSAssar Westerlund i*:UWIN*:*) 8385e9cd1aeSAssar Westerlund echo ${UNAME_MACHINE}-pc-uwin 839c19800e8SDoug Rabson exit ;; 840c19800e8SDoug Rabson amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 841c19800e8SDoug Rabson echo x86_64-unknown-cygwin 842c19800e8SDoug Rabson exit ;; 843b528cefcSMark Murray p*:CYGWIN*:*) 844b528cefcSMark Murray echo powerpcle-unknown-cygwin 845c19800e8SDoug Rabson exit ;; 846b528cefcSMark Murray prep*:SunOS:5.*:*) 847b528cefcSMark Murray echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 848c19800e8SDoug Rabson exit ;; 849b528cefcSMark Murray *:GNU:*:*) 8508d4ba808SJacques Vidrine # the GNU system 851b528cefcSMark Murray echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 852c19800e8SDoug Rabson exit ;; 8538d4ba808SJacques Vidrine *:GNU/*:*:*) 8548d4ba808SJacques Vidrine # other systems with GNU libc and userland 8558d4ba808SJacques Vidrine echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu 856c19800e8SDoug Rabson exit ;; 8575e9cd1aeSAssar Westerlund i*86:Minix:*:*) 8585e9cd1aeSAssar Westerlund echo ${UNAME_MACHINE}-pc-minix 859c19800e8SDoug Rabson exit ;; 860*ae771770SStanislav Sedov alpha:Linux:*:*) 861*ae771770SStanislav Sedov case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 862*ae771770SStanislav Sedov EV5) UNAME_MACHINE=alphaev5 ;; 863*ae771770SStanislav Sedov EV56) UNAME_MACHINE=alphaev56 ;; 864*ae771770SStanislav Sedov PCA56) UNAME_MACHINE=alphapca56 ;; 865*ae771770SStanislav Sedov PCA57) UNAME_MACHINE=alphapca56 ;; 866*ae771770SStanislav Sedov EV6) UNAME_MACHINE=alphaev6 ;; 867*ae771770SStanislav Sedov EV67) UNAME_MACHINE=alphaev67 ;; 868*ae771770SStanislav Sedov EV68*) UNAME_MACHINE=alphaev68 ;; 869*ae771770SStanislav Sedov esac 870*ae771770SStanislav Sedov objdump --private-headers /bin/sh | grep -q ld.so.1 871*ae771770SStanislav Sedov if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi 872*ae771770SStanislav Sedov echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 873*ae771770SStanislav Sedov exit ;; 8744137ff4cSJacques Vidrine arm*:Linux:*:*) 875*ae771770SStanislav Sedov eval $set_cc_for_build 876*ae771770SStanislav Sedov if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ 877*ae771770SStanislav Sedov | grep -q __ARM_EABI__ 878*ae771770SStanislav Sedov then 8794137ff4cSJacques Vidrine echo ${UNAME_MACHINE}-unknown-linux-gnu 880*ae771770SStanislav Sedov else 881*ae771770SStanislav Sedov echo ${UNAME_MACHINE}-unknown-linux-gnueabi 882*ae771770SStanislav Sedov fi 883c19800e8SDoug Rabson exit ;; 884c19800e8SDoug Rabson avr32*:Linux:*:*) 885c19800e8SDoug Rabson echo ${UNAME_MACHINE}-unknown-linux-gnu 886c19800e8SDoug Rabson exit ;; 8871c43270aSJacques Vidrine cris:Linux:*:*) 8881c43270aSJacques Vidrine echo cris-axis-linux-gnu 889c19800e8SDoug Rabson exit ;; 890c19800e8SDoug Rabson crisv32:Linux:*:*) 891c19800e8SDoug Rabson echo crisv32-axis-linux-gnu 892c19800e8SDoug Rabson exit ;; 893c19800e8SDoug Rabson frv:Linux:*:*) 894c19800e8SDoug Rabson echo frv-unknown-linux-gnu 895c19800e8SDoug Rabson exit ;; 896*ae771770SStanislav Sedov i*86:Linux:*:*) 897*ae771770SStanislav Sedov LIBC=gnu 898*ae771770SStanislav Sedov eval $set_cc_for_build 899*ae771770SStanislav Sedov sed 's/^ //' << EOF >$dummy.c 900*ae771770SStanislav Sedov #ifdef __dietlibc__ 901*ae771770SStanislav Sedov LIBC=dietlibc 902*ae771770SStanislav Sedov #endif 903*ae771770SStanislav SedovEOF 904*ae771770SStanislav Sedov eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` 905*ae771770SStanislav Sedov echo "${UNAME_MACHINE}-pc-linux-${LIBC}" 906*ae771770SStanislav Sedov exit ;; 9074137ff4cSJacques Vidrine ia64:Linux:*:*) 9088373020dSJacques Vidrine echo ${UNAME_MACHINE}-unknown-linux-gnu 909c19800e8SDoug Rabson exit ;; 910c19800e8SDoug Rabson m32r*:Linux:*:*) 911c19800e8SDoug Rabson echo ${UNAME_MACHINE}-unknown-linux-gnu 912c19800e8SDoug Rabson exit ;; 9134137ff4cSJacques Vidrine m68*:Linux:*:*) 9144137ff4cSJacques Vidrine echo ${UNAME_MACHINE}-unknown-linux-gnu 915c19800e8SDoug Rabson exit ;; 916*ae771770SStanislav Sedov mips:Linux:*:* | mips64:Linux:*:*) 9178373020dSJacques Vidrine eval $set_cc_for_build 9188373020dSJacques Vidrine sed 's/^ //' << EOF >$dummy.c 9198373020dSJacques Vidrine #undef CPU 920*ae771770SStanislav Sedov #undef ${UNAME_MACHINE} 921*ae771770SStanislav Sedov #undef ${UNAME_MACHINE}el 9228373020dSJacques Vidrine #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 923*ae771770SStanislav Sedov CPU=${UNAME_MACHINE}el 9248373020dSJacques Vidrine #else 9258373020dSJacques Vidrine #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 926*ae771770SStanislav Sedov CPU=${UNAME_MACHINE} 9278373020dSJacques Vidrine #else 9288373020dSJacques Vidrine CPU= 9298373020dSJacques Vidrine #endif 9308373020dSJacques Vidrine #endif 9318373020dSJacques VidrineEOF 932*ae771770SStanislav Sedov eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` 933c19800e8SDoug Rabson test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 9344137ff4cSJacques Vidrine ;; 935c19800e8SDoug Rabson or32:Linux:*:*) 936c19800e8SDoug Rabson echo or32-unknown-linux-gnu 937c19800e8SDoug Rabson exit ;; 938*ae771770SStanislav Sedov padre:Linux:*:*) 939*ae771770SStanislav Sedov echo sparc-unknown-linux-gnu 940c19800e8SDoug Rabson exit ;; 941*ae771770SStanislav Sedov parisc64:Linux:*:* | hppa64:Linux:*:*) 942*ae771770SStanislav Sedov echo hppa64-unknown-linux-gnu 943c19800e8SDoug Rabson exit ;; 9444137ff4cSJacques Vidrine parisc:Linux:*:* | hppa:Linux:*:*) 9454137ff4cSJacques Vidrine # Look for CPU level 9464137ff4cSJacques Vidrine case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 9474137ff4cSJacques Vidrine PA7*) echo hppa1.1-unknown-linux-gnu ;; 9484137ff4cSJacques Vidrine PA8*) echo hppa2.0-unknown-linux-gnu ;; 9494137ff4cSJacques Vidrine *) echo hppa-unknown-linux-gnu ;; 9504137ff4cSJacques Vidrine esac 951c19800e8SDoug Rabson exit ;; 952*ae771770SStanislav Sedov ppc64:Linux:*:*) 953*ae771770SStanislav Sedov echo powerpc64-unknown-linux-gnu 954*ae771770SStanislav Sedov exit ;; 955*ae771770SStanislav Sedov ppc:Linux:*:*) 956*ae771770SStanislav Sedov echo powerpc-unknown-linux-gnu 957c19800e8SDoug Rabson exit ;; 9584137ff4cSJacques Vidrine s390:Linux:*:* | s390x:Linux:*:*) 9594137ff4cSJacques Vidrine echo ${UNAME_MACHINE}-ibm-linux 960c19800e8SDoug Rabson exit ;; 9611c43270aSJacques Vidrine sh64*:Linux:*:*) 9621c43270aSJacques Vidrine echo ${UNAME_MACHINE}-unknown-linux-gnu 963c19800e8SDoug Rabson exit ;; 9644137ff4cSJacques Vidrine sh*:Linux:*:*) 9654137ff4cSJacques Vidrine echo ${UNAME_MACHINE}-unknown-linux-gnu 966c19800e8SDoug Rabson exit ;; 9674137ff4cSJacques Vidrine sparc:Linux:*:* | sparc64:Linux:*:*) 9684137ff4cSJacques Vidrine echo ${UNAME_MACHINE}-unknown-linux-gnu 969c19800e8SDoug Rabson exit ;; 970c19800e8SDoug Rabson vax:Linux:*:*) 971c19800e8SDoug Rabson echo ${UNAME_MACHINE}-dec-linux-gnu 972c19800e8SDoug Rabson exit ;; 9734137ff4cSJacques Vidrine x86_64:Linux:*:*) 9744137ff4cSJacques Vidrine echo x86_64-unknown-linux-gnu 975c19800e8SDoug Rabson exit ;; 976*ae771770SStanislav Sedov xtensa*:Linux:*:*) 977*ae771770SStanislav Sedov echo ${UNAME_MACHINE}-unknown-linux-gnu 978c19800e8SDoug Rabson exit ;; 9794137ff4cSJacques Vidrine i*86:DYNIX/ptx:4*:*) 9804137ff4cSJacques Vidrine # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 9814137ff4cSJacques Vidrine # earlier versions are messed up and put the nodename in both 9824137ff4cSJacques Vidrine # sysname and nodename. 983b528cefcSMark Murray echo i386-sequent-sysv4 984c19800e8SDoug Rabson exit ;; 9854137ff4cSJacques Vidrine i*86:UNIX_SV:4.2MP:2.*) 986b528cefcSMark Murray # Unixware is an offshoot of SVR4, but it has its own version 987b528cefcSMark Murray # number series starting with 2... 988b528cefcSMark Murray # I am not positive that other SVR4 systems won't match this, 989b528cefcSMark Murray # I just have to hope. -- rms. 990b528cefcSMark Murray # Use sysv4.2uw... so that sysv4* matches it. 991b528cefcSMark Murray echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 992c19800e8SDoug Rabson exit ;; 9931c43270aSJacques Vidrine i*86:OS/2:*:*) 9941c43270aSJacques Vidrine # If we were able to find `uname', then EMX Unix compatibility 9951c43270aSJacques Vidrine # is probably installed. 9961c43270aSJacques Vidrine echo ${UNAME_MACHINE}-pc-os2-emx 997c19800e8SDoug Rabson exit ;; 9981c43270aSJacques Vidrine i*86:XTS-300:*:STOP) 9991c43270aSJacques Vidrine echo ${UNAME_MACHINE}-unknown-stop 1000c19800e8SDoug Rabson exit ;; 10011c43270aSJacques Vidrine i*86:atheos:*:*) 10021c43270aSJacques Vidrine echo ${UNAME_MACHINE}-unknown-atheos 1003c19800e8SDoug Rabson exit ;; 10048d4ba808SJacques Vidrine i*86:syllable:*:*) 10058d4ba808SJacques Vidrine echo ${UNAME_MACHINE}-pc-syllable 1006c19800e8SDoug Rabson exit ;; 1007*ae771770SStanislav Sedov i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) 10081c43270aSJacques Vidrine echo i386-unknown-lynxos${UNAME_RELEASE} 1009c19800e8SDoug Rabson exit ;; 10101c43270aSJacques Vidrine i*86:*DOS:*:*) 10111c43270aSJacques Vidrine echo ${UNAME_MACHINE}-pc-msdosdjgpp 1012c19800e8SDoug Rabson exit ;; 10134137ff4cSJacques Vidrine i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 10145e9cd1aeSAssar Westerlund UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 1015b528cefcSMark Murray if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 10165e9cd1aeSAssar Westerlund echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 10175e9cd1aeSAssar Westerlund else 10185e9cd1aeSAssar Westerlund echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 10195e9cd1aeSAssar Westerlund fi 1020c19800e8SDoug Rabson exit ;; 1021c19800e8SDoug Rabson i*86:*:5:[678]*) 1022c19800e8SDoug Rabson # UnixWare 7.x, OpenUNIX and OpenServer 6. 10234137ff4cSJacques Vidrine case `/bin/uname -X | grep "^Machine"` in 10244137ff4cSJacques Vidrine *486*) UNAME_MACHINE=i486 ;; 10254137ff4cSJacques Vidrine *Pentium) UNAME_MACHINE=i586 ;; 10264137ff4cSJacques Vidrine *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 10274137ff4cSJacques Vidrine esac 10284137ff4cSJacques Vidrine echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 1029c19800e8SDoug Rabson exit ;; 10304137ff4cSJacques Vidrine i*86:*:3.2:*) 1031b528cefcSMark Murray if test -f /usr/options/cb.name; then 1032b528cefcSMark Murray UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 1033b528cefcSMark Murray echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 1034b528cefcSMark Murray elif /bin/uname -X 2>/dev/null >/dev/null ; then 10351c43270aSJacques Vidrine UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 10361c43270aSJacques Vidrine (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 10371c43270aSJacques Vidrine (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 1038b528cefcSMark Murray && UNAME_MACHINE=i586 10391c43270aSJacques Vidrine (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 10405e9cd1aeSAssar Westerlund && UNAME_MACHINE=i686 10411c43270aSJacques Vidrine (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 10425e9cd1aeSAssar Westerlund && UNAME_MACHINE=i686 1043b528cefcSMark Murray echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 1044b528cefcSMark Murray else 1045b528cefcSMark Murray echo ${UNAME_MACHINE}-pc-sysv32 1046b528cefcSMark Murray fi 1047c19800e8SDoug Rabson exit ;; 1048b528cefcSMark Murray pc:*:*:*) 10495e9cd1aeSAssar Westerlund # Left here for compatibility: 1050b528cefcSMark Murray # uname -m prints for DJGPP always 'pc', but it prints nothing about 1051*ae771770SStanislav Sedov # the processor, so we play safe by assuming i586. 1052*ae771770SStanislav Sedov # Note: whatever this is, it MUST be the same as what config.sub 1053*ae771770SStanislav Sedov # prints for the "djgpp" host, or else GDB configury will decide that 1054*ae771770SStanislav Sedov # this is a cross-build. 1055*ae771770SStanislav Sedov echo i586-pc-msdosdjgpp 1056c19800e8SDoug Rabson exit ;; 1057b528cefcSMark Murray Intel:Mach:3*:*) 1058b528cefcSMark Murray echo i386-pc-mach3 1059c19800e8SDoug Rabson exit ;; 1060b528cefcSMark Murray paragon:*:*:*) 1061b528cefcSMark Murray echo i860-intel-osf1 1062c19800e8SDoug Rabson exit ;; 1063b528cefcSMark Murray i860:*:4.*:*) # i860-SVR4 1064b528cefcSMark Murray if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 1065b528cefcSMark Murray echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 1066b528cefcSMark Murray else # Add other i860-SVR4 vendors below as they are discovered. 1067b528cefcSMark Murray echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 1068b528cefcSMark Murray fi 1069c19800e8SDoug Rabson exit ;; 1070b528cefcSMark Murray mini*:CTIX:SYS*5:*) 1071b528cefcSMark Murray # "miniframe" 1072b528cefcSMark Murray echo m68010-convergent-sysv 1073c19800e8SDoug Rabson exit ;; 10741c43270aSJacques Vidrine mc68k:UNIX:SYSTEM5:3.51m) 10751c43270aSJacques Vidrine echo m68k-convergent-sysv 1076c19800e8SDoug Rabson exit ;; 10771c43270aSJacques Vidrine M680?0:D-NIX:5.3:*) 10781c43270aSJacques Vidrine echo m68k-diab-dnix 1079c19800e8SDoug Rabson exit ;; 1080c19800e8SDoug Rabson M68*:*:R3V[5678]*:*) 1081c19800e8SDoug Rabson test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 1082c19800e8SDoug Rabson 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) 1083b528cefcSMark Murray OS_REL='' 1084b528cefcSMark Murray test -r /etc/.relid \ 1085b528cefcSMark Murray && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1086b528cefcSMark Murray /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1087c19800e8SDoug Rabson && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 1088b528cefcSMark Murray /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1089c19800e8SDoug Rabson && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1090b528cefcSMark Murray 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 1091b528cefcSMark Murray /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1092c19800e8SDoug Rabson && { echo i486-ncr-sysv4; exit; } ;; 1093*ae771770SStanislav Sedov NCR*:*:4.2:* | MPRAS*:*:4.2:*) 1094*ae771770SStanislav Sedov OS_REL='.3' 1095*ae771770SStanislav Sedov test -r /etc/.relid \ 1096*ae771770SStanislav Sedov && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1097*ae771770SStanislav Sedov /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1098*ae771770SStanislav Sedov && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 1099*ae771770SStanislav Sedov /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1100*ae771770SStanislav Sedov && { echo i586-ncr-sysv4.3${OS_REL}; exit; } 1101*ae771770SStanislav Sedov /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ 1102*ae771770SStanislav Sedov && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 11034137ff4cSJacques Vidrine m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 1104b528cefcSMark Murray echo m68k-unknown-lynxos${UNAME_RELEASE} 1105c19800e8SDoug Rabson exit ;; 1106b528cefcSMark Murray mc68030:UNIX_System_V:4.*:*) 1107b528cefcSMark Murray echo m68k-atari-sysv4 1108c19800e8SDoug Rabson exit ;; 1109b528cefcSMark Murray TSUNAMI:LynxOS:2.*:*) 1110b528cefcSMark Murray echo sparc-unknown-lynxos${UNAME_RELEASE} 1111c19800e8SDoug Rabson exit ;; 11124137ff4cSJacques Vidrine rs6000:LynxOS:2.*:*) 1113b528cefcSMark Murray echo rs6000-unknown-lynxos${UNAME_RELEASE} 1114c19800e8SDoug Rabson exit ;; 1115*ae771770SStanislav Sedov PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) 11164137ff4cSJacques Vidrine echo powerpc-unknown-lynxos${UNAME_RELEASE} 1117c19800e8SDoug Rabson exit ;; 1118b528cefcSMark Murray SM[BE]S:UNIX_SV:*:*) 1119b528cefcSMark Murray echo mips-dde-sysv${UNAME_RELEASE} 1120c19800e8SDoug Rabson exit ;; 11215e9cd1aeSAssar Westerlund RM*:ReliantUNIX-*:*:*) 11225e9cd1aeSAssar Westerlund echo mips-sni-sysv4 1123c19800e8SDoug Rabson exit ;; 1124b528cefcSMark Murray RM*:SINIX-*:*:*) 1125b528cefcSMark Murray echo mips-sni-sysv4 1126c19800e8SDoug Rabson exit ;; 1127b528cefcSMark Murray *:SINIX-*:*:*) 1128b528cefcSMark Murray if uname -p 2>/dev/null >/dev/null ; then 1129b528cefcSMark Murray UNAME_MACHINE=`(uname -p) 2>/dev/null` 1130b528cefcSMark Murray echo ${UNAME_MACHINE}-sni-sysv4 1131b528cefcSMark Murray else 1132b528cefcSMark Murray echo ns32k-sni-sysv 1133b528cefcSMark Murray fi 1134c19800e8SDoug Rabson exit ;; 11354137ff4cSJacques Vidrine PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 1136b528cefcSMark Murray # says <Richard.M.Bartel@ccMail.Census.GOV> 1137b528cefcSMark Murray echo i586-unisys-sysv4 1138c19800e8SDoug Rabson exit ;; 1139b528cefcSMark Murray *:UNIX_System_V:4*:FTX*) 1140b528cefcSMark Murray # From Gerald Hewes <hewes@openmarket.com>. 1141b528cefcSMark Murray # How about differentiating between stratus architectures? -djm 1142b528cefcSMark Murray echo hppa1.1-stratus-sysv4 1143c19800e8SDoug Rabson exit ;; 1144b528cefcSMark Murray *:*:*:FTX*) 1145b528cefcSMark Murray # From seanf@swdc.stratus.com. 1146b528cefcSMark Murray echo i860-stratus-sysv4 1147c19800e8SDoug Rabson exit ;; 1148c19800e8SDoug Rabson i*86:VOS:*:*) 1149c19800e8SDoug Rabson # From Paul.Green@stratus.com. 1150c19800e8SDoug Rabson echo ${UNAME_MACHINE}-stratus-vos 1151c19800e8SDoug Rabson exit ;; 11524137ff4cSJacques Vidrine *:VOS:*:*) 11534137ff4cSJacques Vidrine # From Paul.Green@stratus.com. 11544137ff4cSJacques Vidrine echo hppa1.1-stratus-vos 1155c19800e8SDoug Rabson exit ;; 1156b528cefcSMark Murray mc68*:A/UX:*:*) 1157b528cefcSMark Murray echo m68k-apple-aux${UNAME_RELEASE} 1158c19800e8SDoug Rabson exit ;; 11595e9cd1aeSAssar Westerlund news*:NEWS-OS:6*:*) 1160b528cefcSMark Murray echo mips-sony-newsos6 1161c19800e8SDoug Rabson exit ;; 11625e9cd1aeSAssar Westerlund R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 1163b528cefcSMark Murray if [ -d /usr/nec ]; then 1164b528cefcSMark Murray echo mips-nec-sysv${UNAME_RELEASE} 1165b528cefcSMark Murray else 1166b528cefcSMark Murray echo mips-unknown-sysv${UNAME_RELEASE} 1167b528cefcSMark Murray fi 1168c19800e8SDoug Rabson exit ;; 1169b528cefcSMark Murray BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 1170b528cefcSMark Murray echo powerpc-be-beos 1171c19800e8SDoug Rabson exit ;; 1172b528cefcSMark Murray BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 1173b528cefcSMark Murray echo powerpc-apple-beos 1174c19800e8SDoug Rabson exit ;; 1175b528cefcSMark Murray BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 1176b528cefcSMark Murray echo i586-pc-beos 1177c19800e8SDoug Rabson exit ;; 1178*ae771770SStanislav Sedov BePC:Haiku:*:*) # Haiku running on Intel PC compatible. 1179*ae771770SStanislav Sedov echo i586-pc-haiku 1180*ae771770SStanislav Sedov exit ;; 1181b528cefcSMark Murray SX-4:SUPER-UX:*:*) 1182b528cefcSMark Murray echo sx4-nec-superux${UNAME_RELEASE} 1183c19800e8SDoug Rabson exit ;; 1184b528cefcSMark Murray SX-5:SUPER-UX:*:*) 1185b528cefcSMark Murray echo sx5-nec-superux${UNAME_RELEASE} 1186c19800e8SDoug Rabson exit ;; 11871c43270aSJacques Vidrine SX-6:SUPER-UX:*:*) 11881c43270aSJacques Vidrine echo sx6-nec-superux${UNAME_RELEASE} 1189c19800e8SDoug Rabson exit ;; 1190*ae771770SStanislav Sedov SX-7:SUPER-UX:*:*) 1191*ae771770SStanislav Sedov echo sx7-nec-superux${UNAME_RELEASE} 1192*ae771770SStanislav Sedov exit ;; 1193*ae771770SStanislav Sedov SX-8:SUPER-UX:*:*) 1194*ae771770SStanislav Sedov echo sx8-nec-superux${UNAME_RELEASE} 1195*ae771770SStanislav Sedov exit ;; 1196*ae771770SStanislav Sedov SX-8R:SUPER-UX:*:*) 1197*ae771770SStanislav Sedov echo sx8r-nec-superux${UNAME_RELEASE} 1198*ae771770SStanislav Sedov exit ;; 1199b528cefcSMark Murray Power*:Rhapsody:*:*) 1200b528cefcSMark Murray echo powerpc-apple-rhapsody${UNAME_RELEASE} 1201c19800e8SDoug Rabson exit ;; 1202b528cefcSMark Murray *:Rhapsody:*:*) 1203b528cefcSMark Murray echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 1204c19800e8SDoug Rabson exit ;; 12055e9cd1aeSAssar Westerlund *:Darwin:*:*) 1206c19800e8SDoug Rabson UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 1207c19800e8SDoug Rabson case $UNAME_PROCESSOR in 1208*ae771770SStanislav Sedov i386) 1209*ae771770SStanislav Sedov eval $set_cc_for_build 1210*ae771770SStanislav Sedov if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 1211*ae771770SStanislav Sedov if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ 1212*ae771770SStanislav Sedov (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 1213*ae771770SStanislav Sedov grep IS_64BIT_ARCH >/dev/null 1214*ae771770SStanislav Sedov then 1215*ae771770SStanislav Sedov UNAME_PROCESSOR="x86_64" 1216*ae771770SStanislav Sedov fi 1217*ae771770SStanislav Sedov fi ;; 1218c19800e8SDoug Rabson unknown) UNAME_PROCESSOR=powerpc ;; 12191c43270aSJacques Vidrine esac 12201c43270aSJacques Vidrine echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 1221c19800e8SDoug Rabson exit ;; 12225e9cd1aeSAssar Westerlund *:procnto*:*:* | *:QNX:[0123456789]*:*) 12238373020dSJacques Vidrine UNAME_PROCESSOR=`uname -p` 12248373020dSJacques Vidrine if test "$UNAME_PROCESSOR" = "x86"; then 12258373020dSJacques Vidrine UNAME_PROCESSOR=i386 12265e9cd1aeSAssar Westerlund UNAME_MACHINE=pc 12275e9cd1aeSAssar Westerlund fi 12288373020dSJacques Vidrine echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 1229c19800e8SDoug Rabson exit ;; 12305e9cd1aeSAssar Westerlund *:QNX:*:4*) 12315e9cd1aeSAssar Westerlund echo i386-pc-qnx 1232c19800e8SDoug Rabson exit ;; 1233c19800e8SDoug Rabson NSE-?:NONSTOP_KERNEL:*:*) 1234c19800e8SDoug Rabson echo nse-tandem-nsk${UNAME_RELEASE} 1235c19800e8SDoug Rabson exit ;; 12368d4ba808SJacques Vidrine NSR-?:NONSTOP_KERNEL:*:*) 12375e9cd1aeSAssar Westerlund echo nsr-tandem-nsk${UNAME_RELEASE} 1238c19800e8SDoug Rabson exit ;; 12394137ff4cSJacques Vidrine *:NonStop-UX:*:*) 12404137ff4cSJacques Vidrine echo mips-compaq-nonstopux 1241c19800e8SDoug Rabson exit ;; 12425e9cd1aeSAssar Westerlund BS2000:POSIX*:*:*) 12435e9cd1aeSAssar Westerlund echo bs2000-siemens-sysv 1244c19800e8SDoug Rabson exit ;; 12455e9cd1aeSAssar Westerlund DS/*:UNIX_System_V:*:*) 12465e9cd1aeSAssar Westerlund echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 1247c19800e8SDoug Rabson exit ;; 12485e9cd1aeSAssar Westerlund *:Plan9:*:*) 12495e9cd1aeSAssar Westerlund # "uname -m" is not consistent, so use $cputype instead. 386 12505e9cd1aeSAssar Westerlund # is converted to i386 for consistency with other x86 12515e9cd1aeSAssar Westerlund # operating systems. 12525e9cd1aeSAssar Westerlund if test "$cputype" = "386"; then 12535e9cd1aeSAssar Westerlund UNAME_MACHINE=i386 12545e9cd1aeSAssar Westerlund else 12555e9cd1aeSAssar Westerlund UNAME_MACHINE="$cputype" 12565e9cd1aeSAssar Westerlund fi 12575e9cd1aeSAssar Westerlund echo ${UNAME_MACHINE}-unknown-plan9 1258c19800e8SDoug Rabson exit ;; 12594137ff4cSJacques Vidrine *:TOPS-10:*:*) 12604137ff4cSJacques Vidrine echo pdp10-unknown-tops10 1261c19800e8SDoug Rabson exit ;; 12624137ff4cSJacques Vidrine *:TENEX:*:*) 12634137ff4cSJacques Vidrine echo pdp10-unknown-tenex 1264c19800e8SDoug Rabson exit ;; 12654137ff4cSJacques Vidrine KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 12664137ff4cSJacques Vidrine echo pdp10-dec-tops20 1267c19800e8SDoug Rabson exit ;; 12684137ff4cSJacques Vidrine XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 12694137ff4cSJacques Vidrine echo pdp10-xkl-tops20 1270c19800e8SDoug Rabson exit ;; 12714137ff4cSJacques Vidrine *:TOPS-20:*:*) 12724137ff4cSJacques Vidrine echo pdp10-unknown-tops20 1273c19800e8SDoug Rabson exit ;; 12744137ff4cSJacques Vidrine *:ITS:*:*) 12754137ff4cSJacques Vidrine echo pdp10-unknown-its 1276c19800e8SDoug Rabson exit ;; 12771c43270aSJacques Vidrine SEI:*:*:SEIUX) 12781c43270aSJacques Vidrine echo mips-sei-seiux${UNAME_RELEASE} 1279c19800e8SDoug Rabson exit ;; 12808d4ba808SJacques Vidrine *:DragonFly:*:*) 12818d4ba808SJacques Vidrine echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 1282c19800e8SDoug Rabson exit ;; 1283c19800e8SDoug Rabson *:*VMS:*:*) 1284c19800e8SDoug Rabson UNAME_MACHINE=`(uname -p) 2>/dev/null` 1285c19800e8SDoug Rabson case "${UNAME_MACHINE}" in 1286c19800e8SDoug Rabson A*) echo alpha-dec-vms ; exit ;; 1287c19800e8SDoug Rabson I*) echo ia64-dec-vms ; exit ;; 1288c19800e8SDoug Rabson V*) echo vax-dec-vms ; exit ;; 1289c19800e8SDoug Rabson esac ;; 1290c19800e8SDoug Rabson *:XENIX:*:SysV) 1291c19800e8SDoug Rabson echo i386-pc-xenix 1292c19800e8SDoug Rabson exit ;; 1293c19800e8SDoug Rabson i*86:skyos:*:*) 1294c19800e8SDoug Rabson echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' 1295c19800e8SDoug Rabson exit ;; 1296c19800e8SDoug Rabson i*86:rdos:*:*) 1297c19800e8SDoug Rabson echo ${UNAME_MACHINE}-pc-rdos 1298c19800e8SDoug Rabson exit ;; 1299*ae771770SStanislav Sedov i*86:AROS:*:*) 1300*ae771770SStanislav Sedov echo ${UNAME_MACHINE}-pc-aros 1301*ae771770SStanislav Sedov exit ;; 1302b528cefcSMark Murrayesac 1303b528cefcSMark Murray 1304b528cefcSMark Murray#echo '(No uname command or uname output not recognized.)' 1>&2 1305b528cefcSMark Murray#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 1306b528cefcSMark Murray 13074137ff4cSJacques Vidrineeval $set_cc_for_build 1308b528cefcSMark Murraycat >$dummy.c <<EOF 1309b528cefcSMark Murray#ifdef _SEQUENT_ 1310b528cefcSMark Murray# include <sys/types.h> 1311b528cefcSMark Murray# include <sys/utsname.h> 1312b528cefcSMark Murray#endif 1313b528cefcSMark Murraymain () 1314b528cefcSMark Murray{ 1315b528cefcSMark Murray#if defined (sony) 1316b528cefcSMark Murray#if defined (MIPSEB) 1317b528cefcSMark Murray /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, 1318b528cefcSMark Murray I don't know.... */ 1319b528cefcSMark Murray printf ("mips-sony-bsd\n"); exit (0); 1320b528cefcSMark Murray#else 1321b528cefcSMark Murray#include <sys/param.h> 1322b528cefcSMark Murray printf ("m68k-sony-newsos%s\n", 1323b528cefcSMark Murray#ifdef NEWSOS4 1324b528cefcSMark Murray "4" 1325b528cefcSMark Murray#else 1326b528cefcSMark Murray "" 1327b528cefcSMark Murray#endif 1328b528cefcSMark Murray ); exit (0); 1329b528cefcSMark Murray#endif 1330b528cefcSMark Murray#endif 1331b528cefcSMark Murray 1332b528cefcSMark Murray#if defined (__arm) && defined (__acorn) && defined (__unix) 1333c19800e8SDoug Rabson printf ("arm-acorn-riscix\n"); exit (0); 1334b528cefcSMark Murray#endif 1335b528cefcSMark Murray 1336b528cefcSMark Murray#if defined (hp300) && !defined (hpux) 1337b528cefcSMark Murray printf ("m68k-hp-bsd\n"); exit (0); 1338b528cefcSMark Murray#endif 1339b528cefcSMark Murray 1340b528cefcSMark Murray#if defined (NeXT) 1341b528cefcSMark Murray#if !defined (__ARCHITECTURE__) 1342b528cefcSMark Murray#define __ARCHITECTURE__ "m68k" 1343b528cefcSMark Murray#endif 1344b528cefcSMark Murray int version; 1345b528cefcSMark Murray version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; 1346b528cefcSMark Murray if (version < 4) 1347b528cefcSMark Murray printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); 1348b528cefcSMark Murray else 1349b528cefcSMark Murray printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); 1350b528cefcSMark Murray exit (0); 1351b528cefcSMark Murray#endif 1352b528cefcSMark Murray 1353b528cefcSMark Murray#if defined (MULTIMAX) || defined (n16) 1354b528cefcSMark Murray#if defined (UMAXV) 1355b528cefcSMark Murray printf ("ns32k-encore-sysv\n"); exit (0); 1356b528cefcSMark Murray#else 1357b528cefcSMark Murray#if defined (CMU) 1358b528cefcSMark Murray printf ("ns32k-encore-mach\n"); exit (0); 1359b528cefcSMark Murray#else 1360b528cefcSMark Murray printf ("ns32k-encore-bsd\n"); exit (0); 1361b528cefcSMark Murray#endif 1362b528cefcSMark Murray#endif 1363b528cefcSMark Murray#endif 1364b528cefcSMark Murray 1365b528cefcSMark Murray#if defined (__386BSD__) 1366b528cefcSMark Murray printf ("i386-pc-bsd\n"); exit (0); 1367b528cefcSMark Murray#endif 1368b528cefcSMark Murray 1369b528cefcSMark Murray#if defined (sequent) 1370b528cefcSMark Murray#if defined (i386) 1371b528cefcSMark Murray printf ("i386-sequent-dynix\n"); exit (0); 1372b528cefcSMark Murray#endif 1373b528cefcSMark Murray#if defined (ns32000) 1374b528cefcSMark Murray printf ("ns32k-sequent-dynix\n"); exit (0); 1375b528cefcSMark Murray#endif 1376b528cefcSMark Murray#endif 1377b528cefcSMark Murray 1378b528cefcSMark Murray#if defined (_SEQUENT_) 1379b528cefcSMark Murray struct utsname un; 1380b528cefcSMark Murray 1381b528cefcSMark Murray uname(&un); 1382b528cefcSMark Murray 1383b528cefcSMark Murray if (strncmp(un.version, "V2", 2) == 0) { 1384b528cefcSMark Murray printf ("i386-sequent-ptx2\n"); exit (0); 1385b528cefcSMark Murray } 1386b528cefcSMark Murray if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ 1387b528cefcSMark Murray printf ("i386-sequent-ptx1\n"); exit (0); 1388b528cefcSMark Murray } 1389b528cefcSMark Murray printf ("i386-sequent-ptx\n"); exit (0); 1390b528cefcSMark Murray 1391b528cefcSMark Murray#endif 1392b528cefcSMark Murray 1393b528cefcSMark Murray#if defined (vax) 1394b528cefcSMark Murray# if !defined (ultrix) 13954137ff4cSJacques Vidrine# include <sys/param.h> 13964137ff4cSJacques Vidrine# if defined (BSD) 13974137ff4cSJacques Vidrine# if BSD == 43 13984137ff4cSJacques Vidrine printf ("vax-dec-bsd4.3\n"); exit (0); 13994137ff4cSJacques Vidrine# else 14004137ff4cSJacques Vidrine# if BSD == 199006 14014137ff4cSJacques Vidrine printf ("vax-dec-bsd4.3reno\n"); exit (0); 14024137ff4cSJacques Vidrine# else 1403b528cefcSMark Murray printf ("vax-dec-bsd\n"); exit (0); 14044137ff4cSJacques Vidrine# endif 14054137ff4cSJacques Vidrine# endif 14064137ff4cSJacques Vidrine# else 14074137ff4cSJacques Vidrine printf ("vax-dec-bsd\n"); exit (0); 14084137ff4cSJacques Vidrine# endif 1409b528cefcSMark Murray# else 1410b528cefcSMark Murray printf ("vax-dec-ultrix\n"); exit (0); 1411b528cefcSMark Murray# endif 1412b528cefcSMark Murray#endif 1413b528cefcSMark Murray 1414b528cefcSMark Murray#if defined (alliant) && defined (i860) 1415b528cefcSMark Murray printf ("i860-alliant-bsd\n"); exit (0); 1416b528cefcSMark Murray#endif 1417b528cefcSMark Murray 1418b528cefcSMark Murray exit (1); 1419b528cefcSMark Murray} 1420b528cefcSMark MurrayEOF 1421b528cefcSMark Murray 1422c19800e8SDoug Rabson$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && 1423c19800e8SDoug Rabson { echo "$SYSTEM_NAME"; exit; } 1424b528cefcSMark Murray 1425b528cefcSMark Murray# Apollos put the system type in the environment. 1426b528cefcSMark Murray 1427c19800e8SDoug Rabsontest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } 1428b528cefcSMark Murray 1429b528cefcSMark Murray# Convex versions that predate uname can use getsysinfo(1) 1430b528cefcSMark Murray 1431b528cefcSMark Murrayif [ -x /usr/convex/getsysinfo ] 1432b528cefcSMark Murraythen 1433b528cefcSMark Murray case `getsysinfo -f cpu_type` in 1434b528cefcSMark Murray c1*) 1435b528cefcSMark Murray echo c1-convex-bsd 1436c19800e8SDoug Rabson exit ;; 1437b528cefcSMark Murray c2*) 1438b528cefcSMark Murray if getsysinfo -f scalar_acc 1439b528cefcSMark Murray then echo c32-convex-bsd 1440b528cefcSMark Murray else echo c2-convex-bsd 1441b528cefcSMark Murray fi 1442c19800e8SDoug Rabson exit ;; 1443b528cefcSMark Murray c34*) 1444b528cefcSMark Murray echo c34-convex-bsd 1445c19800e8SDoug Rabson exit ;; 1446b528cefcSMark Murray c38*) 1447b528cefcSMark Murray echo c38-convex-bsd 1448c19800e8SDoug Rabson exit ;; 1449b528cefcSMark Murray c4*) 1450b528cefcSMark Murray echo c4-convex-bsd 1451c19800e8SDoug Rabson exit ;; 1452b528cefcSMark Murray esac 1453b528cefcSMark Murrayfi 1454b528cefcSMark Murray 14555e9cd1aeSAssar Westerlundcat >&2 <<EOF 14565e9cd1aeSAssar Westerlund$0: unable to guess system type 14575e9cd1aeSAssar Westerlund 14584137ff4cSJacques VidrineThis script, last modified $timestamp, has failed to recognize 14594137ff4cSJacques Vidrinethe operating system you are using. It is advised that you 14604137ff4cSJacques Vidrinedownload the most up to date version of the config scripts from 14615e9cd1aeSAssar Westerlund 1462*ae771770SStanislav Sedov http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 1463c19800e8SDoug Rabsonand 1464*ae771770SStanislav Sedov http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 14655e9cd1aeSAssar Westerlund 14665e9cd1aeSAssar WesterlundIf the version you run ($0) is already up to date, please 14675e9cd1aeSAssar Westerlundsend the following data and any information you think might be 14685e9cd1aeSAssar Westerlundpertinent to <config-patches@gnu.org> in order to provide the needed 14695e9cd1aeSAssar Westerlundinformation to handle your system. 14705e9cd1aeSAssar Westerlund 14714137ff4cSJacques Vidrineconfig.guess timestamp = $timestamp 14725e9cd1aeSAssar Westerlund 14735e9cd1aeSAssar Westerlunduname -m = `(uname -m) 2>/dev/null || echo unknown` 14745e9cd1aeSAssar Westerlunduname -r = `(uname -r) 2>/dev/null || echo unknown` 14755e9cd1aeSAssar Westerlunduname -s = `(uname -s) 2>/dev/null || echo unknown` 14765e9cd1aeSAssar Westerlunduname -v = `(uname -v) 2>/dev/null || echo unknown` 14775e9cd1aeSAssar Westerlund 14785e9cd1aeSAssar Westerlund/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 14795e9cd1aeSAssar Westerlund/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 14805e9cd1aeSAssar Westerlund 14815e9cd1aeSAssar Westerlundhostinfo = `(hostinfo) 2>/dev/null` 14825e9cd1aeSAssar Westerlund/bin/universe = `(/bin/universe) 2>/dev/null` 14835e9cd1aeSAssar Westerlund/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 14845e9cd1aeSAssar Westerlund/bin/arch = `(/bin/arch) 2>/dev/null` 14855e9cd1aeSAssar Westerlund/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 14865e9cd1aeSAssar Westerlund/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 14875e9cd1aeSAssar Westerlund 14885e9cd1aeSAssar WesterlundUNAME_MACHINE = ${UNAME_MACHINE} 14895e9cd1aeSAssar WesterlundUNAME_RELEASE = ${UNAME_RELEASE} 14905e9cd1aeSAssar WesterlundUNAME_SYSTEM = ${UNAME_SYSTEM} 14915e9cd1aeSAssar WesterlundUNAME_VERSION = ${UNAME_VERSION} 14925e9cd1aeSAssar WesterlundEOF 1493b528cefcSMark Murray 1494b528cefcSMark Murrayexit 1 14955e9cd1aeSAssar Westerlund 14965e9cd1aeSAssar Westerlund# Local variables: 14975e9cd1aeSAssar Westerlund# eval: (add-hook 'write-file-hooks 'time-stamp) 14984137ff4cSJacques Vidrine# time-stamp-start: "timestamp='" 14995e9cd1aeSAssar Westerlund# time-stamp-format: "%:y-%02m-%02d" 15005e9cd1aeSAssar Westerlund# time-stamp-end: "'" 15015e9cd1aeSAssar Westerlund# End: 1502