14edb46e9SPaul Traina#! /bin/sh 24edb46e9SPaul Traina# Attempt to guess a canonical system name. 35b0fe478SBruce M Simpson# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4*3c602fabSXin LI# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 5*3c602fabSXin LI# 2011, 2012 Free Software Foundation, Inc. 6685295f4SBill Fenner 7*3c602fabSXin LItimestamp='2012-02-10' 8685295f4SBill Fenner 94edb46e9SPaul Traina# This file is free software; you can redistribute it and/or modify it 104edb46e9SPaul Traina# under the terms of the GNU General Public License as published by 114edb46e9SPaul Traina# the Free Software Foundation; either version 2 of the License, or 124edb46e9SPaul Traina# (at your option) any later version. 134edb46e9SPaul Traina# 144edb46e9SPaul Traina# This program is distributed in the hope that it will be useful, but 154edb46e9SPaul Traina# WITHOUT ANY WARRANTY; without even the implied warranty of 164edb46e9SPaul Traina# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 174edb46e9SPaul Traina# General Public License for more details. 184edb46e9SPaul Traina# 194edb46e9SPaul Traina# You should have received a copy of the GNU General Public License 20*3c602fabSXin LI# along with this program; if not, see <http://www.gnu.org/licenses/>. 214edb46e9SPaul Traina# 224edb46e9SPaul Traina# As a special exception to the GNU General Public License, if you 234edb46e9SPaul Traina# distribute this file as part of a program that contains a 244edb46e9SPaul Traina# configuration script generated by Autoconf, you may include it under 254edb46e9SPaul Traina# the same distribution terms that you use for the rest of that program. 264edb46e9SPaul Traina 2727df3f5dSRui Paulo 2827df3f5dSRui Paulo# Originally written by Per Bothner. Please send patches (context 2927df3f5dSRui Paulo# diff format) to <config-patches@gnu.org> and include a ChangeLog 3027df3f5dSRui Paulo# entry. 314edb46e9SPaul Traina# 324edb46e9SPaul Traina# This script attempts to guess a canonical system name similar to 334edb46e9SPaul Traina# config.sub. If it succeeds, it prints the system name on stdout, and 344edb46e9SPaul Traina# exits with 0. Otherwise, it exits with 1. 354edb46e9SPaul Traina# 3627df3f5dSRui Paulo# You can get the latest version of this script from: 3727df3f5dSRui Paulo# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 384edb46e9SPaul Traina 39685295f4SBill Fennerme=`echo "$0" | sed -e 's,.*/,,'` 40685295f4SBill Fenner 41685295f4SBill Fennerusage="\ 42685295f4SBill FennerUsage: $0 [OPTION] 43685295f4SBill Fenner 44685295f4SBill FennerOutput the configuration name of the system \`$me' is run on. 45685295f4SBill Fenner 46685295f4SBill FennerOperation modes: 47685295f4SBill Fenner -h, --help print this help, then exit 48685295f4SBill Fenner -t, --time-stamp print date of last modification, then exit 49685295f4SBill Fenner -v, --version print version number, then exit 50685295f4SBill Fenner 51685295f4SBill FennerReport bugs and patches to <config-patches@gnu.org>." 52685295f4SBill Fenner 53685295f4SBill Fennerversion="\ 54685295f4SBill FennerGNU config.guess ($timestamp) 55685295f4SBill Fenner 56685295f4SBill FennerOriginally written by Per Bothner. 5727df3f5dSRui PauloCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 58*3c602fabSXin LI2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 59*3c602fabSXin LIFree Software Foundation, Inc. 60685295f4SBill Fenner 61685295f4SBill FennerThis is free software; see the source for copying conditions. There is NO 62685295f4SBill Fennerwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 63685295f4SBill Fenner 64685295f4SBill Fennerhelp=" 65685295f4SBill FennerTry \`$me --help' for more information." 66685295f4SBill Fenner 67685295f4SBill Fenner# Parse command line 68685295f4SBill Fennerwhile test $# -gt 0 ; do 69685295f4SBill Fenner case $1 in 70685295f4SBill Fenner --time-stamp | --time* | -t ) 7127df3f5dSRui Paulo echo "$timestamp" ; exit ;; 72685295f4SBill Fenner --version | -v ) 7327df3f5dSRui Paulo echo "$version" ; exit ;; 74685295f4SBill Fenner --help | --h* | -h ) 7527df3f5dSRui Paulo echo "$usage"; exit ;; 76685295f4SBill Fenner -- ) # Stop option processing 77685295f4SBill Fenner shift; break ;; 78685295f4SBill Fenner - ) # Use stdin as input. 79685295f4SBill Fenner break ;; 80685295f4SBill Fenner -* ) 81685295f4SBill Fenner echo "$me: invalid option $1$help" >&2 82685295f4SBill Fenner exit 1 ;; 83685295f4SBill Fenner * ) 84685295f4SBill Fenner break ;; 85685295f4SBill Fenner esac 86685295f4SBill Fennerdone 87685295f4SBill Fenner 88685295f4SBill Fennerif test $# != 0; then 89685295f4SBill Fenner echo "$me: too many arguments$help" >&2 90685295f4SBill Fenner exit 1 91685295f4SBill Fennerfi 92685295f4SBill Fenner 935b0fe478SBruce M Simpsontrap 'exit 1' 1 2 15 94685295f4SBill Fenner 955b0fe478SBruce M Simpson# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 965b0fe478SBruce M Simpson# compiler to aid in system detection is discouraged as it requires 975b0fe478SBruce M Simpson# temporary files to be created and, as you can see below, it is a 985b0fe478SBruce M Simpson# headache to deal with in a portable fashion. 99685295f4SBill Fenner 100685295f4SBill Fenner# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 101685295f4SBill Fenner# use `HOST_CC' if defined, but it is deprecated. 102685295f4SBill Fenner 1035b0fe478SBruce M Simpson# Portable tmp directory creation inspired by the Autoconf team. 1045b0fe478SBruce M Simpson 1055b0fe478SBruce M Simpsonset_cc_for_build=' 1065b0fe478SBruce M Simpsontrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; 1075b0fe478SBruce M Simpsontrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 1085b0fe478SBruce M Simpson: ${TMPDIR=/tmp} ; 10927df3f5dSRui Paulo { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 1105b0fe478SBruce M Simpson { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 1115b0fe478SBruce M Simpson { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || 1125b0fe478SBruce M Simpson { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; 1135b0fe478SBruce M Simpsondummy=$tmp/dummy ; 1145b0fe478SBruce M Simpsontmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; 115685295f4SBill Fennercase $CC_FOR_BUILD,$HOST_CC,$CC in 1165b0fe478SBruce M Simpson ,,) echo "int x;" > $dummy.c ; 1175b0fe478SBruce M Simpson for c in cc gcc c89 c99 ; do 1185b0fe478SBruce M Simpson if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then 1195b0fe478SBruce M Simpson CC_FOR_BUILD="$c"; break ; 1205b0fe478SBruce M Simpson fi ; 1215b0fe478SBruce M Simpson done ; 122685295f4SBill Fenner if test x"$CC_FOR_BUILD" = x ; then 1235b0fe478SBruce M Simpson CC_FOR_BUILD=no_compiler_found ; 124685295f4SBill Fenner fi 125685295f4SBill Fenner ;; 126685295f4SBill Fenner ,,*) CC_FOR_BUILD=$CC ;; 127685295f4SBill Fenner ,*,*) CC_FOR_BUILD=$HOST_CC ;; 12827df3f5dSRui Pauloesac ; set_cc_for_build= ;' 129685295f4SBill Fenner 1304edb46e9SPaul Traina# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 1315b0fe478SBruce M Simpson# (ghazi@noc.rutgers.edu 1994-08-24) 1324edb46e9SPaul Trainaif (test -f /.attbin/uname) >/dev/null 2>&1 ; then 1334edb46e9SPaul Traina PATH=$PATH:/.attbin ; export PATH 1344edb46e9SPaul Trainafi 1354edb46e9SPaul Traina 1364edb46e9SPaul TrainaUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 1374edb46e9SPaul TrainaUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 1384edb46e9SPaul TrainaUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 1394edb46e9SPaul TrainaUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 1404edb46e9SPaul Traina 1414edb46e9SPaul Traina# Note: order is significant - the case branches are not exclusive. 1424edb46e9SPaul Traina 1434edb46e9SPaul Trainacase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 144685295f4SBill Fenner *:NetBSD:*:*) 1455b0fe478SBruce M Simpson # NetBSD (nbsd) targets should (where applicable) match one or 146*3c602fabSXin LI # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, 147685295f4SBill Fenner # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 148685295f4SBill Fenner # switched to ELF, *-*-netbsd* would select the old 149685295f4SBill Fenner # object file format. This provides both forward 150685295f4SBill Fenner # compatibility and a consistent mechanism for selecting the 151685295f4SBill Fenner # object file format. 1525b0fe478SBruce M Simpson # 1535b0fe478SBruce M Simpson # Note: NetBSD doesn't particularly care about the vendor 1545b0fe478SBruce M Simpson # portion of the name. We always set it to "unknown". 1555b0fe478SBruce M Simpson sysctl="sysctl -n hw.machine_arch" 1565b0fe478SBruce M Simpson UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ 1575b0fe478SBruce M Simpson /usr/sbin/$sysctl 2>/dev/null || echo unknown)` 1585b0fe478SBruce M Simpson case "${UNAME_MACHINE_ARCH}" in 1595b0fe478SBruce M Simpson armeb) machine=armeb-unknown ;; 1605b0fe478SBruce M Simpson arm*) machine=arm-unknown ;; 1615b0fe478SBruce M Simpson sh3el) machine=shl-unknown ;; 1625b0fe478SBruce M Simpson sh3eb) machine=sh-unknown ;; 16327df3f5dSRui Paulo sh5el) machine=sh5le-unknown ;; 1645b0fe478SBruce M Simpson *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 165685295f4SBill Fenner esac 166685295f4SBill Fenner # The Operating System including object format, if it has switched 167685295f4SBill Fenner # to ELF recently, or will in the future. 1685b0fe478SBruce M Simpson case "${UNAME_MACHINE_ARCH}" in 1695b0fe478SBruce M Simpson arm*|i386|m68k|ns32k|sh3*|sparc|vax) 1705b0fe478SBruce M Simpson eval $set_cc_for_build 171685295f4SBill Fenner if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 17227df3f5dSRui Paulo | grep -q __ELF__ 173685295f4SBill Fenner then 174685295f4SBill Fenner # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 175685295f4SBill Fenner # Return netbsd for either. FIX? 176685295f4SBill Fenner os=netbsd 177685295f4SBill Fenner else 178685295f4SBill Fenner os=netbsdelf 179685295f4SBill Fenner fi 180685295f4SBill Fenner ;; 181685295f4SBill Fenner *) 182685295f4SBill Fenner os=netbsd 183685295f4SBill Fenner ;; 184685295f4SBill Fenner esac 185685295f4SBill Fenner # The OS release 1865b0fe478SBruce M Simpson # Debian GNU/NetBSD machines have a different userland, and 1875b0fe478SBruce M Simpson # thus, need a distinct triplet. However, they do not need 1885b0fe478SBruce M Simpson # kernel version information, so it can be replaced with a 1895b0fe478SBruce M Simpson # suitable tag, in the style of linux-gnu. 1905b0fe478SBruce M Simpson case "${UNAME_VERSION}" in 1915b0fe478SBruce M Simpson Debian*) 1925b0fe478SBruce M Simpson release='-gnu' 1935b0fe478SBruce M Simpson ;; 1945b0fe478SBruce M Simpson *) 195685295f4SBill Fenner release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` 1965b0fe478SBruce M Simpson ;; 1975b0fe478SBruce M Simpson esac 198685295f4SBill Fenner # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 199685295f4SBill Fenner # contains redundant information, the shorter form: 200685295f4SBill Fenner # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 201685295f4SBill Fenner echo "${machine}-${os}${release}" 20227df3f5dSRui Paulo exit ;; 2035b0fe478SBruce M Simpson *:OpenBSD:*:*) 20427df3f5dSRui Paulo UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 20527df3f5dSRui Paulo echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 20627df3f5dSRui Paulo exit ;; 20727df3f5dSRui Paulo *:ekkoBSD:*:*) 20827df3f5dSRui Paulo echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 20927df3f5dSRui Paulo exit ;; 21027df3f5dSRui Paulo *:SolidBSD:*:*) 21127df3f5dSRui Paulo echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} 21227df3f5dSRui Paulo exit ;; 21327df3f5dSRui Paulo macppc:MirBSD:*:*) 21427df3f5dSRui Paulo echo powerpc-unknown-mirbsd${UNAME_RELEASE} 21527df3f5dSRui Paulo exit ;; 21627df3f5dSRui Paulo *:MirBSD:*:*) 21727df3f5dSRui Paulo echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 21827df3f5dSRui Paulo exit ;; 2194edb46e9SPaul Traina alpha:OSF1:*:*) 22027df3f5dSRui Paulo case $UNAME_RELEASE in 22127df3f5dSRui Paulo *4.0) 222685295f4SBill Fenner UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 22327df3f5dSRui Paulo ;; 22427df3f5dSRui Paulo *5.*) 22527df3f5dSRui Paulo UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 22627df3f5dSRui Paulo ;; 22727df3f5dSRui Paulo esac 2285b0fe478SBruce M Simpson # According to Compaq, /usr/sbin/psrinfo has been available on 2295b0fe478SBruce M Simpson # OSF/1 and Tru64 systems produced since 1995. I hope that 2305b0fe478SBruce M Simpson # covers most systems running today. This code pipes the CPU 2315b0fe478SBruce M Simpson # types through head -n 1, so we only detect the type of CPU 0. 2325b0fe478SBruce M Simpson ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 2335b0fe478SBruce M Simpson case "$ALPHA_CPU_TYPE" in 2345b0fe478SBruce M Simpson "EV4 (21064)") 2355b0fe478SBruce M Simpson UNAME_MACHINE="alpha" ;; 2365b0fe478SBruce M Simpson "EV4.5 (21064)") 2375b0fe478SBruce M Simpson UNAME_MACHINE="alpha" ;; 2385b0fe478SBruce M Simpson "LCA4 (21066/21068)") 2395b0fe478SBruce M Simpson UNAME_MACHINE="alpha" ;; 2405b0fe478SBruce M Simpson "EV5 (21164)") 2415b0fe478SBruce M Simpson UNAME_MACHINE="alphaev5" ;; 2425b0fe478SBruce M Simpson "EV5.6 (21164A)") 2435b0fe478SBruce M Simpson UNAME_MACHINE="alphaev56" ;; 2445b0fe478SBruce M Simpson "EV5.6 (21164PC)") 2455b0fe478SBruce M Simpson UNAME_MACHINE="alphapca56" ;; 2465b0fe478SBruce M Simpson "EV5.7 (21164PC)") 2475b0fe478SBruce M Simpson UNAME_MACHINE="alphapca57" ;; 2485b0fe478SBruce M Simpson "EV6 (21264)") 2495b0fe478SBruce M Simpson UNAME_MACHINE="alphaev6" ;; 2505b0fe478SBruce M Simpson "EV6.7 (21264A)") 2515b0fe478SBruce M Simpson UNAME_MACHINE="alphaev67" ;; 2525b0fe478SBruce M Simpson "EV6.8CB (21264C)") 2535b0fe478SBruce M Simpson UNAME_MACHINE="alphaev68" ;; 2545b0fe478SBruce M Simpson "EV6.8AL (21264B)") 2555b0fe478SBruce M Simpson UNAME_MACHINE="alphaev68" ;; 2565b0fe478SBruce M Simpson "EV6.8CX (21264D)") 2575b0fe478SBruce M Simpson UNAME_MACHINE="alphaev68" ;; 2585b0fe478SBruce M Simpson "EV6.9A (21264/EV69A)") 2595b0fe478SBruce M Simpson UNAME_MACHINE="alphaev69" ;; 2605b0fe478SBruce M Simpson "EV7 (21364)") 2615b0fe478SBruce M Simpson UNAME_MACHINE="alphaev7" ;; 2625b0fe478SBruce M Simpson "EV7.9 (21364A)") 2635b0fe478SBruce M Simpson UNAME_MACHINE="alphaev79" ;; 2645b0fe478SBruce M Simpson esac 26527df3f5dSRui Paulo # A Pn.n version is a patched version. 2664edb46e9SPaul Traina # A Vn.n version is a released version. 2674edb46e9SPaul Traina # A Tn.n version is a released field test version. 2684edb46e9SPaul Traina # A Xn.n version is an unreleased experimental baselevel. 2694edb46e9SPaul Traina # 1.2 uses "1.2" for uname -r. 27027df3f5dSRui Paulo echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 271*3c602fabSXin LI # Reset EXIT trap before exiting to avoid spurious non-zero exit code. 272*3c602fabSXin LI exitcode=$? 273*3c602fabSXin LI trap '' 0 274*3c602fabSXin LI exit $exitcode ;; 275685295f4SBill Fenner Alpha\ *:Windows_NT*:*) 276685295f4SBill Fenner # How do we know it's Interix rather than the generic POSIX subsystem? 277685295f4SBill Fenner # Should we change UNAME_MACHINE based on the output of uname instead 278685295f4SBill Fenner # of the specific Alpha model? 279685295f4SBill Fenner echo alpha-pc-interix 28027df3f5dSRui Paulo exit ;; 2814edb46e9SPaul Traina 21064:Windows_NT:50:3) 2824edb46e9SPaul Traina echo alpha-dec-winnt3.5 28327df3f5dSRui Paulo exit ;; 2844edb46e9SPaul Traina Amiga*:UNIX_System_V:4.0:*) 285685295f4SBill Fenner echo m68k-unknown-sysv4 28627df3f5dSRui Paulo exit ;; 287685295f4SBill Fenner *:[Aa]miga[Oo][Ss]:*:*) 288685295f4SBill Fenner echo ${UNAME_MACHINE}-unknown-amigaos 28927df3f5dSRui Paulo exit ;; 2905b0fe478SBruce M Simpson *:[Mm]orph[Oo][Ss]:*:*) 2915b0fe478SBruce M Simpson echo ${UNAME_MACHINE}-unknown-morphos 29227df3f5dSRui Paulo exit ;; 293685295f4SBill Fenner *:OS/390:*:*) 294685295f4SBill Fenner echo i370-ibm-openedition 29527df3f5dSRui Paulo exit ;; 29627df3f5dSRui Paulo *:z/VM:*:*) 29727df3f5dSRui Paulo echo s390-ibm-zvmoe 29827df3f5dSRui Paulo exit ;; 2995b0fe478SBruce M Simpson *:OS400:*:*) 3005b0fe478SBruce M Simpson echo powerpc-ibm-os400 30127df3f5dSRui Paulo exit ;; 3024edb46e9SPaul Traina arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 3034edb46e9SPaul Traina echo arm-acorn-riscix${UNAME_RELEASE} 30427df3f5dSRui Paulo exit ;; 30527df3f5dSRui Paulo arm:riscos:*:*|arm:RISCOS:*:*) 30627df3f5dSRui Paulo echo arm-unknown-riscos 30727df3f5dSRui Paulo exit ;; 308a90e161bSBill Fenner SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 309685295f4SBill Fenner echo hppa1.1-hitachi-hiuxmpp 31027df3f5dSRui Paulo exit ;; 311685295f4SBill Fenner Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 3124de76e31SBill Fenner # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 3134edb46e9SPaul Traina if test "`(/bin/universe) 2>/dev/null`" = att ; then 3144edb46e9SPaul Traina echo pyramid-pyramid-sysv3 3154edb46e9SPaul Traina else 3164edb46e9SPaul Traina echo pyramid-pyramid-bsd 3174edb46e9SPaul Traina fi 31827df3f5dSRui Paulo exit ;; 319685295f4SBill Fenner NILE*:*:*:dcosx) 3204de76e31SBill Fenner echo pyramid-pyramid-svr4 32127df3f5dSRui Paulo exit ;; 3225b0fe478SBruce M Simpson DRS?6000:unix:4.0:6*) 3235b0fe478SBruce M Simpson echo sparc-icl-nx6 32427df3f5dSRui Paulo exit ;; 32527df3f5dSRui Paulo DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 3265b0fe478SBruce M Simpson case `/usr/bin/uname -p` in 32727df3f5dSRui Paulo sparc) echo sparc-icl-nx7; exit ;; 3285b0fe478SBruce M Simpson esac ;; 32927df3f5dSRui Paulo s390x:SunOS:*:*) 33027df3f5dSRui Paulo echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 33127df3f5dSRui Paulo exit ;; 332685295f4SBill Fenner sun4H:SunOS:5.*:*) 333685295f4SBill Fenner echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 33427df3f5dSRui Paulo exit ;; 3354de76e31SBill Fenner sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 3364edb46e9SPaul Traina echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 33727df3f5dSRui Paulo exit ;; 33827df3f5dSRui Paulo i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) 33927df3f5dSRui Paulo echo i386-pc-auroraux${UNAME_RELEASE} 34027df3f5dSRui Paulo exit ;; 34127df3f5dSRui Paulo i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) 34227df3f5dSRui Paulo eval $set_cc_for_build 34327df3f5dSRui Paulo SUN_ARCH="i386" 34427df3f5dSRui Paulo # If there is a compiler, see if it is configured for 64-bit objects. 34527df3f5dSRui Paulo # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. 34627df3f5dSRui Paulo # This test works for both compilers. 34727df3f5dSRui Paulo if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 34827df3f5dSRui Paulo if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ 34927df3f5dSRui Paulo (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 35027df3f5dSRui Paulo grep IS_64BIT_ARCH >/dev/null 35127df3f5dSRui Paulo then 35227df3f5dSRui Paulo SUN_ARCH="x86_64" 35327df3f5dSRui Paulo fi 35427df3f5dSRui Paulo fi 35527df3f5dSRui Paulo echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 35627df3f5dSRui Paulo exit ;; 3574edb46e9SPaul Traina sun4*:SunOS:6*:*) 3584edb46e9SPaul Traina # According to config.sub, this is the proper way to canonicalize 3594edb46e9SPaul Traina # SunOS6. Hard to guess exactly what SunOS6 will be like, but 3604edb46e9SPaul Traina # it's likely to be more like Solaris than SunOS4. 3614edb46e9SPaul Traina echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 36227df3f5dSRui Paulo exit ;; 3634edb46e9SPaul Traina sun4*:SunOS:*:*) 3644edb46e9SPaul Traina case "`/usr/bin/arch -k`" in 3654edb46e9SPaul Traina Series*|S4*) 3664edb46e9SPaul Traina UNAME_RELEASE=`uname -v` 3674edb46e9SPaul Traina ;; 3684edb46e9SPaul Traina esac 3694edb46e9SPaul Traina # Japanese Language versions have a version number like `4.1.3-JL'. 3704edb46e9SPaul Traina echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 37127df3f5dSRui Paulo exit ;; 3724edb46e9SPaul Traina sun3*:SunOS:*:*) 3734edb46e9SPaul Traina echo m68k-sun-sunos${UNAME_RELEASE} 37427df3f5dSRui Paulo exit ;; 375685295f4SBill Fenner sun*:*:4.2BSD:*) 3765b0fe478SBruce M Simpson UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 377685295f4SBill Fenner test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 378685295f4SBill Fenner case "`/bin/arch`" in 379685295f4SBill Fenner sun3) 380685295f4SBill Fenner echo m68k-sun-sunos${UNAME_RELEASE} 381685295f4SBill Fenner ;; 382685295f4SBill Fenner sun4) 383685295f4SBill Fenner echo sparc-sun-sunos${UNAME_RELEASE} 384685295f4SBill Fenner ;; 385685295f4SBill Fenner esac 38627df3f5dSRui Paulo exit ;; 3874de76e31SBill Fenner aushp:SunOS:*:*) 3884de76e31SBill Fenner echo sparc-auspex-sunos${UNAME_RELEASE} 38927df3f5dSRui Paulo exit ;; 390685295f4SBill Fenner # The situation for MiNT is a little confusing. The machine name 391685295f4SBill Fenner # can be virtually everything (everything which is not 392685295f4SBill Fenner # "atarist" or "atariste" at least should have a processor 393685295f4SBill Fenner # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 394685295f4SBill Fenner # to the lowercase version "mint" (or "freemint"). Finally 395685295f4SBill Fenner # the system name "TOS" denotes a system which is actually not 396685295f4SBill Fenner # MiNT. But MiNT is downward compatible to TOS, so this should 397685295f4SBill Fenner # be no problem. 398685295f4SBill Fenner atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 399685295f4SBill Fenner echo m68k-atari-mint${UNAME_RELEASE} 40027df3f5dSRui Paulo exit ;; 401685295f4SBill Fenner atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 402685295f4SBill Fenner echo m68k-atari-mint${UNAME_RELEASE} 40327df3f5dSRui Paulo exit ;; 404685295f4SBill Fenner *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 405685295f4SBill Fenner echo m68k-atari-mint${UNAME_RELEASE} 40627df3f5dSRui Paulo exit ;; 407685295f4SBill Fenner milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 408685295f4SBill Fenner echo m68k-milan-mint${UNAME_RELEASE} 40927df3f5dSRui Paulo exit ;; 410685295f4SBill Fenner hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 411685295f4SBill Fenner echo m68k-hades-mint${UNAME_RELEASE} 41227df3f5dSRui Paulo exit ;; 413685295f4SBill Fenner *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 414685295f4SBill Fenner echo m68k-unknown-mint${UNAME_RELEASE} 41527df3f5dSRui Paulo exit ;; 41627df3f5dSRui Paulo m68k:machten:*:*) 41727df3f5dSRui Paulo echo m68k-apple-machten${UNAME_RELEASE} 41827df3f5dSRui Paulo exit ;; 4194de76e31SBill Fenner powerpc:machten:*:*) 4204de76e31SBill Fenner echo powerpc-apple-machten${UNAME_RELEASE} 42127df3f5dSRui Paulo exit ;; 4224de76e31SBill Fenner RISC*:Mach:*:*) 4234de76e31SBill Fenner echo mips-dec-mach_bsd4.3 42427df3f5dSRui Paulo exit ;; 4254edb46e9SPaul Traina RISC*:ULTRIX:*:*) 4264edb46e9SPaul Traina echo mips-dec-ultrix${UNAME_RELEASE} 42727df3f5dSRui Paulo exit ;; 4284edb46e9SPaul Traina VAX*:ULTRIX*:*:*) 4294edb46e9SPaul Traina echo vax-dec-ultrix${UNAME_RELEASE} 43027df3f5dSRui Paulo exit ;; 431685295f4SBill Fenner 2020:CLIX:*:* | 2430:CLIX:*:*) 432685295f4SBill Fenner echo clipper-intergraph-clix${UNAME_RELEASE} 43327df3f5dSRui Paulo exit ;; 4344de76e31SBill Fenner mips:*:*:UMIPS | mips:*:*:RISCos) 4355b0fe478SBruce M Simpson eval $set_cc_for_build 436685295f4SBill Fenner sed 's/^ //' << EOF >$dummy.c 437685295f4SBill Fenner#ifdef __cplusplus 438685295f4SBill Fenner#include <stdio.h> /* for printf() prototype */ 439685295f4SBill Fenner int main (int argc, char *argv[]) { 440685295f4SBill Fenner#else 441685295f4SBill Fenner int main (argc, argv) int argc; char *argv[]; { 442685295f4SBill Fenner#endif 4434de76e31SBill Fenner #if defined (host_mips) && defined (MIPSEB) 4444de76e31SBill Fenner #if defined (SYSTYPE_SYSV) 4454de76e31SBill Fenner printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 4464de76e31SBill Fenner #endif 4474de76e31SBill Fenner #if defined (SYSTYPE_SVR4) 4484de76e31SBill Fenner printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 4494de76e31SBill Fenner #endif 4504de76e31SBill Fenner #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 4514de76e31SBill Fenner printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 4524de76e31SBill Fenner #endif 4534de76e31SBill Fenner #endif 4544de76e31SBill Fenner exit (-1); 4554de76e31SBill Fenner } 4564de76e31SBill FennerEOF 45727df3f5dSRui Paulo $CC_FOR_BUILD -o $dummy $dummy.c && 45827df3f5dSRui Paulo dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 45927df3f5dSRui Paulo SYSTEM_NAME=`$dummy $dummyarg` && 46027df3f5dSRui Paulo { echo "$SYSTEM_NAME"; exit; } 4614edb46e9SPaul Traina echo mips-mips-riscos${UNAME_RELEASE} 46227df3f5dSRui Paulo exit ;; 463a90e161bSBill Fenner Motorola:PowerMAX_OS:*:*) 464a90e161bSBill Fenner echo powerpc-motorola-powermax 46527df3f5dSRui Paulo exit ;; 4665b0fe478SBruce M Simpson Motorola:*:4.3:PL8-*) 4675b0fe478SBruce M Simpson echo powerpc-harris-powermax 46827df3f5dSRui Paulo exit ;; 4695b0fe478SBruce M Simpson Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 4705b0fe478SBruce M Simpson echo powerpc-harris-powermax 47127df3f5dSRui Paulo exit ;; 4724edb46e9SPaul Traina Night_Hawk:Power_UNIX:*:*) 4734edb46e9SPaul Traina echo powerpc-harris-powerunix 47427df3f5dSRui Paulo exit ;; 4754edb46e9SPaul Traina m88k:CX/UX:7*:*) 4764edb46e9SPaul Traina echo m88k-harris-cxux7 47727df3f5dSRui Paulo exit ;; 4784edb46e9SPaul Traina m88k:*:4*:R4*) 4794edb46e9SPaul Traina echo m88k-motorola-sysv4 48027df3f5dSRui Paulo exit ;; 4814edb46e9SPaul Traina m88k:*:3*:R3*) 4824edb46e9SPaul Traina echo m88k-motorola-sysv3 48327df3f5dSRui Paulo exit ;; 4844edb46e9SPaul Traina AViiON:dgux:*:*) 4854edb46e9SPaul Traina # DG/UX returns AViiON for all architectures 4864edb46e9SPaul Traina UNAME_PROCESSOR=`/usr/bin/uname -p` 487685295f4SBill Fenner if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 488685295f4SBill Fenner then 489685295f4SBill Fenner if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 490685295f4SBill Fenner [ ${TARGET_BINARY_INTERFACE}x = x ] 491685295f4SBill Fenner then 4924edb46e9SPaul Traina echo m88k-dg-dgux${UNAME_RELEASE} 4934edb46e9SPaul Traina else 4944edb46e9SPaul Traina echo m88k-dg-dguxbcs${UNAME_RELEASE} 4954edb46e9SPaul Traina fi 496685295f4SBill Fenner else 497685295f4SBill Fenner echo i586-dg-dgux${UNAME_RELEASE} 4984edb46e9SPaul Traina fi 49927df3f5dSRui Paulo exit ;; 5004edb46e9SPaul Traina M88*:DolphinOS:*:*) # DolphinOS (SVR3) 5014edb46e9SPaul Traina echo m88k-dolphin-sysv3 50227df3f5dSRui Paulo exit ;; 5034edb46e9SPaul Traina M88*:*:R3*:*) 5044edb46e9SPaul Traina # Delta 88k system running SVR3 5054edb46e9SPaul Traina echo m88k-motorola-sysv3 50627df3f5dSRui Paulo exit ;; 5074edb46e9SPaul Traina XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 5084edb46e9SPaul Traina echo m88k-tektronix-sysv3 50927df3f5dSRui Paulo exit ;; 5104edb46e9SPaul Traina Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 5114edb46e9SPaul Traina echo m68k-tektronix-bsd 51227df3f5dSRui Paulo exit ;; 5134edb46e9SPaul Traina *:IRIX*:*:*) 5144edb46e9SPaul Traina echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 51527df3f5dSRui Paulo exit ;; 5164edb46e9SPaul Traina ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 5174edb46e9SPaul Traina echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 51827df3f5dSRui Paulo exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 519a90e161bSBill Fenner i*86:AIX:*:*) 5204edb46e9SPaul Traina echo i386-ibm-aix 52127df3f5dSRui Paulo exit ;; 522a90e161bSBill Fenner ia64:AIX:*:*) 523a90e161bSBill Fenner if [ -x /usr/bin/oslevel ] ; then 524a90e161bSBill Fenner IBM_REV=`/usr/bin/oslevel` 525a90e161bSBill Fenner else 526a90e161bSBill Fenner IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 527a90e161bSBill Fenner fi 528a90e161bSBill Fenner echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 52927df3f5dSRui Paulo exit ;; 5304edb46e9SPaul Traina *:AIX:2:3) 5314edb46e9SPaul Traina if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 5325b0fe478SBruce M Simpson eval $set_cc_for_build 533685295f4SBill Fenner sed 's/^ //' << EOF >$dummy.c 5344edb46e9SPaul Traina #include <sys/systemcfg.h> 5354edb46e9SPaul Traina 5364edb46e9SPaul Traina main() 5374edb46e9SPaul Traina { 5384edb46e9SPaul Traina if (!__power_pc()) 5394edb46e9SPaul Traina exit(1); 5404edb46e9SPaul Traina puts("powerpc-ibm-aix3.2.5"); 5414edb46e9SPaul Traina exit(0); 5424edb46e9SPaul Traina } 5434edb46e9SPaul TrainaEOF 54427df3f5dSRui Paulo if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 54527df3f5dSRui Paulo then 54627df3f5dSRui Paulo echo "$SYSTEM_NAME" 54727df3f5dSRui Paulo else 5484edb46e9SPaul Traina echo rs6000-ibm-aix3.2.5 54927df3f5dSRui Paulo fi 5504edb46e9SPaul Traina elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 5514edb46e9SPaul Traina echo rs6000-ibm-aix3.2.4 5524edb46e9SPaul Traina else 5534edb46e9SPaul Traina echo rs6000-ibm-aix3.2 5544edb46e9SPaul Traina fi 55527df3f5dSRui Paulo exit ;; 556*3c602fabSXin LI *:AIX:*:[4567]) 5575b0fe478SBruce M Simpson IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 558a90e161bSBill Fenner if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 5594edb46e9SPaul Traina IBM_ARCH=rs6000 5604edb46e9SPaul Traina else 5614edb46e9SPaul Traina IBM_ARCH=powerpc 5624edb46e9SPaul Traina fi 5634edb46e9SPaul Traina if [ -x /usr/bin/oslevel ] ; then 5644edb46e9SPaul Traina IBM_REV=`/usr/bin/oslevel` 5654edb46e9SPaul Traina else 566a90e161bSBill Fenner IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 5674edb46e9SPaul Traina fi 5684edb46e9SPaul Traina echo ${IBM_ARCH}-ibm-aix${IBM_REV} 56927df3f5dSRui Paulo exit ;; 5704edb46e9SPaul Traina *:AIX:*:*) 5714edb46e9SPaul Traina echo rs6000-ibm-aix 57227df3f5dSRui Paulo exit ;; 5734edb46e9SPaul Traina ibmrt:4.4BSD:*|romp-ibm:BSD:*) 5744edb46e9SPaul Traina echo romp-ibm-bsd4.4 57527df3f5dSRui Paulo exit ;; 576685295f4SBill Fenner ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 5774edb46e9SPaul Traina echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 57827df3f5dSRui Paulo exit ;; # report: romp-ibm BSD 4.3 5794edb46e9SPaul Traina *:BOSX:*:*) 5804edb46e9SPaul Traina echo rs6000-bull-bosx 58127df3f5dSRui Paulo exit ;; 5824edb46e9SPaul Traina DPX/2?00:B.O.S.:*:*) 5834edb46e9SPaul Traina echo m68k-bull-sysv3 58427df3f5dSRui Paulo exit ;; 5854edb46e9SPaul Traina 9000/[34]??:4.3bsd:1.*:*) 5864edb46e9SPaul Traina echo m68k-hp-bsd 58727df3f5dSRui Paulo exit ;; 5884edb46e9SPaul Traina hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 5894edb46e9SPaul Traina echo m68k-hp-bsd4.4 59027df3f5dSRui Paulo exit ;; 591685295f4SBill Fenner 9000/[34678]??:HP-UX:*:*) 592685295f4SBill Fenner HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 5934edb46e9SPaul Traina case "${UNAME_MACHINE}" in 5944edb46e9SPaul Traina 9000/31? ) HP_ARCH=m68000 ;; 5954edb46e9SPaul Traina 9000/[34]?? ) HP_ARCH=m68k ;; 596685295f4SBill Fenner 9000/[678][0-9][0-9]) 597685295f4SBill Fenner if [ -x /usr/bin/getconf ]; then 598685295f4SBill Fenner sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 599685295f4SBill Fenner sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 600685295f4SBill Fenner case "${sc_cpu_version}" in 601685295f4SBill Fenner 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 602685295f4SBill Fenner 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 603685295f4SBill Fenner 532) # CPU_PA_RISC2_0 604685295f4SBill Fenner case "${sc_kernel_bits}" in 605685295f4SBill Fenner 32) HP_ARCH="hppa2.0n" ;; 606685295f4SBill Fenner 64) HP_ARCH="hppa2.0w" ;; 6075b0fe478SBruce M Simpson '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 608685295f4SBill Fenner esac ;; 6094edb46e9SPaul Traina esac 6105b0fe478SBruce M Simpson fi 611685295f4SBill Fenner if [ "${HP_ARCH}" = "" ]; then 6125b0fe478SBruce M Simpson eval $set_cc_for_build 613685295f4SBill Fenner sed 's/^ //' << EOF >$dummy.c 614685295f4SBill Fenner 615685295f4SBill Fenner #define _HPUX_SOURCE 616685295f4SBill Fenner #include <stdlib.h> 617685295f4SBill Fenner #include <unistd.h> 618685295f4SBill Fenner 619685295f4SBill Fenner int main () 620685295f4SBill Fenner { 621685295f4SBill Fenner #if defined(_SC_KERNEL_BITS) 622685295f4SBill Fenner long bits = sysconf(_SC_KERNEL_BITS); 623685295f4SBill Fenner #endif 624685295f4SBill Fenner long cpu = sysconf (_SC_CPU_VERSION); 625685295f4SBill Fenner 626685295f4SBill Fenner switch (cpu) 627685295f4SBill Fenner { 628685295f4SBill Fenner case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 629685295f4SBill Fenner case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 630685295f4SBill Fenner case CPU_PA_RISC2_0: 631685295f4SBill Fenner #if defined(_SC_KERNEL_BITS) 632685295f4SBill Fenner switch (bits) 633685295f4SBill Fenner { 634685295f4SBill Fenner case 64: puts ("hppa2.0w"); break; 635685295f4SBill Fenner case 32: puts ("hppa2.0n"); break; 636685295f4SBill Fenner default: puts ("hppa2.0"); break; 637685295f4SBill Fenner } break; 638685295f4SBill Fenner #else /* !defined(_SC_KERNEL_BITS) */ 639685295f4SBill Fenner puts ("hppa2.0"); break; 640685295f4SBill Fenner #endif 641685295f4SBill Fenner default: puts ("hppa1.0"); break; 642685295f4SBill Fenner } 643685295f4SBill Fenner exit (0); 644685295f4SBill Fenner } 645685295f4SBill FennerEOF 6465b0fe478SBruce M Simpson (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 6475b0fe478SBruce M Simpson test -z "$HP_ARCH" && HP_ARCH=hppa 648685295f4SBill Fenner fi ;; 649685295f4SBill Fenner esac 6505b0fe478SBruce M Simpson if [ ${HP_ARCH} = "hppa2.0w" ] 6515b0fe478SBruce M Simpson then 65227df3f5dSRui Paulo eval $set_cc_for_build 65327df3f5dSRui Paulo 65427df3f5dSRui Paulo # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 65527df3f5dSRui Paulo # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 65627df3f5dSRui Paulo # generating 64-bit code. GNU and HP use different nomenclature: 65727df3f5dSRui Paulo # 65827df3f5dSRui Paulo # $ CC_FOR_BUILD=cc ./config.guess 65927df3f5dSRui Paulo # => hppa2.0w-hp-hpux11.23 66027df3f5dSRui Paulo # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 66127df3f5dSRui Paulo # => hppa64-hp-hpux11.23 66227df3f5dSRui Paulo 66327df3f5dSRui Paulo if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | 66427df3f5dSRui Paulo grep -q __LP64__ 6655b0fe478SBruce M Simpson then 6665b0fe478SBruce M Simpson HP_ARCH="hppa2.0w" 6675b0fe478SBruce M Simpson else 6685b0fe478SBruce M Simpson HP_ARCH="hppa64" 6695b0fe478SBruce M Simpson fi 6705b0fe478SBruce M Simpson fi 6714edb46e9SPaul Traina echo ${HP_ARCH}-hp-hpux${HPUX_REV} 67227df3f5dSRui Paulo exit ;; 673a90e161bSBill Fenner ia64:HP-UX:*:*) 674a90e161bSBill Fenner HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 675a90e161bSBill Fenner echo ia64-hp-hpux${HPUX_REV} 67627df3f5dSRui Paulo exit ;; 6774edb46e9SPaul Traina 3050*:HI-UX:*:*) 6785b0fe478SBruce M Simpson eval $set_cc_for_build 679685295f4SBill Fenner sed 's/^ //' << EOF >$dummy.c 6804edb46e9SPaul Traina #include <unistd.h> 6814edb46e9SPaul Traina int 6824edb46e9SPaul Traina main () 6834edb46e9SPaul Traina { 6844edb46e9SPaul Traina long cpu = sysconf (_SC_CPU_VERSION); 6854edb46e9SPaul Traina /* The order matters, because CPU_IS_HP_MC68K erroneously returns 6864edb46e9SPaul Traina true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 6874edb46e9SPaul Traina results, however. */ 6884edb46e9SPaul Traina if (CPU_IS_PA_RISC (cpu)) 6894edb46e9SPaul Traina { 6904edb46e9SPaul Traina switch (cpu) 6914edb46e9SPaul Traina { 6924edb46e9SPaul Traina case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 6934edb46e9SPaul Traina case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 6944edb46e9SPaul Traina case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 6954edb46e9SPaul Traina default: puts ("hppa-hitachi-hiuxwe2"); break; 6964edb46e9SPaul Traina } 6974edb46e9SPaul Traina } 6984edb46e9SPaul Traina else if (CPU_IS_HP_MC68K (cpu)) 6994edb46e9SPaul Traina puts ("m68k-hitachi-hiuxwe2"); 7004edb46e9SPaul Traina else puts ("unknown-hitachi-hiuxwe2"); 7014edb46e9SPaul Traina exit (0); 7024edb46e9SPaul Traina } 7034edb46e9SPaul TrainaEOF 70427df3f5dSRui Paulo $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 70527df3f5dSRui Paulo { echo "$SYSTEM_NAME"; exit; } 7064edb46e9SPaul Traina echo unknown-hitachi-hiuxwe2 70727df3f5dSRui Paulo exit ;; 7084edb46e9SPaul Traina 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 7094edb46e9SPaul Traina echo hppa1.1-hp-bsd 71027df3f5dSRui Paulo exit ;; 7114edb46e9SPaul Traina 9000/8??:4.3bsd:*:*) 7124edb46e9SPaul Traina echo hppa1.0-hp-bsd 71327df3f5dSRui Paulo exit ;; 7145b0fe478SBruce M Simpson *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 715685295f4SBill Fenner echo hppa1.0-hp-mpeix 71627df3f5dSRui Paulo exit ;; 7174edb46e9SPaul Traina hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 7184edb46e9SPaul Traina echo hppa1.1-hp-osf 71927df3f5dSRui Paulo exit ;; 7204edb46e9SPaul Traina hp8??:OSF1:*:*) 7214edb46e9SPaul Traina echo hppa1.0-hp-osf 72227df3f5dSRui Paulo exit ;; 723a90e161bSBill Fenner i*86:OSF1:*:*) 7244de76e31SBill Fenner if [ -x /usr/sbin/sysversion ] ; then 7254de76e31SBill Fenner echo ${UNAME_MACHINE}-unknown-osf1mk 7264de76e31SBill Fenner else 7274de76e31SBill Fenner echo ${UNAME_MACHINE}-unknown-osf1 7284de76e31SBill Fenner fi 72927df3f5dSRui Paulo exit ;; 7304edb46e9SPaul Traina parisc*:Lites*:*:*) 7314edb46e9SPaul Traina echo hppa1.1-hp-lites 73227df3f5dSRui Paulo exit ;; 7334edb46e9SPaul Traina C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 7344edb46e9SPaul Traina echo c1-convex-bsd 73527df3f5dSRui Paulo exit ;; 7364edb46e9SPaul Traina C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 7374edb46e9SPaul Traina if getsysinfo -f scalar_acc 7384edb46e9SPaul Traina then echo c32-convex-bsd 7394edb46e9SPaul Traina else echo c2-convex-bsd 7404edb46e9SPaul Traina fi 74127df3f5dSRui Paulo exit ;; 7424edb46e9SPaul Traina C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 7434edb46e9SPaul Traina echo c34-convex-bsd 74427df3f5dSRui Paulo exit ;; 7454edb46e9SPaul Traina C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 7464edb46e9SPaul Traina echo c38-convex-bsd 74727df3f5dSRui Paulo exit ;; 7484edb46e9SPaul Traina C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 7494edb46e9SPaul Traina echo c4-convex-bsd 75027df3f5dSRui Paulo exit ;; 7514edb46e9SPaul Traina CRAY*Y-MP:*:*:*) 7525b0fe478SBruce M Simpson echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 75327df3f5dSRui Paulo exit ;; 7544de76e31SBill Fenner CRAY*[A-Z]90:*:*:*) 7554de76e31SBill Fenner echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 7564de76e31SBill Fenner | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 7575b0fe478SBruce M Simpson -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 7585b0fe478SBruce M Simpson -e 's/\.[^.]*$/.X/' 75927df3f5dSRui Paulo exit ;; 7604de76e31SBill Fenner CRAY*TS:*:*:*) 761685295f4SBill Fenner echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 76227df3f5dSRui Paulo exit ;; 763685295f4SBill Fenner CRAY*T3E:*:*:*) 764685295f4SBill Fenner echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 76527df3f5dSRui Paulo exit ;; 766685295f4SBill Fenner CRAY*SV1:*:*:*) 767685295f4SBill Fenner echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 76827df3f5dSRui Paulo exit ;; 7695b0fe478SBruce M Simpson *:UNICOS/mp:*:*) 77027df3f5dSRui Paulo echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 77127df3f5dSRui Paulo exit ;; 772a90e161bSBill Fenner F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 773a90e161bSBill Fenner FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 774685295f4SBill Fenner FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 7754de76e31SBill Fenner FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 776a90e161bSBill Fenner echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 77727df3f5dSRui Paulo exit ;; 7785b0fe478SBruce M Simpson 5000:UNIX_System_V:4.*:*) 7795b0fe478SBruce M Simpson FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 7805b0fe478SBruce M Simpson FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` 7815b0fe478SBruce M Simpson echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 78227df3f5dSRui Paulo exit ;; 783a90e161bSBill Fenner i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 7844de76e31SBill Fenner echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 78527df3f5dSRui Paulo exit ;; 786685295f4SBill Fenner sparc*:BSD/OS:*:*) 787685295f4SBill Fenner echo sparc-unknown-bsdi${UNAME_RELEASE} 78827df3f5dSRui Paulo exit ;; 789685295f4SBill Fenner *:BSD/OS:*:*) 790685295f4SBill Fenner echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 79127df3f5dSRui Paulo exit ;; 7924edb46e9SPaul Traina *:FreeBSD:*:*) 793*3c602fabSXin LI UNAME_PROCESSOR=`/usr/bin/uname -p` 794*3c602fabSXin LI case ${UNAME_PROCESSOR} in 79527df3f5dSRui Paulo amd64) 79627df3f5dSRui Paulo echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 79727df3f5dSRui Paulo *) 798*3c602fabSXin LI echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 79927df3f5dSRui Paulo esac 80027df3f5dSRui Paulo exit ;; 8014edb46e9SPaul Traina i*:CYGWIN*:*) 802685295f4SBill Fenner echo ${UNAME_MACHINE}-pc-cygwin 80327df3f5dSRui Paulo exit ;; 80427df3f5dSRui Paulo *:MINGW*:*) 805685295f4SBill Fenner echo ${UNAME_MACHINE}-pc-mingw32 80627df3f5dSRui Paulo exit ;; 807*3c602fabSXin LI i*:MSYS*:*) 808*3c602fabSXin LI echo ${UNAME_MACHINE}-pc-msys 809*3c602fabSXin LI exit ;; 81027df3f5dSRui Paulo i*:windows32*:*) 81127df3f5dSRui Paulo # uname -m includes "-pc" on this system. 81227df3f5dSRui Paulo echo ${UNAME_MACHINE}-mingw32 81327df3f5dSRui Paulo exit ;; 814685295f4SBill Fenner i*:PW*:*) 815685295f4SBill Fenner echo ${UNAME_MACHINE}-pc-pw32 81627df3f5dSRui Paulo exit ;; 81727df3f5dSRui Paulo *:Interix*:*) 81827df3f5dSRui Paulo case ${UNAME_MACHINE} in 81927df3f5dSRui Paulo x86) 82027df3f5dSRui Paulo echo i586-pc-interix${UNAME_RELEASE} 82127df3f5dSRui Paulo exit ;; 82227df3f5dSRui Paulo authenticamd | genuineintel | EM64T) 82327df3f5dSRui Paulo echo x86_64-unknown-interix${UNAME_RELEASE} 82427df3f5dSRui Paulo exit ;; 82527df3f5dSRui Paulo IA64) 82627df3f5dSRui Paulo echo ia64-unknown-interix${UNAME_RELEASE} 82727df3f5dSRui Paulo exit ;; 82827df3f5dSRui Paulo esac ;; 8295b0fe478SBruce M Simpson [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 8305b0fe478SBruce M Simpson echo i${UNAME_MACHINE}-pc-mks 83127df3f5dSRui Paulo exit ;; 83227df3f5dSRui Paulo 8664:Windows_NT:*) 83327df3f5dSRui Paulo echo x86_64-pc-mks 83427df3f5dSRui Paulo exit ;; 835685295f4SBill Fenner i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 836685295f4SBill Fenner # How do we know it's Interix rather than the generic POSIX subsystem? 837685295f4SBill Fenner # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 838685295f4SBill Fenner # UNAME_MACHINE based on the output of uname instead of i386? 8395b0fe478SBruce M Simpson echo i586-pc-interix 84027df3f5dSRui Paulo exit ;; 841685295f4SBill Fenner i*:UWIN*:*) 842685295f4SBill Fenner echo ${UNAME_MACHINE}-pc-uwin 84327df3f5dSRui Paulo exit ;; 84427df3f5dSRui Paulo amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 84527df3f5dSRui Paulo echo x86_64-unknown-cygwin 84627df3f5dSRui Paulo exit ;; 8474edb46e9SPaul Traina p*:CYGWIN*:*) 848685295f4SBill Fenner echo powerpcle-unknown-cygwin 84927df3f5dSRui Paulo exit ;; 8504edb46e9SPaul Traina prep*:SunOS:5.*:*) 8514edb46e9SPaul Traina echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 85227df3f5dSRui Paulo exit ;; 8534edb46e9SPaul Traina *:GNU:*:*) 8545b0fe478SBruce M Simpson # the GNU system 855685295f4SBill Fenner echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 85627df3f5dSRui Paulo exit ;; 8575b0fe478SBruce M Simpson *:GNU/*:*:*) 8585b0fe478SBruce M Simpson # other systems with GNU libc and userland 8595b0fe478SBruce M Simpson echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu 86027df3f5dSRui Paulo exit ;; 861685295f4SBill Fenner i*86:Minix:*:*) 862685295f4SBill Fenner echo ${UNAME_MACHINE}-pc-minix 86327df3f5dSRui Paulo exit ;; 864*3c602fabSXin LI aarch64:Linux:*:*) 865*3c602fabSXin LI echo ${UNAME_MACHINE}-unknown-linux-gnu 866*3c602fabSXin LI exit ;; 867*3c602fabSXin LI aarch64_be:Linux:*:*) 868*3c602fabSXin LI UNAME_MACHINE=aarch64_be 869*3c602fabSXin LI echo ${UNAME_MACHINE}-unknown-linux-gnu 870*3c602fabSXin LI exit ;; 871a90e161bSBill Fenner alpha:Linux:*:*) 8725b0fe478SBruce M Simpson case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 8735b0fe478SBruce M Simpson EV5) UNAME_MACHINE=alphaev5 ;; 8745b0fe478SBruce M Simpson EV56) UNAME_MACHINE=alphaev56 ;; 8755b0fe478SBruce M Simpson PCA56) UNAME_MACHINE=alphapca56 ;; 8765b0fe478SBruce M Simpson PCA57) UNAME_MACHINE=alphapca56 ;; 8775b0fe478SBruce M Simpson EV6) UNAME_MACHINE=alphaev6 ;; 8785b0fe478SBruce M Simpson EV67) UNAME_MACHINE=alphaev67 ;; 8795b0fe478SBruce M Simpson EV68*) UNAME_MACHINE=alphaev68 ;; 880685295f4SBill Fenner esac 88127df3f5dSRui Paulo objdump --private-headers /bin/sh | grep -q ld.so.1 8825b0fe478SBruce M Simpson if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi 883a90e161bSBill Fenner echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 88427df3f5dSRui Paulo exit ;; 88527df3f5dSRui Paulo arm*:Linux:*:*) 88627df3f5dSRui Paulo eval $set_cc_for_build 88727df3f5dSRui Paulo if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ 88827df3f5dSRui Paulo | grep -q __ARM_EABI__ 88927df3f5dSRui Paulo then 89027df3f5dSRui Paulo echo ${UNAME_MACHINE}-unknown-linux-gnu 89127df3f5dSRui Paulo else 892*3c602fabSXin LI if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ 893*3c602fabSXin LI | grep -q __ARM_PCS_VFP 894*3c602fabSXin LI then 89527df3f5dSRui Paulo echo ${UNAME_MACHINE}-unknown-linux-gnueabi 896*3c602fabSXin LI else 897*3c602fabSXin LI echo ${UNAME_MACHINE}-unknown-linux-gnueabihf 898*3c602fabSXin LI fi 89927df3f5dSRui Paulo fi 90027df3f5dSRui Paulo exit ;; 90127df3f5dSRui Paulo avr32*:Linux:*:*) 90227df3f5dSRui Paulo echo ${UNAME_MACHINE}-unknown-linux-gnu 90327df3f5dSRui Paulo exit ;; 90427df3f5dSRui Paulo cris:Linux:*:*) 905*3c602fabSXin LI echo ${UNAME_MACHINE}-axis-linux-gnu 90627df3f5dSRui Paulo exit ;; 90727df3f5dSRui Paulo crisv32:Linux:*:*) 908*3c602fabSXin LI echo ${UNAME_MACHINE}-axis-linux-gnu 90927df3f5dSRui Paulo exit ;; 91027df3f5dSRui Paulo frv:Linux:*:*) 911*3c602fabSXin LI echo ${UNAME_MACHINE}-unknown-linux-gnu 912*3c602fabSXin LI exit ;; 913*3c602fabSXin LI hexagon:Linux:*:*) 914*3c602fabSXin LI echo ${UNAME_MACHINE}-unknown-linux-gnu 91527df3f5dSRui Paulo exit ;; 91627df3f5dSRui Paulo i*86:Linux:*:*) 91727df3f5dSRui Paulo LIBC=gnu 91827df3f5dSRui Paulo eval $set_cc_for_build 91927df3f5dSRui Paulo sed 's/^ //' << EOF >$dummy.c 92027df3f5dSRui Paulo #ifdef __dietlibc__ 92127df3f5dSRui Paulo LIBC=dietlibc 92227df3f5dSRui Paulo #endif 92327df3f5dSRui PauloEOF 92427df3f5dSRui Paulo eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` 92527df3f5dSRui Paulo echo "${UNAME_MACHINE}-pc-linux-${LIBC}" 92627df3f5dSRui Paulo exit ;; 92727df3f5dSRui Paulo ia64:Linux:*:*) 92827df3f5dSRui Paulo echo ${UNAME_MACHINE}-unknown-linux-gnu 92927df3f5dSRui Paulo exit ;; 93027df3f5dSRui Paulo m32r*:Linux:*:*) 93127df3f5dSRui Paulo echo ${UNAME_MACHINE}-unknown-linux-gnu 93227df3f5dSRui Paulo exit ;; 93327df3f5dSRui Paulo m68*:Linux:*:*) 93427df3f5dSRui Paulo echo ${UNAME_MACHINE}-unknown-linux-gnu 93527df3f5dSRui Paulo exit ;; 93627df3f5dSRui Paulo mips:Linux:*:* | mips64:Linux:*:*) 93727df3f5dSRui Paulo eval $set_cc_for_build 93827df3f5dSRui Paulo sed 's/^ //' << EOF >$dummy.c 93927df3f5dSRui Paulo #undef CPU 94027df3f5dSRui Paulo #undef ${UNAME_MACHINE} 94127df3f5dSRui Paulo #undef ${UNAME_MACHINE}el 94227df3f5dSRui Paulo #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 94327df3f5dSRui Paulo CPU=${UNAME_MACHINE}el 94427df3f5dSRui Paulo #else 94527df3f5dSRui Paulo #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 94627df3f5dSRui Paulo CPU=${UNAME_MACHINE} 94727df3f5dSRui Paulo #else 94827df3f5dSRui Paulo CPU= 94927df3f5dSRui Paulo #endif 95027df3f5dSRui Paulo #endif 95127df3f5dSRui PauloEOF 95227df3f5dSRui Paulo eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` 95327df3f5dSRui Paulo test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 95427df3f5dSRui Paulo ;; 95527df3f5dSRui Paulo or32:Linux:*:*) 956*3c602fabSXin LI echo ${UNAME_MACHINE}-unknown-linux-gnu 95727df3f5dSRui Paulo exit ;; 95827df3f5dSRui Paulo padre:Linux:*:*) 95927df3f5dSRui Paulo echo sparc-unknown-linux-gnu 96027df3f5dSRui Paulo exit ;; 96127df3f5dSRui Paulo parisc64:Linux:*:* | hppa64:Linux:*:*) 96227df3f5dSRui Paulo echo hppa64-unknown-linux-gnu 96327df3f5dSRui Paulo exit ;; 964a90e161bSBill Fenner parisc:Linux:*:* | hppa:Linux:*:*) 965685295f4SBill Fenner # Look for CPU level 966685295f4SBill Fenner case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 967a90e161bSBill Fenner PA7*) echo hppa1.1-unknown-linux-gnu ;; 968a90e161bSBill Fenner PA8*) echo hppa2.0-unknown-linux-gnu ;; 969a90e161bSBill Fenner *) echo hppa-unknown-linux-gnu ;; 970a90e161bSBill Fenner esac 97127df3f5dSRui Paulo exit ;; 97227df3f5dSRui Paulo ppc64:Linux:*:*) 97327df3f5dSRui Paulo echo powerpc64-unknown-linux-gnu 97427df3f5dSRui Paulo exit ;; 97527df3f5dSRui Paulo ppc:Linux:*:*) 97627df3f5dSRui Paulo echo powerpc-unknown-linux-gnu 97727df3f5dSRui Paulo exit ;; 978a90e161bSBill Fenner s390:Linux:*:* | s390x:Linux:*:*) 979a90e161bSBill Fenner echo ${UNAME_MACHINE}-ibm-linux 98027df3f5dSRui Paulo exit ;; 9815b0fe478SBruce M Simpson sh64*:Linux:*:*) 9825b0fe478SBruce M Simpson echo ${UNAME_MACHINE}-unknown-linux-gnu 98327df3f5dSRui Paulo exit ;; 984a90e161bSBill Fenner sh*:Linux:*:*) 985a90e161bSBill Fenner echo ${UNAME_MACHINE}-unknown-linux-gnu 98627df3f5dSRui Paulo exit ;; 987a90e161bSBill Fenner sparc:Linux:*:* | sparc64:Linux:*:*) 988a90e161bSBill Fenner echo ${UNAME_MACHINE}-unknown-linux-gnu 98927df3f5dSRui Paulo exit ;; 990*3c602fabSXin LI tile*:Linux:*:*) 991*3c602fabSXin LI echo ${UNAME_MACHINE}-unknown-linux-gnu 992*3c602fabSXin LI exit ;; 99327df3f5dSRui Paulo vax:Linux:*:*) 99427df3f5dSRui Paulo echo ${UNAME_MACHINE}-dec-linux-gnu 99527df3f5dSRui Paulo exit ;; 996a90e161bSBill Fenner x86_64:Linux:*:*) 997*3c602fabSXin LI echo ${UNAME_MACHINE}-unknown-linux-gnu 99827df3f5dSRui Paulo exit ;; 99927df3f5dSRui Paulo xtensa*:Linux:*:*) 100027df3f5dSRui Paulo echo ${UNAME_MACHINE}-unknown-linux-gnu 100127df3f5dSRui Paulo exit ;; 1002a90e161bSBill Fenner i*86:DYNIX/ptx:4*:*) 10035b0fe478SBruce M Simpson # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 10045b0fe478SBruce M Simpson # earlier versions are messed up and put the nodename in both 10055b0fe478SBruce M Simpson # sysname and nodename. 10064edb46e9SPaul Traina echo i386-sequent-sysv4 100727df3f5dSRui Paulo exit ;; 1008a90e161bSBill Fenner i*86:UNIX_SV:4.2MP:2.*) 1009685295f4SBill Fenner # Unixware is an offshoot of SVR4, but it has its own version 1010685295f4SBill Fenner # number series starting with 2... 1011685295f4SBill Fenner # I am not positive that other SVR4 systems won't match this, 1012685295f4SBill Fenner # I just have to hope. -- rms. 1013685295f4SBill Fenner # Use sysv4.2uw... so that sysv4* matches it. 1014685295f4SBill Fenner echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 101527df3f5dSRui Paulo exit ;; 10165b0fe478SBruce M Simpson i*86:OS/2:*:*) 10175b0fe478SBruce M Simpson # If we were able to find `uname', then EMX Unix compatibility 10185b0fe478SBruce M Simpson # is probably installed. 10195b0fe478SBruce M Simpson echo ${UNAME_MACHINE}-pc-os2-emx 102027df3f5dSRui Paulo exit ;; 10215b0fe478SBruce M Simpson i*86:XTS-300:*:STOP) 10225b0fe478SBruce M Simpson echo ${UNAME_MACHINE}-unknown-stop 102327df3f5dSRui Paulo exit ;; 10245b0fe478SBruce M Simpson i*86:atheos:*:*) 10255b0fe478SBruce M Simpson echo ${UNAME_MACHINE}-unknown-atheos 102627df3f5dSRui Paulo exit ;; 102727df3f5dSRui Paulo i*86:syllable:*:*) 102827df3f5dSRui Paulo echo ${UNAME_MACHINE}-pc-syllable 102927df3f5dSRui Paulo exit ;; 103027df3f5dSRui Paulo i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) 10315b0fe478SBruce M Simpson echo i386-unknown-lynxos${UNAME_RELEASE} 103227df3f5dSRui Paulo exit ;; 10335b0fe478SBruce M Simpson i*86:*DOS:*:*) 10345b0fe478SBruce M Simpson echo ${UNAME_MACHINE}-pc-msdosdjgpp 103527df3f5dSRui Paulo exit ;; 1036a90e161bSBill Fenner i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 1037685295f4SBill Fenner UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 10384edb46e9SPaul Traina if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 1039685295f4SBill Fenner echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 1040685295f4SBill Fenner else 1041685295f4SBill Fenner echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 1042685295f4SBill Fenner fi 104327df3f5dSRui Paulo exit ;; 104427df3f5dSRui Paulo i*86:*:5:[678]*) 104527df3f5dSRui Paulo # UnixWare 7.x, OpenUNIX and OpenServer 6. 10465b0fe478SBruce M Simpson case `/bin/uname -X | grep "^Machine"` in 10475b0fe478SBruce M Simpson *486*) UNAME_MACHINE=i486 ;; 10485b0fe478SBruce M Simpson *Pentium) UNAME_MACHINE=i586 ;; 10495b0fe478SBruce M Simpson *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 10505b0fe478SBruce M Simpson esac 10515b0fe478SBruce M Simpson echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 105227df3f5dSRui Paulo exit ;; 1053a90e161bSBill Fenner i*86:*:3.2:*) 10544edb46e9SPaul Traina if test -f /usr/options/cb.name; then 10554edb46e9SPaul Traina UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 10564de76e31SBill Fenner echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 10574edb46e9SPaul Traina elif /bin/uname -X 2>/dev/null >/dev/null ; then 10585b0fe478SBruce M Simpson UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 10595b0fe478SBruce M Simpson (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 10605b0fe478SBruce M Simpson (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 10614edb46e9SPaul Traina && UNAME_MACHINE=i586 10625b0fe478SBruce M Simpson (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 1063685295f4SBill Fenner && UNAME_MACHINE=i686 10645b0fe478SBruce M Simpson (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 1065685295f4SBill Fenner && UNAME_MACHINE=i686 10664de76e31SBill Fenner echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 10674edb46e9SPaul Traina else 10684de76e31SBill Fenner echo ${UNAME_MACHINE}-pc-sysv32 10694edb46e9SPaul Traina fi 107027df3f5dSRui Paulo exit ;; 1071685295f4SBill Fenner pc:*:*:*) 1072685295f4SBill Fenner # Left here for compatibility: 1073685295f4SBill Fenner # uname -m prints for DJGPP always 'pc', but it prints nothing about 107427df3f5dSRui Paulo # the processor, so we play safe by assuming i586. 107527df3f5dSRui Paulo # Note: whatever this is, it MUST be the same as what config.sub 107627df3f5dSRui Paulo # prints for the "djgpp" host, or else GDB configury will decide that 107727df3f5dSRui Paulo # this is a cross-build. 107827df3f5dSRui Paulo echo i586-pc-msdosdjgpp 107927df3f5dSRui Paulo exit ;; 10804edb46e9SPaul Traina Intel:Mach:3*:*) 10814de76e31SBill Fenner echo i386-pc-mach3 108227df3f5dSRui Paulo exit ;; 10834edb46e9SPaul Traina paragon:*:*:*) 10844edb46e9SPaul Traina echo i860-intel-osf1 108527df3f5dSRui Paulo exit ;; 10864edb46e9SPaul Traina i860:*:4.*:*) # i860-SVR4 10874edb46e9SPaul Traina if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 10884edb46e9SPaul Traina echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 10894edb46e9SPaul Traina else # Add other i860-SVR4 vendors below as they are discovered. 10904edb46e9SPaul Traina echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 10914edb46e9SPaul Traina fi 109227df3f5dSRui Paulo exit ;; 10934edb46e9SPaul Traina mini*:CTIX:SYS*5:*) 10944edb46e9SPaul Traina # "miniframe" 10954edb46e9SPaul Traina echo m68010-convergent-sysv 109627df3f5dSRui Paulo exit ;; 10975b0fe478SBruce M Simpson mc68k:UNIX:SYSTEM5:3.51m) 10985b0fe478SBruce M Simpson echo m68k-convergent-sysv 109927df3f5dSRui Paulo exit ;; 11005b0fe478SBruce M Simpson M680?0:D-NIX:5.3:*) 11015b0fe478SBruce M Simpson echo m68k-diab-dnix 110227df3f5dSRui Paulo exit ;; 110327df3f5dSRui Paulo M68*:*:R3V[5678]*:*) 110427df3f5dSRui Paulo test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 110527df3f5dSRui Paulo 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) 11064de76e31SBill Fenner OS_REL='' 11074de76e31SBill Fenner test -r /etc/.relid \ 11084de76e31SBill Fenner && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 11094de76e31SBill Fenner /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 111027df3f5dSRui Paulo && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 11114de76e31SBill Fenner /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 111227df3f5dSRui Paulo && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 11134edb46e9SPaul Traina 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 11144de76e31SBill Fenner /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 111527df3f5dSRui Paulo && { echo i486-ncr-sysv4; exit; } ;; 111627df3f5dSRui Paulo NCR*:*:4.2:* | MPRAS*:*:4.2:*) 111727df3f5dSRui Paulo OS_REL='.3' 111827df3f5dSRui Paulo test -r /etc/.relid \ 111927df3f5dSRui Paulo && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 112027df3f5dSRui Paulo /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 112127df3f5dSRui Paulo && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 112227df3f5dSRui Paulo /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 112327df3f5dSRui Paulo && { echo i586-ncr-sysv4.3${OS_REL}; exit; } 112427df3f5dSRui Paulo /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ 112527df3f5dSRui Paulo && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1126a90e161bSBill Fenner m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 11274de76e31SBill Fenner echo m68k-unknown-lynxos${UNAME_RELEASE} 112827df3f5dSRui Paulo exit ;; 11294edb46e9SPaul Traina mc68030:UNIX_System_V:4.*:*) 11304edb46e9SPaul Traina echo m68k-atari-sysv4 113127df3f5dSRui Paulo exit ;; 11324de76e31SBill Fenner TSUNAMI:LynxOS:2.*:*) 11334de76e31SBill Fenner echo sparc-unknown-lynxos${UNAME_RELEASE} 113427df3f5dSRui Paulo exit ;; 1135a90e161bSBill Fenner rs6000:LynxOS:2.*:*) 11364de76e31SBill Fenner echo rs6000-unknown-lynxos${UNAME_RELEASE} 113727df3f5dSRui Paulo exit ;; 113827df3f5dSRui Paulo PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) 1139a90e161bSBill Fenner echo powerpc-unknown-lynxos${UNAME_RELEASE} 114027df3f5dSRui Paulo exit ;; 11414de76e31SBill Fenner SM[BE]S:UNIX_SV:*:*) 11424de76e31SBill Fenner echo mips-dde-sysv${UNAME_RELEASE} 114327df3f5dSRui Paulo exit ;; 1144685295f4SBill Fenner RM*:ReliantUNIX-*:*:*) 1145685295f4SBill Fenner echo mips-sni-sysv4 114627df3f5dSRui Paulo exit ;; 11474edb46e9SPaul Traina RM*:SINIX-*:*:*) 11484edb46e9SPaul Traina echo mips-sni-sysv4 114927df3f5dSRui Paulo exit ;; 11504edb46e9SPaul Traina *:SINIX-*:*:*) 11514edb46e9SPaul Traina if uname -p 2>/dev/null >/dev/null ; then 11524edb46e9SPaul Traina UNAME_MACHINE=`(uname -p) 2>/dev/null` 11534edb46e9SPaul Traina echo ${UNAME_MACHINE}-sni-sysv4 11544edb46e9SPaul Traina else 11554edb46e9SPaul Traina echo ns32k-sni-sysv 11564edb46e9SPaul Traina fi 115727df3f5dSRui Paulo exit ;; 11585b0fe478SBruce M Simpson PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 1159685295f4SBill Fenner # says <Richard.M.Bartel@ccMail.Census.GOV> 1160685295f4SBill Fenner echo i586-unisys-sysv4 116127df3f5dSRui Paulo exit ;; 11624de76e31SBill Fenner *:UNIX_System_V:4*:FTX*) 11634de76e31SBill Fenner # From Gerald Hewes <hewes@openmarket.com>. 11644de76e31SBill Fenner # How about differentiating between stratus architectures? -djm 11654de76e31SBill Fenner echo hppa1.1-stratus-sysv4 116627df3f5dSRui Paulo exit ;; 11674de76e31SBill Fenner *:*:*:FTX*) 11684de76e31SBill Fenner # From seanf@swdc.stratus.com. 11694de76e31SBill Fenner echo i860-stratus-sysv4 117027df3f5dSRui Paulo exit ;; 117127df3f5dSRui Paulo i*86:VOS:*:*) 117227df3f5dSRui Paulo # From Paul.Green@stratus.com. 117327df3f5dSRui Paulo echo ${UNAME_MACHINE}-stratus-vos 117427df3f5dSRui Paulo exit ;; 11755b0fe478SBruce M Simpson *:VOS:*:*) 11765b0fe478SBruce M Simpson # From Paul.Green@stratus.com. 11775b0fe478SBruce M Simpson echo hppa1.1-stratus-vos 117827df3f5dSRui Paulo exit ;; 11794edb46e9SPaul Traina mc68*:A/UX:*:*) 11804edb46e9SPaul Traina echo m68k-apple-aux${UNAME_RELEASE} 118127df3f5dSRui Paulo exit ;; 1182685295f4SBill Fenner news*:NEWS-OS:6*:*) 1183685295f4SBill Fenner echo mips-sony-newsos6 118427df3f5dSRui Paulo exit ;; 1185685295f4SBill Fenner R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 11864edb46e9SPaul Traina if [ -d /usr/nec ]; then 11874edb46e9SPaul Traina echo mips-nec-sysv${UNAME_RELEASE} 11884edb46e9SPaul Traina else 11894edb46e9SPaul Traina echo mips-unknown-sysv${UNAME_RELEASE} 11904edb46e9SPaul Traina fi 119127df3f5dSRui Paulo exit ;; 1192685295f4SBill Fenner BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 1193685295f4SBill Fenner echo powerpc-be-beos 119427df3f5dSRui Paulo exit ;; 1195685295f4SBill Fenner BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 1196685295f4SBill Fenner echo powerpc-apple-beos 119727df3f5dSRui Paulo exit ;; 1198685295f4SBill Fenner BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 1199685295f4SBill Fenner echo i586-pc-beos 120027df3f5dSRui Paulo exit ;; 120127df3f5dSRui Paulo BePC:Haiku:*:*) # Haiku running on Intel PC compatible. 120227df3f5dSRui Paulo echo i586-pc-haiku 120327df3f5dSRui Paulo exit ;; 1204685295f4SBill Fenner SX-4:SUPER-UX:*:*) 1205685295f4SBill Fenner echo sx4-nec-superux${UNAME_RELEASE} 120627df3f5dSRui Paulo exit ;; 1207685295f4SBill Fenner SX-5:SUPER-UX:*:*) 1208685295f4SBill Fenner echo sx5-nec-superux${UNAME_RELEASE} 120927df3f5dSRui Paulo exit ;; 12105b0fe478SBruce M Simpson SX-6:SUPER-UX:*:*) 12115b0fe478SBruce M Simpson echo sx6-nec-superux${UNAME_RELEASE} 121227df3f5dSRui Paulo exit ;; 121327df3f5dSRui Paulo SX-7:SUPER-UX:*:*) 121427df3f5dSRui Paulo echo sx7-nec-superux${UNAME_RELEASE} 121527df3f5dSRui Paulo exit ;; 121627df3f5dSRui Paulo SX-8:SUPER-UX:*:*) 121727df3f5dSRui Paulo echo sx8-nec-superux${UNAME_RELEASE} 121827df3f5dSRui Paulo exit ;; 121927df3f5dSRui Paulo SX-8R:SUPER-UX:*:*) 122027df3f5dSRui Paulo echo sx8r-nec-superux${UNAME_RELEASE} 122127df3f5dSRui Paulo exit ;; 1222685295f4SBill Fenner Power*:Rhapsody:*:*) 1223685295f4SBill Fenner echo powerpc-apple-rhapsody${UNAME_RELEASE} 122427df3f5dSRui Paulo exit ;; 1225685295f4SBill Fenner *:Rhapsody:*:*) 1226685295f4SBill Fenner echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 122727df3f5dSRui Paulo exit ;; 1228685295f4SBill Fenner *:Darwin:*:*) 122927df3f5dSRui Paulo UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 123027df3f5dSRui Paulo case $UNAME_PROCESSOR in 123127df3f5dSRui Paulo i386) 123227df3f5dSRui Paulo eval $set_cc_for_build 123327df3f5dSRui Paulo if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 123427df3f5dSRui Paulo if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ 123527df3f5dSRui Paulo (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 123627df3f5dSRui Paulo grep IS_64BIT_ARCH >/dev/null 123727df3f5dSRui Paulo then 123827df3f5dSRui Paulo UNAME_PROCESSOR="x86_64" 123927df3f5dSRui Paulo fi 124027df3f5dSRui Paulo fi ;; 124127df3f5dSRui Paulo unknown) UNAME_PROCESSOR=powerpc ;; 12425b0fe478SBruce M Simpson esac 12435b0fe478SBruce M Simpson echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 124427df3f5dSRui Paulo exit ;; 1245685295f4SBill Fenner *:procnto*:*:* | *:QNX:[0123456789]*:*) 12465b0fe478SBruce M Simpson UNAME_PROCESSOR=`uname -p` 12475b0fe478SBruce M Simpson if test "$UNAME_PROCESSOR" = "x86"; then 12485b0fe478SBruce M Simpson UNAME_PROCESSOR=i386 1249685295f4SBill Fenner UNAME_MACHINE=pc 1250685295f4SBill Fenner fi 12515b0fe478SBruce M Simpson echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 125227df3f5dSRui Paulo exit ;; 1253685295f4SBill Fenner *:QNX:*:4*) 1254685295f4SBill Fenner echo i386-pc-qnx 125527df3f5dSRui Paulo exit ;; 1256*3c602fabSXin LI NEO-?:NONSTOP_KERNEL:*:*) 1257*3c602fabSXin LI echo neo-tandem-nsk${UNAME_RELEASE} 1258*3c602fabSXin LI exit ;; 125927df3f5dSRui Paulo NSE-?:NONSTOP_KERNEL:*:*) 126027df3f5dSRui Paulo echo nse-tandem-nsk${UNAME_RELEASE} 126127df3f5dSRui Paulo exit ;; 126227df3f5dSRui Paulo NSR-?:NONSTOP_KERNEL:*:*) 1263685295f4SBill Fenner echo nsr-tandem-nsk${UNAME_RELEASE} 126427df3f5dSRui Paulo exit ;; 1265685295f4SBill Fenner *:NonStop-UX:*:*) 1266685295f4SBill Fenner echo mips-compaq-nonstopux 126727df3f5dSRui Paulo exit ;; 1268685295f4SBill Fenner BS2000:POSIX*:*:*) 1269685295f4SBill Fenner echo bs2000-siemens-sysv 127027df3f5dSRui Paulo exit ;; 1271685295f4SBill Fenner DS/*:UNIX_System_V:*:*) 1272685295f4SBill Fenner echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 127327df3f5dSRui Paulo exit ;; 1274685295f4SBill Fenner *:Plan9:*:*) 1275685295f4SBill Fenner # "uname -m" is not consistent, so use $cputype instead. 386 1276685295f4SBill Fenner # is converted to i386 for consistency with other x86 1277685295f4SBill Fenner # operating systems. 1278685295f4SBill Fenner if test "$cputype" = "386"; then 1279685295f4SBill Fenner UNAME_MACHINE=i386 1280685295f4SBill Fenner else 1281685295f4SBill Fenner UNAME_MACHINE="$cputype" 1282685295f4SBill Fenner fi 1283685295f4SBill Fenner echo ${UNAME_MACHINE}-unknown-plan9 128427df3f5dSRui Paulo exit ;; 1285a90e161bSBill Fenner *:TOPS-10:*:*) 1286a90e161bSBill Fenner echo pdp10-unknown-tops10 128727df3f5dSRui Paulo exit ;; 1288a90e161bSBill Fenner *:TENEX:*:*) 1289a90e161bSBill Fenner echo pdp10-unknown-tenex 129027df3f5dSRui Paulo exit ;; 1291a90e161bSBill Fenner KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 1292a90e161bSBill Fenner echo pdp10-dec-tops20 129327df3f5dSRui Paulo exit ;; 1294a90e161bSBill Fenner XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 1295a90e161bSBill Fenner echo pdp10-xkl-tops20 129627df3f5dSRui Paulo exit ;; 1297a90e161bSBill Fenner *:TOPS-20:*:*) 1298a90e161bSBill Fenner echo pdp10-unknown-tops20 129927df3f5dSRui Paulo exit ;; 1300a90e161bSBill Fenner *:ITS:*:*) 1301a90e161bSBill Fenner echo pdp10-unknown-its 130227df3f5dSRui Paulo exit ;; 13035b0fe478SBruce M Simpson SEI:*:*:SEIUX) 13045b0fe478SBruce M Simpson echo mips-sei-seiux${UNAME_RELEASE} 130527df3f5dSRui Paulo exit ;; 130627df3f5dSRui Paulo *:DragonFly:*:*) 130727df3f5dSRui Paulo echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 130827df3f5dSRui Paulo exit ;; 130927df3f5dSRui Paulo *:*VMS:*:*) 131027df3f5dSRui Paulo UNAME_MACHINE=`(uname -p) 2>/dev/null` 131127df3f5dSRui Paulo case "${UNAME_MACHINE}" in 131227df3f5dSRui Paulo A*) echo alpha-dec-vms ; exit ;; 131327df3f5dSRui Paulo I*) echo ia64-dec-vms ; exit ;; 131427df3f5dSRui Paulo V*) echo vax-dec-vms ; exit ;; 131527df3f5dSRui Paulo esac ;; 131627df3f5dSRui Paulo *:XENIX:*:SysV) 131727df3f5dSRui Paulo echo i386-pc-xenix 131827df3f5dSRui Paulo exit ;; 131927df3f5dSRui Paulo i*86:skyos:*:*) 132027df3f5dSRui Paulo echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' 132127df3f5dSRui Paulo exit ;; 132227df3f5dSRui Paulo i*86:rdos:*:*) 132327df3f5dSRui Paulo echo ${UNAME_MACHINE}-pc-rdos 132427df3f5dSRui Paulo exit ;; 132527df3f5dSRui Paulo i*86:AROS:*:*) 132627df3f5dSRui Paulo echo ${UNAME_MACHINE}-pc-aros 132727df3f5dSRui Paulo exit ;; 1328*3c602fabSXin LI x86_64:VMkernel:*:*) 1329*3c602fabSXin LI echo ${UNAME_MACHINE}-unknown-esx 1330*3c602fabSXin LI exit ;; 13314edb46e9SPaul Trainaesac 13324edb46e9SPaul Traina 13334edb46e9SPaul Traina#echo '(No uname command or uname output not recognized.)' 1>&2 13344edb46e9SPaul Traina#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 13354edb46e9SPaul Traina 13365b0fe478SBruce M Simpsoneval $set_cc_for_build 1337685295f4SBill Fennercat >$dummy.c <<EOF 13384edb46e9SPaul Traina#ifdef _SEQUENT_ 13394edb46e9SPaul Traina# include <sys/types.h> 13404edb46e9SPaul Traina# include <sys/utsname.h> 13414edb46e9SPaul Traina#endif 13424edb46e9SPaul Trainamain () 13434edb46e9SPaul Traina{ 13444edb46e9SPaul Traina#if defined (sony) 13454edb46e9SPaul Traina#if defined (MIPSEB) 13464edb46e9SPaul Traina /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, 13474edb46e9SPaul Traina I don't know.... */ 13484edb46e9SPaul Traina printf ("mips-sony-bsd\n"); exit (0); 13494edb46e9SPaul Traina#else 13504edb46e9SPaul Traina#include <sys/param.h> 13514edb46e9SPaul Traina printf ("m68k-sony-newsos%s\n", 13524edb46e9SPaul Traina#ifdef NEWSOS4 13534edb46e9SPaul Traina "4" 13544edb46e9SPaul Traina#else 13554edb46e9SPaul Traina "" 13564edb46e9SPaul Traina#endif 13574edb46e9SPaul Traina ); exit (0); 13584edb46e9SPaul Traina#endif 13594edb46e9SPaul Traina#endif 13604edb46e9SPaul Traina 13614edb46e9SPaul Traina#if defined (__arm) && defined (__acorn) && defined (__unix) 136227df3f5dSRui Paulo printf ("arm-acorn-riscix\n"); exit (0); 13634edb46e9SPaul Traina#endif 13644edb46e9SPaul Traina 13654edb46e9SPaul Traina#if defined (hp300) && !defined (hpux) 13664edb46e9SPaul Traina printf ("m68k-hp-bsd\n"); exit (0); 13674edb46e9SPaul Traina#endif 13684edb46e9SPaul Traina 13694edb46e9SPaul Traina#if defined (NeXT) 13704edb46e9SPaul Traina#if !defined (__ARCHITECTURE__) 13714edb46e9SPaul Traina#define __ARCHITECTURE__ "m68k" 13724edb46e9SPaul Traina#endif 13734edb46e9SPaul Traina int version; 13744edb46e9SPaul Traina version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; 1375685295f4SBill Fenner if (version < 4) 13764de76e31SBill Fenner printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); 1377685295f4SBill Fenner else 1378685295f4SBill Fenner printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); 13794edb46e9SPaul Traina exit (0); 13804edb46e9SPaul Traina#endif 13814edb46e9SPaul Traina 13824edb46e9SPaul Traina#if defined (MULTIMAX) || defined (n16) 13834edb46e9SPaul Traina#if defined (UMAXV) 13844edb46e9SPaul Traina printf ("ns32k-encore-sysv\n"); exit (0); 13854edb46e9SPaul Traina#else 13864edb46e9SPaul Traina#if defined (CMU) 13874edb46e9SPaul Traina printf ("ns32k-encore-mach\n"); exit (0); 13884edb46e9SPaul Traina#else 13894edb46e9SPaul Traina printf ("ns32k-encore-bsd\n"); exit (0); 13904edb46e9SPaul Traina#endif 13914edb46e9SPaul Traina#endif 13924edb46e9SPaul Traina#endif 13934edb46e9SPaul Traina 13944edb46e9SPaul Traina#if defined (__386BSD__) 13954de76e31SBill Fenner printf ("i386-pc-bsd\n"); exit (0); 13964edb46e9SPaul Traina#endif 13974edb46e9SPaul Traina 13984edb46e9SPaul Traina#if defined (sequent) 13994edb46e9SPaul Traina#if defined (i386) 14004edb46e9SPaul Traina printf ("i386-sequent-dynix\n"); exit (0); 14014edb46e9SPaul Traina#endif 14024edb46e9SPaul Traina#if defined (ns32000) 14034edb46e9SPaul Traina printf ("ns32k-sequent-dynix\n"); exit (0); 14044edb46e9SPaul Traina#endif 14054edb46e9SPaul Traina#endif 14064edb46e9SPaul Traina 14074edb46e9SPaul Traina#if defined (_SEQUENT_) 14084edb46e9SPaul Traina struct utsname un; 14094edb46e9SPaul Traina 14104edb46e9SPaul Traina uname(&un); 14114edb46e9SPaul Traina 14124edb46e9SPaul Traina if (strncmp(un.version, "V2", 2) == 0) { 14134edb46e9SPaul Traina printf ("i386-sequent-ptx2\n"); exit (0); 14144edb46e9SPaul Traina } 14154edb46e9SPaul Traina if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ 14164edb46e9SPaul Traina printf ("i386-sequent-ptx1\n"); exit (0); 14174edb46e9SPaul Traina } 14184edb46e9SPaul Traina printf ("i386-sequent-ptx\n"); exit (0); 14194edb46e9SPaul Traina 14204edb46e9SPaul Traina#endif 14214edb46e9SPaul Traina 14224edb46e9SPaul Traina#if defined (vax) 14234edb46e9SPaul Traina# if !defined (ultrix) 1424a90e161bSBill Fenner# include <sys/param.h> 1425a90e161bSBill Fenner# if defined (BSD) 1426a90e161bSBill Fenner# if BSD == 43 1427a90e161bSBill Fenner printf ("vax-dec-bsd4.3\n"); exit (0); 1428a90e161bSBill Fenner# else 1429a90e161bSBill Fenner# if BSD == 199006 1430a90e161bSBill Fenner printf ("vax-dec-bsd4.3reno\n"); exit (0); 1431a90e161bSBill Fenner# else 14324edb46e9SPaul Traina printf ("vax-dec-bsd\n"); exit (0); 1433a90e161bSBill Fenner# endif 1434a90e161bSBill Fenner# endif 1435a90e161bSBill Fenner# else 1436a90e161bSBill Fenner printf ("vax-dec-bsd\n"); exit (0); 1437a90e161bSBill Fenner# endif 14384edb46e9SPaul Traina# else 14394edb46e9SPaul Traina printf ("vax-dec-ultrix\n"); exit (0); 14404edb46e9SPaul Traina# endif 14414edb46e9SPaul Traina#endif 14424edb46e9SPaul Traina 14434edb46e9SPaul Traina#if defined (alliant) && defined (i860) 14444edb46e9SPaul Traina printf ("i860-alliant-bsd\n"); exit (0); 14454edb46e9SPaul Traina#endif 14464edb46e9SPaul Traina 14474edb46e9SPaul Traina exit (1); 14484edb46e9SPaul Traina} 14494edb46e9SPaul TrainaEOF 14504edb46e9SPaul Traina 145127df3f5dSRui Paulo$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && 145227df3f5dSRui Paulo { echo "$SYSTEM_NAME"; exit; } 14534edb46e9SPaul Traina 14544edb46e9SPaul Traina# Apollos put the system type in the environment. 14554edb46e9SPaul Traina 145627df3f5dSRui Paulotest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } 14574edb46e9SPaul Traina 14584edb46e9SPaul Traina# Convex versions that predate uname can use getsysinfo(1) 14594edb46e9SPaul Traina 14604edb46e9SPaul Trainaif [ -x /usr/convex/getsysinfo ] 14614edb46e9SPaul Trainathen 14624edb46e9SPaul Traina case `getsysinfo -f cpu_type` in 14634edb46e9SPaul Traina c1*) 14644edb46e9SPaul Traina echo c1-convex-bsd 146527df3f5dSRui Paulo exit ;; 14664edb46e9SPaul Traina c2*) 14674edb46e9SPaul Traina if getsysinfo -f scalar_acc 14684edb46e9SPaul Traina then echo c32-convex-bsd 14694edb46e9SPaul Traina else echo c2-convex-bsd 14704edb46e9SPaul Traina fi 147127df3f5dSRui Paulo exit ;; 14724edb46e9SPaul Traina c34*) 14734edb46e9SPaul Traina echo c34-convex-bsd 147427df3f5dSRui Paulo exit ;; 14754edb46e9SPaul Traina c38*) 14764edb46e9SPaul Traina echo c38-convex-bsd 147727df3f5dSRui Paulo exit ;; 14784edb46e9SPaul Traina c4*) 14794edb46e9SPaul Traina echo c4-convex-bsd 148027df3f5dSRui Paulo exit ;; 14814edb46e9SPaul Traina esac 14824edb46e9SPaul Trainafi 14834edb46e9SPaul Traina 1484685295f4SBill Fennercat >&2 <<EOF 1485685295f4SBill Fenner$0: unable to guess system type 1486685295f4SBill Fenner 1487a90e161bSBill FennerThis script, last modified $timestamp, has failed to recognize 1488a90e161bSBill Fennerthe operating system you are using. It is advised that you 1489a90e161bSBill Fennerdownload the most up to date version of the config scripts from 1490685295f4SBill Fenner 149127df3f5dSRui Paulo http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 149227df3f5dSRui Pauloand 149327df3f5dSRui Paulo http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 1494685295f4SBill Fenner 1495685295f4SBill FennerIf the version you run ($0) is already up to date, please 1496685295f4SBill Fennersend the following data and any information you think might be 1497685295f4SBill Fennerpertinent to <config-patches@gnu.org> in order to provide the needed 1498685295f4SBill Fennerinformation to handle your system. 1499685295f4SBill Fenner 1500a90e161bSBill Fennerconfig.guess timestamp = $timestamp 1501685295f4SBill Fenner 1502685295f4SBill Fenneruname -m = `(uname -m) 2>/dev/null || echo unknown` 1503685295f4SBill Fenneruname -r = `(uname -r) 2>/dev/null || echo unknown` 1504685295f4SBill Fenneruname -s = `(uname -s) 2>/dev/null || echo unknown` 1505685295f4SBill Fenneruname -v = `(uname -v) 2>/dev/null || echo unknown` 1506685295f4SBill Fenner 1507685295f4SBill Fenner/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 1508685295f4SBill Fenner/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 1509685295f4SBill Fenner 1510685295f4SBill Fennerhostinfo = `(hostinfo) 2>/dev/null` 1511685295f4SBill Fenner/bin/universe = `(/bin/universe) 2>/dev/null` 1512685295f4SBill Fenner/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 1513685295f4SBill Fenner/bin/arch = `(/bin/arch) 2>/dev/null` 1514685295f4SBill Fenner/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 1515685295f4SBill Fenner/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 1516685295f4SBill Fenner 1517685295f4SBill FennerUNAME_MACHINE = ${UNAME_MACHINE} 1518685295f4SBill FennerUNAME_RELEASE = ${UNAME_RELEASE} 1519685295f4SBill FennerUNAME_SYSTEM = ${UNAME_SYSTEM} 1520685295f4SBill FennerUNAME_VERSION = ${UNAME_VERSION} 1521685295f4SBill FennerEOF 15224edb46e9SPaul Traina 15234edb46e9SPaul Trainaexit 1 1524685295f4SBill Fenner 1525685295f4SBill Fenner# Local variables: 1526685295f4SBill Fenner# eval: (add-hook 'write-file-hooks 'time-stamp) 1527685295f4SBill Fenner# time-stamp-start: "timestamp='" 1528685295f4SBill Fenner# time-stamp-format: "%:y-%02m-%02d" 1529685295f4SBill Fenner# time-stamp-end: "'" 1530685295f4SBill Fenner# End: 1531