14edb46e9SPaul Traina#! /bin/sh 24edb46e9SPaul Traina# Attempt to guess a canonical system name. 3*8bdc5a62SPatrick Kelsey# Copyright 1992-2015 Free Software Foundation, Inc. 4685295f4SBill Fenner 5*8bdc5a62SPatrick Kelseytimestamp='2015-02-23' 6685295f4SBill Fenner 74edb46e9SPaul Traina# This file is free software; you can redistribute it and/or modify it 84edb46e9SPaul Traina# under the terms of the GNU General Public License as published by 9*8bdc5a62SPatrick Kelsey# the Free Software Foundation; either version 3 of the License, or 104edb46e9SPaul Traina# (at your option) any later version. 114edb46e9SPaul Traina# 124edb46e9SPaul Traina# This program is distributed in the hope that it will be useful, but 134edb46e9SPaul Traina# WITHOUT ANY WARRANTY; without even the implied warranty of 144edb46e9SPaul Traina# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 154edb46e9SPaul Traina# General Public License for more details. 164edb46e9SPaul Traina# 174edb46e9SPaul Traina# You should have received a copy of the GNU General Public License 183c602fabSXin LI# along with this program; if not, see <http://www.gnu.org/licenses/>. 194edb46e9SPaul Traina# 204edb46e9SPaul Traina# As a special exception to the GNU General Public License, if you 214edb46e9SPaul Traina# distribute this file as part of a program that contains a 224edb46e9SPaul Traina# configuration script generated by Autoconf, you may include it under 23*8bdc5a62SPatrick Kelsey# the same distribution terms that you use for the rest of that 24*8bdc5a62SPatrick Kelsey# program. This Exception is an additional permission under section 7 25*8bdc5a62SPatrick Kelsey# of the GNU General Public License, version 3 ("GPLv3"). 264edb46e9SPaul Traina# 27*8bdc5a62SPatrick Kelsey# Originally written by Per Bothner; maintained since 2000 by Ben Elliston. 284edb46e9SPaul Traina# 2927df3f5dSRui Paulo# You can get the latest version of this script from: 3027df3f5dSRui Paulo# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 31*8bdc5a62SPatrick Kelsey# 32*8bdc5a62SPatrick Kelsey# Please send patches to <config-patches@gnu.org>. 33*8bdc5a62SPatrick Kelsey 344edb46e9SPaul Traina 35685295f4SBill Fennerme=`echo "$0" | sed -e 's,.*/,,'` 36685295f4SBill Fenner 37685295f4SBill Fennerusage="\ 38685295f4SBill FennerUsage: $0 [OPTION] 39685295f4SBill Fenner 40685295f4SBill FennerOutput the configuration name of the system \`$me' is run on. 41685295f4SBill Fenner 42685295f4SBill FennerOperation modes: 43685295f4SBill Fenner -h, --help print this help, then exit 44685295f4SBill Fenner -t, --time-stamp print date of last modification, then exit 45685295f4SBill Fenner -v, --version print version number, then exit 46685295f4SBill Fenner 47685295f4SBill FennerReport bugs and patches to <config-patches@gnu.org>." 48685295f4SBill Fenner 49685295f4SBill Fennerversion="\ 50685295f4SBill FennerGNU config.guess ($timestamp) 51685295f4SBill Fenner 52685295f4SBill FennerOriginally written by Per Bothner. 53*8bdc5a62SPatrick KelseyCopyright 1992-2015 Free Software Foundation, Inc. 54685295f4SBill Fenner 55685295f4SBill FennerThis is free software; see the source for copying conditions. There is NO 56685295f4SBill Fennerwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 57685295f4SBill Fenner 58685295f4SBill Fennerhelp=" 59685295f4SBill FennerTry \`$me --help' for more information." 60685295f4SBill Fenner 61685295f4SBill Fenner# Parse command line 62685295f4SBill Fennerwhile test $# -gt 0 ; do 63685295f4SBill Fenner case $1 in 64685295f4SBill Fenner --time-stamp | --time* | -t ) 6527df3f5dSRui Paulo echo "$timestamp" ; exit ;; 66685295f4SBill Fenner --version | -v ) 6727df3f5dSRui Paulo echo "$version" ; exit ;; 68685295f4SBill Fenner --help | --h* | -h ) 6927df3f5dSRui Paulo echo "$usage"; exit ;; 70685295f4SBill Fenner -- ) # Stop option processing 71685295f4SBill Fenner shift; break ;; 72685295f4SBill Fenner - ) # Use stdin as input. 73685295f4SBill Fenner break ;; 74685295f4SBill Fenner -* ) 75685295f4SBill Fenner echo "$me: invalid option $1$help" >&2 76685295f4SBill Fenner exit 1 ;; 77685295f4SBill Fenner * ) 78685295f4SBill Fenner break ;; 79685295f4SBill Fenner esac 80685295f4SBill Fennerdone 81685295f4SBill Fenner 82685295f4SBill Fennerif test $# != 0; then 83685295f4SBill Fenner echo "$me: too many arguments$help" >&2 84685295f4SBill Fenner exit 1 85685295f4SBill Fennerfi 86685295f4SBill Fenner 875b0fe478SBruce M Simpsontrap 'exit 1' 1 2 15 88685295f4SBill Fenner 895b0fe478SBruce M Simpson# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 905b0fe478SBruce M Simpson# compiler to aid in system detection is discouraged as it requires 915b0fe478SBruce M Simpson# temporary files to be created and, as you can see below, it is a 925b0fe478SBruce M Simpson# headache to deal with in a portable fashion. 93685295f4SBill Fenner 94685295f4SBill Fenner# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 95685295f4SBill Fenner# use `HOST_CC' if defined, but it is deprecated. 96685295f4SBill Fenner 975b0fe478SBruce M Simpson# Portable tmp directory creation inspired by the Autoconf team. 985b0fe478SBruce M Simpson 995b0fe478SBruce M Simpsonset_cc_for_build=' 1005b0fe478SBruce M Simpsontrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; 1015b0fe478SBruce M Simpsontrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 1025b0fe478SBruce M Simpson: ${TMPDIR=/tmp} ; 10327df3f5dSRui Paulo { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 1045b0fe478SBruce M Simpson { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 1055b0fe478SBruce M Simpson { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || 1065b0fe478SBruce M Simpson { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; 1075b0fe478SBruce M Simpsondummy=$tmp/dummy ; 1085b0fe478SBruce M Simpsontmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; 109685295f4SBill Fennercase $CC_FOR_BUILD,$HOST_CC,$CC in 1105b0fe478SBruce M Simpson ,,) echo "int x;" > $dummy.c ; 1115b0fe478SBruce M Simpson for c in cc gcc c89 c99 ; do 1125b0fe478SBruce M Simpson if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then 1135b0fe478SBruce M Simpson CC_FOR_BUILD="$c"; break ; 1145b0fe478SBruce M Simpson fi ; 1155b0fe478SBruce M Simpson done ; 116685295f4SBill Fenner if test x"$CC_FOR_BUILD" = x ; then 1175b0fe478SBruce M Simpson CC_FOR_BUILD=no_compiler_found ; 118685295f4SBill Fenner fi 119685295f4SBill Fenner ;; 120685295f4SBill Fenner ,,*) CC_FOR_BUILD=$CC ;; 121685295f4SBill Fenner ,*,*) CC_FOR_BUILD=$HOST_CC ;; 12227df3f5dSRui Pauloesac ; set_cc_for_build= ;' 123685295f4SBill Fenner 1244edb46e9SPaul Traina# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 1255b0fe478SBruce M Simpson# (ghazi@noc.rutgers.edu 1994-08-24) 1264edb46e9SPaul Trainaif (test -f /.attbin/uname) >/dev/null 2>&1 ; then 1274edb46e9SPaul Traina PATH=$PATH:/.attbin ; export PATH 1284edb46e9SPaul Trainafi 1294edb46e9SPaul Traina 1304edb46e9SPaul TrainaUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 1314edb46e9SPaul TrainaUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 1324edb46e9SPaul TrainaUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 1334edb46e9SPaul TrainaUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 1344edb46e9SPaul Traina 135*8bdc5a62SPatrick Kelseycase "${UNAME_SYSTEM}" in 136*8bdc5a62SPatrick KelseyLinux|GNU|GNU/*) 137*8bdc5a62SPatrick Kelsey # If the system lacks a compiler, then just pick glibc. 138*8bdc5a62SPatrick Kelsey # We could probably try harder. 139*8bdc5a62SPatrick Kelsey LIBC=gnu 140*8bdc5a62SPatrick Kelsey 141*8bdc5a62SPatrick Kelsey eval $set_cc_for_build 142*8bdc5a62SPatrick Kelsey cat <<-EOF > $dummy.c 143*8bdc5a62SPatrick Kelsey #include <features.h> 144*8bdc5a62SPatrick Kelsey #if defined(__UCLIBC__) 145*8bdc5a62SPatrick Kelsey LIBC=uclibc 146*8bdc5a62SPatrick Kelsey #elif defined(__dietlibc__) 147*8bdc5a62SPatrick Kelsey LIBC=dietlibc 148*8bdc5a62SPatrick Kelsey #else 149*8bdc5a62SPatrick Kelsey LIBC=gnu 150*8bdc5a62SPatrick Kelsey #endif 151*8bdc5a62SPatrick Kelsey EOF 152*8bdc5a62SPatrick Kelsey eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'` 153*8bdc5a62SPatrick Kelsey ;; 154*8bdc5a62SPatrick Kelseyesac 155*8bdc5a62SPatrick Kelsey 1564edb46e9SPaul Traina# Note: order is significant - the case branches are not exclusive. 1574edb46e9SPaul Traina 1584edb46e9SPaul Trainacase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 159685295f4SBill Fenner *:NetBSD:*:*) 1605b0fe478SBruce M Simpson # NetBSD (nbsd) targets should (where applicable) match one or 1613c602fabSXin LI # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, 162685295f4SBill Fenner # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 163685295f4SBill Fenner # switched to ELF, *-*-netbsd* would select the old 164685295f4SBill Fenner # object file format. This provides both forward 165685295f4SBill Fenner # compatibility and a consistent mechanism for selecting the 166685295f4SBill Fenner # object file format. 1675b0fe478SBruce M Simpson # 1685b0fe478SBruce M Simpson # Note: NetBSD doesn't particularly care about the vendor 1695b0fe478SBruce M Simpson # portion of the name. We always set it to "unknown". 1705b0fe478SBruce M Simpson sysctl="sysctl -n hw.machine_arch" 171*8bdc5a62SPatrick Kelsey UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \ 172*8bdc5a62SPatrick Kelsey /sbin/$sysctl 2>/dev/null || \ 173*8bdc5a62SPatrick Kelsey /usr/sbin/$sysctl 2>/dev/null || \ 174*8bdc5a62SPatrick Kelsey echo unknown)` 1755b0fe478SBruce M Simpson case "${UNAME_MACHINE_ARCH}" in 1765b0fe478SBruce M Simpson armeb) machine=armeb-unknown ;; 1775b0fe478SBruce M Simpson arm*) machine=arm-unknown ;; 1785b0fe478SBruce M Simpson sh3el) machine=shl-unknown ;; 1795b0fe478SBruce M Simpson sh3eb) machine=sh-unknown ;; 18027df3f5dSRui Paulo sh5el) machine=sh5le-unknown ;; 181*8bdc5a62SPatrick Kelsey earmv*) 182*8bdc5a62SPatrick Kelsey arch=`echo ${UNAME_MACHINE_ARCH} | sed -e 's,^e\(armv[0-9]\).*$,\1,'` 183*8bdc5a62SPatrick Kelsey endian=`echo ${UNAME_MACHINE_ARCH} | sed -ne 's,^.*\(eb\)$,\1,p'` 184*8bdc5a62SPatrick Kelsey machine=${arch}${endian}-unknown 185*8bdc5a62SPatrick Kelsey ;; 1865b0fe478SBruce M Simpson *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 187685295f4SBill Fenner esac 188685295f4SBill Fenner # The Operating System including object format, if it has switched 189685295f4SBill Fenner # to ELF recently, or will in the future. 1905b0fe478SBruce M Simpson case "${UNAME_MACHINE_ARCH}" in 191*8bdc5a62SPatrick Kelsey arm*|earm*|i386|m68k|ns32k|sh3*|sparc|vax) 1925b0fe478SBruce M Simpson eval $set_cc_for_build 193685295f4SBill Fenner if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 19427df3f5dSRui Paulo | grep -q __ELF__ 195685295f4SBill Fenner then 196685295f4SBill Fenner # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 197685295f4SBill Fenner # Return netbsd for either. FIX? 198685295f4SBill Fenner os=netbsd 199685295f4SBill Fenner else 200685295f4SBill Fenner os=netbsdelf 201685295f4SBill Fenner fi 202685295f4SBill Fenner ;; 203685295f4SBill Fenner *) 204685295f4SBill Fenner os=netbsd 205685295f4SBill Fenner ;; 206685295f4SBill Fenner esac 207*8bdc5a62SPatrick Kelsey # Determine ABI tags. 208*8bdc5a62SPatrick Kelsey case "${UNAME_MACHINE_ARCH}" in 209*8bdc5a62SPatrick Kelsey earm*) 210*8bdc5a62SPatrick Kelsey expr='s/^earmv[0-9]/-eabi/;s/eb$//' 211*8bdc5a62SPatrick Kelsey abi=`echo ${UNAME_MACHINE_ARCH} | sed -e "$expr"` 212*8bdc5a62SPatrick Kelsey ;; 213*8bdc5a62SPatrick Kelsey esac 214685295f4SBill Fenner # The OS release 2155b0fe478SBruce M Simpson # Debian GNU/NetBSD machines have a different userland, and 2165b0fe478SBruce M Simpson # thus, need a distinct triplet. However, they do not need 2175b0fe478SBruce M Simpson # kernel version information, so it can be replaced with a 2185b0fe478SBruce M Simpson # suitable tag, in the style of linux-gnu. 2195b0fe478SBruce M Simpson case "${UNAME_VERSION}" in 2205b0fe478SBruce M Simpson Debian*) 2215b0fe478SBruce M Simpson release='-gnu' 2225b0fe478SBruce M Simpson ;; 2235b0fe478SBruce M Simpson *) 224685295f4SBill Fenner release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` 2255b0fe478SBruce M Simpson ;; 2265b0fe478SBruce M Simpson esac 227685295f4SBill Fenner # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 228685295f4SBill Fenner # contains redundant information, the shorter form: 229685295f4SBill Fenner # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 230*8bdc5a62SPatrick Kelsey echo "${machine}-${os}${release}${abi}" 231*8bdc5a62SPatrick Kelsey exit ;; 232*8bdc5a62SPatrick Kelsey *:Bitrig:*:*) 233*8bdc5a62SPatrick Kelsey UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` 234*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE} 23527df3f5dSRui Paulo exit ;; 2365b0fe478SBruce M Simpson *:OpenBSD:*:*) 23727df3f5dSRui Paulo UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 23827df3f5dSRui Paulo echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 23927df3f5dSRui Paulo exit ;; 24027df3f5dSRui Paulo *:ekkoBSD:*:*) 24127df3f5dSRui Paulo echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 24227df3f5dSRui Paulo exit ;; 24327df3f5dSRui Paulo *:SolidBSD:*:*) 24427df3f5dSRui Paulo echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} 24527df3f5dSRui Paulo exit ;; 24627df3f5dSRui Paulo macppc:MirBSD:*:*) 24727df3f5dSRui Paulo echo powerpc-unknown-mirbsd${UNAME_RELEASE} 24827df3f5dSRui Paulo exit ;; 24927df3f5dSRui Paulo *:MirBSD:*:*) 25027df3f5dSRui Paulo echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 25127df3f5dSRui Paulo exit ;; 2524edb46e9SPaul Traina alpha:OSF1:*:*) 25327df3f5dSRui Paulo case $UNAME_RELEASE in 25427df3f5dSRui Paulo *4.0) 255685295f4SBill Fenner UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 25627df3f5dSRui Paulo ;; 25727df3f5dSRui Paulo *5.*) 25827df3f5dSRui Paulo UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 25927df3f5dSRui Paulo ;; 26027df3f5dSRui Paulo esac 2615b0fe478SBruce M Simpson # According to Compaq, /usr/sbin/psrinfo has been available on 2625b0fe478SBruce M Simpson # OSF/1 and Tru64 systems produced since 1995. I hope that 2635b0fe478SBruce M Simpson # covers most systems running today. This code pipes the CPU 2645b0fe478SBruce M Simpson # types through head -n 1, so we only detect the type of CPU 0. 2655b0fe478SBruce M Simpson ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 2665b0fe478SBruce M Simpson case "$ALPHA_CPU_TYPE" in 2675b0fe478SBruce M Simpson "EV4 (21064)") 2685b0fe478SBruce M Simpson UNAME_MACHINE="alpha" ;; 2695b0fe478SBruce M Simpson "EV4.5 (21064)") 2705b0fe478SBruce M Simpson UNAME_MACHINE="alpha" ;; 2715b0fe478SBruce M Simpson "LCA4 (21066/21068)") 2725b0fe478SBruce M Simpson UNAME_MACHINE="alpha" ;; 2735b0fe478SBruce M Simpson "EV5 (21164)") 2745b0fe478SBruce M Simpson UNAME_MACHINE="alphaev5" ;; 2755b0fe478SBruce M Simpson "EV5.6 (21164A)") 2765b0fe478SBruce M Simpson UNAME_MACHINE="alphaev56" ;; 2775b0fe478SBruce M Simpson "EV5.6 (21164PC)") 2785b0fe478SBruce M Simpson UNAME_MACHINE="alphapca56" ;; 2795b0fe478SBruce M Simpson "EV5.7 (21164PC)") 2805b0fe478SBruce M Simpson UNAME_MACHINE="alphapca57" ;; 2815b0fe478SBruce M Simpson "EV6 (21264)") 2825b0fe478SBruce M Simpson UNAME_MACHINE="alphaev6" ;; 2835b0fe478SBruce M Simpson "EV6.7 (21264A)") 2845b0fe478SBruce M Simpson UNAME_MACHINE="alphaev67" ;; 2855b0fe478SBruce M Simpson "EV6.8CB (21264C)") 2865b0fe478SBruce M Simpson UNAME_MACHINE="alphaev68" ;; 2875b0fe478SBruce M Simpson "EV6.8AL (21264B)") 2885b0fe478SBruce M Simpson UNAME_MACHINE="alphaev68" ;; 2895b0fe478SBruce M Simpson "EV6.8CX (21264D)") 2905b0fe478SBruce M Simpson UNAME_MACHINE="alphaev68" ;; 2915b0fe478SBruce M Simpson "EV6.9A (21264/EV69A)") 2925b0fe478SBruce M Simpson UNAME_MACHINE="alphaev69" ;; 2935b0fe478SBruce M Simpson "EV7 (21364)") 2945b0fe478SBruce M Simpson UNAME_MACHINE="alphaev7" ;; 2955b0fe478SBruce M Simpson "EV7.9 (21364A)") 2965b0fe478SBruce M Simpson UNAME_MACHINE="alphaev79" ;; 2975b0fe478SBruce M Simpson esac 29827df3f5dSRui Paulo # A Pn.n version is a patched version. 2994edb46e9SPaul Traina # A Vn.n version is a released version. 3004edb46e9SPaul Traina # A Tn.n version is a released field test version. 3014edb46e9SPaul Traina # A Xn.n version is an unreleased experimental baselevel. 3024edb46e9SPaul Traina # 1.2 uses "1.2" for uname -r. 30327df3f5dSRui Paulo echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 3043c602fabSXin LI # Reset EXIT trap before exiting to avoid spurious non-zero exit code. 3053c602fabSXin LI exitcode=$? 3063c602fabSXin LI trap '' 0 3073c602fabSXin LI exit $exitcode ;; 308685295f4SBill Fenner Alpha\ *:Windows_NT*:*) 309685295f4SBill Fenner # How do we know it's Interix rather than the generic POSIX subsystem? 310685295f4SBill Fenner # Should we change UNAME_MACHINE based on the output of uname instead 311685295f4SBill Fenner # of the specific Alpha model? 312685295f4SBill Fenner echo alpha-pc-interix 31327df3f5dSRui Paulo exit ;; 3144edb46e9SPaul Traina 21064:Windows_NT:50:3) 3154edb46e9SPaul Traina echo alpha-dec-winnt3.5 31627df3f5dSRui Paulo exit ;; 3174edb46e9SPaul Traina Amiga*:UNIX_System_V:4.0:*) 318685295f4SBill Fenner echo m68k-unknown-sysv4 31927df3f5dSRui Paulo exit ;; 320685295f4SBill Fenner *:[Aa]miga[Oo][Ss]:*:*) 321685295f4SBill Fenner echo ${UNAME_MACHINE}-unknown-amigaos 32227df3f5dSRui Paulo exit ;; 3235b0fe478SBruce M Simpson *:[Mm]orph[Oo][Ss]:*:*) 3245b0fe478SBruce M Simpson echo ${UNAME_MACHINE}-unknown-morphos 32527df3f5dSRui Paulo exit ;; 326685295f4SBill Fenner *:OS/390:*:*) 327685295f4SBill Fenner echo i370-ibm-openedition 32827df3f5dSRui Paulo exit ;; 32927df3f5dSRui Paulo *:z/VM:*:*) 33027df3f5dSRui Paulo echo s390-ibm-zvmoe 33127df3f5dSRui Paulo exit ;; 3325b0fe478SBruce M Simpson *:OS400:*:*) 3335b0fe478SBruce M Simpson echo powerpc-ibm-os400 33427df3f5dSRui Paulo exit ;; 3354edb46e9SPaul Traina arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 3364edb46e9SPaul Traina echo arm-acorn-riscix${UNAME_RELEASE} 33727df3f5dSRui Paulo exit ;; 338*8bdc5a62SPatrick Kelsey arm*:riscos:*:*|arm*:RISCOS:*:*) 33927df3f5dSRui Paulo echo arm-unknown-riscos 34027df3f5dSRui Paulo exit ;; 341a90e161bSBill Fenner SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 342685295f4SBill Fenner echo hppa1.1-hitachi-hiuxmpp 34327df3f5dSRui Paulo exit ;; 344685295f4SBill Fenner Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 3454de76e31SBill Fenner # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 3464edb46e9SPaul Traina if test "`(/bin/universe) 2>/dev/null`" = att ; then 3474edb46e9SPaul Traina echo pyramid-pyramid-sysv3 3484edb46e9SPaul Traina else 3494edb46e9SPaul Traina echo pyramid-pyramid-bsd 3504edb46e9SPaul Traina fi 35127df3f5dSRui Paulo exit ;; 352685295f4SBill Fenner NILE*:*:*:dcosx) 3534de76e31SBill Fenner echo pyramid-pyramid-svr4 35427df3f5dSRui Paulo exit ;; 3555b0fe478SBruce M Simpson DRS?6000:unix:4.0:6*) 3565b0fe478SBruce M Simpson echo sparc-icl-nx6 35727df3f5dSRui Paulo exit ;; 35827df3f5dSRui Paulo DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 3595b0fe478SBruce M Simpson case `/usr/bin/uname -p` in 36027df3f5dSRui Paulo sparc) echo sparc-icl-nx7; exit ;; 3615b0fe478SBruce M Simpson esac ;; 36227df3f5dSRui Paulo s390x:SunOS:*:*) 36327df3f5dSRui Paulo echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 36427df3f5dSRui Paulo exit ;; 365685295f4SBill Fenner sun4H:SunOS:5.*:*) 366685295f4SBill Fenner echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 36727df3f5dSRui Paulo exit ;; 3684de76e31SBill Fenner sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 3694edb46e9SPaul Traina echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 37027df3f5dSRui Paulo exit ;; 37127df3f5dSRui Paulo i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) 37227df3f5dSRui Paulo echo i386-pc-auroraux${UNAME_RELEASE} 37327df3f5dSRui Paulo exit ;; 37427df3f5dSRui Paulo i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) 37527df3f5dSRui Paulo eval $set_cc_for_build 37627df3f5dSRui Paulo SUN_ARCH="i386" 37727df3f5dSRui Paulo # If there is a compiler, see if it is configured for 64-bit objects. 37827df3f5dSRui Paulo # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. 37927df3f5dSRui Paulo # This test works for both compilers. 38027df3f5dSRui Paulo if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 38127df3f5dSRui Paulo if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ 38227df3f5dSRui Paulo (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 38327df3f5dSRui Paulo grep IS_64BIT_ARCH >/dev/null 38427df3f5dSRui Paulo then 38527df3f5dSRui Paulo SUN_ARCH="x86_64" 38627df3f5dSRui Paulo fi 38727df3f5dSRui Paulo fi 38827df3f5dSRui Paulo echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 38927df3f5dSRui Paulo exit ;; 3904edb46e9SPaul Traina sun4*:SunOS:6*:*) 3914edb46e9SPaul Traina # According to config.sub, this is the proper way to canonicalize 3924edb46e9SPaul Traina # SunOS6. Hard to guess exactly what SunOS6 will be like, but 3934edb46e9SPaul Traina # it's likely to be more like Solaris than SunOS4. 3944edb46e9SPaul Traina echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 39527df3f5dSRui Paulo exit ;; 3964edb46e9SPaul Traina sun4*:SunOS:*:*) 3974edb46e9SPaul Traina case "`/usr/bin/arch -k`" in 3984edb46e9SPaul Traina Series*|S4*) 3994edb46e9SPaul Traina UNAME_RELEASE=`uname -v` 4004edb46e9SPaul Traina ;; 4014edb46e9SPaul Traina esac 4024edb46e9SPaul Traina # Japanese Language versions have a version number like `4.1.3-JL'. 4034edb46e9SPaul Traina echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 40427df3f5dSRui Paulo exit ;; 4054edb46e9SPaul Traina sun3*:SunOS:*:*) 4064edb46e9SPaul Traina echo m68k-sun-sunos${UNAME_RELEASE} 40727df3f5dSRui Paulo exit ;; 408685295f4SBill Fenner sun*:*:4.2BSD:*) 4095b0fe478SBruce M Simpson UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 410685295f4SBill Fenner test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 411685295f4SBill Fenner case "`/bin/arch`" in 412685295f4SBill Fenner sun3) 413685295f4SBill Fenner echo m68k-sun-sunos${UNAME_RELEASE} 414685295f4SBill Fenner ;; 415685295f4SBill Fenner sun4) 416685295f4SBill Fenner echo sparc-sun-sunos${UNAME_RELEASE} 417685295f4SBill Fenner ;; 418685295f4SBill Fenner esac 41927df3f5dSRui Paulo exit ;; 4204de76e31SBill Fenner aushp:SunOS:*:*) 4214de76e31SBill Fenner echo sparc-auspex-sunos${UNAME_RELEASE} 42227df3f5dSRui Paulo exit ;; 423685295f4SBill Fenner # The situation for MiNT is a little confusing. The machine name 424685295f4SBill Fenner # can be virtually everything (everything which is not 425685295f4SBill Fenner # "atarist" or "atariste" at least should have a processor 426685295f4SBill Fenner # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 427685295f4SBill Fenner # to the lowercase version "mint" (or "freemint"). Finally 428685295f4SBill Fenner # the system name "TOS" denotes a system which is actually not 429685295f4SBill Fenner # MiNT. But MiNT is downward compatible to TOS, so this should 430685295f4SBill Fenner # be no problem. 431685295f4SBill Fenner atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 432685295f4SBill Fenner echo m68k-atari-mint${UNAME_RELEASE} 43327df3f5dSRui Paulo exit ;; 434685295f4SBill Fenner atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 435685295f4SBill Fenner echo m68k-atari-mint${UNAME_RELEASE} 43627df3f5dSRui Paulo exit ;; 437685295f4SBill Fenner *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 438685295f4SBill Fenner echo m68k-atari-mint${UNAME_RELEASE} 43927df3f5dSRui Paulo exit ;; 440685295f4SBill Fenner milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 441685295f4SBill Fenner echo m68k-milan-mint${UNAME_RELEASE} 44227df3f5dSRui Paulo exit ;; 443685295f4SBill Fenner hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 444685295f4SBill Fenner echo m68k-hades-mint${UNAME_RELEASE} 44527df3f5dSRui Paulo exit ;; 446685295f4SBill Fenner *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 447685295f4SBill Fenner echo m68k-unknown-mint${UNAME_RELEASE} 44827df3f5dSRui Paulo exit ;; 44927df3f5dSRui Paulo m68k:machten:*:*) 45027df3f5dSRui Paulo echo m68k-apple-machten${UNAME_RELEASE} 45127df3f5dSRui Paulo exit ;; 4524de76e31SBill Fenner powerpc:machten:*:*) 4534de76e31SBill Fenner echo powerpc-apple-machten${UNAME_RELEASE} 45427df3f5dSRui Paulo exit ;; 4554de76e31SBill Fenner RISC*:Mach:*:*) 4564de76e31SBill Fenner echo mips-dec-mach_bsd4.3 45727df3f5dSRui Paulo exit ;; 4584edb46e9SPaul Traina RISC*:ULTRIX:*:*) 4594edb46e9SPaul Traina echo mips-dec-ultrix${UNAME_RELEASE} 46027df3f5dSRui Paulo exit ;; 4614edb46e9SPaul Traina VAX*:ULTRIX*:*:*) 4624edb46e9SPaul Traina echo vax-dec-ultrix${UNAME_RELEASE} 46327df3f5dSRui Paulo exit ;; 464685295f4SBill Fenner 2020:CLIX:*:* | 2430:CLIX:*:*) 465685295f4SBill Fenner echo clipper-intergraph-clix${UNAME_RELEASE} 46627df3f5dSRui Paulo exit ;; 4674de76e31SBill Fenner mips:*:*:UMIPS | mips:*:*:RISCos) 4685b0fe478SBruce M Simpson eval $set_cc_for_build 469685295f4SBill Fenner sed 's/^ //' << EOF >$dummy.c 470685295f4SBill Fenner#ifdef __cplusplus 471685295f4SBill Fenner#include <stdio.h> /* for printf() prototype */ 472685295f4SBill Fenner int main (int argc, char *argv[]) { 473685295f4SBill Fenner#else 474685295f4SBill Fenner int main (argc, argv) int argc; char *argv[]; { 475685295f4SBill Fenner#endif 4764de76e31SBill Fenner #if defined (host_mips) && defined (MIPSEB) 4774de76e31SBill Fenner #if defined (SYSTYPE_SYSV) 4784de76e31SBill Fenner printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 4794de76e31SBill Fenner #endif 4804de76e31SBill Fenner #if defined (SYSTYPE_SVR4) 4814de76e31SBill Fenner printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 4824de76e31SBill Fenner #endif 4834de76e31SBill Fenner #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 4844de76e31SBill Fenner printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 4854de76e31SBill Fenner #endif 4864de76e31SBill Fenner #endif 4874de76e31SBill Fenner exit (-1); 4884de76e31SBill Fenner } 4894de76e31SBill FennerEOF 49027df3f5dSRui Paulo $CC_FOR_BUILD -o $dummy $dummy.c && 49127df3f5dSRui Paulo dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 49227df3f5dSRui Paulo SYSTEM_NAME=`$dummy $dummyarg` && 49327df3f5dSRui Paulo { echo "$SYSTEM_NAME"; exit; } 4944edb46e9SPaul Traina echo mips-mips-riscos${UNAME_RELEASE} 49527df3f5dSRui Paulo exit ;; 496a90e161bSBill Fenner Motorola:PowerMAX_OS:*:*) 497a90e161bSBill Fenner echo powerpc-motorola-powermax 49827df3f5dSRui Paulo exit ;; 4995b0fe478SBruce M Simpson Motorola:*:4.3:PL8-*) 5005b0fe478SBruce M Simpson echo powerpc-harris-powermax 50127df3f5dSRui Paulo exit ;; 5025b0fe478SBruce M Simpson Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 5035b0fe478SBruce M Simpson echo powerpc-harris-powermax 50427df3f5dSRui Paulo exit ;; 5054edb46e9SPaul Traina Night_Hawk:Power_UNIX:*:*) 5064edb46e9SPaul Traina echo powerpc-harris-powerunix 50727df3f5dSRui Paulo exit ;; 5084edb46e9SPaul Traina m88k:CX/UX:7*:*) 5094edb46e9SPaul Traina echo m88k-harris-cxux7 51027df3f5dSRui Paulo exit ;; 5114edb46e9SPaul Traina m88k:*:4*:R4*) 5124edb46e9SPaul Traina echo m88k-motorola-sysv4 51327df3f5dSRui Paulo exit ;; 5144edb46e9SPaul Traina m88k:*:3*:R3*) 5154edb46e9SPaul Traina echo m88k-motorola-sysv3 51627df3f5dSRui Paulo exit ;; 5174edb46e9SPaul Traina AViiON:dgux:*:*) 5184edb46e9SPaul Traina # DG/UX returns AViiON for all architectures 5194edb46e9SPaul Traina UNAME_PROCESSOR=`/usr/bin/uname -p` 520685295f4SBill Fenner if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 521685295f4SBill Fenner then 522685295f4SBill Fenner if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 523685295f4SBill Fenner [ ${TARGET_BINARY_INTERFACE}x = x ] 524685295f4SBill Fenner then 5254edb46e9SPaul Traina echo m88k-dg-dgux${UNAME_RELEASE} 5264edb46e9SPaul Traina else 5274edb46e9SPaul Traina echo m88k-dg-dguxbcs${UNAME_RELEASE} 5284edb46e9SPaul Traina fi 529685295f4SBill Fenner else 530685295f4SBill Fenner echo i586-dg-dgux${UNAME_RELEASE} 5314edb46e9SPaul Traina fi 53227df3f5dSRui Paulo exit ;; 5334edb46e9SPaul Traina M88*:DolphinOS:*:*) # DolphinOS (SVR3) 5344edb46e9SPaul Traina echo m88k-dolphin-sysv3 53527df3f5dSRui Paulo exit ;; 5364edb46e9SPaul Traina M88*:*:R3*:*) 5374edb46e9SPaul Traina # Delta 88k system running SVR3 5384edb46e9SPaul Traina echo m88k-motorola-sysv3 53927df3f5dSRui Paulo exit ;; 5404edb46e9SPaul Traina XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 5414edb46e9SPaul Traina echo m88k-tektronix-sysv3 54227df3f5dSRui Paulo exit ;; 5434edb46e9SPaul Traina Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 5444edb46e9SPaul Traina echo m68k-tektronix-bsd 54527df3f5dSRui Paulo exit ;; 5464edb46e9SPaul Traina *:IRIX*:*:*) 5474edb46e9SPaul Traina echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 54827df3f5dSRui Paulo exit ;; 5494edb46e9SPaul Traina ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 5504edb46e9SPaul Traina echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 55127df3f5dSRui Paulo exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 552a90e161bSBill Fenner i*86:AIX:*:*) 5534edb46e9SPaul Traina echo i386-ibm-aix 55427df3f5dSRui Paulo exit ;; 555a90e161bSBill Fenner ia64:AIX:*:*) 556a90e161bSBill Fenner if [ -x /usr/bin/oslevel ] ; then 557a90e161bSBill Fenner IBM_REV=`/usr/bin/oslevel` 558a90e161bSBill Fenner else 559a90e161bSBill Fenner IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 560a90e161bSBill Fenner fi 561a90e161bSBill Fenner echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 56227df3f5dSRui Paulo exit ;; 5634edb46e9SPaul Traina *:AIX:2:3) 5644edb46e9SPaul Traina if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 5655b0fe478SBruce M Simpson eval $set_cc_for_build 566685295f4SBill Fenner sed 's/^ //' << EOF >$dummy.c 5674edb46e9SPaul Traina #include <sys/systemcfg.h> 5684edb46e9SPaul Traina 5694edb46e9SPaul Traina main() 5704edb46e9SPaul Traina { 5714edb46e9SPaul Traina if (!__power_pc()) 5724edb46e9SPaul Traina exit(1); 5734edb46e9SPaul Traina puts("powerpc-ibm-aix3.2.5"); 5744edb46e9SPaul Traina exit(0); 5754edb46e9SPaul Traina } 5764edb46e9SPaul TrainaEOF 57727df3f5dSRui Paulo if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 57827df3f5dSRui Paulo then 57927df3f5dSRui Paulo echo "$SYSTEM_NAME" 58027df3f5dSRui Paulo else 5814edb46e9SPaul Traina echo rs6000-ibm-aix3.2.5 58227df3f5dSRui Paulo fi 5834edb46e9SPaul Traina elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 5844edb46e9SPaul Traina echo rs6000-ibm-aix3.2.4 5854edb46e9SPaul Traina else 5864edb46e9SPaul Traina echo rs6000-ibm-aix3.2 5874edb46e9SPaul Traina fi 58827df3f5dSRui Paulo exit ;; 5893c602fabSXin LI *:AIX:*:[4567]) 5905b0fe478SBruce M Simpson IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 591a90e161bSBill Fenner if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 5924edb46e9SPaul Traina IBM_ARCH=rs6000 5934edb46e9SPaul Traina else 5944edb46e9SPaul Traina IBM_ARCH=powerpc 5954edb46e9SPaul Traina fi 596*8bdc5a62SPatrick Kelsey if [ -x /usr/bin/lslpp ] ; then 597*8bdc5a62SPatrick Kelsey IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | 598*8bdc5a62SPatrick Kelsey awk -F: '{ print $3 }' | sed s/[0-9]*$/0/` 5994edb46e9SPaul Traina else 600a90e161bSBill Fenner IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 6014edb46e9SPaul Traina fi 6024edb46e9SPaul Traina echo ${IBM_ARCH}-ibm-aix${IBM_REV} 60327df3f5dSRui Paulo exit ;; 6044edb46e9SPaul Traina *:AIX:*:*) 6054edb46e9SPaul Traina echo rs6000-ibm-aix 60627df3f5dSRui Paulo exit ;; 6074edb46e9SPaul Traina ibmrt:4.4BSD:*|romp-ibm:BSD:*) 6084edb46e9SPaul Traina echo romp-ibm-bsd4.4 60927df3f5dSRui Paulo exit ;; 610685295f4SBill Fenner ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 6114edb46e9SPaul Traina echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 61227df3f5dSRui Paulo exit ;; # report: romp-ibm BSD 4.3 6134edb46e9SPaul Traina *:BOSX:*:*) 6144edb46e9SPaul Traina echo rs6000-bull-bosx 61527df3f5dSRui Paulo exit ;; 6164edb46e9SPaul Traina DPX/2?00:B.O.S.:*:*) 6174edb46e9SPaul Traina echo m68k-bull-sysv3 61827df3f5dSRui Paulo exit ;; 6194edb46e9SPaul Traina 9000/[34]??:4.3bsd:1.*:*) 6204edb46e9SPaul Traina echo m68k-hp-bsd 62127df3f5dSRui Paulo exit ;; 6224edb46e9SPaul Traina hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 6234edb46e9SPaul Traina echo m68k-hp-bsd4.4 62427df3f5dSRui Paulo exit ;; 625685295f4SBill Fenner 9000/[34678]??:HP-UX:*:*) 626685295f4SBill Fenner HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 6274edb46e9SPaul Traina case "${UNAME_MACHINE}" in 6284edb46e9SPaul Traina 9000/31? ) HP_ARCH=m68000 ;; 6294edb46e9SPaul Traina 9000/[34]?? ) HP_ARCH=m68k ;; 630685295f4SBill Fenner 9000/[678][0-9][0-9]) 631685295f4SBill Fenner if [ -x /usr/bin/getconf ]; then 632685295f4SBill Fenner sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 633685295f4SBill Fenner sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 634685295f4SBill Fenner case "${sc_cpu_version}" in 635685295f4SBill Fenner 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 636685295f4SBill Fenner 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 637685295f4SBill Fenner 532) # CPU_PA_RISC2_0 638685295f4SBill Fenner case "${sc_kernel_bits}" in 639685295f4SBill Fenner 32) HP_ARCH="hppa2.0n" ;; 640685295f4SBill Fenner 64) HP_ARCH="hppa2.0w" ;; 6415b0fe478SBruce M Simpson '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 642685295f4SBill Fenner esac ;; 6434edb46e9SPaul Traina esac 6445b0fe478SBruce M Simpson fi 645685295f4SBill Fenner if [ "${HP_ARCH}" = "" ]; then 6465b0fe478SBruce M Simpson eval $set_cc_for_build 647685295f4SBill Fenner sed 's/^ //' << EOF >$dummy.c 648685295f4SBill Fenner 649685295f4SBill Fenner #define _HPUX_SOURCE 650685295f4SBill Fenner #include <stdlib.h> 651685295f4SBill Fenner #include <unistd.h> 652685295f4SBill Fenner 653685295f4SBill Fenner int main () 654685295f4SBill Fenner { 655685295f4SBill Fenner #if defined(_SC_KERNEL_BITS) 656685295f4SBill Fenner long bits = sysconf(_SC_KERNEL_BITS); 657685295f4SBill Fenner #endif 658685295f4SBill Fenner long cpu = sysconf (_SC_CPU_VERSION); 659685295f4SBill Fenner 660685295f4SBill Fenner switch (cpu) 661685295f4SBill Fenner { 662685295f4SBill Fenner case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 663685295f4SBill Fenner case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 664685295f4SBill Fenner case CPU_PA_RISC2_0: 665685295f4SBill Fenner #if defined(_SC_KERNEL_BITS) 666685295f4SBill Fenner switch (bits) 667685295f4SBill Fenner { 668685295f4SBill Fenner case 64: puts ("hppa2.0w"); break; 669685295f4SBill Fenner case 32: puts ("hppa2.0n"); break; 670685295f4SBill Fenner default: puts ("hppa2.0"); break; 671685295f4SBill Fenner } break; 672685295f4SBill Fenner #else /* !defined(_SC_KERNEL_BITS) */ 673685295f4SBill Fenner puts ("hppa2.0"); break; 674685295f4SBill Fenner #endif 675685295f4SBill Fenner default: puts ("hppa1.0"); break; 676685295f4SBill Fenner } 677685295f4SBill Fenner exit (0); 678685295f4SBill Fenner } 679685295f4SBill FennerEOF 6805b0fe478SBruce M Simpson (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 6815b0fe478SBruce M Simpson test -z "$HP_ARCH" && HP_ARCH=hppa 682685295f4SBill Fenner fi ;; 683685295f4SBill Fenner esac 6845b0fe478SBruce M Simpson if [ ${HP_ARCH} = "hppa2.0w" ] 6855b0fe478SBruce M Simpson then 68627df3f5dSRui Paulo eval $set_cc_for_build 68727df3f5dSRui Paulo 68827df3f5dSRui Paulo # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 68927df3f5dSRui Paulo # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 69027df3f5dSRui Paulo # generating 64-bit code. GNU and HP use different nomenclature: 69127df3f5dSRui Paulo # 69227df3f5dSRui Paulo # $ CC_FOR_BUILD=cc ./config.guess 69327df3f5dSRui Paulo # => hppa2.0w-hp-hpux11.23 69427df3f5dSRui Paulo # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 69527df3f5dSRui Paulo # => hppa64-hp-hpux11.23 69627df3f5dSRui Paulo 69727df3f5dSRui Paulo if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | 69827df3f5dSRui Paulo grep -q __LP64__ 6995b0fe478SBruce M Simpson then 7005b0fe478SBruce M Simpson HP_ARCH="hppa2.0w" 7015b0fe478SBruce M Simpson else 7025b0fe478SBruce M Simpson HP_ARCH="hppa64" 7035b0fe478SBruce M Simpson fi 7045b0fe478SBruce M Simpson fi 7054edb46e9SPaul Traina echo ${HP_ARCH}-hp-hpux${HPUX_REV} 70627df3f5dSRui Paulo exit ;; 707a90e161bSBill Fenner ia64:HP-UX:*:*) 708a90e161bSBill Fenner HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 709a90e161bSBill Fenner echo ia64-hp-hpux${HPUX_REV} 71027df3f5dSRui Paulo exit ;; 7114edb46e9SPaul Traina 3050*:HI-UX:*:*) 7125b0fe478SBruce M Simpson eval $set_cc_for_build 713685295f4SBill Fenner sed 's/^ //' << EOF >$dummy.c 7144edb46e9SPaul Traina #include <unistd.h> 7154edb46e9SPaul Traina int 7164edb46e9SPaul Traina main () 7174edb46e9SPaul Traina { 7184edb46e9SPaul Traina long cpu = sysconf (_SC_CPU_VERSION); 7194edb46e9SPaul Traina /* The order matters, because CPU_IS_HP_MC68K erroneously returns 7204edb46e9SPaul Traina true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 7214edb46e9SPaul Traina results, however. */ 7224edb46e9SPaul Traina if (CPU_IS_PA_RISC (cpu)) 7234edb46e9SPaul Traina { 7244edb46e9SPaul Traina switch (cpu) 7254edb46e9SPaul Traina { 7264edb46e9SPaul Traina case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 7274edb46e9SPaul Traina case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 7284edb46e9SPaul Traina case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 7294edb46e9SPaul Traina default: puts ("hppa-hitachi-hiuxwe2"); break; 7304edb46e9SPaul Traina } 7314edb46e9SPaul Traina } 7324edb46e9SPaul Traina else if (CPU_IS_HP_MC68K (cpu)) 7334edb46e9SPaul Traina puts ("m68k-hitachi-hiuxwe2"); 7344edb46e9SPaul Traina else puts ("unknown-hitachi-hiuxwe2"); 7354edb46e9SPaul Traina exit (0); 7364edb46e9SPaul Traina } 7374edb46e9SPaul TrainaEOF 73827df3f5dSRui Paulo $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 73927df3f5dSRui Paulo { echo "$SYSTEM_NAME"; exit; } 7404edb46e9SPaul Traina echo unknown-hitachi-hiuxwe2 74127df3f5dSRui Paulo exit ;; 7424edb46e9SPaul Traina 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 7434edb46e9SPaul Traina echo hppa1.1-hp-bsd 74427df3f5dSRui Paulo exit ;; 7454edb46e9SPaul Traina 9000/8??:4.3bsd:*:*) 7464edb46e9SPaul Traina echo hppa1.0-hp-bsd 74727df3f5dSRui Paulo exit ;; 7485b0fe478SBruce M Simpson *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 749685295f4SBill Fenner echo hppa1.0-hp-mpeix 75027df3f5dSRui Paulo exit ;; 7514edb46e9SPaul Traina hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 7524edb46e9SPaul Traina echo hppa1.1-hp-osf 75327df3f5dSRui Paulo exit ;; 7544edb46e9SPaul Traina hp8??:OSF1:*:*) 7554edb46e9SPaul Traina echo hppa1.0-hp-osf 75627df3f5dSRui Paulo exit ;; 757a90e161bSBill Fenner i*86:OSF1:*:*) 7584de76e31SBill Fenner if [ -x /usr/sbin/sysversion ] ; then 7594de76e31SBill Fenner echo ${UNAME_MACHINE}-unknown-osf1mk 7604de76e31SBill Fenner else 7614de76e31SBill Fenner echo ${UNAME_MACHINE}-unknown-osf1 7624de76e31SBill Fenner fi 76327df3f5dSRui Paulo exit ;; 7644edb46e9SPaul Traina parisc*:Lites*:*:*) 7654edb46e9SPaul Traina echo hppa1.1-hp-lites 76627df3f5dSRui Paulo exit ;; 7674edb46e9SPaul Traina C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 7684edb46e9SPaul Traina echo c1-convex-bsd 76927df3f5dSRui Paulo exit ;; 7704edb46e9SPaul Traina C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 7714edb46e9SPaul Traina if getsysinfo -f scalar_acc 7724edb46e9SPaul Traina then echo c32-convex-bsd 7734edb46e9SPaul Traina else echo c2-convex-bsd 7744edb46e9SPaul Traina fi 77527df3f5dSRui Paulo exit ;; 7764edb46e9SPaul Traina C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 7774edb46e9SPaul Traina echo c34-convex-bsd 77827df3f5dSRui Paulo exit ;; 7794edb46e9SPaul Traina C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 7804edb46e9SPaul Traina echo c38-convex-bsd 78127df3f5dSRui Paulo exit ;; 7824edb46e9SPaul Traina C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 7834edb46e9SPaul Traina echo c4-convex-bsd 78427df3f5dSRui Paulo exit ;; 7854edb46e9SPaul Traina CRAY*Y-MP:*:*:*) 7865b0fe478SBruce M Simpson echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 78727df3f5dSRui Paulo exit ;; 7884de76e31SBill Fenner CRAY*[A-Z]90:*:*:*) 7894de76e31SBill Fenner echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 7904de76e31SBill Fenner | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 7915b0fe478SBruce M Simpson -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 7925b0fe478SBruce M Simpson -e 's/\.[^.]*$/.X/' 79327df3f5dSRui Paulo exit ;; 7944de76e31SBill Fenner CRAY*TS:*:*:*) 795685295f4SBill Fenner echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 79627df3f5dSRui Paulo exit ;; 797685295f4SBill Fenner CRAY*T3E:*:*:*) 798685295f4SBill Fenner echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 79927df3f5dSRui Paulo exit ;; 800685295f4SBill Fenner CRAY*SV1:*:*:*) 801685295f4SBill Fenner echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 80227df3f5dSRui Paulo exit ;; 8035b0fe478SBruce M Simpson *:UNICOS/mp:*:*) 80427df3f5dSRui Paulo echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 80527df3f5dSRui Paulo exit ;; 806a90e161bSBill Fenner F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 807a90e161bSBill Fenner FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 808685295f4SBill Fenner FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 8094de76e31SBill Fenner FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 810a90e161bSBill Fenner echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 81127df3f5dSRui Paulo exit ;; 8125b0fe478SBruce M Simpson 5000:UNIX_System_V:4.*:*) 8135b0fe478SBruce M Simpson FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 8145b0fe478SBruce M Simpson FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` 8155b0fe478SBruce M Simpson echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 81627df3f5dSRui Paulo exit ;; 817a90e161bSBill Fenner i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 8184de76e31SBill Fenner echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 81927df3f5dSRui Paulo exit ;; 820685295f4SBill Fenner sparc*:BSD/OS:*:*) 821685295f4SBill Fenner echo sparc-unknown-bsdi${UNAME_RELEASE} 82227df3f5dSRui Paulo exit ;; 823685295f4SBill Fenner *:BSD/OS:*:*) 824685295f4SBill Fenner echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 82527df3f5dSRui Paulo exit ;; 8264edb46e9SPaul Traina *:FreeBSD:*:*) 8273c602fabSXin LI UNAME_PROCESSOR=`/usr/bin/uname -p` 8283c602fabSXin LI case ${UNAME_PROCESSOR} in 82927df3f5dSRui Paulo amd64) 83027df3f5dSRui Paulo echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 83127df3f5dSRui Paulo *) 8323c602fabSXin LI echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 83327df3f5dSRui Paulo esac 83427df3f5dSRui Paulo exit ;; 8354edb46e9SPaul Traina i*:CYGWIN*:*) 836685295f4SBill Fenner echo ${UNAME_MACHINE}-pc-cygwin 83727df3f5dSRui Paulo exit ;; 838*8bdc5a62SPatrick Kelsey *:MINGW64*:*) 839*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-pc-mingw64 840*8bdc5a62SPatrick Kelsey exit ;; 84127df3f5dSRui Paulo *:MINGW*:*) 842685295f4SBill Fenner echo ${UNAME_MACHINE}-pc-mingw32 84327df3f5dSRui Paulo exit ;; 844*8bdc5a62SPatrick Kelsey *:MSYS*:*) 8453c602fabSXin LI echo ${UNAME_MACHINE}-pc-msys 8463c602fabSXin LI exit ;; 84727df3f5dSRui Paulo i*:windows32*:*) 84827df3f5dSRui Paulo # uname -m includes "-pc" on this system. 84927df3f5dSRui Paulo echo ${UNAME_MACHINE}-mingw32 85027df3f5dSRui Paulo exit ;; 851685295f4SBill Fenner i*:PW*:*) 852685295f4SBill Fenner echo ${UNAME_MACHINE}-pc-pw32 85327df3f5dSRui Paulo exit ;; 85427df3f5dSRui Paulo *:Interix*:*) 85527df3f5dSRui Paulo case ${UNAME_MACHINE} in 85627df3f5dSRui Paulo x86) 85727df3f5dSRui Paulo echo i586-pc-interix${UNAME_RELEASE} 85827df3f5dSRui Paulo exit ;; 85927df3f5dSRui Paulo authenticamd | genuineintel | EM64T) 86027df3f5dSRui Paulo echo x86_64-unknown-interix${UNAME_RELEASE} 86127df3f5dSRui Paulo exit ;; 86227df3f5dSRui Paulo IA64) 86327df3f5dSRui Paulo echo ia64-unknown-interix${UNAME_RELEASE} 86427df3f5dSRui Paulo exit ;; 86527df3f5dSRui Paulo esac ;; 8665b0fe478SBruce M Simpson [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 8675b0fe478SBruce M Simpson echo i${UNAME_MACHINE}-pc-mks 86827df3f5dSRui Paulo exit ;; 86927df3f5dSRui Paulo 8664:Windows_NT:*) 87027df3f5dSRui Paulo echo x86_64-pc-mks 87127df3f5dSRui Paulo exit ;; 872685295f4SBill Fenner i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 873685295f4SBill Fenner # How do we know it's Interix rather than the generic POSIX subsystem? 874685295f4SBill Fenner # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 875685295f4SBill Fenner # UNAME_MACHINE based on the output of uname instead of i386? 8765b0fe478SBruce M Simpson echo i586-pc-interix 87727df3f5dSRui Paulo exit ;; 878685295f4SBill Fenner i*:UWIN*:*) 879685295f4SBill Fenner echo ${UNAME_MACHINE}-pc-uwin 88027df3f5dSRui Paulo exit ;; 88127df3f5dSRui Paulo amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 88227df3f5dSRui Paulo echo x86_64-unknown-cygwin 88327df3f5dSRui Paulo exit ;; 8844edb46e9SPaul Traina p*:CYGWIN*:*) 885685295f4SBill Fenner echo powerpcle-unknown-cygwin 88627df3f5dSRui Paulo exit ;; 8874edb46e9SPaul Traina prep*:SunOS:5.*:*) 8884edb46e9SPaul Traina echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 88927df3f5dSRui Paulo exit ;; 8904edb46e9SPaul Traina *:GNU:*:*) 8915b0fe478SBruce M Simpson # the GNU system 892*8bdc5a62SPatrick Kelsey echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 89327df3f5dSRui Paulo exit ;; 8945b0fe478SBruce M Simpson *:GNU/*:*:*) 8955b0fe478SBruce M Simpson # other systems with GNU libc and userland 896*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC} 89727df3f5dSRui Paulo exit ;; 898685295f4SBill Fenner i*86:Minix:*:*) 899685295f4SBill Fenner echo ${UNAME_MACHINE}-pc-minix 90027df3f5dSRui Paulo exit ;; 9013c602fabSXin LI aarch64:Linux:*:*) 902*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 9033c602fabSXin LI exit ;; 9043c602fabSXin LI aarch64_be:Linux:*:*) 9053c602fabSXin LI UNAME_MACHINE=aarch64_be 906*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 9073c602fabSXin LI exit ;; 908a90e161bSBill Fenner alpha:Linux:*:*) 9095b0fe478SBruce M Simpson case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 9105b0fe478SBruce M Simpson EV5) UNAME_MACHINE=alphaev5 ;; 9115b0fe478SBruce M Simpson EV56) UNAME_MACHINE=alphaev56 ;; 9125b0fe478SBruce M Simpson PCA56) UNAME_MACHINE=alphapca56 ;; 9135b0fe478SBruce M Simpson PCA57) UNAME_MACHINE=alphapca56 ;; 9145b0fe478SBruce M Simpson EV6) UNAME_MACHINE=alphaev6 ;; 9155b0fe478SBruce M Simpson EV67) UNAME_MACHINE=alphaev67 ;; 9165b0fe478SBruce M Simpson EV68*) UNAME_MACHINE=alphaev68 ;; 917685295f4SBill Fenner esac 91827df3f5dSRui Paulo objdump --private-headers /bin/sh | grep -q ld.so.1 919*8bdc5a62SPatrick Kelsey if test "$?" = 0 ; then LIBC="gnulibc1" ; fi 920*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 921*8bdc5a62SPatrick Kelsey exit ;; 922*8bdc5a62SPatrick Kelsey arc:Linux:*:* | arceb:Linux:*:*) 923*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 92427df3f5dSRui Paulo exit ;; 92527df3f5dSRui Paulo arm*:Linux:*:*) 92627df3f5dSRui Paulo eval $set_cc_for_build 92727df3f5dSRui Paulo if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ 92827df3f5dSRui Paulo | grep -q __ARM_EABI__ 92927df3f5dSRui Paulo then 930*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 93127df3f5dSRui Paulo else 9323c602fabSXin LI if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ 9333c602fabSXin LI | grep -q __ARM_PCS_VFP 9343c602fabSXin LI then 935*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi 9363c602fabSXin LI else 937*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf 9383c602fabSXin LI fi 93927df3f5dSRui Paulo fi 94027df3f5dSRui Paulo exit ;; 94127df3f5dSRui Paulo avr32*:Linux:*:*) 942*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 94327df3f5dSRui Paulo exit ;; 94427df3f5dSRui Paulo cris:Linux:*:*) 945*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-axis-linux-${LIBC} 94627df3f5dSRui Paulo exit ;; 94727df3f5dSRui Paulo crisv32:Linux:*:*) 948*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-axis-linux-${LIBC} 94927df3f5dSRui Paulo exit ;; 95027df3f5dSRui Paulo frv:Linux:*:*) 951*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 9523c602fabSXin LI exit ;; 9533c602fabSXin LI hexagon:Linux:*:*) 954*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 95527df3f5dSRui Paulo exit ;; 95627df3f5dSRui Paulo i*86:Linux:*:*) 957*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-pc-linux-${LIBC} 95827df3f5dSRui Paulo exit ;; 95927df3f5dSRui Paulo ia64:Linux:*:*) 960*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 96127df3f5dSRui Paulo exit ;; 96227df3f5dSRui Paulo m32r*:Linux:*:*) 963*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 96427df3f5dSRui Paulo exit ;; 96527df3f5dSRui Paulo m68*:Linux:*:*) 966*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 96727df3f5dSRui Paulo exit ;; 96827df3f5dSRui Paulo mips:Linux:*:* | mips64:Linux:*:*) 96927df3f5dSRui Paulo eval $set_cc_for_build 97027df3f5dSRui Paulo sed 's/^ //' << EOF >$dummy.c 97127df3f5dSRui Paulo #undef CPU 97227df3f5dSRui Paulo #undef ${UNAME_MACHINE} 97327df3f5dSRui Paulo #undef ${UNAME_MACHINE}el 97427df3f5dSRui Paulo #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 97527df3f5dSRui Paulo CPU=${UNAME_MACHINE}el 97627df3f5dSRui Paulo #else 97727df3f5dSRui Paulo #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 97827df3f5dSRui Paulo CPU=${UNAME_MACHINE} 97927df3f5dSRui Paulo #else 98027df3f5dSRui Paulo CPU= 98127df3f5dSRui Paulo #endif 98227df3f5dSRui Paulo #endif 98327df3f5dSRui PauloEOF 98427df3f5dSRui Paulo eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` 985*8bdc5a62SPatrick Kelsey test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; } 98627df3f5dSRui Paulo ;; 987*8bdc5a62SPatrick Kelsey openrisc*:Linux:*:*) 988*8bdc5a62SPatrick Kelsey echo or1k-unknown-linux-${LIBC} 989*8bdc5a62SPatrick Kelsey exit ;; 990*8bdc5a62SPatrick Kelsey or32:Linux:*:* | or1k*:Linux:*:*) 991*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 99227df3f5dSRui Paulo exit ;; 99327df3f5dSRui Paulo padre:Linux:*:*) 994*8bdc5a62SPatrick Kelsey echo sparc-unknown-linux-${LIBC} 99527df3f5dSRui Paulo exit ;; 99627df3f5dSRui Paulo parisc64:Linux:*:* | hppa64:Linux:*:*) 997*8bdc5a62SPatrick Kelsey echo hppa64-unknown-linux-${LIBC} 99827df3f5dSRui Paulo exit ;; 999a90e161bSBill Fenner parisc:Linux:*:* | hppa:Linux:*:*) 1000685295f4SBill Fenner # Look for CPU level 1001685295f4SBill Fenner case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 1002*8bdc5a62SPatrick Kelsey PA7*) echo hppa1.1-unknown-linux-${LIBC} ;; 1003*8bdc5a62SPatrick Kelsey PA8*) echo hppa2.0-unknown-linux-${LIBC} ;; 1004*8bdc5a62SPatrick Kelsey *) echo hppa-unknown-linux-${LIBC} ;; 1005a90e161bSBill Fenner esac 100627df3f5dSRui Paulo exit ;; 100727df3f5dSRui Paulo ppc64:Linux:*:*) 1008*8bdc5a62SPatrick Kelsey echo powerpc64-unknown-linux-${LIBC} 100927df3f5dSRui Paulo exit ;; 101027df3f5dSRui Paulo ppc:Linux:*:*) 1011*8bdc5a62SPatrick Kelsey echo powerpc-unknown-linux-${LIBC} 1012*8bdc5a62SPatrick Kelsey exit ;; 1013*8bdc5a62SPatrick Kelsey ppc64le:Linux:*:*) 1014*8bdc5a62SPatrick Kelsey echo powerpc64le-unknown-linux-${LIBC} 1015*8bdc5a62SPatrick Kelsey exit ;; 1016*8bdc5a62SPatrick Kelsey ppcle:Linux:*:*) 1017*8bdc5a62SPatrick Kelsey echo powerpcle-unknown-linux-${LIBC} 101827df3f5dSRui Paulo exit ;; 1019a90e161bSBill Fenner s390:Linux:*:* | s390x:Linux:*:*) 1020*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-ibm-linux-${LIBC} 102127df3f5dSRui Paulo exit ;; 10225b0fe478SBruce M Simpson sh64*:Linux:*:*) 1023*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 102427df3f5dSRui Paulo exit ;; 1025a90e161bSBill Fenner sh*:Linux:*:*) 1026*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 102727df3f5dSRui Paulo exit ;; 1028a90e161bSBill Fenner sparc:Linux:*:* | sparc64:Linux:*:*) 1029*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 103027df3f5dSRui Paulo exit ;; 10313c602fabSXin LI tile*:Linux:*:*) 1032*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 10333c602fabSXin LI exit ;; 103427df3f5dSRui Paulo vax:Linux:*:*) 1035*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-dec-linux-${LIBC} 103627df3f5dSRui Paulo exit ;; 1037a90e161bSBill Fenner x86_64:Linux:*:*) 1038*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 103927df3f5dSRui Paulo exit ;; 104027df3f5dSRui Paulo xtensa*:Linux:*:*) 1041*8bdc5a62SPatrick Kelsey echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 104227df3f5dSRui Paulo exit ;; 1043a90e161bSBill Fenner i*86:DYNIX/ptx:4*:*) 10445b0fe478SBruce M Simpson # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 10455b0fe478SBruce M Simpson # earlier versions are messed up and put the nodename in both 10465b0fe478SBruce M Simpson # sysname and nodename. 10474edb46e9SPaul Traina echo i386-sequent-sysv4 104827df3f5dSRui Paulo exit ;; 1049a90e161bSBill Fenner i*86:UNIX_SV:4.2MP:2.*) 1050685295f4SBill Fenner # Unixware is an offshoot of SVR4, but it has its own version 1051685295f4SBill Fenner # number series starting with 2... 1052685295f4SBill Fenner # I am not positive that other SVR4 systems won't match this, 1053685295f4SBill Fenner # I just have to hope. -- rms. 1054685295f4SBill Fenner # Use sysv4.2uw... so that sysv4* matches it. 1055685295f4SBill Fenner echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 105627df3f5dSRui Paulo exit ;; 10575b0fe478SBruce M Simpson i*86:OS/2:*:*) 10585b0fe478SBruce M Simpson # If we were able to find `uname', then EMX Unix compatibility 10595b0fe478SBruce M Simpson # is probably installed. 10605b0fe478SBruce M Simpson echo ${UNAME_MACHINE}-pc-os2-emx 106127df3f5dSRui Paulo exit ;; 10625b0fe478SBruce M Simpson i*86:XTS-300:*:STOP) 10635b0fe478SBruce M Simpson echo ${UNAME_MACHINE}-unknown-stop 106427df3f5dSRui Paulo exit ;; 10655b0fe478SBruce M Simpson i*86:atheos:*:*) 10665b0fe478SBruce M Simpson echo ${UNAME_MACHINE}-unknown-atheos 106727df3f5dSRui Paulo exit ;; 106827df3f5dSRui Paulo i*86:syllable:*:*) 106927df3f5dSRui Paulo echo ${UNAME_MACHINE}-pc-syllable 107027df3f5dSRui Paulo exit ;; 107127df3f5dSRui Paulo i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) 10725b0fe478SBruce M Simpson echo i386-unknown-lynxos${UNAME_RELEASE} 107327df3f5dSRui Paulo exit ;; 10745b0fe478SBruce M Simpson i*86:*DOS:*:*) 10755b0fe478SBruce M Simpson echo ${UNAME_MACHINE}-pc-msdosdjgpp 107627df3f5dSRui Paulo exit ;; 1077a90e161bSBill Fenner i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 1078685295f4SBill Fenner UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 10794edb46e9SPaul Traina if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 1080685295f4SBill Fenner echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 1081685295f4SBill Fenner else 1082685295f4SBill Fenner echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 1083685295f4SBill Fenner fi 108427df3f5dSRui Paulo exit ;; 108527df3f5dSRui Paulo i*86:*:5:[678]*) 108627df3f5dSRui Paulo # UnixWare 7.x, OpenUNIX and OpenServer 6. 10875b0fe478SBruce M Simpson case `/bin/uname -X | grep "^Machine"` in 10885b0fe478SBruce M Simpson *486*) UNAME_MACHINE=i486 ;; 10895b0fe478SBruce M Simpson *Pentium) UNAME_MACHINE=i586 ;; 10905b0fe478SBruce M Simpson *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 10915b0fe478SBruce M Simpson esac 10925b0fe478SBruce M Simpson echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 109327df3f5dSRui Paulo exit ;; 1094a90e161bSBill Fenner i*86:*:3.2:*) 10954edb46e9SPaul Traina if test -f /usr/options/cb.name; then 10964edb46e9SPaul Traina UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 10974de76e31SBill Fenner echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 10984edb46e9SPaul Traina elif /bin/uname -X 2>/dev/null >/dev/null ; then 10995b0fe478SBruce M Simpson UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 11005b0fe478SBruce M Simpson (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 11015b0fe478SBruce M Simpson (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 11024edb46e9SPaul Traina && UNAME_MACHINE=i586 11035b0fe478SBruce M Simpson (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 1104685295f4SBill Fenner && UNAME_MACHINE=i686 11055b0fe478SBruce M Simpson (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 1106685295f4SBill Fenner && UNAME_MACHINE=i686 11074de76e31SBill Fenner echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 11084edb46e9SPaul Traina else 11094de76e31SBill Fenner echo ${UNAME_MACHINE}-pc-sysv32 11104edb46e9SPaul Traina fi 111127df3f5dSRui Paulo exit ;; 1112685295f4SBill Fenner pc:*:*:*) 1113685295f4SBill Fenner # Left here for compatibility: 1114685295f4SBill Fenner # uname -m prints for DJGPP always 'pc', but it prints nothing about 111527df3f5dSRui Paulo # the processor, so we play safe by assuming i586. 111627df3f5dSRui Paulo # Note: whatever this is, it MUST be the same as what config.sub 111727df3f5dSRui Paulo # prints for the "djgpp" host, or else GDB configury will decide that 111827df3f5dSRui Paulo # this is a cross-build. 111927df3f5dSRui Paulo echo i586-pc-msdosdjgpp 112027df3f5dSRui Paulo exit ;; 11214edb46e9SPaul Traina Intel:Mach:3*:*) 11224de76e31SBill Fenner echo i386-pc-mach3 112327df3f5dSRui Paulo exit ;; 11244edb46e9SPaul Traina paragon:*:*:*) 11254edb46e9SPaul Traina echo i860-intel-osf1 112627df3f5dSRui Paulo exit ;; 11274edb46e9SPaul Traina i860:*:4.*:*) # i860-SVR4 11284edb46e9SPaul Traina if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 11294edb46e9SPaul Traina echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 11304edb46e9SPaul Traina else # Add other i860-SVR4 vendors below as they are discovered. 11314edb46e9SPaul Traina echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 11324edb46e9SPaul Traina fi 113327df3f5dSRui Paulo exit ;; 11344edb46e9SPaul Traina mini*:CTIX:SYS*5:*) 11354edb46e9SPaul Traina # "miniframe" 11364edb46e9SPaul Traina echo m68010-convergent-sysv 113727df3f5dSRui Paulo exit ;; 11385b0fe478SBruce M Simpson mc68k:UNIX:SYSTEM5:3.51m) 11395b0fe478SBruce M Simpson echo m68k-convergent-sysv 114027df3f5dSRui Paulo exit ;; 11415b0fe478SBruce M Simpson M680?0:D-NIX:5.3:*) 11425b0fe478SBruce M Simpson echo m68k-diab-dnix 114327df3f5dSRui Paulo exit ;; 114427df3f5dSRui Paulo M68*:*:R3V[5678]*:*) 114527df3f5dSRui Paulo test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 114627df3f5dSRui 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) 11474de76e31SBill Fenner OS_REL='' 11484de76e31SBill Fenner test -r /etc/.relid \ 11494de76e31SBill Fenner && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 11504de76e31SBill Fenner /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 115127df3f5dSRui Paulo && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 11524de76e31SBill Fenner /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 115327df3f5dSRui Paulo && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 11544edb46e9SPaul Traina 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 11554de76e31SBill Fenner /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 115627df3f5dSRui Paulo && { echo i486-ncr-sysv4; exit; } ;; 115727df3f5dSRui Paulo NCR*:*:4.2:* | MPRAS*:*:4.2:*) 115827df3f5dSRui Paulo OS_REL='.3' 115927df3f5dSRui Paulo test -r /etc/.relid \ 116027df3f5dSRui Paulo && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 116127df3f5dSRui Paulo /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 116227df3f5dSRui Paulo && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 116327df3f5dSRui Paulo /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 116427df3f5dSRui Paulo && { echo i586-ncr-sysv4.3${OS_REL}; exit; } 116527df3f5dSRui Paulo /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ 116627df3f5dSRui Paulo && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1167a90e161bSBill Fenner m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 11684de76e31SBill Fenner echo m68k-unknown-lynxos${UNAME_RELEASE} 116927df3f5dSRui Paulo exit ;; 11704edb46e9SPaul Traina mc68030:UNIX_System_V:4.*:*) 11714edb46e9SPaul Traina echo m68k-atari-sysv4 117227df3f5dSRui Paulo exit ;; 11734de76e31SBill Fenner TSUNAMI:LynxOS:2.*:*) 11744de76e31SBill Fenner echo sparc-unknown-lynxos${UNAME_RELEASE} 117527df3f5dSRui Paulo exit ;; 1176a90e161bSBill Fenner rs6000:LynxOS:2.*:*) 11774de76e31SBill Fenner echo rs6000-unknown-lynxos${UNAME_RELEASE} 117827df3f5dSRui Paulo exit ;; 117927df3f5dSRui Paulo PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) 1180a90e161bSBill Fenner echo powerpc-unknown-lynxos${UNAME_RELEASE} 118127df3f5dSRui Paulo exit ;; 11824de76e31SBill Fenner SM[BE]S:UNIX_SV:*:*) 11834de76e31SBill Fenner echo mips-dde-sysv${UNAME_RELEASE} 118427df3f5dSRui Paulo exit ;; 1185685295f4SBill Fenner RM*:ReliantUNIX-*:*:*) 1186685295f4SBill Fenner echo mips-sni-sysv4 118727df3f5dSRui Paulo exit ;; 11884edb46e9SPaul Traina RM*:SINIX-*:*:*) 11894edb46e9SPaul Traina echo mips-sni-sysv4 119027df3f5dSRui Paulo exit ;; 11914edb46e9SPaul Traina *:SINIX-*:*:*) 11924edb46e9SPaul Traina if uname -p 2>/dev/null >/dev/null ; then 11934edb46e9SPaul Traina UNAME_MACHINE=`(uname -p) 2>/dev/null` 11944edb46e9SPaul Traina echo ${UNAME_MACHINE}-sni-sysv4 11954edb46e9SPaul Traina else 11964edb46e9SPaul Traina echo ns32k-sni-sysv 11974edb46e9SPaul Traina fi 119827df3f5dSRui Paulo exit ;; 11995b0fe478SBruce M Simpson PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 1200685295f4SBill Fenner # says <Richard.M.Bartel@ccMail.Census.GOV> 1201685295f4SBill Fenner echo i586-unisys-sysv4 120227df3f5dSRui Paulo exit ;; 12034de76e31SBill Fenner *:UNIX_System_V:4*:FTX*) 12044de76e31SBill Fenner # From Gerald Hewes <hewes@openmarket.com>. 12054de76e31SBill Fenner # How about differentiating between stratus architectures? -djm 12064de76e31SBill Fenner echo hppa1.1-stratus-sysv4 120727df3f5dSRui Paulo exit ;; 12084de76e31SBill Fenner *:*:*:FTX*) 12094de76e31SBill Fenner # From seanf@swdc.stratus.com. 12104de76e31SBill Fenner echo i860-stratus-sysv4 121127df3f5dSRui Paulo exit ;; 121227df3f5dSRui Paulo i*86:VOS:*:*) 121327df3f5dSRui Paulo # From Paul.Green@stratus.com. 121427df3f5dSRui Paulo echo ${UNAME_MACHINE}-stratus-vos 121527df3f5dSRui Paulo exit ;; 12165b0fe478SBruce M Simpson *:VOS:*:*) 12175b0fe478SBruce M Simpson # From Paul.Green@stratus.com. 12185b0fe478SBruce M Simpson echo hppa1.1-stratus-vos 121927df3f5dSRui Paulo exit ;; 12204edb46e9SPaul Traina mc68*:A/UX:*:*) 12214edb46e9SPaul Traina echo m68k-apple-aux${UNAME_RELEASE} 122227df3f5dSRui Paulo exit ;; 1223685295f4SBill Fenner news*:NEWS-OS:6*:*) 1224685295f4SBill Fenner echo mips-sony-newsos6 122527df3f5dSRui Paulo exit ;; 1226685295f4SBill Fenner R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 12274edb46e9SPaul Traina if [ -d /usr/nec ]; then 12284edb46e9SPaul Traina echo mips-nec-sysv${UNAME_RELEASE} 12294edb46e9SPaul Traina else 12304edb46e9SPaul Traina echo mips-unknown-sysv${UNAME_RELEASE} 12314edb46e9SPaul Traina fi 123227df3f5dSRui Paulo exit ;; 1233685295f4SBill Fenner BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 1234685295f4SBill Fenner echo powerpc-be-beos 123527df3f5dSRui Paulo exit ;; 1236685295f4SBill Fenner BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 1237685295f4SBill Fenner echo powerpc-apple-beos 123827df3f5dSRui Paulo exit ;; 1239685295f4SBill Fenner BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 1240685295f4SBill Fenner echo i586-pc-beos 124127df3f5dSRui Paulo exit ;; 124227df3f5dSRui Paulo BePC:Haiku:*:*) # Haiku running on Intel PC compatible. 124327df3f5dSRui Paulo echo i586-pc-haiku 124427df3f5dSRui Paulo exit ;; 1245*8bdc5a62SPatrick Kelsey x86_64:Haiku:*:*) 1246*8bdc5a62SPatrick Kelsey echo x86_64-unknown-haiku 1247*8bdc5a62SPatrick Kelsey exit ;; 1248685295f4SBill Fenner SX-4:SUPER-UX:*:*) 1249685295f4SBill Fenner echo sx4-nec-superux${UNAME_RELEASE} 125027df3f5dSRui Paulo exit ;; 1251685295f4SBill Fenner SX-5:SUPER-UX:*:*) 1252685295f4SBill Fenner echo sx5-nec-superux${UNAME_RELEASE} 125327df3f5dSRui Paulo exit ;; 12545b0fe478SBruce M Simpson SX-6:SUPER-UX:*:*) 12555b0fe478SBruce M Simpson echo sx6-nec-superux${UNAME_RELEASE} 125627df3f5dSRui Paulo exit ;; 125727df3f5dSRui Paulo SX-7:SUPER-UX:*:*) 125827df3f5dSRui Paulo echo sx7-nec-superux${UNAME_RELEASE} 125927df3f5dSRui Paulo exit ;; 126027df3f5dSRui Paulo SX-8:SUPER-UX:*:*) 126127df3f5dSRui Paulo echo sx8-nec-superux${UNAME_RELEASE} 126227df3f5dSRui Paulo exit ;; 126327df3f5dSRui Paulo SX-8R:SUPER-UX:*:*) 126427df3f5dSRui Paulo echo sx8r-nec-superux${UNAME_RELEASE} 126527df3f5dSRui Paulo exit ;; 1266685295f4SBill Fenner Power*:Rhapsody:*:*) 1267685295f4SBill Fenner echo powerpc-apple-rhapsody${UNAME_RELEASE} 126827df3f5dSRui Paulo exit ;; 1269685295f4SBill Fenner *:Rhapsody:*:*) 1270685295f4SBill Fenner echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 127127df3f5dSRui Paulo exit ;; 1272685295f4SBill Fenner *:Darwin:*:*) 127327df3f5dSRui Paulo UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 127427df3f5dSRui Paulo eval $set_cc_for_build 1275*8bdc5a62SPatrick Kelsey if test "$UNAME_PROCESSOR" = unknown ; then 1276*8bdc5a62SPatrick Kelsey UNAME_PROCESSOR=powerpc 1277*8bdc5a62SPatrick Kelsey fi 1278*8bdc5a62SPatrick Kelsey if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then 127927df3f5dSRui Paulo if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 128027df3f5dSRui Paulo if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ 128127df3f5dSRui Paulo (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 128227df3f5dSRui Paulo grep IS_64BIT_ARCH >/dev/null 128327df3f5dSRui Paulo then 1284*8bdc5a62SPatrick Kelsey case $UNAME_PROCESSOR in 1285*8bdc5a62SPatrick Kelsey i386) UNAME_PROCESSOR=x86_64 ;; 1286*8bdc5a62SPatrick Kelsey powerpc) UNAME_PROCESSOR=powerpc64 ;; 12875b0fe478SBruce M Simpson esac 1288*8bdc5a62SPatrick Kelsey fi 1289*8bdc5a62SPatrick Kelsey fi 1290*8bdc5a62SPatrick Kelsey elif test "$UNAME_PROCESSOR" = i386 ; then 1291*8bdc5a62SPatrick Kelsey # Avoid executing cc on OS X 10.9, as it ships with a stub 1292*8bdc5a62SPatrick Kelsey # that puts up a graphical alert prompting to install 1293*8bdc5a62SPatrick Kelsey # developer tools. Any system running Mac OS X 10.7 or 1294*8bdc5a62SPatrick Kelsey # later (Darwin 11 and later) is required to have a 64-bit 1295*8bdc5a62SPatrick Kelsey # processor. This is not true of the ARM version of Darwin 1296*8bdc5a62SPatrick Kelsey # that Apple uses in portable devices. 1297*8bdc5a62SPatrick Kelsey UNAME_PROCESSOR=x86_64 1298*8bdc5a62SPatrick Kelsey fi 12995b0fe478SBruce M Simpson echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 130027df3f5dSRui Paulo exit ;; 1301685295f4SBill Fenner *:procnto*:*:* | *:QNX:[0123456789]*:*) 13025b0fe478SBruce M Simpson UNAME_PROCESSOR=`uname -p` 13035b0fe478SBruce M Simpson if test "$UNAME_PROCESSOR" = "x86"; then 13045b0fe478SBruce M Simpson UNAME_PROCESSOR=i386 1305685295f4SBill Fenner UNAME_MACHINE=pc 1306685295f4SBill Fenner fi 13075b0fe478SBruce M Simpson echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 130827df3f5dSRui Paulo exit ;; 1309685295f4SBill Fenner *:QNX:*:4*) 1310685295f4SBill Fenner echo i386-pc-qnx 131127df3f5dSRui Paulo exit ;; 13123c602fabSXin LI NEO-?:NONSTOP_KERNEL:*:*) 13133c602fabSXin LI echo neo-tandem-nsk${UNAME_RELEASE} 13143c602fabSXin LI exit ;; 1315*8bdc5a62SPatrick Kelsey NSE-*:NONSTOP_KERNEL:*:*) 131627df3f5dSRui Paulo echo nse-tandem-nsk${UNAME_RELEASE} 131727df3f5dSRui Paulo exit ;; 131827df3f5dSRui Paulo NSR-?:NONSTOP_KERNEL:*:*) 1319685295f4SBill Fenner echo nsr-tandem-nsk${UNAME_RELEASE} 132027df3f5dSRui Paulo exit ;; 1321685295f4SBill Fenner *:NonStop-UX:*:*) 1322685295f4SBill Fenner echo mips-compaq-nonstopux 132327df3f5dSRui Paulo exit ;; 1324685295f4SBill Fenner BS2000:POSIX*:*:*) 1325685295f4SBill Fenner echo bs2000-siemens-sysv 132627df3f5dSRui Paulo exit ;; 1327685295f4SBill Fenner DS/*:UNIX_System_V:*:*) 1328685295f4SBill Fenner echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 132927df3f5dSRui Paulo exit ;; 1330685295f4SBill Fenner *:Plan9:*:*) 1331685295f4SBill Fenner # "uname -m" is not consistent, so use $cputype instead. 386 1332685295f4SBill Fenner # is converted to i386 for consistency with other x86 1333685295f4SBill Fenner # operating systems. 1334685295f4SBill Fenner if test "$cputype" = "386"; then 1335685295f4SBill Fenner UNAME_MACHINE=i386 1336685295f4SBill Fenner else 1337685295f4SBill Fenner UNAME_MACHINE="$cputype" 1338685295f4SBill Fenner fi 1339685295f4SBill Fenner echo ${UNAME_MACHINE}-unknown-plan9 134027df3f5dSRui Paulo exit ;; 1341a90e161bSBill Fenner *:TOPS-10:*:*) 1342a90e161bSBill Fenner echo pdp10-unknown-tops10 134327df3f5dSRui Paulo exit ;; 1344a90e161bSBill Fenner *:TENEX:*:*) 1345a90e161bSBill Fenner echo pdp10-unknown-tenex 134627df3f5dSRui Paulo exit ;; 1347a90e161bSBill Fenner KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 1348a90e161bSBill Fenner echo pdp10-dec-tops20 134927df3f5dSRui Paulo exit ;; 1350a90e161bSBill Fenner XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 1351a90e161bSBill Fenner echo pdp10-xkl-tops20 135227df3f5dSRui Paulo exit ;; 1353a90e161bSBill Fenner *:TOPS-20:*:*) 1354a90e161bSBill Fenner echo pdp10-unknown-tops20 135527df3f5dSRui Paulo exit ;; 1356a90e161bSBill Fenner *:ITS:*:*) 1357a90e161bSBill Fenner echo pdp10-unknown-its 135827df3f5dSRui Paulo exit ;; 13595b0fe478SBruce M Simpson SEI:*:*:SEIUX) 13605b0fe478SBruce M Simpson echo mips-sei-seiux${UNAME_RELEASE} 136127df3f5dSRui Paulo exit ;; 136227df3f5dSRui Paulo *:DragonFly:*:*) 136327df3f5dSRui Paulo echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 136427df3f5dSRui Paulo exit ;; 136527df3f5dSRui Paulo *:*VMS:*:*) 136627df3f5dSRui Paulo UNAME_MACHINE=`(uname -p) 2>/dev/null` 136727df3f5dSRui Paulo case "${UNAME_MACHINE}" in 136827df3f5dSRui Paulo A*) echo alpha-dec-vms ; exit ;; 136927df3f5dSRui Paulo I*) echo ia64-dec-vms ; exit ;; 137027df3f5dSRui Paulo V*) echo vax-dec-vms ; exit ;; 137127df3f5dSRui Paulo esac ;; 137227df3f5dSRui Paulo *:XENIX:*:SysV) 137327df3f5dSRui Paulo echo i386-pc-xenix 137427df3f5dSRui Paulo exit ;; 137527df3f5dSRui Paulo i*86:skyos:*:*) 137627df3f5dSRui Paulo echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' 137727df3f5dSRui Paulo exit ;; 137827df3f5dSRui Paulo i*86:rdos:*:*) 137927df3f5dSRui Paulo echo ${UNAME_MACHINE}-pc-rdos 138027df3f5dSRui Paulo exit ;; 138127df3f5dSRui Paulo i*86:AROS:*:*) 138227df3f5dSRui Paulo echo ${UNAME_MACHINE}-pc-aros 138327df3f5dSRui Paulo exit ;; 13843c602fabSXin LI x86_64:VMkernel:*:*) 13853c602fabSXin LI echo ${UNAME_MACHINE}-unknown-esx 13863c602fabSXin LI exit ;; 13874edb46e9SPaul Trainaesac 13884edb46e9SPaul Traina 1389685295f4SBill Fennercat >&2 <<EOF 1390685295f4SBill Fenner$0: unable to guess system type 1391685295f4SBill Fenner 1392a90e161bSBill FennerThis script, last modified $timestamp, has failed to recognize 1393a90e161bSBill Fennerthe operating system you are using. It is advised that you 1394a90e161bSBill Fennerdownload the most up to date version of the config scripts from 1395685295f4SBill Fenner 139627df3f5dSRui Paulo http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 139727df3f5dSRui Pauloand 139827df3f5dSRui Paulo http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 1399685295f4SBill Fenner 1400685295f4SBill FennerIf the version you run ($0) is already up to date, please 1401685295f4SBill Fennersend the following data and any information you think might be 1402685295f4SBill Fennerpertinent to <config-patches@gnu.org> in order to provide the needed 1403685295f4SBill Fennerinformation to handle your system. 1404685295f4SBill Fenner 1405a90e161bSBill Fennerconfig.guess timestamp = $timestamp 1406685295f4SBill Fenner 1407685295f4SBill Fenneruname -m = `(uname -m) 2>/dev/null || echo unknown` 1408685295f4SBill Fenneruname -r = `(uname -r) 2>/dev/null || echo unknown` 1409685295f4SBill Fenneruname -s = `(uname -s) 2>/dev/null || echo unknown` 1410685295f4SBill Fenneruname -v = `(uname -v) 2>/dev/null || echo unknown` 1411685295f4SBill Fenner 1412685295f4SBill Fenner/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 1413685295f4SBill Fenner/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 1414685295f4SBill Fenner 1415685295f4SBill Fennerhostinfo = `(hostinfo) 2>/dev/null` 1416685295f4SBill Fenner/bin/universe = `(/bin/universe) 2>/dev/null` 1417685295f4SBill Fenner/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 1418685295f4SBill Fenner/bin/arch = `(/bin/arch) 2>/dev/null` 1419685295f4SBill Fenner/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 1420685295f4SBill Fenner/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 1421685295f4SBill Fenner 1422685295f4SBill FennerUNAME_MACHINE = ${UNAME_MACHINE} 1423685295f4SBill FennerUNAME_RELEASE = ${UNAME_RELEASE} 1424685295f4SBill FennerUNAME_SYSTEM = ${UNAME_SYSTEM} 1425685295f4SBill FennerUNAME_VERSION = ${UNAME_VERSION} 1426685295f4SBill FennerEOF 14274edb46e9SPaul Traina 14284edb46e9SPaul Trainaexit 1 1429685295f4SBill Fenner 1430685295f4SBill Fenner# Local variables: 1431685295f4SBill Fenner# eval: (add-hook 'write-file-hooks 'time-stamp) 1432685295f4SBill Fenner# time-stamp-start: "timestamp='" 1433685295f4SBill Fenner# time-stamp-format: "%:y-%02m-%02d" 1434685295f4SBill Fenner# time-stamp-end: "'" 1435685295f4SBill Fenner# End: 1436