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