config.guess revision a0d3b6ea
1a0d3b6eaSmrg#! /bin/sh 2a0d3b6eaSmrg# Attempt to guess a canonical system name. 3a0d3b6eaSmrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4a0d3b6eaSmrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 5a0d3b6eaSmrg# Free Software Foundation, Inc. 6a0d3b6eaSmrg 7a0d3b6eaSmrgtimestamp='2008-01-08' 8a0d3b6eaSmrg 9a0d3b6eaSmrg# This file is free software; you can redistribute it and/or modify it 10a0d3b6eaSmrg# under the terms of the GNU General Public License as published by 11a0d3b6eaSmrg# the Free Software Foundation; either version 2 of the License, or 12a0d3b6eaSmrg# (at your option) any later version. 13a0d3b6eaSmrg# 14a0d3b6eaSmrg# This program is distributed in the hope that it will be useful, but 15a0d3b6eaSmrg# WITHOUT ANY WARRANTY; without even the implied warranty of 16a0d3b6eaSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 17a0d3b6eaSmrg# General Public License for more details. 18a0d3b6eaSmrg# 19a0d3b6eaSmrg# You should have received a copy of the GNU General Public License 20a0d3b6eaSmrg# along with this program; if not, write to the Free Software 21a0d3b6eaSmrg# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 22a0d3b6eaSmrg# 02110-1301, USA. 23a0d3b6eaSmrg# 24a0d3b6eaSmrg# As a special exception to the GNU General Public License, if you 25a0d3b6eaSmrg# distribute this file as part of a program that contains a 26a0d3b6eaSmrg# configuration script generated by Autoconf, you may include it under 27a0d3b6eaSmrg# the same distribution terms that you use for the rest of that program. 28a0d3b6eaSmrg 29a0d3b6eaSmrg 30a0d3b6eaSmrg# Originally written by Per Bothner <per@bothner.com>. 31a0d3b6eaSmrg# Please send patches to <config-patches@gnu.org>. Submit a context 32a0d3b6eaSmrg# diff and a properly formatted ChangeLog entry. 33a0d3b6eaSmrg# 34a0d3b6eaSmrg# This script attempts to guess a canonical system name similar to 35a0d3b6eaSmrg# config.sub. If it succeeds, it prints the system name on stdout, and 36a0d3b6eaSmrg# exits with 0. Otherwise, it exits with 1. 37a0d3b6eaSmrg# 38a0d3b6eaSmrg# The plan is that this can be called by configure scripts if you 39a0d3b6eaSmrg# don't specify an explicit build system type. 40a0d3b6eaSmrg 41a0d3b6eaSmrgme=`echo "$0" | sed -e 's,.*/,,'` 42a0d3b6eaSmrg 43a0d3b6eaSmrgusage="\ 44a0d3b6eaSmrgUsage: $0 [OPTION] 45a0d3b6eaSmrg 46a0d3b6eaSmrgOutput the configuration name of the system \`$me' is run on. 47a0d3b6eaSmrg 48a0d3b6eaSmrgOperation modes: 49a0d3b6eaSmrg -h, --help print this help, then exit 50a0d3b6eaSmrg -t, --time-stamp print date of last modification, then exit 51a0d3b6eaSmrg -v, --version print version number, then exit 52a0d3b6eaSmrg 53a0d3b6eaSmrgReport bugs and patches to <config-patches@gnu.org>." 54a0d3b6eaSmrg 55a0d3b6eaSmrgversion="\ 56a0d3b6eaSmrgGNU config.guess ($timestamp) 57a0d3b6eaSmrg 58a0d3b6eaSmrgOriginally written by Per Bothner. 59a0d3b6eaSmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 60a0d3b6eaSmrg2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. 61a0d3b6eaSmrg 62a0d3b6eaSmrgThis is free software; see the source for copying conditions. There is NO 63a0d3b6eaSmrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 64a0d3b6eaSmrg 65a0d3b6eaSmrghelp=" 66a0d3b6eaSmrgTry \`$me --help' for more information." 67a0d3b6eaSmrg 68a0d3b6eaSmrg# Parse command line 69a0d3b6eaSmrgwhile test $# -gt 0 ; do 70a0d3b6eaSmrg case $1 in 71a0d3b6eaSmrg --time-stamp | --time* | -t ) 72a0d3b6eaSmrg echo "$timestamp" ; exit ;; 73a0d3b6eaSmrg --version | -v ) 74a0d3b6eaSmrg echo "$version" ; exit ;; 75a0d3b6eaSmrg --help | --h* | -h ) 76a0d3b6eaSmrg echo "$usage"; exit ;; 77a0d3b6eaSmrg -- ) # Stop option processing 78a0d3b6eaSmrg shift; break ;; 79a0d3b6eaSmrg - ) # Use stdin as input. 80a0d3b6eaSmrg break ;; 81a0d3b6eaSmrg -* ) 82a0d3b6eaSmrg echo "$me: invalid option $1$help" >&2 83a0d3b6eaSmrg exit 1 ;; 84a0d3b6eaSmrg * ) 85a0d3b6eaSmrg break ;; 86a0d3b6eaSmrg esac 87a0d3b6eaSmrgdone 88a0d3b6eaSmrg 89a0d3b6eaSmrgif test $# != 0; then 90a0d3b6eaSmrg echo "$me: too many arguments$help" >&2 91a0d3b6eaSmrg exit 1 92a0d3b6eaSmrgfi 93a0d3b6eaSmrg 94a0d3b6eaSmrgtrap 'exit 1' 1 2 15 95a0d3b6eaSmrg 96a0d3b6eaSmrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 97a0d3b6eaSmrg# compiler to aid in system detection is discouraged as it requires 98a0d3b6eaSmrg# temporary files to be created and, as you can see below, it is a 99a0d3b6eaSmrg# headache to deal with in a portable fashion. 100a0d3b6eaSmrg 101a0d3b6eaSmrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 102a0d3b6eaSmrg# use `HOST_CC' if defined, but it is deprecated. 103a0d3b6eaSmrg 104a0d3b6eaSmrg# Portable tmp directory creation inspired by the Autoconf team. 105a0d3b6eaSmrg 106a0d3b6eaSmrgset_cc_for_build=' 107a0d3b6eaSmrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; 108a0d3b6eaSmrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 109a0d3b6eaSmrg: ${TMPDIR=/tmp} ; 110a0d3b6eaSmrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 111a0d3b6eaSmrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 112a0d3b6eaSmrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || 113a0d3b6eaSmrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; 114a0d3b6eaSmrgdummy=$tmp/dummy ; 115a0d3b6eaSmrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; 116a0d3b6eaSmrgcase $CC_FOR_BUILD,$HOST_CC,$CC in 117a0d3b6eaSmrg ,,) echo "int x;" > $dummy.c ; 118a0d3b6eaSmrg for c in cc gcc c89 c99 ; do 119a0d3b6eaSmrg if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then 120a0d3b6eaSmrg CC_FOR_BUILD="$c"; break ; 121a0d3b6eaSmrg fi ; 122a0d3b6eaSmrg done ; 123a0d3b6eaSmrg if test x"$CC_FOR_BUILD" = x ; then 124a0d3b6eaSmrg CC_FOR_BUILD=no_compiler_found ; 125a0d3b6eaSmrg fi 126a0d3b6eaSmrg ;; 127a0d3b6eaSmrg ,,*) CC_FOR_BUILD=$CC ;; 128a0d3b6eaSmrg ,*,*) CC_FOR_BUILD=$HOST_CC ;; 129a0d3b6eaSmrgesac ; set_cc_for_build= ;' 130a0d3b6eaSmrg 131a0d3b6eaSmrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 132a0d3b6eaSmrg# (ghazi@noc.rutgers.edu 1994-08-24) 133a0d3b6eaSmrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then 134a0d3b6eaSmrg PATH=$PATH:/.attbin ; export PATH 135a0d3b6eaSmrgfi 136a0d3b6eaSmrg 137a0d3b6eaSmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 138a0d3b6eaSmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 139a0d3b6eaSmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 140a0d3b6eaSmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 141a0d3b6eaSmrg 142a0d3b6eaSmrg# Note: order is significant - the case branches are not exclusive. 143a0d3b6eaSmrg 144a0d3b6eaSmrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 145a0d3b6eaSmrg *:NetBSD:*:*) 146a0d3b6eaSmrg # NetBSD (nbsd) targets should (where applicable) match one or 147a0d3b6eaSmrg # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, 148a0d3b6eaSmrg # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 149a0d3b6eaSmrg # switched to ELF, *-*-netbsd* would select the old 150a0d3b6eaSmrg # object file format. This provides both forward 151a0d3b6eaSmrg # compatibility and a consistent mechanism for selecting the 152a0d3b6eaSmrg # object file format. 153a0d3b6eaSmrg # 154a0d3b6eaSmrg # Note: NetBSD doesn't particularly care about the vendor 155a0d3b6eaSmrg # portion of the name. We always set it to "unknown". 156a0d3b6eaSmrg sysctl="sysctl -n hw.machine_arch" 157a0d3b6eaSmrg UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ 158a0d3b6eaSmrg /usr/sbin/$sysctl 2>/dev/null || echo unknown)` 159a0d3b6eaSmrg case "${UNAME_MACHINE_ARCH}" in 160a0d3b6eaSmrg armeb) machine=armeb-unknown ;; 161a0d3b6eaSmrg arm*) machine=arm-unknown ;; 162a0d3b6eaSmrg sh3el) machine=shl-unknown ;; 163a0d3b6eaSmrg sh3eb) machine=sh-unknown ;; 164a0d3b6eaSmrg sh5el) machine=sh5le-unknown ;; 165a0d3b6eaSmrg *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 166a0d3b6eaSmrg esac 167a0d3b6eaSmrg # The Operating System including object format, if it has switched 168a0d3b6eaSmrg # to ELF recently, or will in the future. 169a0d3b6eaSmrg case "${UNAME_MACHINE_ARCH}" in 170a0d3b6eaSmrg arm*|i386|m68k|ns32k|sh3*|sparc|vax) 171a0d3b6eaSmrg eval $set_cc_for_build 172a0d3b6eaSmrg if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 173a0d3b6eaSmrg | grep __ELF__ >/dev/null 174a0d3b6eaSmrg then 175a0d3b6eaSmrg # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 176a0d3b6eaSmrg # Return netbsd for either. FIX? 177a0d3b6eaSmrg os=netbsd 178a0d3b6eaSmrg else 179a0d3b6eaSmrg os=netbsdelf 180a0d3b6eaSmrg fi 181a0d3b6eaSmrg ;; 182a0d3b6eaSmrg *) 183a0d3b6eaSmrg os=netbsd 184a0d3b6eaSmrg ;; 185a0d3b6eaSmrg esac 186a0d3b6eaSmrg # The OS release 187a0d3b6eaSmrg # Debian GNU/NetBSD machines have a different userland, and 188a0d3b6eaSmrg # thus, need a distinct triplet. However, they do not need 189a0d3b6eaSmrg # kernel version information, so it can be replaced with a 190a0d3b6eaSmrg # suitable tag, in the style of linux-gnu. 191a0d3b6eaSmrg case "${UNAME_VERSION}" in 192a0d3b6eaSmrg Debian*) 193a0d3b6eaSmrg release='-gnu' 194a0d3b6eaSmrg ;; 195a0d3b6eaSmrg *) 196a0d3b6eaSmrg release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` 197a0d3b6eaSmrg ;; 198a0d3b6eaSmrg esac 199a0d3b6eaSmrg # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 200a0d3b6eaSmrg # contains redundant information, the shorter form: 201a0d3b6eaSmrg # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 202a0d3b6eaSmrg echo "${machine}-${os}${release}" 203a0d3b6eaSmrg exit ;; 204a0d3b6eaSmrg *:OpenBSD:*:*) 205a0d3b6eaSmrg UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 206a0d3b6eaSmrg echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 207a0d3b6eaSmrg exit ;; 208a0d3b6eaSmrg *:ekkoBSD:*:*) 209a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 210a0d3b6eaSmrg exit ;; 211a0d3b6eaSmrg *:SolidBSD:*:*) 212a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} 213a0d3b6eaSmrg exit ;; 214a0d3b6eaSmrg macppc:MirBSD:*:*) 215a0d3b6eaSmrg echo powerpc-unknown-mirbsd${UNAME_RELEASE} 216a0d3b6eaSmrg exit ;; 217a0d3b6eaSmrg *:MirBSD:*:*) 218a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 219a0d3b6eaSmrg exit ;; 220a0d3b6eaSmrg alpha:OSF1:*:*) 221a0d3b6eaSmrg case $UNAME_RELEASE in 222a0d3b6eaSmrg *4.0) 223a0d3b6eaSmrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 224a0d3b6eaSmrg ;; 225a0d3b6eaSmrg *5.*) 226a0d3b6eaSmrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 227a0d3b6eaSmrg ;; 228a0d3b6eaSmrg esac 229a0d3b6eaSmrg # According to Compaq, /usr/sbin/psrinfo has been available on 230a0d3b6eaSmrg # OSF/1 and Tru64 systems produced since 1995. I hope that 231a0d3b6eaSmrg # covers most systems running today. This code pipes the CPU 232a0d3b6eaSmrg # types through head -n 1, so we only detect the type of CPU 0. 233a0d3b6eaSmrg ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 234a0d3b6eaSmrg case "$ALPHA_CPU_TYPE" in 235a0d3b6eaSmrg "EV4 (21064)") 236a0d3b6eaSmrg UNAME_MACHINE="alpha" ;; 237a0d3b6eaSmrg "EV4.5 (21064)") 238a0d3b6eaSmrg UNAME_MACHINE="alpha" ;; 239a0d3b6eaSmrg "LCA4 (21066/21068)") 240a0d3b6eaSmrg UNAME_MACHINE="alpha" ;; 241a0d3b6eaSmrg "EV5 (21164)") 242a0d3b6eaSmrg UNAME_MACHINE="alphaev5" ;; 243a0d3b6eaSmrg "EV5.6 (21164A)") 244a0d3b6eaSmrg UNAME_MACHINE="alphaev56" ;; 245a0d3b6eaSmrg "EV5.6 (21164PC)") 246a0d3b6eaSmrg UNAME_MACHINE="alphapca56" ;; 247a0d3b6eaSmrg "EV5.7 (21164PC)") 248a0d3b6eaSmrg UNAME_MACHINE="alphapca57" ;; 249a0d3b6eaSmrg "EV6 (21264)") 250a0d3b6eaSmrg UNAME_MACHINE="alphaev6" ;; 251a0d3b6eaSmrg "EV6.7 (21264A)") 252a0d3b6eaSmrg UNAME_MACHINE="alphaev67" ;; 253a0d3b6eaSmrg "EV6.8CB (21264C)") 254a0d3b6eaSmrg UNAME_MACHINE="alphaev68" ;; 255a0d3b6eaSmrg "EV6.8AL (21264B)") 256a0d3b6eaSmrg UNAME_MACHINE="alphaev68" ;; 257a0d3b6eaSmrg "EV6.8CX (21264D)") 258a0d3b6eaSmrg UNAME_MACHINE="alphaev68" ;; 259a0d3b6eaSmrg "EV6.9A (21264/EV69A)") 260a0d3b6eaSmrg UNAME_MACHINE="alphaev69" ;; 261a0d3b6eaSmrg "EV7 (21364)") 262a0d3b6eaSmrg UNAME_MACHINE="alphaev7" ;; 263a0d3b6eaSmrg "EV7.9 (21364A)") 264a0d3b6eaSmrg UNAME_MACHINE="alphaev79" ;; 265a0d3b6eaSmrg esac 266a0d3b6eaSmrg # A Pn.n version is a patched version. 267a0d3b6eaSmrg # A Vn.n version is a released version. 268a0d3b6eaSmrg # A Tn.n version is a released field test version. 269a0d3b6eaSmrg # A Xn.n version is an unreleased experimental baselevel. 270a0d3b6eaSmrg # 1.2 uses "1.2" for uname -r. 271a0d3b6eaSmrg echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 272a0d3b6eaSmrg exit ;; 273a0d3b6eaSmrg Alpha\ *:Windows_NT*:*) 274a0d3b6eaSmrg # How do we know it's Interix rather than the generic POSIX subsystem? 275a0d3b6eaSmrg # Should we change UNAME_MACHINE based on the output of uname instead 276a0d3b6eaSmrg # of the specific Alpha model? 277a0d3b6eaSmrg echo alpha-pc-interix 278a0d3b6eaSmrg exit ;; 279a0d3b6eaSmrg 21064:Windows_NT:50:3) 280a0d3b6eaSmrg echo alpha-dec-winnt3.5 281a0d3b6eaSmrg exit ;; 282a0d3b6eaSmrg Amiga*:UNIX_System_V:4.0:*) 283a0d3b6eaSmrg echo m68k-unknown-sysv4 284a0d3b6eaSmrg exit ;; 285a0d3b6eaSmrg *:[Aa]miga[Oo][Ss]:*:*) 286a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-amigaos 287a0d3b6eaSmrg exit ;; 288a0d3b6eaSmrg *:[Mm]orph[Oo][Ss]:*:*) 289a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-morphos 290a0d3b6eaSmrg exit ;; 291a0d3b6eaSmrg *:OS/390:*:*) 292a0d3b6eaSmrg echo i370-ibm-openedition 293a0d3b6eaSmrg exit ;; 294a0d3b6eaSmrg *:z/VM:*:*) 295a0d3b6eaSmrg echo s390-ibm-zvmoe 296a0d3b6eaSmrg exit ;; 297a0d3b6eaSmrg *:OS400:*:*) 298a0d3b6eaSmrg echo powerpc-ibm-os400 299a0d3b6eaSmrg exit ;; 300a0d3b6eaSmrg arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 301a0d3b6eaSmrg echo arm-acorn-riscix${UNAME_RELEASE} 302a0d3b6eaSmrg exit ;; 303a0d3b6eaSmrg arm:riscos:*:*|arm:RISCOS:*:*) 304a0d3b6eaSmrg echo arm-unknown-riscos 305a0d3b6eaSmrg exit ;; 306a0d3b6eaSmrg SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 307a0d3b6eaSmrg echo hppa1.1-hitachi-hiuxmpp 308a0d3b6eaSmrg exit ;; 309a0d3b6eaSmrg Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 310a0d3b6eaSmrg # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 311a0d3b6eaSmrg if test "`(/bin/universe) 2>/dev/null`" = att ; then 312a0d3b6eaSmrg echo pyramid-pyramid-sysv3 313a0d3b6eaSmrg else 314a0d3b6eaSmrg echo pyramid-pyramid-bsd 315a0d3b6eaSmrg fi 316a0d3b6eaSmrg exit ;; 317a0d3b6eaSmrg NILE*:*:*:dcosx) 318a0d3b6eaSmrg echo pyramid-pyramid-svr4 319a0d3b6eaSmrg exit ;; 320a0d3b6eaSmrg DRS?6000:unix:4.0:6*) 321a0d3b6eaSmrg echo sparc-icl-nx6 322a0d3b6eaSmrg exit ;; 323a0d3b6eaSmrg DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 324a0d3b6eaSmrg case `/usr/bin/uname -p` in 325a0d3b6eaSmrg sparc) echo sparc-icl-nx7; exit ;; 326a0d3b6eaSmrg esac ;; 327a0d3b6eaSmrg sun4H:SunOS:5.*:*) 328a0d3b6eaSmrg echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 329a0d3b6eaSmrg exit ;; 330a0d3b6eaSmrg sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 331a0d3b6eaSmrg echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 332a0d3b6eaSmrg exit ;; 333a0d3b6eaSmrg i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) 334a0d3b6eaSmrg echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 335a0d3b6eaSmrg exit ;; 336a0d3b6eaSmrg sun4*:SunOS:6*:*) 337a0d3b6eaSmrg # According to config.sub, this is the proper way to canonicalize 338a0d3b6eaSmrg # SunOS6. Hard to guess exactly what SunOS6 will be like, but 339a0d3b6eaSmrg # it's likely to be more like Solaris than SunOS4. 340a0d3b6eaSmrg echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 341a0d3b6eaSmrg exit ;; 342a0d3b6eaSmrg sun4*:SunOS:*:*) 343a0d3b6eaSmrg case "`/usr/bin/arch -k`" in 344a0d3b6eaSmrg Series*|S4*) 345a0d3b6eaSmrg UNAME_RELEASE=`uname -v` 346a0d3b6eaSmrg ;; 347a0d3b6eaSmrg esac 348a0d3b6eaSmrg # Japanese Language versions have a version number like `4.1.3-JL'. 349a0d3b6eaSmrg echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 350a0d3b6eaSmrg exit ;; 351a0d3b6eaSmrg sun3*:SunOS:*:*) 352a0d3b6eaSmrg echo m68k-sun-sunos${UNAME_RELEASE} 353a0d3b6eaSmrg exit ;; 354a0d3b6eaSmrg sun*:*:4.2BSD:*) 355a0d3b6eaSmrg UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 356a0d3b6eaSmrg test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 357a0d3b6eaSmrg case "`/bin/arch`" in 358a0d3b6eaSmrg sun3) 359a0d3b6eaSmrg echo m68k-sun-sunos${UNAME_RELEASE} 360a0d3b6eaSmrg ;; 361a0d3b6eaSmrg sun4) 362a0d3b6eaSmrg echo sparc-sun-sunos${UNAME_RELEASE} 363a0d3b6eaSmrg ;; 364a0d3b6eaSmrg esac 365a0d3b6eaSmrg exit ;; 366a0d3b6eaSmrg aushp:SunOS:*:*) 367a0d3b6eaSmrg echo sparc-auspex-sunos${UNAME_RELEASE} 368a0d3b6eaSmrg exit ;; 369a0d3b6eaSmrg # The situation for MiNT is a little confusing. The machine name 370a0d3b6eaSmrg # can be virtually everything (everything which is not 371a0d3b6eaSmrg # "atarist" or "atariste" at least should have a processor 372a0d3b6eaSmrg # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 373a0d3b6eaSmrg # to the lowercase version "mint" (or "freemint"). Finally 374a0d3b6eaSmrg # the system name "TOS" denotes a system which is actually not 375a0d3b6eaSmrg # MiNT. But MiNT is downward compatible to TOS, so this should 376a0d3b6eaSmrg # be no problem. 377a0d3b6eaSmrg atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 378a0d3b6eaSmrg echo m68k-atari-mint${UNAME_RELEASE} 379a0d3b6eaSmrg exit ;; 380a0d3b6eaSmrg atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 381a0d3b6eaSmrg echo m68k-atari-mint${UNAME_RELEASE} 382a0d3b6eaSmrg exit ;; 383a0d3b6eaSmrg *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 384a0d3b6eaSmrg echo m68k-atari-mint${UNAME_RELEASE} 385a0d3b6eaSmrg exit ;; 386a0d3b6eaSmrg milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 387a0d3b6eaSmrg echo m68k-milan-mint${UNAME_RELEASE} 388a0d3b6eaSmrg exit ;; 389a0d3b6eaSmrg hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 390a0d3b6eaSmrg echo m68k-hades-mint${UNAME_RELEASE} 391a0d3b6eaSmrg exit ;; 392a0d3b6eaSmrg *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 393a0d3b6eaSmrg echo m68k-unknown-mint${UNAME_RELEASE} 394a0d3b6eaSmrg exit ;; 395a0d3b6eaSmrg m68k:machten:*:*) 396a0d3b6eaSmrg echo m68k-apple-machten${UNAME_RELEASE} 397a0d3b6eaSmrg exit ;; 398a0d3b6eaSmrg powerpc:machten:*:*) 399a0d3b6eaSmrg echo powerpc-apple-machten${UNAME_RELEASE} 400a0d3b6eaSmrg exit ;; 401a0d3b6eaSmrg RISC*:Mach:*:*) 402a0d3b6eaSmrg echo mips-dec-mach_bsd4.3 403a0d3b6eaSmrg exit ;; 404a0d3b6eaSmrg RISC*:ULTRIX:*:*) 405a0d3b6eaSmrg echo mips-dec-ultrix${UNAME_RELEASE} 406a0d3b6eaSmrg exit ;; 407a0d3b6eaSmrg VAX*:ULTRIX*:*:*) 408a0d3b6eaSmrg echo vax-dec-ultrix${UNAME_RELEASE} 409a0d3b6eaSmrg exit ;; 410a0d3b6eaSmrg 2020:CLIX:*:* | 2430:CLIX:*:*) 411a0d3b6eaSmrg echo clipper-intergraph-clix${UNAME_RELEASE} 412a0d3b6eaSmrg exit ;; 413a0d3b6eaSmrg mips:*:*:UMIPS | mips:*:*:RISCos) 414a0d3b6eaSmrg eval $set_cc_for_build 415a0d3b6eaSmrg sed 's/^ //' << EOF >$dummy.c 416a0d3b6eaSmrg#ifdef __cplusplus 417a0d3b6eaSmrg#include <stdio.h> /* for printf() prototype */ 418a0d3b6eaSmrg int main (int argc, char *argv[]) { 419a0d3b6eaSmrg#else 420a0d3b6eaSmrg int main (argc, argv) int argc; char *argv[]; { 421a0d3b6eaSmrg#endif 422a0d3b6eaSmrg #if defined (host_mips) && defined (MIPSEB) 423a0d3b6eaSmrg #if defined (SYSTYPE_SYSV) 424a0d3b6eaSmrg printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 425a0d3b6eaSmrg #endif 426a0d3b6eaSmrg #if defined (SYSTYPE_SVR4) 427a0d3b6eaSmrg printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 428a0d3b6eaSmrg #endif 429a0d3b6eaSmrg #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 430a0d3b6eaSmrg printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 431a0d3b6eaSmrg #endif 432a0d3b6eaSmrg #endif 433a0d3b6eaSmrg exit (-1); 434a0d3b6eaSmrg } 435a0d3b6eaSmrgEOF 436a0d3b6eaSmrg $CC_FOR_BUILD -o $dummy $dummy.c && 437a0d3b6eaSmrg dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 438a0d3b6eaSmrg SYSTEM_NAME=`$dummy $dummyarg` && 439a0d3b6eaSmrg { echo "$SYSTEM_NAME"; exit; } 440a0d3b6eaSmrg echo mips-mips-riscos${UNAME_RELEASE} 441a0d3b6eaSmrg exit ;; 442a0d3b6eaSmrg Motorola:PowerMAX_OS:*:*) 443a0d3b6eaSmrg echo powerpc-motorola-powermax 444a0d3b6eaSmrg exit ;; 445a0d3b6eaSmrg Motorola:*:4.3:PL8-*) 446a0d3b6eaSmrg echo powerpc-harris-powermax 447a0d3b6eaSmrg exit ;; 448a0d3b6eaSmrg Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 449a0d3b6eaSmrg echo powerpc-harris-powermax 450a0d3b6eaSmrg exit ;; 451a0d3b6eaSmrg Night_Hawk:Power_UNIX:*:*) 452a0d3b6eaSmrg echo powerpc-harris-powerunix 453a0d3b6eaSmrg exit ;; 454a0d3b6eaSmrg m88k:CX/UX:7*:*) 455a0d3b6eaSmrg echo m88k-harris-cxux7 456a0d3b6eaSmrg exit ;; 457a0d3b6eaSmrg m88k:*:4*:R4*) 458a0d3b6eaSmrg echo m88k-motorola-sysv4 459a0d3b6eaSmrg exit ;; 460a0d3b6eaSmrg m88k:*:3*:R3*) 461a0d3b6eaSmrg echo m88k-motorola-sysv3 462a0d3b6eaSmrg exit ;; 463a0d3b6eaSmrg AViiON:dgux:*:*) 464a0d3b6eaSmrg # DG/UX returns AViiON for all architectures 465a0d3b6eaSmrg UNAME_PROCESSOR=`/usr/bin/uname -p` 466a0d3b6eaSmrg if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 467a0d3b6eaSmrg then 468a0d3b6eaSmrg if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 469a0d3b6eaSmrg [ ${TARGET_BINARY_INTERFACE}x = x ] 470a0d3b6eaSmrg then 471a0d3b6eaSmrg echo m88k-dg-dgux${UNAME_RELEASE} 472a0d3b6eaSmrg else 473a0d3b6eaSmrg echo m88k-dg-dguxbcs${UNAME_RELEASE} 474a0d3b6eaSmrg fi 475a0d3b6eaSmrg else 476a0d3b6eaSmrg echo i586-dg-dgux${UNAME_RELEASE} 477a0d3b6eaSmrg fi 478a0d3b6eaSmrg exit ;; 479a0d3b6eaSmrg M88*:DolphinOS:*:*) # DolphinOS (SVR3) 480a0d3b6eaSmrg echo m88k-dolphin-sysv3 481a0d3b6eaSmrg exit ;; 482a0d3b6eaSmrg M88*:*:R3*:*) 483a0d3b6eaSmrg # Delta 88k system running SVR3 484a0d3b6eaSmrg echo m88k-motorola-sysv3 485a0d3b6eaSmrg exit ;; 486a0d3b6eaSmrg XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 487a0d3b6eaSmrg echo m88k-tektronix-sysv3 488a0d3b6eaSmrg exit ;; 489a0d3b6eaSmrg Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 490a0d3b6eaSmrg echo m68k-tektronix-bsd 491a0d3b6eaSmrg exit ;; 492a0d3b6eaSmrg *:IRIX*:*:*) 493a0d3b6eaSmrg echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 494a0d3b6eaSmrg exit ;; 495a0d3b6eaSmrg ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 496a0d3b6eaSmrg echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 497a0d3b6eaSmrg exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 498a0d3b6eaSmrg i*86:AIX:*:*) 499a0d3b6eaSmrg echo i386-ibm-aix 500a0d3b6eaSmrg exit ;; 501a0d3b6eaSmrg ia64:AIX:*:*) 502a0d3b6eaSmrg if [ -x /usr/bin/oslevel ] ; then 503a0d3b6eaSmrg IBM_REV=`/usr/bin/oslevel` 504a0d3b6eaSmrg else 505a0d3b6eaSmrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 506a0d3b6eaSmrg fi 507a0d3b6eaSmrg echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 508a0d3b6eaSmrg exit ;; 509a0d3b6eaSmrg *:AIX:2:3) 510a0d3b6eaSmrg if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 511a0d3b6eaSmrg eval $set_cc_for_build 512a0d3b6eaSmrg sed 's/^ //' << EOF >$dummy.c 513a0d3b6eaSmrg #include <sys/systemcfg.h> 514a0d3b6eaSmrg 515a0d3b6eaSmrg main() 516a0d3b6eaSmrg { 517a0d3b6eaSmrg if (!__power_pc()) 518a0d3b6eaSmrg exit(1); 519a0d3b6eaSmrg puts("powerpc-ibm-aix3.2.5"); 520a0d3b6eaSmrg exit(0); 521a0d3b6eaSmrg } 522a0d3b6eaSmrgEOF 523a0d3b6eaSmrg if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 524a0d3b6eaSmrg then 525a0d3b6eaSmrg echo "$SYSTEM_NAME" 526a0d3b6eaSmrg else 527a0d3b6eaSmrg echo rs6000-ibm-aix3.2.5 528a0d3b6eaSmrg fi 529a0d3b6eaSmrg elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 530a0d3b6eaSmrg echo rs6000-ibm-aix3.2.4 531a0d3b6eaSmrg else 532a0d3b6eaSmrg echo rs6000-ibm-aix3.2 533a0d3b6eaSmrg fi 534a0d3b6eaSmrg exit ;; 535a0d3b6eaSmrg *:AIX:*:[456]) 536a0d3b6eaSmrg IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 537a0d3b6eaSmrg if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 538a0d3b6eaSmrg IBM_ARCH=rs6000 539a0d3b6eaSmrg else 540a0d3b6eaSmrg IBM_ARCH=powerpc 541a0d3b6eaSmrg fi 542a0d3b6eaSmrg if [ -x /usr/bin/oslevel ] ; then 543a0d3b6eaSmrg IBM_REV=`/usr/bin/oslevel` 544a0d3b6eaSmrg else 545a0d3b6eaSmrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 546a0d3b6eaSmrg fi 547a0d3b6eaSmrg echo ${IBM_ARCH}-ibm-aix${IBM_REV} 548a0d3b6eaSmrg exit ;; 549a0d3b6eaSmrg *:AIX:*:*) 550a0d3b6eaSmrg echo rs6000-ibm-aix 551a0d3b6eaSmrg exit ;; 552a0d3b6eaSmrg ibmrt:4.4BSD:*|romp-ibm:BSD:*) 553a0d3b6eaSmrg echo romp-ibm-bsd4.4 554a0d3b6eaSmrg exit ;; 555a0d3b6eaSmrg ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 556a0d3b6eaSmrg echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 557a0d3b6eaSmrg exit ;; # report: romp-ibm BSD 4.3 558a0d3b6eaSmrg *:BOSX:*:*) 559a0d3b6eaSmrg echo rs6000-bull-bosx 560a0d3b6eaSmrg exit ;; 561a0d3b6eaSmrg DPX/2?00:B.O.S.:*:*) 562a0d3b6eaSmrg echo m68k-bull-sysv3 563a0d3b6eaSmrg exit ;; 564a0d3b6eaSmrg 9000/[34]??:4.3bsd:1.*:*) 565a0d3b6eaSmrg echo m68k-hp-bsd 566a0d3b6eaSmrg exit ;; 567a0d3b6eaSmrg hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 568a0d3b6eaSmrg echo m68k-hp-bsd4.4 569a0d3b6eaSmrg exit ;; 570a0d3b6eaSmrg 9000/[34678]??:HP-UX:*:*) 571a0d3b6eaSmrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 572a0d3b6eaSmrg case "${UNAME_MACHINE}" in 573a0d3b6eaSmrg 9000/31? ) HP_ARCH=m68000 ;; 574a0d3b6eaSmrg 9000/[34]?? ) HP_ARCH=m68k ;; 575a0d3b6eaSmrg 9000/[678][0-9][0-9]) 576a0d3b6eaSmrg if [ -x /usr/bin/getconf ]; then 577a0d3b6eaSmrg sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 578a0d3b6eaSmrg sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 579a0d3b6eaSmrg case "${sc_cpu_version}" in 580a0d3b6eaSmrg 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 581a0d3b6eaSmrg 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 582a0d3b6eaSmrg 532) # CPU_PA_RISC2_0 583a0d3b6eaSmrg case "${sc_kernel_bits}" in 584a0d3b6eaSmrg 32) HP_ARCH="hppa2.0n" ;; 585a0d3b6eaSmrg 64) HP_ARCH="hppa2.0w" ;; 586a0d3b6eaSmrg '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 587a0d3b6eaSmrg esac ;; 588a0d3b6eaSmrg esac 589a0d3b6eaSmrg fi 590a0d3b6eaSmrg if [ "${HP_ARCH}" = "" ]; then 591a0d3b6eaSmrg eval $set_cc_for_build 592a0d3b6eaSmrg sed 's/^ //' << EOF >$dummy.c 593a0d3b6eaSmrg 594a0d3b6eaSmrg #define _HPUX_SOURCE 595a0d3b6eaSmrg #include <stdlib.h> 596a0d3b6eaSmrg #include <unistd.h> 597a0d3b6eaSmrg 598a0d3b6eaSmrg int main () 599a0d3b6eaSmrg { 600a0d3b6eaSmrg #if defined(_SC_KERNEL_BITS) 601a0d3b6eaSmrg long bits = sysconf(_SC_KERNEL_BITS); 602a0d3b6eaSmrg #endif 603a0d3b6eaSmrg long cpu = sysconf (_SC_CPU_VERSION); 604a0d3b6eaSmrg 605a0d3b6eaSmrg switch (cpu) 606a0d3b6eaSmrg { 607a0d3b6eaSmrg case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 608a0d3b6eaSmrg case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 609a0d3b6eaSmrg case CPU_PA_RISC2_0: 610a0d3b6eaSmrg #if defined(_SC_KERNEL_BITS) 611a0d3b6eaSmrg switch (bits) 612a0d3b6eaSmrg { 613a0d3b6eaSmrg case 64: puts ("hppa2.0w"); break; 614a0d3b6eaSmrg case 32: puts ("hppa2.0n"); break; 615a0d3b6eaSmrg default: puts ("hppa2.0"); break; 616a0d3b6eaSmrg } break; 617a0d3b6eaSmrg #else /* !defined(_SC_KERNEL_BITS) */ 618a0d3b6eaSmrg puts ("hppa2.0"); break; 619a0d3b6eaSmrg #endif 620a0d3b6eaSmrg default: puts ("hppa1.0"); break; 621a0d3b6eaSmrg } 622a0d3b6eaSmrg exit (0); 623a0d3b6eaSmrg } 624a0d3b6eaSmrgEOF 625a0d3b6eaSmrg (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 626a0d3b6eaSmrg test -z "$HP_ARCH" && HP_ARCH=hppa 627a0d3b6eaSmrg fi ;; 628a0d3b6eaSmrg esac 629a0d3b6eaSmrg if [ ${HP_ARCH} = "hppa2.0w" ] 630a0d3b6eaSmrg then 631a0d3b6eaSmrg eval $set_cc_for_build 632a0d3b6eaSmrg 633a0d3b6eaSmrg # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 634a0d3b6eaSmrg # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 635a0d3b6eaSmrg # generating 64-bit code. GNU and HP use different nomenclature: 636a0d3b6eaSmrg # 637a0d3b6eaSmrg # $ CC_FOR_BUILD=cc ./config.guess 638a0d3b6eaSmrg # => hppa2.0w-hp-hpux11.23 639a0d3b6eaSmrg # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 640a0d3b6eaSmrg # => hppa64-hp-hpux11.23 641a0d3b6eaSmrg 642a0d3b6eaSmrg if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | 643a0d3b6eaSmrg grep __LP64__ >/dev/null 644a0d3b6eaSmrg then 645a0d3b6eaSmrg HP_ARCH="hppa2.0w" 646a0d3b6eaSmrg else 647a0d3b6eaSmrg HP_ARCH="hppa64" 648a0d3b6eaSmrg fi 649a0d3b6eaSmrg fi 650a0d3b6eaSmrg echo ${HP_ARCH}-hp-hpux${HPUX_REV} 651a0d3b6eaSmrg exit ;; 652a0d3b6eaSmrg ia64:HP-UX:*:*) 653a0d3b6eaSmrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 654a0d3b6eaSmrg echo ia64-hp-hpux${HPUX_REV} 655a0d3b6eaSmrg exit ;; 656a0d3b6eaSmrg 3050*:HI-UX:*:*) 657a0d3b6eaSmrg eval $set_cc_for_build 658a0d3b6eaSmrg sed 's/^ //' << EOF >$dummy.c 659a0d3b6eaSmrg #include <unistd.h> 660a0d3b6eaSmrg int 661a0d3b6eaSmrg main () 662a0d3b6eaSmrg { 663a0d3b6eaSmrg long cpu = sysconf (_SC_CPU_VERSION); 664a0d3b6eaSmrg /* The order matters, because CPU_IS_HP_MC68K erroneously returns 665a0d3b6eaSmrg true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 666a0d3b6eaSmrg results, however. */ 667a0d3b6eaSmrg if (CPU_IS_PA_RISC (cpu)) 668a0d3b6eaSmrg { 669a0d3b6eaSmrg switch (cpu) 670a0d3b6eaSmrg { 671a0d3b6eaSmrg case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 672a0d3b6eaSmrg case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 673a0d3b6eaSmrg case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 674a0d3b6eaSmrg default: puts ("hppa-hitachi-hiuxwe2"); break; 675a0d3b6eaSmrg } 676a0d3b6eaSmrg } 677a0d3b6eaSmrg else if (CPU_IS_HP_MC68K (cpu)) 678a0d3b6eaSmrg puts ("m68k-hitachi-hiuxwe2"); 679a0d3b6eaSmrg else puts ("unknown-hitachi-hiuxwe2"); 680a0d3b6eaSmrg exit (0); 681a0d3b6eaSmrg } 682a0d3b6eaSmrgEOF 683a0d3b6eaSmrg $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 684a0d3b6eaSmrg { echo "$SYSTEM_NAME"; exit; } 685a0d3b6eaSmrg echo unknown-hitachi-hiuxwe2 686a0d3b6eaSmrg exit ;; 687a0d3b6eaSmrg 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 688a0d3b6eaSmrg echo hppa1.1-hp-bsd 689a0d3b6eaSmrg exit ;; 690a0d3b6eaSmrg 9000/8??:4.3bsd:*:*) 691a0d3b6eaSmrg echo hppa1.0-hp-bsd 692a0d3b6eaSmrg exit ;; 693a0d3b6eaSmrg *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 694a0d3b6eaSmrg echo hppa1.0-hp-mpeix 695a0d3b6eaSmrg exit ;; 696a0d3b6eaSmrg hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 697a0d3b6eaSmrg echo hppa1.1-hp-osf 698a0d3b6eaSmrg exit ;; 699a0d3b6eaSmrg hp8??:OSF1:*:*) 700a0d3b6eaSmrg echo hppa1.0-hp-osf 701a0d3b6eaSmrg exit ;; 702a0d3b6eaSmrg i*86:OSF1:*:*) 703a0d3b6eaSmrg if [ -x /usr/sbin/sysversion ] ; then 704a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-osf1mk 705a0d3b6eaSmrg else 706a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-osf1 707a0d3b6eaSmrg fi 708a0d3b6eaSmrg exit ;; 709a0d3b6eaSmrg parisc*:Lites*:*:*) 710a0d3b6eaSmrg echo hppa1.1-hp-lites 711a0d3b6eaSmrg exit ;; 712a0d3b6eaSmrg C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 713a0d3b6eaSmrg echo c1-convex-bsd 714a0d3b6eaSmrg exit ;; 715a0d3b6eaSmrg C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 716a0d3b6eaSmrg if getsysinfo -f scalar_acc 717a0d3b6eaSmrg then echo c32-convex-bsd 718a0d3b6eaSmrg else echo c2-convex-bsd 719a0d3b6eaSmrg fi 720a0d3b6eaSmrg exit ;; 721a0d3b6eaSmrg C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 722a0d3b6eaSmrg echo c34-convex-bsd 723a0d3b6eaSmrg exit ;; 724a0d3b6eaSmrg C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 725a0d3b6eaSmrg echo c38-convex-bsd 726a0d3b6eaSmrg exit ;; 727a0d3b6eaSmrg C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 728a0d3b6eaSmrg echo c4-convex-bsd 729a0d3b6eaSmrg exit ;; 730a0d3b6eaSmrg CRAY*Y-MP:*:*:*) 731a0d3b6eaSmrg echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 732a0d3b6eaSmrg exit ;; 733a0d3b6eaSmrg CRAY*[A-Z]90:*:*:*) 734a0d3b6eaSmrg echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 735a0d3b6eaSmrg | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 736a0d3b6eaSmrg -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 737a0d3b6eaSmrg -e 's/\.[^.]*$/.X/' 738a0d3b6eaSmrg exit ;; 739a0d3b6eaSmrg CRAY*TS:*:*:*) 740a0d3b6eaSmrg echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 741a0d3b6eaSmrg exit ;; 742a0d3b6eaSmrg CRAY*T3E:*:*:*) 743a0d3b6eaSmrg echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 744a0d3b6eaSmrg exit ;; 745a0d3b6eaSmrg CRAY*SV1:*:*:*) 746a0d3b6eaSmrg echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 747a0d3b6eaSmrg exit ;; 748a0d3b6eaSmrg *:UNICOS/mp:*:*) 749a0d3b6eaSmrg echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 750a0d3b6eaSmrg exit ;; 751a0d3b6eaSmrg F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 752a0d3b6eaSmrg FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 753a0d3b6eaSmrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 754a0d3b6eaSmrg FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 755a0d3b6eaSmrg echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 756a0d3b6eaSmrg exit ;; 757a0d3b6eaSmrg 5000:UNIX_System_V:4.*:*) 758a0d3b6eaSmrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 759a0d3b6eaSmrg FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` 760a0d3b6eaSmrg echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 761a0d3b6eaSmrg exit ;; 762a0d3b6eaSmrg i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 763a0d3b6eaSmrg echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 764a0d3b6eaSmrg exit ;; 765a0d3b6eaSmrg sparc*:BSD/OS:*:*) 766a0d3b6eaSmrg echo sparc-unknown-bsdi${UNAME_RELEASE} 767a0d3b6eaSmrg exit ;; 768a0d3b6eaSmrg *:BSD/OS:*:*) 769a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 770a0d3b6eaSmrg exit ;; 771a0d3b6eaSmrg *:FreeBSD:*:*) 772a0d3b6eaSmrg case ${UNAME_MACHINE} in 773a0d3b6eaSmrg pc98) 774a0d3b6eaSmrg echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 775a0d3b6eaSmrg amd64) 776a0d3b6eaSmrg echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 777a0d3b6eaSmrg *) 778a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 779a0d3b6eaSmrg esac 780a0d3b6eaSmrg exit ;; 781a0d3b6eaSmrg i*:CYGWIN*:*) 782a0d3b6eaSmrg echo ${UNAME_MACHINE}-pc-cygwin 783a0d3b6eaSmrg exit ;; 784a0d3b6eaSmrg *:MINGW*:*) 785a0d3b6eaSmrg echo ${UNAME_MACHINE}-pc-mingw32 786a0d3b6eaSmrg exit ;; 787a0d3b6eaSmrg i*:windows32*:*) 788a0d3b6eaSmrg # uname -m includes "-pc" on this system. 789a0d3b6eaSmrg echo ${UNAME_MACHINE}-mingw32 790a0d3b6eaSmrg exit ;; 791a0d3b6eaSmrg i*:PW*:*) 792a0d3b6eaSmrg echo ${UNAME_MACHINE}-pc-pw32 793a0d3b6eaSmrg exit ;; 794a0d3b6eaSmrg *:Interix*:[3456]*) 795a0d3b6eaSmrg case ${UNAME_MACHINE} in 796a0d3b6eaSmrg x86) 797a0d3b6eaSmrg echo i586-pc-interix${UNAME_RELEASE} 798a0d3b6eaSmrg exit ;; 799a0d3b6eaSmrg EM64T | authenticamd) 800a0d3b6eaSmrg echo x86_64-unknown-interix${UNAME_RELEASE} 801a0d3b6eaSmrg exit ;; 802a0d3b6eaSmrg IA64) 803a0d3b6eaSmrg echo ia64-unknown-interix${UNAME_RELEASE} 804a0d3b6eaSmrg exit ;; 805a0d3b6eaSmrg esac ;; 806a0d3b6eaSmrg [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 807a0d3b6eaSmrg echo i${UNAME_MACHINE}-pc-mks 808a0d3b6eaSmrg exit ;; 809a0d3b6eaSmrg i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 810a0d3b6eaSmrg # How do we know it's Interix rather than the generic POSIX subsystem? 811a0d3b6eaSmrg # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 812a0d3b6eaSmrg # UNAME_MACHINE based on the output of uname instead of i386? 813a0d3b6eaSmrg echo i586-pc-interix 814a0d3b6eaSmrg exit ;; 815a0d3b6eaSmrg i*:UWIN*:*) 816a0d3b6eaSmrg echo ${UNAME_MACHINE}-pc-uwin 817a0d3b6eaSmrg exit ;; 818a0d3b6eaSmrg amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 819a0d3b6eaSmrg echo x86_64-unknown-cygwin 820a0d3b6eaSmrg exit ;; 821a0d3b6eaSmrg p*:CYGWIN*:*) 822a0d3b6eaSmrg echo powerpcle-unknown-cygwin 823a0d3b6eaSmrg exit ;; 824a0d3b6eaSmrg prep*:SunOS:5.*:*) 825a0d3b6eaSmrg echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 826a0d3b6eaSmrg exit ;; 827a0d3b6eaSmrg *:GNU:*:*) 828a0d3b6eaSmrg # the GNU system 829a0d3b6eaSmrg echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 830a0d3b6eaSmrg exit ;; 831a0d3b6eaSmrg *:GNU/*:*:*) 832a0d3b6eaSmrg # other systems with GNU libc and userland 833a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu 834a0d3b6eaSmrg exit ;; 835a0d3b6eaSmrg i*86:Minix:*:*) 836a0d3b6eaSmrg echo ${UNAME_MACHINE}-pc-minix 837a0d3b6eaSmrg exit ;; 838a0d3b6eaSmrg arm*:Linux:*:*) 839a0d3b6eaSmrg eval $set_cc_for_build 840a0d3b6eaSmrg if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ 841a0d3b6eaSmrg | grep -q __ARM_EABI__ 842a0d3b6eaSmrg then 843a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 844a0d3b6eaSmrg else 845a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-linux-gnueabi 846a0d3b6eaSmrg fi 847a0d3b6eaSmrg exit ;; 848a0d3b6eaSmrg avr32*:Linux:*:*) 849a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 850a0d3b6eaSmrg exit ;; 851a0d3b6eaSmrg cris:Linux:*:*) 852a0d3b6eaSmrg echo cris-axis-linux-gnu 853a0d3b6eaSmrg exit ;; 854a0d3b6eaSmrg crisv32:Linux:*:*) 855a0d3b6eaSmrg echo crisv32-axis-linux-gnu 856a0d3b6eaSmrg exit ;; 857a0d3b6eaSmrg frv:Linux:*:*) 858a0d3b6eaSmrg echo frv-unknown-linux-gnu 859a0d3b6eaSmrg exit ;; 860a0d3b6eaSmrg ia64:Linux:*:*) 861a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 862a0d3b6eaSmrg exit ;; 863a0d3b6eaSmrg m32r*:Linux:*:*) 864a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 865a0d3b6eaSmrg exit ;; 866a0d3b6eaSmrg m68*:Linux:*:*) 867a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 868a0d3b6eaSmrg exit ;; 869a0d3b6eaSmrg mips:Linux:*:*) 870a0d3b6eaSmrg eval $set_cc_for_build 871a0d3b6eaSmrg sed 's/^ //' << EOF >$dummy.c 872a0d3b6eaSmrg #undef CPU 873a0d3b6eaSmrg #undef mips 874a0d3b6eaSmrg #undef mipsel 875a0d3b6eaSmrg #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 876a0d3b6eaSmrg CPU=mipsel 877a0d3b6eaSmrg #else 878a0d3b6eaSmrg #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 879a0d3b6eaSmrg CPU=mips 880a0d3b6eaSmrg #else 881a0d3b6eaSmrg CPU= 882a0d3b6eaSmrg #endif 883a0d3b6eaSmrg #endif 884a0d3b6eaSmrgEOF 885a0d3b6eaSmrg eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 886a0d3b6eaSmrg /^CPU/{ 887a0d3b6eaSmrg s: ::g 888a0d3b6eaSmrg p 889a0d3b6eaSmrg }'`" 890a0d3b6eaSmrg test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 891a0d3b6eaSmrg ;; 892a0d3b6eaSmrg mips64:Linux:*:*) 893a0d3b6eaSmrg eval $set_cc_for_build 894a0d3b6eaSmrg sed 's/^ //' << EOF >$dummy.c 895a0d3b6eaSmrg #undef CPU 896a0d3b6eaSmrg #undef mips64 897a0d3b6eaSmrg #undef mips64el 898a0d3b6eaSmrg #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 899a0d3b6eaSmrg CPU=mips64el 900a0d3b6eaSmrg #else 901a0d3b6eaSmrg #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 902a0d3b6eaSmrg CPU=mips64 903a0d3b6eaSmrg #else 904a0d3b6eaSmrg CPU= 905a0d3b6eaSmrg #endif 906a0d3b6eaSmrg #endif 907a0d3b6eaSmrgEOF 908a0d3b6eaSmrg eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 909a0d3b6eaSmrg /^CPU/{ 910a0d3b6eaSmrg s: ::g 911a0d3b6eaSmrg p 912a0d3b6eaSmrg }'`" 913a0d3b6eaSmrg test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 914a0d3b6eaSmrg ;; 915a0d3b6eaSmrg or32:Linux:*:*) 916a0d3b6eaSmrg echo or32-unknown-linux-gnu 917a0d3b6eaSmrg exit ;; 918a0d3b6eaSmrg ppc:Linux:*:*) 919a0d3b6eaSmrg echo powerpc-unknown-linux-gnu 920a0d3b6eaSmrg exit ;; 921a0d3b6eaSmrg ppc64:Linux:*:*) 922a0d3b6eaSmrg echo powerpc64-unknown-linux-gnu 923a0d3b6eaSmrg exit ;; 924a0d3b6eaSmrg alpha:Linux:*:*) 925a0d3b6eaSmrg case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 926a0d3b6eaSmrg EV5) UNAME_MACHINE=alphaev5 ;; 927a0d3b6eaSmrg EV56) UNAME_MACHINE=alphaev56 ;; 928a0d3b6eaSmrg PCA56) UNAME_MACHINE=alphapca56 ;; 929a0d3b6eaSmrg PCA57) UNAME_MACHINE=alphapca56 ;; 930a0d3b6eaSmrg EV6) UNAME_MACHINE=alphaev6 ;; 931a0d3b6eaSmrg EV67) UNAME_MACHINE=alphaev67 ;; 932a0d3b6eaSmrg EV68*) UNAME_MACHINE=alphaev68 ;; 933a0d3b6eaSmrg esac 934a0d3b6eaSmrg objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null 935a0d3b6eaSmrg if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi 936a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 937a0d3b6eaSmrg exit ;; 938a0d3b6eaSmrg parisc:Linux:*:* | hppa:Linux:*:*) 939a0d3b6eaSmrg # Look for CPU level 940a0d3b6eaSmrg case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 941a0d3b6eaSmrg PA7*) echo hppa1.1-unknown-linux-gnu ;; 942a0d3b6eaSmrg PA8*) echo hppa2.0-unknown-linux-gnu ;; 943a0d3b6eaSmrg *) echo hppa-unknown-linux-gnu ;; 944a0d3b6eaSmrg esac 945a0d3b6eaSmrg exit ;; 946a0d3b6eaSmrg parisc64:Linux:*:* | hppa64:Linux:*:*) 947a0d3b6eaSmrg echo hppa64-unknown-linux-gnu 948a0d3b6eaSmrg exit ;; 949a0d3b6eaSmrg s390:Linux:*:* | s390x:Linux:*:*) 950a0d3b6eaSmrg echo ${UNAME_MACHINE}-ibm-linux 951a0d3b6eaSmrg exit ;; 952a0d3b6eaSmrg sh64*:Linux:*:*) 953a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 954a0d3b6eaSmrg exit ;; 955a0d3b6eaSmrg sh*:Linux:*:*) 956a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 957a0d3b6eaSmrg exit ;; 958a0d3b6eaSmrg sparc:Linux:*:* | sparc64:Linux:*:*) 959a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 960a0d3b6eaSmrg exit ;; 961a0d3b6eaSmrg vax:Linux:*:*) 962a0d3b6eaSmrg echo ${UNAME_MACHINE}-dec-linux-gnu 963a0d3b6eaSmrg exit ;; 964a0d3b6eaSmrg x86_64:Linux:*:*) 965a0d3b6eaSmrg echo x86_64-unknown-linux-gnu 966a0d3b6eaSmrg exit ;; 967a0d3b6eaSmrg xtensa*:Linux:*:*) 968a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 969a0d3b6eaSmrg exit ;; 970a0d3b6eaSmrg i*86:Linux:*:*) 971a0d3b6eaSmrg # The BFD linker knows what the default object file format is, so 972a0d3b6eaSmrg # first see if it will tell us. cd to the root directory to prevent 973a0d3b6eaSmrg # problems with other programs or directories called `ld' in the path. 974a0d3b6eaSmrg # Set LC_ALL=C to ensure ld outputs messages in English. 975a0d3b6eaSmrg ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ 976a0d3b6eaSmrg | sed -ne '/supported targets:/!d 977a0d3b6eaSmrg s/[ ][ ]*/ /g 978a0d3b6eaSmrg s/.*supported targets: *// 979a0d3b6eaSmrg s/ .*// 980a0d3b6eaSmrg p'` 981a0d3b6eaSmrg case "$ld_supported_targets" in 982a0d3b6eaSmrg elf32-i386) 983a0d3b6eaSmrg TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" 984a0d3b6eaSmrg ;; 985a0d3b6eaSmrg a.out-i386-linux) 986a0d3b6eaSmrg echo "${UNAME_MACHINE}-pc-linux-gnuaout" 987a0d3b6eaSmrg exit ;; 988a0d3b6eaSmrg coff-i386) 989a0d3b6eaSmrg echo "${UNAME_MACHINE}-pc-linux-gnucoff" 990a0d3b6eaSmrg exit ;; 991a0d3b6eaSmrg "") 992a0d3b6eaSmrg # Either a pre-BFD a.out linker (linux-gnuoldld) or 993a0d3b6eaSmrg # one that does not give us useful --help. 994a0d3b6eaSmrg echo "${UNAME_MACHINE}-pc-linux-gnuoldld" 995a0d3b6eaSmrg exit ;; 996a0d3b6eaSmrg esac 997a0d3b6eaSmrg # Determine whether the default compiler is a.out or elf 998a0d3b6eaSmrg eval $set_cc_for_build 999a0d3b6eaSmrg sed 's/^ //' << EOF >$dummy.c 1000a0d3b6eaSmrg #include <features.h> 1001a0d3b6eaSmrg #ifdef __ELF__ 1002a0d3b6eaSmrg # ifdef __GLIBC__ 1003a0d3b6eaSmrg # if __GLIBC__ >= 2 1004a0d3b6eaSmrg LIBC=gnu 1005a0d3b6eaSmrg # else 1006a0d3b6eaSmrg LIBC=gnulibc1 1007a0d3b6eaSmrg # endif 1008a0d3b6eaSmrg # else 1009a0d3b6eaSmrg LIBC=gnulibc1 1010a0d3b6eaSmrg # endif 1011a0d3b6eaSmrg #else 1012a0d3b6eaSmrg #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC) 1013a0d3b6eaSmrg LIBC=gnu 1014a0d3b6eaSmrg #else 1015a0d3b6eaSmrg LIBC=gnuaout 1016a0d3b6eaSmrg #endif 1017a0d3b6eaSmrg #endif 1018a0d3b6eaSmrg #ifdef __dietlibc__ 1019a0d3b6eaSmrg LIBC=dietlibc 1020a0d3b6eaSmrg #endif 1021a0d3b6eaSmrgEOF 1022a0d3b6eaSmrg eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 1023a0d3b6eaSmrg /^LIBC/{ 1024a0d3b6eaSmrg s: ::g 1025a0d3b6eaSmrg p 1026a0d3b6eaSmrg }'`" 1027a0d3b6eaSmrg test x"${LIBC}" != x && { 1028a0d3b6eaSmrg echo "${UNAME_MACHINE}-pc-linux-${LIBC}" 1029a0d3b6eaSmrg exit 1030a0d3b6eaSmrg } 1031a0d3b6eaSmrg test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; } 1032a0d3b6eaSmrg ;; 1033a0d3b6eaSmrg i*86:DYNIX/ptx:4*:*) 1034a0d3b6eaSmrg # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 1035a0d3b6eaSmrg # earlier versions are messed up and put the nodename in both 1036a0d3b6eaSmrg # sysname and nodename. 1037a0d3b6eaSmrg echo i386-sequent-sysv4 1038a0d3b6eaSmrg exit ;; 1039a0d3b6eaSmrg i*86:UNIX_SV:4.2MP:2.*) 1040a0d3b6eaSmrg # Unixware is an offshoot of SVR4, but it has its own version 1041a0d3b6eaSmrg # number series starting with 2... 1042a0d3b6eaSmrg # I am not positive that other SVR4 systems won't match this, 1043a0d3b6eaSmrg # I just have to hope. -- rms. 1044a0d3b6eaSmrg # Use sysv4.2uw... so that sysv4* matches it. 1045a0d3b6eaSmrg echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 1046a0d3b6eaSmrg exit ;; 1047a0d3b6eaSmrg i*86:OS/2:*:*) 1048a0d3b6eaSmrg # If we were able to find `uname', then EMX Unix compatibility 1049a0d3b6eaSmrg # is probably installed. 1050a0d3b6eaSmrg echo ${UNAME_MACHINE}-pc-os2-emx 1051a0d3b6eaSmrg exit ;; 1052a0d3b6eaSmrg i*86:XTS-300:*:STOP) 1053a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-stop 1054a0d3b6eaSmrg exit ;; 1055a0d3b6eaSmrg i*86:atheos:*:*) 1056a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-atheos 1057a0d3b6eaSmrg exit ;; 1058a0d3b6eaSmrg i*86:syllable:*:*) 1059a0d3b6eaSmrg echo ${UNAME_MACHINE}-pc-syllable 1060a0d3b6eaSmrg exit ;; 1061a0d3b6eaSmrg i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) 1062a0d3b6eaSmrg echo i386-unknown-lynxos${UNAME_RELEASE} 1063a0d3b6eaSmrg exit ;; 1064a0d3b6eaSmrg i*86:*DOS:*:*) 1065a0d3b6eaSmrg echo ${UNAME_MACHINE}-pc-msdosdjgpp 1066a0d3b6eaSmrg exit ;; 1067a0d3b6eaSmrg i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 1068a0d3b6eaSmrg UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 1069a0d3b6eaSmrg if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 1070a0d3b6eaSmrg echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 1071a0d3b6eaSmrg else 1072a0d3b6eaSmrg echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 1073a0d3b6eaSmrg fi 1074a0d3b6eaSmrg exit ;; 1075a0d3b6eaSmrg i*86:*:5:[678]*) 1076a0d3b6eaSmrg # UnixWare 7.x, OpenUNIX and OpenServer 6. 1077a0d3b6eaSmrg case `/bin/uname -X | grep "^Machine"` in 1078a0d3b6eaSmrg *486*) UNAME_MACHINE=i486 ;; 1079a0d3b6eaSmrg *Pentium) UNAME_MACHINE=i586 ;; 1080a0d3b6eaSmrg *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 1081a0d3b6eaSmrg esac 1082a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 1083a0d3b6eaSmrg exit ;; 1084a0d3b6eaSmrg i*86:*:3.2:*) 1085a0d3b6eaSmrg if test -f /usr/options/cb.name; then 1086a0d3b6eaSmrg UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 1087a0d3b6eaSmrg echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 1088a0d3b6eaSmrg elif /bin/uname -X 2>/dev/null >/dev/null ; then 1089a0d3b6eaSmrg UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 1090a0d3b6eaSmrg (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 1091a0d3b6eaSmrg (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 1092a0d3b6eaSmrg && UNAME_MACHINE=i586 1093a0d3b6eaSmrg (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 1094a0d3b6eaSmrg && UNAME_MACHINE=i686 1095a0d3b6eaSmrg (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 1096a0d3b6eaSmrg && UNAME_MACHINE=i686 1097a0d3b6eaSmrg echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 1098a0d3b6eaSmrg else 1099a0d3b6eaSmrg echo ${UNAME_MACHINE}-pc-sysv32 1100a0d3b6eaSmrg fi 1101a0d3b6eaSmrg exit ;; 1102a0d3b6eaSmrg pc:*:*:*) 1103a0d3b6eaSmrg # Left here for compatibility: 1104a0d3b6eaSmrg # uname -m prints for DJGPP always 'pc', but it prints nothing about 1105a0d3b6eaSmrg # the processor, so we play safe by assuming i386. 1106a0d3b6eaSmrg echo i386-pc-msdosdjgpp 1107a0d3b6eaSmrg exit ;; 1108a0d3b6eaSmrg Intel:Mach:3*:*) 1109a0d3b6eaSmrg echo i386-pc-mach3 1110a0d3b6eaSmrg exit ;; 1111a0d3b6eaSmrg paragon:*:*:*) 1112a0d3b6eaSmrg echo i860-intel-osf1 1113a0d3b6eaSmrg exit ;; 1114a0d3b6eaSmrg i860:*:4.*:*) # i860-SVR4 1115a0d3b6eaSmrg if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 1116a0d3b6eaSmrg echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 1117a0d3b6eaSmrg else # Add other i860-SVR4 vendors below as they are discovered. 1118a0d3b6eaSmrg echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 1119a0d3b6eaSmrg fi 1120a0d3b6eaSmrg exit ;; 1121a0d3b6eaSmrg mini*:CTIX:SYS*5:*) 1122a0d3b6eaSmrg # "miniframe" 1123a0d3b6eaSmrg echo m68010-convergent-sysv 1124a0d3b6eaSmrg exit ;; 1125a0d3b6eaSmrg mc68k:UNIX:SYSTEM5:3.51m) 1126a0d3b6eaSmrg echo m68k-convergent-sysv 1127a0d3b6eaSmrg exit ;; 1128a0d3b6eaSmrg M680?0:D-NIX:5.3:*) 1129a0d3b6eaSmrg echo m68k-diab-dnix 1130a0d3b6eaSmrg exit ;; 1131a0d3b6eaSmrg M68*:*:R3V[5678]*:*) 1132a0d3b6eaSmrg test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 1133a0d3b6eaSmrg 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) 1134a0d3b6eaSmrg OS_REL='' 1135a0d3b6eaSmrg test -r /etc/.relid \ 1136a0d3b6eaSmrg && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1137a0d3b6eaSmrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1138a0d3b6eaSmrg && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 1139a0d3b6eaSmrg /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1140a0d3b6eaSmrg && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1141a0d3b6eaSmrg 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 1142a0d3b6eaSmrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1143a0d3b6eaSmrg && { echo i486-ncr-sysv4; exit; } ;; 1144a0d3b6eaSmrg m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 1145a0d3b6eaSmrg echo m68k-unknown-lynxos${UNAME_RELEASE} 1146a0d3b6eaSmrg exit ;; 1147a0d3b6eaSmrg mc68030:UNIX_System_V:4.*:*) 1148a0d3b6eaSmrg echo m68k-atari-sysv4 1149a0d3b6eaSmrg exit ;; 1150a0d3b6eaSmrg TSUNAMI:LynxOS:2.*:*) 1151a0d3b6eaSmrg echo sparc-unknown-lynxos${UNAME_RELEASE} 1152a0d3b6eaSmrg exit ;; 1153a0d3b6eaSmrg rs6000:LynxOS:2.*:*) 1154a0d3b6eaSmrg echo rs6000-unknown-lynxos${UNAME_RELEASE} 1155a0d3b6eaSmrg exit ;; 1156a0d3b6eaSmrg PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) 1157a0d3b6eaSmrg echo powerpc-unknown-lynxos${UNAME_RELEASE} 1158a0d3b6eaSmrg exit ;; 1159a0d3b6eaSmrg SM[BE]S:UNIX_SV:*:*) 1160a0d3b6eaSmrg echo mips-dde-sysv${UNAME_RELEASE} 1161a0d3b6eaSmrg exit ;; 1162a0d3b6eaSmrg RM*:ReliantUNIX-*:*:*) 1163a0d3b6eaSmrg echo mips-sni-sysv4 1164a0d3b6eaSmrg exit ;; 1165a0d3b6eaSmrg RM*:SINIX-*:*:*) 1166a0d3b6eaSmrg echo mips-sni-sysv4 1167a0d3b6eaSmrg exit ;; 1168a0d3b6eaSmrg *:SINIX-*:*:*) 1169a0d3b6eaSmrg if uname -p 2>/dev/null >/dev/null ; then 1170a0d3b6eaSmrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 1171a0d3b6eaSmrg echo ${UNAME_MACHINE}-sni-sysv4 1172a0d3b6eaSmrg else 1173a0d3b6eaSmrg echo ns32k-sni-sysv 1174a0d3b6eaSmrg fi 1175a0d3b6eaSmrg exit ;; 1176a0d3b6eaSmrg PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 1177a0d3b6eaSmrg # says <Richard.M.Bartel@ccMail.Census.GOV> 1178a0d3b6eaSmrg echo i586-unisys-sysv4 1179a0d3b6eaSmrg exit ;; 1180a0d3b6eaSmrg *:UNIX_System_V:4*:FTX*) 1181a0d3b6eaSmrg # From Gerald Hewes <hewes@openmarket.com>. 1182a0d3b6eaSmrg # How about differentiating between stratus architectures? -djm 1183a0d3b6eaSmrg echo hppa1.1-stratus-sysv4 1184a0d3b6eaSmrg exit ;; 1185a0d3b6eaSmrg *:*:*:FTX*) 1186a0d3b6eaSmrg # From seanf@swdc.stratus.com. 1187a0d3b6eaSmrg echo i860-stratus-sysv4 1188a0d3b6eaSmrg exit ;; 1189a0d3b6eaSmrg i*86:VOS:*:*) 1190a0d3b6eaSmrg # From Paul.Green@stratus.com. 1191a0d3b6eaSmrg echo ${UNAME_MACHINE}-stratus-vos 1192a0d3b6eaSmrg exit ;; 1193a0d3b6eaSmrg *:VOS:*:*) 1194a0d3b6eaSmrg # From Paul.Green@stratus.com. 1195a0d3b6eaSmrg echo hppa1.1-stratus-vos 1196a0d3b6eaSmrg exit ;; 1197a0d3b6eaSmrg mc68*:A/UX:*:*) 1198a0d3b6eaSmrg echo m68k-apple-aux${UNAME_RELEASE} 1199a0d3b6eaSmrg exit ;; 1200a0d3b6eaSmrg news*:NEWS-OS:6*:*) 1201a0d3b6eaSmrg echo mips-sony-newsos6 1202a0d3b6eaSmrg exit ;; 1203a0d3b6eaSmrg R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 1204a0d3b6eaSmrg if [ -d /usr/nec ]; then 1205a0d3b6eaSmrg echo mips-nec-sysv${UNAME_RELEASE} 1206a0d3b6eaSmrg else 1207a0d3b6eaSmrg echo mips-unknown-sysv${UNAME_RELEASE} 1208a0d3b6eaSmrg fi 1209a0d3b6eaSmrg exit ;; 1210a0d3b6eaSmrg BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 1211a0d3b6eaSmrg echo powerpc-be-beos 1212a0d3b6eaSmrg exit ;; 1213a0d3b6eaSmrg BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 1214a0d3b6eaSmrg echo powerpc-apple-beos 1215a0d3b6eaSmrg exit ;; 1216a0d3b6eaSmrg BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 1217a0d3b6eaSmrg echo i586-pc-beos 1218a0d3b6eaSmrg exit ;; 1219a0d3b6eaSmrg SX-4:SUPER-UX:*:*) 1220a0d3b6eaSmrg echo sx4-nec-superux${UNAME_RELEASE} 1221a0d3b6eaSmrg exit ;; 1222a0d3b6eaSmrg SX-5:SUPER-UX:*:*) 1223a0d3b6eaSmrg echo sx5-nec-superux${UNAME_RELEASE} 1224a0d3b6eaSmrg exit ;; 1225a0d3b6eaSmrg SX-6:SUPER-UX:*:*) 1226a0d3b6eaSmrg echo sx6-nec-superux${UNAME_RELEASE} 1227a0d3b6eaSmrg exit ;; 1228a0d3b6eaSmrg SX-7:SUPER-UX:*:*) 1229a0d3b6eaSmrg echo sx7-nec-superux${UNAME_RELEASE} 1230a0d3b6eaSmrg exit ;; 1231a0d3b6eaSmrg SX-8:SUPER-UX:*:*) 1232a0d3b6eaSmrg echo sx8-nec-superux${UNAME_RELEASE} 1233a0d3b6eaSmrg exit ;; 1234a0d3b6eaSmrg SX-8R:SUPER-UX:*:*) 1235a0d3b6eaSmrg echo sx8r-nec-superux${UNAME_RELEASE} 1236a0d3b6eaSmrg exit ;; 1237a0d3b6eaSmrg Power*:Rhapsody:*:*) 1238a0d3b6eaSmrg echo powerpc-apple-rhapsody${UNAME_RELEASE} 1239a0d3b6eaSmrg exit ;; 1240a0d3b6eaSmrg *:Rhapsody:*:*) 1241a0d3b6eaSmrg echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 1242a0d3b6eaSmrg exit ;; 1243a0d3b6eaSmrg *:Darwin:*:*) 1244a0d3b6eaSmrg UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 1245a0d3b6eaSmrg case $UNAME_PROCESSOR in 1246a0d3b6eaSmrg unknown) UNAME_PROCESSOR=powerpc ;; 1247a0d3b6eaSmrg esac 1248a0d3b6eaSmrg echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 1249a0d3b6eaSmrg exit ;; 1250a0d3b6eaSmrg *:procnto*:*:* | *:QNX:[0123456789]*:*) 1251a0d3b6eaSmrg UNAME_PROCESSOR=`uname -p` 1252a0d3b6eaSmrg if test "$UNAME_PROCESSOR" = "x86"; then 1253a0d3b6eaSmrg UNAME_PROCESSOR=i386 1254a0d3b6eaSmrg UNAME_MACHINE=pc 1255a0d3b6eaSmrg fi 1256a0d3b6eaSmrg echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 1257a0d3b6eaSmrg exit ;; 1258a0d3b6eaSmrg *:QNX:*:4*) 1259a0d3b6eaSmrg echo i386-pc-qnx 1260a0d3b6eaSmrg exit ;; 1261a0d3b6eaSmrg NSE-?:NONSTOP_KERNEL:*:*) 1262a0d3b6eaSmrg echo nse-tandem-nsk${UNAME_RELEASE} 1263a0d3b6eaSmrg exit ;; 1264a0d3b6eaSmrg NSR-?:NONSTOP_KERNEL:*:*) 1265a0d3b6eaSmrg echo nsr-tandem-nsk${UNAME_RELEASE} 1266a0d3b6eaSmrg exit ;; 1267a0d3b6eaSmrg *:NonStop-UX:*:*) 1268a0d3b6eaSmrg echo mips-compaq-nonstopux 1269a0d3b6eaSmrg exit ;; 1270a0d3b6eaSmrg BS2000:POSIX*:*:*) 1271a0d3b6eaSmrg echo bs2000-siemens-sysv 1272a0d3b6eaSmrg exit ;; 1273a0d3b6eaSmrg DS/*:UNIX_System_V:*:*) 1274a0d3b6eaSmrg echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 1275a0d3b6eaSmrg exit ;; 1276a0d3b6eaSmrg *:Plan9:*:*) 1277a0d3b6eaSmrg # "uname -m" is not consistent, so use $cputype instead. 386 1278a0d3b6eaSmrg # is converted to i386 for consistency with other x86 1279a0d3b6eaSmrg # operating systems. 1280a0d3b6eaSmrg if test "$cputype" = "386"; then 1281a0d3b6eaSmrg UNAME_MACHINE=i386 1282a0d3b6eaSmrg else 1283a0d3b6eaSmrg UNAME_MACHINE="$cputype" 1284a0d3b6eaSmrg fi 1285a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-plan9 1286a0d3b6eaSmrg exit ;; 1287a0d3b6eaSmrg *:TOPS-10:*:*) 1288a0d3b6eaSmrg echo pdp10-unknown-tops10 1289a0d3b6eaSmrg exit ;; 1290a0d3b6eaSmrg *:TENEX:*:*) 1291a0d3b6eaSmrg echo pdp10-unknown-tenex 1292a0d3b6eaSmrg exit ;; 1293a0d3b6eaSmrg KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 1294a0d3b6eaSmrg echo pdp10-dec-tops20 1295a0d3b6eaSmrg exit ;; 1296a0d3b6eaSmrg XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 1297a0d3b6eaSmrg echo pdp10-xkl-tops20 1298a0d3b6eaSmrg exit ;; 1299a0d3b6eaSmrg *:TOPS-20:*:*) 1300a0d3b6eaSmrg echo pdp10-unknown-tops20 1301a0d3b6eaSmrg exit ;; 1302a0d3b6eaSmrg *:ITS:*:*) 1303a0d3b6eaSmrg echo pdp10-unknown-its 1304a0d3b6eaSmrg exit ;; 1305a0d3b6eaSmrg SEI:*:*:SEIUX) 1306a0d3b6eaSmrg echo mips-sei-seiux${UNAME_RELEASE} 1307a0d3b6eaSmrg exit ;; 1308a0d3b6eaSmrg *:DragonFly:*:*) 1309a0d3b6eaSmrg echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 1310a0d3b6eaSmrg exit ;; 1311a0d3b6eaSmrg *:*VMS:*:*) 1312a0d3b6eaSmrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 1313a0d3b6eaSmrg case "${UNAME_MACHINE}" in 1314a0d3b6eaSmrg A*) echo alpha-dec-vms ; exit ;; 1315a0d3b6eaSmrg I*) echo ia64-dec-vms ; exit ;; 1316a0d3b6eaSmrg V*) echo vax-dec-vms ; exit ;; 1317a0d3b6eaSmrg esac ;; 1318a0d3b6eaSmrg *:XENIX:*:SysV) 1319a0d3b6eaSmrg echo i386-pc-xenix 1320a0d3b6eaSmrg exit ;; 1321a0d3b6eaSmrg i*86:skyos:*:*) 1322a0d3b6eaSmrg echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' 1323a0d3b6eaSmrg exit ;; 1324a0d3b6eaSmrg i*86:rdos:*:*) 1325a0d3b6eaSmrg echo ${UNAME_MACHINE}-pc-rdos 1326a0d3b6eaSmrg exit ;; 1327a0d3b6eaSmrgesac 1328a0d3b6eaSmrg 1329a0d3b6eaSmrg#echo '(No uname command or uname output not recognized.)' 1>&2 1330a0d3b6eaSmrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 1331a0d3b6eaSmrg 1332a0d3b6eaSmrgeval $set_cc_for_build 1333a0d3b6eaSmrgcat >$dummy.c <<EOF 1334a0d3b6eaSmrg#ifdef _SEQUENT_ 1335a0d3b6eaSmrg# include <sys/types.h> 1336a0d3b6eaSmrg# include <sys/utsname.h> 1337a0d3b6eaSmrg#endif 1338a0d3b6eaSmrgmain () 1339a0d3b6eaSmrg{ 1340a0d3b6eaSmrg#if defined (sony) 1341a0d3b6eaSmrg#if defined (MIPSEB) 1342a0d3b6eaSmrg /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, 1343a0d3b6eaSmrg I don't know.... */ 1344a0d3b6eaSmrg printf ("mips-sony-bsd\n"); exit (0); 1345a0d3b6eaSmrg#else 1346a0d3b6eaSmrg#include <sys/param.h> 1347a0d3b6eaSmrg printf ("m68k-sony-newsos%s\n", 1348a0d3b6eaSmrg#ifdef NEWSOS4 1349a0d3b6eaSmrg "4" 1350a0d3b6eaSmrg#else 1351a0d3b6eaSmrg "" 1352a0d3b6eaSmrg#endif 1353a0d3b6eaSmrg ); exit (0); 1354a0d3b6eaSmrg#endif 1355a0d3b6eaSmrg#endif 1356a0d3b6eaSmrg 1357a0d3b6eaSmrg#if defined (__arm) && defined (__acorn) && defined (__unix) 1358a0d3b6eaSmrg printf ("arm-acorn-riscix\n"); exit (0); 1359a0d3b6eaSmrg#endif 1360a0d3b6eaSmrg 1361a0d3b6eaSmrg#if defined (hp300) && !defined (hpux) 1362a0d3b6eaSmrg printf ("m68k-hp-bsd\n"); exit (0); 1363a0d3b6eaSmrg#endif 1364a0d3b6eaSmrg 1365a0d3b6eaSmrg#if defined (NeXT) 1366a0d3b6eaSmrg#if !defined (__ARCHITECTURE__) 1367a0d3b6eaSmrg#define __ARCHITECTURE__ "m68k" 1368a0d3b6eaSmrg#endif 1369a0d3b6eaSmrg int version; 1370a0d3b6eaSmrg version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; 1371a0d3b6eaSmrg if (version < 4) 1372a0d3b6eaSmrg printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); 1373a0d3b6eaSmrg else 1374a0d3b6eaSmrg printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); 1375a0d3b6eaSmrg exit (0); 1376a0d3b6eaSmrg#endif 1377a0d3b6eaSmrg 1378a0d3b6eaSmrg#if defined (MULTIMAX) || defined (n16) 1379a0d3b6eaSmrg#if defined (UMAXV) 1380a0d3b6eaSmrg printf ("ns32k-encore-sysv\n"); exit (0); 1381a0d3b6eaSmrg#else 1382a0d3b6eaSmrg#if defined (CMU) 1383a0d3b6eaSmrg printf ("ns32k-encore-mach\n"); exit (0); 1384a0d3b6eaSmrg#else 1385a0d3b6eaSmrg printf ("ns32k-encore-bsd\n"); exit (0); 1386a0d3b6eaSmrg#endif 1387a0d3b6eaSmrg#endif 1388a0d3b6eaSmrg#endif 1389a0d3b6eaSmrg 1390a0d3b6eaSmrg#if defined (__386BSD__) 1391a0d3b6eaSmrg printf ("i386-pc-bsd\n"); exit (0); 1392a0d3b6eaSmrg#endif 1393a0d3b6eaSmrg 1394a0d3b6eaSmrg#if defined (sequent) 1395a0d3b6eaSmrg#if defined (i386) 1396a0d3b6eaSmrg printf ("i386-sequent-dynix\n"); exit (0); 1397a0d3b6eaSmrg#endif 1398a0d3b6eaSmrg#if defined (ns32000) 1399a0d3b6eaSmrg printf ("ns32k-sequent-dynix\n"); exit (0); 1400a0d3b6eaSmrg#endif 1401a0d3b6eaSmrg#endif 1402a0d3b6eaSmrg 1403a0d3b6eaSmrg#if defined (_SEQUENT_) 1404a0d3b6eaSmrg struct utsname un; 1405a0d3b6eaSmrg 1406a0d3b6eaSmrg uname(&un); 1407a0d3b6eaSmrg 1408a0d3b6eaSmrg if (strncmp(un.version, "V2", 2) == 0) { 1409a0d3b6eaSmrg printf ("i386-sequent-ptx2\n"); exit (0); 1410a0d3b6eaSmrg } 1411a0d3b6eaSmrg if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ 1412a0d3b6eaSmrg printf ("i386-sequent-ptx1\n"); exit (0); 1413a0d3b6eaSmrg } 1414a0d3b6eaSmrg printf ("i386-sequent-ptx\n"); exit (0); 1415a0d3b6eaSmrg 1416a0d3b6eaSmrg#endif 1417a0d3b6eaSmrg 1418a0d3b6eaSmrg#if defined (vax) 1419a0d3b6eaSmrg# if !defined (ultrix) 1420a0d3b6eaSmrg# include <sys/param.h> 1421a0d3b6eaSmrg# if defined (BSD) 1422a0d3b6eaSmrg# if BSD == 43 1423a0d3b6eaSmrg printf ("vax-dec-bsd4.3\n"); exit (0); 1424a0d3b6eaSmrg# else 1425a0d3b6eaSmrg# if BSD == 199006 1426a0d3b6eaSmrg printf ("vax-dec-bsd4.3reno\n"); exit (0); 1427a0d3b6eaSmrg# else 1428a0d3b6eaSmrg printf ("vax-dec-bsd\n"); exit (0); 1429a0d3b6eaSmrg# endif 1430a0d3b6eaSmrg# endif 1431a0d3b6eaSmrg# else 1432a0d3b6eaSmrg printf ("vax-dec-bsd\n"); exit (0); 1433a0d3b6eaSmrg# endif 1434a0d3b6eaSmrg# else 1435a0d3b6eaSmrg printf ("vax-dec-ultrix\n"); exit (0); 1436a0d3b6eaSmrg# endif 1437a0d3b6eaSmrg#endif 1438a0d3b6eaSmrg 1439a0d3b6eaSmrg#if defined (alliant) && defined (i860) 1440a0d3b6eaSmrg printf ("i860-alliant-bsd\n"); exit (0); 1441a0d3b6eaSmrg#endif 1442a0d3b6eaSmrg 1443a0d3b6eaSmrg exit (1); 1444a0d3b6eaSmrg} 1445a0d3b6eaSmrgEOF 1446a0d3b6eaSmrg 1447a0d3b6eaSmrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && 1448a0d3b6eaSmrg { echo "$SYSTEM_NAME"; exit; } 1449a0d3b6eaSmrg 1450a0d3b6eaSmrg# Apollos put the system type in the environment. 1451a0d3b6eaSmrg 1452a0d3b6eaSmrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } 1453a0d3b6eaSmrg 1454a0d3b6eaSmrg# Convex versions that predate uname can use getsysinfo(1) 1455a0d3b6eaSmrg 1456a0d3b6eaSmrgif [ -x /usr/convex/getsysinfo ] 1457a0d3b6eaSmrgthen 1458a0d3b6eaSmrg case `getsysinfo -f cpu_type` in 1459a0d3b6eaSmrg c1*) 1460a0d3b6eaSmrg echo c1-convex-bsd 1461a0d3b6eaSmrg exit ;; 1462a0d3b6eaSmrg c2*) 1463a0d3b6eaSmrg if getsysinfo -f scalar_acc 1464a0d3b6eaSmrg then echo c32-convex-bsd 1465a0d3b6eaSmrg else echo c2-convex-bsd 1466a0d3b6eaSmrg fi 1467a0d3b6eaSmrg exit ;; 1468a0d3b6eaSmrg c34*) 1469a0d3b6eaSmrg echo c34-convex-bsd 1470a0d3b6eaSmrg exit ;; 1471a0d3b6eaSmrg c38*) 1472a0d3b6eaSmrg echo c38-convex-bsd 1473a0d3b6eaSmrg exit ;; 1474a0d3b6eaSmrg c4*) 1475a0d3b6eaSmrg echo c4-convex-bsd 1476a0d3b6eaSmrg exit ;; 1477a0d3b6eaSmrg esac 1478a0d3b6eaSmrgfi 1479a0d3b6eaSmrg 1480a0d3b6eaSmrgcat >&2 <<EOF 1481a0d3b6eaSmrg$0: unable to guess system type 1482a0d3b6eaSmrg 1483a0d3b6eaSmrgThis script, last modified $timestamp, has failed to recognize 1484a0d3b6eaSmrgthe operating system you are using. It is advised that you 1485a0d3b6eaSmrgdownload the most up to date version of the config scripts from 1486a0d3b6eaSmrg 1487a0d3b6eaSmrg http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess 1488a0d3b6eaSmrgand 1489a0d3b6eaSmrg http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub 1490a0d3b6eaSmrg 1491a0d3b6eaSmrgIf the version you run ($0) is already up to date, please 1492a0d3b6eaSmrgsend the following data and any information you think might be 1493a0d3b6eaSmrgpertinent to <config-patches@gnu.org> in order to provide the needed 1494a0d3b6eaSmrginformation to handle your system. 1495a0d3b6eaSmrg 1496a0d3b6eaSmrgconfig.guess timestamp = $timestamp 1497a0d3b6eaSmrg 1498a0d3b6eaSmrguname -m = `(uname -m) 2>/dev/null || echo unknown` 1499a0d3b6eaSmrguname -r = `(uname -r) 2>/dev/null || echo unknown` 1500a0d3b6eaSmrguname -s = `(uname -s) 2>/dev/null || echo unknown` 1501a0d3b6eaSmrguname -v = `(uname -v) 2>/dev/null || echo unknown` 1502a0d3b6eaSmrg 1503a0d3b6eaSmrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 1504a0d3b6eaSmrg/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 1505a0d3b6eaSmrg 1506a0d3b6eaSmrghostinfo = `(hostinfo) 2>/dev/null` 1507a0d3b6eaSmrg/bin/universe = `(/bin/universe) 2>/dev/null` 1508a0d3b6eaSmrg/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 1509a0d3b6eaSmrg/bin/arch = `(/bin/arch) 2>/dev/null` 1510a0d3b6eaSmrg/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 1511a0d3b6eaSmrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 1512a0d3b6eaSmrg 1513a0d3b6eaSmrgUNAME_MACHINE = ${UNAME_MACHINE} 1514a0d3b6eaSmrgUNAME_RELEASE = ${UNAME_RELEASE} 1515a0d3b6eaSmrgUNAME_SYSTEM = ${UNAME_SYSTEM} 1516a0d3b6eaSmrgUNAME_VERSION = ${UNAME_VERSION} 1517a0d3b6eaSmrgEOF 1518a0d3b6eaSmrg 1519a0d3b6eaSmrgexit 1 1520a0d3b6eaSmrg 1521a0d3b6eaSmrg# Local variables: 1522a0d3b6eaSmrg# eval: (add-hook 'write-file-hooks 'time-stamp) 1523a0d3b6eaSmrg# time-stamp-start: "timestamp='" 1524a0d3b6eaSmrg# time-stamp-format: "%:y-%02m-%02d" 1525a0d3b6eaSmrg# time-stamp-end: "'" 1526a0d3b6eaSmrg# End: 1527