13aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#! /bin/sh 23aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# Attempt to guess a canonical system name. 33aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 43aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 53aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# Free Software Foundation, Inc. 63aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 73aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevtimestamp='2008-01-23' 83aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 93aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# This file is free software; you can redistribute it and/or modify it 103aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# under the terms of the GNU General Public License as published by 113aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# the Free Software Foundation; either version 2 of the License, or 123aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# (at your option) any later version. 133aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# 143aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# This program is distributed in the hope that it will be useful, but 153aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# WITHOUT ANY WARRANTY; without even the implied warranty of 163aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 173aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# General Public License for more details. 183aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# 193aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# You should have received a copy of the GNU General Public License 203aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# along with this program; if not, write to the Free Software 213aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 223aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# 02110-1301, USA. 233aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# 243aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# As a special exception to the GNU General Public License, if you 253aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# distribute this file as part of a program that contains a 263aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# configuration script generated by Autoconf, you may include it under 273aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# the same distribution terms that you use for the rest of that program. 283aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 293aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 303aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# Originally written by Per Bothner <per@bothner.com>. 313aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# Please send patches to <config-patches@gnu.org>. Submit a context 323aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# diff and a properly formatted ChangeLog entry. 333aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# 343aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# This script attempts to guess a canonical system name similar to 353aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# config.sub. If it succeeds, it prints the system name on stdout, and 363aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# exits with 0. Otherwise, it exits with 1. 373aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# 383aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# The plan is that this can be called by configure scripts if you 393aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# don't specify an explicit build system type. 403aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 413aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevme=`echo "$0" | sed -e 's,.*/,,'` 423aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 433aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevusage="\ 443aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevUsage: $0 [OPTION] 453aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 463aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevOutput the configuration name of the system \`$me' is run on. 473aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 483aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevOperation modes: 493aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev -h, --help print this help, then exit 503aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev -t, --time-stamp print date of last modification, then exit 513aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev -v, --version print version number, then exit 523aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 533aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevReport bugs and patches to <config-patches@gnu.org>." 543aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 553aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevversion="\ 563aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevGNU config.guess ($timestamp) 573aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 583aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevOriginally written by Per Bothner. 593aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 603aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. 613aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 623aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevThis is free software; see the source for copying conditions. There is NO 633aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 643aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 653aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevhelp=" 663aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevTry \`$me --help' for more information." 673aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 683aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# Parse command line 693aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevwhile test $# -gt 0 ; do 703aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case $1 in 713aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev --time-stamp | --time* | -t ) 723aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo "$timestamp" ; exit ;; 733aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev --version | -v ) 743aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo "$version" ; exit ;; 753aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev --help | --h* | -h ) 763aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo "$usage"; exit ;; 773aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev -- ) # Stop option processing 783aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev shift; break ;; 793aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev - ) # Use stdin as input. 803aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev break ;; 813aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev -* ) 823aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo "$me: invalid option $1$help" >&2 833aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit 1 ;; 843aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev * ) 853aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev break ;; 863aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev esac 873aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevdone 883aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 893aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevif test $# != 0; then 903aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo "$me: too many arguments$help" >&2 913aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit 1 923aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevfi 933aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 943aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevtrap 'exit 1' 1 2 15 953aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 963aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 973aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# compiler to aid in system detection is discouraged as it requires 983aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# temporary files to be created and, as you can see below, it is a 993aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# headache to deal with in a portable fashion. 1003aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 1013aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 1023aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# use `HOST_CC' if defined, but it is deprecated. 1033aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 1043aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# Portable tmp directory creation inspired by the Autoconf team. 1053aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 1063aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevset_cc_for_build=' 1073aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; 1083aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 1093aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev: ${TMPDIR=/tmp} ; 1103aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 1113aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 1123aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || 1133aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; 1143aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevdummy=$tmp/dummy ; 1153aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; 1163aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevcase $CC_FOR_BUILD,$HOST_CC,$CC in 1173aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ,,) echo "int x;" > $dummy.c ; 1183aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev for c in cc gcc c89 c99 ; do 1193aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then 1203aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev CC_FOR_BUILD="$c"; break ; 1213aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi ; 1223aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev done ; 1233aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if test x"$CC_FOR_BUILD" = x ; then 1243aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev CC_FOR_BUILD=no_compiler_found ; 1253aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 1263aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ;; 1273aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ,,*) CC_FOR_BUILD=$CC ;; 1283aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ,*,*) CC_FOR_BUILD=$HOST_CC ;; 1293aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevesac ; set_cc_for_build= ;' 1303aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 1313aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 1323aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# (ghazi@noc.rutgers.edu 1994-08-24) 1333aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevif (test -f /.attbin/uname) >/dev/null 2>&1 ; then 1343aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev PATH=$PATH:/.attbin ; export PATH 1353aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevfi 1363aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 1373aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 1383aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 1393aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 1403aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 1413aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 1423aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# Note: order is significant - the case branches are not exclusive. 1433aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 1443aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 1453aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:NetBSD:*:*) 1463aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # NetBSD (nbsd) targets should (where applicable) match one or 1473aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, 1483aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 1493aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # switched to ELF, *-*-netbsd* would select the old 1503aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # object file format. This provides both forward 1513aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # compatibility and a consistent mechanism for selecting the 1523aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # object file format. 1533aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # 1543aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # Note: NetBSD doesn't particularly care about the vendor 1553aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # portion of the name. We always set it to "unknown". 1563aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sysctl="sysctl -n hw.machine_arch" 1573aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ 1583aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev /usr/sbin/$sysctl 2>/dev/null || echo unknown)` 1593aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case "${UNAME_MACHINE_ARCH}" in 1603aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev armeb) machine=armeb-unknown ;; 1613aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev arm*) machine=arm-unknown ;; 1623aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sh3el) machine=shl-unknown ;; 1633aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sh3eb) machine=sh-unknown ;; 1643aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sh5el) machine=sh5le-unknown ;; 1653aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 1663aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev esac 1673aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # The Operating System including object format, if it has switched 1683aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # to ELF recently, or will in the future. 1693aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case "${UNAME_MACHINE_ARCH}" in 1703aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev arm*|i386|m68k|ns32k|sh3*|sparc|vax) 1713aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev eval $set_cc_for_build 1723aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 1733aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev | grep __ELF__ >/dev/null 1743aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev then 1753aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 1763aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # Return netbsd for either. FIX? 1773aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev os=netbsd 1783aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else 1793aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev os=netbsdelf 1803aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 1813aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ;; 1823aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *) 1833aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev os=netbsd 1843aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ;; 1853aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev esac 1863aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # The OS release 1873aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # Debian GNU/NetBSD machines have a different userland, and 1883aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # thus, need a distinct triplet. However, they do not need 1893aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # kernel version information, so it can be replaced with a 1903aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # suitable tag, in the style of linux-gnu. 1913aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case "${UNAME_VERSION}" in 1923aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev Debian*) 1933aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev release='-gnu' 1943aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ;; 1953aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *) 1963aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` 1973aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ;; 1983aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev esac 1993aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 2003aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # contains redundant information, the shorter form: 2013aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 2023aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo "${machine}-${os}${release}" 2033aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 2043aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:OpenBSD:*:*) 2053aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 2063aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 2073aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 2083aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:ekkoBSD:*:*) 2093aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 2103aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 2113aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:SolidBSD:*:*) 2123aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} 2133aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 2143aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev macppc:MirBSD:*:*) 2153aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo powerpc-unknown-mirbsd${UNAME_RELEASE} 2163aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 2173aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:MirBSD:*:*) 2183aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 2193aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 2203aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev alpha:OSF1:*:*) 2213aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case $UNAME_RELEASE in 2223aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *4.0) 2233aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 2243aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ;; 2253aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *5.*) 2263aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 2273aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ;; 2283aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev esac 2293aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # According to Compaq, /usr/sbin/psrinfo has been available on 2303aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # OSF/1 and Tru64 systems produced since 1995. I hope that 2313aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # covers most systems running today. This code pipes the CPU 2323aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # types through head -n 1, so we only detect the type of CPU 0. 2333aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 2343aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case "$ALPHA_CPU_TYPE" in 2353aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev "EV4 (21064)") 2363aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_MACHINE="alpha" ;; 2373aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev "EV4.5 (21064)") 2383aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_MACHINE="alpha" ;; 2393aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev "LCA4 (21066/21068)") 2403aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_MACHINE="alpha" ;; 2413aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev "EV5 (21164)") 2423aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_MACHINE="alphaev5" ;; 2433aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev "EV5.6 (21164A)") 2443aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_MACHINE="alphaev56" ;; 2453aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev "EV5.6 (21164PC)") 2463aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_MACHINE="alphapca56" ;; 2473aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev "EV5.7 (21164PC)") 2483aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_MACHINE="alphapca57" ;; 2493aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev "EV6 (21264)") 2503aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_MACHINE="alphaev6" ;; 2513aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev "EV6.7 (21264A)") 2523aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_MACHINE="alphaev67" ;; 2533aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev "EV6.8CB (21264C)") 2543aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_MACHINE="alphaev68" ;; 2553aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev "EV6.8AL (21264B)") 2563aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_MACHINE="alphaev68" ;; 2573aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev "EV6.8CX (21264D)") 2583aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_MACHINE="alphaev68" ;; 2593aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev "EV6.9A (21264/EV69A)") 2603aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_MACHINE="alphaev69" ;; 2613aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev "EV7 (21364)") 2623aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_MACHINE="alphaev7" ;; 2633aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev "EV7.9 (21364A)") 2643aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_MACHINE="alphaev79" ;; 2653aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev esac 2663aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # A Pn.n version is a patched version. 2673aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # A Vn.n version is a released version. 2683aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # A Tn.n version is a released field test version. 2693aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # A Xn.n version is an unreleased experimental baselevel. 2703aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # 1.2 uses "1.2" for uname -r. 2713aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 2723aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 2733aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev Alpha\ *:Windows_NT*:*) 2743aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # How do we know it's Interix rather than the generic POSIX subsystem? 2753aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # Should we change UNAME_MACHINE based on the output of uname instead 2763aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # of the specific Alpha model? 2773aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo alpha-pc-interix 2783aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 2793aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 21064:Windows_NT:50:3) 2803aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo alpha-dec-winnt3.5 2813aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 2823aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev Amiga*:UNIX_System_V:4.0:*) 2833aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m68k-unknown-sysv4 2843aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 2853aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:[Aa]miga[Oo][Ss]:*:*) 2863aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-amigaos 2873aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 2883aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:[Mm]orph[Oo][Ss]:*:*) 2893aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-morphos 2903aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 2913aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:OS/390:*:*) 2923aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo i370-ibm-openedition 2933aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 2943aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:z/VM:*:*) 2953aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo s390-ibm-zvmoe 2963aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 2973aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:OS400:*:*) 2983aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo powerpc-ibm-os400 2993aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 3003aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 3013aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo arm-acorn-riscix${UNAME_RELEASE} 3023aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 3033aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev arm:riscos:*:*|arm:RISCOS:*:*) 3043aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo arm-unknown-riscos 3053aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 3063aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 3073aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo hppa1.1-hitachi-hiuxmpp 3083aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 3093aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 3103aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 3113aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if test "`(/bin/universe) 2>/dev/null`" = att ; then 3123aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo pyramid-pyramid-sysv3 3133aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else 3143aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo pyramid-pyramid-bsd 3153aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 3163aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 3173aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev NILE*:*:*:dcosx) 3183aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo pyramid-pyramid-svr4 3193aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 3203aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev DRS?6000:unix:4.0:6*) 3213aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo sparc-icl-nx6 3223aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 3233aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 3243aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case `/usr/bin/uname -p` in 3253aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sparc) echo sparc-icl-nx7; exit ;; 3263aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev esac ;; 3273aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sun4H:SunOS:5.*:*) 3283aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 3293aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 3303aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 3313aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 3323aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 3333aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) 3343aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 3353aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 3363aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sun4*:SunOS:6*:*) 3373aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # According to config.sub, this is the proper way to canonicalize 3383aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # SunOS6. Hard to guess exactly what SunOS6 will be like, but 3393aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # it's likely to be more like Solaris than SunOS4. 3403aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 3413aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 3423aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sun4*:SunOS:*:*) 3433aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case "`/usr/bin/arch -k`" in 3443aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev Series*|S4*) 3453aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_RELEASE=`uname -v` 3463aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ;; 3473aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev esac 3483aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # Japanese Language versions have a version number like `4.1.3-JL'. 3493aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 3503aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 3513aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sun3*:SunOS:*:*) 3523aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m68k-sun-sunos${UNAME_RELEASE} 3533aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 3543aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sun*:*:4.2BSD:*) 3553aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 3563aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 3573aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case "`/bin/arch`" in 3583aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sun3) 3593aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m68k-sun-sunos${UNAME_RELEASE} 3603aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ;; 3613aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sun4) 3623aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo sparc-sun-sunos${UNAME_RELEASE} 3633aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ;; 3643aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev esac 3653aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 3663aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev aushp:SunOS:*:*) 3673aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo sparc-auspex-sunos${UNAME_RELEASE} 3683aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 3693aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # The situation for MiNT is a little confusing. The machine name 3703aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # can be virtually everything (everything which is not 3713aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # "atarist" or "atariste" at least should have a processor 3723aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 3733aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # to the lowercase version "mint" (or "freemint"). Finally 3743aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # the system name "TOS" denotes a system which is actually not 3753aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # MiNT. But MiNT is downward compatible to TOS, so this should 3763aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # be no problem. 3773aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 3783aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m68k-atari-mint${UNAME_RELEASE} 3793aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 3803aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 3813aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m68k-atari-mint${UNAME_RELEASE} 3823aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 3833aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 3843aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m68k-atari-mint${UNAME_RELEASE} 3853aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 3863aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 3873aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m68k-milan-mint${UNAME_RELEASE} 3883aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 3893aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 3903aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m68k-hades-mint${UNAME_RELEASE} 3913aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 3923aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 3933aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m68k-unknown-mint${UNAME_RELEASE} 3943aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 3953aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev m68k:machten:*:*) 3963aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m68k-apple-machten${UNAME_RELEASE} 3973aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 3983aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev powerpc:machten:*:*) 3993aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo powerpc-apple-machten${UNAME_RELEASE} 4003aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 4013aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev RISC*:Mach:*:*) 4023aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo mips-dec-mach_bsd4.3 4033aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 4043aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev RISC*:ULTRIX:*:*) 4053aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo mips-dec-ultrix${UNAME_RELEASE} 4063aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 4073aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev VAX*:ULTRIX*:*:*) 4083aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo vax-dec-ultrix${UNAME_RELEASE} 4093aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 4103aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 2020:CLIX:*:* | 2430:CLIX:*:*) 4113aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo clipper-intergraph-clix${UNAME_RELEASE} 4123aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 4133aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev mips:*:*:UMIPS | mips:*:*:RISCos) 4143aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev eval $set_cc_for_build 4153aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sed 's/^ //' << EOF >$dummy.c 4163aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#ifdef __cplusplus 4173aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#include <stdio.h> /* for printf() prototype */ 4183aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev int main (int argc, char *argv[]) { 4193aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#else 4203aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev int main (argc, argv) int argc; char *argv[]; { 4213aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#endif 4223aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #if defined (host_mips) && defined (MIPSEB) 4233aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #if defined (SYSTYPE_SYSV) 4243aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 4253aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #endif 4263aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #if defined (SYSTYPE_SVR4) 4273aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 4283aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #endif 4293aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 4303aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 4313aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #endif 4323aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #endif 4333aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit (-1); 4343aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev } 4353aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevEOF 4363aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev $CC_FOR_BUILD -o $dummy $dummy.c && 4373aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 4383aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev SYSTEM_NAME=`$dummy $dummyarg` && 4393aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev { echo "$SYSTEM_NAME"; exit; } 4403aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo mips-mips-riscos${UNAME_RELEASE} 4413aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 4423aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev Motorola:PowerMAX_OS:*:*) 4433aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo powerpc-motorola-powermax 4443aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 4453aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev Motorola:*:4.3:PL8-*) 4463aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo powerpc-harris-powermax 4473aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 4483aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 4493aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo powerpc-harris-powermax 4503aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 4513aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev Night_Hawk:Power_UNIX:*:*) 4523aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo powerpc-harris-powerunix 4533aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 4543aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev m88k:CX/UX:7*:*) 4553aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m88k-harris-cxux7 4563aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 4573aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev m88k:*:4*:R4*) 4583aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m88k-motorola-sysv4 4593aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 4603aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev m88k:*:3*:R3*) 4613aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m88k-motorola-sysv3 4623aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 4633aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev AViiON:dgux:*:*) 4643aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # DG/UX returns AViiON for all architectures 4653aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_PROCESSOR=`/usr/bin/uname -p` 4663aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 4673aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev then 4683aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 4693aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev [ ${TARGET_BINARY_INTERFACE}x = x ] 4703aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev then 4713aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m88k-dg-dgux${UNAME_RELEASE} 4723aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else 4733aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m88k-dg-dguxbcs${UNAME_RELEASE} 4743aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 4753aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else 4763aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo i586-dg-dgux${UNAME_RELEASE} 4773aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 4783aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 4793aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev M88*:DolphinOS:*:*) # DolphinOS (SVR3) 4803aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m88k-dolphin-sysv3 4813aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 4823aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev M88*:*:R3*:*) 4833aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # Delta 88k system running SVR3 4843aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m88k-motorola-sysv3 4853aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 4863aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 4873aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m88k-tektronix-sysv3 4883aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 4893aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 4903aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m68k-tektronix-bsd 4913aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 4923aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:IRIX*:*:*) 4933aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 4943aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 4953aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 4963aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 4973aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 4983aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*86:AIX:*:*) 4993aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo i386-ibm-aix 5003aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 5013aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ia64:AIX:*:*) 5023aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if [ -x /usr/bin/oslevel ] ; then 5033aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev IBM_REV=`/usr/bin/oslevel` 5043aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else 5053aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 5063aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 5073aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 5083aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 5093aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:AIX:2:3) 5103aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 5113aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev eval $set_cc_for_build 5123aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sed 's/^ //' << EOF >$dummy.c 5133aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #include <sys/systemcfg.h> 5143aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 5153aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev main() 5163aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev { 5173aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if (!__power_pc()) 5183aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit(1); 5193aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev puts("powerpc-ibm-aix3.2.5"); 5203aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit(0); 5213aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev } 5223aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevEOF 5233aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 5243aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev then 5253aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo "$SYSTEM_NAME" 5263aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else 5273aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo rs6000-ibm-aix3.2.5 5283aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 5293aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 5303aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo rs6000-ibm-aix3.2.4 5313aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else 5323aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo rs6000-ibm-aix3.2 5333aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 5343aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 5353aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:AIX:*:[456]) 5363aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 5373aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 5383aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev IBM_ARCH=rs6000 5393aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else 5403aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev IBM_ARCH=powerpc 5413aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 5423aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if [ -x /usr/bin/oslevel ] ; then 5433aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev IBM_REV=`/usr/bin/oslevel` 5443aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else 5453aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 5463aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 5473aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${IBM_ARCH}-ibm-aix${IBM_REV} 5483aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 5493aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:AIX:*:*) 5503aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo rs6000-ibm-aix 5513aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 5523aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ibmrt:4.4BSD:*|romp-ibm:BSD:*) 5533aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo romp-ibm-bsd4.4 5543aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 5553aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 5563aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 5573aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; # report: romp-ibm BSD 4.3 5583aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:BOSX:*:*) 5593aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo rs6000-bull-bosx 5603aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 5613aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev DPX/2?00:B.O.S.:*:*) 5623aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m68k-bull-sysv3 5633aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 5643aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 9000/[34]??:4.3bsd:1.*:*) 5653aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m68k-hp-bsd 5663aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 5673aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 5683aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m68k-hp-bsd4.4 5693aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 5703aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 9000/[34678]??:HP-UX:*:*) 5713aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 5723aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case "${UNAME_MACHINE}" in 5733aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 9000/31? ) HP_ARCH=m68000 ;; 5743aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 9000/[34]?? ) HP_ARCH=m68k ;; 5753aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 9000/[678][0-9][0-9]) 5763aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if [ -x /usr/bin/getconf ]; then 5773aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 5783aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 5793aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case "${sc_cpu_version}" in 5803aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 5813aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 5823aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 532) # CPU_PA_RISC2_0 5833aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case "${sc_kernel_bits}" in 5843aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 32) HP_ARCH="hppa2.0n" ;; 5853aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 64) HP_ARCH="hppa2.0w" ;; 5863aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 5873aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev esac ;; 5883aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev esac 5893aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 5903aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if [ "${HP_ARCH}" = "" ]; then 5913aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev eval $set_cc_for_build 5923aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sed 's/^ //' << EOF >$dummy.c 5933aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 5943aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #define _HPUX_SOURCE 5953aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #include <stdlib.h> 5963aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #include <unistd.h> 5973aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 5983aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev int main () 5993aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev { 6003aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #if defined(_SC_KERNEL_BITS) 6013aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev long bits = sysconf(_SC_KERNEL_BITS); 6023aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #endif 6033aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev long cpu = sysconf (_SC_CPU_VERSION); 6043aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 6053aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev switch (cpu) 6063aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev { 6073aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 6083aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 6093aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case CPU_PA_RISC2_0: 6103aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #if defined(_SC_KERNEL_BITS) 6113aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev switch (bits) 6123aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev { 6133aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case 64: puts ("hppa2.0w"); break; 6143aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case 32: puts ("hppa2.0n"); break; 6153aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev default: puts ("hppa2.0"); break; 6163aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev } break; 6173aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #else /* !defined(_SC_KERNEL_BITS) */ 6183aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev puts ("hppa2.0"); break; 6193aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #endif 6203aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev default: puts ("hppa1.0"); break; 6213aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev } 6223aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit (0); 6233aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev } 6243aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevEOF 6253aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 6263aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev test -z "$HP_ARCH" && HP_ARCH=hppa 6273aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi ;; 6283aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev esac 6293aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if [ ${HP_ARCH} = "hppa2.0w" ] 6303aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev then 6313aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev eval $set_cc_for_build 6323aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 6333aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 6343aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 6353aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # generating 64-bit code. GNU and HP use different nomenclature: 6363aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # 6373aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # $ CC_FOR_BUILD=cc ./config.guess 6383aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # => hppa2.0w-hp-hpux11.23 6393aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 6403aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # => hppa64-hp-hpux11.23 6413aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 6423aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | 6433aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev grep __LP64__ >/dev/null 6443aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev then 6453aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev HP_ARCH="hppa2.0w" 6463aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else 6473aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev HP_ARCH="hppa64" 6483aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 6493aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 6503aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${HP_ARCH}-hp-hpux${HPUX_REV} 6513aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 6523aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ia64:HP-UX:*:*) 6533aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 6543aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ia64-hp-hpux${HPUX_REV} 6553aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 6563aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 3050*:HI-UX:*:*) 6573aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev eval $set_cc_for_build 6583aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sed 's/^ //' << EOF >$dummy.c 6593aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #include <unistd.h> 6603aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev int 6613aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev main () 6623aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev { 6633aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev long cpu = sysconf (_SC_CPU_VERSION); 6643aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev /* The order matters, because CPU_IS_HP_MC68K erroneously returns 6653aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 6663aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev results, however. */ 6673aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if (CPU_IS_PA_RISC (cpu)) 6683aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev { 6693aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev switch (cpu) 6703aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev { 6713aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 6723aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 6733aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 6743aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev default: puts ("hppa-hitachi-hiuxwe2"); break; 6753aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev } 6763aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev } 6773aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else if (CPU_IS_HP_MC68K (cpu)) 6783aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev puts ("m68k-hitachi-hiuxwe2"); 6793aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else puts ("unknown-hitachi-hiuxwe2"); 6803aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit (0); 6813aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev } 6823aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevEOF 6833aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 6843aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev { echo "$SYSTEM_NAME"; exit; } 6853aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo unknown-hitachi-hiuxwe2 6863aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 6873aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 6883aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo hppa1.1-hp-bsd 6893aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 6903aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 9000/8??:4.3bsd:*:*) 6913aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo hppa1.0-hp-bsd 6923aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 6933aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 6943aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo hppa1.0-hp-mpeix 6953aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 6963aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 6973aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo hppa1.1-hp-osf 6983aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 6993aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev hp8??:OSF1:*:*) 7003aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo hppa1.0-hp-osf 7013aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7023aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*86:OSF1:*:*) 7033aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if [ -x /usr/sbin/sysversion ] ; then 7043aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-osf1mk 7053aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else 7063aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-osf1 7073aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 7083aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7093aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev parisc*:Lites*:*:*) 7103aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo hppa1.1-hp-lites 7113aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7123aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 7133aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo c1-convex-bsd 7143aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7153aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 7163aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if getsysinfo -f scalar_acc 7173aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev then echo c32-convex-bsd 7183aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else echo c2-convex-bsd 7193aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 7203aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7213aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 7223aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo c34-convex-bsd 7233aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7243aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 7253aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo c38-convex-bsd 7263aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7273aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 7283aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo c4-convex-bsd 7293aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7303aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev CRAY*Y-MP:*:*:*) 7313aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7323aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7333aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev CRAY*[A-Z]90:*:*:*) 7343aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 7353aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 7363aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 7373aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev -e 's/\.[^.]*$/.X/' 7383aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7393aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev CRAY*TS:*:*:*) 7403aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7413aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7423aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev CRAY*T3E:*:*:*) 7433aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7443aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7453aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev CRAY*SV1:*:*:*) 7463aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7473aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7483aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:UNICOS/mp:*:*) 7493aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7503aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7513aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 7523aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 7533aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 7543aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 7553aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 7563aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7573aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 5000:UNIX_System_V:4.*:*) 7583aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 7593aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` 7603aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 7613aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7623aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 7633aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 7643aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7653aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sparc*:BSD/OS:*:*) 7663aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo sparc-unknown-bsdi${UNAME_RELEASE} 7673aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7683aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:BSD/OS:*:*) 7693aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 7703aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7713aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:FreeBSD:*:*) 7723aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case ${UNAME_MACHINE} in 7733aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev pc98) 7743aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 7753aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev amd64) 7763aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 7773aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *) 7783aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 7793aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev esac 7803aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7813aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*:CYGWIN*:*) 7823aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-pc-cygwin 7833aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7843aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:MINGW*:*) 7853aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-pc-mingw32 7863aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7873aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*:windows32*:*) 7883aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # uname -m includes "-pc" on this system. 7893aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-mingw32 7903aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7913aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*:PW*:*) 7923aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-pc-pw32 7933aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7943aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:Interix*:[3456]*) 7953aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case ${UNAME_MACHINE} in 7963aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev x86) 7973aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo i586-pc-interix${UNAME_RELEASE} 7983aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 7993aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev EM64T | authenticamd) 8003aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo x86_64-unknown-interix${UNAME_RELEASE} 8013aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 8023aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev IA64) 8033aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ia64-unknown-interix${UNAME_RELEASE} 8043aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 8053aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev esac ;; 8063aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 8073aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo i${UNAME_MACHINE}-pc-mks 8083aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 8093aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 8103aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # How do we know it's Interix rather than the generic POSIX subsystem? 8113aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 8123aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # UNAME_MACHINE based on the output of uname instead of i386? 8133aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo i586-pc-interix 8143aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 8153aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*:UWIN*:*) 8163aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-pc-uwin 8173aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 8183aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 8193aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo x86_64-unknown-cygwin 8203aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 8213aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev p*:CYGWIN*:*) 8223aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo powerpcle-unknown-cygwin 8233aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 8243aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev prep*:SunOS:5.*:*) 8253aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 8263aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 8273aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:GNU:*:*) 8283aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # the GNU system 8293aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 8303aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 8313aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:GNU/*:*:*) 8323aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # other systems with GNU libc and userland 8333aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu 8343aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 8353aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*86:Minix:*:*) 8363aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-pc-minix 8373aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 8383aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev arm*:Linux:*:*) 8393aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev eval $set_cc_for_build 8403aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ 8413aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev | grep -q __ARM_EABI__ 8423aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev then 8433aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-linux-gnu 8443aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else 8453aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-linux-gnueabi 8463aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 8473aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 8483aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev avr32*:Linux:*:*) 8493aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-linux-gnu 8503aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 8513aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev cris:Linux:*:*) 8523aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo cris-axis-linux-gnu 8533aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 8543aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev crisv32:Linux:*:*) 8553aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo crisv32-axis-linux-gnu 8563aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 8573aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev frv:Linux:*:*) 8583aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo frv-unknown-linux-gnu 8593aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 8603aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ia64:Linux:*:*) 8613aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-linux-gnu 8623aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 8633aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev m32r*:Linux:*:*) 8643aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-linux-gnu 8653aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 8663aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev m68*:Linux:*:*) 8673aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-linux-gnu 8683aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 8693aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev mips:Linux:*:*) 8703aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev eval $set_cc_for_build 8713aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sed 's/^ //' << EOF >$dummy.c 8723aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #undef CPU 8733aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #undef mips 8743aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #undef mipsel 8753aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 8763aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev CPU=mipsel 8773aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #else 8783aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 8793aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev CPU=mips 8803aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #else 8813aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev CPU= 8823aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #endif 8833aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #endif 8843aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevEOF 8853aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 8863aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev /^CPU/{ 8873aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev s: ::g 8883aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev p 8893aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev }'`" 8903aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 8913aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ;; 8923aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev mips64:Linux:*:*) 8933aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev eval $set_cc_for_build 8943aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sed 's/^ //' << EOF >$dummy.c 8953aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #undef CPU 8963aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #undef mips64 8973aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #undef mips64el 8983aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 8993aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev CPU=mips64el 9003aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #else 9013aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 9023aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev CPU=mips64 9033aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #else 9043aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev CPU= 9053aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #endif 9063aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #endif 9073aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevEOF 9083aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 9093aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev /^CPU/{ 9103aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev s: ::g 9113aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev p 9123aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev }'`" 9133aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 9143aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ;; 9153aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev or32:Linux:*:*) 9163aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo or32-unknown-linux-gnu 9173aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 9183aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ppc:Linux:*:*) 9193aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo powerpc-unknown-linux-gnu 9203aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 9213aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ppc64:Linux:*:*) 9223aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo powerpc64-unknown-linux-gnu 9233aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 9243aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev alpha:Linux:*:*) 9253aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 9263aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev EV5) UNAME_MACHINE=alphaev5 ;; 9273aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev EV56) UNAME_MACHINE=alphaev56 ;; 9283aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev PCA56) UNAME_MACHINE=alphapca56 ;; 9293aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev PCA57) UNAME_MACHINE=alphapca56 ;; 9303aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev EV6) UNAME_MACHINE=alphaev6 ;; 9313aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev EV67) UNAME_MACHINE=alphaev67 ;; 9323aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev EV68*) UNAME_MACHINE=alphaev68 ;; 9333aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev esac 9343aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null 9353aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi 9363aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 9373aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 9383aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev parisc:Linux:*:* | hppa:Linux:*:*) 9393aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # Look for CPU level 9403aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 9413aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev PA7*) echo hppa1.1-unknown-linux-gnu ;; 9423aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev PA8*) echo hppa2.0-unknown-linux-gnu ;; 9433aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *) echo hppa-unknown-linux-gnu ;; 9443aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev esac 9453aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 9463aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev parisc64:Linux:*:* | hppa64:Linux:*:*) 9473aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo hppa64-unknown-linux-gnu 9483aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 9493aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev s390:Linux:*:* | s390x:Linux:*:*) 9503aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-ibm-linux 9513aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 9523aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sh64*:Linux:*:*) 9533aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-linux-gnu 9543aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 9553aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sh*:Linux:*:*) 9563aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-linux-gnu 9573aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 9583aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sparc:Linux:*:* | sparc64:Linux:*:*) 9593aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-linux-gnu 9603aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 9613aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev vax:Linux:*:*) 9623aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-dec-linux-gnu 9633aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 9643aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev x86_64:Linux:*:*) 9653aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo x86_64-unknown-linux-gnu 9663aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 9673aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev xtensa*:Linux:*:*) 9683aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-linux-gnu 9693aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 9703aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*86:Linux:*:*) 9713aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # The BFD linker knows what the default object file format is, so 9723aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # first see if it will tell us. cd to the root directory to prevent 9733aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # problems with other programs or directories called `ld' in the path. 9743aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # Set LC_ALL=C to ensure ld outputs messages in English. 9753aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ 9763aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev | sed -ne '/supported targets:/!d 9773aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev s/[ ][ ]*/ /g 9783aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev s/.*supported targets: *// 9793aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev s/ .*// 9803aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev p'` 9813aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case "$ld_supported_targets" in 9823aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev elf32-i386) 9833aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" 9843aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ;; 9853aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev a.out-i386-linux) 9863aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo "${UNAME_MACHINE}-pc-linux-gnuaout" 9873aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 9883aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev coff-i386) 9893aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo "${UNAME_MACHINE}-pc-linux-gnucoff" 9903aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 9913aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev "") 9923aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # Either a pre-BFD a.out linker (linux-gnuoldld) or 9933aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # one that does not give us useful --help. 9943aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo "${UNAME_MACHINE}-pc-linux-gnuoldld" 9953aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 9963aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev esac 9973aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # Determine whether the default compiler is a.out or elf 9983aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev eval $set_cc_for_build 9993aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev sed 's/^ //' << EOF >$dummy.c 10003aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #include <features.h> 10013aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #ifdef __ELF__ 10023aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # ifdef __GLIBC__ 10033aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # if __GLIBC__ >= 2 10043aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev LIBC=gnu 10053aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # else 10063aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev LIBC=gnulibc1 10073aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # endif 10083aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # else 10093aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev LIBC=gnulibc1 10103aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # endif 10113aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #else 10123aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC) 10133aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev LIBC=gnu 10143aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #else 10153aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev LIBC=gnuaout 10163aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #endif 10173aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #endif 10183aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #ifdef __dietlibc__ 10193aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev LIBC=dietlibc 10203aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev #endif 10213aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevEOF 10223aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 10233aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev /^LIBC/{ 10243aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev s: ::g 10253aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev p 10263aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev }'`" 10273aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev test x"${LIBC}" != x && { 10283aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo "${UNAME_MACHINE}-pc-linux-${LIBC}" 10293aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit 10303aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev } 10313aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; } 10323aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ;; 10333aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*86:DYNIX/ptx:4*:*) 10343aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 10353aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # earlier versions are messed up and put the nodename in both 10363aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # sysname and nodename. 10373aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo i386-sequent-sysv4 10383aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 10393aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*86:UNIX_SV:4.2MP:2.*) 10403aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # Unixware is an offshoot of SVR4, but it has its own version 10413aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # number series starting with 2... 10423aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # I am not positive that other SVR4 systems won't match this, 10433aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # I just have to hope. -- rms. 10443aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # Use sysv4.2uw... so that sysv4* matches it. 10453aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 10463aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 10473aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*86:OS/2:*:*) 10483aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # If we were able to find `uname', then EMX Unix compatibility 10493aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # is probably installed. 10503aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-pc-os2-emx 10513aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 10523aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*86:XTS-300:*:STOP) 10533aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-stop 10543aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 10553aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*86:atheos:*:*) 10563aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-atheos 10573aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 10583aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*86:syllable:*:*) 10593aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-pc-syllable 10603aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 10613aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) 10623aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo i386-unknown-lynxos${UNAME_RELEASE} 10633aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 10643aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*86:*DOS:*:*) 10653aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-pc-msdosdjgpp 10663aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 10673aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 10683aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 10693aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 10703aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 10713aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else 10723aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 10733aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 10743aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 10753aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*86:*:5:[678]*) 10763aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # UnixWare 7.x, OpenUNIX and OpenServer 6. 10773aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case `/bin/uname -X | grep "^Machine"` in 10783aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *486*) UNAME_MACHINE=i486 ;; 10793aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *Pentium) UNAME_MACHINE=i586 ;; 10803aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 10813aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev esac 10823aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 10833aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 10843aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*86:*:3.2:*) 10853aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if test -f /usr/options/cb.name; then 10863aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 10873aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 10883aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev elif /bin/uname -X 2>/dev/null >/dev/null ; then 10893aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 10903aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 10913aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 10923aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev && UNAME_MACHINE=i586 10933aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 10943aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev && UNAME_MACHINE=i686 10953aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 10963aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev && UNAME_MACHINE=i686 10973aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 10983aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else 10993aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-pc-sysv32 11003aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 11013aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 11023aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev pc:*:*:*) 11033aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # Left here for compatibility: 11043aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # uname -m prints for DJGPP always 'pc', but it prints nothing about 11053aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # the processor, so we play safe by assuming i386. 11063aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo i386-pc-msdosdjgpp 11073aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 11083aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev Intel:Mach:3*:*) 11093aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo i386-pc-mach3 11103aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 11113aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev paragon:*:*:*) 11123aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo i860-intel-osf1 11133aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 11143aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i860:*:4.*:*) # i860-SVR4 11153aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 11163aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 11173aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else # Add other i860-SVR4 vendors below as they are discovered. 11183aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 11193aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 11203aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 11213aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev mini*:CTIX:SYS*5:*) 11223aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # "miniframe" 11233aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m68010-convergent-sysv 11243aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 11253aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev mc68k:UNIX:SYSTEM5:3.51m) 11263aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m68k-convergent-sysv 11273aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 11283aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev M680?0:D-NIX:5.3:*) 11293aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m68k-diab-dnix 11303aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 11313aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev M68*:*:R3V[5678]*:*) 11323aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 11333aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 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) 11343aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev OS_REL='' 11353aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev test -r /etc/.relid \ 11363aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 11373aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 11383aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 11393aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 11403aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 11413aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 11423aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 11433aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev && { echo i486-ncr-sysv4; exit; } ;; 11443aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 11453aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m68k-unknown-lynxos${UNAME_RELEASE} 11463aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 11473aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev mc68030:UNIX_System_V:4.*:*) 11483aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m68k-atari-sysv4 11493aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 11503aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev TSUNAMI:LynxOS:2.*:*) 11513aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo sparc-unknown-lynxos${UNAME_RELEASE} 11523aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 11533aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev rs6000:LynxOS:2.*:*) 11543aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo rs6000-unknown-lynxos${UNAME_RELEASE} 11553aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 11563aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) 11573aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo powerpc-unknown-lynxos${UNAME_RELEASE} 11583aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 11593aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev SM[BE]S:UNIX_SV:*:*) 11603aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo mips-dde-sysv${UNAME_RELEASE} 11613aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 11623aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev RM*:ReliantUNIX-*:*:*) 11633aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo mips-sni-sysv4 11643aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 11653aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev RM*:SINIX-*:*:*) 11663aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo mips-sni-sysv4 11673aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 11683aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:SINIX-*:*:*) 11693aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if uname -p 2>/dev/null >/dev/null ; then 11703aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_MACHINE=`(uname -p) 2>/dev/null` 11713aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-sni-sysv4 11723aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else 11733aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ns32k-sni-sysv 11743aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 11753aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 11763aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 11773aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # says <Richard.M.Bartel@ccMail.Census.GOV> 11783aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo i586-unisys-sysv4 11793aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 11803aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:UNIX_System_V:4*:FTX*) 11813aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # From Gerald Hewes <hewes@openmarket.com>. 11823aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # How about differentiating between stratus architectures? -djm 11833aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo hppa1.1-stratus-sysv4 11843aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 11853aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:*:*:FTX*) 11863aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # From seanf@swdc.stratus.com. 11873aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo i860-stratus-sysv4 11883aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 11893aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*86:VOS:*:*) 11903aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # From Paul.Green@stratus.com. 11913aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-stratus-vos 11923aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 11933aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:VOS:*:*) 11943aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # From Paul.Green@stratus.com. 11953aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo hppa1.1-stratus-vos 11963aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 11973aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev mc68*:A/UX:*:*) 11983aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo m68k-apple-aux${UNAME_RELEASE} 11993aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12003aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev news*:NEWS-OS:6*:*) 12013aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo mips-sony-newsos6 12023aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12033aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 12043aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if [ -d /usr/nec ]; then 12053aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo mips-nec-sysv${UNAME_RELEASE} 12063aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else 12073aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo mips-unknown-sysv${UNAME_RELEASE} 12083aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 12093aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12103aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 12113aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo powerpc-be-beos 12123aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12133aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 12143aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo powerpc-apple-beos 12153aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12163aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 12173aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo i586-pc-beos 12183aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12193aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev SX-4:SUPER-UX:*:*) 12203aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo sx4-nec-superux${UNAME_RELEASE} 12213aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12223aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev SX-5:SUPER-UX:*:*) 12233aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo sx5-nec-superux${UNAME_RELEASE} 12243aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12253aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev SX-6:SUPER-UX:*:*) 12263aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo sx6-nec-superux${UNAME_RELEASE} 12273aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12283aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev SX-7:SUPER-UX:*:*) 12293aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo sx7-nec-superux${UNAME_RELEASE} 12303aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12313aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev SX-8:SUPER-UX:*:*) 12323aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo sx8-nec-superux${UNAME_RELEASE} 12333aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12343aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev SX-8R:SUPER-UX:*:*) 12353aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo sx8r-nec-superux${UNAME_RELEASE} 12363aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12373aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev Power*:Rhapsody:*:*) 12383aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo powerpc-apple-rhapsody${UNAME_RELEASE} 12393aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12403aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:Rhapsody:*:*) 12413aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 12423aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12433aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:Darwin:*:*) 12443aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 12453aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case $UNAME_PROCESSOR in 12463aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev unknown) UNAME_PROCESSOR=powerpc ;; 12473aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev esac 12483aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 12493aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12503aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:procnto*:*:* | *:QNX:[0123456789]*:*) 12513aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_PROCESSOR=`uname -p` 12523aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if test "$UNAME_PROCESSOR" = "x86"; then 12533aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_PROCESSOR=i386 12543aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_MACHINE=pc 12553aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 12563aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 12573aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12583aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:QNX:*:4*) 12593aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo i386-pc-qnx 12603aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12613aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev NSE-?:NONSTOP_KERNEL:*:*) 12623aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo nse-tandem-nsk${UNAME_RELEASE} 12633aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12643aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev NSR-?:NONSTOP_KERNEL:*:*) 12653aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo nsr-tandem-nsk${UNAME_RELEASE} 12663aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12673aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:NonStop-UX:*:*) 12683aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo mips-compaq-nonstopux 12693aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12703aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev BS2000:POSIX*:*:*) 12713aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo bs2000-siemens-sysv 12723aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12733aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev DS/*:UNIX_System_V:*:*) 12743aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 12753aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12763aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:Plan9:*:*) 12773aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # "uname -m" is not consistent, so use $cputype instead. 386 12783aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # is converted to i386 for consistency with other x86 12793aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev # operating systems. 12803aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if test "$cputype" = "386"; then 12813aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_MACHINE=i386 12823aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else 12833aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_MACHINE="$cputype" 12843aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 12853aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-plan9 12863aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12873aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:TOPS-10:*:*) 12883aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo pdp10-unknown-tops10 12893aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12903aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:TENEX:*:*) 12913aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo pdp10-unknown-tenex 12923aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12933aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 12943aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo pdp10-dec-tops20 12953aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12963aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 12973aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo pdp10-xkl-tops20 12983aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 12993aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:TOPS-20:*:*) 13003aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo pdp10-unknown-tops20 13013aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 13023aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:ITS:*:*) 13033aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo pdp10-unknown-its 13043aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 13053aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev SEI:*:*:SEIUX) 13063aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo mips-sei-seiux${UNAME_RELEASE} 13073aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 13083aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:DragonFly:*:*) 13093aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 13103aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 13113aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:*VMS:*:*) 13123aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev UNAME_MACHINE=`(uname -p) 2>/dev/null` 13133aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case "${UNAME_MACHINE}" in 13143aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev A*) echo alpha-dec-vms ; exit ;; 13153aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev I*) echo ia64-dec-vms ; exit ;; 13163aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev V*) echo vax-dec-vms ; exit ;; 13173aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev esac ;; 13183aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev *:XENIX:*:SysV) 13193aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo i386-pc-xenix 13203aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 13213aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*86:skyos:*:*) 13223aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' 13233aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 13243aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev i*86:rdos:*:*) 13253aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo ${UNAME_MACHINE}-pc-rdos 13263aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 13273aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevesac 13283aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 13293aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#echo '(No uname command or uname output not recognized.)' 1>&2 13303aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 13313aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 13323aa430dc5437a98734b36f996f9b17081a589143Yavor Goulisheveval $set_cc_for_build 13333aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevcat >$dummy.c <<EOF 13343aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#ifdef _SEQUENT_ 13353aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# include <sys/types.h> 13363aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# include <sys/utsname.h> 13373aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#endif 13383aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevmain () 13393aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev{ 13403aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#if defined (sony) 13413aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#if defined (MIPSEB) 13423aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, 13433aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev I don't know.... */ 13443aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("mips-sony-bsd\n"); exit (0); 13453aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#else 13463aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#include <sys/param.h> 13473aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("m68k-sony-newsos%s\n", 13483aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#ifdef NEWSOS4 13493aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev "4" 13503aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#else 13513aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev "" 13523aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#endif 13533aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev ); exit (0); 13543aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#endif 13553aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#endif 13563aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 13573aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#if defined (__arm) && defined (__acorn) && defined (__unix) 13583aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("arm-acorn-riscix\n"); exit (0); 13593aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#endif 13603aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 13613aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#if defined (hp300) && !defined (hpux) 13623aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("m68k-hp-bsd\n"); exit (0); 13633aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#endif 13643aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 13653aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#if defined (NeXT) 13663aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#if !defined (__ARCHITECTURE__) 13673aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#define __ARCHITECTURE__ "m68k" 13683aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#endif 13693aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev int version; 13703aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; 13713aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if (version < 4) 13723aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); 13733aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else 13743aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); 13753aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit (0); 13763aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#endif 13773aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 13783aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#if defined (MULTIMAX) || defined (n16) 13793aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#if defined (UMAXV) 13803aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("ns32k-encore-sysv\n"); exit (0); 13813aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#else 13823aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#if defined (CMU) 13833aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("ns32k-encore-mach\n"); exit (0); 13843aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#else 13853aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("ns32k-encore-bsd\n"); exit (0); 13863aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#endif 13873aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#endif 13883aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#endif 13893aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 13903aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#if defined (__386BSD__) 13913aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("i386-pc-bsd\n"); exit (0); 13923aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#endif 13933aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 13943aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#if defined (sequent) 13953aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#if defined (i386) 13963aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("i386-sequent-dynix\n"); exit (0); 13973aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#endif 13983aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#if defined (ns32000) 13993aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("ns32k-sequent-dynix\n"); exit (0); 14003aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#endif 14013aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#endif 14023aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 14033aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#if defined (_SEQUENT_) 14043aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev struct utsname un; 14053aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 14063aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev uname(&un); 14073aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 14083aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if (strncmp(un.version, "V2", 2) == 0) { 14093aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("i386-sequent-ptx2\n"); exit (0); 14103aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev } 14113aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ 14123aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("i386-sequent-ptx1\n"); exit (0); 14133aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev } 14143aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("i386-sequent-ptx\n"); exit (0); 14153aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 14163aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#endif 14173aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 14183aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#if defined (vax) 14193aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# if !defined (ultrix) 14203aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# include <sys/param.h> 14213aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# if defined (BSD) 14223aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# if BSD == 43 14233aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("vax-dec-bsd4.3\n"); exit (0); 14243aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# else 14253aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# if BSD == 199006 14263aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("vax-dec-bsd4.3reno\n"); exit (0); 14273aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# else 14283aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("vax-dec-bsd\n"); exit (0); 14293aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# endif 14303aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# endif 14313aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# else 14323aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("vax-dec-bsd\n"); exit (0); 14333aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# endif 14343aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# else 14353aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("vax-dec-ultrix\n"); exit (0); 14363aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# endif 14373aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#endif 14383aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 14393aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#if defined (alliant) && defined (i860) 14403aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev printf ("i860-alliant-bsd\n"); exit (0); 14413aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev#endif 14423aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 14433aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit (1); 14443aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev} 14453aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevEOF 14463aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 14473aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && 14483aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev { echo "$SYSTEM_NAME"; exit; } 14493aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 14503aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# Apollos put the system type in the environment. 14513aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 14523aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } 14533aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 14543aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# Convex versions that predate uname can use getsysinfo(1) 14553aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 14563aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevif [ -x /usr/convex/getsysinfo ] 14573aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevthen 14583aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev case `getsysinfo -f cpu_type` in 14593aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev c1*) 14603aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo c1-convex-bsd 14613aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 14623aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev c2*) 14633aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev if getsysinfo -f scalar_acc 14643aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev then echo c32-convex-bsd 14653aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev else echo c2-convex-bsd 14663aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev fi 14673aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 14683aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev c34*) 14693aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo c34-convex-bsd 14703aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 14713aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev c38*) 14723aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo c38-convex-bsd 14733aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 14743aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev c4*) 14753aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev echo c4-convex-bsd 14763aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev exit ;; 14773aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev esac 14783aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevfi 14793aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 14803aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevcat >&2 <<EOF 14813aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev$0: unable to guess system type 14823aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 14833aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevThis script, last modified $timestamp, has failed to recognize 14843aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevthe operating system you are using. It is advised that you 14853aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevdownload the most up to date version of the config scripts from 14863aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 14873aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 14883aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevand 14893aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 14903aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 14913aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevIf the version you run ($0) is already up to date, please 14923aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevsend the following data and any information you think might be 14933aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevpertinent to <config-patches@gnu.org> in order to provide the needed 14943aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevinformation to handle your system. 14953aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 14963aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevconfig.guess timestamp = $timestamp 14973aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 14983aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevuname -m = `(uname -m) 2>/dev/null || echo unknown` 14993aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevuname -r = `(uname -r) 2>/dev/null || echo unknown` 15003aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevuname -s = `(uname -s) 2>/dev/null || echo unknown` 15013aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevuname -v = `(uname -v) 2>/dev/null || echo unknown` 15023aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 15033aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 15043aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 15053aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 15063aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevhostinfo = `(hostinfo) 2>/dev/null` 15073aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev/bin/universe = `(/bin/universe) 2>/dev/null` 15083aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 15093aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev/bin/arch = `(/bin/arch) 2>/dev/null` 15103aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 15113aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 15123aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 15133aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevUNAME_MACHINE = ${UNAME_MACHINE} 15143aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevUNAME_RELEASE = ${UNAME_RELEASE} 15153aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevUNAME_SYSTEM = ${UNAME_SYSTEM} 15163aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevUNAME_VERSION = ${UNAME_VERSION} 15173aa430dc5437a98734b36f996f9b17081a589143Yavor GoulishevEOF 15183aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 15193aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishevexit 1 15203aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev 15213aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# Local variables: 15223aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# eval: (add-hook 'write-file-hooks 'time-stamp) 15233aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# time-stamp-start: "timestamp='" 15243aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# time-stamp-format: "%:y-%02m-%02d" 15253aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# time-stamp-end: "'" 15263aa430dc5437a98734b36f996f9b17081a589143Yavor Goulishev# End: 1527