10e3d5408SPeter Wemm#! /bin/sh 20e3d5408SPeter Wemm# Attempt to guess a canonical system name. 3*73f0a83dSXin LI# Copyright 1992-2013 Free Software Foundation, Inc. 415589c42SPeter Wemm 5*73f0a83dSXin LItimestamp='2013-06-10' 615589c42SPeter Wemm 70e3d5408SPeter Wemm# This file is free software; you can redistribute it and/or modify it 80e3d5408SPeter Wemm# under the terms of the GNU General Public License as published by 9*73f0a83dSXin LI# the Free Software Foundation; either version 3 of the License, or 100e3d5408SPeter Wemm# (at your option) any later version. 110e3d5408SPeter Wemm# 120e3d5408SPeter Wemm# This program is distributed in the hope that it will be useful, but 130e3d5408SPeter Wemm# WITHOUT ANY WARRANTY; without even the implied warranty of 140e3d5408SPeter Wemm# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 150e3d5408SPeter Wemm# General Public License for more details. 160e3d5408SPeter Wemm# 170e3d5408SPeter Wemm# You should have received a copy of the GNU General Public License 18*73f0a83dSXin LI# along with this program; if not, see <http://www.gnu.org/licenses/>. 190e3d5408SPeter Wemm# 200e3d5408SPeter Wemm# As a special exception to the GNU General Public License, if you 210e3d5408SPeter Wemm# distribute this file as part of a program that contains a 220e3d5408SPeter Wemm# configuration script generated by Autoconf, you may include it under 23*73f0a83dSXin LI# the same distribution terms that you use for the rest of that 24*73f0a83dSXin LI# program. This Exception is an additional permission under section 7 25*73f0a83dSXin LI# of the GNU General Public License, version 3 ("GPLv3"). 260e3d5408SPeter Wemm# 27*73f0a83dSXin LI# Originally written by Per Bothner. 280e3d5408SPeter Wemm# 2906bfebdeSXin LI# You can get the latest version of this script from: 3006bfebdeSXin LI# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 31*73f0a83dSXin LI# 32*73f0a83dSXin LI# Please send patches with a ChangeLog entry to config-patches@gnu.org. 33*73f0a83dSXin LI 340e3d5408SPeter Wemm 3515589c42SPeter Wemmme=`echo "$0" | sed -e 's,.*/,,'` 3615589c42SPeter Wemm 3715589c42SPeter Wemmusage="\ 3815589c42SPeter WemmUsage: $0 [OPTION] 3915589c42SPeter Wemm 407a69bbfbSPeter WemmOutput the configuration name of the system \`$me' is run on. 4115589c42SPeter Wemm 4215589c42SPeter WemmOperation modes: 4315589c42SPeter Wemm -h, --help print this help, then exit 447a69bbfbSPeter Wemm -t, --time-stamp print date of last modification, then exit 457a69bbfbSPeter Wemm -v, --version print version number, then exit 467a69bbfbSPeter Wemm 477a69bbfbSPeter WemmReport bugs and patches to <config-patches@gnu.org>." 487a69bbfbSPeter Wemm 497a69bbfbSPeter Wemmversion="\ 507a69bbfbSPeter WemmGNU config.guess ($timestamp) 517a69bbfbSPeter Wemm 527a69bbfbSPeter WemmOriginally written by Per Bothner. 53*73f0a83dSXin LICopyright 1992-2013 Free Software Foundation, Inc. 547a69bbfbSPeter Wemm 557a69bbfbSPeter WemmThis is free software; see the source for copying conditions. There is NO 567a69bbfbSPeter Wemmwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 5715589c42SPeter Wemm 5815589c42SPeter Wemmhelp=" 5915589c42SPeter WemmTry \`$me --help' for more information." 6015589c42SPeter Wemm 6115589c42SPeter Wemm# Parse command line 6215589c42SPeter Wemmwhile test $# -gt 0 ; do 637a69bbfbSPeter Wemm case $1 in 647a69bbfbSPeter Wemm --time-stamp | --time* | -t ) 654a1a9510SRong-En Fan echo "$timestamp" ; exit ;; 667a69bbfbSPeter Wemm --version | -v ) 674a1a9510SRong-En Fan echo "$version" ; exit ;; 6815589c42SPeter Wemm --help | --h* | -h ) 694a1a9510SRong-En Fan echo "$usage"; exit ;; 7015589c42SPeter Wemm -- ) # Stop option processing 7115589c42SPeter Wemm shift; break ;; 7215589c42SPeter Wemm - ) # Use stdin as input. 7315589c42SPeter Wemm break ;; 7415589c42SPeter Wemm -* ) 757a69bbfbSPeter Wemm echo "$me: invalid option $1$help" >&2 7615589c42SPeter Wemm exit 1 ;; 7715589c42SPeter Wemm * ) 7815589c42SPeter Wemm break ;; 7915589c42SPeter Wemm esac 8015589c42SPeter Wemmdone 8115589c42SPeter Wemm 8215589c42SPeter Wemmif test $# != 0; then 8315589c42SPeter Wemm echo "$me: too many arguments$help" >&2 8415589c42SPeter Wemm exit 1 8515589c42SPeter Wemmfi 8615589c42SPeter Wemm 87*73f0a83dSXin LItrap 'exit 1' 1 2 15 8815589c42SPeter Wemm 894a1a9510SRong-En Fan# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 904a1a9510SRong-En Fan# compiler to aid in system detection is discouraged as it requires 914a1a9510SRong-En Fan# temporary files to be created and, as you can see below, it is a 924a1a9510SRong-En Fan# headache to deal with in a portable fashion. 937a69bbfbSPeter Wemm 947a69bbfbSPeter Wemm# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 957a69bbfbSPeter Wemm# use `HOST_CC' if defined, but it is deprecated. 967a69bbfbSPeter Wemm 974a1a9510SRong-En Fan# Portable tmp directory creation inspired by the Autoconf team. 984a1a9510SRong-En Fan 994a1a9510SRong-En Fanset_cc_for_build=' 1004a1a9510SRong-En Fantrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; 101*73f0a83dSXin LItrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 1024a1a9510SRong-En Fan: ${TMPDIR=/tmp} ; 1034a1a9510SRong-En Fan { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 1044a1a9510SRong-En Fan { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 1054a1a9510SRong-En Fan { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || 1064a1a9510SRong-En Fan { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; 1074a1a9510SRong-En Fandummy=$tmp/dummy ; 1084a1a9510SRong-En Fantmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; 1094a1a9510SRong-En Fancase $CC_FOR_BUILD,$HOST_CC,$CC in 1104a1a9510SRong-En Fan ,,) echo "int x;" > $dummy.c ; 11139f2269fSPeter Wemm for c in cc gcc c89 c99 ; do 1124a1a9510SRong-En Fan if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then 11339f2269fSPeter Wemm CC_FOR_BUILD="$c"; break ; 11439f2269fSPeter Wemm fi ; 11539f2269fSPeter Wemm done ; 1167a69bbfbSPeter Wemm if test x"$CC_FOR_BUILD" = x ; then 11739f2269fSPeter Wemm CC_FOR_BUILD=no_compiler_found ; 1187a69bbfbSPeter Wemm fi 1197a69bbfbSPeter Wemm ;; 1207a69bbfbSPeter Wemm ,,*) CC_FOR_BUILD=$CC ;; 1217a69bbfbSPeter Wemm ,*,*) CC_FOR_BUILD=$HOST_CC ;; 1224a1a9510SRong-En Fanesac ; set_cc_for_build= ;' 12315589c42SPeter Wemm 1240e3d5408SPeter Wemm# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 12539f2269fSPeter Wemm# (ghazi@noc.rutgers.edu 1994-08-24) 1260e3d5408SPeter Wemmif (test -f /.attbin/uname) >/dev/null 2>&1 ; then 1270e3d5408SPeter Wemm PATH=$PATH:/.attbin ; export PATH 1280e3d5408SPeter Wemmfi 1290e3d5408SPeter Wemm 1300e3d5408SPeter WemmUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 1310e3d5408SPeter WemmUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 1320e3d5408SPeter WemmUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 1330e3d5408SPeter WemmUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 1340e3d5408SPeter Wemm 135*73f0a83dSXin LIcase "${UNAME_SYSTEM}" in 136*73f0a83dSXin LILinux|GNU|GNU/*) 137*73f0a83dSXin LI # If the system lacks a compiler, then just pick glibc. 138*73f0a83dSXin LI # We could probably try harder. 139*73f0a83dSXin LI LIBC=gnu 140*73f0a83dSXin LI 141*73f0a83dSXin LI eval $set_cc_for_build 142*73f0a83dSXin LI cat <<-EOF > $dummy.c 143*73f0a83dSXin LI #include <features.h> 144*73f0a83dSXin LI #if defined(__UCLIBC__) 145*73f0a83dSXin LI LIBC=uclibc 146*73f0a83dSXin LI #elif defined(__dietlibc__) 147*73f0a83dSXin LI LIBC=dietlibc 148*73f0a83dSXin LI #else 149*73f0a83dSXin LI LIBC=gnu 150*73f0a83dSXin LI #endif 151*73f0a83dSXin LI EOF 152*73f0a83dSXin LI eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` 153*73f0a83dSXin LI ;; 154*73f0a83dSXin LIesac 155*73f0a83dSXin LI 1560e3d5408SPeter Wemm# Note: order is significant - the case branches are not exclusive. 1570e3d5408SPeter Wemm 1580e3d5408SPeter Wemmcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 15915589c42SPeter Wemm *:NetBSD:*:*) 16039f2269fSPeter Wemm # NetBSD (nbsd) targets should (where applicable) match one or 161*73f0a83dSXin LI # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, 16215589c42SPeter Wemm # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 16315589c42SPeter Wemm # switched to ELF, *-*-netbsd* would select the old 16415589c42SPeter Wemm # object file format. This provides both forward 16515589c42SPeter Wemm # compatibility and a consistent mechanism for selecting the 16615589c42SPeter Wemm # object file format. 16739f2269fSPeter Wemm # 16839f2269fSPeter Wemm # Note: NetBSD doesn't particularly care about the vendor 16939f2269fSPeter Wemm # portion of the name. We always set it to "unknown". 17039f2269fSPeter Wemm sysctl="sysctl -n hw.machine_arch" 17139f2269fSPeter Wemm UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ 17239f2269fSPeter Wemm /usr/sbin/$sysctl 2>/dev/null || echo unknown)` 17339f2269fSPeter Wemm case "${UNAME_MACHINE_ARCH}" in 1744a1a9510SRong-En Fan armeb) machine=armeb-unknown ;; 17539f2269fSPeter Wemm arm*) machine=arm-unknown ;; 17639f2269fSPeter Wemm sh3el) machine=shl-unknown ;; 17739f2269fSPeter Wemm sh3eb) machine=sh-unknown ;; 1785ca44d1cSRong-En Fan sh5el) machine=sh5le-unknown ;; 17939f2269fSPeter Wemm *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 18015589c42SPeter Wemm esac 1817a69bbfbSPeter Wemm # The Operating System including object format, if it has switched 1827a69bbfbSPeter Wemm # to ELF recently, or will in the future. 18339f2269fSPeter Wemm case "${UNAME_MACHINE_ARCH}" in 18439f2269fSPeter Wemm arm*|i386|m68k|ns32k|sh3*|sparc|vax) 18539f2269fSPeter Wemm eval $set_cc_for_build 18615589c42SPeter Wemm if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 18706bfebdeSXin LI | grep -q __ELF__ 18815589c42SPeter Wemm then 18915589c42SPeter Wemm # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 19015589c42SPeter Wemm # Return netbsd for either. FIX? 19115589c42SPeter Wemm os=netbsd 19215589c42SPeter Wemm else 19315589c42SPeter Wemm os=netbsdelf 19415589c42SPeter Wemm fi 1957a69bbfbSPeter Wemm ;; 1967a69bbfbSPeter Wemm *) 1977a69bbfbSPeter Wemm os=netbsd 1987a69bbfbSPeter Wemm ;; 1997a69bbfbSPeter Wemm esac 20015589c42SPeter Wemm # The OS release 2014a1a9510SRong-En Fan # Debian GNU/NetBSD machines have a different userland, and 2024a1a9510SRong-En Fan # thus, need a distinct triplet. However, they do not need 2034a1a9510SRong-En Fan # kernel version information, so it can be replaced with a 2044a1a9510SRong-En Fan # suitable tag, in the style of linux-gnu. 2054a1a9510SRong-En Fan case "${UNAME_VERSION}" in 2064a1a9510SRong-En Fan Debian*) 2074a1a9510SRong-En Fan release='-gnu' 2084a1a9510SRong-En Fan ;; 2094a1a9510SRong-En Fan *) 21015589c42SPeter Wemm release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` 2114a1a9510SRong-En Fan ;; 2124a1a9510SRong-En Fan esac 21315589c42SPeter Wemm # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 21415589c42SPeter Wemm # contains redundant information, the shorter form: 21515589c42SPeter Wemm # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 21615589c42SPeter Wemm echo "${machine}-${os}${release}" 2174a1a9510SRong-En Fan exit ;; 218*73f0a83dSXin LI *:Bitrig:*:*) 219*73f0a83dSXin LI UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` 220*73f0a83dSXin LI echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE} 221*73f0a83dSXin LI exit ;; 22239f2269fSPeter Wemm *:OpenBSD:*:*) 2234a1a9510SRong-En Fan UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 2244a1a9510SRong-En Fan echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 2254a1a9510SRong-En Fan exit ;; 2264a1a9510SRong-En Fan *:ekkoBSD:*:*) 2274a1a9510SRong-En Fan echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 2284a1a9510SRong-En Fan exit ;; 2294a1a9510SRong-En Fan *:SolidBSD:*:*) 2304a1a9510SRong-En Fan echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} 2314a1a9510SRong-En Fan exit ;; 2324a1a9510SRong-En Fan macppc:MirBSD:*:*) 2334a1a9510SRong-En Fan echo powerpc-unknown-mirbsd${UNAME_RELEASE} 2344a1a9510SRong-En Fan exit ;; 2354a1a9510SRong-En Fan *:MirBSD:*:*) 2364a1a9510SRong-En Fan echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 2374a1a9510SRong-En Fan exit ;; 2380e3d5408SPeter Wemm alpha:OSF1:*:*) 2394a1a9510SRong-En Fan case $UNAME_RELEASE in 2404a1a9510SRong-En Fan *4.0) 2410e3d5408SPeter Wemm UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 2424a1a9510SRong-En Fan ;; 2434a1a9510SRong-En Fan *5.*) 2444a1a9510SRong-En Fan UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 2454a1a9510SRong-En Fan ;; 2464a1a9510SRong-En Fan esac 2474a1a9510SRong-En Fan # According to Compaq, /usr/sbin/psrinfo has been available on 2484a1a9510SRong-En Fan # OSF/1 and Tru64 systems produced since 1995. I hope that 2494a1a9510SRong-En Fan # covers most systems running today. This code pipes the CPU 2504a1a9510SRong-En Fan # types through head -n 1, so we only detect the type of CPU 0. 2514a1a9510SRong-En Fan ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 2524a1a9510SRong-En Fan case "$ALPHA_CPU_TYPE" in 2534a1a9510SRong-En Fan "EV4 (21064)") 2544a1a9510SRong-En Fan UNAME_MACHINE="alpha" ;; 2554a1a9510SRong-En Fan "EV4.5 (21064)") 2564a1a9510SRong-En Fan UNAME_MACHINE="alpha" ;; 2574a1a9510SRong-En Fan "LCA4 (21066/21068)") 2584a1a9510SRong-En Fan UNAME_MACHINE="alpha" ;; 2594a1a9510SRong-En Fan "EV5 (21164)") 2604a1a9510SRong-En Fan UNAME_MACHINE="alphaev5" ;; 2614a1a9510SRong-En Fan "EV5.6 (21164A)") 2624a1a9510SRong-En Fan UNAME_MACHINE="alphaev56" ;; 2634a1a9510SRong-En Fan "EV5.6 (21164PC)") 2644a1a9510SRong-En Fan UNAME_MACHINE="alphapca56" ;; 2654a1a9510SRong-En Fan "EV5.7 (21164PC)") 2664a1a9510SRong-En Fan UNAME_MACHINE="alphapca57" ;; 2674a1a9510SRong-En Fan "EV6 (21264)") 2684a1a9510SRong-En Fan UNAME_MACHINE="alphaev6" ;; 2694a1a9510SRong-En Fan "EV6.7 (21264A)") 2704a1a9510SRong-En Fan UNAME_MACHINE="alphaev67" ;; 2714a1a9510SRong-En Fan "EV6.8CB (21264C)") 2724a1a9510SRong-En Fan UNAME_MACHINE="alphaev68" ;; 2734a1a9510SRong-En Fan "EV6.8AL (21264B)") 2744a1a9510SRong-En Fan UNAME_MACHINE="alphaev68" ;; 2754a1a9510SRong-En Fan "EV6.8CX (21264D)") 2764a1a9510SRong-En Fan UNAME_MACHINE="alphaev68" ;; 2774a1a9510SRong-En Fan "EV6.9A (21264/EV69A)") 2784a1a9510SRong-En Fan UNAME_MACHINE="alphaev69" ;; 2794a1a9510SRong-En Fan "EV7 (21364)") 2804a1a9510SRong-En Fan UNAME_MACHINE="alphaev7" ;; 2814a1a9510SRong-En Fan "EV7.9 (21364A)") 2824a1a9510SRong-En Fan UNAME_MACHINE="alphaev79" ;; 2834a1a9510SRong-En Fan esac 2844a1a9510SRong-En Fan # A Pn.n version is a patched version. 2850e3d5408SPeter Wemm # A Vn.n version is a released version. 2860e3d5408SPeter Wemm # A Tn.n version is a released field test version. 2870e3d5408SPeter Wemm # A Xn.n version is an unreleased experimental baselevel. 2880e3d5408SPeter Wemm # 1.2 uses "1.2" for uname -r. 2894a1a9510SRong-En Fan echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 290*73f0a83dSXin LI # Reset EXIT trap before exiting to avoid spurious non-zero exit code. 291*73f0a83dSXin LI exitcode=$? 292*73f0a83dSXin LI trap '' 0 293*73f0a83dSXin LI exit $exitcode ;; 29415589c42SPeter Wemm Alpha\ *:Windows_NT*:*) 29515589c42SPeter Wemm # How do we know it's Interix rather than the generic POSIX subsystem? 29615589c42SPeter Wemm # Should we change UNAME_MACHINE based on the output of uname instead 29715589c42SPeter Wemm # of the specific Alpha model? 29815589c42SPeter Wemm echo alpha-pc-interix 2994a1a9510SRong-En Fan exit ;; 3000e3d5408SPeter Wemm 21064:Windows_NT:50:3) 3010e3d5408SPeter Wemm echo alpha-dec-winnt3.5 3024a1a9510SRong-En Fan exit ;; 3030e3d5408SPeter Wemm Amiga*:UNIX_System_V:4.0:*) 3047a69bbfbSPeter Wemm echo m68k-unknown-sysv4 3054a1a9510SRong-En Fan exit ;; 3060e3d5408SPeter Wemm *:[Aa]miga[Oo][Ss]:*:*) 3070e3d5408SPeter Wemm echo ${UNAME_MACHINE}-unknown-amigaos 3084a1a9510SRong-En Fan exit ;; 30939f2269fSPeter Wemm *:[Mm]orph[Oo][Ss]:*:*) 31039f2269fSPeter Wemm echo ${UNAME_MACHINE}-unknown-morphos 3114a1a9510SRong-En Fan exit ;; 31215589c42SPeter Wemm *:OS/390:*:*) 31315589c42SPeter Wemm echo i370-ibm-openedition 3144a1a9510SRong-En Fan exit ;; 3154a1a9510SRong-En Fan *:z/VM:*:*) 3164a1a9510SRong-En Fan echo s390-ibm-zvmoe 3174a1a9510SRong-En Fan exit ;; 3184a1a9510SRong-En Fan *:OS400:*:*) 3194a1a9510SRong-En Fan echo powerpc-ibm-os400 3204a1a9510SRong-En Fan exit ;; 3210e3d5408SPeter Wemm arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 3220e3d5408SPeter Wemm echo arm-acorn-riscix${UNAME_RELEASE} 3234a1a9510SRong-En Fan exit ;; 324*73f0a83dSXin LI arm*:riscos:*:*|arm*:RISCOS:*:*) 3254a1a9510SRong-En Fan echo arm-unknown-riscos 3264a1a9510SRong-En Fan exit ;; 3277a69bbfbSPeter Wemm SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 3280e3d5408SPeter Wemm echo hppa1.1-hitachi-hiuxmpp 3294a1a9510SRong-En Fan exit ;; 3300e3d5408SPeter Wemm Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 3310e3d5408SPeter Wemm # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 3320e3d5408SPeter Wemm if test "`(/bin/universe) 2>/dev/null`" = att ; then 3330e3d5408SPeter Wemm echo pyramid-pyramid-sysv3 3340e3d5408SPeter Wemm else 3350e3d5408SPeter Wemm echo pyramid-pyramid-bsd 3360e3d5408SPeter Wemm fi 3374a1a9510SRong-En Fan exit ;; 33815589c42SPeter Wemm NILE*:*:*:dcosx) 3390e3d5408SPeter Wemm echo pyramid-pyramid-svr4 3404a1a9510SRong-En Fan exit ;; 3414a1a9510SRong-En Fan DRS?6000:unix:4.0:6*) 3424a1a9510SRong-En Fan echo sparc-icl-nx6 3434a1a9510SRong-En Fan exit ;; 3444a1a9510SRong-En Fan DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 3454a1a9510SRong-En Fan case `/usr/bin/uname -p` in 3464a1a9510SRong-En Fan sparc) echo sparc-icl-nx7; exit ;; 3474a1a9510SRong-En Fan esac ;; 34806bfebdeSXin LI s390x:SunOS:*:*) 34906bfebdeSXin LI echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 35006bfebdeSXin LI exit ;; 3510e3d5408SPeter Wemm sun4H:SunOS:5.*:*) 3520e3d5408SPeter Wemm echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 3534a1a9510SRong-En Fan exit ;; 3540e3d5408SPeter Wemm sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 3550e3d5408SPeter Wemm echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 3564a1a9510SRong-En Fan exit ;; 35706bfebdeSXin LI i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) 35806bfebdeSXin LI echo i386-pc-auroraux${UNAME_RELEASE} 35906bfebdeSXin LI exit ;; 360aa59d4d4SRong-En Fan i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) 36106bfebdeSXin LI eval $set_cc_for_build 36206bfebdeSXin LI SUN_ARCH="i386" 36306bfebdeSXin LI # If there is a compiler, see if it is configured for 64-bit objects. 36406bfebdeSXin LI # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. 36506bfebdeSXin LI # This test works for both compilers. 36606bfebdeSXin LI if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 36706bfebdeSXin LI if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ 36806bfebdeSXin LI (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 36906bfebdeSXin LI grep IS_64BIT_ARCH >/dev/null 37006bfebdeSXin LI then 37106bfebdeSXin LI SUN_ARCH="x86_64" 37206bfebdeSXin LI fi 37306bfebdeSXin LI fi 37406bfebdeSXin LI echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 3754a1a9510SRong-En Fan exit ;; 3760e3d5408SPeter Wemm sun4*:SunOS:6*:*) 3770e3d5408SPeter Wemm # According to config.sub, this is the proper way to canonicalize 3780e3d5408SPeter Wemm # SunOS6. Hard to guess exactly what SunOS6 will be like, but 3790e3d5408SPeter Wemm # it's likely to be more like Solaris than SunOS4. 3800e3d5408SPeter Wemm echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 3814a1a9510SRong-En Fan exit ;; 3820e3d5408SPeter Wemm sun4*:SunOS:*:*) 3830e3d5408SPeter Wemm case "`/usr/bin/arch -k`" in 3840e3d5408SPeter Wemm Series*|S4*) 3850e3d5408SPeter Wemm UNAME_RELEASE=`uname -v` 3860e3d5408SPeter Wemm ;; 3870e3d5408SPeter Wemm esac 3880e3d5408SPeter Wemm # Japanese Language versions have a version number like `4.1.3-JL'. 3890e3d5408SPeter Wemm echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 3904a1a9510SRong-En Fan exit ;; 3910e3d5408SPeter Wemm sun3*:SunOS:*:*) 3920e3d5408SPeter Wemm echo m68k-sun-sunos${UNAME_RELEASE} 3934a1a9510SRong-En Fan exit ;; 3940e3d5408SPeter Wemm sun*:*:4.2BSD:*) 39539f2269fSPeter Wemm UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 3960e3d5408SPeter Wemm test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 3970e3d5408SPeter Wemm case "`/bin/arch`" in 3980e3d5408SPeter Wemm sun3) 3990e3d5408SPeter Wemm echo m68k-sun-sunos${UNAME_RELEASE} 4000e3d5408SPeter Wemm ;; 4010e3d5408SPeter Wemm sun4) 4020e3d5408SPeter Wemm echo sparc-sun-sunos${UNAME_RELEASE} 4030e3d5408SPeter Wemm ;; 4040e3d5408SPeter Wemm esac 4054a1a9510SRong-En Fan exit ;; 4060e3d5408SPeter Wemm aushp:SunOS:*:*) 4070e3d5408SPeter Wemm echo sparc-auspex-sunos${UNAME_RELEASE} 4084a1a9510SRong-En Fan exit ;; 40915589c42SPeter Wemm # The situation for MiNT is a little confusing. The machine name 41015589c42SPeter Wemm # can be virtually everything (everything which is not 41115589c42SPeter Wemm # "atarist" or "atariste" at least should have a processor 41215589c42SPeter Wemm # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 41315589c42SPeter Wemm # to the lowercase version "mint" (or "freemint"). Finally 41415589c42SPeter Wemm # the system name "TOS" denotes a system which is actually not 41515589c42SPeter Wemm # MiNT. But MiNT is downward compatible to TOS, so this should 41615589c42SPeter Wemm # be no problem. 41715589c42SPeter Wemm atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 41815589c42SPeter Wemm echo m68k-atari-mint${UNAME_RELEASE} 4194a1a9510SRong-En Fan exit ;; 42015589c42SPeter Wemm atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 42115589c42SPeter Wemm echo m68k-atari-mint${UNAME_RELEASE} 4224a1a9510SRong-En Fan exit ;; 42315589c42SPeter Wemm *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 42415589c42SPeter Wemm echo m68k-atari-mint${UNAME_RELEASE} 4254a1a9510SRong-En Fan exit ;; 42615589c42SPeter Wemm milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 42715589c42SPeter Wemm echo m68k-milan-mint${UNAME_RELEASE} 4284a1a9510SRong-En Fan exit ;; 42915589c42SPeter Wemm hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 43015589c42SPeter Wemm echo m68k-hades-mint${UNAME_RELEASE} 4314a1a9510SRong-En Fan exit ;; 43215589c42SPeter Wemm *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 43315589c42SPeter Wemm echo m68k-unknown-mint${UNAME_RELEASE} 4344a1a9510SRong-En Fan exit ;; 4354a1a9510SRong-En Fan m68k:machten:*:*) 4364a1a9510SRong-En Fan echo m68k-apple-machten${UNAME_RELEASE} 4374a1a9510SRong-En Fan exit ;; 4380e3d5408SPeter Wemm powerpc:machten:*:*) 4390e3d5408SPeter Wemm echo powerpc-apple-machten${UNAME_RELEASE} 4404a1a9510SRong-En Fan exit ;; 4410e3d5408SPeter Wemm RISC*:Mach:*:*) 4420e3d5408SPeter Wemm echo mips-dec-mach_bsd4.3 4434a1a9510SRong-En Fan exit ;; 4440e3d5408SPeter Wemm RISC*:ULTRIX:*:*) 4450e3d5408SPeter Wemm echo mips-dec-ultrix${UNAME_RELEASE} 4464a1a9510SRong-En Fan exit ;; 4470e3d5408SPeter Wemm VAX*:ULTRIX*:*:*) 4480e3d5408SPeter Wemm echo vax-dec-ultrix${UNAME_RELEASE} 4494a1a9510SRong-En Fan exit ;; 4500e3d5408SPeter Wemm 2020:CLIX:*:* | 2430:CLIX:*:*) 4510e3d5408SPeter Wemm echo clipper-intergraph-clix${UNAME_RELEASE} 4524a1a9510SRong-En Fan exit ;; 4530e3d5408SPeter Wemm mips:*:*:UMIPS | mips:*:*:RISCos) 45439f2269fSPeter Wemm eval $set_cc_for_build 45515589c42SPeter Wemm sed 's/^ //' << EOF >$dummy.c 45615589c42SPeter Wemm#ifdef __cplusplus 45715589c42SPeter Wemm#include <stdio.h> /* for printf() prototype */ 45815589c42SPeter Wemm int main (int argc, char *argv[]) { 45915589c42SPeter Wemm#else 46015589c42SPeter Wemm int main (argc, argv) int argc; char *argv[]; { 46115589c42SPeter Wemm#endif 4620e3d5408SPeter Wemm #if defined (host_mips) && defined (MIPSEB) 4630e3d5408SPeter Wemm #if defined (SYSTYPE_SYSV) 4640e3d5408SPeter Wemm printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 4650e3d5408SPeter Wemm #endif 4660e3d5408SPeter Wemm #if defined (SYSTYPE_SVR4) 4670e3d5408SPeter Wemm printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 4680e3d5408SPeter Wemm #endif 4690e3d5408SPeter Wemm #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 4700e3d5408SPeter Wemm printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 4710e3d5408SPeter Wemm #endif 4720e3d5408SPeter Wemm #endif 4730e3d5408SPeter Wemm exit (-1); 4740e3d5408SPeter Wemm } 4750e3d5408SPeter WemmEOF 4764a1a9510SRong-En Fan $CC_FOR_BUILD -o $dummy $dummy.c && 4774a1a9510SRong-En Fan dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 4784a1a9510SRong-En Fan SYSTEM_NAME=`$dummy $dummyarg` && 4794a1a9510SRong-En Fan { echo "$SYSTEM_NAME"; exit; } 4800e3d5408SPeter Wemm echo mips-mips-riscos${UNAME_RELEASE} 4814a1a9510SRong-En Fan exit ;; 48239f2269fSPeter Wemm Motorola:PowerMAX_OS:*:*) 48339f2269fSPeter Wemm echo powerpc-motorola-powermax 4844a1a9510SRong-En Fan exit ;; 4854a1a9510SRong-En Fan Motorola:*:4.3:PL8-*) 4864a1a9510SRong-En Fan echo powerpc-harris-powermax 4874a1a9510SRong-En Fan exit ;; 4884a1a9510SRong-En Fan Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 4894a1a9510SRong-En Fan echo powerpc-harris-powermax 4904a1a9510SRong-En Fan exit ;; 4910e3d5408SPeter Wemm Night_Hawk:Power_UNIX:*:*) 4920e3d5408SPeter Wemm echo powerpc-harris-powerunix 4934a1a9510SRong-En Fan exit ;; 4940e3d5408SPeter Wemm m88k:CX/UX:7*:*) 4950e3d5408SPeter Wemm echo m88k-harris-cxux7 4964a1a9510SRong-En Fan exit ;; 4970e3d5408SPeter Wemm m88k:*:4*:R4*) 4980e3d5408SPeter Wemm echo m88k-motorola-sysv4 4994a1a9510SRong-En Fan exit ;; 5000e3d5408SPeter Wemm m88k:*:3*:R3*) 5010e3d5408SPeter Wemm echo m88k-motorola-sysv3 5024a1a9510SRong-En Fan exit ;; 5030e3d5408SPeter Wemm AViiON:dgux:*:*) 5040e3d5408SPeter Wemm # DG/UX returns AViiON for all architectures 5050e3d5408SPeter Wemm UNAME_PROCESSOR=`/usr/bin/uname -p` 50615589c42SPeter Wemm if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 50715589c42SPeter Wemm then 50815589c42SPeter Wemm if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 50915589c42SPeter Wemm [ ${TARGET_BINARY_INTERFACE}x = x ] 51015589c42SPeter Wemm then 5110e3d5408SPeter Wemm echo m88k-dg-dgux${UNAME_RELEASE} 5120e3d5408SPeter Wemm else 5130e3d5408SPeter Wemm echo m88k-dg-dguxbcs${UNAME_RELEASE} 5140e3d5408SPeter Wemm fi 51515589c42SPeter Wemm else 51615589c42SPeter Wemm echo i586-dg-dgux${UNAME_RELEASE} 5170e3d5408SPeter Wemm fi 5184a1a9510SRong-En Fan exit ;; 5190e3d5408SPeter Wemm M88*:DolphinOS:*:*) # DolphinOS (SVR3) 5200e3d5408SPeter Wemm echo m88k-dolphin-sysv3 5214a1a9510SRong-En Fan exit ;; 5220e3d5408SPeter Wemm M88*:*:R3*:*) 5230e3d5408SPeter Wemm # Delta 88k system running SVR3 5240e3d5408SPeter Wemm echo m88k-motorola-sysv3 5254a1a9510SRong-En Fan exit ;; 5260e3d5408SPeter Wemm XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 5270e3d5408SPeter Wemm echo m88k-tektronix-sysv3 5284a1a9510SRong-En Fan exit ;; 5290e3d5408SPeter Wemm Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 5300e3d5408SPeter Wemm echo m68k-tektronix-bsd 5314a1a9510SRong-En Fan exit ;; 5320e3d5408SPeter Wemm *:IRIX*:*:*) 5330e3d5408SPeter Wemm echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 5344a1a9510SRong-En Fan exit ;; 5350e3d5408SPeter Wemm ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 5360e3d5408SPeter Wemm echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 5374a1a9510SRong-En Fan exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 53839f2269fSPeter Wemm i*86:AIX:*:*) 5390e3d5408SPeter Wemm echo i386-ibm-aix 5404a1a9510SRong-En Fan exit ;; 5417a69bbfbSPeter Wemm ia64:AIX:*:*) 5427a69bbfbSPeter Wemm if [ -x /usr/bin/oslevel ] ; then 5437a69bbfbSPeter Wemm IBM_REV=`/usr/bin/oslevel` 5447a69bbfbSPeter Wemm else 5457a69bbfbSPeter Wemm IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 5467a69bbfbSPeter Wemm fi 5477a69bbfbSPeter Wemm echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 5484a1a9510SRong-En Fan exit ;; 5490e3d5408SPeter Wemm *:AIX:2:3) 5500e3d5408SPeter Wemm if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 55139f2269fSPeter Wemm eval $set_cc_for_build 55215589c42SPeter Wemm sed 's/^ //' << EOF >$dummy.c 5530e3d5408SPeter Wemm #include <sys/systemcfg.h> 5540e3d5408SPeter Wemm 5550e3d5408SPeter Wemm main() 5560e3d5408SPeter Wemm { 5570e3d5408SPeter Wemm if (!__power_pc()) 5580e3d5408SPeter Wemm exit(1); 5590e3d5408SPeter Wemm puts("powerpc-ibm-aix3.2.5"); 5600e3d5408SPeter Wemm exit(0); 5610e3d5408SPeter Wemm } 5620e3d5408SPeter WemmEOF 5634a1a9510SRong-En Fan if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 5644a1a9510SRong-En Fan then 5654a1a9510SRong-En Fan echo "$SYSTEM_NAME" 5664a1a9510SRong-En Fan else 5670e3d5408SPeter Wemm echo rs6000-ibm-aix3.2.5 5684a1a9510SRong-En Fan fi 5690e3d5408SPeter Wemm elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 5700e3d5408SPeter Wemm echo rs6000-ibm-aix3.2.4 5710e3d5408SPeter Wemm else 5720e3d5408SPeter Wemm echo rs6000-ibm-aix3.2 5730e3d5408SPeter Wemm fi 5744a1a9510SRong-En Fan exit ;; 57506bfebdeSXin LI *:AIX:*:[4567]) 57639f2269fSPeter Wemm IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 5777a69bbfbSPeter Wemm if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 5780e3d5408SPeter Wemm IBM_ARCH=rs6000 5790e3d5408SPeter Wemm else 5800e3d5408SPeter Wemm IBM_ARCH=powerpc 5810e3d5408SPeter Wemm fi 5820e3d5408SPeter Wemm if [ -x /usr/bin/oslevel ] ; then 5830e3d5408SPeter Wemm IBM_REV=`/usr/bin/oslevel` 5840e3d5408SPeter Wemm else 5857a69bbfbSPeter Wemm IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 5860e3d5408SPeter Wemm fi 5870e3d5408SPeter Wemm echo ${IBM_ARCH}-ibm-aix${IBM_REV} 5884a1a9510SRong-En Fan exit ;; 5890e3d5408SPeter Wemm *:AIX:*:*) 5900e3d5408SPeter Wemm echo rs6000-ibm-aix 5914a1a9510SRong-En Fan exit ;; 5920e3d5408SPeter Wemm ibmrt:4.4BSD:*|romp-ibm:BSD:*) 5930e3d5408SPeter Wemm echo romp-ibm-bsd4.4 5944a1a9510SRong-En Fan exit ;; 59515589c42SPeter Wemm ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 5960e3d5408SPeter Wemm echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 5974a1a9510SRong-En Fan exit ;; # report: romp-ibm BSD 4.3 5980e3d5408SPeter Wemm *:BOSX:*:*) 5990e3d5408SPeter Wemm echo rs6000-bull-bosx 6004a1a9510SRong-En Fan exit ;; 6010e3d5408SPeter Wemm DPX/2?00:B.O.S.:*:*) 6020e3d5408SPeter Wemm echo m68k-bull-sysv3 6034a1a9510SRong-En Fan exit ;; 6040e3d5408SPeter Wemm 9000/[34]??:4.3bsd:1.*:*) 6050e3d5408SPeter Wemm echo m68k-hp-bsd 6064a1a9510SRong-En Fan exit ;; 6070e3d5408SPeter Wemm hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 6080e3d5408SPeter Wemm echo m68k-hp-bsd4.4 6094a1a9510SRong-En Fan exit ;; 6100e3d5408SPeter Wemm 9000/[34678]??:HP-UX:*:*) 6117a69bbfbSPeter Wemm HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 6120e3d5408SPeter Wemm case "${UNAME_MACHINE}" in 6130e3d5408SPeter Wemm 9000/31? ) HP_ARCH=m68000 ;; 6140e3d5408SPeter Wemm 9000/[34]?? ) HP_ARCH=m68k ;; 61515589c42SPeter Wemm 9000/[678][0-9][0-9]) 6167a69bbfbSPeter Wemm if [ -x /usr/bin/getconf ]; then 6177a69bbfbSPeter Wemm sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 6187a69bbfbSPeter Wemm sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 6197a69bbfbSPeter Wemm case "${sc_cpu_version}" in 6207a69bbfbSPeter Wemm 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 6217a69bbfbSPeter Wemm 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 6227a69bbfbSPeter Wemm 532) # CPU_PA_RISC2_0 6237a69bbfbSPeter Wemm case "${sc_kernel_bits}" in 6247a69bbfbSPeter Wemm 32) HP_ARCH="hppa2.0n" ;; 6257a69bbfbSPeter Wemm 64) HP_ARCH="hppa2.0w" ;; 62639f2269fSPeter Wemm '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 6277a69bbfbSPeter Wemm esac ;; 6287a69bbfbSPeter Wemm esac 62939f2269fSPeter Wemm fi 6307a69bbfbSPeter Wemm if [ "${HP_ARCH}" = "" ]; then 63139f2269fSPeter Wemm eval $set_cc_for_build 63215589c42SPeter Wemm sed 's/^ //' << EOF >$dummy.c 63315589c42SPeter Wemm 63415589c42SPeter Wemm #define _HPUX_SOURCE 6350e3d5408SPeter Wemm #include <stdlib.h> 6360e3d5408SPeter Wemm #include <unistd.h> 6370e3d5408SPeter Wemm 6380e3d5408SPeter Wemm int main () 6390e3d5408SPeter Wemm { 6400e3d5408SPeter Wemm #if defined(_SC_KERNEL_BITS) 6410e3d5408SPeter Wemm long bits = sysconf(_SC_KERNEL_BITS); 6420e3d5408SPeter Wemm #endif 6430e3d5408SPeter Wemm long cpu = sysconf (_SC_CPU_VERSION); 6440e3d5408SPeter Wemm 6450e3d5408SPeter Wemm switch (cpu) 6460e3d5408SPeter Wemm { 6470e3d5408SPeter Wemm case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 6480e3d5408SPeter Wemm case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 6490e3d5408SPeter Wemm case CPU_PA_RISC2_0: 6500e3d5408SPeter Wemm #if defined(_SC_KERNEL_BITS) 6510e3d5408SPeter Wemm switch (bits) 6520e3d5408SPeter Wemm { 6530e3d5408SPeter Wemm case 64: puts ("hppa2.0w"); break; 6540e3d5408SPeter Wemm case 32: puts ("hppa2.0n"); break; 6550e3d5408SPeter Wemm default: puts ("hppa2.0"); break; 6560e3d5408SPeter Wemm } break; 6570e3d5408SPeter Wemm #else /* !defined(_SC_KERNEL_BITS) */ 6580e3d5408SPeter Wemm puts ("hppa2.0"); break; 6590e3d5408SPeter Wemm #endif 6600e3d5408SPeter Wemm default: puts ("hppa1.0"); break; 6610e3d5408SPeter Wemm } 6620e3d5408SPeter Wemm exit (0); 6630e3d5408SPeter Wemm } 6640e3d5408SPeter WemmEOF 6654a1a9510SRong-En Fan (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 6664a1a9510SRong-En Fan test -z "$HP_ARCH" && HP_ARCH=hppa 6677a69bbfbSPeter Wemm fi ;; 6680e3d5408SPeter Wemm esac 6694a1a9510SRong-En Fan if [ ${HP_ARCH} = "hppa2.0w" ] 6704a1a9510SRong-En Fan then 6714a1a9510SRong-En Fan eval $set_cc_for_build 6724a1a9510SRong-En Fan 6734a1a9510SRong-En Fan # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 6744a1a9510SRong-En Fan # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 6754a1a9510SRong-En Fan # generating 64-bit code. GNU and HP use different nomenclature: 6764a1a9510SRong-En Fan # 6774a1a9510SRong-En Fan # $ CC_FOR_BUILD=cc ./config.guess 6784a1a9510SRong-En Fan # => hppa2.0w-hp-hpux11.23 6794a1a9510SRong-En Fan # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 6804a1a9510SRong-En Fan # => hppa64-hp-hpux11.23 6814a1a9510SRong-En Fan 6824a1a9510SRong-En Fan if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | 68306bfebdeSXin LI grep -q __LP64__ 6844a1a9510SRong-En Fan then 6854a1a9510SRong-En Fan HP_ARCH="hppa2.0w" 6864a1a9510SRong-En Fan else 6874a1a9510SRong-En Fan HP_ARCH="hppa64" 6884a1a9510SRong-En Fan fi 6894a1a9510SRong-En Fan fi 6900e3d5408SPeter Wemm echo ${HP_ARCH}-hp-hpux${HPUX_REV} 6914a1a9510SRong-En Fan exit ;; 6927a69bbfbSPeter Wemm ia64:HP-UX:*:*) 6937a69bbfbSPeter Wemm HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 6947a69bbfbSPeter Wemm echo ia64-hp-hpux${HPUX_REV} 6954a1a9510SRong-En Fan exit ;; 6960e3d5408SPeter Wemm 3050*:HI-UX:*:*) 69739f2269fSPeter Wemm eval $set_cc_for_build 69815589c42SPeter Wemm sed 's/^ //' << EOF >$dummy.c 6990e3d5408SPeter Wemm #include <unistd.h> 7000e3d5408SPeter Wemm int 7010e3d5408SPeter Wemm main () 7020e3d5408SPeter Wemm { 7030e3d5408SPeter Wemm long cpu = sysconf (_SC_CPU_VERSION); 7040e3d5408SPeter Wemm /* The order matters, because CPU_IS_HP_MC68K erroneously returns 7050e3d5408SPeter Wemm true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 7060e3d5408SPeter Wemm results, however. */ 7070e3d5408SPeter Wemm if (CPU_IS_PA_RISC (cpu)) 7080e3d5408SPeter Wemm { 7090e3d5408SPeter Wemm switch (cpu) 7100e3d5408SPeter Wemm { 7110e3d5408SPeter Wemm case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 7120e3d5408SPeter Wemm case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 7130e3d5408SPeter Wemm case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 7140e3d5408SPeter Wemm default: puts ("hppa-hitachi-hiuxwe2"); break; 7150e3d5408SPeter Wemm } 7160e3d5408SPeter Wemm } 7170e3d5408SPeter Wemm else if (CPU_IS_HP_MC68K (cpu)) 7180e3d5408SPeter Wemm puts ("m68k-hitachi-hiuxwe2"); 7190e3d5408SPeter Wemm else puts ("unknown-hitachi-hiuxwe2"); 7200e3d5408SPeter Wemm exit (0); 7210e3d5408SPeter Wemm } 7220e3d5408SPeter WemmEOF 7234a1a9510SRong-En Fan $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 7244a1a9510SRong-En Fan { echo "$SYSTEM_NAME"; exit; } 7250e3d5408SPeter Wemm echo unknown-hitachi-hiuxwe2 7264a1a9510SRong-En Fan exit ;; 7270e3d5408SPeter Wemm 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 7280e3d5408SPeter Wemm echo hppa1.1-hp-bsd 7294a1a9510SRong-En Fan exit ;; 7300e3d5408SPeter Wemm 9000/8??:4.3bsd:*:*) 7310e3d5408SPeter Wemm echo hppa1.0-hp-bsd 7324a1a9510SRong-En Fan exit ;; 73339f2269fSPeter Wemm *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 73415589c42SPeter Wemm echo hppa1.0-hp-mpeix 7354a1a9510SRong-En Fan exit ;; 7360e3d5408SPeter Wemm hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 7370e3d5408SPeter Wemm echo hppa1.1-hp-osf 7384a1a9510SRong-En Fan exit ;; 7390e3d5408SPeter Wemm hp8??:OSF1:*:*) 7400e3d5408SPeter Wemm echo hppa1.0-hp-osf 7414a1a9510SRong-En Fan exit ;; 74239f2269fSPeter Wemm i*86:OSF1:*:*) 7430e3d5408SPeter Wemm if [ -x /usr/sbin/sysversion ] ; then 7440e3d5408SPeter Wemm echo ${UNAME_MACHINE}-unknown-osf1mk 7450e3d5408SPeter Wemm else 7460e3d5408SPeter Wemm echo ${UNAME_MACHINE}-unknown-osf1 7470e3d5408SPeter Wemm fi 7484a1a9510SRong-En Fan exit ;; 7490e3d5408SPeter Wemm parisc*:Lites*:*:*) 7500e3d5408SPeter Wemm echo hppa1.1-hp-lites 7514a1a9510SRong-En Fan exit ;; 7520e3d5408SPeter Wemm C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 7530e3d5408SPeter Wemm echo c1-convex-bsd 7544a1a9510SRong-En Fan exit ;; 7550e3d5408SPeter Wemm C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 7560e3d5408SPeter Wemm if getsysinfo -f scalar_acc 7570e3d5408SPeter Wemm then echo c32-convex-bsd 7580e3d5408SPeter Wemm else echo c2-convex-bsd 7590e3d5408SPeter Wemm fi 7604a1a9510SRong-En Fan exit ;; 7610e3d5408SPeter Wemm C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 7620e3d5408SPeter Wemm echo c34-convex-bsd 7634a1a9510SRong-En Fan exit ;; 7640e3d5408SPeter Wemm C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 7650e3d5408SPeter Wemm echo c38-convex-bsd 7664a1a9510SRong-En Fan exit ;; 7670e3d5408SPeter Wemm C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 7680e3d5408SPeter Wemm echo c4-convex-bsd 7694a1a9510SRong-En Fan exit ;; 7700e3d5408SPeter Wemm CRAY*Y-MP:*:*:*) 77139f2269fSPeter Wemm echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7724a1a9510SRong-En Fan exit ;; 7730e3d5408SPeter Wemm CRAY*[A-Z]90:*:*:*) 7740e3d5408SPeter Wemm echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 7750e3d5408SPeter Wemm | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 77639f2269fSPeter Wemm -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 77739f2269fSPeter Wemm -e 's/\.[^.]*$/.X/' 7784a1a9510SRong-En Fan exit ;; 7790e3d5408SPeter Wemm CRAY*TS:*:*:*) 78015589c42SPeter Wemm echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7814a1a9510SRong-En Fan exit ;; 7827a69bbfbSPeter Wemm CRAY*T3E:*:*:*) 7837a69bbfbSPeter Wemm echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7844a1a9510SRong-En Fan exit ;; 78515589c42SPeter Wemm CRAY*SV1:*:*:*) 78615589c42SPeter Wemm echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7874a1a9510SRong-En Fan exit ;; 7884a1a9510SRong-En Fan *:UNICOS/mp:*:*) 7894a1a9510SRong-En Fan echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 7904a1a9510SRong-En Fan exit ;; 7917a69bbfbSPeter Wemm F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 7927a69bbfbSPeter Wemm FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 79315589c42SPeter Wemm FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 7940e3d5408SPeter Wemm FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 7957a69bbfbSPeter Wemm echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 7964a1a9510SRong-En Fan exit ;; 7974a1a9510SRong-En Fan 5000:UNIX_System_V:4.*:*) 7984a1a9510SRong-En Fan FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 7994a1a9510SRong-En Fan FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` 8004a1a9510SRong-En Fan echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 8014a1a9510SRong-En Fan exit ;; 80239f2269fSPeter Wemm i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 80315589c42SPeter Wemm echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 8044a1a9510SRong-En Fan exit ;; 8050e3d5408SPeter Wemm sparc*:BSD/OS:*:*) 8060e3d5408SPeter Wemm echo sparc-unknown-bsdi${UNAME_RELEASE} 8074a1a9510SRong-En Fan exit ;; 80815589c42SPeter Wemm *:BSD/OS:*:*) 80915589c42SPeter Wemm echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 8104a1a9510SRong-En Fan exit ;; 8110e3d5408SPeter Wemm *:FreeBSD:*:*) 812*73f0a83dSXin LI UNAME_PROCESSOR=`/usr/bin/uname -p` 813*73f0a83dSXin LI case ${UNAME_PROCESSOR} in 8144a1a9510SRong-En Fan amd64) 8154a1a9510SRong-En Fan echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 8164a1a9510SRong-En Fan *) 817*73f0a83dSXin LI echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 8184a1a9510SRong-En Fan esac 8194a1a9510SRong-En Fan exit ;; 8200e3d5408SPeter Wemm i*:CYGWIN*:*) 8210e3d5408SPeter Wemm echo ${UNAME_MACHINE}-pc-cygwin 8224a1a9510SRong-En Fan exit ;; 823*73f0a83dSXin LI *:MINGW64*:*) 824*73f0a83dSXin LI echo ${UNAME_MACHINE}-pc-mingw64 825*73f0a83dSXin LI exit ;; 8265ca44d1cSRong-En Fan *:MINGW*:*) 8270e3d5408SPeter Wemm echo ${UNAME_MACHINE}-pc-mingw32 8284a1a9510SRong-En Fan exit ;; 829*73f0a83dSXin LI i*:MSYS*:*) 830*73f0a83dSXin LI echo ${UNAME_MACHINE}-pc-msys 831*73f0a83dSXin LI exit ;; 8324a1a9510SRong-En Fan i*:windows32*:*) 8334a1a9510SRong-En Fan # uname -m includes "-pc" on this system. 8344a1a9510SRong-En Fan echo ${UNAME_MACHINE}-mingw32 8354a1a9510SRong-En Fan exit ;; 8367a69bbfbSPeter Wemm i*:PW*:*) 8377a69bbfbSPeter Wemm echo ${UNAME_MACHINE}-pc-pw32 8384a1a9510SRong-En Fan exit ;; 83906bfebdeSXin LI *:Interix*:*) 8405ca44d1cSRong-En Fan case ${UNAME_MACHINE} in 8415ca44d1cSRong-En Fan x86) 8424a1a9510SRong-En Fan echo i586-pc-interix${UNAME_RELEASE} 8434a1a9510SRong-En Fan exit ;; 84406bfebdeSXin LI authenticamd | genuineintel | EM64T) 8454a1a9510SRong-En Fan echo x86_64-unknown-interix${UNAME_RELEASE} 8464a1a9510SRong-En Fan exit ;; 847aa59d4d4SRong-En Fan IA64) 848aa59d4d4SRong-En Fan echo ia64-unknown-interix${UNAME_RELEASE} 849aa59d4d4SRong-En Fan exit ;; 8505ca44d1cSRong-En Fan esac ;; 8514a1a9510SRong-En Fan [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 8524a1a9510SRong-En Fan echo i${UNAME_MACHINE}-pc-mks 8534a1a9510SRong-En Fan exit ;; 85406bfebdeSXin LI 8664:Windows_NT:*) 85506bfebdeSXin LI echo x86_64-pc-mks 85606bfebdeSXin LI exit ;; 85715589c42SPeter Wemm i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 85815589c42SPeter Wemm # How do we know it's Interix rather than the generic POSIX subsystem? 85915589c42SPeter Wemm # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 86015589c42SPeter Wemm # UNAME_MACHINE based on the output of uname instead of i386? 8614a1a9510SRong-En Fan echo i586-pc-interix 8624a1a9510SRong-En Fan exit ;; 86315589c42SPeter Wemm i*:UWIN*:*) 86415589c42SPeter Wemm echo ${UNAME_MACHINE}-pc-uwin 8654a1a9510SRong-En Fan exit ;; 8664a1a9510SRong-En Fan amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 8674a1a9510SRong-En Fan echo x86_64-unknown-cygwin 8684a1a9510SRong-En Fan exit ;; 8690e3d5408SPeter Wemm p*:CYGWIN*:*) 8700e3d5408SPeter Wemm echo powerpcle-unknown-cygwin 8714a1a9510SRong-En Fan exit ;; 8720e3d5408SPeter Wemm prep*:SunOS:5.*:*) 8730e3d5408SPeter Wemm echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 8744a1a9510SRong-En Fan exit ;; 8750e3d5408SPeter Wemm *:GNU:*:*) 8764a1a9510SRong-En Fan # the GNU system 877*73f0a83dSXin LI echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 8784a1a9510SRong-En Fan exit ;; 8794a1a9510SRong-En Fan *:GNU/*:*:*) 8804a1a9510SRong-En Fan # other systems with GNU libc and userland 881*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC} 8824a1a9510SRong-En Fan exit ;; 88315589c42SPeter Wemm i*86:Minix:*:*) 88415589c42SPeter Wemm echo ${UNAME_MACHINE}-pc-minix 8854a1a9510SRong-En Fan exit ;; 886*73f0a83dSXin LI aarch64:Linux:*:*) 887*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 888*73f0a83dSXin LI exit ;; 889*73f0a83dSXin LI aarch64_be:Linux:*:*) 890*73f0a83dSXin LI UNAME_MACHINE=aarch64_be 891*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 892*73f0a83dSXin LI exit ;; 89306bfebdeSXin LI alpha:Linux:*:*) 89406bfebdeSXin LI case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 89506bfebdeSXin LI EV5) UNAME_MACHINE=alphaev5 ;; 89606bfebdeSXin LI EV56) UNAME_MACHINE=alphaev56 ;; 89706bfebdeSXin LI PCA56) UNAME_MACHINE=alphapca56 ;; 89806bfebdeSXin LI PCA57) UNAME_MACHINE=alphapca56 ;; 89906bfebdeSXin LI EV6) UNAME_MACHINE=alphaev6 ;; 90006bfebdeSXin LI EV67) UNAME_MACHINE=alphaev67 ;; 90106bfebdeSXin LI EV68*) UNAME_MACHINE=alphaev68 ;; 90206bfebdeSXin LI esac 90306bfebdeSXin LI objdump --private-headers /bin/sh | grep -q ld.so.1 904*73f0a83dSXin LI if test "$?" = 0 ; then LIBC="gnulibc1" ; fi 905*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 906*73f0a83dSXin LI exit ;; 907*73f0a83dSXin LI arc:Linux:*:* | arceb:Linux:*:*) 908*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 90906bfebdeSXin LI exit ;; 9107a69bbfbSPeter Wemm arm*:Linux:*:*) 911aa59d4d4SRong-En Fan eval $set_cc_for_build 912*73f0a83dSXin LI if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ 913*73f0a83dSXin LI | grep -q __ARM_EABI__ 914aa59d4d4SRong-En Fan then 915*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 916aa59d4d4SRong-En Fan else 917*73f0a83dSXin LI if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ 918*73f0a83dSXin LI | grep -q __ARM_PCS_VFP 919*73f0a83dSXin LI then 920*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi 921*73f0a83dSXin LI else 922*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf 923*73f0a83dSXin LI fi 924aa59d4d4SRong-En Fan fi 9254a1a9510SRong-En Fan exit ;; 9264a1a9510SRong-En Fan avr32*:Linux:*:*) 927*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 9284a1a9510SRong-En Fan exit ;; 9294a1a9510SRong-En Fan cris:Linux:*:*) 930*73f0a83dSXin LI echo ${UNAME_MACHINE}-axis-linux-${LIBC} 9314a1a9510SRong-En Fan exit ;; 9324a1a9510SRong-En Fan crisv32:Linux:*:*) 933*73f0a83dSXin LI echo ${UNAME_MACHINE}-axis-linux-${LIBC} 9344a1a9510SRong-En Fan exit ;; 9354a1a9510SRong-En Fan frv:Linux:*:*) 936*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 937*73f0a83dSXin LI exit ;; 938*73f0a83dSXin LI hexagon:Linux:*:*) 939*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 9404a1a9510SRong-En Fan exit ;; 94106bfebdeSXin LI i*86:Linux:*:*) 942*73f0a83dSXin LI echo ${UNAME_MACHINE}-pc-linux-${LIBC} 94306bfebdeSXin LI exit ;; 9447a69bbfbSPeter Wemm ia64:Linux:*:*) 945*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 9464a1a9510SRong-En Fan exit ;; 9474a1a9510SRong-En Fan m32r*:Linux:*:*) 948*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 9494a1a9510SRong-En Fan exit ;; 9507a69bbfbSPeter Wemm m68*:Linux:*:*) 951*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 9524a1a9510SRong-En Fan exit ;; 95306bfebdeSXin LI mips:Linux:*:* | mips64:Linux:*:*) 95439f2269fSPeter Wemm eval $set_cc_for_build 95539f2269fSPeter Wemm sed 's/^ //' << EOF >$dummy.c 95639f2269fSPeter Wemm #undef CPU 95706bfebdeSXin LI #undef ${UNAME_MACHINE} 95806bfebdeSXin LI #undef ${UNAME_MACHINE}el 95939f2269fSPeter Wemm #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 96006bfebdeSXin LI CPU=${UNAME_MACHINE}el 9617a69bbfbSPeter Wemm #else 96239f2269fSPeter Wemm #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 96306bfebdeSXin LI CPU=${UNAME_MACHINE} 96439f2269fSPeter Wemm #else 96539f2269fSPeter Wemm CPU= 9667a69bbfbSPeter Wemm #endif 9677a69bbfbSPeter Wemm #endif 9687a69bbfbSPeter WemmEOF 96906bfebdeSXin LI eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` 970*73f0a83dSXin LI test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; } 9714a1a9510SRong-En Fan ;; 972*73f0a83dSXin LI or1k:Linux:*:*) 973*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 974*73f0a83dSXin LI exit ;; 9754a1a9510SRong-En Fan or32:Linux:*:*) 976*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 9774a1a9510SRong-En Fan exit ;; 97806bfebdeSXin LI padre:Linux:*:*) 979*73f0a83dSXin LI echo sparc-unknown-linux-${LIBC} 9804a1a9510SRong-En Fan exit ;; 98106bfebdeSXin LI parisc64:Linux:*:* | hppa64:Linux:*:*) 982*73f0a83dSXin LI echo hppa64-unknown-linux-${LIBC} 9834a1a9510SRong-En Fan exit ;; 9847a69bbfbSPeter Wemm parisc:Linux:*:* | hppa:Linux:*:*) 9857a69bbfbSPeter Wemm # Look for CPU level 9867a69bbfbSPeter Wemm case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 987*73f0a83dSXin LI PA7*) echo hppa1.1-unknown-linux-${LIBC} ;; 988*73f0a83dSXin LI PA8*) echo hppa2.0-unknown-linux-${LIBC} ;; 989*73f0a83dSXin LI *) echo hppa-unknown-linux-${LIBC} ;; 9907a69bbfbSPeter Wemm esac 9914a1a9510SRong-En Fan exit ;; 99206bfebdeSXin LI ppc64:Linux:*:*) 993*73f0a83dSXin LI echo powerpc64-unknown-linux-${LIBC} 99406bfebdeSXin LI exit ;; 99506bfebdeSXin LI ppc:Linux:*:*) 996*73f0a83dSXin LI echo powerpc-unknown-linux-${LIBC} 997*73f0a83dSXin LI exit ;; 998*73f0a83dSXin LI ppc64le:Linux:*:*) 999*73f0a83dSXin LI echo powerpc64le-unknown-linux-${LIBC} 1000*73f0a83dSXin LI exit ;; 1001*73f0a83dSXin LI ppcle:Linux:*:*) 1002*73f0a83dSXin LI echo powerpcle-unknown-linux-${LIBC} 10034a1a9510SRong-En Fan exit ;; 10047a69bbfbSPeter Wemm s390:Linux:*:* | s390x:Linux:*:*) 1005*73f0a83dSXin LI echo ${UNAME_MACHINE}-ibm-linux-${LIBC} 10064a1a9510SRong-En Fan exit ;; 10074a1a9510SRong-En Fan sh64*:Linux:*:*) 1008*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 10094a1a9510SRong-En Fan exit ;; 10107a69bbfbSPeter Wemm sh*:Linux:*:*) 1011*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 10124a1a9510SRong-En Fan exit ;; 10137a69bbfbSPeter Wemm sparc:Linux:*:* | sparc64:Linux:*:*) 1014*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 10154a1a9510SRong-En Fan exit ;; 101606bfebdeSXin LI tile*:Linux:*:*) 1017*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 101806bfebdeSXin LI exit ;; 10194a1a9510SRong-En Fan vax:Linux:*:*) 1020*73f0a83dSXin LI echo ${UNAME_MACHINE}-dec-linux-${LIBC} 10214a1a9510SRong-En Fan exit ;; 10227a69bbfbSPeter Wemm x86_64:Linux:*:*) 1023*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 10244a1a9510SRong-En Fan exit ;; 1025aa59d4d4SRong-En Fan xtensa*:Linux:*:*) 1026*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 10275ca44d1cSRong-En Fan exit ;; 102839f2269fSPeter Wemm i*86:DYNIX/ptx:4*:*) 102939f2269fSPeter Wemm # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 103039f2269fSPeter Wemm # earlier versions are messed up and put the nodename in both 103139f2269fSPeter Wemm # sysname and nodename. 10320e3d5408SPeter Wemm echo i386-sequent-sysv4 10334a1a9510SRong-En Fan exit ;; 103439f2269fSPeter Wemm i*86:UNIX_SV:4.2MP:2.*) 10350e3d5408SPeter Wemm # Unixware is an offshoot of SVR4, but it has its own version 10360e3d5408SPeter Wemm # number series starting with 2... 10370e3d5408SPeter Wemm # I am not positive that other SVR4 systems won't match this, 10380e3d5408SPeter Wemm # I just have to hope. -- rms. 10390e3d5408SPeter Wemm # Use sysv4.2uw... so that sysv4* matches it. 10400e3d5408SPeter Wemm echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 10414a1a9510SRong-En Fan exit ;; 10424a1a9510SRong-En Fan i*86:OS/2:*:*) 10434a1a9510SRong-En Fan # If we were able to find `uname', then EMX Unix compatibility 10444a1a9510SRong-En Fan # is probably installed. 10454a1a9510SRong-En Fan echo ${UNAME_MACHINE}-pc-os2-emx 10464a1a9510SRong-En Fan exit ;; 10474a1a9510SRong-En Fan i*86:XTS-300:*:STOP) 10484a1a9510SRong-En Fan echo ${UNAME_MACHINE}-unknown-stop 10494a1a9510SRong-En Fan exit ;; 10504a1a9510SRong-En Fan i*86:atheos:*:*) 10514a1a9510SRong-En Fan echo ${UNAME_MACHINE}-unknown-atheos 10524a1a9510SRong-En Fan exit ;; 10534a1a9510SRong-En Fan i*86:syllable:*:*) 10544a1a9510SRong-En Fan echo ${UNAME_MACHINE}-pc-syllable 10554a1a9510SRong-En Fan exit ;; 105606bfebdeSXin LI i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) 10574a1a9510SRong-En Fan echo i386-unknown-lynxos${UNAME_RELEASE} 10584a1a9510SRong-En Fan exit ;; 10594a1a9510SRong-En Fan i*86:*DOS:*:*) 10604a1a9510SRong-En Fan echo ${UNAME_MACHINE}-pc-msdosdjgpp 10614a1a9510SRong-En Fan exit ;; 106239f2269fSPeter Wemm i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 106315589c42SPeter Wemm UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 106415589c42SPeter Wemm if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 106515589c42SPeter Wemm echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 10660e3d5408SPeter Wemm else 106715589c42SPeter Wemm echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 10680e3d5408SPeter Wemm fi 10694a1a9510SRong-En Fan exit ;; 10704a1a9510SRong-En Fan i*86:*:5:[678]*) 10714a1a9510SRong-En Fan # UnixWare 7.x, OpenUNIX and OpenServer 6. 107239f2269fSPeter Wemm case `/bin/uname -X | grep "^Machine"` in 107339f2269fSPeter Wemm *486*) UNAME_MACHINE=i486 ;; 107439f2269fSPeter Wemm *Pentium) UNAME_MACHINE=i586 ;; 107539f2269fSPeter Wemm *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 107639f2269fSPeter Wemm esac 107739f2269fSPeter Wemm echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 10784a1a9510SRong-En Fan exit ;; 107939f2269fSPeter Wemm i*86:*:3.2:*) 10800e3d5408SPeter Wemm if test -f /usr/options/cb.name; then 10810e3d5408SPeter Wemm UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 10820e3d5408SPeter Wemm echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 10830e3d5408SPeter Wemm elif /bin/uname -X 2>/dev/null >/dev/null ; then 10844a1a9510SRong-En Fan UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 10854a1a9510SRong-En Fan (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 10864a1a9510SRong-En Fan (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 10870e3d5408SPeter Wemm && UNAME_MACHINE=i586 10884a1a9510SRong-En Fan (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 108915589c42SPeter Wemm && UNAME_MACHINE=i686 10904a1a9510SRong-En Fan (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 109115589c42SPeter Wemm && UNAME_MACHINE=i686 10920e3d5408SPeter Wemm echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 10930e3d5408SPeter Wemm else 10940e3d5408SPeter Wemm echo ${UNAME_MACHINE}-pc-sysv32 10950e3d5408SPeter Wemm fi 10964a1a9510SRong-En Fan exit ;; 10970e3d5408SPeter Wemm pc:*:*:*) 109815589c42SPeter Wemm # Left here for compatibility: 10990e3d5408SPeter Wemm # uname -m prints for DJGPP always 'pc', but it prints nothing about 110006bfebdeSXin LI # the processor, so we play safe by assuming i586. 110106bfebdeSXin LI # Note: whatever this is, it MUST be the same as what config.sub 110206bfebdeSXin LI # prints for the "djgpp" host, or else GDB configury will decide that 110306bfebdeSXin LI # this is a cross-build. 110406bfebdeSXin LI echo i586-pc-msdosdjgpp 11054a1a9510SRong-En Fan exit ;; 11060e3d5408SPeter Wemm Intel:Mach:3*:*) 11070e3d5408SPeter Wemm echo i386-pc-mach3 11084a1a9510SRong-En Fan exit ;; 11090e3d5408SPeter Wemm paragon:*:*:*) 11100e3d5408SPeter Wemm echo i860-intel-osf1 11114a1a9510SRong-En Fan exit ;; 11120e3d5408SPeter Wemm i860:*:4.*:*) # i860-SVR4 11130e3d5408SPeter Wemm if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 11140e3d5408SPeter Wemm echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 11150e3d5408SPeter Wemm else # Add other i860-SVR4 vendors below as they are discovered. 11160e3d5408SPeter Wemm echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 11170e3d5408SPeter Wemm fi 11184a1a9510SRong-En Fan exit ;; 11190e3d5408SPeter Wemm mini*:CTIX:SYS*5:*) 11200e3d5408SPeter Wemm # "miniframe" 11210e3d5408SPeter Wemm echo m68010-convergent-sysv 11224a1a9510SRong-En Fan exit ;; 11234a1a9510SRong-En Fan mc68k:UNIX:SYSTEM5:3.51m) 11244a1a9510SRong-En Fan echo m68k-convergent-sysv 11254a1a9510SRong-En Fan exit ;; 11264a1a9510SRong-En Fan M680?0:D-NIX:5.3:*) 11274a1a9510SRong-En Fan echo m68k-diab-dnix 11284a1a9510SRong-En Fan exit ;; 11294a1a9510SRong-En Fan M68*:*:R3V[5678]*:*) 11304a1a9510SRong-En Fan test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 11314a1a9510SRong-En Fan 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) 11320e3d5408SPeter Wemm OS_REL='' 11330e3d5408SPeter Wemm test -r /etc/.relid \ 11340e3d5408SPeter Wemm && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 11350e3d5408SPeter Wemm /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 11364a1a9510SRong-En Fan && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 11370e3d5408SPeter Wemm /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 11384a1a9510SRong-En Fan && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 11390e3d5408SPeter Wemm 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 11400e3d5408SPeter Wemm /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 11414a1a9510SRong-En Fan && { echo i486-ncr-sysv4; exit; } ;; 114206bfebdeSXin LI NCR*:*:4.2:* | MPRAS*:*:4.2:*) 114306bfebdeSXin LI OS_REL='.3' 114406bfebdeSXin LI test -r /etc/.relid \ 114506bfebdeSXin LI && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 114606bfebdeSXin LI /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 114706bfebdeSXin LI && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 114806bfebdeSXin LI /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 114906bfebdeSXin LI && { echo i586-ncr-sysv4.3${OS_REL}; exit; } 115006bfebdeSXin LI /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ 115106bfebdeSXin LI && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 115239f2269fSPeter Wemm m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 11530e3d5408SPeter Wemm echo m68k-unknown-lynxos${UNAME_RELEASE} 11544a1a9510SRong-En Fan exit ;; 11550e3d5408SPeter Wemm mc68030:UNIX_System_V:4.*:*) 11560e3d5408SPeter Wemm echo m68k-atari-sysv4 11574a1a9510SRong-En Fan exit ;; 11580e3d5408SPeter Wemm TSUNAMI:LynxOS:2.*:*) 11590e3d5408SPeter Wemm echo sparc-unknown-lynxos${UNAME_RELEASE} 11604a1a9510SRong-En Fan exit ;; 11617a69bbfbSPeter Wemm rs6000:LynxOS:2.*:*) 11620e3d5408SPeter Wemm echo rs6000-unknown-lynxos${UNAME_RELEASE} 11634a1a9510SRong-En Fan exit ;; 116406bfebdeSXin LI PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) 11657a69bbfbSPeter Wemm echo powerpc-unknown-lynxos${UNAME_RELEASE} 11664a1a9510SRong-En Fan exit ;; 11670e3d5408SPeter Wemm SM[BE]S:UNIX_SV:*:*) 11680e3d5408SPeter Wemm echo mips-dde-sysv${UNAME_RELEASE} 11694a1a9510SRong-En Fan exit ;; 117015589c42SPeter Wemm RM*:ReliantUNIX-*:*:*) 117115589c42SPeter Wemm echo mips-sni-sysv4 11724a1a9510SRong-En Fan exit ;; 11730e3d5408SPeter Wemm RM*:SINIX-*:*:*) 11740e3d5408SPeter Wemm echo mips-sni-sysv4 11754a1a9510SRong-En Fan exit ;; 11760e3d5408SPeter Wemm *:SINIX-*:*:*) 11770e3d5408SPeter Wemm if uname -p 2>/dev/null >/dev/null ; then 11780e3d5408SPeter Wemm UNAME_MACHINE=`(uname -p) 2>/dev/null` 11790e3d5408SPeter Wemm echo ${UNAME_MACHINE}-sni-sysv4 11800e3d5408SPeter Wemm else 11810e3d5408SPeter Wemm echo ns32k-sni-sysv 11820e3d5408SPeter Wemm fi 11834a1a9510SRong-En Fan exit ;; 118439f2269fSPeter Wemm PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 11850e3d5408SPeter Wemm # says <Richard.M.Bartel@ccMail.Census.GOV> 11860e3d5408SPeter Wemm echo i586-unisys-sysv4 11874a1a9510SRong-En Fan exit ;; 11880e3d5408SPeter Wemm *:UNIX_System_V:4*:FTX*) 11890e3d5408SPeter Wemm # From Gerald Hewes <hewes@openmarket.com>. 11900e3d5408SPeter Wemm # How about differentiating between stratus architectures? -djm 11910e3d5408SPeter Wemm echo hppa1.1-stratus-sysv4 11924a1a9510SRong-En Fan exit ;; 11930e3d5408SPeter Wemm *:*:*:FTX*) 11940e3d5408SPeter Wemm # From seanf@swdc.stratus.com. 11950e3d5408SPeter Wemm echo i860-stratus-sysv4 11964a1a9510SRong-En Fan exit ;; 11974a1a9510SRong-En Fan i*86:VOS:*:*) 11984a1a9510SRong-En Fan # From Paul.Green@stratus.com. 11994a1a9510SRong-En Fan echo ${UNAME_MACHINE}-stratus-vos 12004a1a9510SRong-En Fan exit ;; 120139f2269fSPeter Wemm *:VOS:*:*) 120239f2269fSPeter Wemm # From Paul.Green@stratus.com. 120339f2269fSPeter Wemm echo hppa1.1-stratus-vos 12044a1a9510SRong-En Fan exit ;; 12050e3d5408SPeter Wemm mc68*:A/UX:*:*) 12060e3d5408SPeter Wemm echo m68k-apple-aux${UNAME_RELEASE} 12074a1a9510SRong-En Fan exit ;; 12087a69bbfbSPeter Wemm news*:NEWS-OS:6*:*) 12090e3d5408SPeter Wemm echo mips-sony-newsos6 12104a1a9510SRong-En Fan exit ;; 121115589c42SPeter Wemm R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 12120e3d5408SPeter Wemm if [ -d /usr/nec ]; then 12130e3d5408SPeter Wemm echo mips-nec-sysv${UNAME_RELEASE} 12140e3d5408SPeter Wemm else 12150e3d5408SPeter Wemm echo mips-unknown-sysv${UNAME_RELEASE} 12160e3d5408SPeter Wemm fi 12174a1a9510SRong-En Fan exit ;; 12180e3d5408SPeter Wemm BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 12190e3d5408SPeter Wemm echo powerpc-be-beos 12204a1a9510SRong-En Fan exit ;; 12210e3d5408SPeter Wemm BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 12220e3d5408SPeter Wemm echo powerpc-apple-beos 12234a1a9510SRong-En Fan exit ;; 12240e3d5408SPeter Wemm BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 12250e3d5408SPeter Wemm echo i586-pc-beos 12264a1a9510SRong-En Fan exit ;; 1227aa59d4d4SRong-En Fan BePC:Haiku:*:*) # Haiku running on Intel PC compatible. 1228aa59d4d4SRong-En Fan echo i586-pc-haiku 1229aa59d4d4SRong-En Fan exit ;; 1230*73f0a83dSXin LI x86_64:Haiku:*:*) 1231*73f0a83dSXin LI echo x86_64-unknown-haiku 1232*73f0a83dSXin LI exit ;; 123315589c42SPeter Wemm SX-4:SUPER-UX:*:*) 123415589c42SPeter Wemm echo sx4-nec-superux${UNAME_RELEASE} 12354a1a9510SRong-En Fan exit ;; 123615589c42SPeter Wemm SX-5:SUPER-UX:*:*) 123715589c42SPeter Wemm echo sx5-nec-superux${UNAME_RELEASE} 12384a1a9510SRong-En Fan exit ;; 12394a1a9510SRong-En Fan SX-6:SUPER-UX:*:*) 12404a1a9510SRong-En Fan echo sx6-nec-superux${UNAME_RELEASE} 12414a1a9510SRong-En Fan exit ;; 12425ca44d1cSRong-En Fan SX-7:SUPER-UX:*:*) 12435ca44d1cSRong-En Fan echo sx7-nec-superux${UNAME_RELEASE} 12445ca44d1cSRong-En Fan exit ;; 12455ca44d1cSRong-En Fan SX-8:SUPER-UX:*:*) 12465ca44d1cSRong-En Fan echo sx8-nec-superux${UNAME_RELEASE} 12475ca44d1cSRong-En Fan exit ;; 12485ca44d1cSRong-En Fan SX-8R:SUPER-UX:*:*) 12495ca44d1cSRong-En Fan echo sx8r-nec-superux${UNAME_RELEASE} 12505ca44d1cSRong-En Fan exit ;; 125115589c42SPeter Wemm Power*:Rhapsody:*:*) 125215589c42SPeter Wemm echo powerpc-apple-rhapsody${UNAME_RELEASE} 12534a1a9510SRong-En Fan exit ;; 125415589c42SPeter Wemm *:Rhapsody:*:*) 125515589c42SPeter Wemm echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 12564a1a9510SRong-En Fan exit ;; 125715589c42SPeter Wemm *:Darwin:*:*) 12584a1a9510SRong-En Fan UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 125906bfebdeSXin LI eval $set_cc_for_build 1260*73f0a83dSXin LI if test "$UNAME_PROCESSOR" = unknown ; then 1261*73f0a83dSXin LI UNAME_PROCESSOR=powerpc 1262*73f0a83dSXin LI fi 126306bfebdeSXin LI if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 126406bfebdeSXin LI if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ 126506bfebdeSXin LI (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 126606bfebdeSXin LI grep IS_64BIT_ARCH >/dev/null 126706bfebdeSXin LI then 1268*73f0a83dSXin LI case $UNAME_PROCESSOR in 1269*73f0a83dSXin LI i386) UNAME_PROCESSOR=x86_64 ;; 1270*73f0a83dSXin LI powerpc) UNAME_PROCESSOR=powerpc64 ;; 12714a1a9510SRong-En Fan esac 1272*73f0a83dSXin LI fi 1273*73f0a83dSXin LI fi 12744a1a9510SRong-En Fan echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 12754a1a9510SRong-En Fan exit ;; 127615589c42SPeter Wemm *:procnto*:*:* | *:QNX:[0123456789]*:*) 127739f2269fSPeter Wemm UNAME_PROCESSOR=`uname -p` 127839f2269fSPeter Wemm if test "$UNAME_PROCESSOR" = "x86"; then 127939f2269fSPeter Wemm UNAME_PROCESSOR=i386 128015589c42SPeter Wemm UNAME_MACHINE=pc 128115589c42SPeter Wemm fi 128239f2269fSPeter Wemm echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 12834a1a9510SRong-En Fan exit ;; 128415589c42SPeter Wemm *:QNX:*:4*) 128515589c42SPeter Wemm echo i386-pc-qnx 12864a1a9510SRong-En Fan exit ;; 128706bfebdeSXin LI NEO-?:NONSTOP_KERNEL:*:*) 128806bfebdeSXin LI echo neo-tandem-nsk${UNAME_RELEASE} 128906bfebdeSXin LI exit ;; 1290*73f0a83dSXin LI NSE-*:NONSTOP_KERNEL:*:*) 12914a1a9510SRong-En Fan echo nse-tandem-nsk${UNAME_RELEASE} 12924a1a9510SRong-En Fan exit ;; 12934a1a9510SRong-En Fan NSR-?:NONSTOP_KERNEL:*:*) 129415589c42SPeter Wemm echo nsr-tandem-nsk${UNAME_RELEASE} 12954a1a9510SRong-En Fan exit ;; 12967a69bbfbSPeter Wemm *:NonStop-UX:*:*) 12977a69bbfbSPeter Wemm echo mips-compaq-nonstopux 12984a1a9510SRong-En Fan exit ;; 129915589c42SPeter Wemm BS2000:POSIX*:*:*) 130015589c42SPeter Wemm echo bs2000-siemens-sysv 13014a1a9510SRong-En Fan exit ;; 130215589c42SPeter Wemm DS/*:UNIX_System_V:*:*) 130315589c42SPeter Wemm echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 13044a1a9510SRong-En Fan exit ;; 13057a69bbfbSPeter Wemm *:Plan9:*:*) 13067a69bbfbSPeter Wemm # "uname -m" is not consistent, so use $cputype instead. 386 13077a69bbfbSPeter Wemm # is converted to i386 for consistency with other x86 13087a69bbfbSPeter Wemm # operating systems. 13097a69bbfbSPeter Wemm if test "$cputype" = "386"; then 13107a69bbfbSPeter Wemm UNAME_MACHINE=i386 13117a69bbfbSPeter Wemm else 13127a69bbfbSPeter Wemm UNAME_MACHINE="$cputype" 13137a69bbfbSPeter Wemm fi 13147a69bbfbSPeter Wemm echo ${UNAME_MACHINE}-unknown-plan9 13154a1a9510SRong-En Fan exit ;; 13167a69bbfbSPeter Wemm *:TOPS-10:*:*) 13177a69bbfbSPeter Wemm echo pdp10-unknown-tops10 13184a1a9510SRong-En Fan exit ;; 13197a69bbfbSPeter Wemm *:TENEX:*:*) 13207a69bbfbSPeter Wemm echo pdp10-unknown-tenex 13214a1a9510SRong-En Fan exit ;; 13227a69bbfbSPeter Wemm KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 13237a69bbfbSPeter Wemm echo pdp10-dec-tops20 13244a1a9510SRong-En Fan exit ;; 13257a69bbfbSPeter Wemm XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 13267a69bbfbSPeter Wemm echo pdp10-xkl-tops20 13274a1a9510SRong-En Fan exit ;; 13287a69bbfbSPeter Wemm *:TOPS-20:*:*) 13297a69bbfbSPeter Wemm echo pdp10-unknown-tops20 13304a1a9510SRong-En Fan exit ;; 13317a69bbfbSPeter Wemm *:ITS:*:*) 13327a69bbfbSPeter Wemm echo pdp10-unknown-its 13334a1a9510SRong-En Fan exit ;; 13344a1a9510SRong-En Fan SEI:*:*:SEIUX) 13354a1a9510SRong-En Fan echo mips-sei-seiux${UNAME_RELEASE} 13364a1a9510SRong-En Fan exit ;; 13374a1a9510SRong-En Fan *:DragonFly:*:*) 13384a1a9510SRong-En Fan echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 13394a1a9510SRong-En Fan exit ;; 13404a1a9510SRong-En Fan *:*VMS:*:*) 13414a1a9510SRong-En Fan UNAME_MACHINE=`(uname -p) 2>/dev/null` 13424a1a9510SRong-En Fan case "${UNAME_MACHINE}" in 13434a1a9510SRong-En Fan A*) echo alpha-dec-vms ; exit ;; 13444a1a9510SRong-En Fan I*) echo ia64-dec-vms ; exit ;; 13454a1a9510SRong-En Fan V*) echo vax-dec-vms ; exit ;; 13464a1a9510SRong-En Fan esac ;; 13474a1a9510SRong-En Fan *:XENIX:*:SysV) 13484a1a9510SRong-En Fan echo i386-pc-xenix 13494a1a9510SRong-En Fan exit ;; 13504a1a9510SRong-En Fan i*86:skyos:*:*) 13514a1a9510SRong-En Fan echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' 13524a1a9510SRong-En Fan exit ;; 13534a1a9510SRong-En Fan i*86:rdos:*:*) 13544a1a9510SRong-En Fan echo ${UNAME_MACHINE}-pc-rdos 13554a1a9510SRong-En Fan exit ;; 135606bfebdeSXin LI i*86:AROS:*:*) 135706bfebdeSXin LI echo ${UNAME_MACHINE}-pc-aros 135806bfebdeSXin LI exit ;; 1359*73f0a83dSXin LI x86_64:VMkernel:*:*) 1360*73f0a83dSXin LI echo ${UNAME_MACHINE}-unknown-esx 1361*73f0a83dSXin LI exit ;; 13620e3d5408SPeter Wemmesac 13630e3d5408SPeter Wemm 136439f2269fSPeter Wemmeval $set_cc_for_build 136515589c42SPeter Wemmcat >$dummy.c <<EOF 13660e3d5408SPeter Wemm#ifdef _SEQUENT_ 13670e3d5408SPeter Wemm# include <sys/types.h> 13680e3d5408SPeter Wemm# include <sys/utsname.h> 13690e3d5408SPeter Wemm#endif 13700e3d5408SPeter Wemmmain () 13710e3d5408SPeter Wemm{ 13720e3d5408SPeter Wemm#if defined (sony) 13730e3d5408SPeter Wemm#if defined (MIPSEB) 13740e3d5408SPeter Wemm /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, 13750e3d5408SPeter Wemm I don't know.... */ 13760e3d5408SPeter Wemm printf ("mips-sony-bsd\n"); exit (0); 13770e3d5408SPeter Wemm#else 13780e3d5408SPeter Wemm#include <sys/param.h> 13790e3d5408SPeter Wemm printf ("m68k-sony-newsos%s\n", 13800e3d5408SPeter Wemm#ifdef NEWSOS4 13810e3d5408SPeter Wemm "4" 13820e3d5408SPeter Wemm#else 13830e3d5408SPeter Wemm "" 13840e3d5408SPeter Wemm#endif 13850e3d5408SPeter Wemm ); exit (0); 13860e3d5408SPeter Wemm#endif 13870e3d5408SPeter Wemm#endif 13880e3d5408SPeter Wemm 13890e3d5408SPeter Wemm#if defined (__arm) && defined (__acorn) && defined (__unix) 13904a1a9510SRong-En Fan printf ("arm-acorn-riscix\n"); exit (0); 13910e3d5408SPeter Wemm#endif 13920e3d5408SPeter Wemm 13930e3d5408SPeter Wemm#if defined (hp300) && !defined (hpux) 13940e3d5408SPeter Wemm printf ("m68k-hp-bsd\n"); exit (0); 13950e3d5408SPeter Wemm#endif 13960e3d5408SPeter Wemm 13970e3d5408SPeter Wemm#if defined (NeXT) 13980e3d5408SPeter Wemm#if !defined (__ARCHITECTURE__) 13990e3d5408SPeter Wemm#define __ARCHITECTURE__ "m68k" 14000e3d5408SPeter Wemm#endif 14010e3d5408SPeter Wemm int version; 14020e3d5408SPeter Wemm version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; 140315589c42SPeter Wemm if (version < 4) 14040e3d5408SPeter Wemm printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); 140515589c42SPeter Wemm else 140615589c42SPeter Wemm printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); 14070e3d5408SPeter Wemm exit (0); 14080e3d5408SPeter Wemm#endif 14090e3d5408SPeter Wemm 14100e3d5408SPeter Wemm#if defined (MULTIMAX) || defined (n16) 14110e3d5408SPeter Wemm#if defined (UMAXV) 14120e3d5408SPeter Wemm printf ("ns32k-encore-sysv\n"); exit (0); 14130e3d5408SPeter Wemm#else 14140e3d5408SPeter Wemm#if defined (CMU) 14150e3d5408SPeter Wemm printf ("ns32k-encore-mach\n"); exit (0); 14160e3d5408SPeter Wemm#else 14170e3d5408SPeter Wemm printf ("ns32k-encore-bsd\n"); exit (0); 14180e3d5408SPeter Wemm#endif 14190e3d5408SPeter Wemm#endif 14200e3d5408SPeter Wemm#endif 14210e3d5408SPeter Wemm 14220e3d5408SPeter Wemm#if defined (__386BSD__) 14230e3d5408SPeter Wemm printf ("i386-pc-bsd\n"); exit (0); 14240e3d5408SPeter Wemm#endif 14250e3d5408SPeter Wemm 14260e3d5408SPeter Wemm#if defined (sequent) 14270e3d5408SPeter Wemm#if defined (i386) 14280e3d5408SPeter Wemm printf ("i386-sequent-dynix\n"); exit (0); 14290e3d5408SPeter Wemm#endif 14300e3d5408SPeter Wemm#if defined (ns32000) 14310e3d5408SPeter Wemm printf ("ns32k-sequent-dynix\n"); exit (0); 14320e3d5408SPeter Wemm#endif 14330e3d5408SPeter Wemm#endif 14340e3d5408SPeter Wemm 14350e3d5408SPeter Wemm#if defined (_SEQUENT_) 14360e3d5408SPeter Wemm struct utsname un; 14370e3d5408SPeter Wemm 14380e3d5408SPeter Wemm uname(&un); 14390e3d5408SPeter Wemm 14400e3d5408SPeter Wemm if (strncmp(un.version, "V2", 2) == 0) { 14410e3d5408SPeter Wemm printf ("i386-sequent-ptx2\n"); exit (0); 14420e3d5408SPeter Wemm } 14430e3d5408SPeter Wemm if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ 14440e3d5408SPeter Wemm printf ("i386-sequent-ptx1\n"); exit (0); 14450e3d5408SPeter Wemm } 14460e3d5408SPeter Wemm printf ("i386-sequent-ptx\n"); exit (0); 14470e3d5408SPeter Wemm 14480e3d5408SPeter Wemm#endif 14490e3d5408SPeter Wemm 14500e3d5408SPeter Wemm#if defined (vax) 14510e3d5408SPeter Wemm# if !defined (ultrix) 14527a69bbfbSPeter Wemm# include <sys/param.h> 14537a69bbfbSPeter Wemm# if defined (BSD) 14547a69bbfbSPeter Wemm# if BSD == 43 14557a69bbfbSPeter Wemm printf ("vax-dec-bsd4.3\n"); exit (0); 14567a69bbfbSPeter Wemm# else 14577a69bbfbSPeter Wemm# if BSD == 199006 14587a69bbfbSPeter Wemm printf ("vax-dec-bsd4.3reno\n"); exit (0); 14597a69bbfbSPeter Wemm# else 14600e3d5408SPeter Wemm printf ("vax-dec-bsd\n"); exit (0); 14617a69bbfbSPeter Wemm# endif 14627a69bbfbSPeter Wemm# endif 14637a69bbfbSPeter Wemm# else 14647a69bbfbSPeter Wemm printf ("vax-dec-bsd\n"); exit (0); 14657a69bbfbSPeter Wemm# endif 14660e3d5408SPeter Wemm# else 14670e3d5408SPeter Wemm printf ("vax-dec-ultrix\n"); exit (0); 14680e3d5408SPeter Wemm# endif 14690e3d5408SPeter Wemm#endif 14700e3d5408SPeter Wemm 14710e3d5408SPeter Wemm#if defined (alliant) && defined (i860) 14720e3d5408SPeter Wemm printf ("i860-alliant-bsd\n"); exit (0); 14730e3d5408SPeter Wemm#endif 14740e3d5408SPeter Wemm 14750e3d5408SPeter Wemm exit (1); 14760e3d5408SPeter Wemm} 14770e3d5408SPeter WemmEOF 14780e3d5408SPeter Wemm 14794a1a9510SRong-En Fan$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && 14804a1a9510SRong-En Fan { echo "$SYSTEM_NAME"; exit; } 14810e3d5408SPeter Wemm 14820e3d5408SPeter Wemm# Apollos put the system type in the environment. 14830e3d5408SPeter Wemm 14844a1a9510SRong-En Fantest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } 14850e3d5408SPeter Wemm 14860e3d5408SPeter Wemm# Convex versions that predate uname can use getsysinfo(1) 14870e3d5408SPeter Wemm 14880e3d5408SPeter Wemmif [ -x /usr/convex/getsysinfo ] 14890e3d5408SPeter Wemmthen 14900e3d5408SPeter Wemm case `getsysinfo -f cpu_type` in 14910e3d5408SPeter Wemm c1*) 14920e3d5408SPeter Wemm echo c1-convex-bsd 14934a1a9510SRong-En Fan exit ;; 14940e3d5408SPeter Wemm c2*) 14950e3d5408SPeter Wemm if getsysinfo -f scalar_acc 14960e3d5408SPeter Wemm then echo c32-convex-bsd 14970e3d5408SPeter Wemm else echo c2-convex-bsd 14980e3d5408SPeter Wemm fi 14994a1a9510SRong-En Fan exit ;; 15000e3d5408SPeter Wemm c34*) 15010e3d5408SPeter Wemm echo c34-convex-bsd 15024a1a9510SRong-En Fan exit ;; 15030e3d5408SPeter Wemm c38*) 15040e3d5408SPeter Wemm echo c38-convex-bsd 15054a1a9510SRong-En Fan exit ;; 15060e3d5408SPeter Wemm c4*) 15070e3d5408SPeter Wemm echo c4-convex-bsd 15084a1a9510SRong-En Fan exit ;; 15090e3d5408SPeter Wemm esac 15100e3d5408SPeter Wemmfi 15110e3d5408SPeter Wemm 151215589c42SPeter Wemmcat >&2 <<EOF 151315589c42SPeter Wemm$0: unable to guess system type 151415589c42SPeter Wemm 15157a69bbfbSPeter WemmThis script, last modified $timestamp, has failed to recognize 15167a69bbfbSPeter Wemmthe operating system you are using. It is advised that you 15177a69bbfbSPeter Wemmdownload the most up to date version of the config scripts from 151815589c42SPeter Wemm 15195d08fb1fSRong-En Fan http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 15204a1a9510SRong-En Fanand 15215d08fb1fSRong-En Fan http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 152215589c42SPeter Wemm 152315589c42SPeter WemmIf the version you run ($0) is already up to date, please 152415589c42SPeter Wemmsend the following data and any information you think might be 152515589c42SPeter Wemmpertinent to <config-patches@gnu.org> in order to provide the needed 152615589c42SPeter Wemminformation to handle your system. 152715589c42SPeter Wemm 15287a69bbfbSPeter Wemmconfig.guess timestamp = $timestamp 152915589c42SPeter Wemm 153015589c42SPeter Wemmuname -m = `(uname -m) 2>/dev/null || echo unknown` 153115589c42SPeter Wemmuname -r = `(uname -r) 2>/dev/null || echo unknown` 153215589c42SPeter Wemmuname -s = `(uname -s) 2>/dev/null || echo unknown` 153315589c42SPeter Wemmuname -v = `(uname -v) 2>/dev/null || echo unknown` 153415589c42SPeter Wemm 153515589c42SPeter Wemm/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 153615589c42SPeter Wemm/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 153715589c42SPeter Wemm 153815589c42SPeter Wemmhostinfo = `(hostinfo) 2>/dev/null` 153915589c42SPeter Wemm/bin/universe = `(/bin/universe) 2>/dev/null` 154015589c42SPeter Wemm/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 154115589c42SPeter Wemm/bin/arch = `(/bin/arch) 2>/dev/null` 154215589c42SPeter Wemm/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 154315589c42SPeter Wemm/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 154415589c42SPeter Wemm 154515589c42SPeter WemmUNAME_MACHINE = ${UNAME_MACHINE} 154615589c42SPeter WemmUNAME_RELEASE = ${UNAME_RELEASE} 154715589c42SPeter WemmUNAME_SYSTEM = ${UNAME_SYSTEM} 154815589c42SPeter WemmUNAME_VERSION = ${UNAME_VERSION} 154915589c42SPeter WemmEOF 15500e3d5408SPeter Wemm 15510e3d5408SPeter Wemmexit 1 155215589c42SPeter Wemm 155315589c42SPeter Wemm# Local variables: 155415589c42SPeter Wemm# eval: (add-hook 'write-file-hooks 'time-stamp) 15557a69bbfbSPeter Wemm# time-stamp-start: "timestamp='" 155615589c42SPeter Wemm# time-stamp-format: "%:y-%02m-%02d" 155715589c42SPeter Wemm# time-stamp-end: "'" 155815589c42SPeter Wemm# End: 1559