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