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