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