117680Spst#! /bin/sh 217680Spst# Attempt to guess a canonical system name. 3127668Sbms# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4214478Srpaulo# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 5214478Srpaulo# Free Software Foundation, Inc. 675115Sfenner 7214478Srpaulotimestamp='2009-12-30' 875115Sfenner 917680Spst# This file is free software; you can redistribute it and/or modify it 1017680Spst# under the terms of the GNU General Public License as published by 1117680Spst# the Free Software Foundation; either version 2 of the License, or 1217680Spst# (at your option) any later version. 1317680Spst# 1417680Spst# This program is distributed in the hope that it will be useful, but 1517680Spst# WITHOUT ANY WARRANTY; without even the implied warranty of 1617680Spst# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 1717680Spst# General Public License for more details. 1817680Spst# 1917680Spst# You should have received a copy of the GNU General Public License 2017680Spst# along with this program; if not, write to the Free Software 21214478Srpaulo# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 22214478Srpaulo# 02110-1301, USA. 2317680Spst# 2417680Spst# As a special exception to the GNU General Public License, if you 2517680Spst# distribute this file as part of a program that contains a 2617680Spst# configuration script generated by Autoconf, you may include it under 2717680Spst# the same distribution terms that you use for the rest of that program. 2817680Spst 29214478Srpaulo 30214478Srpaulo# Originally written by Per Bothner. Please send patches (context 31214478Srpaulo# diff format) to <config-patches@gnu.org> and include a ChangeLog 32214478Srpaulo# entry. 3317680Spst# 3417680Spst# This script attempts to guess a canonical system name similar to 3517680Spst# config.sub. If it succeeds, it prints the system name on stdout, and 3617680Spst# exits with 0. Otherwise, it exits with 1. 3717680Spst# 38214478Srpaulo# You can get the latest version of this script from: 39214478Srpaulo# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 4017680Spst 4175115Sfennerme=`echo "$0" | sed -e 's,.*/,,'` 4275115Sfenner 4375115Sfennerusage="\ 4475115SfennerUsage: $0 [OPTION] 4575115Sfenner 4675115SfennerOutput the configuration name of the system \`$me' is run on. 4775115Sfenner 4875115SfennerOperation modes: 4975115Sfenner -h, --help print this help, then exit 5075115Sfenner -t, --time-stamp print date of last modification, then exit 5175115Sfenner -v, --version print version number, then exit 5275115Sfenner 5375115SfennerReport bugs and patches to <config-patches@gnu.org>." 5475115Sfenner 5575115Sfennerversion="\ 5675115SfennerGNU config.guess ($timestamp) 5775115Sfenner 5875115SfennerOriginally written by Per Bothner. 59214478SrpauloCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 60214478Srpaulo2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free 61214478SrpauloSoftware Foundation, Inc. 6275115Sfenner 6375115SfennerThis is free software; see the source for copying conditions. There is NO 6475115Sfennerwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 6575115Sfenner 6675115Sfennerhelp=" 6775115SfennerTry \`$me --help' for more information." 6875115Sfenner 6975115Sfenner# Parse command line 7075115Sfennerwhile test $# -gt 0 ; do 7175115Sfenner case $1 in 7275115Sfenner --time-stamp | --time* | -t ) 73214478Srpaulo echo "$timestamp" ; exit ;; 7475115Sfenner --version | -v ) 75214478Srpaulo echo "$version" ; exit ;; 7675115Sfenner --help | --h* | -h ) 77214478Srpaulo echo "$usage"; exit ;; 7875115Sfenner -- ) # Stop option processing 7975115Sfenner shift; break ;; 8075115Sfenner - ) # Use stdin as input. 8175115Sfenner break ;; 8275115Sfenner -* ) 8375115Sfenner echo "$me: invalid option $1$help" >&2 8475115Sfenner exit 1 ;; 8575115Sfenner * ) 8675115Sfenner break ;; 8775115Sfenner esac 8875115Sfennerdone 8975115Sfenner 9075115Sfennerif test $# != 0; then 9175115Sfenner echo "$me: too many arguments$help" >&2 9275115Sfenner exit 1 9375115Sfennerfi 9475115Sfenner 95127668Sbmstrap 'exit 1' 1 2 15 9675115Sfenner 97127668Sbms# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 98127668Sbms# compiler to aid in system detection is discouraged as it requires 99127668Sbms# temporary files to be created and, as you can see below, it is a 100127668Sbms# headache to deal with in a portable fashion. 10175115Sfenner 10275115Sfenner# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 10375115Sfenner# use `HOST_CC' if defined, but it is deprecated. 10475115Sfenner 105127668Sbms# Portable tmp directory creation inspired by the Autoconf team. 106127668Sbms 107127668Sbmsset_cc_for_build=' 108127668Sbmstrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; 109127668Sbmstrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 110127668Sbms: ${TMPDIR=/tmp} ; 111214478Srpaulo { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 112127668Sbms { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 113127668Sbms { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || 114127668Sbms { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; 115127668Sbmsdummy=$tmp/dummy ; 116127668Sbmstmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; 11775115Sfennercase $CC_FOR_BUILD,$HOST_CC,$CC in 118127668Sbms ,,) echo "int x;" > $dummy.c ; 119127668Sbms for c in cc gcc c89 c99 ; do 120127668Sbms if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then 121127668Sbms CC_FOR_BUILD="$c"; break ; 122127668Sbms fi ; 123127668Sbms done ; 12475115Sfenner if test x"$CC_FOR_BUILD" = x ; then 125127668Sbms CC_FOR_BUILD=no_compiler_found ; 12675115Sfenner fi 12775115Sfenner ;; 12875115Sfenner ,,*) CC_FOR_BUILD=$CC ;; 12975115Sfenner ,*,*) CC_FOR_BUILD=$HOST_CC ;; 130214478Srpauloesac ; set_cc_for_build= ;' 13175115Sfenner 13217680Spst# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 133127668Sbms# (ghazi@noc.rutgers.edu 1994-08-24) 13417680Spstif (test -f /.attbin/uname) >/dev/null 2>&1 ; then 13517680Spst PATH=$PATH:/.attbin ; export PATH 13617680Spstfi 13717680Spst 13817680SpstUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 13917680SpstUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 14075115SfennerUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 14117680SpstUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 14217680Spst 14317680Spst# Note: order is significant - the case branches are not exclusive. 14417680Spst 14517680Spstcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 14675115Sfenner *:NetBSD:*:*) 147127668Sbms # NetBSD (nbsd) targets should (where applicable) match one or 14875115Sfenner # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, 14975115Sfenner # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 15075115Sfenner # switched to ELF, *-*-netbsd* would select the old 15175115Sfenner # object file format. This provides both forward 15275115Sfenner # compatibility and a consistent mechanism for selecting the 15375115Sfenner # object file format. 154127668Sbms # 155127668Sbms # Note: NetBSD doesn't particularly care about the vendor 156127668Sbms # portion of the name. We always set it to "unknown". 157127668Sbms sysctl="sysctl -n hw.machine_arch" 158127668Sbms UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ 159127668Sbms /usr/sbin/$sysctl 2>/dev/null || echo unknown)` 160127668Sbms case "${UNAME_MACHINE_ARCH}" in 161127668Sbms armeb) machine=armeb-unknown ;; 162127668Sbms arm*) machine=arm-unknown ;; 163127668Sbms sh3el) machine=shl-unknown ;; 164127668Sbms sh3eb) machine=sh-unknown ;; 165214478Srpaulo sh5el) machine=sh5le-unknown ;; 166127668Sbms *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 16775115Sfenner esac 16875115Sfenner # The Operating System including object format, if it has switched 16975115Sfenner # to ELF recently, or will in the future. 170127668Sbms case "${UNAME_MACHINE_ARCH}" in 171127668Sbms arm*|i386|m68k|ns32k|sh3*|sparc|vax) 172127668Sbms eval $set_cc_for_build 17375115Sfenner if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 174214478Srpaulo | grep -q __ELF__ 17575115Sfenner then 17675115Sfenner # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 17775115Sfenner # Return netbsd for either. FIX? 17875115Sfenner os=netbsd 17975115Sfenner else 18075115Sfenner os=netbsdelf 18175115Sfenner fi 18275115Sfenner ;; 18375115Sfenner *) 18475115Sfenner os=netbsd 18575115Sfenner ;; 18675115Sfenner esac 18775115Sfenner # The OS release 188127668Sbms # Debian GNU/NetBSD machines have a different userland, and 189127668Sbms # thus, need a distinct triplet. However, they do not need 190127668Sbms # kernel version information, so it can be replaced with a 191127668Sbms # suitable tag, in the style of linux-gnu. 192127668Sbms case "${UNAME_VERSION}" in 193127668Sbms Debian*) 194127668Sbms release='-gnu' 195127668Sbms ;; 196127668Sbms *) 197127668Sbms release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` 198127668Sbms ;; 199127668Sbms esac 20075115Sfenner # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 20175115Sfenner # contains redundant information, the shorter form: 20275115Sfenner # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 20375115Sfenner echo "${machine}-${os}${release}" 204214478Srpaulo exit ;; 205127668Sbms *:OpenBSD:*:*) 206214478Srpaulo UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 207214478Srpaulo echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 208214478Srpaulo exit ;; 209214478Srpaulo *:ekkoBSD:*:*) 210214478Srpaulo echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 211214478Srpaulo exit ;; 212214478Srpaulo *:SolidBSD:*:*) 213214478Srpaulo echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} 214214478Srpaulo exit ;; 215214478Srpaulo macppc:MirBSD:*:*) 216214478Srpaulo echo powerpc-unknown-mirbsd${UNAME_RELEASE} 217214478Srpaulo exit ;; 218214478Srpaulo *:MirBSD:*:*) 219214478Srpaulo echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 220214478Srpaulo exit ;; 22117680Spst alpha:OSF1:*:*) 222214478Srpaulo case $UNAME_RELEASE in 223214478Srpaulo *4.0) 22475115Sfenner UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 225214478Srpaulo ;; 226214478Srpaulo *5.*) 227214478Srpaulo UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 228214478Srpaulo ;; 229214478Srpaulo esac 230127668Sbms # According to Compaq, /usr/sbin/psrinfo has been available on 231127668Sbms # OSF/1 and Tru64 systems produced since 1995. I hope that 232127668Sbms # covers most systems running today. This code pipes the CPU 233127668Sbms # types through head -n 1, so we only detect the type of CPU 0. 234127668Sbms ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 235127668Sbms case "$ALPHA_CPU_TYPE" in 236127668Sbms "EV4 (21064)") 237127668Sbms UNAME_MACHINE="alpha" ;; 238127668Sbms "EV4.5 (21064)") 239127668Sbms UNAME_MACHINE="alpha" ;; 240127668Sbms "LCA4 (21066/21068)") 241127668Sbms UNAME_MACHINE="alpha" ;; 242127668Sbms "EV5 (21164)") 243127668Sbms UNAME_MACHINE="alphaev5" ;; 244127668Sbms "EV5.6 (21164A)") 245127668Sbms UNAME_MACHINE="alphaev56" ;; 246127668Sbms "EV5.6 (21164PC)") 247127668Sbms UNAME_MACHINE="alphapca56" ;; 248127668Sbms "EV5.7 (21164PC)") 249127668Sbms UNAME_MACHINE="alphapca57" ;; 250127668Sbms "EV6 (21264)") 251127668Sbms UNAME_MACHINE="alphaev6" ;; 252127668Sbms "EV6.7 (21264A)") 253127668Sbms UNAME_MACHINE="alphaev67" ;; 254127668Sbms "EV6.8CB (21264C)") 255127668Sbms UNAME_MACHINE="alphaev68" ;; 256127668Sbms "EV6.8AL (21264B)") 257127668Sbms UNAME_MACHINE="alphaev68" ;; 258127668Sbms "EV6.8CX (21264D)") 259127668Sbms UNAME_MACHINE="alphaev68" ;; 260127668Sbms "EV6.9A (21264/EV69A)") 261127668Sbms UNAME_MACHINE="alphaev69" ;; 262127668Sbms "EV7 (21364)") 263127668Sbms UNAME_MACHINE="alphaev7" ;; 264127668Sbms "EV7.9 (21364A)") 265127668Sbms UNAME_MACHINE="alphaev79" ;; 266127668Sbms esac 267214478Srpaulo # A Pn.n version is a patched version. 26817680Spst # A Vn.n version is a released version. 26917680Spst # A Tn.n version is a released field test version. 27017680Spst # A Xn.n version is an unreleased experimental baselevel. 27117680Spst # 1.2 uses "1.2" for uname -r. 272214478Srpaulo echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 273214478Srpaulo exit ;; 27475115Sfenner Alpha\ *:Windows_NT*:*) 27575115Sfenner # How do we know it's Interix rather than the generic POSIX subsystem? 27675115Sfenner # Should we change UNAME_MACHINE based on the output of uname instead 27775115Sfenner # of the specific Alpha model? 27875115Sfenner echo alpha-pc-interix 279214478Srpaulo exit ;; 28017680Spst 21064:Windows_NT:50:3) 28117680Spst echo alpha-dec-winnt3.5 282214478Srpaulo exit ;; 28317680Spst Amiga*:UNIX_System_V:4.0:*) 28475115Sfenner echo m68k-unknown-sysv4 285214478Srpaulo exit ;; 28675115Sfenner *:[Aa]miga[Oo][Ss]:*:*) 28775115Sfenner echo ${UNAME_MACHINE}-unknown-amigaos 288214478Srpaulo exit ;; 289127668Sbms *:[Mm]orph[Oo][Ss]:*:*) 290127668Sbms echo ${UNAME_MACHINE}-unknown-morphos 291214478Srpaulo exit ;; 29275115Sfenner *:OS/390:*:*) 29375115Sfenner echo i370-ibm-openedition 294214478Srpaulo exit ;; 295214478Srpaulo *:z/VM:*:*) 296214478Srpaulo echo s390-ibm-zvmoe 297214478Srpaulo exit ;; 298127668Sbms *:OS400:*:*) 299127668Sbms echo powerpc-ibm-os400 300214478Srpaulo exit ;; 30117680Spst arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 30217680Spst echo arm-acorn-riscix${UNAME_RELEASE} 303214478Srpaulo exit ;; 304214478Srpaulo arm:riscos:*:*|arm:RISCOS:*:*) 305214478Srpaulo echo arm-unknown-riscos 306214478Srpaulo exit ;; 30798524Sfenner SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 30875115Sfenner echo hppa1.1-hitachi-hiuxmpp 309214478Srpaulo exit ;; 31075115Sfenner Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 31126180Sfenner # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 31217680Spst if test "`(/bin/universe) 2>/dev/null`" = att ; then 31317680Spst echo pyramid-pyramid-sysv3 31417680Spst else 31517680Spst echo pyramid-pyramid-bsd 31617680Spst fi 317214478Srpaulo exit ;; 31875115Sfenner NILE*:*:*:dcosx) 31926180Sfenner echo pyramid-pyramid-svr4 320214478Srpaulo exit ;; 321127668Sbms DRS?6000:unix:4.0:6*) 322127668Sbms echo sparc-icl-nx6 323214478Srpaulo exit ;; 324214478Srpaulo DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 325127668Sbms case `/usr/bin/uname -p` in 326214478Srpaulo sparc) echo sparc-icl-nx7; exit ;; 327127668Sbms esac ;; 328214478Srpaulo s390x:SunOS:*:*) 329214478Srpaulo echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 330214478Srpaulo exit ;; 33175115Sfenner sun4H:SunOS:5.*:*) 33275115Sfenner echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 333214478Srpaulo exit ;; 33426180Sfenner sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 33517680Spst echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 336214478Srpaulo exit ;; 337214478Srpaulo i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) 338214478Srpaulo echo i386-pc-auroraux${UNAME_RELEASE} 339214478Srpaulo exit ;; 340214478Srpaulo i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) 341214478Srpaulo eval $set_cc_for_build 342214478Srpaulo SUN_ARCH="i386" 343214478Srpaulo # If there is a compiler, see if it is configured for 64-bit objects. 344214478Srpaulo # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. 345214478Srpaulo # This test works for both compilers. 346214478Srpaulo if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 347214478Srpaulo if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ 348214478Srpaulo (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 349214478Srpaulo grep IS_64BIT_ARCH >/dev/null 350214478Srpaulo then 351214478Srpaulo SUN_ARCH="x86_64" 352214478Srpaulo fi 353214478Srpaulo fi 354214478Srpaulo echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 355214478Srpaulo exit ;; 35617680Spst sun4*:SunOS:6*:*) 35717680Spst # According to config.sub, this is the proper way to canonicalize 35817680Spst # SunOS6. Hard to guess exactly what SunOS6 will be like, but 35917680Spst # it's likely to be more like Solaris than SunOS4. 36017680Spst echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 361214478Srpaulo exit ;; 36217680Spst sun4*:SunOS:*:*) 36317680Spst case "`/usr/bin/arch -k`" in 36417680Spst Series*|S4*) 36517680Spst UNAME_RELEASE=`uname -v` 36617680Spst ;; 36717680Spst esac 36817680Spst # Japanese Language versions have a version number like `4.1.3-JL'. 36917680Spst echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 370214478Srpaulo exit ;; 37117680Spst sun3*:SunOS:*:*) 37217680Spst echo m68k-sun-sunos${UNAME_RELEASE} 373214478Srpaulo exit ;; 37475115Sfenner sun*:*:4.2BSD:*) 375127668Sbms UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 37675115Sfenner test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 37775115Sfenner case "`/bin/arch`" in 37875115Sfenner sun3) 37975115Sfenner echo m68k-sun-sunos${UNAME_RELEASE} 38075115Sfenner ;; 38175115Sfenner sun4) 38275115Sfenner echo sparc-sun-sunos${UNAME_RELEASE} 38375115Sfenner ;; 38475115Sfenner esac 385214478Srpaulo exit ;; 38626180Sfenner aushp:SunOS:*:*) 38726180Sfenner echo sparc-auspex-sunos${UNAME_RELEASE} 388214478Srpaulo exit ;; 38975115Sfenner # The situation for MiNT is a little confusing. The machine name 39075115Sfenner # can be virtually everything (everything which is not 39175115Sfenner # "atarist" or "atariste" at least should have a processor 39275115Sfenner # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 39375115Sfenner # to the lowercase version "mint" (or "freemint"). Finally 39475115Sfenner # the system name "TOS" denotes a system which is actually not 39575115Sfenner # MiNT. But MiNT is downward compatible to TOS, so this should 39675115Sfenner # be no problem. 39775115Sfenner atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 39875115Sfenner echo m68k-atari-mint${UNAME_RELEASE} 399214478Srpaulo exit ;; 40075115Sfenner atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 40175115Sfenner echo m68k-atari-mint${UNAME_RELEASE} 402214478Srpaulo exit ;; 40375115Sfenner *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 40475115Sfenner echo m68k-atari-mint${UNAME_RELEASE} 405214478Srpaulo exit ;; 40675115Sfenner milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 40775115Sfenner echo m68k-milan-mint${UNAME_RELEASE} 408214478Srpaulo exit ;; 40975115Sfenner hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 41075115Sfenner echo m68k-hades-mint${UNAME_RELEASE} 411214478Srpaulo exit ;; 41275115Sfenner *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 41375115Sfenner echo m68k-unknown-mint${UNAME_RELEASE} 414214478Srpaulo exit ;; 415214478Srpaulo m68k:machten:*:*) 416214478Srpaulo echo m68k-apple-machten${UNAME_RELEASE} 417214478Srpaulo exit ;; 41826180Sfenner powerpc:machten:*:*) 41926180Sfenner echo powerpc-apple-machten${UNAME_RELEASE} 420214478Srpaulo exit ;; 42126180Sfenner RISC*:Mach:*:*) 42226180Sfenner echo mips-dec-mach_bsd4.3 423214478Srpaulo exit ;; 42417680Spst RISC*:ULTRIX:*:*) 42517680Spst echo mips-dec-ultrix${UNAME_RELEASE} 426214478Srpaulo exit ;; 42717680Spst VAX*:ULTRIX*:*:*) 42817680Spst echo vax-dec-ultrix${UNAME_RELEASE} 429214478Srpaulo exit ;; 43075115Sfenner 2020:CLIX:*:* | 2430:CLIX:*:*) 43175115Sfenner echo clipper-intergraph-clix${UNAME_RELEASE} 432214478Srpaulo exit ;; 43326180Sfenner mips:*:*:UMIPS | mips:*:*:RISCos) 434127668Sbms eval $set_cc_for_build 43575115Sfenner sed 's/^ //' << EOF >$dummy.c 43675115Sfenner#ifdef __cplusplus 43775115Sfenner#include <stdio.h> /* for printf() prototype */ 43875115Sfenner int main (int argc, char *argv[]) { 43975115Sfenner#else 44075115Sfenner int main (argc, argv) int argc; char *argv[]; { 44175115Sfenner#endif 44226180Sfenner #if defined (host_mips) && defined (MIPSEB) 44326180Sfenner #if defined (SYSTYPE_SYSV) 44426180Sfenner printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 44526180Sfenner #endif 44626180Sfenner #if defined (SYSTYPE_SVR4) 44726180Sfenner printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 44826180Sfenner #endif 44926180Sfenner #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 45026180Sfenner printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 45126180Sfenner #endif 45226180Sfenner #endif 45326180Sfenner exit (-1); 45426180Sfenner } 45526180SfennerEOF 456214478Srpaulo $CC_FOR_BUILD -o $dummy $dummy.c && 457214478Srpaulo dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 458214478Srpaulo SYSTEM_NAME=`$dummy $dummyarg` && 459214478Srpaulo { echo "$SYSTEM_NAME"; exit; } 46017680Spst echo mips-mips-riscos${UNAME_RELEASE} 461214478Srpaulo exit ;; 46298524Sfenner Motorola:PowerMAX_OS:*:*) 46398524Sfenner echo powerpc-motorola-powermax 464214478Srpaulo exit ;; 465127668Sbms Motorola:*:4.3:PL8-*) 466127668Sbms echo powerpc-harris-powermax 467214478Srpaulo exit ;; 468127668Sbms Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 469127668Sbms echo powerpc-harris-powermax 470214478Srpaulo exit ;; 47117680Spst Night_Hawk:Power_UNIX:*:*) 47217680Spst echo powerpc-harris-powerunix 473214478Srpaulo exit ;; 47417680Spst m88k:CX/UX:7*:*) 47517680Spst echo m88k-harris-cxux7 476214478Srpaulo exit ;; 47717680Spst m88k:*:4*:R4*) 47817680Spst echo m88k-motorola-sysv4 479214478Srpaulo exit ;; 48017680Spst m88k:*:3*:R3*) 48117680Spst echo m88k-motorola-sysv3 482214478Srpaulo exit ;; 48317680Spst AViiON:dgux:*:*) 48417680Spst # DG/UX returns AViiON for all architectures 48517680Spst UNAME_PROCESSOR=`/usr/bin/uname -p` 48675115Sfenner if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 48775115Sfenner then 48875115Sfenner if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 48975115Sfenner [ ${TARGET_BINARY_INTERFACE}x = x ] 49075115Sfenner then 49117680Spst echo m88k-dg-dgux${UNAME_RELEASE} 49275115Sfenner else 49375115Sfenner echo m88k-dg-dguxbcs${UNAME_RELEASE} 49475115Sfenner fi 49517680Spst else 49675115Sfenner echo i586-dg-dgux${UNAME_RELEASE} 49717680Spst fi 498214478Srpaulo exit ;; 49917680Spst M88*:DolphinOS:*:*) # DolphinOS (SVR3) 50017680Spst echo m88k-dolphin-sysv3 501214478Srpaulo exit ;; 50217680Spst M88*:*:R3*:*) 50317680Spst # Delta 88k system running SVR3 50417680Spst echo m88k-motorola-sysv3 505214478Srpaulo exit ;; 50617680Spst XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 50717680Spst echo m88k-tektronix-sysv3 508214478Srpaulo exit ;; 50917680Spst Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 51017680Spst echo m68k-tektronix-bsd 511214478Srpaulo exit ;; 51217680Spst *:IRIX*:*:*) 51317680Spst echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 514214478Srpaulo exit ;; 51526180Sfenner ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 516214478Srpaulo echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 517214478Srpaulo exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 51898524Sfenner i*86:AIX:*:*) 51917680Spst echo i386-ibm-aix 520214478Srpaulo exit ;; 52198524Sfenner ia64:AIX:*:*) 52298524Sfenner if [ -x /usr/bin/oslevel ] ; then 52398524Sfenner IBM_REV=`/usr/bin/oslevel` 52498524Sfenner else 52598524Sfenner IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 52698524Sfenner fi 52798524Sfenner echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 528214478Srpaulo exit ;; 52917680Spst *:AIX:2:3) 53017680Spst if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 531127668Sbms eval $set_cc_for_build 53275115Sfenner sed 's/^ //' << EOF >$dummy.c 53317680Spst #include <sys/systemcfg.h> 53417680Spst 53517680Spst main() 53617680Spst { 53717680Spst if (!__power_pc()) 53817680Spst exit(1); 53917680Spst puts("powerpc-ibm-aix3.2.5"); 54017680Spst exit(0); 54117680Spst } 54217680SpstEOF 543214478Srpaulo if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 544214478Srpaulo then 545214478Srpaulo echo "$SYSTEM_NAME" 546214478Srpaulo else 547214478Srpaulo echo rs6000-ibm-aix3.2.5 548214478Srpaulo fi 54917680Spst elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 55017680Spst echo rs6000-ibm-aix3.2.4 55117680Spst else 55217680Spst echo rs6000-ibm-aix3.2 55317680Spst fi 554214478Srpaulo exit ;; 555214478Srpaulo *:AIX:*:[456]) 556127668Sbms IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 55798524Sfenner if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 55817680Spst IBM_ARCH=rs6000 55917680Spst else 56017680Spst IBM_ARCH=powerpc 56117680Spst fi 56217680Spst if [ -x /usr/bin/oslevel ] ; then 56317680Spst IBM_REV=`/usr/bin/oslevel` 56417680Spst else 56598524Sfenner IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 56617680Spst fi 56717680Spst echo ${IBM_ARCH}-ibm-aix${IBM_REV} 568214478Srpaulo exit ;; 56917680Spst *:AIX:*:*) 57017680Spst echo rs6000-ibm-aix 571214478Srpaulo exit ;; 57217680Spst ibmrt:4.4BSD:*|romp-ibm:BSD:*) 57317680Spst echo romp-ibm-bsd4.4 574214478Srpaulo exit ;; 57575115Sfenner ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 57626180Sfenner echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 577214478Srpaulo exit ;; # report: romp-ibm BSD 4.3 57817680Spst *:BOSX:*:*) 57917680Spst echo rs6000-bull-bosx 580214478Srpaulo exit ;; 58117680Spst DPX/2?00:B.O.S.:*:*) 58217680Spst echo m68k-bull-sysv3 583214478Srpaulo exit ;; 58417680Spst 9000/[34]??:4.3bsd:1.*:*) 58517680Spst echo m68k-hp-bsd 586214478Srpaulo exit ;; 58717680Spst hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 58817680Spst echo m68k-hp-bsd4.4 589214478Srpaulo exit ;; 59075115Sfenner 9000/[34678]??:HP-UX:*:*) 59175115Sfenner HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 59217680Spst case "${UNAME_MACHINE}" in 59317680Spst 9000/31? ) HP_ARCH=m68000 ;; 59417680Spst 9000/[34]?? ) HP_ARCH=m68k ;; 59575115Sfenner 9000/[678][0-9][0-9]) 596127668Sbms if [ -x /usr/bin/getconf ]; then 597127668Sbms sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 59875115Sfenner sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 59975115Sfenner case "${sc_cpu_version}" in 60075115Sfenner 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 60175115Sfenner 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 60275115Sfenner 532) # CPU_PA_RISC2_0 60375115Sfenner case "${sc_kernel_bits}" in 60475115Sfenner 32) HP_ARCH="hppa2.0n" ;; 60575115Sfenner 64) HP_ARCH="hppa2.0w" ;; 606127668Sbms '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 60775115Sfenner esac ;; 60875115Sfenner esac 609127668Sbms fi 610127668Sbms if [ "${HP_ARCH}" = "" ]; then 611127668Sbms eval $set_cc_for_build 612127668Sbms sed 's/^ //' << EOF >$dummy.c 61375115Sfenner 61475115Sfenner #define _HPUX_SOURCE 61575115Sfenner #include <stdlib.h> 61675115Sfenner #include <unistd.h> 61775115Sfenner 61875115Sfenner int main () 61975115Sfenner { 62075115Sfenner #if defined(_SC_KERNEL_BITS) 62175115Sfenner long bits = sysconf(_SC_KERNEL_BITS); 62275115Sfenner #endif 62375115Sfenner long cpu = sysconf (_SC_CPU_VERSION); 62475115Sfenner 62575115Sfenner switch (cpu) 62675115Sfenner { 62775115Sfenner case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 62875115Sfenner case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 62975115Sfenner case CPU_PA_RISC2_0: 63075115Sfenner #if defined(_SC_KERNEL_BITS) 63175115Sfenner switch (bits) 63275115Sfenner { 63375115Sfenner case 64: puts ("hppa2.0w"); break; 63475115Sfenner case 32: puts ("hppa2.0n"); break; 63575115Sfenner default: puts ("hppa2.0"); break; 63675115Sfenner } break; 63775115Sfenner #else /* !defined(_SC_KERNEL_BITS) */ 63875115Sfenner puts ("hppa2.0"); break; 63975115Sfenner #endif 64075115Sfenner default: puts ("hppa1.0"); break; 64175115Sfenner } 64275115Sfenner exit (0); 64375115Sfenner } 64475115SfennerEOF 645127668Sbms (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 646127668Sbms test -z "$HP_ARCH" && HP_ARCH=hppa 647127668Sbms fi ;; 64817680Spst esac 649127668Sbms if [ ${HP_ARCH} = "hppa2.0w" ] 650127668Sbms then 651214478Srpaulo eval $set_cc_for_build 652214478Srpaulo 653214478Srpaulo # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 654214478Srpaulo # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 655214478Srpaulo # generating 64-bit code. GNU and HP use different nomenclature: 656214478Srpaulo # 657214478Srpaulo # $ CC_FOR_BUILD=cc ./config.guess 658214478Srpaulo # => hppa2.0w-hp-hpux11.23 659214478Srpaulo # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 660214478Srpaulo # => hppa64-hp-hpux11.23 661214478Srpaulo 662214478Srpaulo if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | 663214478Srpaulo grep -q __LP64__ 664127668Sbms then 665127668Sbms HP_ARCH="hppa2.0w" 666127668Sbms else 667127668Sbms HP_ARCH="hppa64" 668127668Sbms fi 669127668Sbms fi 67017680Spst echo ${HP_ARCH}-hp-hpux${HPUX_REV} 671214478Srpaulo exit ;; 67298524Sfenner ia64:HP-UX:*:*) 67398524Sfenner HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 67498524Sfenner echo ia64-hp-hpux${HPUX_REV} 675214478Srpaulo exit ;; 67617680Spst 3050*:HI-UX:*:*) 677127668Sbms eval $set_cc_for_build 67875115Sfenner sed 's/^ //' << EOF >$dummy.c 67917680Spst #include <unistd.h> 68017680Spst int 68117680Spst main () 68217680Spst { 68317680Spst long cpu = sysconf (_SC_CPU_VERSION); 68417680Spst /* The order matters, because CPU_IS_HP_MC68K erroneously returns 68517680Spst true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 68617680Spst results, however. */ 68717680Spst if (CPU_IS_PA_RISC (cpu)) 68817680Spst { 68917680Spst switch (cpu) 69017680Spst { 69117680Spst case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 69217680Spst case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 69317680Spst case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 69417680Spst default: puts ("hppa-hitachi-hiuxwe2"); break; 69517680Spst } 69617680Spst } 69717680Spst else if (CPU_IS_HP_MC68K (cpu)) 69817680Spst puts ("m68k-hitachi-hiuxwe2"); 69917680Spst else puts ("unknown-hitachi-hiuxwe2"); 70017680Spst exit (0); 70117680Spst } 70217680SpstEOF 703214478Srpaulo $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 704214478Srpaulo { echo "$SYSTEM_NAME"; exit; } 70517680Spst echo unknown-hitachi-hiuxwe2 706214478Srpaulo exit ;; 70717680Spst 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 70817680Spst echo hppa1.1-hp-bsd 709214478Srpaulo exit ;; 71017680Spst 9000/8??:4.3bsd:*:*) 71117680Spst echo hppa1.0-hp-bsd 712214478Srpaulo exit ;; 713127668Sbms *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 71475115Sfenner echo hppa1.0-hp-mpeix 715214478Srpaulo exit ;; 71617680Spst hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 71717680Spst echo hppa1.1-hp-osf 718214478Srpaulo exit ;; 71917680Spst hp8??:OSF1:*:*) 72017680Spst echo hppa1.0-hp-osf 721214478Srpaulo exit ;; 72298524Sfenner i*86:OSF1:*:*) 72326180Sfenner if [ -x /usr/sbin/sysversion ] ; then 72426180Sfenner echo ${UNAME_MACHINE}-unknown-osf1mk 72526180Sfenner else 72626180Sfenner echo ${UNAME_MACHINE}-unknown-osf1 72726180Sfenner fi 728214478Srpaulo exit ;; 72917680Spst parisc*:Lites*:*:*) 73017680Spst echo hppa1.1-hp-lites 731214478Srpaulo exit ;; 73217680Spst C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 73317680Spst echo c1-convex-bsd 734214478Srpaulo exit ;; 73517680Spst C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 73617680Spst if getsysinfo -f scalar_acc 73717680Spst then echo c32-convex-bsd 73817680Spst else echo c2-convex-bsd 73917680Spst fi 740214478Srpaulo exit ;; 74117680Spst C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 74217680Spst echo c34-convex-bsd 743214478Srpaulo exit ;; 74417680Spst C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 74517680Spst echo c38-convex-bsd 746214478Srpaulo exit ;; 74717680Spst C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 74817680Spst echo c4-convex-bsd 749214478Srpaulo exit ;; 75017680Spst CRAY*Y-MP:*:*:*) 751127668Sbms echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 752214478Srpaulo exit ;; 75326180Sfenner CRAY*[A-Z]90:*:*:*) 75426180Sfenner echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 75526180Sfenner | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 756127668Sbms -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 757127668Sbms -e 's/\.[^.]*$/.X/' 758214478Srpaulo exit ;; 75926180Sfenner CRAY*TS:*:*:*) 76075115Sfenner echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 761214478Srpaulo exit ;; 76275115Sfenner CRAY*T3E:*:*:*) 76375115Sfenner echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 764214478Srpaulo exit ;; 76575115Sfenner CRAY*SV1:*:*:*) 76675115Sfenner echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 767214478Srpaulo exit ;; 768127668Sbms *:UNICOS/mp:*:*) 769214478Srpaulo echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 770214478Srpaulo exit ;; 77198524Sfenner F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 77298524Sfenner FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 77375115Sfenner FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 77426180Sfenner FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 77598524Sfenner echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 776214478Srpaulo exit ;; 777127668Sbms 5000:UNIX_System_V:4.*:*) 778127668Sbms FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 779127668Sbms FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` 780127668Sbms echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 781214478Srpaulo exit ;; 78298524Sfenner i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 78326180Sfenner echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 784214478Srpaulo exit ;; 78575115Sfenner sparc*:BSD/OS:*:*) 78675115Sfenner echo sparc-unknown-bsdi${UNAME_RELEASE} 787214478Srpaulo exit ;; 78875115Sfenner *:BSD/OS:*:*) 78975115Sfenner echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 790214478Srpaulo exit ;; 79117680Spst *:FreeBSD:*:*) 792214478Srpaulo case ${UNAME_MACHINE} in 793214478Srpaulo pc98) 794214478Srpaulo echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 795214478Srpaulo amd64) 796214478Srpaulo echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 797214478Srpaulo *) 798214478Srpaulo echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 799214478Srpaulo esac 800214478Srpaulo exit ;; 80117680Spst i*:CYGWIN*:*) 80275115Sfenner echo ${UNAME_MACHINE}-pc-cygwin 803214478Srpaulo exit ;; 804214478Srpaulo *:MINGW*:*) 80575115Sfenner echo ${UNAME_MACHINE}-pc-mingw32 806214478Srpaulo exit ;; 807214478Srpaulo i*:windows32*:*) 808214478Srpaulo # uname -m includes "-pc" on this system. 809214478Srpaulo echo ${UNAME_MACHINE}-mingw32 810214478Srpaulo exit ;; 81175115Sfenner i*:PW*:*) 81275115Sfenner echo ${UNAME_MACHINE}-pc-pw32 813214478Srpaulo exit ;; 814214478Srpaulo *:Interix*:*) 815214478Srpaulo case ${UNAME_MACHINE} in 816214478Srpaulo x86) 817214478Srpaulo echo i586-pc-interix${UNAME_RELEASE} 818214478Srpaulo exit ;; 819214478Srpaulo authenticamd | genuineintel | EM64T) 820214478Srpaulo echo x86_64-unknown-interix${UNAME_RELEASE} 821214478Srpaulo exit ;; 822214478Srpaulo IA64) 823214478Srpaulo echo ia64-unknown-interix${UNAME_RELEASE} 824214478Srpaulo exit ;; 825214478Srpaulo esac ;; 826127668Sbms [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 827127668Sbms echo i${UNAME_MACHINE}-pc-mks 828214478Srpaulo exit ;; 829214478Srpaulo 8664:Windows_NT:*) 830214478Srpaulo echo x86_64-pc-mks 831214478Srpaulo exit ;; 83275115Sfenner i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 83375115Sfenner # How do we know it's Interix rather than the generic POSIX subsystem? 83475115Sfenner # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 83575115Sfenner # UNAME_MACHINE based on the output of uname instead of i386? 836127668Sbms echo i586-pc-interix 837214478Srpaulo exit ;; 83875115Sfenner i*:UWIN*:*) 83975115Sfenner echo ${UNAME_MACHINE}-pc-uwin 840214478Srpaulo exit ;; 841214478Srpaulo amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 842214478Srpaulo echo x86_64-unknown-cygwin 843214478Srpaulo exit ;; 84417680Spst p*:CYGWIN*:*) 84575115Sfenner echo powerpcle-unknown-cygwin 846214478Srpaulo exit ;; 84717680Spst prep*:SunOS:5.*:*) 84817680Spst echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 849214478Srpaulo exit ;; 85017680Spst *:GNU:*:*) 851127668Sbms # the GNU system 85275115Sfenner echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 853214478Srpaulo exit ;; 854127668Sbms *:GNU/*:*:*) 855127668Sbms # other systems with GNU libc and userland 856127668Sbms echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu 857214478Srpaulo exit ;; 85875115Sfenner i*86:Minix:*:*) 85975115Sfenner echo ${UNAME_MACHINE}-pc-minix 860214478Srpaulo exit ;; 861214478Srpaulo alpha:Linux:*:*) 862214478Srpaulo case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 863214478Srpaulo EV5) UNAME_MACHINE=alphaev5 ;; 864214478Srpaulo EV56) UNAME_MACHINE=alphaev56 ;; 865214478Srpaulo PCA56) UNAME_MACHINE=alphapca56 ;; 866214478Srpaulo PCA57) UNAME_MACHINE=alphapca56 ;; 867214478Srpaulo EV6) UNAME_MACHINE=alphaev6 ;; 868214478Srpaulo EV67) UNAME_MACHINE=alphaev67 ;; 869214478Srpaulo EV68*) UNAME_MACHINE=alphaev68 ;; 870214478Srpaulo esac 871214478Srpaulo objdump --private-headers /bin/sh | grep -q ld.so.1 872214478Srpaulo if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi 873214478Srpaulo echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 874214478Srpaulo exit ;; 87598524Sfenner arm*:Linux:*:*) 876214478Srpaulo eval $set_cc_for_build 877214478Srpaulo if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ 878214478Srpaulo | grep -q __ARM_EABI__ 879214478Srpaulo then 880214478Srpaulo echo ${UNAME_MACHINE}-unknown-linux-gnu 881214478Srpaulo else 882214478Srpaulo echo ${UNAME_MACHINE}-unknown-linux-gnueabi 883214478Srpaulo fi 884214478Srpaulo exit ;; 885214478Srpaulo avr32*:Linux:*:*) 88698524Sfenner echo ${UNAME_MACHINE}-unknown-linux-gnu 887214478Srpaulo exit ;; 888127668Sbms cris:Linux:*:*) 889127668Sbms echo cris-axis-linux-gnu 890214478Srpaulo exit ;; 891214478Srpaulo crisv32:Linux:*:*) 892214478Srpaulo echo crisv32-axis-linux-gnu 893214478Srpaulo exit ;; 894214478Srpaulo frv:Linux:*:*) 895214478Srpaulo echo frv-unknown-linux-gnu 896214478Srpaulo exit ;; 897214478Srpaulo i*86:Linux:*:*) 898214478Srpaulo LIBC=gnu 899214478Srpaulo eval $set_cc_for_build 900214478Srpaulo sed 's/^ //' << EOF >$dummy.c 901214478Srpaulo #ifdef __dietlibc__ 902214478Srpaulo LIBC=dietlibc 903214478Srpaulo #endif 904214478SrpauloEOF 905214478Srpaulo eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` 906214478Srpaulo echo "${UNAME_MACHINE}-pc-linux-${LIBC}" 907214478Srpaulo exit ;; 90898524Sfenner ia64:Linux:*:*) 909127668Sbms echo ${UNAME_MACHINE}-unknown-linux-gnu 910214478Srpaulo exit ;; 911214478Srpaulo m32r*:Linux:*:*) 912214478Srpaulo echo ${UNAME_MACHINE}-unknown-linux-gnu 913214478Srpaulo exit ;; 91498524Sfenner m68*:Linux:*:*) 91598524Sfenner echo ${UNAME_MACHINE}-unknown-linux-gnu 916214478Srpaulo exit ;; 917214478Srpaulo mips:Linux:*:* | mips64:Linux:*:*) 918127668Sbms eval $set_cc_for_build 919127668Sbms sed 's/^ //' << EOF >$dummy.c 920127668Sbms #undef CPU 921214478Srpaulo #undef ${UNAME_MACHINE} 922214478Srpaulo #undef ${UNAME_MACHINE}el 923127668Sbms #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 924214478Srpaulo CPU=${UNAME_MACHINE}el 925127668Sbms #else 926127668Sbms #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 927214478Srpaulo CPU=${UNAME_MACHINE} 928127668Sbms #else 929127668Sbms CPU= 930127668Sbms #endif 931127668Sbms #endif 93298524SfennerEOF 933214478Srpaulo eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` 934214478Srpaulo test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 93598524Sfenner ;; 936214478Srpaulo or32:Linux:*:*) 937214478Srpaulo echo or32-unknown-linux-gnu 938214478Srpaulo exit ;; 939214478Srpaulo padre:Linux:*:*) 940214478Srpaulo echo sparc-unknown-linux-gnu 941214478Srpaulo exit ;; 942214478Srpaulo parisc64:Linux:*:* | hppa64:Linux:*:*) 943214478Srpaulo echo hppa64-unknown-linux-gnu 944214478Srpaulo exit ;; 94598524Sfenner parisc:Linux:*:* | hppa:Linux:*:*) 94698524Sfenner # Look for CPU level 94798524Sfenner case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 94898524Sfenner PA7*) echo hppa1.1-unknown-linux-gnu ;; 94998524Sfenner PA8*) echo hppa2.0-unknown-linux-gnu ;; 95098524Sfenner *) echo hppa-unknown-linux-gnu ;; 95198524Sfenner esac 952214478Srpaulo exit ;; 953214478Srpaulo ppc64:Linux:*:*) 954214478Srpaulo echo powerpc64-unknown-linux-gnu 955214478Srpaulo exit ;; 956214478Srpaulo ppc:Linux:*:*) 957214478Srpaulo echo powerpc-unknown-linux-gnu 958214478Srpaulo exit ;; 95998524Sfenner s390:Linux:*:* | s390x:Linux:*:*) 96098524Sfenner echo ${UNAME_MACHINE}-ibm-linux 961214478Srpaulo exit ;; 962127668Sbms sh64*:Linux:*:*) 963127668Sbms echo ${UNAME_MACHINE}-unknown-linux-gnu 964214478Srpaulo exit ;; 96598524Sfenner sh*:Linux:*:*) 96698524Sfenner echo ${UNAME_MACHINE}-unknown-linux-gnu 967214478Srpaulo exit ;; 96898524Sfenner sparc:Linux:*:* | sparc64:Linux:*:*) 96998524Sfenner echo ${UNAME_MACHINE}-unknown-linux-gnu 970214478Srpaulo exit ;; 971214478Srpaulo vax:Linux:*:*) 972214478Srpaulo echo ${UNAME_MACHINE}-dec-linux-gnu 973214478Srpaulo exit ;; 97498524Sfenner x86_64:Linux:*:*) 97598524Sfenner echo x86_64-unknown-linux-gnu 976214478Srpaulo exit ;; 977214478Srpaulo xtensa*:Linux:*:*) 978214478Srpaulo echo ${UNAME_MACHINE}-unknown-linux-gnu 979214478Srpaulo exit ;; 98098524Sfenner i*86:DYNIX/ptx:4*:*) 981127668Sbms # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 982127668Sbms # earlier versions are messed up and put the nodename in both 983127668Sbms # sysname and nodename. 98417680Spst echo i386-sequent-sysv4 985214478Srpaulo exit ;; 98698524Sfenner i*86:UNIX_SV:4.2MP:2.*) 98775115Sfenner # Unixware is an offshoot of SVR4, but it has its own version 98875115Sfenner # number series starting with 2... 98975115Sfenner # I am not positive that other SVR4 systems won't match this, 99075115Sfenner # I just have to hope. -- rms. 99175115Sfenner # Use sysv4.2uw... so that sysv4* matches it. 99275115Sfenner echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 993214478Srpaulo exit ;; 994127668Sbms i*86:OS/2:*:*) 995127668Sbms # If we were able to find `uname', then EMX Unix compatibility 996127668Sbms # is probably installed. 997127668Sbms echo ${UNAME_MACHINE}-pc-os2-emx 998214478Srpaulo exit ;; 999127668Sbms i*86:XTS-300:*:STOP) 1000127668Sbms echo ${UNAME_MACHINE}-unknown-stop 1001214478Srpaulo exit ;; 1002127668Sbms i*86:atheos:*:*) 1003127668Sbms echo ${UNAME_MACHINE}-unknown-atheos 1004214478Srpaulo exit ;; 1005214478Srpaulo i*86:syllable:*:*) 1006214478Srpaulo echo ${UNAME_MACHINE}-pc-syllable 1007214478Srpaulo exit ;; 1008214478Srpaulo i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) 1009127668Sbms echo i386-unknown-lynxos${UNAME_RELEASE} 1010214478Srpaulo exit ;; 1011127668Sbms i*86:*DOS:*:*) 1012127668Sbms echo ${UNAME_MACHINE}-pc-msdosdjgpp 1013214478Srpaulo exit ;; 101498524Sfenner i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 101575115Sfenner UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 101617680Spst if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 101775115Sfenner echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 101817680Spst else 101975115Sfenner echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 102017680Spst fi 1021214478Srpaulo exit ;; 1022214478Srpaulo i*86:*:5:[678]*) 1023214478Srpaulo # UnixWare 7.x, OpenUNIX and OpenServer 6. 1024127668Sbms case `/bin/uname -X | grep "^Machine"` in 1025127668Sbms *486*) UNAME_MACHINE=i486 ;; 1026127668Sbms *Pentium) UNAME_MACHINE=i586 ;; 1027127668Sbms *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 1028127668Sbms esac 1029127668Sbms echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 1030214478Srpaulo exit ;; 103198524Sfenner i*86:*:3.2:*) 103217680Spst if test -f /usr/options/cb.name; then 103317680Spst UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 103426180Sfenner echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 103517680Spst elif /bin/uname -X 2>/dev/null >/dev/null ; then 1036127668Sbms UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 1037127668Sbms (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 1038127668Sbms (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 103917680Spst && UNAME_MACHINE=i586 1040127668Sbms (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 104175115Sfenner && UNAME_MACHINE=i686 1042127668Sbms (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 104375115Sfenner && UNAME_MACHINE=i686 104426180Sfenner echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 104517680Spst else 104626180Sfenner echo ${UNAME_MACHINE}-pc-sysv32 104717680Spst fi 1048214478Srpaulo exit ;; 104975115Sfenner pc:*:*:*) 105075115Sfenner # Left here for compatibility: 105175115Sfenner # uname -m prints for DJGPP always 'pc', but it prints nothing about 1052214478Srpaulo # the processor, so we play safe by assuming i586. 1053214478Srpaulo # Note: whatever this is, it MUST be the same as what config.sub 1054214478Srpaulo # prints for the "djgpp" host, or else GDB configury will decide that 1055214478Srpaulo # this is a cross-build. 1056214478Srpaulo echo i586-pc-msdosdjgpp 1057214478Srpaulo exit ;; 105817680Spst Intel:Mach:3*:*) 105926180Sfenner echo i386-pc-mach3 1060214478Srpaulo exit ;; 106117680Spst paragon:*:*:*) 106217680Spst echo i860-intel-osf1 1063214478Srpaulo exit ;; 106417680Spst i860:*:4.*:*) # i860-SVR4 106517680Spst if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 106617680Spst echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 106717680Spst else # Add other i860-SVR4 vendors below as they are discovered. 106817680Spst echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 106917680Spst fi 1070214478Srpaulo exit ;; 107117680Spst mini*:CTIX:SYS*5:*) 107217680Spst # "miniframe" 107317680Spst echo m68010-convergent-sysv 1074214478Srpaulo exit ;; 1075127668Sbms mc68k:UNIX:SYSTEM5:3.51m) 1076127668Sbms echo m68k-convergent-sysv 1077214478Srpaulo exit ;; 1078127668Sbms M680?0:D-NIX:5.3:*) 1079127668Sbms echo m68k-diab-dnix 1080214478Srpaulo exit ;; 1081214478Srpaulo M68*:*:R3V[5678]*:*) 1082214478Srpaulo test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 1083214478Srpaulo 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) 108426180Sfenner OS_REL='' 108526180Sfenner test -r /etc/.relid \ 108626180Sfenner && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 108726180Sfenner /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1088214478Srpaulo && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 108926180Sfenner /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1090214478Srpaulo && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 109117680Spst 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 109226180Sfenner /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1093214478Srpaulo && { echo i486-ncr-sysv4; exit; } ;; 1094214478Srpaulo NCR*:*:4.2:* | MPRAS*:*:4.2:*) 1095214478Srpaulo OS_REL='.3' 1096214478Srpaulo test -r /etc/.relid \ 1097214478Srpaulo && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1098214478Srpaulo /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1099214478Srpaulo && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 1100214478Srpaulo /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1101214478Srpaulo && { echo i586-ncr-sysv4.3${OS_REL}; exit; } 1102214478Srpaulo /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ 1103214478Srpaulo && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 110498524Sfenner m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 110526180Sfenner echo m68k-unknown-lynxos${UNAME_RELEASE} 1106214478Srpaulo exit ;; 110717680Spst mc68030:UNIX_System_V:4.*:*) 110817680Spst echo m68k-atari-sysv4 1109214478Srpaulo exit ;; 111026180Sfenner TSUNAMI:LynxOS:2.*:*) 111126180Sfenner echo sparc-unknown-lynxos${UNAME_RELEASE} 1112214478Srpaulo exit ;; 111398524Sfenner rs6000:LynxOS:2.*:*) 111426180Sfenner echo rs6000-unknown-lynxos${UNAME_RELEASE} 1115214478Srpaulo exit ;; 1116214478Srpaulo PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) 111798524Sfenner echo powerpc-unknown-lynxos${UNAME_RELEASE} 1118214478Srpaulo exit ;; 111926180Sfenner SM[BE]S:UNIX_SV:*:*) 112026180Sfenner echo mips-dde-sysv${UNAME_RELEASE} 1121214478Srpaulo exit ;; 112275115Sfenner RM*:ReliantUNIX-*:*:*) 112375115Sfenner echo mips-sni-sysv4 1124214478Srpaulo exit ;; 112517680Spst RM*:SINIX-*:*:*) 112617680Spst echo mips-sni-sysv4 1127214478Srpaulo exit ;; 112817680Spst *:SINIX-*:*:*) 112917680Spst if uname -p 2>/dev/null >/dev/null ; then 113017680Spst UNAME_MACHINE=`(uname -p) 2>/dev/null` 113117680Spst echo ${UNAME_MACHINE}-sni-sysv4 113217680Spst else 113317680Spst echo ns32k-sni-sysv 113417680Spst fi 1135214478Srpaulo exit ;; 1136127668Sbms PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 1137127668Sbms # says <Richard.M.Bartel@ccMail.Census.GOV> 113875115Sfenner echo i586-unisys-sysv4 1139214478Srpaulo exit ;; 114026180Sfenner *:UNIX_System_V:4*:FTX*) 114126180Sfenner # From Gerald Hewes <hewes@openmarket.com>. 114226180Sfenner # How about differentiating between stratus architectures? -djm 114326180Sfenner echo hppa1.1-stratus-sysv4 1144214478Srpaulo exit ;; 114526180Sfenner *:*:*:FTX*) 114626180Sfenner # From seanf@swdc.stratus.com. 114726180Sfenner echo i860-stratus-sysv4 1148214478Srpaulo exit ;; 1149214478Srpaulo i*86:VOS:*:*) 1150214478Srpaulo # From Paul.Green@stratus.com. 1151214478Srpaulo echo ${UNAME_MACHINE}-stratus-vos 1152214478Srpaulo exit ;; 1153127668Sbms *:VOS:*:*) 1154127668Sbms # From Paul.Green@stratus.com. 1155127668Sbms echo hppa1.1-stratus-vos 1156214478Srpaulo exit ;; 115717680Spst mc68*:A/UX:*:*) 115817680Spst echo m68k-apple-aux${UNAME_RELEASE} 1159214478Srpaulo exit ;; 116075115Sfenner news*:NEWS-OS:6*:*) 116175115Sfenner echo mips-sony-newsos6 1162214478Srpaulo exit ;; 116375115Sfenner R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 116417680Spst if [ -d /usr/nec ]; then 116517680Spst echo mips-nec-sysv${UNAME_RELEASE} 116617680Spst else 116717680Spst echo mips-unknown-sysv${UNAME_RELEASE} 116817680Spst fi 1169214478Srpaulo exit ;; 117075115Sfenner BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 117175115Sfenner echo powerpc-be-beos 1172214478Srpaulo exit ;; 117375115Sfenner BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 117475115Sfenner echo powerpc-apple-beos 1175214478Srpaulo exit ;; 117675115Sfenner BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 117775115Sfenner echo i586-pc-beos 1178214478Srpaulo exit ;; 1179214478Srpaulo BePC:Haiku:*:*) # Haiku running on Intel PC compatible. 1180214478Srpaulo echo i586-pc-haiku 1181214478Srpaulo exit ;; 118275115Sfenner SX-4:SUPER-UX:*:*) 118375115Sfenner echo sx4-nec-superux${UNAME_RELEASE} 1184214478Srpaulo exit ;; 118575115Sfenner SX-5:SUPER-UX:*:*) 118675115Sfenner echo sx5-nec-superux${UNAME_RELEASE} 1187214478Srpaulo exit ;; 1188127668Sbms SX-6:SUPER-UX:*:*) 1189127668Sbms echo sx6-nec-superux${UNAME_RELEASE} 1190214478Srpaulo exit ;; 1191214478Srpaulo SX-7:SUPER-UX:*:*) 1192214478Srpaulo echo sx7-nec-superux${UNAME_RELEASE} 1193214478Srpaulo exit ;; 1194214478Srpaulo SX-8:SUPER-UX:*:*) 1195214478Srpaulo echo sx8-nec-superux${UNAME_RELEASE} 1196214478Srpaulo exit ;; 1197214478Srpaulo SX-8R:SUPER-UX:*:*) 1198214478Srpaulo echo sx8r-nec-superux${UNAME_RELEASE} 1199214478Srpaulo exit ;; 120075115Sfenner Power*:Rhapsody:*:*) 120175115Sfenner echo powerpc-apple-rhapsody${UNAME_RELEASE} 1202214478Srpaulo exit ;; 120375115Sfenner *:Rhapsody:*:*) 120475115Sfenner echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 1205214478Srpaulo exit ;; 120675115Sfenner *:Darwin:*:*) 1207214478Srpaulo UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 1208214478Srpaulo case $UNAME_PROCESSOR in 1209214478Srpaulo i386) 1210214478Srpaulo eval $set_cc_for_build 1211214478Srpaulo if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 1212214478Srpaulo if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ 1213214478Srpaulo (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 1214214478Srpaulo grep IS_64BIT_ARCH >/dev/null 1215214478Srpaulo then 1216214478Srpaulo UNAME_PROCESSOR="x86_64" 1217214478Srpaulo fi 1218214478Srpaulo fi ;; 1219214478Srpaulo unknown) UNAME_PROCESSOR=powerpc ;; 1220127668Sbms esac 1221127668Sbms echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 1222214478Srpaulo exit ;; 122375115Sfenner *:procnto*:*:* | *:QNX:[0123456789]*:*) 1224127668Sbms UNAME_PROCESSOR=`uname -p` 1225127668Sbms if test "$UNAME_PROCESSOR" = "x86"; then 1226127668Sbms UNAME_PROCESSOR=i386 122775115Sfenner UNAME_MACHINE=pc 122875115Sfenner fi 1229127668Sbms echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 1230214478Srpaulo exit ;; 123175115Sfenner *:QNX:*:4*) 123275115Sfenner echo i386-pc-qnx 1233214478Srpaulo exit ;; 1234214478Srpaulo NSE-?:NONSTOP_KERNEL:*:*) 1235214478Srpaulo echo nse-tandem-nsk${UNAME_RELEASE} 1236214478Srpaulo exit ;; 1237214478Srpaulo NSR-?:NONSTOP_KERNEL:*:*) 123875115Sfenner echo nsr-tandem-nsk${UNAME_RELEASE} 1239214478Srpaulo exit ;; 124075115Sfenner *:NonStop-UX:*:*) 124175115Sfenner echo mips-compaq-nonstopux 1242214478Srpaulo exit ;; 124375115Sfenner BS2000:POSIX*:*:*) 124475115Sfenner echo bs2000-siemens-sysv 1245214478Srpaulo exit ;; 124675115Sfenner DS/*:UNIX_System_V:*:*) 124775115Sfenner echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 1248214478Srpaulo exit ;; 124975115Sfenner *:Plan9:*:*) 125075115Sfenner # "uname -m" is not consistent, so use $cputype instead. 386 125175115Sfenner # is converted to i386 for consistency with other x86 125275115Sfenner # operating systems. 125375115Sfenner if test "$cputype" = "386"; then 125475115Sfenner UNAME_MACHINE=i386 125575115Sfenner else 125675115Sfenner UNAME_MACHINE="$cputype" 125775115Sfenner fi 125875115Sfenner echo ${UNAME_MACHINE}-unknown-plan9 1259214478Srpaulo exit ;; 126098524Sfenner *:TOPS-10:*:*) 126198524Sfenner echo pdp10-unknown-tops10 1262214478Srpaulo exit ;; 126398524Sfenner *:TENEX:*:*) 126498524Sfenner echo pdp10-unknown-tenex 1265214478Srpaulo exit ;; 126698524Sfenner KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 126798524Sfenner echo pdp10-dec-tops20 1268214478Srpaulo exit ;; 126998524Sfenner XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 127098524Sfenner echo pdp10-xkl-tops20 1271214478Srpaulo exit ;; 127298524Sfenner *:TOPS-20:*:*) 127398524Sfenner echo pdp10-unknown-tops20 1274214478Srpaulo exit ;; 127598524Sfenner *:ITS:*:*) 127698524Sfenner echo pdp10-unknown-its 1277214478Srpaulo exit ;; 1278127668Sbms SEI:*:*:SEIUX) 1279127668Sbms echo mips-sei-seiux${UNAME_RELEASE} 1280214478Srpaulo exit ;; 1281214478Srpaulo *:DragonFly:*:*) 1282214478Srpaulo echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 1283214478Srpaulo exit ;; 1284214478Srpaulo *:*VMS:*:*) 1285214478Srpaulo UNAME_MACHINE=`(uname -p) 2>/dev/null` 1286214478Srpaulo case "${UNAME_MACHINE}" in 1287214478Srpaulo A*) echo alpha-dec-vms ; exit ;; 1288214478Srpaulo I*) echo ia64-dec-vms ; exit ;; 1289214478Srpaulo V*) echo vax-dec-vms ; exit ;; 1290214478Srpaulo esac ;; 1291214478Srpaulo *:XENIX:*:SysV) 1292214478Srpaulo echo i386-pc-xenix 1293214478Srpaulo exit ;; 1294214478Srpaulo i*86:skyos:*:*) 1295214478Srpaulo echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' 1296214478Srpaulo exit ;; 1297214478Srpaulo i*86:rdos:*:*) 1298214478Srpaulo echo ${UNAME_MACHINE}-pc-rdos 1299214478Srpaulo exit ;; 1300214478Srpaulo i*86:AROS:*:*) 1301214478Srpaulo echo ${UNAME_MACHINE}-pc-aros 1302214478Srpaulo exit ;; 130317680Spstesac 130417680Spst 130517680Spst#echo '(No uname command or uname output not recognized.)' 1>&2 130617680Spst#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 130717680Spst 1308127668Sbmseval $set_cc_for_build 130975115Sfennercat >$dummy.c <<EOF 131017680Spst#ifdef _SEQUENT_ 131117680Spst# include <sys/types.h> 131217680Spst# include <sys/utsname.h> 131317680Spst#endif 131417680Spstmain () 131517680Spst{ 131617680Spst#if defined (sony) 131717680Spst#if defined (MIPSEB) 131817680Spst /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, 131917680Spst I don't know.... */ 132017680Spst printf ("mips-sony-bsd\n"); exit (0); 132117680Spst#else 132217680Spst#include <sys/param.h> 132317680Spst printf ("m68k-sony-newsos%s\n", 132417680Spst#ifdef NEWSOS4 132517680Spst "4" 132617680Spst#else 132717680Spst "" 132817680Spst#endif 132917680Spst ); exit (0); 133017680Spst#endif 133117680Spst#endif 133217680Spst 133317680Spst#if defined (__arm) && defined (__acorn) && defined (__unix) 1334214478Srpaulo printf ("arm-acorn-riscix\n"); exit (0); 133517680Spst#endif 133617680Spst 133717680Spst#if defined (hp300) && !defined (hpux) 133817680Spst printf ("m68k-hp-bsd\n"); exit (0); 133917680Spst#endif 134017680Spst 134117680Spst#if defined (NeXT) 134217680Spst#if !defined (__ARCHITECTURE__) 134317680Spst#define __ARCHITECTURE__ "m68k" 134417680Spst#endif 134517680Spst int version; 134617680Spst version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; 134775115Sfenner if (version < 4) 134875115Sfenner printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); 134975115Sfenner else 135075115Sfenner printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); 135117680Spst exit (0); 135217680Spst#endif 135317680Spst 135417680Spst#if defined (MULTIMAX) || defined (n16) 135517680Spst#if defined (UMAXV) 135617680Spst printf ("ns32k-encore-sysv\n"); exit (0); 135717680Spst#else 135817680Spst#if defined (CMU) 135917680Spst printf ("ns32k-encore-mach\n"); exit (0); 136017680Spst#else 136117680Spst printf ("ns32k-encore-bsd\n"); exit (0); 136217680Spst#endif 136317680Spst#endif 136417680Spst#endif 136517680Spst 136617680Spst#if defined (__386BSD__) 136726180Sfenner printf ("i386-pc-bsd\n"); exit (0); 136817680Spst#endif 136917680Spst 137017680Spst#if defined (sequent) 137117680Spst#if defined (i386) 137217680Spst printf ("i386-sequent-dynix\n"); exit (0); 137317680Spst#endif 137417680Spst#if defined (ns32000) 137517680Spst printf ("ns32k-sequent-dynix\n"); exit (0); 137617680Spst#endif 137717680Spst#endif 137817680Spst 137917680Spst#if defined (_SEQUENT_) 138017680Spst struct utsname un; 138117680Spst 138217680Spst uname(&un); 138317680Spst 138417680Spst if (strncmp(un.version, "V2", 2) == 0) { 138517680Spst printf ("i386-sequent-ptx2\n"); exit (0); 138617680Spst } 138717680Spst if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ 138817680Spst printf ("i386-sequent-ptx1\n"); exit (0); 138917680Spst } 139017680Spst printf ("i386-sequent-ptx\n"); exit (0); 139117680Spst 139217680Spst#endif 139317680Spst 139417680Spst#if defined (vax) 139598524Sfenner# if !defined (ultrix) 139698524Sfenner# include <sys/param.h> 139798524Sfenner# if defined (BSD) 139898524Sfenner# if BSD == 43 139998524Sfenner printf ("vax-dec-bsd4.3\n"); exit (0); 140098524Sfenner# else 140198524Sfenner# if BSD == 199006 140298524Sfenner printf ("vax-dec-bsd4.3reno\n"); exit (0); 140398524Sfenner# else 140498524Sfenner printf ("vax-dec-bsd\n"); exit (0); 140598524Sfenner# endif 140698524Sfenner# endif 140798524Sfenner# else 140898524Sfenner printf ("vax-dec-bsd\n"); exit (0); 140998524Sfenner# endif 141098524Sfenner# else 141198524Sfenner printf ("vax-dec-ultrix\n"); exit (0); 141298524Sfenner# endif 141317680Spst#endif 141417680Spst 141517680Spst#if defined (alliant) && defined (i860) 141617680Spst printf ("i860-alliant-bsd\n"); exit (0); 141717680Spst#endif 141817680Spst 141917680Spst exit (1); 142017680Spst} 142117680SpstEOF 142217680Spst 1423214478Srpaulo$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && 1424214478Srpaulo { echo "$SYSTEM_NAME"; exit; } 142517680Spst 142617680Spst# Apollos put the system type in the environment. 142717680Spst 1428214478Srpaulotest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } 142917680Spst 143017680Spst# Convex versions that predate uname can use getsysinfo(1) 143117680Spst 143217680Spstif [ -x /usr/convex/getsysinfo ] 143317680Spstthen 143417680Spst case `getsysinfo -f cpu_type` in 143517680Spst c1*) 143617680Spst echo c1-convex-bsd 1437214478Srpaulo exit ;; 143817680Spst c2*) 143917680Spst if getsysinfo -f scalar_acc 144017680Spst then echo c32-convex-bsd 144117680Spst else echo c2-convex-bsd 144217680Spst fi 1443214478Srpaulo exit ;; 144417680Spst c34*) 144517680Spst echo c34-convex-bsd 1446214478Srpaulo exit ;; 144717680Spst c38*) 144817680Spst echo c38-convex-bsd 1449214478Srpaulo exit ;; 145017680Spst c4*) 145117680Spst echo c4-convex-bsd 1452214478Srpaulo exit ;; 145317680Spst esac 145417680Spstfi 145517680Spst 145675115Sfennercat >&2 <<EOF 145775115Sfenner$0: unable to guess system type 145817680Spst 145998524SfennerThis script, last modified $timestamp, has failed to recognize 146098524Sfennerthe operating system you are using. It is advised that you 146198524Sfennerdownload the most up to date version of the config scripts from 146275115Sfenner 1463214478Srpaulo http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 1464214478Srpauloand 1465214478Srpaulo http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 146675115Sfenner 146775115SfennerIf the version you run ($0) is already up to date, please 146875115Sfennersend the following data and any information you think might be 146975115Sfennerpertinent to <config-patches@gnu.org> in order to provide the needed 147075115Sfennerinformation to handle your system. 147175115Sfenner 147298524Sfennerconfig.guess timestamp = $timestamp 147375115Sfenner 147475115Sfenneruname -m = `(uname -m) 2>/dev/null || echo unknown` 147575115Sfenneruname -r = `(uname -r) 2>/dev/null || echo unknown` 147675115Sfenneruname -s = `(uname -s) 2>/dev/null || echo unknown` 147775115Sfenneruname -v = `(uname -v) 2>/dev/null || echo unknown` 147875115Sfenner 147975115Sfenner/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 148075115Sfenner/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 148175115Sfenner 148275115Sfennerhostinfo = `(hostinfo) 2>/dev/null` 148375115Sfenner/bin/universe = `(/bin/universe) 2>/dev/null` 148475115Sfenner/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 148575115Sfenner/bin/arch = `(/bin/arch) 2>/dev/null` 148675115Sfenner/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 148775115Sfenner/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 148875115Sfenner 148975115SfennerUNAME_MACHINE = ${UNAME_MACHINE} 149075115SfennerUNAME_RELEASE = ${UNAME_RELEASE} 149175115SfennerUNAME_SYSTEM = ${UNAME_SYSTEM} 149275115SfennerUNAME_VERSION = ${UNAME_VERSION} 149375115SfennerEOF 149475115Sfenner 149517680Spstexit 1 149675115Sfenner 149775115Sfenner# Local variables: 149875115Sfenner# eval: (add-hook 'write-file-hooks 'time-stamp) 149975115Sfenner# time-stamp-start: "timestamp='" 150075115Sfenner# time-stamp-format: "%:y-%02m-%02d" 150175115Sfenner# time-stamp-end: "'" 150275115Sfenner# End: 1503