1*8e33eff8Schristos#! /bin/sh 2*8e33eff8Schristos# Attempt to guess a canonical system name. 3*8e33eff8Schristos# Copyright 1992-2016 Free Software Foundation, Inc. 4*8e33eff8Schristos 5*8e33eff8Schristostimestamp='2016-10-02' 6*8e33eff8Schristos 7*8e33eff8Schristos# This file is free software; you can redistribute it and/or modify it 8*8e33eff8Schristos# under the terms of the GNU General Public License as published by 9*8e33eff8Schristos# the Free Software Foundation; either version 3 of the License, or 10*8e33eff8Schristos# (at your option) any later version. 11*8e33eff8Schristos# 12*8e33eff8Schristos# This program is distributed in the hope that it will be useful, but 13*8e33eff8Schristos# WITHOUT ANY WARRANTY; without even the implied warranty of 14*8e33eff8Schristos# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15*8e33eff8Schristos# General Public License for more details. 16*8e33eff8Schristos# 17*8e33eff8Schristos# You should have received a copy of the GNU General Public License 18*8e33eff8Schristos# along with this program; if not, see <http://www.gnu.org/licenses/>. 19*8e33eff8Schristos# 20*8e33eff8Schristos# As a special exception to the GNU General Public License, if you 21*8e33eff8Schristos# distribute this file as part of a program that contains a 22*8e33eff8Schristos# configuration script generated by Autoconf, you may include it under 23*8e33eff8Schristos# the same distribution terms that you use for the rest of that 24*8e33eff8Schristos# program. This Exception is an additional permission under section 7 25*8e33eff8Schristos# of the GNU General Public License, version 3 ("GPLv3"). 26*8e33eff8Schristos# 27*8e33eff8Schristos# Originally written by Per Bothner; maintained since 2000 by Ben Elliston. 28*8e33eff8Schristos# 29*8e33eff8Schristos# You can get the latest version of this script from: 30*8e33eff8Schristos# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess 31*8e33eff8Schristos# 32*8e33eff8Schristos# Please send patches to <config-patches@gnu.org>. 33*8e33eff8Schristos 34*8e33eff8Schristos 35*8e33eff8Schristosme=`echo "$0" | sed -e 's,.*/,,'` 36*8e33eff8Schristos 37*8e33eff8Schristosusage="\ 38*8e33eff8SchristosUsage: $0 [OPTION] 39*8e33eff8Schristos 40*8e33eff8SchristosOutput the configuration name of the system \`$me' is run on. 41*8e33eff8Schristos 42*8e33eff8SchristosOperation modes: 43*8e33eff8Schristos -h, --help print this help, then exit 44*8e33eff8Schristos -t, --time-stamp print date of last modification, then exit 45*8e33eff8Schristos -v, --version print version number, then exit 46*8e33eff8Schristos 47*8e33eff8SchristosReport bugs and patches to <config-patches@gnu.org>." 48*8e33eff8Schristos 49*8e33eff8Schristosversion="\ 50*8e33eff8SchristosGNU config.guess ($timestamp) 51*8e33eff8Schristos 52*8e33eff8SchristosOriginally written by Per Bothner. 53*8e33eff8SchristosCopyright 1992-2016 Free Software Foundation, Inc. 54*8e33eff8Schristos 55*8e33eff8SchristosThis is free software; see the source for copying conditions. There is NO 56*8e33eff8Schristoswarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 57*8e33eff8Schristos 58*8e33eff8Schristoshelp=" 59*8e33eff8SchristosTry \`$me --help' for more information." 60*8e33eff8Schristos 61*8e33eff8Schristos# Parse command line 62*8e33eff8Schristoswhile test $# -gt 0 ; do 63*8e33eff8Schristos case $1 in 64*8e33eff8Schristos --time-stamp | --time* | -t ) 65*8e33eff8Schristos echo "$timestamp" ; exit ;; 66*8e33eff8Schristos --version | -v ) 67*8e33eff8Schristos echo "$version" ; exit ;; 68*8e33eff8Schristos --help | --h* | -h ) 69*8e33eff8Schristos echo "$usage"; exit ;; 70*8e33eff8Schristos -- ) # Stop option processing 71*8e33eff8Schristos shift; break ;; 72*8e33eff8Schristos - ) # Use stdin as input. 73*8e33eff8Schristos break ;; 74*8e33eff8Schristos -* ) 75*8e33eff8Schristos echo "$me: invalid option $1$help" >&2 76*8e33eff8Schristos exit 1 ;; 77*8e33eff8Schristos * ) 78*8e33eff8Schristos break ;; 79*8e33eff8Schristos esac 80*8e33eff8Schristosdone 81*8e33eff8Schristos 82*8e33eff8Schristosif test $# != 0; then 83*8e33eff8Schristos echo "$me: too many arguments$help" >&2 84*8e33eff8Schristos exit 1 85*8e33eff8Schristosfi 86*8e33eff8Schristos 87*8e33eff8Schristostrap 'exit 1' 1 2 15 88*8e33eff8Schristos 89*8e33eff8Schristos# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 90*8e33eff8Schristos# compiler to aid in system detection is discouraged as it requires 91*8e33eff8Schristos# temporary files to be created and, as you can see below, it is a 92*8e33eff8Schristos# headache to deal with in a portable fashion. 93*8e33eff8Schristos 94*8e33eff8Schristos# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 95*8e33eff8Schristos# use `HOST_CC' if defined, but it is deprecated. 96*8e33eff8Schristos 97*8e33eff8Schristos# Portable tmp directory creation inspired by the Autoconf team. 98*8e33eff8Schristos 99*8e33eff8Schristosset_cc_for_build=' 100*8e33eff8Schristostrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; 101*8e33eff8Schristostrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 102*8e33eff8Schristos: ${TMPDIR=/tmp} ; 103*8e33eff8Schristos { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 104*8e33eff8Schristos { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 105*8e33eff8Schristos { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || 106*8e33eff8Schristos { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; 107*8e33eff8Schristosdummy=$tmp/dummy ; 108*8e33eff8Schristostmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; 109*8e33eff8Schristoscase $CC_FOR_BUILD,$HOST_CC,$CC in 110*8e33eff8Schristos ,,) echo "int x;" > $dummy.c ; 111*8e33eff8Schristos for c in cc gcc c89 c99 ; do 112*8e33eff8Schristos if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then 113*8e33eff8Schristos CC_FOR_BUILD="$c"; break ; 114*8e33eff8Schristos fi ; 115*8e33eff8Schristos done ; 116*8e33eff8Schristos if test x"$CC_FOR_BUILD" = x ; then 117*8e33eff8Schristos CC_FOR_BUILD=no_compiler_found ; 118*8e33eff8Schristos fi 119*8e33eff8Schristos ;; 120*8e33eff8Schristos ,,*) CC_FOR_BUILD=$CC ;; 121*8e33eff8Schristos ,*,*) CC_FOR_BUILD=$HOST_CC ;; 122*8e33eff8Schristosesac ; set_cc_for_build= ;' 123*8e33eff8Schristos 124*8e33eff8Schristos# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 125*8e33eff8Schristos# (ghazi@noc.rutgers.edu 1994-08-24) 126*8e33eff8Schristosif (test -f /.attbin/uname) >/dev/null 2>&1 ; then 127*8e33eff8Schristos PATH=$PATH:/.attbin ; export PATH 128*8e33eff8Schristosfi 129*8e33eff8Schristos 130*8e33eff8SchristosUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 131*8e33eff8SchristosUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 132*8e33eff8SchristosUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 133*8e33eff8SchristosUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 134*8e33eff8Schristos 135*8e33eff8Schristoscase "${UNAME_SYSTEM}" in 136*8e33eff8SchristosLinux|GNU|GNU/*) 137*8e33eff8Schristos # If the system lacks a compiler, then just pick glibc. 138*8e33eff8Schristos # We could probably try harder. 139*8e33eff8Schristos LIBC=gnu 140*8e33eff8Schristos 141*8e33eff8Schristos eval $set_cc_for_build 142*8e33eff8Schristos cat <<-EOF > $dummy.c 143*8e33eff8Schristos #include <features.h> 144*8e33eff8Schristos #if defined(__UCLIBC__) 145*8e33eff8Schristos LIBC=uclibc 146*8e33eff8Schristos #elif defined(__dietlibc__) 147*8e33eff8Schristos LIBC=dietlibc 148*8e33eff8Schristos #else 149*8e33eff8Schristos LIBC=gnu 150*8e33eff8Schristos #endif 151*8e33eff8Schristos EOF 152*8e33eff8Schristos eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'` 153*8e33eff8Schristos ;; 154*8e33eff8Schristosesac 155*8e33eff8Schristos 156*8e33eff8Schristos# Note: order is significant - the case branches are not exclusive. 157*8e33eff8Schristos 158*8e33eff8Schristoscase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 159*8e33eff8Schristos *:NetBSD:*:*) 160*8e33eff8Schristos # NetBSD (nbsd) targets should (where applicable) match one or 161*8e33eff8Schristos # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, 162*8e33eff8Schristos # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 163*8e33eff8Schristos # switched to ELF, *-*-netbsd* would select the old 164*8e33eff8Schristos # object file format. This provides both forward 165*8e33eff8Schristos # compatibility and a consistent mechanism for selecting the 166*8e33eff8Schristos # object file format. 167*8e33eff8Schristos # 168*8e33eff8Schristos # Note: NetBSD doesn't particularly care about the vendor 169*8e33eff8Schristos # portion of the name. We always set it to "unknown". 170*8e33eff8Schristos sysctl="sysctl -n hw.machine_arch" 171*8e33eff8Schristos UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \ 172*8e33eff8Schristos /sbin/$sysctl 2>/dev/null || \ 173*8e33eff8Schristos /usr/sbin/$sysctl 2>/dev/null || \ 174*8e33eff8Schristos echo unknown)` 175*8e33eff8Schristos case "${UNAME_MACHINE_ARCH}" in 176*8e33eff8Schristos aarch64eb) machine=aarch64_be-unknown ;; 177*8e33eff8Schristos armeb) machine=armeb-unknown ;; 178*8e33eff8Schristos arm*) machine=arm-unknown ;; 179*8e33eff8Schristos sh3el) machine=shl-unknown ;; 180*8e33eff8Schristos sh3eb) machine=sh-unknown ;; 181*8e33eff8Schristos sh5el) machine=sh5le-unknown ;; 182*8e33eff8Schristos earmv*) 183*8e33eff8Schristos arch=`echo ${UNAME_MACHINE_ARCH} | sed -e 's,^e\(armv[0-9]\).*$,\1,'` 184*8e33eff8Schristos endian=`echo ${UNAME_MACHINE_ARCH} | sed -ne 's,^.*\(eb\)$,\1,p'` 185*8e33eff8Schristos machine=${arch}${endian}-unknown 186*8e33eff8Schristos ;; 187*8e33eff8Schristos *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 188*8e33eff8Schristos esac 189*8e33eff8Schristos # The Operating System including object format, if it has switched 190*8e33eff8Schristos # to ELF recently (or will in the future) and ABI. 191*8e33eff8Schristos case "${UNAME_MACHINE_ARCH}" in 192*8e33eff8Schristos earm*) 193*8e33eff8Schristos os=netbsdelf 194*8e33eff8Schristos ;; 195*8e33eff8Schristos arm*|i386|m68k|ns32k|sh3*|sparc|vax) 196*8e33eff8Schristos eval $set_cc_for_build 197*8e33eff8Schristos if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 198*8e33eff8Schristos | grep -q __ELF__ 199*8e33eff8Schristos then 200*8e33eff8Schristos # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 201*8e33eff8Schristos # Return netbsd for either. FIX? 202*8e33eff8Schristos os=netbsd 203*8e33eff8Schristos else 204*8e33eff8Schristos os=netbsdelf 205*8e33eff8Schristos fi 206*8e33eff8Schristos ;; 207*8e33eff8Schristos *) 208*8e33eff8Schristos os=netbsd 209*8e33eff8Schristos ;; 210*8e33eff8Schristos esac 211*8e33eff8Schristos # Determine ABI tags. 212*8e33eff8Schristos case "${UNAME_MACHINE_ARCH}" in 213*8e33eff8Schristos earm*) 214*8e33eff8Schristos expr='s/^earmv[0-9]/-eabi/;s/eb$//' 215*8e33eff8Schristos abi=`echo ${UNAME_MACHINE_ARCH} | sed -e "$expr"` 216*8e33eff8Schristos ;; 217*8e33eff8Schristos esac 218*8e33eff8Schristos # The OS release 219*8e33eff8Schristos # Debian GNU/NetBSD machines have a different userland, and 220*8e33eff8Schristos # thus, need a distinct triplet. However, they do not need 221*8e33eff8Schristos # kernel version information, so it can be replaced with a 222*8e33eff8Schristos # suitable tag, in the style of linux-gnu. 223*8e33eff8Schristos case "${UNAME_VERSION}" in 224*8e33eff8Schristos Debian*) 225*8e33eff8Schristos release='-gnu' 226*8e33eff8Schristos ;; 227*8e33eff8Schristos *) 228*8e33eff8Schristos release=`echo ${UNAME_RELEASE} | sed -e 's/[-_].*//' | cut -d. -f1,2` 229*8e33eff8Schristos ;; 230*8e33eff8Schristos esac 231*8e33eff8Schristos # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 232*8e33eff8Schristos # contains redundant information, the shorter form: 233*8e33eff8Schristos # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 234*8e33eff8Schristos echo "${machine}-${os}${release}${abi}" 235*8e33eff8Schristos exit ;; 236*8e33eff8Schristos *:Bitrig:*:*) 237*8e33eff8Schristos UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` 238*8e33eff8Schristos echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE} 239*8e33eff8Schristos exit ;; 240*8e33eff8Schristos *:OpenBSD:*:*) 241*8e33eff8Schristos UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 242*8e33eff8Schristos echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 243*8e33eff8Schristos exit ;; 244*8e33eff8Schristos *:LibertyBSD:*:*) 245*8e33eff8Schristos UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'` 246*8e33eff8Schristos echo ${UNAME_MACHINE_ARCH}-unknown-libertybsd${UNAME_RELEASE} 247*8e33eff8Schristos exit ;; 248*8e33eff8Schristos *:ekkoBSD:*:*) 249*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 250*8e33eff8Schristos exit ;; 251*8e33eff8Schristos *:SolidBSD:*:*) 252*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} 253*8e33eff8Schristos exit ;; 254*8e33eff8Schristos macppc:MirBSD:*:*) 255*8e33eff8Schristos echo powerpc-unknown-mirbsd${UNAME_RELEASE} 256*8e33eff8Schristos exit ;; 257*8e33eff8Schristos *:MirBSD:*:*) 258*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 259*8e33eff8Schristos exit ;; 260*8e33eff8Schristos *:Sortix:*:*) 261*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-sortix 262*8e33eff8Schristos exit ;; 263*8e33eff8Schristos alpha:OSF1:*:*) 264*8e33eff8Schristos case $UNAME_RELEASE in 265*8e33eff8Schristos *4.0) 266*8e33eff8Schristos UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 267*8e33eff8Schristos ;; 268*8e33eff8Schristos *5.*) 269*8e33eff8Schristos UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 270*8e33eff8Schristos ;; 271*8e33eff8Schristos esac 272*8e33eff8Schristos # According to Compaq, /usr/sbin/psrinfo has been available on 273*8e33eff8Schristos # OSF/1 and Tru64 systems produced since 1995. I hope that 274*8e33eff8Schristos # covers most systems running today. This code pipes the CPU 275*8e33eff8Schristos # types through head -n 1, so we only detect the type of CPU 0. 276*8e33eff8Schristos ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 277*8e33eff8Schristos case "$ALPHA_CPU_TYPE" in 278*8e33eff8Schristos "EV4 (21064)") 279*8e33eff8Schristos UNAME_MACHINE=alpha ;; 280*8e33eff8Schristos "EV4.5 (21064)") 281*8e33eff8Schristos UNAME_MACHINE=alpha ;; 282*8e33eff8Schristos "LCA4 (21066/21068)") 283*8e33eff8Schristos UNAME_MACHINE=alpha ;; 284*8e33eff8Schristos "EV5 (21164)") 285*8e33eff8Schristos UNAME_MACHINE=alphaev5 ;; 286*8e33eff8Schristos "EV5.6 (21164A)") 287*8e33eff8Schristos UNAME_MACHINE=alphaev56 ;; 288*8e33eff8Schristos "EV5.6 (21164PC)") 289*8e33eff8Schristos UNAME_MACHINE=alphapca56 ;; 290*8e33eff8Schristos "EV5.7 (21164PC)") 291*8e33eff8Schristos UNAME_MACHINE=alphapca57 ;; 292*8e33eff8Schristos "EV6 (21264)") 293*8e33eff8Schristos UNAME_MACHINE=alphaev6 ;; 294*8e33eff8Schristos "EV6.7 (21264A)") 295*8e33eff8Schristos UNAME_MACHINE=alphaev67 ;; 296*8e33eff8Schristos "EV6.8CB (21264C)") 297*8e33eff8Schristos UNAME_MACHINE=alphaev68 ;; 298*8e33eff8Schristos "EV6.8AL (21264B)") 299*8e33eff8Schristos UNAME_MACHINE=alphaev68 ;; 300*8e33eff8Schristos "EV6.8CX (21264D)") 301*8e33eff8Schristos UNAME_MACHINE=alphaev68 ;; 302*8e33eff8Schristos "EV6.9A (21264/EV69A)") 303*8e33eff8Schristos UNAME_MACHINE=alphaev69 ;; 304*8e33eff8Schristos "EV7 (21364)") 305*8e33eff8Schristos UNAME_MACHINE=alphaev7 ;; 306*8e33eff8Schristos "EV7.9 (21364A)") 307*8e33eff8Schristos UNAME_MACHINE=alphaev79 ;; 308*8e33eff8Schristos esac 309*8e33eff8Schristos # A Pn.n version is a patched version. 310*8e33eff8Schristos # A Vn.n version is a released version. 311*8e33eff8Schristos # A Tn.n version is a released field test version. 312*8e33eff8Schristos # A Xn.n version is an unreleased experimental baselevel. 313*8e33eff8Schristos # 1.2 uses "1.2" for uname -r. 314*8e33eff8Schristos echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` 315*8e33eff8Schristos # Reset EXIT trap before exiting to avoid spurious non-zero exit code. 316*8e33eff8Schristos exitcode=$? 317*8e33eff8Schristos trap '' 0 318*8e33eff8Schristos exit $exitcode ;; 319*8e33eff8Schristos Alpha\ *:Windows_NT*:*) 320*8e33eff8Schristos # How do we know it's Interix rather than the generic POSIX subsystem? 321*8e33eff8Schristos # Should we change UNAME_MACHINE based on the output of uname instead 322*8e33eff8Schristos # of the specific Alpha model? 323*8e33eff8Schristos echo alpha-pc-interix 324*8e33eff8Schristos exit ;; 325*8e33eff8Schristos 21064:Windows_NT:50:3) 326*8e33eff8Schristos echo alpha-dec-winnt3.5 327*8e33eff8Schristos exit ;; 328*8e33eff8Schristos Amiga*:UNIX_System_V:4.0:*) 329*8e33eff8Schristos echo m68k-unknown-sysv4 330*8e33eff8Schristos exit ;; 331*8e33eff8Schristos *:[Aa]miga[Oo][Ss]:*:*) 332*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-amigaos 333*8e33eff8Schristos exit ;; 334*8e33eff8Schristos *:[Mm]orph[Oo][Ss]:*:*) 335*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-morphos 336*8e33eff8Schristos exit ;; 337*8e33eff8Schristos *:OS/390:*:*) 338*8e33eff8Schristos echo i370-ibm-openedition 339*8e33eff8Schristos exit ;; 340*8e33eff8Schristos *:z/VM:*:*) 341*8e33eff8Schristos echo s390-ibm-zvmoe 342*8e33eff8Schristos exit ;; 343*8e33eff8Schristos *:OS400:*:*) 344*8e33eff8Schristos echo powerpc-ibm-os400 345*8e33eff8Schristos exit ;; 346*8e33eff8Schristos arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 347*8e33eff8Schristos echo arm-acorn-riscix${UNAME_RELEASE} 348*8e33eff8Schristos exit ;; 349*8e33eff8Schristos arm*:riscos:*:*|arm*:RISCOS:*:*) 350*8e33eff8Schristos echo arm-unknown-riscos 351*8e33eff8Schristos exit ;; 352*8e33eff8Schristos SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 353*8e33eff8Schristos echo hppa1.1-hitachi-hiuxmpp 354*8e33eff8Schristos exit ;; 355*8e33eff8Schristos Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 356*8e33eff8Schristos # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 357*8e33eff8Schristos if test "`(/bin/universe) 2>/dev/null`" = att ; then 358*8e33eff8Schristos echo pyramid-pyramid-sysv3 359*8e33eff8Schristos else 360*8e33eff8Schristos echo pyramid-pyramid-bsd 361*8e33eff8Schristos fi 362*8e33eff8Schristos exit ;; 363*8e33eff8Schristos NILE*:*:*:dcosx) 364*8e33eff8Schristos echo pyramid-pyramid-svr4 365*8e33eff8Schristos exit ;; 366*8e33eff8Schristos DRS?6000:unix:4.0:6*) 367*8e33eff8Schristos echo sparc-icl-nx6 368*8e33eff8Schristos exit ;; 369*8e33eff8Schristos DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 370*8e33eff8Schristos case `/usr/bin/uname -p` in 371*8e33eff8Schristos sparc) echo sparc-icl-nx7; exit ;; 372*8e33eff8Schristos esac ;; 373*8e33eff8Schristos s390x:SunOS:*:*) 374*8e33eff8Schristos echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 375*8e33eff8Schristos exit ;; 376*8e33eff8Schristos sun4H:SunOS:5.*:*) 377*8e33eff8Schristos echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 378*8e33eff8Schristos exit ;; 379*8e33eff8Schristos sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 380*8e33eff8Schristos echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 381*8e33eff8Schristos exit ;; 382*8e33eff8Schristos i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) 383*8e33eff8Schristos echo i386-pc-auroraux${UNAME_RELEASE} 384*8e33eff8Schristos exit ;; 385*8e33eff8Schristos i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) 386*8e33eff8Schristos eval $set_cc_for_build 387*8e33eff8Schristos SUN_ARCH=i386 388*8e33eff8Schristos # If there is a compiler, see if it is configured for 64-bit objects. 389*8e33eff8Schristos # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. 390*8e33eff8Schristos # This test works for both compilers. 391*8e33eff8Schristos if [ "$CC_FOR_BUILD" != no_compiler_found ]; then 392*8e33eff8Schristos if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ 393*8e33eff8Schristos (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ 394*8e33eff8Schristos grep IS_64BIT_ARCH >/dev/null 395*8e33eff8Schristos then 396*8e33eff8Schristos SUN_ARCH=x86_64 397*8e33eff8Schristos fi 398*8e33eff8Schristos fi 399*8e33eff8Schristos echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 400*8e33eff8Schristos exit ;; 401*8e33eff8Schristos sun4*:SunOS:6*:*) 402*8e33eff8Schristos # According to config.sub, this is the proper way to canonicalize 403*8e33eff8Schristos # SunOS6. Hard to guess exactly what SunOS6 will be like, but 404*8e33eff8Schristos # it's likely to be more like Solaris than SunOS4. 405*8e33eff8Schristos echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 406*8e33eff8Schristos exit ;; 407*8e33eff8Schristos sun4*:SunOS:*:*) 408*8e33eff8Schristos case "`/usr/bin/arch -k`" in 409*8e33eff8Schristos Series*|S4*) 410*8e33eff8Schristos UNAME_RELEASE=`uname -v` 411*8e33eff8Schristos ;; 412*8e33eff8Schristos esac 413*8e33eff8Schristos # Japanese Language versions have a version number like `4.1.3-JL'. 414*8e33eff8Schristos echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 415*8e33eff8Schristos exit ;; 416*8e33eff8Schristos sun3*:SunOS:*:*) 417*8e33eff8Schristos echo m68k-sun-sunos${UNAME_RELEASE} 418*8e33eff8Schristos exit ;; 419*8e33eff8Schristos sun*:*:4.2BSD:*) 420*8e33eff8Schristos UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 421*8e33eff8Schristos test "x${UNAME_RELEASE}" = x && UNAME_RELEASE=3 422*8e33eff8Schristos case "`/bin/arch`" in 423*8e33eff8Schristos sun3) 424*8e33eff8Schristos echo m68k-sun-sunos${UNAME_RELEASE} 425*8e33eff8Schristos ;; 426*8e33eff8Schristos sun4) 427*8e33eff8Schristos echo sparc-sun-sunos${UNAME_RELEASE} 428*8e33eff8Schristos ;; 429*8e33eff8Schristos esac 430*8e33eff8Schristos exit ;; 431*8e33eff8Schristos aushp:SunOS:*:*) 432*8e33eff8Schristos echo sparc-auspex-sunos${UNAME_RELEASE} 433*8e33eff8Schristos exit ;; 434*8e33eff8Schristos # The situation for MiNT is a little confusing. The machine name 435*8e33eff8Schristos # can be virtually everything (everything which is not 436*8e33eff8Schristos # "atarist" or "atariste" at least should have a processor 437*8e33eff8Schristos # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 438*8e33eff8Schristos # to the lowercase version "mint" (or "freemint"). Finally 439*8e33eff8Schristos # the system name "TOS" denotes a system which is actually not 440*8e33eff8Schristos # MiNT. But MiNT is downward compatible to TOS, so this should 441*8e33eff8Schristos # be no problem. 442*8e33eff8Schristos atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 443*8e33eff8Schristos echo m68k-atari-mint${UNAME_RELEASE} 444*8e33eff8Schristos exit ;; 445*8e33eff8Schristos atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 446*8e33eff8Schristos echo m68k-atari-mint${UNAME_RELEASE} 447*8e33eff8Schristos exit ;; 448*8e33eff8Schristos *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 449*8e33eff8Schristos echo m68k-atari-mint${UNAME_RELEASE} 450*8e33eff8Schristos exit ;; 451*8e33eff8Schristos milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 452*8e33eff8Schristos echo m68k-milan-mint${UNAME_RELEASE} 453*8e33eff8Schristos exit ;; 454*8e33eff8Schristos hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 455*8e33eff8Schristos echo m68k-hades-mint${UNAME_RELEASE} 456*8e33eff8Schristos exit ;; 457*8e33eff8Schristos *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 458*8e33eff8Schristos echo m68k-unknown-mint${UNAME_RELEASE} 459*8e33eff8Schristos exit ;; 460*8e33eff8Schristos m68k:machten:*:*) 461*8e33eff8Schristos echo m68k-apple-machten${UNAME_RELEASE} 462*8e33eff8Schristos exit ;; 463*8e33eff8Schristos powerpc:machten:*:*) 464*8e33eff8Schristos echo powerpc-apple-machten${UNAME_RELEASE} 465*8e33eff8Schristos exit ;; 466*8e33eff8Schristos RISC*:Mach:*:*) 467*8e33eff8Schristos echo mips-dec-mach_bsd4.3 468*8e33eff8Schristos exit ;; 469*8e33eff8Schristos RISC*:ULTRIX:*:*) 470*8e33eff8Schristos echo mips-dec-ultrix${UNAME_RELEASE} 471*8e33eff8Schristos exit ;; 472*8e33eff8Schristos VAX*:ULTRIX*:*:*) 473*8e33eff8Schristos echo vax-dec-ultrix${UNAME_RELEASE} 474*8e33eff8Schristos exit ;; 475*8e33eff8Schristos 2020:CLIX:*:* | 2430:CLIX:*:*) 476*8e33eff8Schristos echo clipper-intergraph-clix${UNAME_RELEASE} 477*8e33eff8Schristos exit ;; 478*8e33eff8Schristos mips:*:*:UMIPS | mips:*:*:RISCos) 479*8e33eff8Schristos eval $set_cc_for_build 480*8e33eff8Schristos sed 's/^ //' << EOF >$dummy.c 481*8e33eff8Schristos#ifdef __cplusplus 482*8e33eff8Schristos#include <stdio.h> /* for printf() prototype */ 483*8e33eff8Schristos int main (int argc, char *argv[]) { 484*8e33eff8Schristos#else 485*8e33eff8Schristos int main (argc, argv) int argc; char *argv[]; { 486*8e33eff8Schristos#endif 487*8e33eff8Schristos #if defined (host_mips) && defined (MIPSEB) 488*8e33eff8Schristos #if defined (SYSTYPE_SYSV) 489*8e33eff8Schristos printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 490*8e33eff8Schristos #endif 491*8e33eff8Schristos #if defined (SYSTYPE_SVR4) 492*8e33eff8Schristos printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 493*8e33eff8Schristos #endif 494*8e33eff8Schristos #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 495*8e33eff8Schristos printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 496*8e33eff8Schristos #endif 497*8e33eff8Schristos #endif 498*8e33eff8Schristos exit (-1); 499*8e33eff8Schristos } 500*8e33eff8SchristosEOF 501*8e33eff8Schristos $CC_FOR_BUILD -o $dummy $dummy.c && 502*8e33eff8Schristos dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 503*8e33eff8Schristos SYSTEM_NAME=`$dummy $dummyarg` && 504*8e33eff8Schristos { echo "$SYSTEM_NAME"; exit; } 505*8e33eff8Schristos echo mips-mips-riscos${UNAME_RELEASE} 506*8e33eff8Schristos exit ;; 507*8e33eff8Schristos Motorola:PowerMAX_OS:*:*) 508*8e33eff8Schristos echo powerpc-motorola-powermax 509*8e33eff8Schristos exit ;; 510*8e33eff8Schristos Motorola:*:4.3:PL8-*) 511*8e33eff8Schristos echo powerpc-harris-powermax 512*8e33eff8Schristos exit ;; 513*8e33eff8Schristos Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 514*8e33eff8Schristos echo powerpc-harris-powermax 515*8e33eff8Schristos exit ;; 516*8e33eff8Schristos Night_Hawk:Power_UNIX:*:*) 517*8e33eff8Schristos echo powerpc-harris-powerunix 518*8e33eff8Schristos exit ;; 519*8e33eff8Schristos m88k:CX/UX:7*:*) 520*8e33eff8Schristos echo m88k-harris-cxux7 521*8e33eff8Schristos exit ;; 522*8e33eff8Schristos m88k:*:4*:R4*) 523*8e33eff8Schristos echo m88k-motorola-sysv4 524*8e33eff8Schristos exit ;; 525*8e33eff8Schristos m88k:*:3*:R3*) 526*8e33eff8Schristos echo m88k-motorola-sysv3 527*8e33eff8Schristos exit ;; 528*8e33eff8Schristos AViiON:dgux:*:*) 529*8e33eff8Schristos # DG/UX returns AViiON for all architectures 530*8e33eff8Schristos UNAME_PROCESSOR=`/usr/bin/uname -p` 531*8e33eff8Schristos if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 532*8e33eff8Schristos then 533*8e33eff8Schristos if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 534*8e33eff8Schristos [ ${TARGET_BINARY_INTERFACE}x = x ] 535*8e33eff8Schristos then 536*8e33eff8Schristos echo m88k-dg-dgux${UNAME_RELEASE} 537*8e33eff8Schristos else 538*8e33eff8Schristos echo m88k-dg-dguxbcs${UNAME_RELEASE} 539*8e33eff8Schristos fi 540*8e33eff8Schristos else 541*8e33eff8Schristos echo i586-dg-dgux${UNAME_RELEASE} 542*8e33eff8Schristos fi 543*8e33eff8Schristos exit ;; 544*8e33eff8Schristos M88*:DolphinOS:*:*) # DolphinOS (SVR3) 545*8e33eff8Schristos echo m88k-dolphin-sysv3 546*8e33eff8Schristos exit ;; 547*8e33eff8Schristos M88*:*:R3*:*) 548*8e33eff8Schristos # Delta 88k system running SVR3 549*8e33eff8Schristos echo m88k-motorola-sysv3 550*8e33eff8Schristos exit ;; 551*8e33eff8Schristos XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 552*8e33eff8Schristos echo m88k-tektronix-sysv3 553*8e33eff8Schristos exit ;; 554*8e33eff8Schristos Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 555*8e33eff8Schristos echo m68k-tektronix-bsd 556*8e33eff8Schristos exit ;; 557*8e33eff8Schristos *:IRIX*:*:*) 558*8e33eff8Schristos echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 559*8e33eff8Schristos exit ;; 560*8e33eff8Schristos ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 561*8e33eff8Schristos echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 562*8e33eff8Schristos exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 563*8e33eff8Schristos i*86:AIX:*:*) 564*8e33eff8Schristos echo i386-ibm-aix 565*8e33eff8Schristos exit ;; 566*8e33eff8Schristos ia64:AIX:*:*) 567*8e33eff8Schristos if [ -x /usr/bin/oslevel ] ; then 568*8e33eff8Schristos IBM_REV=`/usr/bin/oslevel` 569*8e33eff8Schristos else 570*8e33eff8Schristos IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 571*8e33eff8Schristos fi 572*8e33eff8Schristos echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 573*8e33eff8Schristos exit ;; 574*8e33eff8Schristos *:AIX:2:3) 575*8e33eff8Schristos if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 576*8e33eff8Schristos eval $set_cc_for_build 577*8e33eff8Schristos sed 's/^ //' << EOF >$dummy.c 578*8e33eff8Schristos #include <sys/systemcfg.h> 579*8e33eff8Schristos 580*8e33eff8Schristos main() 581*8e33eff8Schristos { 582*8e33eff8Schristos if (!__power_pc()) 583*8e33eff8Schristos exit(1); 584*8e33eff8Schristos puts("powerpc-ibm-aix3.2.5"); 585*8e33eff8Schristos exit(0); 586*8e33eff8Schristos } 587*8e33eff8SchristosEOF 588*8e33eff8Schristos if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 589*8e33eff8Schristos then 590*8e33eff8Schristos echo "$SYSTEM_NAME" 591*8e33eff8Schristos else 592*8e33eff8Schristos echo rs6000-ibm-aix3.2.5 593*8e33eff8Schristos fi 594*8e33eff8Schristos elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 595*8e33eff8Schristos echo rs6000-ibm-aix3.2.4 596*8e33eff8Schristos else 597*8e33eff8Schristos echo rs6000-ibm-aix3.2 598*8e33eff8Schristos fi 599*8e33eff8Schristos exit ;; 600*8e33eff8Schristos *:AIX:*:[4567]) 601*8e33eff8Schristos IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 602*8e33eff8Schristos if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 603*8e33eff8Schristos IBM_ARCH=rs6000 604*8e33eff8Schristos else 605*8e33eff8Schristos IBM_ARCH=powerpc 606*8e33eff8Schristos fi 607*8e33eff8Schristos if [ -x /usr/bin/lslpp ] ; then 608*8e33eff8Schristos IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | 609*8e33eff8Schristos awk -F: '{ print $3 }' | sed s/[0-9]*$/0/` 610*8e33eff8Schristos else 611*8e33eff8Schristos IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 612*8e33eff8Schristos fi 613*8e33eff8Schristos echo ${IBM_ARCH}-ibm-aix${IBM_REV} 614*8e33eff8Schristos exit ;; 615*8e33eff8Schristos *:AIX:*:*) 616*8e33eff8Schristos echo rs6000-ibm-aix 617*8e33eff8Schristos exit ;; 618*8e33eff8Schristos ibmrt:4.4BSD:*|romp-ibm:BSD:*) 619*8e33eff8Schristos echo romp-ibm-bsd4.4 620*8e33eff8Schristos exit ;; 621*8e33eff8Schristos ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 622*8e33eff8Schristos echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 623*8e33eff8Schristos exit ;; # report: romp-ibm BSD 4.3 624*8e33eff8Schristos *:BOSX:*:*) 625*8e33eff8Schristos echo rs6000-bull-bosx 626*8e33eff8Schristos exit ;; 627*8e33eff8Schristos DPX/2?00:B.O.S.:*:*) 628*8e33eff8Schristos echo m68k-bull-sysv3 629*8e33eff8Schristos exit ;; 630*8e33eff8Schristos 9000/[34]??:4.3bsd:1.*:*) 631*8e33eff8Schristos echo m68k-hp-bsd 632*8e33eff8Schristos exit ;; 633*8e33eff8Schristos hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 634*8e33eff8Schristos echo m68k-hp-bsd4.4 635*8e33eff8Schristos exit ;; 636*8e33eff8Schristos 9000/[34678]??:HP-UX:*:*) 637*8e33eff8Schristos HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 638*8e33eff8Schristos case "${UNAME_MACHINE}" in 639*8e33eff8Schristos 9000/31? ) HP_ARCH=m68000 ;; 640*8e33eff8Schristos 9000/[34]?? ) HP_ARCH=m68k ;; 641*8e33eff8Schristos 9000/[678][0-9][0-9]) 642*8e33eff8Schristos if [ -x /usr/bin/getconf ]; then 643*8e33eff8Schristos sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 644*8e33eff8Schristos sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 645*8e33eff8Schristos case "${sc_cpu_version}" in 646*8e33eff8Schristos 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0 647*8e33eff8Schristos 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1 648*8e33eff8Schristos 532) # CPU_PA_RISC2_0 649*8e33eff8Schristos case "${sc_kernel_bits}" in 650*8e33eff8Schristos 32) HP_ARCH=hppa2.0n ;; 651*8e33eff8Schristos 64) HP_ARCH=hppa2.0w ;; 652*8e33eff8Schristos '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20 653*8e33eff8Schristos esac ;; 654*8e33eff8Schristos esac 655*8e33eff8Schristos fi 656*8e33eff8Schristos if [ "${HP_ARCH}" = "" ]; then 657*8e33eff8Schristos eval $set_cc_for_build 658*8e33eff8Schristos sed 's/^ //' << EOF >$dummy.c 659*8e33eff8Schristos 660*8e33eff8Schristos #define _HPUX_SOURCE 661*8e33eff8Schristos #include <stdlib.h> 662*8e33eff8Schristos #include <unistd.h> 663*8e33eff8Schristos 664*8e33eff8Schristos int main () 665*8e33eff8Schristos { 666*8e33eff8Schristos #if defined(_SC_KERNEL_BITS) 667*8e33eff8Schristos long bits = sysconf(_SC_KERNEL_BITS); 668*8e33eff8Schristos #endif 669*8e33eff8Schristos long cpu = sysconf (_SC_CPU_VERSION); 670*8e33eff8Schristos 671*8e33eff8Schristos switch (cpu) 672*8e33eff8Schristos { 673*8e33eff8Schristos case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 674*8e33eff8Schristos case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 675*8e33eff8Schristos case CPU_PA_RISC2_0: 676*8e33eff8Schristos #if defined(_SC_KERNEL_BITS) 677*8e33eff8Schristos switch (bits) 678*8e33eff8Schristos { 679*8e33eff8Schristos case 64: puts ("hppa2.0w"); break; 680*8e33eff8Schristos case 32: puts ("hppa2.0n"); break; 681*8e33eff8Schristos default: puts ("hppa2.0"); break; 682*8e33eff8Schristos } break; 683*8e33eff8Schristos #else /* !defined(_SC_KERNEL_BITS) */ 684*8e33eff8Schristos puts ("hppa2.0"); break; 685*8e33eff8Schristos #endif 686*8e33eff8Schristos default: puts ("hppa1.0"); break; 687*8e33eff8Schristos } 688*8e33eff8Schristos exit (0); 689*8e33eff8Schristos } 690*8e33eff8SchristosEOF 691*8e33eff8Schristos (CCOPTS="" $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 692*8e33eff8Schristos test -z "$HP_ARCH" && HP_ARCH=hppa 693*8e33eff8Schristos fi ;; 694*8e33eff8Schristos esac 695*8e33eff8Schristos if [ ${HP_ARCH} = hppa2.0w ] 696*8e33eff8Schristos then 697*8e33eff8Schristos eval $set_cc_for_build 698*8e33eff8Schristos 699*8e33eff8Schristos # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 700*8e33eff8Schristos # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 701*8e33eff8Schristos # generating 64-bit code. GNU and HP use different nomenclature: 702*8e33eff8Schristos # 703*8e33eff8Schristos # $ CC_FOR_BUILD=cc ./config.guess 704*8e33eff8Schristos # => hppa2.0w-hp-hpux11.23 705*8e33eff8Schristos # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 706*8e33eff8Schristos # => hppa64-hp-hpux11.23 707*8e33eff8Schristos 708*8e33eff8Schristos if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | 709*8e33eff8Schristos grep -q __LP64__ 710*8e33eff8Schristos then 711*8e33eff8Schristos HP_ARCH=hppa2.0w 712*8e33eff8Schristos else 713*8e33eff8Schristos HP_ARCH=hppa64 714*8e33eff8Schristos fi 715*8e33eff8Schristos fi 716*8e33eff8Schristos echo ${HP_ARCH}-hp-hpux${HPUX_REV} 717*8e33eff8Schristos exit ;; 718*8e33eff8Schristos ia64:HP-UX:*:*) 719*8e33eff8Schristos HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 720*8e33eff8Schristos echo ia64-hp-hpux${HPUX_REV} 721*8e33eff8Schristos exit ;; 722*8e33eff8Schristos 3050*:HI-UX:*:*) 723*8e33eff8Schristos eval $set_cc_for_build 724*8e33eff8Schristos sed 's/^ //' << EOF >$dummy.c 725*8e33eff8Schristos #include <unistd.h> 726*8e33eff8Schristos int 727*8e33eff8Schristos main () 728*8e33eff8Schristos { 729*8e33eff8Schristos long cpu = sysconf (_SC_CPU_VERSION); 730*8e33eff8Schristos /* The order matters, because CPU_IS_HP_MC68K erroneously returns 731*8e33eff8Schristos true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 732*8e33eff8Schristos results, however. */ 733*8e33eff8Schristos if (CPU_IS_PA_RISC (cpu)) 734*8e33eff8Schristos { 735*8e33eff8Schristos switch (cpu) 736*8e33eff8Schristos { 737*8e33eff8Schristos case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 738*8e33eff8Schristos case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 739*8e33eff8Schristos case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 740*8e33eff8Schristos default: puts ("hppa-hitachi-hiuxwe2"); break; 741*8e33eff8Schristos } 742*8e33eff8Schristos } 743*8e33eff8Schristos else if (CPU_IS_HP_MC68K (cpu)) 744*8e33eff8Schristos puts ("m68k-hitachi-hiuxwe2"); 745*8e33eff8Schristos else puts ("unknown-hitachi-hiuxwe2"); 746*8e33eff8Schristos exit (0); 747*8e33eff8Schristos } 748*8e33eff8SchristosEOF 749*8e33eff8Schristos $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 750*8e33eff8Schristos { echo "$SYSTEM_NAME"; exit; } 751*8e33eff8Schristos echo unknown-hitachi-hiuxwe2 752*8e33eff8Schristos exit ;; 753*8e33eff8Schristos 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 754*8e33eff8Schristos echo hppa1.1-hp-bsd 755*8e33eff8Schristos exit ;; 756*8e33eff8Schristos 9000/8??:4.3bsd:*:*) 757*8e33eff8Schristos echo hppa1.0-hp-bsd 758*8e33eff8Schristos exit ;; 759*8e33eff8Schristos *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 760*8e33eff8Schristos echo hppa1.0-hp-mpeix 761*8e33eff8Schristos exit ;; 762*8e33eff8Schristos hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 763*8e33eff8Schristos echo hppa1.1-hp-osf 764*8e33eff8Schristos exit ;; 765*8e33eff8Schristos hp8??:OSF1:*:*) 766*8e33eff8Schristos echo hppa1.0-hp-osf 767*8e33eff8Schristos exit ;; 768*8e33eff8Schristos i*86:OSF1:*:*) 769*8e33eff8Schristos if [ -x /usr/sbin/sysversion ] ; then 770*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-osf1mk 771*8e33eff8Schristos else 772*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-osf1 773*8e33eff8Schristos fi 774*8e33eff8Schristos exit ;; 775*8e33eff8Schristos parisc*:Lites*:*:*) 776*8e33eff8Schristos echo hppa1.1-hp-lites 777*8e33eff8Schristos exit ;; 778*8e33eff8Schristos C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 779*8e33eff8Schristos echo c1-convex-bsd 780*8e33eff8Schristos exit ;; 781*8e33eff8Schristos C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 782*8e33eff8Schristos if getsysinfo -f scalar_acc 783*8e33eff8Schristos then echo c32-convex-bsd 784*8e33eff8Schristos else echo c2-convex-bsd 785*8e33eff8Schristos fi 786*8e33eff8Schristos exit ;; 787*8e33eff8Schristos C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 788*8e33eff8Schristos echo c34-convex-bsd 789*8e33eff8Schristos exit ;; 790*8e33eff8Schristos C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 791*8e33eff8Schristos echo c38-convex-bsd 792*8e33eff8Schristos exit ;; 793*8e33eff8Schristos C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 794*8e33eff8Schristos echo c4-convex-bsd 795*8e33eff8Schristos exit ;; 796*8e33eff8Schristos CRAY*Y-MP:*:*:*) 797*8e33eff8Schristos echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 798*8e33eff8Schristos exit ;; 799*8e33eff8Schristos CRAY*[A-Z]90:*:*:*) 800*8e33eff8Schristos echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 801*8e33eff8Schristos | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 802*8e33eff8Schristos -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 803*8e33eff8Schristos -e 's/\.[^.]*$/.X/' 804*8e33eff8Schristos exit ;; 805*8e33eff8Schristos CRAY*TS:*:*:*) 806*8e33eff8Schristos echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 807*8e33eff8Schristos exit ;; 808*8e33eff8Schristos CRAY*T3E:*:*:*) 809*8e33eff8Schristos echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 810*8e33eff8Schristos exit ;; 811*8e33eff8Schristos CRAY*SV1:*:*:*) 812*8e33eff8Schristos echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 813*8e33eff8Schristos exit ;; 814*8e33eff8Schristos *:UNICOS/mp:*:*) 815*8e33eff8Schristos echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 816*8e33eff8Schristos exit ;; 817*8e33eff8Schristos F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 818*8e33eff8Schristos FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` 819*8e33eff8Schristos FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` 820*8e33eff8Schristos FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 821*8e33eff8Schristos echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 822*8e33eff8Schristos exit ;; 823*8e33eff8Schristos 5000:UNIX_System_V:4.*:*) 824*8e33eff8Schristos FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` 825*8e33eff8Schristos FUJITSU_REL=`echo ${UNAME_RELEASE} | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'` 826*8e33eff8Schristos echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 827*8e33eff8Schristos exit ;; 828*8e33eff8Schristos i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 829*8e33eff8Schristos echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 830*8e33eff8Schristos exit ;; 831*8e33eff8Schristos sparc*:BSD/OS:*:*) 832*8e33eff8Schristos echo sparc-unknown-bsdi${UNAME_RELEASE} 833*8e33eff8Schristos exit ;; 834*8e33eff8Schristos *:BSD/OS:*:*) 835*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 836*8e33eff8Schristos exit ;; 837*8e33eff8Schristos *:FreeBSD:*:*) 838*8e33eff8Schristos UNAME_PROCESSOR=`/usr/bin/uname -p` 839*8e33eff8Schristos case ${UNAME_PROCESSOR} in 840*8e33eff8Schristos amd64) 841*8e33eff8Schristos echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 842*8e33eff8Schristos *) 843*8e33eff8Schristos echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 844*8e33eff8Schristos esac 845*8e33eff8Schristos exit ;; 846*8e33eff8Schristos i*:CYGWIN*:*) 847*8e33eff8Schristos echo ${UNAME_MACHINE}-pc-cygwin 848*8e33eff8Schristos exit ;; 849*8e33eff8Schristos *:MINGW64*:*) 850*8e33eff8Schristos echo ${UNAME_MACHINE}-pc-mingw64 851*8e33eff8Schristos exit ;; 852*8e33eff8Schristos *:MINGW*:*) 853*8e33eff8Schristos echo ${UNAME_MACHINE}-pc-mingw32 854*8e33eff8Schristos exit ;; 855*8e33eff8Schristos *:MSYS*:*) 856*8e33eff8Schristos echo ${UNAME_MACHINE}-pc-msys 857*8e33eff8Schristos exit ;; 858*8e33eff8Schristos i*:windows32*:*) 859*8e33eff8Schristos # uname -m includes "-pc" on this system. 860*8e33eff8Schristos echo ${UNAME_MACHINE}-mingw32 861*8e33eff8Schristos exit ;; 862*8e33eff8Schristos i*:PW*:*) 863*8e33eff8Schristos echo ${UNAME_MACHINE}-pc-pw32 864*8e33eff8Schristos exit ;; 865*8e33eff8Schristos *:Interix*:*) 866*8e33eff8Schristos case ${UNAME_MACHINE} in 867*8e33eff8Schristos x86) 868*8e33eff8Schristos echo i586-pc-interix${UNAME_RELEASE} 869*8e33eff8Schristos exit ;; 870*8e33eff8Schristos authenticamd | genuineintel | EM64T) 871*8e33eff8Schristos echo x86_64-unknown-interix${UNAME_RELEASE} 872*8e33eff8Schristos exit ;; 873*8e33eff8Schristos IA64) 874*8e33eff8Schristos echo ia64-unknown-interix${UNAME_RELEASE} 875*8e33eff8Schristos exit ;; 876*8e33eff8Schristos esac ;; 877*8e33eff8Schristos [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 878*8e33eff8Schristos echo i${UNAME_MACHINE}-pc-mks 879*8e33eff8Schristos exit ;; 880*8e33eff8Schristos 8664:Windows_NT:*) 881*8e33eff8Schristos echo x86_64-pc-mks 882*8e33eff8Schristos exit ;; 883*8e33eff8Schristos i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 884*8e33eff8Schristos # How do we know it's Interix rather than the generic POSIX subsystem? 885*8e33eff8Schristos # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 886*8e33eff8Schristos # UNAME_MACHINE based on the output of uname instead of i386? 887*8e33eff8Schristos echo i586-pc-interix 888*8e33eff8Schristos exit ;; 889*8e33eff8Schristos i*:UWIN*:*) 890*8e33eff8Schristos echo ${UNAME_MACHINE}-pc-uwin 891*8e33eff8Schristos exit ;; 892*8e33eff8Schristos amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 893*8e33eff8Schristos echo x86_64-unknown-cygwin 894*8e33eff8Schristos exit ;; 895*8e33eff8Schristos p*:CYGWIN*:*) 896*8e33eff8Schristos echo powerpcle-unknown-cygwin 897*8e33eff8Schristos exit ;; 898*8e33eff8Schristos prep*:SunOS:5.*:*) 899*8e33eff8Schristos echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 900*8e33eff8Schristos exit ;; 901*8e33eff8Schristos *:GNU:*:*) 902*8e33eff8Schristos # the GNU system 903*8e33eff8Schristos echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 904*8e33eff8Schristos exit ;; 905*8e33eff8Schristos *:GNU/*:*:*) 906*8e33eff8Schristos # other systems with GNU libc and userland 907*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC} 908*8e33eff8Schristos exit ;; 909*8e33eff8Schristos i*86:Minix:*:*) 910*8e33eff8Schristos echo ${UNAME_MACHINE}-pc-minix 911*8e33eff8Schristos exit ;; 912*8e33eff8Schristos aarch64:Linux:*:*) 913*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 914*8e33eff8Schristos exit ;; 915*8e33eff8Schristos aarch64_be:Linux:*:*) 916*8e33eff8Schristos UNAME_MACHINE=aarch64_be 917*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 918*8e33eff8Schristos exit ;; 919*8e33eff8Schristos alpha:Linux:*:*) 920*8e33eff8Schristos case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 921*8e33eff8Schristos EV5) UNAME_MACHINE=alphaev5 ;; 922*8e33eff8Schristos EV56) UNAME_MACHINE=alphaev56 ;; 923*8e33eff8Schristos PCA56) UNAME_MACHINE=alphapca56 ;; 924*8e33eff8Schristos PCA57) UNAME_MACHINE=alphapca56 ;; 925*8e33eff8Schristos EV6) UNAME_MACHINE=alphaev6 ;; 926*8e33eff8Schristos EV67) UNAME_MACHINE=alphaev67 ;; 927*8e33eff8Schristos EV68*) UNAME_MACHINE=alphaev68 ;; 928*8e33eff8Schristos esac 929*8e33eff8Schristos objdump --private-headers /bin/sh | grep -q ld.so.1 930*8e33eff8Schristos if test "$?" = 0 ; then LIBC=gnulibc1 ; fi 931*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 932*8e33eff8Schristos exit ;; 933*8e33eff8Schristos arc:Linux:*:* | arceb:Linux:*:*) 934*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 935*8e33eff8Schristos exit ;; 936*8e33eff8Schristos arm*:Linux:*:*) 937*8e33eff8Schristos eval $set_cc_for_build 938*8e33eff8Schristos if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ 939*8e33eff8Schristos | grep -q __ARM_EABI__ 940*8e33eff8Schristos then 941*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 942*8e33eff8Schristos else 943*8e33eff8Schristos if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ 944*8e33eff8Schristos | grep -q __ARM_PCS_VFP 945*8e33eff8Schristos then 946*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi 947*8e33eff8Schristos else 948*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf 949*8e33eff8Schristos fi 950*8e33eff8Schristos fi 951*8e33eff8Schristos exit ;; 952*8e33eff8Schristos avr32*:Linux:*:*) 953*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 954*8e33eff8Schristos exit ;; 955*8e33eff8Schristos cris:Linux:*:*) 956*8e33eff8Schristos echo ${UNAME_MACHINE}-axis-linux-${LIBC} 957*8e33eff8Schristos exit ;; 958*8e33eff8Schristos crisv32:Linux:*:*) 959*8e33eff8Schristos echo ${UNAME_MACHINE}-axis-linux-${LIBC} 960*8e33eff8Schristos exit ;; 961*8e33eff8Schristos e2k:Linux:*:*) 962*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 963*8e33eff8Schristos exit ;; 964*8e33eff8Schristos frv:Linux:*:*) 965*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 966*8e33eff8Schristos exit ;; 967*8e33eff8Schristos hexagon:Linux:*:*) 968*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 969*8e33eff8Schristos exit ;; 970*8e33eff8Schristos i*86:Linux:*:*) 971*8e33eff8Schristos echo ${UNAME_MACHINE}-pc-linux-${LIBC} 972*8e33eff8Schristos exit ;; 973*8e33eff8Schristos ia64:Linux:*:*) 974*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 975*8e33eff8Schristos exit ;; 976*8e33eff8Schristos k1om:Linux:*:*) 977*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 978*8e33eff8Schristos exit ;; 979*8e33eff8Schristos m32r*:Linux:*:*) 980*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 981*8e33eff8Schristos exit ;; 982*8e33eff8Schristos m68*:Linux:*:*) 983*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 984*8e33eff8Schristos exit ;; 985*8e33eff8Schristos mips:Linux:*:* | mips64:Linux:*:*) 986*8e33eff8Schristos eval $set_cc_for_build 987*8e33eff8Schristos sed 's/^ //' << EOF >$dummy.c 988*8e33eff8Schristos #undef CPU 989*8e33eff8Schristos #undef ${UNAME_MACHINE} 990*8e33eff8Schristos #undef ${UNAME_MACHINE}el 991*8e33eff8Schristos #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 992*8e33eff8Schristos CPU=${UNAME_MACHINE}el 993*8e33eff8Schristos #else 994*8e33eff8Schristos #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 995*8e33eff8Schristos CPU=${UNAME_MACHINE} 996*8e33eff8Schristos #else 997*8e33eff8Schristos CPU= 998*8e33eff8Schristos #endif 999*8e33eff8Schristos #endif 1000*8e33eff8SchristosEOF 1001*8e33eff8Schristos eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` 1002*8e33eff8Schristos test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; } 1003*8e33eff8Schristos ;; 1004*8e33eff8Schristos mips64el:Linux:*:*) 1005*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 1006*8e33eff8Schristos exit ;; 1007*8e33eff8Schristos openrisc*:Linux:*:*) 1008*8e33eff8Schristos echo or1k-unknown-linux-${LIBC} 1009*8e33eff8Schristos exit ;; 1010*8e33eff8Schristos or32:Linux:*:* | or1k*:Linux:*:*) 1011*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 1012*8e33eff8Schristos exit ;; 1013*8e33eff8Schristos padre:Linux:*:*) 1014*8e33eff8Schristos echo sparc-unknown-linux-${LIBC} 1015*8e33eff8Schristos exit ;; 1016*8e33eff8Schristos parisc64:Linux:*:* | hppa64:Linux:*:*) 1017*8e33eff8Schristos echo hppa64-unknown-linux-${LIBC} 1018*8e33eff8Schristos exit ;; 1019*8e33eff8Schristos parisc:Linux:*:* | hppa:Linux:*:*) 1020*8e33eff8Schristos # Look for CPU level 1021*8e33eff8Schristos case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 1022*8e33eff8Schristos PA7*) echo hppa1.1-unknown-linux-${LIBC} ;; 1023*8e33eff8Schristos PA8*) echo hppa2.0-unknown-linux-${LIBC} ;; 1024*8e33eff8Schristos *) echo hppa-unknown-linux-${LIBC} ;; 1025*8e33eff8Schristos esac 1026*8e33eff8Schristos exit ;; 1027*8e33eff8Schristos ppc64:Linux:*:*) 1028*8e33eff8Schristos echo powerpc64-unknown-linux-${LIBC} 1029*8e33eff8Schristos exit ;; 1030*8e33eff8Schristos ppc:Linux:*:*) 1031*8e33eff8Schristos echo powerpc-unknown-linux-${LIBC} 1032*8e33eff8Schristos exit ;; 1033*8e33eff8Schristos ppc64le:Linux:*:*) 1034*8e33eff8Schristos echo powerpc64le-unknown-linux-${LIBC} 1035*8e33eff8Schristos exit ;; 1036*8e33eff8Schristos ppcle:Linux:*:*) 1037*8e33eff8Schristos echo powerpcle-unknown-linux-${LIBC} 1038*8e33eff8Schristos exit ;; 1039*8e33eff8Schristos riscv32:Linux:*:* | riscv64:Linux:*:*) 1040*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 1041*8e33eff8Schristos exit ;; 1042*8e33eff8Schristos s390:Linux:*:* | s390x:Linux:*:*) 1043*8e33eff8Schristos echo ${UNAME_MACHINE}-ibm-linux-${LIBC} 1044*8e33eff8Schristos exit ;; 1045*8e33eff8Schristos sh64*:Linux:*:*) 1046*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 1047*8e33eff8Schristos exit ;; 1048*8e33eff8Schristos sh*:Linux:*:*) 1049*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 1050*8e33eff8Schristos exit ;; 1051*8e33eff8Schristos sparc:Linux:*:* | sparc64:Linux:*:*) 1052*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 1053*8e33eff8Schristos exit ;; 1054*8e33eff8Schristos tile*:Linux:*:*) 1055*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 1056*8e33eff8Schristos exit ;; 1057*8e33eff8Schristos vax:Linux:*:*) 1058*8e33eff8Schristos echo ${UNAME_MACHINE}-dec-linux-${LIBC} 1059*8e33eff8Schristos exit ;; 1060*8e33eff8Schristos x86_64:Linux:*:*) 1061*8e33eff8Schristos echo ${UNAME_MACHINE}-pc-linux-${LIBC} 1062*8e33eff8Schristos exit ;; 1063*8e33eff8Schristos xtensa*:Linux:*:*) 1064*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-linux-${LIBC} 1065*8e33eff8Schristos exit ;; 1066*8e33eff8Schristos i*86:DYNIX/ptx:4*:*) 1067*8e33eff8Schristos # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 1068*8e33eff8Schristos # earlier versions are messed up and put the nodename in both 1069*8e33eff8Schristos # sysname and nodename. 1070*8e33eff8Schristos echo i386-sequent-sysv4 1071*8e33eff8Schristos exit ;; 1072*8e33eff8Schristos i*86:UNIX_SV:4.2MP:2.*) 1073*8e33eff8Schristos # Unixware is an offshoot of SVR4, but it has its own version 1074*8e33eff8Schristos # number series starting with 2... 1075*8e33eff8Schristos # I am not positive that other SVR4 systems won't match this, 1076*8e33eff8Schristos # I just have to hope. -- rms. 1077*8e33eff8Schristos # Use sysv4.2uw... so that sysv4* matches it. 1078*8e33eff8Schristos echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 1079*8e33eff8Schristos exit ;; 1080*8e33eff8Schristos i*86:OS/2:*:*) 1081*8e33eff8Schristos # If we were able to find `uname', then EMX Unix compatibility 1082*8e33eff8Schristos # is probably installed. 1083*8e33eff8Schristos echo ${UNAME_MACHINE}-pc-os2-emx 1084*8e33eff8Schristos exit ;; 1085*8e33eff8Schristos i*86:XTS-300:*:STOP) 1086*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-stop 1087*8e33eff8Schristos exit ;; 1088*8e33eff8Schristos i*86:atheos:*:*) 1089*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-atheos 1090*8e33eff8Schristos exit ;; 1091*8e33eff8Schristos i*86:syllable:*:*) 1092*8e33eff8Schristos echo ${UNAME_MACHINE}-pc-syllable 1093*8e33eff8Schristos exit ;; 1094*8e33eff8Schristos i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) 1095*8e33eff8Schristos echo i386-unknown-lynxos${UNAME_RELEASE} 1096*8e33eff8Schristos exit ;; 1097*8e33eff8Schristos i*86:*DOS:*:*) 1098*8e33eff8Schristos echo ${UNAME_MACHINE}-pc-msdosdjgpp 1099*8e33eff8Schristos exit ;; 1100*8e33eff8Schristos i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 1101*8e33eff8Schristos UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 1102*8e33eff8Schristos if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 1103*8e33eff8Schristos echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 1104*8e33eff8Schristos else 1105*8e33eff8Schristos echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 1106*8e33eff8Schristos fi 1107*8e33eff8Schristos exit ;; 1108*8e33eff8Schristos i*86:*:5:[678]*) 1109*8e33eff8Schristos # UnixWare 7.x, OpenUNIX and OpenServer 6. 1110*8e33eff8Schristos case `/bin/uname -X | grep "^Machine"` in 1111*8e33eff8Schristos *486*) UNAME_MACHINE=i486 ;; 1112*8e33eff8Schristos *Pentium) UNAME_MACHINE=i586 ;; 1113*8e33eff8Schristos *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 1114*8e33eff8Schristos esac 1115*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 1116*8e33eff8Schristos exit ;; 1117*8e33eff8Schristos i*86:*:3.2:*) 1118*8e33eff8Schristos if test -f /usr/options/cb.name; then 1119*8e33eff8Schristos UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 1120*8e33eff8Schristos echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 1121*8e33eff8Schristos elif /bin/uname -X 2>/dev/null >/dev/null ; then 1122*8e33eff8Schristos UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 1123*8e33eff8Schristos (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 1124*8e33eff8Schristos (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 1125*8e33eff8Schristos && UNAME_MACHINE=i586 1126*8e33eff8Schristos (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 1127*8e33eff8Schristos && UNAME_MACHINE=i686 1128*8e33eff8Schristos (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 1129*8e33eff8Schristos && UNAME_MACHINE=i686 1130*8e33eff8Schristos echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 1131*8e33eff8Schristos else 1132*8e33eff8Schristos echo ${UNAME_MACHINE}-pc-sysv32 1133*8e33eff8Schristos fi 1134*8e33eff8Schristos exit ;; 1135*8e33eff8Schristos pc:*:*:*) 1136*8e33eff8Schristos # Left here for compatibility: 1137*8e33eff8Schristos # uname -m prints for DJGPP always 'pc', but it prints nothing about 1138*8e33eff8Schristos # the processor, so we play safe by assuming i586. 1139*8e33eff8Schristos # Note: whatever this is, it MUST be the same as what config.sub 1140*8e33eff8Schristos # prints for the "djgpp" host, or else GDB configure will decide that 1141*8e33eff8Schristos # this is a cross-build. 1142*8e33eff8Schristos echo i586-pc-msdosdjgpp 1143*8e33eff8Schristos exit ;; 1144*8e33eff8Schristos Intel:Mach:3*:*) 1145*8e33eff8Schristos echo i386-pc-mach3 1146*8e33eff8Schristos exit ;; 1147*8e33eff8Schristos paragon:*:*:*) 1148*8e33eff8Schristos echo i860-intel-osf1 1149*8e33eff8Schristos exit ;; 1150*8e33eff8Schristos i860:*:4.*:*) # i860-SVR4 1151*8e33eff8Schristos if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 1152*8e33eff8Schristos echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 1153*8e33eff8Schristos else # Add other i860-SVR4 vendors below as they are discovered. 1154*8e33eff8Schristos echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 1155*8e33eff8Schristos fi 1156*8e33eff8Schristos exit ;; 1157*8e33eff8Schristos mini*:CTIX:SYS*5:*) 1158*8e33eff8Schristos # "miniframe" 1159*8e33eff8Schristos echo m68010-convergent-sysv 1160*8e33eff8Schristos exit ;; 1161*8e33eff8Schristos mc68k:UNIX:SYSTEM5:3.51m) 1162*8e33eff8Schristos echo m68k-convergent-sysv 1163*8e33eff8Schristos exit ;; 1164*8e33eff8Schristos M680?0:D-NIX:5.3:*) 1165*8e33eff8Schristos echo m68k-diab-dnix 1166*8e33eff8Schristos exit ;; 1167*8e33eff8Schristos M68*:*:R3V[5678]*:*) 1168*8e33eff8Schristos test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 1169*8e33eff8Schristos 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) 1170*8e33eff8Schristos OS_REL='' 1171*8e33eff8Schristos test -r /etc/.relid \ 1172*8e33eff8Schristos && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1173*8e33eff8Schristos /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1174*8e33eff8Schristos && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 1175*8e33eff8Schristos /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1176*8e33eff8Schristos && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1177*8e33eff8Schristos 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 1178*8e33eff8Schristos /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1179*8e33eff8Schristos && { echo i486-ncr-sysv4; exit; } ;; 1180*8e33eff8Schristos NCR*:*:4.2:* | MPRAS*:*:4.2:*) 1181*8e33eff8Schristos OS_REL='.3' 1182*8e33eff8Schristos test -r /etc/.relid \ 1183*8e33eff8Schristos && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1184*8e33eff8Schristos /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1185*8e33eff8Schristos && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 1186*8e33eff8Schristos /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1187*8e33eff8Schristos && { echo i586-ncr-sysv4.3${OS_REL}; exit; } 1188*8e33eff8Schristos /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ 1189*8e33eff8Schristos && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1190*8e33eff8Schristos m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 1191*8e33eff8Schristos echo m68k-unknown-lynxos${UNAME_RELEASE} 1192*8e33eff8Schristos exit ;; 1193*8e33eff8Schristos mc68030:UNIX_System_V:4.*:*) 1194*8e33eff8Schristos echo m68k-atari-sysv4 1195*8e33eff8Schristos exit ;; 1196*8e33eff8Schristos TSUNAMI:LynxOS:2.*:*) 1197*8e33eff8Schristos echo sparc-unknown-lynxos${UNAME_RELEASE} 1198*8e33eff8Schristos exit ;; 1199*8e33eff8Schristos rs6000:LynxOS:2.*:*) 1200*8e33eff8Schristos echo rs6000-unknown-lynxos${UNAME_RELEASE} 1201*8e33eff8Schristos exit ;; 1202*8e33eff8Schristos PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) 1203*8e33eff8Schristos echo powerpc-unknown-lynxos${UNAME_RELEASE} 1204*8e33eff8Schristos exit ;; 1205*8e33eff8Schristos SM[BE]S:UNIX_SV:*:*) 1206*8e33eff8Schristos echo mips-dde-sysv${UNAME_RELEASE} 1207*8e33eff8Schristos exit ;; 1208*8e33eff8Schristos RM*:ReliantUNIX-*:*:*) 1209*8e33eff8Schristos echo mips-sni-sysv4 1210*8e33eff8Schristos exit ;; 1211*8e33eff8Schristos RM*:SINIX-*:*:*) 1212*8e33eff8Schristos echo mips-sni-sysv4 1213*8e33eff8Schristos exit ;; 1214*8e33eff8Schristos *:SINIX-*:*:*) 1215*8e33eff8Schristos if uname -p 2>/dev/null >/dev/null ; then 1216*8e33eff8Schristos UNAME_MACHINE=`(uname -p) 2>/dev/null` 1217*8e33eff8Schristos echo ${UNAME_MACHINE}-sni-sysv4 1218*8e33eff8Schristos else 1219*8e33eff8Schristos echo ns32k-sni-sysv 1220*8e33eff8Schristos fi 1221*8e33eff8Schristos exit ;; 1222*8e33eff8Schristos PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 1223*8e33eff8Schristos # says <Richard.M.Bartel@ccMail.Census.GOV> 1224*8e33eff8Schristos echo i586-unisys-sysv4 1225*8e33eff8Schristos exit ;; 1226*8e33eff8Schristos *:UNIX_System_V:4*:FTX*) 1227*8e33eff8Schristos # From Gerald Hewes <hewes@openmarket.com>. 1228*8e33eff8Schristos # How about differentiating between stratus architectures? -djm 1229*8e33eff8Schristos echo hppa1.1-stratus-sysv4 1230*8e33eff8Schristos exit ;; 1231*8e33eff8Schristos *:*:*:FTX*) 1232*8e33eff8Schristos # From seanf@swdc.stratus.com. 1233*8e33eff8Schristos echo i860-stratus-sysv4 1234*8e33eff8Schristos exit ;; 1235*8e33eff8Schristos i*86:VOS:*:*) 1236*8e33eff8Schristos # From Paul.Green@stratus.com. 1237*8e33eff8Schristos echo ${UNAME_MACHINE}-stratus-vos 1238*8e33eff8Schristos exit ;; 1239*8e33eff8Schristos *:VOS:*:*) 1240*8e33eff8Schristos # From Paul.Green@stratus.com. 1241*8e33eff8Schristos echo hppa1.1-stratus-vos 1242*8e33eff8Schristos exit ;; 1243*8e33eff8Schristos mc68*:A/UX:*:*) 1244*8e33eff8Schristos echo m68k-apple-aux${UNAME_RELEASE} 1245*8e33eff8Schristos exit ;; 1246*8e33eff8Schristos news*:NEWS-OS:6*:*) 1247*8e33eff8Schristos echo mips-sony-newsos6 1248*8e33eff8Schristos exit ;; 1249*8e33eff8Schristos R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 1250*8e33eff8Schristos if [ -d /usr/nec ]; then 1251*8e33eff8Schristos echo mips-nec-sysv${UNAME_RELEASE} 1252*8e33eff8Schristos else 1253*8e33eff8Schristos echo mips-unknown-sysv${UNAME_RELEASE} 1254*8e33eff8Schristos fi 1255*8e33eff8Schristos exit ;; 1256*8e33eff8Schristos BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 1257*8e33eff8Schristos echo powerpc-be-beos 1258*8e33eff8Schristos exit ;; 1259*8e33eff8Schristos BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 1260*8e33eff8Schristos echo powerpc-apple-beos 1261*8e33eff8Schristos exit ;; 1262*8e33eff8Schristos BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 1263*8e33eff8Schristos echo i586-pc-beos 1264*8e33eff8Schristos exit ;; 1265*8e33eff8Schristos BePC:Haiku:*:*) # Haiku running on Intel PC compatible. 1266*8e33eff8Schristos echo i586-pc-haiku 1267*8e33eff8Schristos exit ;; 1268*8e33eff8Schristos x86_64:Haiku:*:*) 1269*8e33eff8Schristos echo x86_64-unknown-haiku 1270*8e33eff8Schristos exit ;; 1271*8e33eff8Schristos SX-4:SUPER-UX:*:*) 1272*8e33eff8Schristos echo sx4-nec-superux${UNAME_RELEASE} 1273*8e33eff8Schristos exit ;; 1274*8e33eff8Schristos SX-5:SUPER-UX:*:*) 1275*8e33eff8Schristos echo sx5-nec-superux${UNAME_RELEASE} 1276*8e33eff8Schristos exit ;; 1277*8e33eff8Schristos SX-6:SUPER-UX:*:*) 1278*8e33eff8Schristos echo sx6-nec-superux${UNAME_RELEASE} 1279*8e33eff8Schristos exit ;; 1280*8e33eff8Schristos SX-7:SUPER-UX:*:*) 1281*8e33eff8Schristos echo sx7-nec-superux${UNAME_RELEASE} 1282*8e33eff8Schristos exit ;; 1283*8e33eff8Schristos SX-8:SUPER-UX:*:*) 1284*8e33eff8Schristos echo sx8-nec-superux${UNAME_RELEASE} 1285*8e33eff8Schristos exit ;; 1286*8e33eff8Schristos SX-8R:SUPER-UX:*:*) 1287*8e33eff8Schristos echo sx8r-nec-superux${UNAME_RELEASE} 1288*8e33eff8Schristos exit ;; 1289*8e33eff8Schristos SX-ACE:SUPER-UX:*:*) 1290*8e33eff8Schristos echo sxace-nec-superux${UNAME_RELEASE} 1291*8e33eff8Schristos exit ;; 1292*8e33eff8Schristos Power*:Rhapsody:*:*) 1293*8e33eff8Schristos echo powerpc-apple-rhapsody${UNAME_RELEASE} 1294*8e33eff8Schristos exit ;; 1295*8e33eff8Schristos *:Rhapsody:*:*) 1296*8e33eff8Schristos echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 1297*8e33eff8Schristos exit ;; 1298*8e33eff8Schristos *:Darwin:*:*) 1299*8e33eff8Schristos UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 1300*8e33eff8Schristos eval $set_cc_for_build 1301*8e33eff8Schristos if test "$UNAME_PROCESSOR" = unknown ; then 1302*8e33eff8Schristos UNAME_PROCESSOR=powerpc 1303*8e33eff8Schristos fi 1304*8e33eff8Schristos if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then 1305*8e33eff8Schristos if [ "$CC_FOR_BUILD" != no_compiler_found ]; then 1306*8e33eff8Schristos if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ 1307*8e33eff8Schristos (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ 1308*8e33eff8Schristos grep IS_64BIT_ARCH >/dev/null 1309*8e33eff8Schristos then 1310*8e33eff8Schristos case $UNAME_PROCESSOR in 1311*8e33eff8Schristos i386) UNAME_PROCESSOR=x86_64 ;; 1312*8e33eff8Schristos powerpc) UNAME_PROCESSOR=powerpc64 ;; 1313*8e33eff8Schristos esac 1314*8e33eff8Schristos fi 1315*8e33eff8Schristos fi 1316*8e33eff8Schristos elif test "$UNAME_PROCESSOR" = i386 ; then 1317*8e33eff8Schristos # Avoid executing cc on OS X 10.9, as it ships with a stub 1318*8e33eff8Schristos # that puts up a graphical alert prompting to install 1319*8e33eff8Schristos # developer tools. Any system running Mac OS X 10.7 or 1320*8e33eff8Schristos # later (Darwin 11 and later) is required to have a 64-bit 1321*8e33eff8Schristos # processor. This is not true of the ARM version of Darwin 1322*8e33eff8Schristos # that Apple uses in portable devices. 1323*8e33eff8Schristos UNAME_PROCESSOR=x86_64 1324*8e33eff8Schristos fi 1325*8e33eff8Schristos echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 1326*8e33eff8Schristos exit ;; 1327*8e33eff8Schristos *:procnto*:*:* | *:QNX:[0123456789]*:*) 1328*8e33eff8Schristos UNAME_PROCESSOR=`uname -p` 1329*8e33eff8Schristos if test "$UNAME_PROCESSOR" = x86; then 1330*8e33eff8Schristos UNAME_PROCESSOR=i386 1331*8e33eff8Schristos UNAME_MACHINE=pc 1332*8e33eff8Schristos fi 1333*8e33eff8Schristos echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 1334*8e33eff8Schristos exit ;; 1335*8e33eff8Schristos *:QNX:*:4*) 1336*8e33eff8Schristos echo i386-pc-qnx 1337*8e33eff8Schristos exit ;; 1338*8e33eff8Schristos NEO-?:NONSTOP_KERNEL:*:*) 1339*8e33eff8Schristos echo neo-tandem-nsk${UNAME_RELEASE} 1340*8e33eff8Schristos exit ;; 1341*8e33eff8Schristos NSE-*:NONSTOP_KERNEL:*:*) 1342*8e33eff8Schristos echo nse-tandem-nsk${UNAME_RELEASE} 1343*8e33eff8Schristos exit ;; 1344*8e33eff8Schristos NSR-?:NONSTOP_KERNEL:*:*) 1345*8e33eff8Schristos echo nsr-tandem-nsk${UNAME_RELEASE} 1346*8e33eff8Schristos exit ;; 1347*8e33eff8Schristos *:NonStop-UX:*:*) 1348*8e33eff8Schristos echo mips-compaq-nonstopux 1349*8e33eff8Schristos exit ;; 1350*8e33eff8Schristos BS2000:POSIX*:*:*) 1351*8e33eff8Schristos echo bs2000-siemens-sysv 1352*8e33eff8Schristos exit ;; 1353*8e33eff8Schristos DS/*:UNIX_System_V:*:*) 1354*8e33eff8Schristos echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 1355*8e33eff8Schristos exit ;; 1356*8e33eff8Schristos *:Plan9:*:*) 1357*8e33eff8Schristos # "uname -m" is not consistent, so use $cputype instead. 386 1358*8e33eff8Schristos # is converted to i386 for consistency with other x86 1359*8e33eff8Schristos # operating systems. 1360*8e33eff8Schristos if test "$cputype" = 386; then 1361*8e33eff8Schristos UNAME_MACHINE=i386 1362*8e33eff8Schristos else 1363*8e33eff8Schristos UNAME_MACHINE="$cputype" 1364*8e33eff8Schristos fi 1365*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-plan9 1366*8e33eff8Schristos exit ;; 1367*8e33eff8Schristos *:TOPS-10:*:*) 1368*8e33eff8Schristos echo pdp10-unknown-tops10 1369*8e33eff8Schristos exit ;; 1370*8e33eff8Schristos *:TENEX:*:*) 1371*8e33eff8Schristos echo pdp10-unknown-tenex 1372*8e33eff8Schristos exit ;; 1373*8e33eff8Schristos KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 1374*8e33eff8Schristos echo pdp10-dec-tops20 1375*8e33eff8Schristos exit ;; 1376*8e33eff8Schristos XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 1377*8e33eff8Schristos echo pdp10-xkl-tops20 1378*8e33eff8Schristos exit ;; 1379*8e33eff8Schristos *:TOPS-20:*:*) 1380*8e33eff8Schristos echo pdp10-unknown-tops20 1381*8e33eff8Schristos exit ;; 1382*8e33eff8Schristos *:ITS:*:*) 1383*8e33eff8Schristos echo pdp10-unknown-its 1384*8e33eff8Schristos exit ;; 1385*8e33eff8Schristos SEI:*:*:SEIUX) 1386*8e33eff8Schristos echo mips-sei-seiux${UNAME_RELEASE} 1387*8e33eff8Schristos exit ;; 1388*8e33eff8Schristos *:DragonFly:*:*) 1389*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 1390*8e33eff8Schristos exit ;; 1391*8e33eff8Schristos *:*VMS:*:*) 1392*8e33eff8Schristos UNAME_MACHINE=`(uname -p) 2>/dev/null` 1393*8e33eff8Schristos case "${UNAME_MACHINE}" in 1394*8e33eff8Schristos A*) echo alpha-dec-vms ; exit ;; 1395*8e33eff8Schristos I*) echo ia64-dec-vms ; exit ;; 1396*8e33eff8Schristos V*) echo vax-dec-vms ; exit ;; 1397*8e33eff8Schristos esac ;; 1398*8e33eff8Schristos *:XENIX:*:SysV) 1399*8e33eff8Schristos echo i386-pc-xenix 1400*8e33eff8Schristos exit ;; 1401*8e33eff8Schristos i*86:skyos:*:*) 1402*8e33eff8Schristos echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE} | sed -e 's/ .*$//'` 1403*8e33eff8Schristos exit ;; 1404*8e33eff8Schristos i*86:rdos:*:*) 1405*8e33eff8Schristos echo ${UNAME_MACHINE}-pc-rdos 1406*8e33eff8Schristos exit ;; 1407*8e33eff8Schristos i*86:AROS:*:*) 1408*8e33eff8Schristos echo ${UNAME_MACHINE}-pc-aros 1409*8e33eff8Schristos exit ;; 1410*8e33eff8Schristos x86_64:VMkernel:*:*) 1411*8e33eff8Schristos echo ${UNAME_MACHINE}-unknown-esx 1412*8e33eff8Schristos exit ;; 1413*8e33eff8Schristos amd64:Isilon\ OneFS:*:*) 1414*8e33eff8Schristos echo x86_64-unknown-onefs 1415*8e33eff8Schristos exit ;; 1416*8e33eff8Schristosesac 1417*8e33eff8Schristos 1418*8e33eff8Schristoscat >&2 <<EOF 1419*8e33eff8Schristos$0: unable to guess system type 1420*8e33eff8Schristos 1421*8e33eff8SchristosThis script (version $timestamp), has failed to recognize the 1422*8e33eff8Schristosoperating system you are using. If your script is old, overwrite 1423*8e33eff8Schristosconfig.guess and config.sub with the latest versions from: 1424*8e33eff8Schristos 1425*8e33eff8Schristos http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess 1426*8e33eff8Schristosand 1427*8e33eff8Schristos http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub 1428*8e33eff8Schristos 1429*8e33eff8SchristosIf $0 has already been updated, send the following data and any 1430*8e33eff8Schristosinformation you think might be pertinent to config-patches@gnu.org to 1431*8e33eff8Schristosprovide the necessary information to handle your system. 1432*8e33eff8Schristos 1433*8e33eff8Schristosconfig.guess timestamp = $timestamp 1434*8e33eff8Schristos 1435*8e33eff8Schristosuname -m = `(uname -m) 2>/dev/null || echo unknown` 1436*8e33eff8Schristosuname -r = `(uname -r) 2>/dev/null || echo unknown` 1437*8e33eff8Schristosuname -s = `(uname -s) 2>/dev/null || echo unknown` 1438*8e33eff8Schristosuname -v = `(uname -v) 2>/dev/null || echo unknown` 1439*8e33eff8Schristos 1440*8e33eff8Schristos/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 1441*8e33eff8Schristos/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 1442*8e33eff8Schristos 1443*8e33eff8Schristoshostinfo = `(hostinfo) 2>/dev/null` 1444*8e33eff8Schristos/bin/universe = `(/bin/universe) 2>/dev/null` 1445*8e33eff8Schristos/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 1446*8e33eff8Schristos/bin/arch = `(/bin/arch) 2>/dev/null` 1447*8e33eff8Schristos/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 1448*8e33eff8Schristos/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 1449*8e33eff8Schristos 1450*8e33eff8SchristosUNAME_MACHINE = ${UNAME_MACHINE} 1451*8e33eff8SchristosUNAME_RELEASE = ${UNAME_RELEASE} 1452*8e33eff8SchristosUNAME_SYSTEM = ${UNAME_SYSTEM} 1453*8e33eff8SchristosUNAME_VERSION = ${UNAME_VERSION} 1454*8e33eff8SchristosEOF 1455*8e33eff8Schristos 1456*8e33eff8Schristosexit 1 1457*8e33eff8Schristos 1458*8e33eff8Schristos# Local variables: 1459*8e33eff8Schristos# eval: (add-hook 'write-file-hooks 'time-stamp) 1460*8e33eff8Schristos# time-stamp-start: "timestamp='" 1461*8e33eff8Schristos# time-stamp-format: "%:y-%02m-%02d" 1462*8e33eff8Schristos# time-stamp-end: "'" 1463*8e33eff8Schristos# End: 1464