150276Speter#! /bin/sh 250276Speter# Attempt to guess a canonical system name. 397049Speter# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4178866Srafan# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 5178866Srafan# Free Software Foundation, Inc. 662449Speter 7184989Srafantimestamp='2008-04-14' 862449Speter 950276Speter# This file is free software; you can redistribute it and/or modify it 1050276Speter# under the terms of the GNU General Public License as published by 1150276Speter# the Free Software Foundation; either version 2 of the License, or 1250276Speter# (at your option) any later version. 1350276Speter# 1450276Speter# This program is distributed in the hope that it will be useful, but 1550276Speter# WITHOUT ANY WARRANTY; without even the implied warranty of 1650276Speter# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 1750276Speter# General Public License for more details. 1850276Speter# 1950276Speter# You should have received a copy of the GNU General Public License 2050276Speter# along with this program; if not, write to the Free Software 21166124Srafan# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 22166124Srafan# 02110-1301, USA. 2350276Speter# 2450276Speter# As a special exception to the GNU General Public License, if you 2550276Speter# distribute this file as part of a program that contains a 2650276Speter# configuration script generated by Autoconf, you may include it under 2750276Speter# the same distribution terms that you use for the rest of that program. 2850276Speter 29166124Srafan 3097049Speter# Originally written by Per Bothner <per@bothner.com>. 3197049Speter# Please send patches to <config-patches@gnu.org>. Submit a context 3297049Speter# diff and a properly formatted ChangeLog entry. 3350276Speter# 3450276Speter# This script attempts to guess a canonical system name similar to 3550276Speter# config.sub. If it succeeds, it prints the system name on stdout, and 3650276Speter# exits with 0. Otherwise, it exits with 1. 3750276Speter# 3850276Speter# The plan is that this can be called by configure scripts if you 3976726Speter# don't specify an explicit build system type. 4050276Speter 4162449Speterme=`echo "$0" | sed -e 's,.*/,,'` 4262449Speter 4362449Speterusage="\ 4462449SpeterUsage: $0 [OPTION] 4562449Speter 4676726SpeterOutput the configuration name of the system \`$me' is run on. 4762449Speter 4862449SpeterOperation modes: 4976726Speter -h, --help print this help, then exit 5076726Speter -t, --time-stamp print date of last modification, then exit 5176726Speter -v, --version print version number, then exit 5262449Speter 5376726SpeterReport bugs and patches to <config-patches@gnu.org>." 5476726Speter 5576726Speterversion="\ 5676726SpeterGNU config.guess ($timestamp) 5776726Speter 5876726SpeterOriginally written by Per Bothner. 59178866SrafanCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 60178866Srafan2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. 6176726Speter 6276726SpeterThis is free software; see the source for copying conditions. There is NO 6376726Speterwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 6476726Speter 6562449Speterhelp=" 6662449SpeterTry \`$me --help' for more information." 6762449Speter 6862449Speter# Parse command line 6962449Speterwhile test $# -gt 0 ; do 7076726Speter case $1 in 7176726Speter --time-stamp | --time* | -t ) 72166124Srafan echo "$timestamp" ; exit ;; 7376726Speter --version | -v ) 74166124Srafan echo "$version" ; exit ;; 7562449Speter --help | --h* | -h ) 76166124Srafan echo "$usage"; exit ;; 7762449Speter -- ) # Stop option processing 7862449Speter shift; break ;; 7962449Speter - ) # Use stdin as input. 8062449Speter break ;; 8162449Speter -* ) 8276726Speter echo "$me: invalid option $1$help" >&2 8362449Speter exit 1 ;; 8462449Speter * ) 8562449Speter break ;; 8662449Speter esac 8762449Speterdone 8862449Speter 8962449Speterif test $# != 0; then 9062449Speter echo "$me: too many arguments$help" >&2 9162449Speter exit 1 9262449Speterfi 9362449Speter 94166124Srafantrap 'exit 1' 1 2 15 9562449Speter 96166124Srafan# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 97166124Srafan# compiler to aid in system detection is discouraged as it requires 98166124Srafan# temporary files to be created and, as you can see below, it is a 99166124Srafan# headache to deal with in a portable fashion. 10062449Speter 10176726Speter# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 10276726Speter# use `HOST_CC' if defined, but it is deprecated. 10376726Speter 104166124Srafan# Portable tmp directory creation inspired by the Autoconf team. 105166124Srafan 106166124Srafanset_cc_for_build=' 107166124Srafantrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; 108166124Srafantrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 109166124Srafan: ${TMPDIR=/tmp} ; 110166124Srafan { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 111166124Srafan { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 112166124Srafan { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || 113166124Srafan { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; 114166124Srafandummy=$tmp/dummy ; 115166124Srafantmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; 116166124Srafancase $CC_FOR_BUILD,$HOST_CC,$CC in 117166124Srafan ,,) echo "int x;" > $dummy.c ; 11897049Speter for c in cc gcc c89 c99 ; do 119166124Srafan if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then 12097049Speter CC_FOR_BUILD="$c"; break ; 12197049Speter fi ; 12297049Speter done ; 12376726Speter if test x"$CC_FOR_BUILD" = x ; then 12497049Speter CC_FOR_BUILD=no_compiler_found ; 12576726Speter fi 12676726Speter ;; 12776726Speter ,,*) CC_FOR_BUILD=$CC ;; 12876726Speter ,*,*) CC_FOR_BUILD=$HOST_CC ;; 129166124Srafanesac ; set_cc_for_build= ;' 13076726Speter 13150276Speter# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 13297049Speter# (ghazi@noc.rutgers.edu 1994-08-24) 13350276Speterif (test -f /.attbin/uname) >/dev/null 2>&1 ; then 13450276Speter PATH=$PATH:/.attbin ; export PATH 13550276Speterfi 13650276Speter 13750276SpeterUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 13850276SpeterUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 13976726SpeterUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 14050276SpeterUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 14150276Speter 14250276Speter# Note: order is significant - the case branches are not exclusive. 14350276Speter 14450276Spetercase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 14562449Speter *:NetBSD:*:*) 14697049Speter # NetBSD (nbsd) targets should (where applicable) match one or 14762449Speter # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, 14862449Speter # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 14962449Speter # switched to ELF, *-*-netbsd* would select the old 15062449Speter # object file format. This provides both forward 15162449Speter # compatibility and a consistent mechanism for selecting the 15262449Speter # object file format. 15397049Speter # 15497049Speter # Note: NetBSD doesn't particularly care about the vendor 15597049Speter # portion of the name. We always set it to "unknown". 15697049Speter sysctl="sysctl -n hw.machine_arch" 15797049Speter UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ 15897049Speter /usr/sbin/$sysctl 2>/dev/null || echo unknown)` 15997049Speter case "${UNAME_MACHINE_ARCH}" in 160166124Srafan armeb) machine=armeb-unknown ;; 16197049Speter arm*) machine=arm-unknown ;; 16297049Speter sh3el) machine=shl-unknown ;; 16397049Speter sh3eb) machine=sh-unknown ;; 164174993Srafan sh5el) machine=sh5le-unknown ;; 16597049Speter *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 16662449Speter esac 16776726Speter # The Operating System including object format, if it has switched 16876726Speter # to ELF recently, or will in the future. 16997049Speter case "${UNAME_MACHINE_ARCH}" in 17097049Speter arm*|i386|m68k|ns32k|sh3*|sparc|vax) 17197049Speter eval $set_cc_for_build 17276726Speter if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 17376726Speter | grep __ELF__ >/dev/null 17476726Speter then 17576726Speter # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 17676726Speter # Return netbsd for either. FIX? 17776726Speter os=netbsd 17876726Speter else 17976726Speter os=netbsdelf 18076726Speter fi 18176726Speter ;; 18276726Speter *) 183184989Srafan os=netbsd 18476726Speter ;; 18576726Speter esac 18662449Speter # The OS release 187166124Srafan # Debian GNU/NetBSD machines have a different userland, and 188166124Srafan # thus, need a distinct triplet. However, they do not need 189166124Srafan # kernel version information, so it can be replaced with a 190166124Srafan # suitable tag, in the style of linux-gnu. 191166124Srafan case "${UNAME_VERSION}" in 192166124Srafan Debian*) 193166124Srafan release='-gnu' 194166124Srafan ;; 195166124Srafan *) 196166124Srafan release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` 197166124Srafan ;; 198166124Srafan esac 19962449Speter # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 20062449Speter # contains redundant information, the shorter form: 20162449Speter # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 20262449Speter echo "${machine}-${os}${release}" 203166124Srafan exit ;; 20497049Speter *:OpenBSD:*:*) 205166124Srafan UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 206166124Srafan echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 207166124Srafan exit ;; 208166124Srafan *:ekkoBSD:*:*) 209166124Srafan echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 210166124Srafan exit ;; 211166124Srafan *:SolidBSD:*:*) 212166124Srafan echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} 213166124Srafan exit ;; 214166124Srafan macppc:MirBSD:*:*) 215166124Srafan echo powerpc-unknown-mirbsd${UNAME_RELEASE} 216166124Srafan exit ;; 217166124Srafan *:MirBSD:*:*) 218166124Srafan echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 219166124Srafan exit ;; 22050276Speter alpha:OSF1:*:*) 221166124Srafan case $UNAME_RELEASE in 222184989Srafan *4.0) 22350276Speter UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 224166124Srafan ;; 225184989Srafan *5.*) 226184989Srafan UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 227166124Srafan ;; 228166124Srafan esac 229166124Srafan # According to Compaq, /usr/sbin/psrinfo has been available on 230166124Srafan # OSF/1 and Tru64 systems produced since 1995. I hope that 231166124Srafan # covers most systems running today. This code pipes the CPU 232166124Srafan # types through head -n 1, so we only detect the type of CPU 0. 233166124Srafan ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 234166124Srafan case "$ALPHA_CPU_TYPE" in 235166124Srafan "EV4 (21064)") 236166124Srafan UNAME_MACHINE="alpha" ;; 237166124Srafan "EV4.5 (21064)") 238166124Srafan UNAME_MACHINE="alpha" ;; 239166124Srafan "LCA4 (21066/21068)") 240166124Srafan UNAME_MACHINE="alpha" ;; 241166124Srafan "EV5 (21164)") 242166124Srafan UNAME_MACHINE="alphaev5" ;; 243166124Srafan "EV5.6 (21164A)") 244166124Srafan UNAME_MACHINE="alphaev56" ;; 245166124Srafan "EV5.6 (21164PC)") 246166124Srafan UNAME_MACHINE="alphapca56" ;; 247166124Srafan "EV5.7 (21164PC)") 248166124Srafan UNAME_MACHINE="alphapca57" ;; 249166124Srafan "EV6 (21264)") 250166124Srafan UNAME_MACHINE="alphaev6" ;; 251166124Srafan "EV6.7 (21264A)") 252166124Srafan UNAME_MACHINE="alphaev67" ;; 253166124Srafan "EV6.8CB (21264C)") 254166124Srafan UNAME_MACHINE="alphaev68" ;; 255166124Srafan "EV6.8AL (21264B)") 256166124Srafan UNAME_MACHINE="alphaev68" ;; 257166124Srafan "EV6.8CX (21264D)") 258166124Srafan UNAME_MACHINE="alphaev68" ;; 259166124Srafan "EV6.9A (21264/EV69A)") 260166124Srafan UNAME_MACHINE="alphaev69" ;; 261166124Srafan "EV7 (21364)") 262166124Srafan UNAME_MACHINE="alphaev7" ;; 263166124Srafan "EV7.9 (21364A)") 264166124Srafan UNAME_MACHINE="alphaev79" ;; 265166124Srafan esac 266166124Srafan # A Pn.n version is a patched version. 26750276Speter # A Vn.n version is a released version. 26850276Speter # A Tn.n version is a released field test version. 26950276Speter # A Xn.n version is an unreleased experimental baselevel. 27050276Speter # 1.2 uses "1.2" for uname -r. 271166124Srafan echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 272166124Srafan exit ;; 27362449Speter Alpha\ *:Windows_NT*:*) 27462449Speter # How do we know it's Interix rather than the generic POSIX subsystem? 27562449Speter # Should we change UNAME_MACHINE based on the output of uname instead 27662449Speter # of the specific Alpha model? 27762449Speter echo alpha-pc-interix 278166124Srafan exit ;; 27950276Speter 21064:Windows_NT:50:3) 28050276Speter echo alpha-dec-winnt3.5 281166124Srafan exit ;; 28250276Speter Amiga*:UNIX_System_V:4.0:*) 28376726Speter echo m68k-unknown-sysv4 284166124Srafan exit ;; 28550276Speter *:[Aa]miga[Oo][Ss]:*:*) 28650276Speter echo ${UNAME_MACHINE}-unknown-amigaos 287166124Srafan exit ;; 28897049Speter *:[Mm]orph[Oo][Ss]:*:*) 28997049Speter echo ${UNAME_MACHINE}-unknown-morphos 290166124Srafan exit ;; 29162449Speter *:OS/390:*:*) 29262449Speter echo i370-ibm-openedition 293166124Srafan exit ;; 294166124Srafan *:z/VM:*:*) 295166124Srafan echo s390-ibm-zvmoe 296166124Srafan exit ;; 297166124Srafan *:OS400:*:*) 298184989Srafan echo powerpc-ibm-os400 299166124Srafan exit ;; 30050276Speter arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 30150276Speter echo arm-acorn-riscix${UNAME_RELEASE} 302166124Srafan exit ;; 303166124Srafan arm:riscos:*:*|arm:RISCOS:*:*) 304166124Srafan echo arm-unknown-riscos 305166124Srafan exit ;; 30676726Speter SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 30750276Speter echo hppa1.1-hitachi-hiuxmpp 308166124Srafan exit ;; 30962449Speter Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 31050276Speter # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 31150276Speter if test "`(/bin/universe) 2>/dev/null`" = att ; then 31250276Speter echo pyramid-pyramid-sysv3 31350276Speter else 31450276Speter echo pyramid-pyramid-bsd 31550276Speter fi 316166124Srafan exit ;; 31762449Speter NILE*:*:*:dcosx) 31850276Speter echo pyramid-pyramid-svr4 319166124Srafan exit ;; 320166124Srafan DRS?6000:unix:4.0:6*) 321166124Srafan echo sparc-icl-nx6 322166124Srafan exit ;; 323166124Srafan DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 324166124Srafan case `/usr/bin/uname -p` in 325166124Srafan sparc) echo sparc-icl-nx7; exit ;; 326166124Srafan esac ;; 32750276Speter sun4H:SunOS:5.*:*) 32850276Speter echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 329166124Srafan exit ;; 33050276Speter sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 33150276Speter echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 332166124Srafan exit ;; 333178866Srafan i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) 33450276Speter echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 335166124Srafan exit ;; 33650276Speter sun4*:SunOS:6*:*) 33750276Speter # According to config.sub, this is the proper way to canonicalize 33850276Speter # SunOS6. Hard to guess exactly what SunOS6 will be like, but 33950276Speter # it's likely to be more like Solaris than SunOS4. 34050276Speter echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 341166124Srafan exit ;; 34250276Speter sun4*:SunOS:*:*) 34350276Speter case "`/usr/bin/arch -k`" in 34450276Speter Series*|S4*) 34550276Speter UNAME_RELEASE=`uname -v` 34650276Speter ;; 34750276Speter esac 34850276Speter # Japanese Language versions have a version number like `4.1.3-JL'. 34950276Speter echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 350166124Srafan exit ;; 35150276Speter sun3*:SunOS:*:*) 35250276Speter echo m68k-sun-sunos${UNAME_RELEASE} 353166124Srafan exit ;; 35450276Speter sun*:*:4.2BSD:*) 35597049Speter UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 35650276Speter test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 35750276Speter case "`/bin/arch`" in 35850276Speter sun3) 35950276Speter echo m68k-sun-sunos${UNAME_RELEASE} 36050276Speter ;; 36150276Speter sun4) 36250276Speter echo sparc-sun-sunos${UNAME_RELEASE} 36350276Speter ;; 36450276Speter esac 365166124Srafan exit ;; 36650276Speter aushp:SunOS:*:*) 36750276Speter echo sparc-auspex-sunos${UNAME_RELEASE} 368166124Srafan exit ;; 36962449Speter # The situation for MiNT is a little confusing. The machine name 37062449Speter # can be virtually everything (everything which is not 37162449Speter # "atarist" or "atariste" at least should have a processor 37262449Speter # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 37362449Speter # to the lowercase version "mint" (or "freemint"). Finally 37462449Speter # the system name "TOS" denotes a system which is actually not 37562449Speter # MiNT. But MiNT is downward compatible to TOS, so this should 37662449Speter # be no problem. 37762449Speter atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 378184989Srafan echo m68k-atari-mint${UNAME_RELEASE} 379166124Srafan exit ;; 38062449Speter atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 38162449Speter echo m68k-atari-mint${UNAME_RELEASE} 382184989Srafan exit ;; 38362449Speter *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 384184989Srafan echo m68k-atari-mint${UNAME_RELEASE} 385166124Srafan exit ;; 38662449Speter milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 387184989Srafan echo m68k-milan-mint${UNAME_RELEASE} 388184989Srafan exit ;; 38962449Speter hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 390184989Srafan echo m68k-hades-mint${UNAME_RELEASE} 391184989Srafan exit ;; 39262449Speter *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 393184989Srafan echo m68k-unknown-mint${UNAME_RELEASE} 394184989Srafan exit ;; 395166124Srafan m68k:machten:*:*) 396166124Srafan echo m68k-apple-machten${UNAME_RELEASE} 397166124Srafan exit ;; 39850276Speter powerpc:machten:*:*) 39950276Speter echo powerpc-apple-machten${UNAME_RELEASE} 400166124Srafan exit ;; 40150276Speter RISC*:Mach:*:*) 40250276Speter echo mips-dec-mach_bsd4.3 403166124Srafan exit ;; 40450276Speter RISC*:ULTRIX:*:*) 40550276Speter echo mips-dec-ultrix${UNAME_RELEASE} 406166124Srafan exit ;; 40750276Speter VAX*:ULTRIX*:*:*) 40850276Speter echo vax-dec-ultrix${UNAME_RELEASE} 409166124Srafan exit ;; 41050276Speter 2020:CLIX:*:* | 2430:CLIX:*:*) 41150276Speter echo clipper-intergraph-clix${UNAME_RELEASE} 412166124Srafan exit ;; 41350276Speter mips:*:*:UMIPS | mips:*:*:RISCos) 41497049Speter eval $set_cc_for_build 41562449Speter sed 's/^ //' << EOF >$dummy.c 41662449Speter#ifdef __cplusplus 41762449Speter#include <stdio.h> /* for printf() prototype */ 41862449Speter int main (int argc, char *argv[]) { 41962449Speter#else 42062449Speter int main (argc, argv) int argc; char *argv[]; { 42162449Speter#endif 42250276Speter #if defined (host_mips) && defined (MIPSEB) 42350276Speter #if defined (SYSTYPE_SYSV) 42450276Speter printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 42550276Speter #endif 42650276Speter #if defined (SYSTYPE_SVR4) 42750276Speter printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 42850276Speter #endif 42950276Speter #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 43050276Speter printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 43150276Speter #endif 43250276Speter #endif 43350276Speter exit (-1); 43450276Speter } 43550276SpeterEOF 436166124Srafan $CC_FOR_BUILD -o $dummy $dummy.c && 437166124Srafan dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 438166124Srafan SYSTEM_NAME=`$dummy $dummyarg` && 439166124Srafan { echo "$SYSTEM_NAME"; exit; } 44050276Speter echo mips-mips-riscos${UNAME_RELEASE} 441166124Srafan exit ;; 44297049Speter Motorola:PowerMAX_OS:*:*) 44397049Speter echo powerpc-motorola-powermax 444166124Srafan exit ;; 445166124Srafan Motorola:*:4.3:PL8-*) 446166124Srafan echo powerpc-harris-powermax 447166124Srafan exit ;; 448166124Srafan Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 449166124Srafan echo powerpc-harris-powermax 450166124Srafan exit ;; 45150276Speter Night_Hawk:Power_UNIX:*:*) 45250276Speter echo powerpc-harris-powerunix 453166124Srafan exit ;; 45450276Speter m88k:CX/UX:7*:*) 45550276Speter echo m88k-harris-cxux7 456166124Srafan exit ;; 45750276Speter m88k:*:4*:R4*) 45850276Speter echo m88k-motorola-sysv4 459166124Srafan exit ;; 46050276Speter m88k:*:3*:R3*) 46150276Speter echo m88k-motorola-sysv3 462166124Srafan exit ;; 46350276Speter AViiON:dgux:*:*) 464184989Srafan # DG/UX returns AViiON for all architectures 465184989Srafan UNAME_PROCESSOR=`/usr/bin/uname -p` 46662449Speter if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 46762449Speter then 46862449Speter if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 46962449Speter [ ${TARGET_BINARY_INTERFACE}x = x ] 47062449Speter then 47150276Speter echo m88k-dg-dgux${UNAME_RELEASE} 47262449Speter else 47362449Speter echo m88k-dg-dguxbcs${UNAME_RELEASE} 47462449Speter fi 47550276Speter else 47662449Speter echo i586-dg-dgux${UNAME_RELEASE} 47750276Speter fi 478166124Srafan exit ;; 47950276Speter M88*:DolphinOS:*:*) # DolphinOS (SVR3) 48050276Speter echo m88k-dolphin-sysv3 481166124Srafan exit ;; 48250276Speter M88*:*:R3*:*) 48350276Speter # Delta 88k system running SVR3 48450276Speter echo m88k-motorola-sysv3 485166124Srafan exit ;; 48650276Speter XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 48750276Speter echo m88k-tektronix-sysv3 488166124Srafan exit ;; 48950276Speter Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 49050276Speter echo m68k-tektronix-bsd 491166124Srafan exit ;; 49250276Speter *:IRIX*:*:*) 49350276Speter echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 494166124Srafan exit ;; 49576726Speter ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 496166124Srafan echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 497166124Srafan exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 49897049Speter i*86:AIX:*:*) 49950276Speter echo i386-ibm-aix 500166124Srafan exit ;; 50176726Speter ia64:AIX:*:*) 50276726Speter if [ -x /usr/bin/oslevel ] ; then 50376726Speter IBM_REV=`/usr/bin/oslevel` 50476726Speter else 50576726Speter IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 50676726Speter fi 50776726Speter echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 508166124Srafan exit ;; 50950276Speter *:AIX:2:3) 51050276Speter if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 51197049Speter eval $set_cc_for_build 51262449Speter sed 's/^ //' << EOF >$dummy.c 51350276Speter #include <sys/systemcfg.h> 51450276Speter 51550276Speter main() 51650276Speter { 51750276Speter if (!__power_pc()) 51850276Speter exit(1); 51950276Speter puts("powerpc-ibm-aix3.2.5"); 52050276Speter exit(0); 52150276Speter } 52250276SpeterEOF 523166124Srafan if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 524166124Srafan then 525166124Srafan echo "$SYSTEM_NAME" 526166124Srafan else 527166124Srafan echo rs6000-ibm-aix3.2.5 528166124Srafan fi 52950276Speter elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 53050276Speter echo rs6000-ibm-aix3.2.4 53150276Speter else 53250276Speter echo rs6000-ibm-aix3.2 53350276Speter fi 534166124Srafan exit ;; 535178866Srafan *:AIX:*:[456]) 53697049Speter IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 53776726Speter if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 53850276Speter IBM_ARCH=rs6000 53950276Speter else 54050276Speter IBM_ARCH=powerpc 54150276Speter fi 54250276Speter if [ -x /usr/bin/oslevel ] ; then 54350276Speter IBM_REV=`/usr/bin/oslevel` 54450276Speter else 54576726Speter IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 54650276Speter fi 54750276Speter echo ${IBM_ARCH}-ibm-aix${IBM_REV} 548166124Srafan exit ;; 54950276Speter *:AIX:*:*) 55050276Speter echo rs6000-ibm-aix 551166124Srafan exit ;; 55250276Speter ibmrt:4.4BSD:*|romp-ibm:BSD:*) 55350276Speter echo romp-ibm-bsd4.4 554166124Srafan exit ;; 55562449Speter ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 55650276Speter echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 557166124Srafan exit ;; # report: romp-ibm BSD 4.3 55850276Speter *:BOSX:*:*) 55950276Speter echo rs6000-bull-bosx 560166124Srafan exit ;; 56150276Speter DPX/2?00:B.O.S.:*:*) 56250276Speter echo m68k-bull-sysv3 563166124Srafan exit ;; 56450276Speter 9000/[34]??:4.3bsd:1.*:*) 56550276Speter echo m68k-hp-bsd 566166124Srafan exit ;; 56750276Speter hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 56850276Speter echo m68k-hp-bsd4.4 569166124Srafan exit ;; 57050276Speter 9000/[34678]??:HP-UX:*:*) 57176726Speter HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 57250276Speter case "${UNAME_MACHINE}" in 57350276Speter 9000/31? ) HP_ARCH=m68000 ;; 57450276Speter 9000/[34]?? ) HP_ARCH=m68k ;; 57562449Speter 9000/[678][0-9][0-9]) 57697049Speter if [ -x /usr/bin/getconf ]; then 57797049Speter sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 578184989Srafan sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 579184989Srafan case "${sc_cpu_version}" in 58076726Speter 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 58176726Speter 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 58276726Speter 532) # CPU_PA_RISC2_0 58376726Speter case "${sc_kernel_bits}" in 58476726Speter 32) HP_ARCH="hppa2.0n" ;; 58576726Speter 64) HP_ARCH="hppa2.0w" ;; 58697049Speter '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 58776726Speter esac ;; 58876726Speter esac 58997049Speter fi 59097049Speter if [ "${HP_ARCH}" = "" ]; then 59197049Speter eval $set_cc_for_build 59297049Speter sed 's/^ //' << EOF >$dummy.c 59362449Speter 59462449Speter #define _HPUX_SOURCE 59550276Speter #include <stdlib.h> 59650276Speter #include <unistd.h> 59750276Speter 59850276Speter int main () 59950276Speter { 60050276Speter #if defined(_SC_KERNEL_BITS) 60150276Speter long bits = sysconf(_SC_KERNEL_BITS); 60250276Speter #endif 60350276Speter long cpu = sysconf (_SC_CPU_VERSION); 60450276Speter 60550276Speter switch (cpu) 60650276Speter { 60750276Speter case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 60850276Speter case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 60950276Speter case CPU_PA_RISC2_0: 61050276Speter #if defined(_SC_KERNEL_BITS) 61150276Speter switch (bits) 61250276Speter { 61350276Speter case 64: puts ("hppa2.0w"); break; 61450276Speter case 32: puts ("hppa2.0n"); break; 61550276Speter default: puts ("hppa2.0"); break; 61650276Speter } break; 61750276Speter #else /* !defined(_SC_KERNEL_BITS) */ 61850276Speter puts ("hppa2.0"); break; 61950276Speter #endif 62050276Speter default: puts ("hppa1.0"); break; 62150276Speter } 62250276Speter exit (0); 62350276Speter } 62450276SpeterEOF 625166124Srafan (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 626166124Srafan test -z "$HP_ARCH" && HP_ARCH=hppa 62797049Speter fi ;; 62850276Speter esac 629166124Srafan if [ ${HP_ARCH} = "hppa2.0w" ] 630166124Srafan then 631166124Srafan eval $set_cc_for_build 632166124Srafan 633166124Srafan # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 634166124Srafan # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 635166124Srafan # generating 64-bit code. GNU and HP use different nomenclature: 636166124Srafan # 637166124Srafan # $ CC_FOR_BUILD=cc ./config.guess 638166124Srafan # => hppa2.0w-hp-hpux11.23 639166124Srafan # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 640166124Srafan # => hppa64-hp-hpux11.23 641166124Srafan 642166124Srafan if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | 643166124Srafan grep __LP64__ >/dev/null 644166124Srafan then 645166124Srafan HP_ARCH="hppa2.0w" 646166124Srafan else 647166124Srafan HP_ARCH="hppa64" 648166124Srafan fi 649166124Srafan fi 65050276Speter echo ${HP_ARCH}-hp-hpux${HPUX_REV} 651166124Srafan exit ;; 65276726Speter ia64:HP-UX:*:*) 65376726Speter HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 65476726Speter echo ia64-hp-hpux${HPUX_REV} 655166124Srafan exit ;; 65650276Speter 3050*:HI-UX:*:*) 65797049Speter eval $set_cc_for_build 65862449Speter sed 's/^ //' << EOF >$dummy.c 65950276Speter #include <unistd.h> 66050276Speter int 66150276Speter main () 66250276Speter { 66350276Speter long cpu = sysconf (_SC_CPU_VERSION); 66450276Speter /* The order matters, because CPU_IS_HP_MC68K erroneously returns 66550276Speter true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 66650276Speter results, however. */ 66750276Speter if (CPU_IS_PA_RISC (cpu)) 66850276Speter { 66950276Speter switch (cpu) 67050276Speter { 67150276Speter case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 67250276Speter case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 67350276Speter case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 67450276Speter default: puts ("hppa-hitachi-hiuxwe2"); break; 67550276Speter } 67650276Speter } 67750276Speter else if (CPU_IS_HP_MC68K (cpu)) 67850276Speter puts ("m68k-hitachi-hiuxwe2"); 67950276Speter else puts ("unknown-hitachi-hiuxwe2"); 68050276Speter exit (0); 68150276Speter } 68250276SpeterEOF 683166124Srafan $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 684166124Srafan { echo "$SYSTEM_NAME"; exit; } 68550276Speter echo unknown-hitachi-hiuxwe2 686166124Srafan exit ;; 68750276Speter 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 68850276Speter echo hppa1.1-hp-bsd 689166124Srafan exit ;; 69050276Speter 9000/8??:4.3bsd:*:*) 69150276Speter echo hppa1.0-hp-bsd 692166124Srafan exit ;; 69397049Speter *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 69462449Speter echo hppa1.0-hp-mpeix 695166124Srafan exit ;; 69650276Speter hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 69750276Speter echo hppa1.1-hp-osf 698166124Srafan exit ;; 69950276Speter hp8??:OSF1:*:*) 70050276Speter echo hppa1.0-hp-osf 701166124Srafan exit ;; 70297049Speter i*86:OSF1:*:*) 70350276Speter if [ -x /usr/sbin/sysversion ] ; then 70450276Speter echo ${UNAME_MACHINE}-unknown-osf1mk 70550276Speter else 70650276Speter echo ${UNAME_MACHINE}-unknown-osf1 70750276Speter fi 708166124Srafan exit ;; 70950276Speter parisc*:Lites*:*:*) 71050276Speter echo hppa1.1-hp-lites 711166124Srafan exit ;; 71250276Speter C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 71350276Speter echo c1-convex-bsd 714184989Srafan exit ;; 71550276Speter C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 71650276Speter if getsysinfo -f scalar_acc 71750276Speter then echo c32-convex-bsd 71850276Speter else echo c2-convex-bsd 71950276Speter fi 720184989Srafan exit ;; 72150276Speter C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 72250276Speter echo c34-convex-bsd 723184989Srafan exit ;; 72450276Speter C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 72550276Speter echo c38-convex-bsd 726184989Srafan exit ;; 72750276Speter C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 72850276Speter echo c4-convex-bsd 729184989Srafan exit ;; 73050276Speter CRAY*Y-MP:*:*:*) 73197049Speter echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 732166124Srafan exit ;; 73350276Speter CRAY*[A-Z]90:*:*:*) 73450276Speter echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 73550276Speter | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 73697049Speter -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 73797049Speter -e 's/\.[^.]*$/.X/' 738166124Srafan exit ;; 73950276Speter CRAY*TS:*:*:*) 74062449Speter echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 741166124Srafan exit ;; 74276726Speter CRAY*T3E:*:*:*) 74376726Speter echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 744166124Srafan exit ;; 74562449Speter CRAY*SV1:*:*:*) 74662449Speter echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 747166124Srafan exit ;; 748166124Srafan *:UNICOS/mp:*:*) 749166124Srafan echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 750166124Srafan exit ;; 75176726Speter F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 75276726Speter FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 753184989Srafan FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 754184989Srafan FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 755184989Srafan echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 756184989Srafan exit ;; 757166124Srafan 5000:UNIX_System_V:4.*:*) 758184989Srafan FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 759184989Srafan FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` 760184989Srafan echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 761166124Srafan exit ;; 76297049Speter i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 76362449Speter echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 764166124Srafan exit ;; 76550276Speter sparc*:BSD/OS:*:*) 76650276Speter echo sparc-unknown-bsdi${UNAME_RELEASE} 767166124Srafan exit ;; 76862449Speter *:BSD/OS:*:*) 76962449Speter echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 770166124Srafan exit ;; 77150276Speter *:FreeBSD:*:*) 772166124Srafan case ${UNAME_MACHINE} in 773166124Srafan pc98) 774166124Srafan echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 775166124Srafan amd64) 776166124Srafan echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 777166124Srafan *) 778166124Srafan echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 779166124Srafan esac 780166124Srafan exit ;; 78150276Speter i*:CYGWIN*:*) 78250276Speter echo ${UNAME_MACHINE}-pc-cygwin 783166124Srafan exit ;; 784174993Srafan *:MINGW*:*) 78550276Speter echo ${UNAME_MACHINE}-pc-mingw32 786166124Srafan exit ;; 787166124Srafan i*:windows32*:*) 788184989Srafan # uname -m includes "-pc" on this system. 789184989Srafan echo ${UNAME_MACHINE}-mingw32 790166124Srafan exit ;; 79176726Speter i*:PW*:*) 79276726Speter echo ${UNAME_MACHINE}-pc-pw32 793166124Srafan exit ;; 794174993Srafan *:Interix*:[3456]*) 795184989Srafan case ${UNAME_MACHINE} in 796178866Srafan x86) 797174993Srafan echo i586-pc-interix${UNAME_RELEASE} 798174993Srafan exit ;; 799174993Srafan EM64T | authenticamd) 800174993Srafan echo x86_64-unknown-interix${UNAME_RELEASE} 801174993Srafan exit ;; 802178866Srafan IA64) 803184989Srafan echo ia64-unknown-interix${UNAME_RELEASE} 804184989Srafan exit ;; 805174993Srafan esac ;; 806166124Srafan [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 807166124Srafan echo i${UNAME_MACHINE}-pc-mks 808166124Srafan exit ;; 80962449Speter i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 81062449Speter # How do we know it's Interix rather than the generic POSIX subsystem? 81162449Speter # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 81262449Speter # UNAME_MACHINE based on the output of uname instead of i386? 813166124Srafan echo i586-pc-interix 814166124Srafan exit ;; 81562449Speter i*:UWIN*:*) 81662449Speter echo ${UNAME_MACHINE}-pc-uwin 817166124Srafan exit ;; 818166124Srafan amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 819166124Srafan echo x86_64-unknown-cygwin 820166124Srafan exit ;; 82150276Speter p*:CYGWIN*:*) 82250276Speter echo powerpcle-unknown-cygwin 823166124Srafan exit ;; 82450276Speter prep*:SunOS:5.*:*) 82550276Speter echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 826166124Srafan exit ;; 82750276Speter *:GNU:*:*) 828166124Srafan # the GNU system 82950276Speter echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 830166124Srafan exit ;; 831166124Srafan *:GNU/*:*:*) 832166124Srafan # other systems with GNU libc and userland 833166124Srafan echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu 834166124Srafan exit ;; 83562449Speter i*86:Minix:*:*) 83662449Speter echo ${UNAME_MACHINE}-pc-minix 837166124Srafan exit ;; 83876726Speter arm*:Linux:*:*) 839178866Srafan eval $set_cc_for_build 840184989Srafan if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ 841184989Srafan | grep -q __ARM_EABI__ 842178866Srafan then 843178866Srafan echo ${UNAME_MACHINE}-unknown-linux-gnu 844178866Srafan else 845178866Srafan echo ${UNAME_MACHINE}-unknown-linux-gnueabi 846178866Srafan fi 847166124Srafan exit ;; 848166124Srafan avr32*:Linux:*:*) 849166124Srafan echo ${UNAME_MACHINE}-unknown-linux-gnu 850166124Srafan exit ;; 851166124Srafan cris:Linux:*:*) 852166124Srafan echo cris-axis-linux-gnu 853166124Srafan exit ;; 854166124Srafan crisv32:Linux:*:*) 855166124Srafan echo crisv32-axis-linux-gnu 856166124Srafan exit ;; 857166124Srafan frv:Linux:*:*) 858184989Srafan echo frv-unknown-linux-gnu 859166124Srafan exit ;; 86076726Speter ia64:Linux:*:*) 86197049Speter echo ${UNAME_MACHINE}-unknown-linux-gnu 862166124Srafan exit ;; 863166124Srafan m32r*:Linux:*:*) 864166124Srafan echo ${UNAME_MACHINE}-unknown-linux-gnu 865166124Srafan exit ;; 86676726Speter m68*:Linux:*:*) 86776726Speter echo ${UNAME_MACHINE}-unknown-linux-gnu 868166124Srafan exit ;; 86976726Speter mips:Linux:*:*) 87097049Speter eval $set_cc_for_build 87197049Speter sed 's/^ //' << EOF >$dummy.c 87297049Speter #undef CPU 87397049Speter #undef mips 87497049Speter #undef mipsel 87597049Speter #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 87697049Speter CPU=mipsel 87797049Speter #else 87897049Speter #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 87997049Speter CPU=mips 88097049Speter #else 88197049Speter CPU= 88297049Speter #endif 88397049Speter #endif 88476726SpeterEOF 885166124Srafan eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 886184989Srafan /^CPU/{ 887184989Srafan s: ::g 888184989Srafan p 889184989Srafan }'`" 890166124Srafan test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 89176726Speter ;; 892166124Srafan mips64:Linux:*:*) 893166124Srafan eval $set_cc_for_build 894166124Srafan sed 's/^ //' << EOF >$dummy.c 895166124Srafan #undef CPU 896166124Srafan #undef mips64 897166124Srafan #undef mips64el 898166124Srafan #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 899166124Srafan CPU=mips64el 900166124Srafan #else 901166124Srafan #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 902166124Srafan CPU=mips64 903166124Srafan #else 904166124Srafan CPU= 905166124Srafan #endif 906166124Srafan #endif 907166124SrafanEOF 908166124Srafan eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 909184989Srafan /^CPU/{ 910184989Srafan s: ::g 911184989Srafan p 912184989Srafan }'`" 913166124Srafan test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 914166124Srafan ;; 915166124Srafan or32:Linux:*:*) 916184989Srafan echo or32-unknown-linux-gnu 917184989Srafan exit ;; 91876726Speter ppc:Linux:*:*) 91997049Speter echo powerpc-unknown-linux-gnu 920166124Srafan exit ;; 92197049Speter ppc64:Linux:*:*) 92297049Speter echo powerpc64-unknown-linux-gnu 923166124Srafan exit ;; 92476726Speter alpha:Linux:*:*) 92597049Speter case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 92697049Speter EV5) UNAME_MACHINE=alphaev5 ;; 92797049Speter EV56) UNAME_MACHINE=alphaev56 ;; 92897049Speter PCA56) UNAME_MACHINE=alphapca56 ;; 92997049Speter PCA57) UNAME_MACHINE=alphapca56 ;; 93097049Speter EV6) UNAME_MACHINE=alphaev6 ;; 93197049Speter EV67) UNAME_MACHINE=alphaev67 ;; 93297049Speter EV68*) UNAME_MACHINE=alphaev68 ;; 933184989Srafan esac 93497049Speter objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null 93597049Speter if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi 93676726Speter echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 937166124Srafan exit ;; 93876726Speter parisc:Linux:*:* | hppa:Linux:*:*) 93976726Speter # Look for CPU level 94076726Speter case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 94176726Speter PA7*) echo hppa1.1-unknown-linux-gnu ;; 94276726Speter PA8*) echo hppa2.0-unknown-linux-gnu ;; 94376726Speter *) echo hppa-unknown-linux-gnu ;; 94476726Speter esac 945166124Srafan exit ;; 94676726Speter parisc64:Linux:*:* | hppa64:Linux:*:*) 94776726Speter echo hppa64-unknown-linux-gnu 948166124Srafan exit ;; 94976726Speter s390:Linux:*:* | s390x:Linux:*:*) 95076726Speter echo ${UNAME_MACHINE}-ibm-linux 951166124Srafan exit ;; 952166124Srafan sh64*:Linux:*:*) 953184989Srafan echo ${UNAME_MACHINE}-unknown-linux-gnu 954166124Srafan exit ;; 95576726Speter sh*:Linux:*:*) 95676726Speter echo ${UNAME_MACHINE}-unknown-linux-gnu 957166124Srafan exit ;; 95876726Speter sparc:Linux:*:* | sparc64:Linux:*:*) 95976726Speter echo ${UNAME_MACHINE}-unknown-linux-gnu 960166124Srafan exit ;; 961166124Srafan vax:Linux:*:*) 962166124Srafan echo ${UNAME_MACHINE}-dec-linux-gnu 963166124Srafan exit ;; 96476726Speter x86_64:Linux:*:*) 96576726Speter echo x86_64-unknown-linux-gnu 966166124Srafan exit ;; 967178866Srafan xtensa*:Linux:*:*) 968184989Srafan echo ${UNAME_MACHINE}-unknown-linux-gnu 969174993Srafan exit ;; 97097049Speter i*86:Linux:*:*) 97176726Speter # The BFD linker knows what the default object file format is, so 97276726Speter # first see if it will tell us. cd to the root directory to prevent 97376726Speter # problems with other programs or directories called `ld' in the path. 97497049Speter # Set LC_ALL=C to ensure ld outputs messages in English. 97597049Speter ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ 97697049Speter | sed -ne '/supported targets:/!d 97776726Speter s/[ ][ ]*/ /g 97897049Speter s/.*supported targets: *// 97976726Speter s/ .*// 98076726Speter p'` 981184989Srafan case "$ld_supported_targets" in 98297049Speter elf32-i386) 98376726Speter TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" 98476726Speter ;; 98597049Speter a.out-i386-linux) 98697049Speter echo "${UNAME_MACHINE}-pc-linux-gnuaout" 987166124Srafan exit ;; 98897049Speter "") 98997049Speter # Either a pre-BFD a.out linker (linux-gnuoldld) or 99097049Speter # one that does not give us useful --help. 99197049Speter echo "${UNAME_MACHINE}-pc-linux-gnuoldld" 992166124Srafan exit ;; 99350276Speter esac 99476726Speter # Determine whether the default compiler is a.out or elf 99597049Speter eval $set_cc_for_build 99697049Speter sed 's/^ //' << EOF >$dummy.c 99797049Speter #include <features.h> 99897049Speter #ifdef __ELF__ 99997049Speter # ifdef __GLIBC__ 100097049Speter # if __GLIBC__ >= 2 100197049Speter LIBC=gnu 100297049Speter # else 100397049Speter LIBC=gnulibc1 100497049Speter # endif 100597049Speter # else 100697049Speter LIBC=gnulibc1 100797049Speter # endif 100897049Speter #else 1009166124Srafan #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC) 101097049Speter LIBC=gnu 101197049Speter #else 101297049Speter LIBC=gnuaout 101397049Speter #endif 101497049Speter #endif 1015166124Srafan #ifdef __dietlibc__ 1016166124Srafan LIBC=dietlibc 1017166124Srafan #endif 101850276SpeterEOF 1019166124Srafan eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 1020184989Srafan /^LIBC/{ 1021184989Srafan s: ::g 1022184989Srafan p 1023184989Srafan }'`" 1024166124Srafan test x"${LIBC}" != x && { 1025166124Srafan echo "${UNAME_MACHINE}-pc-linux-${LIBC}" 1026166124Srafan exit 1027166124Srafan } 1028166124Srafan test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; } 102976726Speter ;; 103097049Speter i*86:DYNIX/ptx:4*:*) 103197049Speter # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 103297049Speter # earlier versions are messed up and put the nodename in both 103397049Speter # sysname and nodename. 103450276Speter echo i386-sequent-sysv4 1035166124Srafan exit ;; 103697049Speter i*86:UNIX_SV:4.2MP:2.*) 1037184989Srafan # Unixware is an offshoot of SVR4, but it has its own version 1038184989Srafan # number series starting with 2... 1039184989Srafan # I am not positive that other SVR4 systems won't match this, 104050276Speter # I just have to hope. -- rms. 1041184989Srafan # Use sysv4.2uw... so that sysv4* matches it. 104250276Speter echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 1043166124Srafan exit ;; 1044166124Srafan i*86:OS/2:*:*) 1045166124Srafan # If we were able to find `uname', then EMX Unix compatibility 1046166124Srafan # is probably installed. 1047166124Srafan echo ${UNAME_MACHINE}-pc-os2-emx 1048166124Srafan exit ;; 1049166124Srafan i*86:XTS-300:*:STOP) 1050166124Srafan echo ${UNAME_MACHINE}-unknown-stop 1051166124Srafan exit ;; 1052166124Srafan i*86:atheos:*:*) 1053166124Srafan echo ${UNAME_MACHINE}-unknown-atheos 1054166124Srafan exit ;; 1055166124Srafan i*86:syllable:*:*) 1056166124Srafan echo ${UNAME_MACHINE}-pc-syllable 1057166124Srafan exit ;; 1058166124Srafan i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) 1059166124Srafan echo i386-unknown-lynxos${UNAME_RELEASE} 1060166124Srafan exit ;; 1061166124Srafan i*86:*DOS:*:*) 1062166124Srafan echo ${UNAME_MACHINE}-pc-msdosdjgpp 1063166124Srafan exit ;; 106497049Speter i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 106562449Speter UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 106662449Speter if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 106762449Speter echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 106850276Speter else 106962449Speter echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 107050276Speter fi 1071166124Srafan exit ;; 1072166124Srafan i*86:*:5:[678]*) 1073184989Srafan # UnixWare 7.x, OpenUNIX and OpenServer 6. 107497049Speter case `/bin/uname -X | grep "^Machine"` in 107597049Speter *486*) UNAME_MACHINE=i486 ;; 107697049Speter *Pentium) UNAME_MACHINE=i586 ;; 107797049Speter *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 107897049Speter esac 107997049Speter echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 1080166124Srafan exit ;; 108197049Speter i*86:*:3.2:*) 108250276Speter if test -f /usr/options/cb.name; then 108350276Speter UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 108450276Speter echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 108550276Speter elif /bin/uname -X 2>/dev/null >/dev/null ; then 1086166124Srafan UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 1087166124Srafan (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 1088166124Srafan (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 108950276Speter && UNAME_MACHINE=i586 1090166124Srafan (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 109162449Speter && UNAME_MACHINE=i686 1092166124Srafan (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 109362449Speter && UNAME_MACHINE=i686 109450276Speter echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 109550276Speter else 109650276Speter echo ${UNAME_MACHINE}-pc-sysv32 109750276Speter fi 1098166124Srafan exit ;; 109950276Speter pc:*:*:*) 110062449Speter # Left here for compatibility: 1101184989Srafan # uname -m prints for DJGPP always 'pc', but it prints nothing about 1102184989Srafan # the processor, so we play safe by assuming i386. 110350276Speter echo i386-pc-msdosdjgpp 1104184989Srafan exit ;; 110550276Speter Intel:Mach:3*:*) 110650276Speter echo i386-pc-mach3 1107166124Srafan exit ;; 110850276Speter paragon:*:*:*) 110950276Speter echo i860-intel-osf1 1110166124Srafan exit ;; 111150276Speter i860:*:4.*:*) # i860-SVR4 111250276Speter if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 111350276Speter echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 111450276Speter else # Add other i860-SVR4 vendors below as they are discovered. 111550276Speter echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 111650276Speter fi 1117166124Srafan exit ;; 111850276Speter mini*:CTIX:SYS*5:*) 111950276Speter # "miniframe" 112050276Speter echo m68010-convergent-sysv 1121166124Srafan exit ;; 1122166124Srafan mc68k:UNIX:SYSTEM5:3.51m) 1123166124Srafan echo m68k-convergent-sysv 1124166124Srafan exit ;; 1125166124Srafan M680?0:D-NIX:5.3:*) 1126166124Srafan echo m68k-diab-dnix 1127166124Srafan exit ;; 1128166124Srafan M68*:*:R3V[5678]*:*) 1129166124Srafan test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 1130166124Srafan 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) 113150276Speter OS_REL='' 113250276Speter test -r /etc/.relid \ 113350276Speter && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 113450276Speter /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1135166124Srafan && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 113650276Speter /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1137166124Srafan && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 113850276Speter 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 1139184989Srafan /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1140184989Srafan && { echo i486-ncr-sysv4; exit; } ;; 114197049Speter m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 114250276Speter echo m68k-unknown-lynxos${UNAME_RELEASE} 1143166124Srafan exit ;; 114450276Speter mc68030:UNIX_System_V:4.*:*) 114550276Speter echo m68k-atari-sysv4 1146166124Srafan exit ;; 114750276Speter TSUNAMI:LynxOS:2.*:*) 114850276Speter echo sparc-unknown-lynxos${UNAME_RELEASE} 1149166124Srafan exit ;; 115076726Speter rs6000:LynxOS:2.*:*) 115150276Speter echo rs6000-unknown-lynxos${UNAME_RELEASE} 1152166124Srafan exit ;; 115397049Speter PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) 115476726Speter echo powerpc-unknown-lynxos${UNAME_RELEASE} 1155166124Srafan exit ;; 115650276Speter SM[BE]S:UNIX_SV:*:*) 115750276Speter echo mips-dde-sysv${UNAME_RELEASE} 1158166124Srafan exit ;; 115962449Speter RM*:ReliantUNIX-*:*:*) 116062449Speter echo mips-sni-sysv4 1161166124Srafan exit ;; 116250276Speter RM*:SINIX-*:*:*) 116350276Speter echo mips-sni-sysv4 1164166124Srafan exit ;; 116550276Speter *:SINIX-*:*:*) 116650276Speter if uname -p 2>/dev/null >/dev/null ; then 116750276Speter UNAME_MACHINE=`(uname -p) 2>/dev/null` 116850276Speter echo ${UNAME_MACHINE}-sni-sysv4 116950276Speter else 117050276Speter echo ns32k-sni-sysv 117150276Speter fi 1172166124Srafan exit ;; 117397049Speter PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 1174184989Srafan # says <Richard.M.Bartel@ccMail.Census.GOV> 1175184989Srafan echo i586-unisys-sysv4 1176184989Srafan exit ;; 117750276Speter *:UNIX_System_V:4*:FTX*) 117850276Speter # From Gerald Hewes <hewes@openmarket.com>. 117950276Speter # How about differentiating between stratus architectures? -djm 118050276Speter echo hppa1.1-stratus-sysv4 1181166124Srafan exit ;; 118250276Speter *:*:*:FTX*) 118350276Speter # From seanf@swdc.stratus.com. 118450276Speter echo i860-stratus-sysv4 1185166124Srafan exit ;; 1186166124Srafan i*86:VOS:*:*) 1187166124Srafan # From Paul.Green@stratus.com. 1188166124Srafan echo ${UNAME_MACHINE}-stratus-vos 1189166124Srafan exit ;; 119097049Speter *:VOS:*:*) 119197049Speter # From Paul.Green@stratus.com. 119297049Speter echo hppa1.1-stratus-vos 1193166124Srafan exit ;; 119450276Speter mc68*:A/UX:*:*) 119550276Speter echo m68k-apple-aux${UNAME_RELEASE} 1196166124Srafan exit ;; 119776726Speter news*:NEWS-OS:6*:*) 119850276Speter echo mips-sony-newsos6 1199166124Srafan exit ;; 120062449Speter R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 120150276Speter if [ -d /usr/nec ]; then 120250276Speter echo mips-nec-sysv${UNAME_RELEASE} 120350276Speter else 120450276Speter echo mips-unknown-sysv${UNAME_RELEASE} 120550276Speter fi 1206184989Srafan exit ;; 120750276Speter BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 120850276Speter echo powerpc-be-beos 1209166124Srafan exit ;; 121050276Speter BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 121150276Speter echo powerpc-apple-beos 1212166124Srafan exit ;; 121350276Speter BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 121450276Speter echo i586-pc-beos 1215166124Srafan exit ;; 1216178866Srafan BePC:Haiku:*:*) # Haiku running on Intel PC compatible. 1217178866Srafan echo i586-pc-haiku 1218178866Srafan exit ;; 121962449Speter SX-4:SUPER-UX:*:*) 122062449Speter echo sx4-nec-superux${UNAME_RELEASE} 1221166124Srafan exit ;; 122262449Speter SX-5:SUPER-UX:*:*) 122362449Speter echo sx5-nec-superux${UNAME_RELEASE} 1224166124Srafan exit ;; 1225166124Srafan SX-6:SUPER-UX:*:*) 1226166124Srafan echo sx6-nec-superux${UNAME_RELEASE} 1227166124Srafan exit ;; 1228174993Srafan SX-7:SUPER-UX:*:*) 1229174993Srafan echo sx7-nec-superux${UNAME_RELEASE} 1230174993Srafan exit ;; 1231174993Srafan SX-8:SUPER-UX:*:*) 1232174993Srafan echo sx8-nec-superux${UNAME_RELEASE} 1233174993Srafan exit ;; 1234174993Srafan SX-8R:SUPER-UX:*:*) 1235174993Srafan echo sx8r-nec-superux${UNAME_RELEASE} 1236174993Srafan exit ;; 123762449Speter Power*:Rhapsody:*:*) 123862449Speter echo powerpc-apple-rhapsody${UNAME_RELEASE} 1239166124Srafan exit ;; 124062449Speter *:Rhapsody:*:*) 124162449Speter echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 1242166124Srafan exit ;; 124362449Speter *:Darwin:*:*) 1244166124Srafan UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 1245166124Srafan case $UNAME_PROCESSOR in 1246166124Srafan unknown) UNAME_PROCESSOR=powerpc ;; 1247166124Srafan esac 1248166124Srafan echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 1249166124Srafan exit ;; 125062449Speter *:procnto*:*:* | *:QNX:[0123456789]*:*) 125197049Speter UNAME_PROCESSOR=`uname -p` 125297049Speter if test "$UNAME_PROCESSOR" = "x86"; then 1253184989Srafan UNAME_PROCESSOR=i386 1254184989Srafan UNAME_MACHINE=pc 125562449Speter fi 125697049Speter echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 1257166124Srafan exit ;; 125862449Speter *:QNX:*:4*) 125962449Speter echo i386-pc-qnx 1260166124Srafan exit ;; 1261166124Srafan NSE-?:NONSTOP_KERNEL:*:*) 1262166124Srafan echo nse-tandem-nsk${UNAME_RELEASE} 1263166124Srafan exit ;; 1264166124Srafan NSR-?:NONSTOP_KERNEL:*:*) 126562449Speter echo nsr-tandem-nsk${UNAME_RELEASE} 1266166124Srafan exit ;; 126776726Speter *:NonStop-UX:*:*) 126876726Speter echo mips-compaq-nonstopux 1269166124Srafan exit ;; 127062449Speter BS2000:POSIX*:*:*) 127162449Speter echo bs2000-siemens-sysv 1272166124Srafan exit ;; 127362449Speter DS/*:UNIX_System_V:*:*) 127462449Speter echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 1275166124Srafan exit ;; 127676726Speter *:Plan9:*:*) 127776726Speter # "uname -m" is not consistent, so use $cputype instead. 386 127876726Speter # is converted to i386 for consistency with other x86 127976726Speter # operating systems. 128076726Speter if test "$cputype" = "386"; then 128176726Speter UNAME_MACHINE=i386 128276726Speter else 128376726Speter UNAME_MACHINE="$cputype" 128476726Speter fi 128576726Speter echo ${UNAME_MACHINE}-unknown-plan9 1286166124Srafan exit ;; 128776726Speter *:TOPS-10:*:*) 128876726Speter echo pdp10-unknown-tops10 1289166124Srafan exit ;; 129076726Speter *:TENEX:*:*) 129176726Speter echo pdp10-unknown-tenex 1292166124Srafan exit ;; 129376726Speter KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 129476726Speter echo pdp10-dec-tops20 1295166124Srafan exit ;; 129676726Speter XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 129776726Speter echo pdp10-xkl-tops20 1298166124Srafan exit ;; 129976726Speter *:TOPS-20:*:*) 130076726Speter echo pdp10-unknown-tops20 1301166124Srafan exit ;; 130276726Speter *:ITS:*:*) 130376726Speter echo pdp10-unknown-its 1304166124Srafan exit ;; 1305166124Srafan SEI:*:*:SEIUX) 1306184989Srafan echo mips-sei-seiux${UNAME_RELEASE} 1307166124Srafan exit ;; 1308166124Srafan *:DragonFly:*:*) 1309166124Srafan echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 1310166124Srafan exit ;; 1311166124Srafan *:*VMS:*:*) 1312184989Srafan UNAME_MACHINE=`(uname -p) 2>/dev/null` 1313166124Srafan case "${UNAME_MACHINE}" in 1314166124Srafan A*) echo alpha-dec-vms ; exit ;; 1315166124Srafan I*) echo ia64-dec-vms ; exit ;; 1316166124Srafan V*) echo vax-dec-vms ; exit ;; 1317166124Srafan esac ;; 1318166124Srafan *:XENIX:*:SysV) 1319166124Srafan echo i386-pc-xenix 1320166124Srafan exit ;; 1321166124Srafan i*86:skyos:*:*) 1322166124Srafan echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' 1323166124Srafan exit ;; 1324166124Srafan i*86:rdos:*:*) 1325166124Srafan echo ${UNAME_MACHINE}-pc-rdos 1326166124Srafan exit ;; 132750276Speteresac 132850276Speter 132950276Speter#echo '(No uname command or uname output not recognized.)' 1>&2 133050276Speter#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 133150276Speter 133297049Spetereval $set_cc_for_build 133362449Spetercat >$dummy.c <<EOF 133450276Speter#ifdef _SEQUENT_ 133550276Speter# include <sys/types.h> 133650276Speter# include <sys/utsname.h> 133750276Speter#endif 133850276Spetermain () 133950276Speter{ 134050276Speter#if defined (sony) 134150276Speter#if defined (MIPSEB) 134250276Speter /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, 134350276Speter I don't know.... */ 134450276Speter printf ("mips-sony-bsd\n"); exit (0); 134550276Speter#else 134650276Speter#include <sys/param.h> 134750276Speter printf ("m68k-sony-newsos%s\n", 134850276Speter#ifdef NEWSOS4 134950276Speter "4" 135050276Speter#else 135150276Speter "" 135250276Speter#endif 135350276Speter ); exit (0); 135450276Speter#endif 135550276Speter#endif 135650276Speter 135750276Speter#if defined (__arm) && defined (__acorn) && defined (__unix) 1358166124Srafan printf ("arm-acorn-riscix\n"); exit (0); 135950276Speter#endif 136050276Speter 136150276Speter#if defined (hp300) && !defined (hpux) 136250276Speter printf ("m68k-hp-bsd\n"); exit (0); 136350276Speter#endif 136450276Speter 136550276Speter#if defined (NeXT) 136650276Speter#if !defined (__ARCHITECTURE__) 136750276Speter#define __ARCHITECTURE__ "m68k" 136850276Speter#endif 136950276Speter int version; 137050276Speter version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; 137162449Speter if (version < 4) 137262449Speter printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); 137362449Speter else 137462449Speter printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); 137550276Speter exit (0); 137650276Speter#endif 137750276Speter 137850276Speter#if defined (MULTIMAX) || defined (n16) 137950276Speter#if defined (UMAXV) 138050276Speter printf ("ns32k-encore-sysv\n"); exit (0); 138150276Speter#else 138250276Speter#if defined (CMU) 138350276Speter printf ("ns32k-encore-mach\n"); exit (0); 138450276Speter#else 138550276Speter printf ("ns32k-encore-bsd\n"); exit (0); 138650276Speter#endif 138750276Speter#endif 138850276Speter#endif 138950276Speter 139050276Speter#if defined (__386BSD__) 139150276Speter printf ("i386-pc-bsd\n"); exit (0); 139250276Speter#endif 139350276Speter 139450276Speter#if defined (sequent) 139550276Speter#if defined (i386) 139650276Speter printf ("i386-sequent-dynix\n"); exit (0); 139750276Speter#endif 139850276Speter#if defined (ns32000) 139950276Speter printf ("ns32k-sequent-dynix\n"); exit (0); 140050276Speter#endif 140150276Speter#endif 140250276Speter 140350276Speter#if defined (_SEQUENT_) 140450276Speter struct utsname un; 140550276Speter 140650276Speter uname(&un); 140750276Speter 140850276Speter if (strncmp(un.version, "V2", 2) == 0) { 140950276Speter printf ("i386-sequent-ptx2\n"); exit (0); 141050276Speter } 141150276Speter if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ 141250276Speter printf ("i386-sequent-ptx1\n"); exit (0); 141350276Speter } 141450276Speter printf ("i386-sequent-ptx\n"); exit (0); 141550276Speter 141650276Speter#endif 141750276Speter 141850276Speter#if defined (vax) 141976726Speter# if !defined (ultrix) 142076726Speter# include <sys/param.h> 142176726Speter# if defined (BSD) 142276726Speter# if BSD == 43 142376726Speter printf ("vax-dec-bsd4.3\n"); exit (0); 142476726Speter# else 142576726Speter# if BSD == 199006 142676726Speter printf ("vax-dec-bsd4.3reno\n"); exit (0); 142776726Speter# else 142876726Speter printf ("vax-dec-bsd\n"); exit (0); 142976726Speter# endif 143076726Speter# endif 143176726Speter# else 143276726Speter printf ("vax-dec-bsd\n"); exit (0); 143376726Speter# endif 143476726Speter# else 143576726Speter printf ("vax-dec-ultrix\n"); exit (0); 143676726Speter# endif 143750276Speter#endif 143850276Speter 143950276Speter#if defined (alliant) && defined (i860) 144050276Speter printf ("i860-alliant-bsd\n"); exit (0); 144150276Speter#endif 144250276Speter 144350276Speter exit (1); 144450276Speter} 144550276SpeterEOF 144650276Speter 1447166124Srafan$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && 1448166124Srafan { echo "$SYSTEM_NAME"; exit; } 144950276Speter 145050276Speter# Apollos put the system type in the environment. 145150276Speter 1452166124Srafantest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } 145350276Speter 145450276Speter# Convex versions that predate uname can use getsysinfo(1) 145550276Speter 145650276Speterif [ -x /usr/convex/getsysinfo ] 145750276Speterthen 145850276Speter case `getsysinfo -f cpu_type` in 145950276Speter c1*) 146050276Speter echo c1-convex-bsd 1461166124Srafan exit ;; 146250276Speter c2*) 146350276Speter if getsysinfo -f scalar_acc 146450276Speter then echo c32-convex-bsd 146550276Speter else echo c2-convex-bsd 146650276Speter fi 1467166124Srafan exit ;; 146850276Speter c34*) 146950276Speter echo c34-convex-bsd 1470166124Srafan exit ;; 147150276Speter c38*) 147250276Speter echo c38-convex-bsd 1473166124Srafan exit ;; 147450276Speter c4*) 147550276Speter echo c4-convex-bsd 1476166124Srafan exit ;; 147750276Speter esac 147850276Speterfi 147950276Speter 148062449Spetercat >&2 <<EOF 148162449Speter$0: unable to guess system type 148250276Speter 148376726SpeterThis script, last modified $timestamp, has failed to recognize 148476726Speterthe operating system you are using. It is advised that you 148576726Speterdownload the most up to date version of the config scripts from 148662449Speter 1487184989Srafan http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 1488166124Srafanand 1489184989Srafan http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 149062449Speter 149162449SpeterIf the version you run ($0) is already up to date, please 149262449Spetersend the following data and any information you think might be 149362449Speterpertinent to <config-patches@gnu.org> in order to provide the needed 149462449Speterinformation to handle your system. 149562449Speter 149676726Speterconfig.guess timestamp = $timestamp 149762449Speter 149862449Speteruname -m = `(uname -m) 2>/dev/null || echo unknown` 149962449Speteruname -r = `(uname -r) 2>/dev/null || echo unknown` 150062449Speteruname -s = `(uname -s) 2>/dev/null || echo unknown` 150162449Speteruname -v = `(uname -v) 2>/dev/null || echo unknown` 150262449Speter 150362449Speter/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 150462449Speter/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 150562449Speter 150662449Speterhostinfo = `(hostinfo) 2>/dev/null` 150762449Speter/bin/universe = `(/bin/universe) 2>/dev/null` 150862449Speter/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 150962449Speter/bin/arch = `(/bin/arch) 2>/dev/null` 151062449Speter/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 151162449Speter/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 151262449Speter 151362449SpeterUNAME_MACHINE = ${UNAME_MACHINE} 151462449SpeterUNAME_RELEASE = ${UNAME_RELEASE} 151562449SpeterUNAME_SYSTEM = ${UNAME_SYSTEM} 151662449SpeterUNAME_VERSION = ${UNAME_VERSION} 151762449SpeterEOF 151862449Speter 151950276Speterexit 1 152062449Speter 152162449Speter# Local variables: 152262449Speter# eval: (add-hook 'write-file-hooks 'time-stamp) 152376726Speter# time-stamp-start: "timestamp='" 152462449Speter# time-stamp-format: "%:y-%02m-%02d" 152562449Speter# time-stamp-end: "'" 152662449Speter# End: 1527