config.guess revision acd6767f
1fe5e51b7Smrg#! /bin/sh 2fe5e51b7Smrg# Attempt to guess a canonical system name. 3fe5e51b7Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 40bb88ba4Smrg# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 50bb88ba4Smrg# 2011, 2012 Free Software Foundation, Inc. 6fe5e51b7Smrg 7acd6767fSmrgtimestamp='2012-06-10' 8fe5e51b7Smrg 9fe5e51b7Smrg# This file is free software; you can redistribute it and/or modify it 10fe5e51b7Smrg# under the terms of the GNU General Public License as published by 11fe5e51b7Smrg# the Free Software Foundation; either version 2 of the License, or 12fe5e51b7Smrg# (at your option) any later version. 13fe5e51b7Smrg# 14fe5e51b7Smrg# This program is distributed in the hope that it will be useful, but 15fe5e51b7Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of 16fe5e51b7Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 17fe5e51b7Smrg# General Public License for more details. 18fe5e51b7Smrg# 19fe5e51b7Smrg# You should have received a copy of the GNU General Public License 20acd6767fSmrg# along with this program; if not, see <http://www.gnu.org/licenses/>. 21fe5e51b7Smrg# 22fe5e51b7Smrg# As a special exception to the GNU General Public License, if you 23fe5e51b7Smrg# distribute this file as part of a program that contains a 24fe5e51b7Smrg# configuration script generated by Autoconf, you may include it under 25fe5e51b7Smrg# the same distribution terms that you use for the rest of that program. 26fe5e51b7Smrg 27fe5e51b7Smrg 280bb88ba4Smrg# Originally written by Per Bothner. Please send patches (context 290bb88ba4Smrg# diff format) to <config-patches@gnu.org> and include a ChangeLog 300bb88ba4Smrg# entry. 31fe5e51b7Smrg# 32fe5e51b7Smrg# This script attempts to guess a canonical system name similar to 33fe5e51b7Smrg# config.sub. If it succeeds, it prints the system name on stdout, and 34fe5e51b7Smrg# exits with 0. Otherwise, it exits with 1. 35fe5e51b7Smrg# 360bb88ba4Smrg# You can get the latest version of this script from: 370bb88ba4Smrg# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 38fe5e51b7Smrg 39fe5e51b7Smrgme=`echo "$0" | sed -e 's,.*/,,'` 40fe5e51b7Smrg 41fe5e51b7Smrgusage="\ 42fe5e51b7SmrgUsage: $0 [OPTION] 43fe5e51b7Smrg 44fe5e51b7SmrgOutput the configuration name of the system \`$me' is run on. 45fe5e51b7Smrg 46fe5e51b7SmrgOperation modes: 47fe5e51b7Smrg -h, --help print this help, then exit 48fe5e51b7Smrg -t, --time-stamp print date of last modification, then exit 49fe5e51b7Smrg -v, --version print version number, then exit 50fe5e51b7Smrg 51fe5e51b7SmrgReport bugs and patches to <config-patches@gnu.org>." 52fe5e51b7Smrg 53fe5e51b7Smrgversion="\ 54fe5e51b7SmrgGNU config.guess ($timestamp) 55fe5e51b7Smrg 56fe5e51b7SmrgOriginally written by Per Bothner. 570bb88ba4SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 580bb88ba4Smrg2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 590bb88ba4SmrgFree Software Foundation, Inc. 60fe5e51b7Smrg 61fe5e51b7SmrgThis is free software; see the source for copying conditions. There is NO 62fe5e51b7Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 63fe5e51b7Smrg 64fe5e51b7Smrghelp=" 65fe5e51b7SmrgTry \`$me --help' for more information." 66fe5e51b7Smrg 67fe5e51b7Smrg# Parse command line 68fe5e51b7Smrgwhile test $# -gt 0 ; do 69fe5e51b7Smrg case $1 in 70fe5e51b7Smrg --time-stamp | --time* | -t ) 71fe5e51b7Smrg echo "$timestamp" ; exit ;; 72fe5e51b7Smrg --version | -v ) 73fe5e51b7Smrg echo "$version" ; exit ;; 74fe5e51b7Smrg --help | --h* | -h ) 75fe5e51b7Smrg echo "$usage"; exit ;; 76fe5e51b7Smrg -- ) # Stop option processing 77fe5e51b7Smrg shift; break ;; 78fe5e51b7Smrg - ) # Use stdin as input. 79fe5e51b7Smrg break ;; 80fe5e51b7Smrg -* ) 81fe5e51b7Smrg echo "$me: invalid option $1$help" >&2 82fe5e51b7Smrg exit 1 ;; 83fe5e51b7Smrg * ) 84fe5e51b7Smrg break ;; 85fe5e51b7Smrg esac 86fe5e51b7Smrgdone 87fe5e51b7Smrg 88fe5e51b7Smrgif test $# != 0; then 89fe5e51b7Smrg echo "$me: too many arguments$help" >&2 90fe5e51b7Smrg exit 1 91fe5e51b7Smrgfi 92fe5e51b7Smrg 93fe5e51b7Smrgtrap 'exit 1' 1 2 15 94fe5e51b7Smrg 95fe5e51b7Smrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 96fe5e51b7Smrg# compiler to aid in system detection is discouraged as it requires 97fe5e51b7Smrg# temporary files to be created and, as you can see below, it is a 98fe5e51b7Smrg# headache to deal with in a portable fashion. 99fe5e51b7Smrg 100fe5e51b7Smrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 101fe5e51b7Smrg# use `HOST_CC' if defined, but it is deprecated. 102fe5e51b7Smrg 103fe5e51b7Smrg# Portable tmp directory creation inspired by the Autoconf team. 104fe5e51b7Smrg 105fe5e51b7Smrgset_cc_for_build=' 106fe5e51b7Smrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; 107fe5e51b7Smrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 108fe5e51b7Smrg: ${TMPDIR=/tmp} ; 109fe5e51b7Smrg { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 110fe5e51b7Smrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 111fe5e51b7Smrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || 112fe5e51b7Smrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; 113fe5e51b7Smrgdummy=$tmp/dummy ; 114fe5e51b7Smrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; 115fe5e51b7Smrgcase $CC_FOR_BUILD,$HOST_CC,$CC in 116fe5e51b7Smrg ,,) echo "int x;" > $dummy.c ; 117fe5e51b7Smrg for c in cc gcc c89 c99 ; do 118fe5e51b7Smrg if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then 119fe5e51b7Smrg CC_FOR_BUILD="$c"; break ; 120fe5e51b7Smrg fi ; 121fe5e51b7Smrg done ; 122fe5e51b7Smrg if test x"$CC_FOR_BUILD" = x ; then 123fe5e51b7Smrg CC_FOR_BUILD=no_compiler_found ; 124fe5e51b7Smrg fi 125fe5e51b7Smrg ;; 126fe5e51b7Smrg ,,*) CC_FOR_BUILD=$CC ;; 127fe5e51b7Smrg ,*,*) CC_FOR_BUILD=$HOST_CC ;; 128fe5e51b7Smrgesac ; set_cc_for_build= ;' 129fe5e51b7Smrg 130fe5e51b7Smrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 131fe5e51b7Smrg# (ghazi@noc.rutgers.edu 1994-08-24) 132fe5e51b7Smrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then 133fe5e51b7Smrg PATH=$PATH:/.attbin ; export PATH 134fe5e51b7Smrgfi 135fe5e51b7Smrg 136fe5e51b7SmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 137fe5e51b7SmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 138fe5e51b7SmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 139fe5e51b7SmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 140fe5e51b7Smrg 141fe5e51b7Smrg# Note: order is significant - the case branches are not exclusive. 142fe5e51b7Smrg 143fe5e51b7Smrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 144fe5e51b7Smrg *:NetBSD:*:*) 145fe5e51b7Smrg # NetBSD (nbsd) targets should (where applicable) match one or 1460bb88ba4Smrg # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, 147fe5e51b7Smrg # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 148fe5e51b7Smrg # switched to ELF, *-*-netbsd* would select the old 149fe5e51b7Smrg # object file format. This provides both forward 150fe5e51b7Smrg # compatibility and a consistent mechanism for selecting the 151fe5e51b7Smrg # object file format. 152fe5e51b7Smrg # 153fe5e51b7Smrg # Note: NetBSD doesn't particularly care about the vendor 154fe5e51b7Smrg # portion of the name. We always set it to "unknown". 155fe5e51b7Smrg sysctl="sysctl -n hw.machine_arch" 156fe5e51b7Smrg UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ 157fe5e51b7Smrg /usr/sbin/$sysctl 2>/dev/null || echo unknown)` 158fe5e51b7Smrg case "${UNAME_MACHINE_ARCH}" in 159fe5e51b7Smrg armeb) machine=armeb-unknown ;; 160fe5e51b7Smrg arm*) machine=arm-unknown ;; 161fe5e51b7Smrg sh3el) machine=shl-unknown ;; 162fe5e51b7Smrg sh3eb) machine=sh-unknown ;; 163fe5e51b7Smrg sh5el) machine=sh5le-unknown ;; 164fe5e51b7Smrg *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 165fe5e51b7Smrg esac 166fe5e51b7Smrg # The Operating System including object format, if it has switched 167fe5e51b7Smrg # to ELF recently, or will in the future. 168fe5e51b7Smrg case "${UNAME_MACHINE_ARCH}" in 169fe5e51b7Smrg arm*|i386|m68k|ns32k|sh3*|sparc|vax) 170fe5e51b7Smrg eval $set_cc_for_build 171fe5e51b7Smrg if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 1720bb88ba4Smrg | grep -q __ELF__ 173fe5e51b7Smrg then 174fe5e51b7Smrg # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 175fe5e51b7Smrg # Return netbsd for either. FIX? 176fe5e51b7Smrg os=netbsd 177fe5e51b7Smrg else 178fe5e51b7Smrg os=netbsdelf 179fe5e51b7Smrg fi 180fe5e51b7Smrg ;; 181fe5e51b7Smrg *) 1820bb88ba4Smrg os=netbsd 183fe5e51b7Smrg ;; 184fe5e51b7Smrg esac 185fe5e51b7Smrg # The OS release 186fe5e51b7Smrg # Debian GNU/NetBSD machines have a different userland, and 187fe5e51b7Smrg # thus, need a distinct triplet. However, they do not need 188fe5e51b7Smrg # kernel version information, so it can be replaced with a 189fe5e51b7Smrg # suitable tag, in the style of linux-gnu. 190fe5e51b7Smrg case "${UNAME_VERSION}" in 191fe5e51b7Smrg Debian*) 192fe5e51b7Smrg release='-gnu' 193fe5e51b7Smrg ;; 194fe5e51b7Smrg *) 195fe5e51b7Smrg release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` 196fe5e51b7Smrg ;; 197fe5e51b7Smrg esac 198fe5e51b7Smrg # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 199fe5e51b7Smrg # contains redundant information, the shorter form: 200fe5e51b7Smrg # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 201fe5e51b7Smrg echo "${machine}-${os}${release}" 202fe5e51b7Smrg exit ;; 203fe5e51b7Smrg *:OpenBSD:*:*) 204fe5e51b7Smrg UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 205fe5e51b7Smrg echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 206fe5e51b7Smrg exit ;; 207fe5e51b7Smrg *:ekkoBSD:*:*) 208fe5e51b7Smrg echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 209fe5e51b7Smrg exit ;; 210fe5e51b7Smrg *:SolidBSD:*:*) 211fe5e51b7Smrg echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} 212fe5e51b7Smrg exit ;; 213fe5e51b7Smrg macppc:MirBSD:*:*) 214fe5e51b7Smrg echo powerpc-unknown-mirbsd${UNAME_RELEASE} 215fe5e51b7Smrg exit ;; 216fe5e51b7Smrg *:MirBSD:*:*) 217fe5e51b7Smrg echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 218fe5e51b7Smrg exit ;; 219fe5e51b7Smrg alpha:OSF1:*:*) 220fe5e51b7Smrg case $UNAME_RELEASE in 221fe5e51b7Smrg *4.0) 222fe5e51b7Smrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 223fe5e51b7Smrg ;; 224fe5e51b7Smrg *5.*) 2250bb88ba4Smrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` 226fe5e51b7Smrg ;; 227fe5e51b7Smrg esac 228fe5e51b7Smrg # According to Compaq, /usr/sbin/psrinfo has been available on 229fe5e51b7Smrg # OSF/1 and Tru64 systems produced since 1995. I hope that 230fe5e51b7Smrg # covers most systems running today. This code pipes the CPU 231fe5e51b7Smrg # types through head -n 1, so we only detect the type of CPU 0. 232fe5e51b7Smrg ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 233fe5e51b7Smrg case "$ALPHA_CPU_TYPE" in 234fe5e51b7Smrg "EV4 (21064)") 235fe5e51b7Smrg UNAME_MACHINE="alpha" ;; 236fe5e51b7Smrg "EV4.5 (21064)") 237fe5e51b7Smrg UNAME_MACHINE="alpha" ;; 238fe5e51b7Smrg "LCA4 (21066/21068)") 239fe5e51b7Smrg UNAME_MACHINE="alpha" ;; 240fe5e51b7Smrg "EV5 (21164)") 241fe5e51b7Smrg UNAME_MACHINE="alphaev5" ;; 242fe5e51b7Smrg "EV5.6 (21164A)") 243fe5e51b7Smrg UNAME_MACHINE="alphaev56" ;; 244fe5e51b7Smrg "EV5.6 (21164PC)") 245fe5e51b7Smrg UNAME_MACHINE="alphapca56" ;; 246fe5e51b7Smrg "EV5.7 (21164PC)") 247fe5e51b7Smrg UNAME_MACHINE="alphapca57" ;; 248fe5e51b7Smrg "EV6 (21264)") 249fe5e51b7Smrg UNAME_MACHINE="alphaev6" ;; 250fe5e51b7Smrg "EV6.7 (21264A)") 251fe5e51b7Smrg UNAME_MACHINE="alphaev67" ;; 252fe5e51b7Smrg "EV6.8CB (21264C)") 253fe5e51b7Smrg UNAME_MACHINE="alphaev68" ;; 254fe5e51b7Smrg "EV6.8AL (21264B)") 255fe5e51b7Smrg UNAME_MACHINE="alphaev68" ;; 256fe5e51b7Smrg "EV6.8CX (21264D)") 257fe5e51b7Smrg UNAME_MACHINE="alphaev68" ;; 258fe5e51b7Smrg "EV6.9A (21264/EV69A)") 259fe5e51b7Smrg UNAME_MACHINE="alphaev69" ;; 260fe5e51b7Smrg "EV7 (21364)") 261fe5e51b7Smrg UNAME_MACHINE="alphaev7" ;; 262fe5e51b7Smrg "EV7.9 (21364A)") 263fe5e51b7Smrg UNAME_MACHINE="alphaev79" ;; 264fe5e51b7Smrg esac 265fe5e51b7Smrg # A Pn.n version is a patched version. 266fe5e51b7Smrg # A Vn.n version is a released version. 267fe5e51b7Smrg # A Tn.n version is a released field test version. 268fe5e51b7Smrg # A Xn.n version is an unreleased experimental baselevel. 269fe5e51b7Smrg # 1.2 uses "1.2" for uname -r. 270fe5e51b7Smrg echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 2710bb88ba4Smrg # Reset EXIT trap before exiting to avoid spurious non-zero exit code. 2720bb88ba4Smrg exitcode=$? 2730bb88ba4Smrg trap '' 0 2740bb88ba4Smrg exit $exitcode ;; 275fe5e51b7Smrg Alpha\ *:Windows_NT*:*) 276fe5e51b7Smrg # How do we know it's Interix rather than the generic POSIX subsystem? 277fe5e51b7Smrg # Should we change UNAME_MACHINE based on the output of uname instead 278fe5e51b7Smrg # of the specific Alpha model? 279fe5e51b7Smrg echo alpha-pc-interix 280fe5e51b7Smrg exit ;; 281fe5e51b7Smrg 21064:Windows_NT:50:3) 282fe5e51b7Smrg echo alpha-dec-winnt3.5 283fe5e51b7Smrg exit ;; 284fe5e51b7Smrg Amiga*:UNIX_System_V:4.0:*) 285fe5e51b7Smrg echo m68k-unknown-sysv4 286fe5e51b7Smrg exit ;; 287fe5e51b7Smrg *:[Aa]miga[Oo][Ss]:*:*) 288fe5e51b7Smrg echo ${UNAME_MACHINE}-unknown-amigaos 289fe5e51b7Smrg exit ;; 290fe5e51b7Smrg *:[Mm]orph[Oo][Ss]:*:*) 291fe5e51b7Smrg echo ${UNAME_MACHINE}-unknown-morphos 292fe5e51b7Smrg exit ;; 293fe5e51b7Smrg *:OS/390:*:*) 294fe5e51b7Smrg echo i370-ibm-openedition 295fe5e51b7Smrg exit ;; 296fe5e51b7Smrg *:z/VM:*:*) 297fe5e51b7Smrg echo s390-ibm-zvmoe 298fe5e51b7Smrg exit ;; 299fe5e51b7Smrg *:OS400:*:*) 3000bb88ba4Smrg echo powerpc-ibm-os400 301fe5e51b7Smrg exit ;; 302fe5e51b7Smrg arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 303fe5e51b7Smrg echo arm-acorn-riscix${UNAME_RELEASE} 304fe5e51b7Smrg exit ;; 305fe5e51b7Smrg arm:riscos:*:*|arm:RISCOS:*:*) 306fe5e51b7Smrg echo arm-unknown-riscos 307fe5e51b7Smrg exit ;; 308fe5e51b7Smrg SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 309fe5e51b7Smrg echo hppa1.1-hitachi-hiuxmpp 310fe5e51b7Smrg exit ;; 311fe5e51b7Smrg Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 312fe5e51b7Smrg # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 313fe5e51b7Smrg if test "`(/bin/universe) 2>/dev/null`" = att ; then 314fe5e51b7Smrg echo pyramid-pyramid-sysv3 315fe5e51b7Smrg else 316fe5e51b7Smrg echo pyramid-pyramid-bsd 317fe5e51b7Smrg fi 318fe5e51b7Smrg exit ;; 319fe5e51b7Smrg NILE*:*:*:dcosx) 320fe5e51b7Smrg echo pyramid-pyramid-svr4 321fe5e51b7Smrg exit ;; 322fe5e51b7Smrg DRS?6000:unix:4.0:6*) 323fe5e51b7Smrg echo sparc-icl-nx6 324fe5e51b7Smrg exit ;; 325fe5e51b7Smrg DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 326fe5e51b7Smrg case `/usr/bin/uname -p` in 327fe5e51b7Smrg sparc) echo sparc-icl-nx7; exit ;; 328fe5e51b7Smrg esac ;; 3290bb88ba4Smrg s390x:SunOS:*:*) 3300bb88ba4Smrg echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 3310bb88ba4Smrg exit ;; 332fe5e51b7Smrg sun4H:SunOS:5.*:*) 333fe5e51b7Smrg echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 334fe5e51b7Smrg exit ;; 335fe5e51b7Smrg sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 336fe5e51b7Smrg echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 337fe5e51b7Smrg exit ;; 3380bb88ba4Smrg i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) 3390bb88ba4Smrg echo i386-pc-auroraux${UNAME_RELEASE} 3400bb88ba4Smrg exit ;; 341eda3803bSmrg i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) 342a31a186aSmrg eval $set_cc_for_build 343a31a186aSmrg SUN_ARCH="i386" 344a31a186aSmrg # If there is a compiler, see if it is configured for 64-bit objects. 345a31a186aSmrg # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. 346a31a186aSmrg # This test works for both compilers. 347a31a186aSmrg if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 3480bb88ba4Smrg if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ 349a31a186aSmrg (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 350a31a186aSmrg grep IS_64BIT_ARCH >/dev/null 351a31a186aSmrg then 352a31a186aSmrg SUN_ARCH="x86_64" 353a31a186aSmrg fi 354a31a186aSmrg fi 355a31a186aSmrg echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 356fe5e51b7Smrg exit ;; 357fe5e51b7Smrg sun4*:SunOS:6*:*) 358fe5e51b7Smrg # According to config.sub, this is the proper way to canonicalize 359fe5e51b7Smrg # SunOS6. Hard to guess exactly what SunOS6 will be like, but 360fe5e51b7Smrg # it's likely to be more like Solaris than SunOS4. 361fe5e51b7Smrg echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 362fe5e51b7Smrg exit ;; 363fe5e51b7Smrg sun4*:SunOS:*:*) 364fe5e51b7Smrg case "`/usr/bin/arch -k`" in 365fe5e51b7Smrg Series*|S4*) 366fe5e51b7Smrg UNAME_RELEASE=`uname -v` 367fe5e51b7Smrg ;; 368fe5e51b7Smrg esac 369fe5e51b7Smrg # Japanese Language versions have a version number like `4.1.3-JL'. 370fe5e51b7Smrg echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 371fe5e51b7Smrg exit ;; 372fe5e51b7Smrg sun3*:SunOS:*:*) 373fe5e51b7Smrg echo m68k-sun-sunos${UNAME_RELEASE} 374fe5e51b7Smrg exit ;; 375fe5e51b7Smrg sun*:*:4.2BSD:*) 376fe5e51b7Smrg UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 377fe5e51b7Smrg test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 378fe5e51b7Smrg case "`/bin/arch`" in 379fe5e51b7Smrg sun3) 380fe5e51b7Smrg echo m68k-sun-sunos${UNAME_RELEASE} 381fe5e51b7Smrg ;; 382fe5e51b7Smrg sun4) 383fe5e51b7Smrg echo sparc-sun-sunos${UNAME_RELEASE} 384fe5e51b7Smrg ;; 385fe5e51b7Smrg esac 386fe5e51b7Smrg exit ;; 387fe5e51b7Smrg aushp:SunOS:*:*) 388fe5e51b7Smrg echo sparc-auspex-sunos${UNAME_RELEASE} 389fe5e51b7Smrg exit ;; 390fe5e51b7Smrg # The situation for MiNT is a little confusing. The machine name 391fe5e51b7Smrg # can be virtually everything (everything which is not 392fe5e51b7Smrg # "atarist" or "atariste" at least should have a processor 393fe5e51b7Smrg # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 394fe5e51b7Smrg # to the lowercase version "mint" (or "freemint"). Finally 395fe5e51b7Smrg # the system name "TOS" denotes a system which is actually not 396fe5e51b7Smrg # MiNT. But MiNT is downward compatible to TOS, so this should 397fe5e51b7Smrg # be no problem. 398fe5e51b7Smrg atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 3990bb88ba4Smrg echo m68k-atari-mint${UNAME_RELEASE} 400fe5e51b7Smrg exit ;; 401fe5e51b7Smrg atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 402fe5e51b7Smrg echo m68k-atari-mint${UNAME_RELEASE} 4030bb88ba4Smrg exit ;; 404fe5e51b7Smrg *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 4050bb88ba4Smrg echo m68k-atari-mint${UNAME_RELEASE} 406fe5e51b7Smrg exit ;; 407fe5e51b7Smrg milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 4080bb88ba4Smrg echo m68k-milan-mint${UNAME_RELEASE} 4090bb88ba4Smrg exit ;; 410fe5e51b7Smrg hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 4110bb88ba4Smrg echo m68k-hades-mint${UNAME_RELEASE} 4120bb88ba4Smrg exit ;; 413fe5e51b7Smrg *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 4140bb88ba4Smrg echo m68k-unknown-mint${UNAME_RELEASE} 4150bb88ba4Smrg exit ;; 416fe5e51b7Smrg m68k:machten:*:*) 417fe5e51b7Smrg echo m68k-apple-machten${UNAME_RELEASE} 418fe5e51b7Smrg exit ;; 419fe5e51b7Smrg powerpc:machten:*:*) 420fe5e51b7Smrg echo powerpc-apple-machten${UNAME_RELEASE} 421fe5e51b7Smrg exit ;; 422fe5e51b7Smrg RISC*:Mach:*:*) 423fe5e51b7Smrg echo mips-dec-mach_bsd4.3 424fe5e51b7Smrg exit ;; 425fe5e51b7Smrg RISC*:ULTRIX:*:*) 426fe5e51b7Smrg echo mips-dec-ultrix${UNAME_RELEASE} 427fe5e51b7Smrg exit ;; 428fe5e51b7Smrg VAX*:ULTRIX*:*:*) 429fe5e51b7Smrg echo vax-dec-ultrix${UNAME_RELEASE} 430fe5e51b7Smrg exit ;; 431fe5e51b7Smrg 2020:CLIX:*:* | 2430:CLIX:*:*) 432fe5e51b7Smrg echo clipper-intergraph-clix${UNAME_RELEASE} 433fe5e51b7Smrg exit ;; 434fe5e51b7Smrg mips:*:*:UMIPS | mips:*:*:RISCos) 435fe5e51b7Smrg eval $set_cc_for_build 436fe5e51b7Smrg sed 's/^ //' << EOF >$dummy.c 437fe5e51b7Smrg#ifdef __cplusplus 438fe5e51b7Smrg#include <stdio.h> /* for printf() prototype */ 439fe5e51b7Smrg int main (int argc, char *argv[]) { 440fe5e51b7Smrg#else 441fe5e51b7Smrg int main (argc, argv) int argc; char *argv[]; { 442fe5e51b7Smrg#endif 443fe5e51b7Smrg #if defined (host_mips) && defined (MIPSEB) 444fe5e51b7Smrg #if defined (SYSTYPE_SYSV) 445fe5e51b7Smrg printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 446fe5e51b7Smrg #endif 447fe5e51b7Smrg #if defined (SYSTYPE_SVR4) 448fe5e51b7Smrg printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 449fe5e51b7Smrg #endif 450fe5e51b7Smrg #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 451fe5e51b7Smrg printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 452fe5e51b7Smrg #endif 453fe5e51b7Smrg #endif 454fe5e51b7Smrg exit (-1); 455fe5e51b7Smrg } 456fe5e51b7SmrgEOF 457fe5e51b7Smrg $CC_FOR_BUILD -o $dummy $dummy.c && 458fe5e51b7Smrg dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 459fe5e51b7Smrg SYSTEM_NAME=`$dummy $dummyarg` && 460fe5e51b7Smrg { echo "$SYSTEM_NAME"; exit; } 461fe5e51b7Smrg echo mips-mips-riscos${UNAME_RELEASE} 462fe5e51b7Smrg exit ;; 463fe5e51b7Smrg Motorola:PowerMAX_OS:*:*) 464fe5e51b7Smrg echo powerpc-motorola-powermax 465fe5e51b7Smrg exit ;; 466fe5e51b7Smrg Motorola:*:4.3:PL8-*) 467fe5e51b7Smrg echo powerpc-harris-powermax 468fe5e51b7Smrg exit ;; 469fe5e51b7Smrg Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 470fe5e51b7Smrg echo powerpc-harris-powermax 471fe5e51b7Smrg exit ;; 472fe5e51b7Smrg Night_Hawk:Power_UNIX:*:*) 473fe5e51b7Smrg echo powerpc-harris-powerunix 474fe5e51b7Smrg exit ;; 475fe5e51b7Smrg m88k:CX/UX:7*:*) 476fe5e51b7Smrg echo m88k-harris-cxux7 477fe5e51b7Smrg exit ;; 478fe5e51b7Smrg m88k:*:4*:R4*) 479fe5e51b7Smrg echo m88k-motorola-sysv4 480fe5e51b7Smrg exit ;; 481fe5e51b7Smrg m88k:*:3*:R3*) 482fe5e51b7Smrg echo m88k-motorola-sysv3 483fe5e51b7Smrg exit ;; 484fe5e51b7Smrg AViiON:dgux:*:*) 4850bb88ba4Smrg # DG/UX returns AViiON for all architectures 4860bb88ba4Smrg UNAME_PROCESSOR=`/usr/bin/uname -p` 487fe5e51b7Smrg if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 488fe5e51b7Smrg then 489fe5e51b7Smrg if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 490fe5e51b7Smrg [ ${TARGET_BINARY_INTERFACE}x = x ] 491fe5e51b7Smrg then 492fe5e51b7Smrg echo m88k-dg-dgux${UNAME_RELEASE} 493fe5e51b7Smrg else 494fe5e51b7Smrg echo m88k-dg-dguxbcs${UNAME_RELEASE} 495fe5e51b7Smrg fi 496fe5e51b7Smrg else 497fe5e51b7Smrg echo i586-dg-dgux${UNAME_RELEASE} 498fe5e51b7Smrg fi 4990bb88ba4Smrg exit ;; 500fe5e51b7Smrg M88*:DolphinOS:*:*) # DolphinOS (SVR3) 501fe5e51b7Smrg echo m88k-dolphin-sysv3 502fe5e51b7Smrg exit ;; 503fe5e51b7Smrg M88*:*:R3*:*) 504fe5e51b7Smrg # Delta 88k system running SVR3 505fe5e51b7Smrg echo m88k-motorola-sysv3 506fe5e51b7Smrg exit ;; 507fe5e51b7Smrg XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 508fe5e51b7Smrg echo m88k-tektronix-sysv3 509fe5e51b7Smrg exit ;; 510fe5e51b7Smrg Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 511fe5e51b7Smrg echo m68k-tektronix-bsd 512fe5e51b7Smrg exit ;; 513fe5e51b7Smrg *:IRIX*:*:*) 514fe5e51b7Smrg echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 515fe5e51b7Smrg exit ;; 516fe5e51b7Smrg ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 517fe5e51b7Smrg echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 518fe5e51b7Smrg exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 519fe5e51b7Smrg i*86:AIX:*:*) 520fe5e51b7Smrg echo i386-ibm-aix 521fe5e51b7Smrg exit ;; 522fe5e51b7Smrg ia64:AIX:*:*) 523fe5e51b7Smrg if [ -x /usr/bin/oslevel ] ; then 524fe5e51b7Smrg IBM_REV=`/usr/bin/oslevel` 525fe5e51b7Smrg else 526fe5e51b7Smrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 527fe5e51b7Smrg fi 528fe5e51b7Smrg echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 529fe5e51b7Smrg exit ;; 530fe5e51b7Smrg *:AIX:2:3) 531fe5e51b7Smrg if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 532fe5e51b7Smrg eval $set_cc_for_build 533fe5e51b7Smrg sed 's/^ //' << EOF >$dummy.c 534fe5e51b7Smrg #include <sys/systemcfg.h> 535fe5e51b7Smrg 536fe5e51b7Smrg main() 537fe5e51b7Smrg { 538fe5e51b7Smrg if (!__power_pc()) 539fe5e51b7Smrg exit(1); 540fe5e51b7Smrg puts("powerpc-ibm-aix3.2.5"); 541fe5e51b7Smrg exit(0); 542fe5e51b7Smrg } 543fe5e51b7SmrgEOF 544fe5e51b7Smrg if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 545fe5e51b7Smrg then 546fe5e51b7Smrg echo "$SYSTEM_NAME" 547fe5e51b7Smrg else 548fe5e51b7Smrg echo rs6000-ibm-aix3.2.5 549fe5e51b7Smrg fi 550fe5e51b7Smrg elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 551fe5e51b7Smrg echo rs6000-ibm-aix3.2.4 552fe5e51b7Smrg else 553fe5e51b7Smrg echo rs6000-ibm-aix3.2 554fe5e51b7Smrg fi 555fe5e51b7Smrg exit ;; 5560bb88ba4Smrg *:AIX:*:[4567]) 557fe5e51b7Smrg IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 558fe5e51b7Smrg if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 559fe5e51b7Smrg IBM_ARCH=rs6000 560fe5e51b7Smrg else 561fe5e51b7Smrg IBM_ARCH=powerpc 562fe5e51b7Smrg fi 563fe5e51b7Smrg if [ -x /usr/bin/oslevel ] ; then 564fe5e51b7Smrg IBM_REV=`/usr/bin/oslevel` 565fe5e51b7Smrg else 566fe5e51b7Smrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 567fe5e51b7Smrg fi 568fe5e51b7Smrg echo ${IBM_ARCH}-ibm-aix${IBM_REV} 569fe5e51b7Smrg exit ;; 570fe5e51b7Smrg *:AIX:*:*) 571fe5e51b7Smrg echo rs6000-ibm-aix 572fe5e51b7Smrg exit ;; 573fe5e51b7Smrg ibmrt:4.4BSD:*|romp-ibm:BSD:*) 574fe5e51b7Smrg echo romp-ibm-bsd4.4 575fe5e51b7Smrg exit ;; 576fe5e51b7Smrg ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 577fe5e51b7Smrg echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 578fe5e51b7Smrg exit ;; # report: romp-ibm BSD 4.3 579fe5e51b7Smrg *:BOSX:*:*) 580fe5e51b7Smrg echo rs6000-bull-bosx 581fe5e51b7Smrg exit ;; 582fe5e51b7Smrg DPX/2?00:B.O.S.:*:*) 583fe5e51b7Smrg echo m68k-bull-sysv3 584fe5e51b7Smrg exit ;; 585fe5e51b7Smrg 9000/[34]??:4.3bsd:1.*:*) 586fe5e51b7Smrg echo m68k-hp-bsd 587fe5e51b7Smrg exit ;; 588fe5e51b7Smrg hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 589fe5e51b7Smrg echo m68k-hp-bsd4.4 590fe5e51b7Smrg exit ;; 591fe5e51b7Smrg 9000/[34678]??:HP-UX:*:*) 592fe5e51b7Smrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 593fe5e51b7Smrg case "${UNAME_MACHINE}" in 594fe5e51b7Smrg 9000/31? ) HP_ARCH=m68000 ;; 595fe5e51b7Smrg 9000/[34]?? ) HP_ARCH=m68k ;; 596fe5e51b7Smrg 9000/[678][0-9][0-9]) 597fe5e51b7Smrg if [ -x /usr/bin/getconf ]; then 598fe5e51b7Smrg sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 5990bb88ba4Smrg sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 6000bb88ba4Smrg case "${sc_cpu_version}" in 6010bb88ba4Smrg 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 6020bb88ba4Smrg 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 6030bb88ba4Smrg 532) # CPU_PA_RISC2_0 6040bb88ba4Smrg case "${sc_kernel_bits}" in 6050bb88ba4Smrg 32) HP_ARCH="hppa2.0n" ;; 6060bb88ba4Smrg 64) HP_ARCH="hppa2.0w" ;; 607fe5e51b7Smrg '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 6080bb88ba4Smrg esac ;; 6090bb88ba4Smrg esac 610fe5e51b7Smrg fi 611fe5e51b7Smrg if [ "${HP_ARCH}" = "" ]; then 612fe5e51b7Smrg eval $set_cc_for_build 6130bb88ba4Smrg sed 's/^ //' << EOF >$dummy.c 614fe5e51b7Smrg 6150bb88ba4Smrg #define _HPUX_SOURCE 6160bb88ba4Smrg #include <stdlib.h> 6170bb88ba4Smrg #include <unistd.h> 618fe5e51b7Smrg 6190bb88ba4Smrg int main () 6200bb88ba4Smrg { 6210bb88ba4Smrg #if defined(_SC_KERNEL_BITS) 6220bb88ba4Smrg long bits = sysconf(_SC_KERNEL_BITS); 6230bb88ba4Smrg #endif 6240bb88ba4Smrg long cpu = sysconf (_SC_CPU_VERSION); 625fe5e51b7Smrg 6260bb88ba4Smrg switch (cpu) 6270bb88ba4Smrg { 6280bb88ba4Smrg case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 6290bb88ba4Smrg case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 6300bb88ba4Smrg case CPU_PA_RISC2_0: 6310bb88ba4Smrg #if defined(_SC_KERNEL_BITS) 6320bb88ba4Smrg switch (bits) 6330bb88ba4Smrg { 6340bb88ba4Smrg case 64: puts ("hppa2.0w"); break; 6350bb88ba4Smrg case 32: puts ("hppa2.0n"); break; 6360bb88ba4Smrg default: puts ("hppa2.0"); break; 6370bb88ba4Smrg } break; 6380bb88ba4Smrg #else /* !defined(_SC_KERNEL_BITS) */ 6390bb88ba4Smrg puts ("hppa2.0"); break; 6400bb88ba4Smrg #endif 6410bb88ba4Smrg default: puts ("hppa1.0"); break; 6420bb88ba4Smrg } 6430bb88ba4Smrg exit (0); 6440bb88ba4Smrg } 645fe5e51b7SmrgEOF 646fe5e51b7Smrg (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 647fe5e51b7Smrg test -z "$HP_ARCH" && HP_ARCH=hppa 648fe5e51b7Smrg fi ;; 649fe5e51b7Smrg esac 650fe5e51b7Smrg if [ ${HP_ARCH} = "hppa2.0w" ] 651fe5e51b7Smrg then 652fe5e51b7Smrg eval $set_cc_for_build 653fe5e51b7Smrg 654fe5e51b7Smrg # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 655fe5e51b7Smrg # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 656fe5e51b7Smrg # generating 64-bit code. GNU and HP use different nomenclature: 657fe5e51b7Smrg # 658fe5e51b7Smrg # $ CC_FOR_BUILD=cc ./config.guess 659fe5e51b7Smrg # => hppa2.0w-hp-hpux11.23 660fe5e51b7Smrg # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 661fe5e51b7Smrg # => hppa64-hp-hpux11.23 662fe5e51b7Smrg 663fe5e51b7Smrg if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | 6640bb88ba4Smrg grep -q __LP64__ 665fe5e51b7Smrg then 666fe5e51b7Smrg HP_ARCH="hppa2.0w" 667fe5e51b7Smrg else 668fe5e51b7Smrg HP_ARCH="hppa64" 669fe5e51b7Smrg fi 670fe5e51b7Smrg fi 671fe5e51b7Smrg echo ${HP_ARCH}-hp-hpux${HPUX_REV} 672fe5e51b7Smrg exit ;; 673fe5e51b7Smrg ia64:HP-UX:*:*) 674fe5e51b7Smrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 675fe5e51b7Smrg echo ia64-hp-hpux${HPUX_REV} 676fe5e51b7Smrg exit ;; 677fe5e51b7Smrg 3050*:HI-UX:*:*) 678fe5e51b7Smrg eval $set_cc_for_build 679fe5e51b7Smrg sed 's/^ //' << EOF >$dummy.c 680fe5e51b7Smrg #include <unistd.h> 681fe5e51b7Smrg int 682fe5e51b7Smrg main () 683fe5e51b7Smrg { 684fe5e51b7Smrg long cpu = sysconf (_SC_CPU_VERSION); 685fe5e51b7Smrg /* The order matters, because CPU_IS_HP_MC68K erroneously returns 686fe5e51b7Smrg true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 687fe5e51b7Smrg results, however. */ 688fe5e51b7Smrg if (CPU_IS_PA_RISC (cpu)) 689fe5e51b7Smrg { 690fe5e51b7Smrg switch (cpu) 691fe5e51b7Smrg { 692fe5e51b7Smrg case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 693fe5e51b7Smrg case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 694fe5e51b7Smrg case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 695fe5e51b7Smrg default: puts ("hppa-hitachi-hiuxwe2"); break; 696fe5e51b7Smrg } 697fe5e51b7Smrg } 698fe5e51b7Smrg else if (CPU_IS_HP_MC68K (cpu)) 699fe5e51b7Smrg puts ("m68k-hitachi-hiuxwe2"); 700fe5e51b7Smrg else puts ("unknown-hitachi-hiuxwe2"); 701fe5e51b7Smrg exit (0); 702fe5e51b7Smrg } 703fe5e51b7SmrgEOF 704fe5e51b7Smrg $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 705fe5e51b7Smrg { echo "$SYSTEM_NAME"; exit; } 706fe5e51b7Smrg echo unknown-hitachi-hiuxwe2 707fe5e51b7Smrg exit ;; 708fe5e51b7Smrg 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 709fe5e51b7Smrg echo hppa1.1-hp-bsd 710fe5e51b7Smrg exit ;; 711fe5e51b7Smrg 9000/8??:4.3bsd:*:*) 712fe5e51b7Smrg echo hppa1.0-hp-bsd 713fe5e51b7Smrg exit ;; 714fe5e51b7Smrg *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 715fe5e51b7Smrg echo hppa1.0-hp-mpeix 716fe5e51b7Smrg exit ;; 717fe5e51b7Smrg hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 718fe5e51b7Smrg echo hppa1.1-hp-osf 719fe5e51b7Smrg exit ;; 720fe5e51b7Smrg hp8??:OSF1:*:*) 721fe5e51b7Smrg echo hppa1.0-hp-osf 722fe5e51b7Smrg exit ;; 723fe5e51b7Smrg i*86:OSF1:*:*) 724fe5e51b7Smrg if [ -x /usr/sbin/sysversion ] ; then 725fe5e51b7Smrg echo ${UNAME_MACHINE}-unknown-osf1mk 726fe5e51b7Smrg else 727fe5e51b7Smrg echo ${UNAME_MACHINE}-unknown-osf1 728fe5e51b7Smrg fi 729fe5e51b7Smrg exit ;; 730fe5e51b7Smrg parisc*:Lites*:*:*) 731fe5e51b7Smrg echo hppa1.1-hp-lites 732fe5e51b7Smrg exit ;; 733fe5e51b7Smrg C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 734fe5e51b7Smrg echo c1-convex-bsd 7350bb88ba4Smrg exit ;; 736fe5e51b7Smrg C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 737fe5e51b7Smrg if getsysinfo -f scalar_acc 738fe5e51b7Smrg then echo c32-convex-bsd 739fe5e51b7Smrg else echo c2-convex-bsd 740fe5e51b7Smrg fi 7410bb88ba4Smrg exit ;; 742fe5e51b7Smrg C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 743fe5e51b7Smrg echo c34-convex-bsd 7440bb88ba4Smrg exit ;; 745fe5e51b7Smrg C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 746fe5e51b7Smrg echo c38-convex-bsd 7470bb88ba4Smrg exit ;; 748fe5e51b7Smrg C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 749fe5e51b7Smrg echo c4-convex-bsd 7500bb88ba4Smrg exit ;; 751fe5e51b7Smrg CRAY*Y-MP:*:*:*) 752fe5e51b7Smrg echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 753fe5e51b7Smrg exit ;; 754fe5e51b7Smrg CRAY*[A-Z]90:*:*:*) 755fe5e51b7Smrg echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 756fe5e51b7Smrg | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 757fe5e51b7Smrg -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 758fe5e51b7Smrg -e 's/\.[^.]*$/.X/' 759fe5e51b7Smrg exit ;; 760fe5e51b7Smrg CRAY*TS:*:*:*) 761fe5e51b7Smrg echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 762fe5e51b7Smrg exit ;; 763fe5e51b7Smrg CRAY*T3E:*:*:*) 764fe5e51b7Smrg echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 765fe5e51b7Smrg exit ;; 766fe5e51b7Smrg CRAY*SV1:*:*:*) 767fe5e51b7Smrg echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 768fe5e51b7Smrg exit ;; 769fe5e51b7Smrg *:UNICOS/mp:*:*) 770fe5e51b7Smrg echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 771fe5e51b7Smrg exit ;; 772fe5e51b7Smrg F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 773fe5e51b7Smrg FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 7740bb88ba4Smrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 7750bb88ba4Smrg FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 7760bb88ba4Smrg echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 7770bb88ba4Smrg exit ;; 778fe5e51b7Smrg 5000:UNIX_System_V:4.*:*) 7790bb88ba4Smrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 7800bb88ba4Smrg FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` 7810bb88ba4Smrg echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 782fe5e51b7Smrg exit ;; 783fe5e51b7Smrg i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 784fe5e51b7Smrg echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 785fe5e51b7Smrg exit ;; 786fe5e51b7Smrg sparc*:BSD/OS:*:*) 787fe5e51b7Smrg echo sparc-unknown-bsdi${UNAME_RELEASE} 788fe5e51b7Smrg exit ;; 789fe5e51b7Smrg *:BSD/OS:*:*) 790fe5e51b7Smrg echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 791fe5e51b7Smrg exit ;; 792fe5e51b7Smrg *:FreeBSD:*:*) 7930bb88ba4Smrg UNAME_PROCESSOR=`/usr/bin/uname -p` 7940bb88ba4Smrg case ${UNAME_PROCESSOR} in 795fe5e51b7Smrg amd64) 796fe5e51b7Smrg echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 797fe5e51b7Smrg *) 7980bb88ba4Smrg echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 799fe5e51b7Smrg esac 800fe5e51b7Smrg exit ;; 801fe5e51b7Smrg i*:CYGWIN*:*) 802fe5e51b7Smrg echo ${UNAME_MACHINE}-pc-cygwin 803fe5e51b7Smrg exit ;; 804fe5e51b7Smrg *:MINGW*:*) 805fe5e51b7Smrg echo ${UNAME_MACHINE}-pc-mingw32 806fe5e51b7Smrg exit ;; 8070bb88ba4Smrg i*:MSYS*:*) 8080bb88ba4Smrg echo ${UNAME_MACHINE}-pc-msys 8090bb88ba4Smrg exit ;; 810fe5e51b7Smrg i*:windows32*:*) 8110bb88ba4Smrg # uname -m includes "-pc" on this system. 8120bb88ba4Smrg echo ${UNAME_MACHINE}-mingw32 813fe5e51b7Smrg exit ;; 814fe5e51b7Smrg i*:PW*:*) 815fe5e51b7Smrg echo ${UNAME_MACHINE}-pc-pw32 816fe5e51b7Smrg exit ;; 8170bb88ba4Smrg *:Interix*:*) 8180bb88ba4Smrg case ${UNAME_MACHINE} in 819eda3803bSmrg x86) 820fe5e51b7Smrg echo i586-pc-interix${UNAME_RELEASE} 821fe5e51b7Smrg exit ;; 8220bb88ba4Smrg authenticamd | genuineintel | EM64T) 823fe5e51b7Smrg echo x86_64-unknown-interix${UNAME_RELEASE} 824fe5e51b7Smrg exit ;; 825eda3803bSmrg IA64) 826eda3803bSmrg echo ia64-unknown-interix${UNAME_RELEASE} 827eda3803bSmrg exit ;; 828fe5e51b7Smrg esac ;; 829fe5e51b7Smrg [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 830fe5e51b7Smrg echo i${UNAME_MACHINE}-pc-mks 831fe5e51b7Smrg exit ;; 8320bb88ba4Smrg 8664:Windows_NT:*) 8330bb88ba4Smrg echo x86_64-pc-mks 8340bb88ba4Smrg exit ;; 835fe5e51b7Smrg i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 836fe5e51b7Smrg # How do we know it's Interix rather than the generic POSIX subsystem? 837fe5e51b7Smrg # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 838fe5e51b7Smrg # UNAME_MACHINE based on the output of uname instead of i386? 839fe5e51b7Smrg echo i586-pc-interix 840fe5e51b7Smrg exit ;; 841fe5e51b7Smrg i*:UWIN*:*) 842fe5e51b7Smrg echo ${UNAME_MACHINE}-pc-uwin 843fe5e51b7Smrg exit ;; 844fe5e51b7Smrg amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 845fe5e51b7Smrg echo x86_64-unknown-cygwin 846fe5e51b7Smrg exit ;; 847fe5e51b7Smrg p*:CYGWIN*:*) 848fe5e51b7Smrg echo powerpcle-unknown-cygwin 849fe5e51b7Smrg exit ;; 850fe5e51b7Smrg prep*:SunOS:5.*:*) 851fe5e51b7Smrg echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 852fe5e51b7Smrg exit ;; 853fe5e51b7Smrg *:GNU:*:*) 854fe5e51b7Smrg # the GNU system 855fe5e51b7Smrg echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 856fe5e51b7Smrg exit ;; 857fe5e51b7Smrg *:GNU/*:*:*) 858fe5e51b7Smrg # other systems with GNU libc and userland 859fe5e51b7Smrg echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu 860fe5e51b7Smrg exit ;; 861fe5e51b7Smrg i*86:Minix:*:*) 862fe5e51b7Smrg echo ${UNAME_MACHINE}-pc-minix 863fe5e51b7Smrg exit ;; 864acd6767fSmrg aarch64:Linux:*:*) 865acd6767fSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 866acd6767fSmrg exit ;; 867acd6767fSmrg aarch64_be:Linux:*:*) 868acd6767fSmrg UNAME_MACHINE=aarch64_be 869acd6767fSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 870acd6767fSmrg exit ;; 8710bb88ba4Smrg alpha:Linux:*:*) 8720bb88ba4Smrg case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 8730bb88ba4Smrg EV5) UNAME_MACHINE=alphaev5 ;; 8740bb88ba4Smrg EV56) UNAME_MACHINE=alphaev56 ;; 8750bb88ba4Smrg PCA56) UNAME_MACHINE=alphapca56 ;; 8760bb88ba4Smrg PCA57) UNAME_MACHINE=alphapca56 ;; 8770bb88ba4Smrg EV6) UNAME_MACHINE=alphaev6 ;; 8780bb88ba4Smrg EV67) UNAME_MACHINE=alphaev67 ;; 8790bb88ba4Smrg EV68*) UNAME_MACHINE=alphaev68 ;; 8800bb88ba4Smrg esac 8810bb88ba4Smrg objdump --private-headers /bin/sh | grep -q ld.so.1 8820bb88ba4Smrg if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi 8830bb88ba4Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 8840bb88ba4Smrg exit ;; 885fe5e51b7Smrg arm*:Linux:*:*) 886eda3803bSmrg eval $set_cc_for_build 887eda3803bSmrg if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ 888eda3803bSmrg | grep -q __ARM_EABI__ 889eda3803bSmrg then 890eda3803bSmrg echo ${UNAME_MACHINE}-unknown-linux-gnu 891eda3803bSmrg else 8920bb88ba4Smrg if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ 8930bb88ba4Smrg | grep -q __ARM_PCS_VFP 8940bb88ba4Smrg then 8950bb88ba4Smrg echo ${UNAME_MACHINE}-unknown-linux-gnueabi 8960bb88ba4Smrg else 8970bb88ba4Smrg echo ${UNAME_MACHINE}-unknown-linux-gnueabihf 8980bb88ba4Smrg fi 899eda3803bSmrg fi 900fe5e51b7Smrg exit ;; 901fe5e51b7Smrg avr32*:Linux:*:*) 902fe5e51b7Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 903fe5e51b7Smrg exit ;; 904fe5e51b7Smrg cris:Linux:*:*) 9050bb88ba4Smrg echo ${UNAME_MACHINE}-axis-linux-gnu 906fe5e51b7Smrg exit ;; 907fe5e51b7Smrg crisv32:Linux:*:*) 9080bb88ba4Smrg echo ${UNAME_MACHINE}-axis-linux-gnu 909fe5e51b7Smrg exit ;; 910fe5e51b7Smrg frv:Linux:*:*) 9110bb88ba4Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 9120bb88ba4Smrg exit ;; 9130bb88ba4Smrg hexagon:Linux:*:*) 9140bb88ba4Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 9150bb88ba4Smrg exit ;; 9160bb88ba4Smrg i*86:Linux:*:*) 9170bb88ba4Smrg LIBC=gnu 9180bb88ba4Smrg eval $set_cc_for_build 9190bb88ba4Smrg sed 's/^ //' << EOF >$dummy.c 9200bb88ba4Smrg #ifdef __dietlibc__ 9210bb88ba4Smrg LIBC=dietlibc 9220bb88ba4Smrg #endif 9230bb88ba4SmrgEOF 9240bb88ba4Smrg eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` 9250bb88ba4Smrg echo "${UNAME_MACHINE}-pc-linux-${LIBC}" 926fe5e51b7Smrg exit ;; 927fe5e51b7Smrg ia64:Linux:*:*) 928fe5e51b7Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 929fe5e51b7Smrg exit ;; 930fe5e51b7Smrg m32r*:Linux:*:*) 931fe5e51b7Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 932fe5e51b7Smrg exit ;; 933fe5e51b7Smrg m68*:Linux:*:*) 934fe5e51b7Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 935fe5e51b7Smrg exit ;; 9360bb88ba4Smrg mips:Linux:*:* | mips64:Linux:*:*) 937fe5e51b7Smrg eval $set_cc_for_build 938fe5e51b7Smrg sed 's/^ //' << EOF >$dummy.c 939fe5e51b7Smrg #undef CPU 9400bb88ba4Smrg #undef ${UNAME_MACHINE} 9410bb88ba4Smrg #undef ${UNAME_MACHINE}el 942fe5e51b7Smrg #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 9430bb88ba4Smrg CPU=${UNAME_MACHINE}el 944fe5e51b7Smrg #else 945fe5e51b7Smrg #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 9460bb88ba4Smrg CPU=${UNAME_MACHINE} 947fe5e51b7Smrg #else 948fe5e51b7Smrg CPU= 949fe5e51b7Smrg #endif 950fe5e51b7Smrg #endif 951fe5e51b7SmrgEOF 9520bb88ba4Smrg eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` 953fe5e51b7Smrg test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 954fe5e51b7Smrg ;; 955fe5e51b7Smrg or32:Linux:*:*) 9560bb88ba4Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 957fe5e51b7Smrg exit ;; 958a31a186aSmrg padre:Linux:*:*) 959a31a186aSmrg echo sparc-unknown-linux-gnu 960a31a186aSmrg exit ;; 9610bb88ba4Smrg parisc64:Linux:*:* | hppa64:Linux:*:*) 9620bb88ba4Smrg echo hppa64-unknown-linux-gnu 9630bb88ba4Smrg exit ;; 964fe5e51b7Smrg parisc:Linux:*:* | hppa:Linux:*:*) 965fe5e51b7Smrg # Look for CPU level 966fe5e51b7Smrg case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 967fe5e51b7Smrg PA7*) echo hppa1.1-unknown-linux-gnu ;; 968fe5e51b7Smrg PA8*) echo hppa2.0-unknown-linux-gnu ;; 969fe5e51b7Smrg *) echo hppa-unknown-linux-gnu ;; 970fe5e51b7Smrg esac 971fe5e51b7Smrg exit ;; 9720bb88ba4Smrg ppc64:Linux:*:*) 9730bb88ba4Smrg echo powerpc64-unknown-linux-gnu 9740bb88ba4Smrg exit ;; 9750bb88ba4Smrg ppc:Linux:*:*) 9760bb88ba4Smrg echo powerpc-unknown-linux-gnu 977fe5e51b7Smrg exit ;; 978fe5e51b7Smrg s390:Linux:*:* | s390x:Linux:*:*) 979fe5e51b7Smrg echo ${UNAME_MACHINE}-ibm-linux 980fe5e51b7Smrg exit ;; 981fe5e51b7Smrg sh64*:Linux:*:*) 9820bb88ba4Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 983fe5e51b7Smrg exit ;; 984fe5e51b7Smrg sh*:Linux:*:*) 985fe5e51b7Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 986fe5e51b7Smrg exit ;; 987fe5e51b7Smrg sparc:Linux:*:* | sparc64:Linux:*:*) 988fe5e51b7Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 989fe5e51b7Smrg exit ;; 9900bb88ba4Smrg tile*:Linux:*:*) 9910bb88ba4Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 9920bb88ba4Smrg exit ;; 993fe5e51b7Smrg vax:Linux:*:*) 994fe5e51b7Smrg echo ${UNAME_MACHINE}-dec-linux-gnu 995fe5e51b7Smrg exit ;; 996fe5e51b7Smrg x86_64:Linux:*:*) 9970bb88ba4Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 998fe5e51b7Smrg exit ;; 999eda3803bSmrg xtensa*:Linux:*:*) 10000bb88ba4Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 1001fe5e51b7Smrg exit ;; 1002fe5e51b7Smrg i*86:DYNIX/ptx:4*:*) 1003fe5e51b7Smrg # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 1004fe5e51b7Smrg # earlier versions are messed up and put the nodename in both 1005fe5e51b7Smrg # sysname and nodename. 1006fe5e51b7Smrg echo i386-sequent-sysv4 1007fe5e51b7Smrg exit ;; 1008fe5e51b7Smrg i*86:UNIX_SV:4.2MP:2.*) 10090bb88ba4Smrg # Unixware is an offshoot of SVR4, but it has its own version 10100bb88ba4Smrg # number series starting with 2... 10110bb88ba4Smrg # I am not positive that other SVR4 systems won't match this, 1012fe5e51b7Smrg # I just have to hope. -- rms. 10130bb88ba4Smrg # Use sysv4.2uw... so that sysv4* matches it. 1014fe5e51b7Smrg echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 1015fe5e51b7Smrg exit ;; 1016fe5e51b7Smrg i*86:OS/2:*:*) 1017fe5e51b7Smrg # If we were able to find `uname', then EMX Unix compatibility 1018fe5e51b7Smrg # is probably installed. 1019fe5e51b7Smrg echo ${UNAME_MACHINE}-pc-os2-emx 1020fe5e51b7Smrg exit ;; 1021fe5e51b7Smrg i*86:XTS-300:*:STOP) 1022fe5e51b7Smrg echo ${UNAME_MACHINE}-unknown-stop 1023fe5e51b7Smrg exit ;; 1024fe5e51b7Smrg i*86:atheos:*:*) 1025fe5e51b7Smrg echo ${UNAME_MACHINE}-unknown-atheos 1026fe5e51b7Smrg exit ;; 1027fe5e51b7Smrg i*86:syllable:*:*) 1028fe5e51b7Smrg echo ${UNAME_MACHINE}-pc-syllable 1029fe5e51b7Smrg exit ;; 10300bb88ba4Smrg i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) 1031fe5e51b7Smrg echo i386-unknown-lynxos${UNAME_RELEASE} 1032fe5e51b7Smrg exit ;; 1033fe5e51b7Smrg i*86:*DOS:*:*) 1034fe5e51b7Smrg echo ${UNAME_MACHINE}-pc-msdosdjgpp 1035fe5e51b7Smrg exit ;; 1036fe5e51b7Smrg i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 1037fe5e51b7Smrg UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 1038fe5e51b7Smrg if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 1039fe5e51b7Smrg echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 1040fe5e51b7Smrg else 1041fe5e51b7Smrg echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 1042fe5e51b7Smrg fi 1043fe5e51b7Smrg exit ;; 1044fe5e51b7Smrg i*86:*:5:[678]*) 10450bb88ba4Smrg # UnixWare 7.x, OpenUNIX and OpenServer 6. 1046fe5e51b7Smrg case `/bin/uname -X | grep "^Machine"` in 1047fe5e51b7Smrg *486*) UNAME_MACHINE=i486 ;; 1048fe5e51b7Smrg *Pentium) UNAME_MACHINE=i586 ;; 1049fe5e51b7Smrg *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 1050fe5e51b7Smrg esac 1051fe5e51b7Smrg echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 1052fe5e51b7Smrg exit ;; 1053fe5e51b7Smrg i*86:*:3.2:*) 1054fe5e51b7Smrg if test -f /usr/options/cb.name; then 1055fe5e51b7Smrg UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 1056fe5e51b7Smrg echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 1057fe5e51b7Smrg elif /bin/uname -X 2>/dev/null >/dev/null ; then 1058fe5e51b7Smrg UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 1059fe5e51b7Smrg (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 1060fe5e51b7Smrg (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 1061fe5e51b7Smrg && UNAME_MACHINE=i586 1062fe5e51b7Smrg (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 1063fe5e51b7Smrg && UNAME_MACHINE=i686 1064fe5e51b7Smrg (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 1065fe5e51b7Smrg && UNAME_MACHINE=i686 1066fe5e51b7Smrg echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 1067fe5e51b7Smrg else 1068fe5e51b7Smrg echo ${UNAME_MACHINE}-pc-sysv32 1069fe5e51b7Smrg fi 1070fe5e51b7Smrg exit ;; 1071fe5e51b7Smrg pc:*:*:*) 1072fe5e51b7Smrg # Left here for compatibility: 10730bb88ba4Smrg # uname -m prints for DJGPP always 'pc', but it prints nothing about 10740bb88ba4Smrg # the processor, so we play safe by assuming i586. 10750bb88ba4Smrg # Note: whatever this is, it MUST be the same as what config.sub 10760bb88ba4Smrg # prints for the "djgpp" host, or else GDB configury will decide that 10770bb88ba4Smrg # this is a cross-build. 10780bb88ba4Smrg echo i586-pc-msdosdjgpp 10790bb88ba4Smrg exit ;; 1080fe5e51b7Smrg Intel:Mach:3*:*) 1081fe5e51b7Smrg echo i386-pc-mach3 1082fe5e51b7Smrg exit ;; 1083fe5e51b7Smrg paragon:*:*:*) 1084fe5e51b7Smrg echo i860-intel-osf1 1085fe5e51b7Smrg exit ;; 1086fe5e51b7Smrg i860:*:4.*:*) # i860-SVR4 1087fe5e51b7Smrg if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 1088fe5e51b7Smrg echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 1089fe5e51b7Smrg else # Add other i860-SVR4 vendors below as they are discovered. 1090fe5e51b7Smrg echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 1091fe5e51b7Smrg fi 1092fe5e51b7Smrg exit ;; 1093fe5e51b7Smrg mini*:CTIX:SYS*5:*) 1094fe5e51b7Smrg # "miniframe" 1095fe5e51b7Smrg echo m68010-convergent-sysv 1096fe5e51b7Smrg exit ;; 1097fe5e51b7Smrg mc68k:UNIX:SYSTEM5:3.51m) 1098fe5e51b7Smrg echo m68k-convergent-sysv 1099fe5e51b7Smrg exit ;; 1100fe5e51b7Smrg M680?0:D-NIX:5.3:*) 1101fe5e51b7Smrg echo m68k-diab-dnix 1102fe5e51b7Smrg exit ;; 1103fe5e51b7Smrg M68*:*:R3V[5678]*:*) 1104fe5e51b7Smrg test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 1105fe5e51b7Smrg 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) 1106fe5e51b7Smrg OS_REL='' 1107fe5e51b7Smrg test -r /etc/.relid \ 1108fe5e51b7Smrg && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1109fe5e51b7Smrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1110fe5e51b7Smrg && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 1111fe5e51b7Smrg /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1112fe5e51b7Smrg && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1113fe5e51b7Smrg 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 11140bb88ba4Smrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 11150bb88ba4Smrg && { echo i486-ncr-sysv4; exit; } ;; 11160bb88ba4Smrg NCR*:*:4.2:* | MPRAS*:*:4.2:*) 11170bb88ba4Smrg OS_REL='.3' 11180bb88ba4Smrg test -r /etc/.relid \ 11190bb88ba4Smrg && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 11200bb88ba4Smrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 11210bb88ba4Smrg && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 11220bb88ba4Smrg /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 11230bb88ba4Smrg && { echo i586-ncr-sysv4.3${OS_REL}; exit; } 11240bb88ba4Smrg /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ 11250bb88ba4Smrg && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1126fe5e51b7Smrg m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 1127fe5e51b7Smrg echo m68k-unknown-lynxos${UNAME_RELEASE} 1128fe5e51b7Smrg exit ;; 1129fe5e51b7Smrg mc68030:UNIX_System_V:4.*:*) 1130fe5e51b7Smrg echo m68k-atari-sysv4 1131fe5e51b7Smrg exit ;; 1132fe5e51b7Smrg TSUNAMI:LynxOS:2.*:*) 1133fe5e51b7Smrg echo sparc-unknown-lynxos${UNAME_RELEASE} 1134fe5e51b7Smrg exit ;; 1135fe5e51b7Smrg rs6000:LynxOS:2.*:*) 1136fe5e51b7Smrg echo rs6000-unknown-lynxos${UNAME_RELEASE} 1137fe5e51b7Smrg exit ;; 11380bb88ba4Smrg PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) 1139fe5e51b7Smrg echo powerpc-unknown-lynxos${UNAME_RELEASE} 1140fe5e51b7Smrg exit ;; 1141fe5e51b7Smrg SM[BE]S:UNIX_SV:*:*) 1142fe5e51b7Smrg echo mips-dde-sysv${UNAME_RELEASE} 1143fe5e51b7Smrg exit ;; 1144fe5e51b7Smrg RM*:ReliantUNIX-*:*:*) 1145fe5e51b7Smrg echo mips-sni-sysv4 1146fe5e51b7Smrg exit ;; 1147fe5e51b7Smrg RM*:SINIX-*:*:*) 1148fe5e51b7Smrg echo mips-sni-sysv4 1149fe5e51b7Smrg exit ;; 1150fe5e51b7Smrg *:SINIX-*:*:*) 1151fe5e51b7Smrg if uname -p 2>/dev/null >/dev/null ; then 1152fe5e51b7Smrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 1153fe5e51b7Smrg echo ${UNAME_MACHINE}-sni-sysv4 1154fe5e51b7Smrg else 1155fe5e51b7Smrg echo ns32k-sni-sysv 1156fe5e51b7Smrg fi 1157fe5e51b7Smrg exit ;; 11580bb88ba4Smrg PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 11590bb88ba4Smrg # says <Richard.M.Bartel@ccMail.Census.GOV> 11600bb88ba4Smrg echo i586-unisys-sysv4 11610bb88ba4Smrg exit ;; 1162fe5e51b7Smrg *:UNIX_System_V:4*:FTX*) 1163fe5e51b7Smrg # From Gerald Hewes <hewes@openmarket.com>. 1164fe5e51b7Smrg # How about differentiating between stratus architectures? -djm 1165fe5e51b7Smrg echo hppa1.1-stratus-sysv4 1166fe5e51b7Smrg exit ;; 1167fe5e51b7Smrg *:*:*:FTX*) 1168fe5e51b7Smrg # From seanf@swdc.stratus.com. 1169fe5e51b7Smrg echo i860-stratus-sysv4 1170fe5e51b7Smrg exit ;; 1171fe5e51b7Smrg i*86:VOS:*:*) 1172fe5e51b7Smrg # From Paul.Green@stratus.com. 1173fe5e51b7Smrg echo ${UNAME_MACHINE}-stratus-vos 1174fe5e51b7Smrg exit ;; 1175fe5e51b7Smrg *:VOS:*:*) 1176fe5e51b7Smrg # From Paul.Green@stratus.com. 1177fe5e51b7Smrg echo hppa1.1-stratus-vos 1178fe5e51b7Smrg exit ;; 1179fe5e51b7Smrg mc68*:A/UX:*:*) 1180fe5e51b7Smrg echo m68k-apple-aux${UNAME_RELEASE} 1181fe5e51b7Smrg exit ;; 1182fe5e51b7Smrg news*:NEWS-OS:6*:*) 1183fe5e51b7Smrg echo mips-sony-newsos6 1184fe5e51b7Smrg exit ;; 1185fe5e51b7Smrg R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 1186fe5e51b7Smrg if [ -d /usr/nec ]; then 11870bb88ba4Smrg echo mips-nec-sysv${UNAME_RELEASE} 1188fe5e51b7Smrg else 11890bb88ba4Smrg echo mips-unknown-sysv${UNAME_RELEASE} 1190fe5e51b7Smrg fi 11910bb88ba4Smrg exit ;; 1192fe5e51b7Smrg BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 1193fe5e51b7Smrg echo powerpc-be-beos 1194fe5e51b7Smrg exit ;; 1195fe5e51b7Smrg BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 1196fe5e51b7Smrg echo powerpc-apple-beos 1197fe5e51b7Smrg exit ;; 1198fe5e51b7Smrg BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 1199fe5e51b7Smrg echo i586-pc-beos 1200fe5e51b7Smrg exit ;; 1201a31a186aSmrg BePC:Haiku:*:*) # Haiku running on Intel PC compatible. 1202a31a186aSmrg echo i586-pc-haiku 1203a31a186aSmrg exit ;; 1204fe5e51b7Smrg SX-4:SUPER-UX:*:*) 1205fe5e51b7Smrg echo sx4-nec-superux${UNAME_RELEASE} 1206fe5e51b7Smrg exit ;; 1207fe5e51b7Smrg SX-5:SUPER-UX:*:*) 1208fe5e51b7Smrg echo sx5-nec-superux${UNAME_RELEASE} 1209fe5e51b7Smrg exit ;; 1210fe5e51b7Smrg SX-6:SUPER-UX:*:*) 1211fe5e51b7Smrg echo sx6-nec-superux${UNAME_RELEASE} 1212fe5e51b7Smrg exit ;; 1213fe5e51b7Smrg SX-7:SUPER-UX:*:*) 1214fe5e51b7Smrg echo sx7-nec-superux${UNAME_RELEASE} 1215fe5e51b7Smrg exit ;; 1216fe5e51b7Smrg SX-8:SUPER-UX:*:*) 1217fe5e51b7Smrg echo sx8-nec-superux${UNAME_RELEASE} 1218fe5e51b7Smrg exit ;; 1219fe5e51b7Smrg SX-8R:SUPER-UX:*:*) 1220fe5e51b7Smrg echo sx8r-nec-superux${UNAME_RELEASE} 1221fe5e51b7Smrg exit ;; 1222fe5e51b7Smrg Power*:Rhapsody:*:*) 1223fe5e51b7Smrg echo powerpc-apple-rhapsody${UNAME_RELEASE} 1224fe5e51b7Smrg exit ;; 1225fe5e51b7Smrg *:Rhapsody:*:*) 1226fe5e51b7Smrg echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 1227fe5e51b7Smrg exit ;; 1228fe5e51b7Smrg *:Darwin:*:*) 1229fe5e51b7Smrg UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 1230fe5e51b7Smrg case $UNAME_PROCESSOR in 12310bb88ba4Smrg i386) 12320bb88ba4Smrg eval $set_cc_for_build 12330bb88ba4Smrg if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 12340bb88ba4Smrg if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ 12350bb88ba4Smrg (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 12360bb88ba4Smrg grep IS_64BIT_ARCH >/dev/null 12370bb88ba4Smrg then 12380bb88ba4Smrg UNAME_PROCESSOR="x86_64" 12390bb88ba4Smrg fi 12400bb88ba4Smrg fi ;; 1241fe5e51b7Smrg unknown) UNAME_PROCESSOR=powerpc ;; 1242fe5e51b7Smrg esac 1243fe5e51b7Smrg echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 1244fe5e51b7Smrg exit ;; 1245fe5e51b7Smrg *:procnto*:*:* | *:QNX:[0123456789]*:*) 1246fe5e51b7Smrg UNAME_PROCESSOR=`uname -p` 1247fe5e51b7Smrg if test "$UNAME_PROCESSOR" = "x86"; then 1248fe5e51b7Smrg UNAME_PROCESSOR=i386 1249fe5e51b7Smrg UNAME_MACHINE=pc 1250fe5e51b7Smrg fi 1251fe5e51b7Smrg echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 1252fe5e51b7Smrg exit ;; 1253fe5e51b7Smrg *:QNX:*:4*) 1254fe5e51b7Smrg echo i386-pc-qnx 1255fe5e51b7Smrg exit ;; 12560bb88ba4Smrg NEO-?:NONSTOP_KERNEL:*:*) 12570bb88ba4Smrg echo neo-tandem-nsk${UNAME_RELEASE} 12580bb88ba4Smrg exit ;; 1259acd6767fSmrg NSE-*:NONSTOP_KERNEL:*:*) 1260fe5e51b7Smrg echo nse-tandem-nsk${UNAME_RELEASE} 1261fe5e51b7Smrg exit ;; 1262fe5e51b7Smrg NSR-?:NONSTOP_KERNEL:*:*) 1263fe5e51b7Smrg echo nsr-tandem-nsk${UNAME_RELEASE} 1264fe5e51b7Smrg exit ;; 1265fe5e51b7Smrg *:NonStop-UX:*:*) 1266fe5e51b7Smrg echo mips-compaq-nonstopux 1267fe5e51b7Smrg exit ;; 1268fe5e51b7Smrg BS2000:POSIX*:*:*) 1269fe5e51b7Smrg echo bs2000-siemens-sysv 1270fe5e51b7Smrg exit ;; 1271fe5e51b7Smrg DS/*:UNIX_System_V:*:*) 1272fe5e51b7Smrg echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 1273fe5e51b7Smrg exit ;; 1274fe5e51b7Smrg *:Plan9:*:*) 1275fe5e51b7Smrg # "uname -m" is not consistent, so use $cputype instead. 386 1276fe5e51b7Smrg # is converted to i386 for consistency with other x86 1277fe5e51b7Smrg # operating systems. 1278fe5e51b7Smrg if test "$cputype" = "386"; then 1279fe5e51b7Smrg UNAME_MACHINE=i386 1280fe5e51b7Smrg else 1281fe5e51b7Smrg UNAME_MACHINE="$cputype" 1282fe5e51b7Smrg fi 1283fe5e51b7Smrg echo ${UNAME_MACHINE}-unknown-plan9 1284fe5e51b7Smrg exit ;; 1285fe5e51b7Smrg *:TOPS-10:*:*) 1286fe5e51b7Smrg echo pdp10-unknown-tops10 1287fe5e51b7Smrg exit ;; 1288fe5e51b7Smrg *:TENEX:*:*) 1289fe5e51b7Smrg echo pdp10-unknown-tenex 1290fe5e51b7Smrg exit ;; 1291fe5e51b7Smrg KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 1292fe5e51b7Smrg echo pdp10-dec-tops20 1293fe5e51b7Smrg exit ;; 1294fe5e51b7Smrg XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 1295fe5e51b7Smrg echo pdp10-xkl-tops20 1296fe5e51b7Smrg exit ;; 1297fe5e51b7Smrg *:TOPS-20:*:*) 1298fe5e51b7Smrg echo pdp10-unknown-tops20 1299fe5e51b7Smrg exit ;; 1300fe5e51b7Smrg *:ITS:*:*) 1301fe5e51b7Smrg echo pdp10-unknown-its 1302fe5e51b7Smrg exit ;; 1303fe5e51b7Smrg SEI:*:*:SEIUX) 13040bb88ba4Smrg echo mips-sei-seiux${UNAME_RELEASE} 1305fe5e51b7Smrg exit ;; 1306fe5e51b7Smrg *:DragonFly:*:*) 1307fe5e51b7Smrg echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 1308fe5e51b7Smrg exit ;; 1309fe5e51b7Smrg *:*VMS:*:*) 13100bb88ba4Smrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 1311fe5e51b7Smrg case "${UNAME_MACHINE}" in 1312fe5e51b7Smrg A*) echo alpha-dec-vms ; exit ;; 1313fe5e51b7Smrg I*) echo ia64-dec-vms ; exit ;; 1314fe5e51b7Smrg V*) echo vax-dec-vms ; exit ;; 1315fe5e51b7Smrg esac ;; 1316fe5e51b7Smrg *:XENIX:*:SysV) 1317fe5e51b7Smrg echo i386-pc-xenix 1318fe5e51b7Smrg exit ;; 1319fe5e51b7Smrg i*86:skyos:*:*) 1320fe5e51b7Smrg echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' 1321fe5e51b7Smrg exit ;; 1322fe5e51b7Smrg i*86:rdos:*:*) 1323fe5e51b7Smrg echo ${UNAME_MACHINE}-pc-rdos 1324fe5e51b7Smrg exit ;; 13250bb88ba4Smrg i*86:AROS:*:*) 13260bb88ba4Smrg echo ${UNAME_MACHINE}-pc-aros 13270bb88ba4Smrg exit ;; 1328acd6767fSmrg x86_64:VMkernel:*:*) 1329acd6767fSmrg echo ${UNAME_MACHINE}-unknown-esx 1330acd6767fSmrg exit ;; 1331fe5e51b7Smrgesac 1332fe5e51b7Smrg 1333fe5e51b7Smrg#echo '(No uname command or uname output not recognized.)' 1>&2 1334fe5e51b7Smrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 1335fe5e51b7Smrg 1336fe5e51b7Smrgeval $set_cc_for_build 1337fe5e51b7Smrgcat >$dummy.c <<EOF 1338fe5e51b7Smrg#ifdef _SEQUENT_ 1339fe5e51b7Smrg# include <sys/types.h> 1340fe5e51b7Smrg# include <sys/utsname.h> 1341fe5e51b7Smrg#endif 1342fe5e51b7Smrgmain () 1343fe5e51b7Smrg{ 1344fe5e51b7Smrg#if defined (sony) 1345fe5e51b7Smrg#if defined (MIPSEB) 1346fe5e51b7Smrg /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, 1347fe5e51b7Smrg I don't know.... */ 1348fe5e51b7Smrg printf ("mips-sony-bsd\n"); exit (0); 1349fe5e51b7Smrg#else 1350fe5e51b7Smrg#include <sys/param.h> 1351fe5e51b7Smrg printf ("m68k-sony-newsos%s\n", 1352fe5e51b7Smrg#ifdef NEWSOS4 13530bb88ba4Smrg "4" 1354fe5e51b7Smrg#else 13550bb88ba4Smrg "" 1356fe5e51b7Smrg#endif 13570bb88ba4Smrg ); exit (0); 1358fe5e51b7Smrg#endif 1359fe5e51b7Smrg#endif 1360fe5e51b7Smrg 1361fe5e51b7Smrg#if defined (__arm) && defined (__acorn) && defined (__unix) 1362fe5e51b7Smrg printf ("arm-acorn-riscix\n"); exit (0); 1363fe5e51b7Smrg#endif 1364fe5e51b7Smrg 1365fe5e51b7Smrg#if defined (hp300) && !defined (hpux) 1366fe5e51b7Smrg printf ("m68k-hp-bsd\n"); exit (0); 1367fe5e51b7Smrg#endif 1368fe5e51b7Smrg 1369fe5e51b7Smrg#if defined (NeXT) 1370fe5e51b7Smrg#if !defined (__ARCHITECTURE__) 1371fe5e51b7Smrg#define __ARCHITECTURE__ "m68k" 1372fe5e51b7Smrg#endif 1373fe5e51b7Smrg int version; 1374fe5e51b7Smrg version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; 1375fe5e51b7Smrg if (version < 4) 1376fe5e51b7Smrg printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); 1377fe5e51b7Smrg else 1378fe5e51b7Smrg printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); 1379fe5e51b7Smrg exit (0); 1380fe5e51b7Smrg#endif 1381fe5e51b7Smrg 1382fe5e51b7Smrg#if defined (MULTIMAX) || defined (n16) 1383fe5e51b7Smrg#if defined (UMAXV) 1384fe5e51b7Smrg printf ("ns32k-encore-sysv\n"); exit (0); 1385fe5e51b7Smrg#else 1386fe5e51b7Smrg#if defined (CMU) 1387fe5e51b7Smrg printf ("ns32k-encore-mach\n"); exit (0); 1388fe5e51b7Smrg#else 1389fe5e51b7Smrg printf ("ns32k-encore-bsd\n"); exit (0); 1390fe5e51b7Smrg#endif 1391fe5e51b7Smrg#endif 1392fe5e51b7Smrg#endif 1393fe5e51b7Smrg 1394fe5e51b7Smrg#if defined (__386BSD__) 1395fe5e51b7Smrg printf ("i386-pc-bsd\n"); exit (0); 1396fe5e51b7Smrg#endif 1397fe5e51b7Smrg 1398fe5e51b7Smrg#if defined (sequent) 1399fe5e51b7Smrg#if defined (i386) 1400fe5e51b7Smrg printf ("i386-sequent-dynix\n"); exit (0); 1401fe5e51b7Smrg#endif 1402fe5e51b7Smrg#if defined (ns32000) 1403fe5e51b7Smrg printf ("ns32k-sequent-dynix\n"); exit (0); 1404fe5e51b7Smrg#endif 1405fe5e51b7Smrg#endif 1406fe5e51b7Smrg 1407fe5e51b7Smrg#if defined (_SEQUENT_) 1408fe5e51b7Smrg struct utsname un; 1409fe5e51b7Smrg 1410fe5e51b7Smrg uname(&un); 1411fe5e51b7Smrg 1412fe5e51b7Smrg if (strncmp(un.version, "V2", 2) == 0) { 1413fe5e51b7Smrg printf ("i386-sequent-ptx2\n"); exit (0); 1414fe5e51b7Smrg } 1415fe5e51b7Smrg if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ 1416fe5e51b7Smrg printf ("i386-sequent-ptx1\n"); exit (0); 1417fe5e51b7Smrg } 1418fe5e51b7Smrg printf ("i386-sequent-ptx\n"); exit (0); 1419fe5e51b7Smrg 1420fe5e51b7Smrg#endif 1421fe5e51b7Smrg 1422fe5e51b7Smrg#if defined (vax) 1423fe5e51b7Smrg# if !defined (ultrix) 1424fe5e51b7Smrg# include <sys/param.h> 1425fe5e51b7Smrg# if defined (BSD) 1426fe5e51b7Smrg# if BSD == 43 1427fe5e51b7Smrg printf ("vax-dec-bsd4.3\n"); exit (0); 1428fe5e51b7Smrg# else 1429fe5e51b7Smrg# if BSD == 199006 1430fe5e51b7Smrg printf ("vax-dec-bsd4.3reno\n"); exit (0); 1431fe5e51b7Smrg# else 1432fe5e51b7Smrg printf ("vax-dec-bsd\n"); exit (0); 1433fe5e51b7Smrg# endif 1434fe5e51b7Smrg# endif 1435fe5e51b7Smrg# else 1436fe5e51b7Smrg printf ("vax-dec-bsd\n"); exit (0); 1437fe5e51b7Smrg# endif 1438fe5e51b7Smrg# else 1439fe5e51b7Smrg printf ("vax-dec-ultrix\n"); exit (0); 1440fe5e51b7Smrg# endif 1441fe5e51b7Smrg#endif 1442fe5e51b7Smrg 1443fe5e51b7Smrg#if defined (alliant) && defined (i860) 1444fe5e51b7Smrg printf ("i860-alliant-bsd\n"); exit (0); 1445fe5e51b7Smrg#endif 1446fe5e51b7Smrg 1447fe5e51b7Smrg exit (1); 1448fe5e51b7Smrg} 1449fe5e51b7SmrgEOF 1450fe5e51b7Smrg 1451fe5e51b7Smrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && 1452fe5e51b7Smrg { echo "$SYSTEM_NAME"; exit; } 1453fe5e51b7Smrg 1454fe5e51b7Smrg# Apollos put the system type in the environment. 1455fe5e51b7Smrg 1456fe5e51b7Smrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } 1457fe5e51b7Smrg 1458fe5e51b7Smrg# Convex versions that predate uname can use getsysinfo(1) 1459fe5e51b7Smrg 1460fe5e51b7Smrgif [ -x /usr/convex/getsysinfo ] 1461fe5e51b7Smrgthen 1462fe5e51b7Smrg case `getsysinfo -f cpu_type` in 1463fe5e51b7Smrg c1*) 1464fe5e51b7Smrg echo c1-convex-bsd 1465fe5e51b7Smrg exit ;; 1466fe5e51b7Smrg c2*) 1467fe5e51b7Smrg if getsysinfo -f scalar_acc 1468fe5e51b7Smrg then echo c32-convex-bsd 1469fe5e51b7Smrg else echo c2-convex-bsd 1470fe5e51b7Smrg fi 1471fe5e51b7Smrg exit ;; 1472fe5e51b7Smrg c34*) 1473fe5e51b7Smrg echo c34-convex-bsd 1474fe5e51b7Smrg exit ;; 1475fe5e51b7Smrg c38*) 1476fe5e51b7Smrg echo c38-convex-bsd 1477fe5e51b7Smrg exit ;; 1478fe5e51b7Smrg c4*) 1479fe5e51b7Smrg echo c4-convex-bsd 1480fe5e51b7Smrg exit ;; 1481fe5e51b7Smrg esac 1482fe5e51b7Smrgfi 1483fe5e51b7Smrg 1484fe5e51b7Smrgcat >&2 <<EOF 1485fe5e51b7Smrg$0: unable to guess system type 1486fe5e51b7Smrg 1487fe5e51b7SmrgThis script, last modified $timestamp, has failed to recognize 1488fe5e51b7Smrgthe operating system you are using. It is advised that you 1489fe5e51b7Smrgdownload the most up to date version of the config scripts from 1490fe5e51b7Smrg 1491eda3803bSmrg http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 1492fe5e51b7Smrgand 1493eda3803bSmrg http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD 1494fe5e51b7Smrg 1495fe5e51b7SmrgIf the version you run ($0) is already up to date, please 1496fe5e51b7Smrgsend the following data and any information you think might be 1497fe5e51b7Smrgpertinent to <config-patches@gnu.org> in order to provide the needed 1498fe5e51b7Smrginformation to handle your system. 1499fe5e51b7Smrg 1500fe5e51b7Smrgconfig.guess timestamp = $timestamp 1501fe5e51b7Smrg 1502fe5e51b7Smrguname -m = `(uname -m) 2>/dev/null || echo unknown` 1503fe5e51b7Smrguname -r = `(uname -r) 2>/dev/null || echo unknown` 1504fe5e51b7Smrguname -s = `(uname -s) 2>/dev/null || echo unknown` 1505fe5e51b7Smrguname -v = `(uname -v) 2>/dev/null || echo unknown` 1506fe5e51b7Smrg 1507fe5e51b7Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 1508fe5e51b7Smrg/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 1509fe5e51b7Smrg 1510fe5e51b7Smrghostinfo = `(hostinfo) 2>/dev/null` 1511fe5e51b7Smrg/bin/universe = `(/bin/universe) 2>/dev/null` 1512fe5e51b7Smrg/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 1513fe5e51b7Smrg/bin/arch = `(/bin/arch) 2>/dev/null` 1514fe5e51b7Smrg/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 1515fe5e51b7Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 1516fe5e51b7Smrg 1517fe5e51b7SmrgUNAME_MACHINE = ${UNAME_MACHINE} 1518fe5e51b7SmrgUNAME_RELEASE = ${UNAME_RELEASE} 1519fe5e51b7SmrgUNAME_SYSTEM = ${UNAME_SYSTEM} 1520fe5e51b7SmrgUNAME_VERSION = ${UNAME_VERSION} 1521fe5e51b7SmrgEOF 1522fe5e51b7Smrg 1523fe5e51b7Smrgexit 1 1524fe5e51b7Smrg 1525fe5e51b7Smrg# Local variables: 1526fe5e51b7Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 1527fe5e51b7Smrg# time-stamp-start: "timestamp='" 1528fe5e51b7Smrg# time-stamp-format: "%:y-%02m-%02d" 1529fe5e51b7Smrg# time-stamp-end: "'" 1530fe5e51b7Smrg# End: 1531