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