config.guess revision 67f05d30
167f05d30Smrg#! /bin/sh 267f05d30Smrg# Attempt to guess a canonical system name. 367f05d30Smrg# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 467f05d30Smrg# 2000, 2001, 2002, 2003 Free Software Foundation, Inc. 567f05d30Smrg 667f05d30Smrgtimestamp='2003-06-17' 767f05d30Smrg 867f05d30Smrg# This file is free software; you can redistribute it and/or modify it 967f05d30Smrg# under the terms of the GNU General Public License as published by 1067f05d30Smrg# the Free Software Foundation; either version 2 of the License, or 1167f05d30Smrg# (at your option) any later version. 1267f05d30Smrg# 1367f05d30Smrg# This program is distributed in the hope that it will be useful, but 1467f05d30Smrg# WITHOUT ANY WARRANTY; without even the implied warranty of 1567f05d30Smrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 1667f05d30Smrg# General Public License for more details. 1767f05d30Smrg# 1867f05d30Smrg# You should have received a copy of the GNU General Public License 1967f05d30Smrg# along with this program; if not, write to the Free Software 2067f05d30Smrg# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 2167f05d30Smrg# 2267f05d30Smrg# As a special exception to the GNU General Public License, if you 2367f05d30Smrg# distribute this file as part of a program that contains a 2467f05d30Smrg# configuration script generated by Autoconf, you may include it under 2567f05d30Smrg# the same distribution terms that you use for the rest of that program. 2667f05d30Smrg 2767f05d30Smrg# Originally written by Per Bothner <per@bothner.com>. 2867f05d30Smrg# Please send patches to <config-patches@gnu.org>. Submit a context 2967f05d30Smrg# diff and a properly formatted ChangeLog entry. 3067f05d30Smrg# 3167f05d30Smrg# This script attempts to guess a canonical system name similar to 3267f05d30Smrg# config.sub. If it succeeds, it prints the system name on stdout, and 3367f05d30Smrg# exits with 0. Otherwise, it exits with 1. 3467f05d30Smrg# 3567f05d30Smrg# The plan is that this can be called by configure scripts if you 3667f05d30Smrg# don't specify an explicit build system type. 3767f05d30Smrg 3867f05d30Smrgme=`echo "$0" | sed -e 's,.*/,,'` 3967f05d30Smrg 4067f05d30Smrgusage="\ 4167f05d30SmrgUsage: $0 [OPTION] 4267f05d30Smrg 4367f05d30SmrgOutput the configuration name of the system \`$me' is run on. 4467f05d30Smrg 4567f05d30SmrgOperation modes: 4667f05d30Smrg -h, --help print this help, then exit 4767f05d30Smrg -t, --time-stamp print date of last modification, then exit 4867f05d30Smrg -v, --version print version number, then exit 4967f05d30Smrg 5067f05d30SmrgReport bugs and patches to <config-patches@gnu.org>." 5167f05d30Smrg 5267f05d30Smrgversion="\ 5367f05d30SmrgGNU config.guess ($timestamp) 5467f05d30Smrg 5567f05d30SmrgOriginally written by Per Bothner. 5667f05d30SmrgCopyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 5767f05d30SmrgFree Software Foundation, Inc. 5867f05d30Smrg 5967f05d30SmrgThis is free software; see the source for copying conditions. There is NO 6067f05d30Smrgwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 6167f05d30Smrg 6267f05d30Smrghelp=" 6367f05d30SmrgTry \`$me --help' for more information." 6467f05d30Smrg 6567f05d30Smrg# Parse command line 6667f05d30Smrgwhile test $# -gt 0 ; do 6767f05d30Smrg case $1 in 6867f05d30Smrg --time-stamp | --time* | -t ) 6967f05d30Smrg echo "$timestamp" ; exit 0 ;; 7067f05d30Smrg --version | -v ) 7167f05d30Smrg echo "$version" ; exit 0 ;; 7267f05d30Smrg --help | --h* | -h ) 7367f05d30Smrg echo "$usage"; exit 0 ;; 7467f05d30Smrg -- ) # Stop option processing 7567f05d30Smrg shift; break ;; 7667f05d30Smrg - ) # Use stdin as input. 7767f05d30Smrg break ;; 7867f05d30Smrg -* ) 7967f05d30Smrg echo "$me: invalid option $1$help" >&2 8067f05d30Smrg exit 1 ;; 8167f05d30Smrg * ) 8267f05d30Smrg break ;; 8367f05d30Smrg esac 8467f05d30Smrgdone 8567f05d30Smrg 8667f05d30Smrgif test $# != 0; then 8767f05d30Smrg echo "$me: too many arguments$help" >&2 8867f05d30Smrg exit 1 8967f05d30Smrgfi 9067f05d30Smrg 9167f05d30Smrgtrap 'exit 1' 1 2 15 9267f05d30Smrg 9367f05d30Smrg# CC_FOR_BUILD -- compiler used by this script. Note that the use of a 9467f05d30Smrg# compiler to aid in system detection is discouraged as it requires 9567f05d30Smrg# temporary files to be created and, as you can see below, it is a 9667f05d30Smrg# headache to deal with in a portable fashion. 9767f05d30Smrg 9867f05d30Smrg# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still 9967f05d30Smrg# use `HOST_CC' if defined, but it is deprecated. 10067f05d30Smrg 10167f05d30Smrg# Portable tmp directory creation inspired by the Autoconf team. 10267f05d30Smrg 10367f05d30Smrgset_cc_for_build=' 10467f05d30Smrgtrap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; 10567f05d30Smrgtrap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 10667f05d30Smrg: ${TMPDIR=/tmp} ; 10767f05d30Smrg { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 10867f05d30Smrg { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 10967f05d30Smrg { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || 11067f05d30Smrg { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; 11167f05d30Smrgdummy=$tmp/dummy ; 11267f05d30Smrgtmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; 11367f05d30Smrgcase $CC_FOR_BUILD,$HOST_CC,$CC in 11467f05d30Smrg ,,) echo "int x;" > $dummy.c ; 11567f05d30Smrg for c in cc gcc c89 c99 ; do 11667f05d30Smrg if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then 11767f05d30Smrg CC_FOR_BUILD="$c"; break ; 11867f05d30Smrg fi ; 11967f05d30Smrg done ; 12067f05d30Smrg if test x"$CC_FOR_BUILD" = x ; then 12167f05d30Smrg CC_FOR_BUILD=no_compiler_found ; 12267f05d30Smrg fi 12367f05d30Smrg ;; 12467f05d30Smrg ,,*) CC_FOR_BUILD=$CC ;; 12567f05d30Smrg ,*,*) CC_FOR_BUILD=$HOST_CC ;; 12667f05d30Smrgesac ;' 12767f05d30Smrg 12867f05d30Smrg# This is needed to find uname on a Pyramid OSx when run in the BSD universe. 12967f05d30Smrg# (ghazi@noc.rutgers.edu 1994-08-24) 13067f05d30Smrgif (test -f /.attbin/uname) >/dev/null 2>&1 ; then 13167f05d30Smrg PATH=$PATH:/.attbin ; export PATH 13267f05d30Smrgfi 13367f05d30Smrg 13467f05d30SmrgUNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 13567f05d30SmrgUNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown 13667f05d30SmrgUNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 13767f05d30SmrgUNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 13867f05d30Smrg 13967f05d30Smrg## for Red Hat Linux 14067f05d30Smrgif test -f /etc/redhat-release ; then 14167f05d30Smrg VENDOR=redhat ; 14267f05d30Smrgelse 14367f05d30Smrg VENDOR= ; 14467f05d30Smrgfi 14567f05d30Smrg 14667f05d30Smrg# Note: order is significant - the case branches are not exclusive. 14767f05d30Smrg 14867f05d30Smrgcase "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 14967f05d30Smrg *:NetBSD:*:*) 15067f05d30Smrg # NetBSD (nbsd) targets should (where applicable) match one or 15167f05d30Smrg # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, 15267f05d30Smrg # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 15367f05d30Smrg # switched to ELF, *-*-netbsd* would select the old 15467f05d30Smrg # object file format. This provides both forward 15567f05d30Smrg # compatibility and a consistent mechanism for selecting the 15667f05d30Smrg # object file format. 15767f05d30Smrg # 15867f05d30Smrg # Note: NetBSD doesn't particularly care about the vendor 15967f05d30Smrg # portion of the name. We always set it to "unknown". 16067f05d30Smrg sysctl="sysctl -n hw.machine_arch" 16167f05d30Smrg UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ 16267f05d30Smrg /usr/sbin/$sysctl 2>/dev/null || echo unknown)` 16367f05d30Smrg case "${UNAME_MACHINE_ARCH}" in 16467f05d30Smrg armeb) machine=armeb-unknown ;; 16567f05d30Smrg arm*) machine=arm-unknown ;; 16667f05d30Smrg sh3el) machine=shl-unknown ;; 16767f05d30Smrg sh3eb) machine=sh-unknown ;; 16867f05d30Smrg *) machine=${UNAME_MACHINE_ARCH}-unknown ;; 16967f05d30Smrg esac 17067f05d30Smrg # The Operating System including object format, if it has switched 17167f05d30Smrg # to ELF recently, or will in the future. 17267f05d30Smrg case "${UNAME_MACHINE_ARCH}" in 17367f05d30Smrg arm*|i386|m68k|ns32k|sh3*|sparc|vax) 17467f05d30Smrg eval $set_cc_for_build 17567f05d30Smrg if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ 17667f05d30Smrg | grep __ELF__ >/dev/null 17767f05d30Smrg then 17867f05d30Smrg # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). 17967f05d30Smrg # Return netbsd for either. FIX? 18067f05d30Smrg os=netbsd 18167f05d30Smrg else 18267f05d30Smrg os=netbsdelf 18367f05d30Smrg fi 18467f05d30Smrg ;; 18567f05d30Smrg *) 18667f05d30Smrg os=netbsd 18767f05d30Smrg ;; 18867f05d30Smrg esac 18967f05d30Smrg # The OS release 19067f05d30Smrg # Debian GNU/NetBSD machines have a different userland, and 19167f05d30Smrg # thus, need a distinct triplet. However, they do not need 19267f05d30Smrg # kernel version information, so it can be replaced with a 19367f05d30Smrg # suitable tag, in the style of linux-gnu. 19467f05d30Smrg case "${UNAME_VERSION}" in 19567f05d30Smrg Debian*) 19667f05d30Smrg release='-gnu' 19767f05d30Smrg ;; 19867f05d30Smrg *) 19967f05d30Smrg release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` 20067f05d30Smrg ;; 20167f05d30Smrg esac 20267f05d30Smrg # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: 20367f05d30Smrg # contains redundant information, the shorter form: 20467f05d30Smrg # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 20567f05d30Smrg echo "${machine}-${os}${release}" 20667f05d30Smrg exit 0 ;; 20767f05d30Smrg amiga:OpenBSD:*:*) 20867f05d30Smrg echo m68k-unknown-openbsd${UNAME_RELEASE} 20967f05d30Smrg exit 0 ;; 21067f05d30Smrg arc:OpenBSD:*:*) 21167f05d30Smrg echo mipsel-unknown-openbsd${UNAME_RELEASE} 21267f05d30Smrg exit 0 ;; 21367f05d30Smrg hp300:OpenBSD:*:*) 21467f05d30Smrg echo m68k-unknown-openbsd${UNAME_RELEASE} 21567f05d30Smrg exit 0 ;; 21667f05d30Smrg mac68k:OpenBSD:*:*) 21767f05d30Smrg echo m68k-unknown-openbsd${UNAME_RELEASE} 21867f05d30Smrg exit 0 ;; 21967f05d30Smrg macppc:OpenBSD:*:*) 22067f05d30Smrg echo powerpc-unknown-openbsd${UNAME_RELEASE} 22167f05d30Smrg exit 0 ;; 22267f05d30Smrg mvme68k:OpenBSD:*:*) 22367f05d30Smrg echo m68k-unknown-openbsd${UNAME_RELEASE} 22467f05d30Smrg exit 0 ;; 22567f05d30Smrg mvme88k:OpenBSD:*:*) 22667f05d30Smrg echo m88k-unknown-openbsd${UNAME_RELEASE} 22767f05d30Smrg exit 0 ;; 22867f05d30Smrg mvmeppc:OpenBSD:*:*) 22967f05d30Smrg echo powerpc-unknown-openbsd${UNAME_RELEASE} 23067f05d30Smrg exit 0 ;; 23167f05d30Smrg pmax:OpenBSD:*:*) 23267f05d30Smrg echo mipsel-unknown-openbsd${UNAME_RELEASE} 23367f05d30Smrg exit 0 ;; 23467f05d30Smrg sgi:OpenBSD:*:*) 23567f05d30Smrg echo mipseb-unknown-openbsd${UNAME_RELEASE} 23667f05d30Smrg exit 0 ;; 23767f05d30Smrg sun3:OpenBSD:*:*) 23867f05d30Smrg echo m68k-unknown-openbsd${UNAME_RELEASE} 23967f05d30Smrg exit 0 ;; 24067f05d30Smrg wgrisc:OpenBSD:*:*) 24167f05d30Smrg echo mipsel-unknown-openbsd${UNAME_RELEASE} 24267f05d30Smrg exit 0 ;; 24367f05d30Smrg *:OpenBSD:*:*) 24467f05d30Smrg echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE} 24567f05d30Smrg exit 0 ;; 24667f05d30Smrg alpha:OSF1:*:*) 24767f05d30Smrg if test $UNAME_RELEASE = "V4.0"; then 24867f05d30Smrg UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 24967f05d30Smrg fi 25067f05d30Smrg # According to Compaq, /usr/sbin/psrinfo has been available on 25167f05d30Smrg # OSF/1 and Tru64 systems produced since 1995. I hope that 25267f05d30Smrg # covers most systems running today. This code pipes the CPU 25367f05d30Smrg # types through head -n 1, so we only detect the type of CPU 0. 25467f05d30Smrg ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` 25567f05d30Smrg case "$ALPHA_CPU_TYPE" in 25667f05d30Smrg "EV4 (21064)") 25767f05d30Smrg UNAME_MACHINE="alpha" ;; 25867f05d30Smrg "EV4.5 (21064)") 25967f05d30Smrg UNAME_MACHINE="alpha" ;; 26067f05d30Smrg "LCA4 (21066/21068)") 26167f05d30Smrg UNAME_MACHINE="alpha" ;; 26267f05d30Smrg "EV5 (21164)") 26367f05d30Smrg UNAME_MACHINE="alphaev5" ;; 26467f05d30Smrg "EV5.6 (21164A)") 26567f05d30Smrg UNAME_MACHINE="alphaev56" ;; 26667f05d30Smrg "EV5.6 (21164PC)") 26767f05d30Smrg UNAME_MACHINE="alphapca56" ;; 26867f05d30Smrg "EV5.7 (21164PC)") 26967f05d30Smrg UNAME_MACHINE="alphapca57" ;; 27067f05d30Smrg "EV6 (21264)") 27167f05d30Smrg UNAME_MACHINE="alphaev6" ;; 27267f05d30Smrg "EV6.7 (21264A)") 27367f05d30Smrg UNAME_MACHINE="alphaev67" ;; 27467f05d30Smrg "EV6.8CB (21264C)") 27567f05d30Smrg UNAME_MACHINE="alphaev68" ;; 27667f05d30Smrg "EV6.8AL (21264B)") 27767f05d30Smrg UNAME_MACHINE="alphaev68" ;; 27867f05d30Smrg "EV6.8CX (21264D)") 27967f05d30Smrg UNAME_MACHINE="alphaev68" ;; 28067f05d30Smrg "EV6.9A (21264/EV69A)") 28167f05d30Smrg UNAME_MACHINE="alphaev69" ;; 28267f05d30Smrg "EV7 (21364)") 28367f05d30Smrg UNAME_MACHINE="alphaev7" ;; 28467f05d30Smrg "EV7.9 (21364A)") 28567f05d30Smrg UNAME_MACHINE="alphaev79" ;; 28667f05d30Smrg esac 28767f05d30Smrg # A Vn.n version is a released version. 28867f05d30Smrg # A Tn.n version is a released field test version. 28967f05d30Smrg # A Xn.n version is an unreleased experimental baselevel. 29067f05d30Smrg # 1.2 uses "1.2" for uname -r. 29167f05d30Smrg echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 29267f05d30Smrg exit 0 ;; 29367f05d30Smrg Alpha*:OpenVMS:*:*) 29467f05d30Smrg echo alpha-hp-vms 29567f05d30Smrg exit 0 ;; 29667f05d30Smrg Alpha\ *:Windows_NT*:*) 29767f05d30Smrg # How do we know it's Interix rather than the generic POSIX subsystem? 29867f05d30Smrg # Should we change UNAME_MACHINE based on the output of uname instead 29967f05d30Smrg # of the specific Alpha model? 30067f05d30Smrg echo alpha-pc-interix 30167f05d30Smrg exit 0 ;; 30267f05d30Smrg 21064:Windows_NT:50:3) 30367f05d30Smrg echo alpha-dec-winnt3.5 30467f05d30Smrg exit 0 ;; 30567f05d30Smrg Amiga*:UNIX_System_V:4.0:*) 30667f05d30Smrg echo m68k-unknown-sysv4 30767f05d30Smrg exit 0;; 30867f05d30Smrg *:[Aa]miga[Oo][Ss]:*:*) 30967f05d30Smrg echo ${UNAME_MACHINE}-unknown-amigaos 31067f05d30Smrg exit 0 ;; 31167f05d30Smrg *:[Mm]orph[Oo][Ss]:*:*) 31267f05d30Smrg echo ${UNAME_MACHINE}-unknown-morphos 31367f05d30Smrg exit 0 ;; 31467f05d30Smrg *:OS/390:*:*) 31567f05d30Smrg echo i370-ibm-openedition 31667f05d30Smrg exit 0 ;; 31767f05d30Smrg arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 31867f05d30Smrg echo arm-acorn-riscix${UNAME_RELEASE} 31967f05d30Smrg exit 0;; 32067f05d30Smrg SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 32167f05d30Smrg echo hppa1.1-hitachi-hiuxmpp 32267f05d30Smrg exit 0;; 32367f05d30Smrg Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 32467f05d30Smrg # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. 32567f05d30Smrg if test "`(/bin/universe) 2>/dev/null`" = att ; then 32667f05d30Smrg echo pyramid-pyramid-sysv3 32767f05d30Smrg else 32867f05d30Smrg echo pyramid-pyramid-bsd 32967f05d30Smrg fi 33067f05d30Smrg exit 0 ;; 33167f05d30Smrg NILE*:*:*:dcosx) 33267f05d30Smrg echo pyramid-pyramid-svr4 33367f05d30Smrg exit 0 ;; 33467f05d30Smrg DRS?6000:unix:4.0:6*) 33567f05d30Smrg echo sparc-icl-nx6 33667f05d30Smrg exit 0 ;; 33767f05d30Smrg DRS?6000:UNIX_SV:4.2*:7*) 33867f05d30Smrg case `/usr/bin/uname -p` in 33967f05d30Smrg sparc) echo sparc-icl-nx7 && exit 0 ;; 34067f05d30Smrg esac ;; 34167f05d30Smrg sun4H:SunOS:5.*:*) 34267f05d30Smrg echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 34367f05d30Smrg exit 0 ;; 34467f05d30Smrg sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 34567f05d30Smrg echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 34667f05d30Smrg exit 0 ;; 34767f05d30Smrg i86pc:SunOS:5.*:*) 34867f05d30Smrg echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 34967f05d30Smrg exit 0 ;; 35067f05d30Smrg sun4*:SunOS:6*:*) 35167f05d30Smrg # According to config.sub, this is the proper way to canonicalize 35267f05d30Smrg # SunOS6. Hard to guess exactly what SunOS6 will be like, but 35367f05d30Smrg # it's likely to be more like Solaris than SunOS4. 35467f05d30Smrg echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 35567f05d30Smrg exit 0 ;; 35667f05d30Smrg sun4*:SunOS:*:*) 35767f05d30Smrg case "`/usr/bin/arch -k`" in 35867f05d30Smrg Series*|S4*) 35967f05d30Smrg UNAME_RELEASE=`uname -v` 36067f05d30Smrg ;; 36167f05d30Smrg esac 36267f05d30Smrg # Japanese Language versions have a version number like `4.1.3-JL'. 36367f05d30Smrg echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 36467f05d30Smrg exit 0 ;; 36567f05d30Smrg sun3*:SunOS:*:*) 36667f05d30Smrg echo m68k-sun-sunos${UNAME_RELEASE} 36767f05d30Smrg exit 0 ;; 36867f05d30Smrg sun*:*:4.2BSD:*) 36967f05d30Smrg UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` 37067f05d30Smrg test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 37167f05d30Smrg case "`/bin/arch`" in 37267f05d30Smrg sun3) 37367f05d30Smrg echo m68k-sun-sunos${UNAME_RELEASE} 37467f05d30Smrg ;; 37567f05d30Smrg sun4) 37667f05d30Smrg echo sparc-sun-sunos${UNAME_RELEASE} 37767f05d30Smrg ;; 37867f05d30Smrg esac 37967f05d30Smrg exit 0 ;; 38067f05d30Smrg aushp:SunOS:*:*) 38167f05d30Smrg echo sparc-auspex-sunos${UNAME_RELEASE} 38267f05d30Smrg exit 0 ;; 38367f05d30Smrg # The situation for MiNT is a little confusing. The machine name 38467f05d30Smrg # can be virtually everything (everything which is not 38567f05d30Smrg # "atarist" or "atariste" at least should have a processor 38667f05d30Smrg # > m68000). The system name ranges from "MiNT" over "FreeMiNT" 38767f05d30Smrg # to the lowercase version "mint" (or "freemint"). Finally 38867f05d30Smrg # the system name "TOS" denotes a system which is actually not 38967f05d30Smrg # MiNT. But MiNT is downward compatible to TOS, so this should 39067f05d30Smrg # be no problem. 39167f05d30Smrg atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 39267f05d30Smrg echo m68k-atari-mint${UNAME_RELEASE} 39367f05d30Smrg exit 0 ;; 39467f05d30Smrg atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 39567f05d30Smrg echo m68k-atari-mint${UNAME_RELEASE} 39667f05d30Smrg exit 0 ;; 39767f05d30Smrg *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 39867f05d30Smrg echo m68k-atari-mint${UNAME_RELEASE} 39967f05d30Smrg exit 0 ;; 40067f05d30Smrg milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 40167f05d30Smrg echo m68k-milan-mint${UNAME_RELEASE} 40267f05d30Smrg exit 0 ;; 40367f05d30Smrg hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 40467f05d30Smrg echo m68k-hades-mint${UNAME_RELEASE} 40567f05d30Smrg exit 0 ;; 40667f05d30Smrg *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 40767f05d30Smrg echo m68k-unknown-mint${UNAME_RELEASE} 40867f05d30Smrg exit 0 ;; 40967f05d30Smrg powerpc:machten:*:*) 41067f05d30Smrg echo powerpc-apple-machten${UNAME_RELEASE} 41167f05d30Smrg exit 0 ;; 41267f05d30Smrg RISC*:Mach:*:*) 41367f05d30Smrg echo mips-dec-mach_bsd4.3 41467f05d30Smrg exit 0 ;; 41567f05d30Smrg RISC*:ULTRIX:*:*) 41667f05d30Smrg echo mips-dec-ultrix${UNAME_RELEASE} 41767f05d30Smrg exit 0 ;; 41867f05d30Smrg VAX*:ULTRIX*:*:*) 41967f05d30Smrg echo vax-dec-ultrix${UNAME_RELEASE} 42067f05d30Smrg exit 0 ;; 42167f05d30Smrg 2020:CLIX:*:* | 2430:CLIX:*:*) 42267f05d30Smrg echo clipper-intergraph-clix${UNAME_RELEASE} 42367f05d30Smrg exit 0 ;; 42467f05d30Smrg mips:*:*:UMIPS | mips:*:*:RISCos) 42567f05d30Smrg eval $set_cc_for_build 42667f05d30Smrg sed 's/^ //' << EOF >$dummy.c 42767f05d30Smrg#ifdef __cplusplus 42867f05d30Smrg#include <stdio.h> /* for printf() prototype */ 42967f05d30Smrg int main (int argc, char *argv[]) { 43067f05d30Smrg#else 43167f05d30Smrg int main (argc, argv) int argc; char *argv[]; { 43267f05d30Smrg#endif 43367f05d30Smrg #if defined (host_mips) && defined (MIPSEB) 43467f05d30Smrg #if defined (SYSTYPE_SYSV) 43567f05d30Smrg printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); 43667f05d30Smrg #endif 43767f05d30Smrg #if defined (SYSTYPE_SVR4) 43867f05d30Smrg printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); 43967f05d30Smrg #endif 44067f05d30Smrg #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) 44167f05d30Smrg printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); 44267f05d30Smrg #endif 44367f05d30Smrg #endif 44467f05d30Smrg exit (-1); 44567f05d30Smrg } 44667f05d30SmrgEOF 44767f05d30Smrg $CC_FOR_BUILD -o $dummy $dummy.c \ 44867f05d30Smrg && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \ 44967f05d30Smrg && exit 0 45067f05d30Smrg echo mips-mips-riscos${UNAME_RELEASE} 45167f05d30Smrg exit 0 ;; 45267f05d30Smrg Motorola:PowerMAX_OS:*:*) 45367f05d30Smrg echo powerpc-motorola-powermax 45467f05d30Smrg exit 0 ;; 45567f05d30Smrg Motorola:*:4.3:PL8-*) 45667f05d30Smrg echo powerpc-harris-powermax 45767f05d30Smrg exit 0 ;; 45867f05d30Smrg Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 45967f05d30Smrg echo powerpc-harris-powermax 46067f05d30Smrg exit 0 ;; 46167f05d30Smrg Night_Hawk:Power_UNIX:*:*) 46267f05d30Smrg echo powerpc-harris-powerunix 46367f05d30Smrg exit 0 ;; 46467f05d30Smrg m88k:CX/UX:7*:*) 46567f05d30Smrg echo m88k-harris-cxux7 46667f05d30Smrg exit 0 ;; 46767f05d30Smrg m88k:*:4*:R4*) 46867f05d30Smrg echo m88k-motorola-sysv4 46967f05d30Smrg exit 0 ;; 47067f05d30Smrg m88k:*:3*:R3*) 47167f05d30Smrg echo m88k-motorola-sysv3 47267f05d30Smrg exit 0 ;; 47367f05d30Smrg AViiON:dgux:*:*) 47467f05d30Smrg # DG/UX returns AViiON for all architectures 47567f05d30Smrg UNAME_PROCESSOR=`/usr/bin/uname -p` 47667f05d30Smrg if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] 47767f05d30Smrg then 47867f05d30Smrg if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ 47967f05d30Smrg [ ${TARGET_BINARY_INTERFACE}x = x ] 48067f05d30Smrg then 48167f05d30Smrg echo m88k-dg-dgux${UNAME_RELEASE} 48267f05d30Smrg else 48367f05d30Smrg echo m88k-dg-dguxbcs${UNAME_RELEASE} 48467f05d30Smrg fi 48567f05d30Smrg else 48667f05d30Smrg echo i586-dg-dgux${UNAME_RELEASE} 48767f05d30Smrg fi 48867f05d30Smrg exit 0 ;; 48967f05d30Smrg M88*:DolphinOS:*:*) # DolphinOS (SVR3) 49067f05d30Smrg echo m88k-dolphin-sysv3 49167f05d30Smrg exit 0 ;; 49267f05d30Smrg M88*:*:R3*:*) 49367f05d30Smrg # Delta 88k system running SVR3 49467f05d30Smrg echo m88k-motorola-sysv3 49567f05d30Smrg exit 0 ;; 49667f05d30Smrg XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 49767f05d30Smrg echo m88k-tektronix-sysv3 49867f05d30Smrg exit 0 ;; 49967f05d30Smrg Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 50067f05d30Smrg echo m68k-tektronix-bsd 50167f05d30Smrg exit 0 ;; 50267f05d30Smrg *:IRIX*:*:*) 50367f05d30Smrg echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 50467f05d30Smrg exit 0 ;; 50567f05d30Smrg ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 50667f05d30Smrg echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 50767f05d30Smrg exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 50867f05d30Smrg i*86:AIX:*:*) 50967f05d30Smrg echo i386-ibm-aix 51067f05d30Smrg exit 0 ;; 51167f05d30Smrg ia64:AIX:*:*) 51267f05d30Smrg if [ -x /usr/bin/oslevel ] ; then 51367f05d30Smrg IBM_REV=`/usr/bin/oslevel` 51467f05d30Smrg else 51567f05d30Smrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 51667f05d30Smrg fi 51767f05d30Smrg echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 51867f05d30Smrg exit 0 ;; 51967f05d30Smrg *:AIX:2:3) 52067f05d30Smrg if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then 52167f05d30Smrg eval $set_cc_for_build 52267f05d30Smrg sed 's/^ //' << EOF >$dummy.c 52367f05d30Smrg #include <sys/systemcfg.h> 52467f05d30Smrg 52567f05d30Smrg main() 52667f05d30Smrg { 52767f05d30Smrg if (!__power_pc()) 52867f05d30Smrg exit(1); 52967f05d30Smrg puts("powerpc-ibm-aix3.2.5"); 53067f05d30Smrg exit(0); 53167f05d30Smrg } 53267f05d30SmrgEOF 53367f05d30Smrg $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0 53467f05d30Smrg echo rs6000-ibm-aix3.2.5 53567f05d30Smrg elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 53667f05d30Smrg echo rs6000-ibm-aix3.2.4 53767f05d30Smrg else 53867f05d30Smrg echo rs6000-ibm-aix3.2 53967f05d30Smrg fi 54067f05d30Smrg exit 0 ;; 54167f05d30Smrg *:AIX:*:[45]) 54267f05d30Smrg IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` 54367f05d30Smrg if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then 54467f05d30Smrg IBM_ARCH=rs6000 54567f05d30Smrg else 54667f05d30Smrg IBM_ARCH=powerpc 54767f05d30Smrg fi 54867f05d30Smrg if [ -x /usr/bin/oslevel ] ; then 54967f05d30Smrg IBM_REV=`/usr/bin/oslevel` 55067f05d30Smrg else 55167f05d30Smrg IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} 55267f05d30Smrg fi 55367f05d30Smrg echo ${IBM_ARCH}-ibm-aix${IBM_REV} 55467f05d30Smrg exit 0 ;; 55567f05d30Smrg *:AIX:*:*) 55667f05d30Smrg echo rs6000-ibm-aix 55767f05d30Smrg exit 0 ;; 55867f05d30Smrg ibmrt:4.4BSD:*|romp-ibm:BSD:*) 55967f05d30Smrg echo romp-ibm-bsd4.4 56067f05d30Smrg exit 0 ;; 56167f05d30Smrg ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 56267f05d30Smrg echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 56367f05d30Smrg exit 0 ;; # report: romp-ibm BSD 4.3 56467f05d30Smrg *:BOSX:*:*) 56567f05d30Smrg echo rs6000-bull-bosx 56667f05d30Smrg exit 0 ;; 56767f05d30Smrg DPX/2?00:B.O.S.:*:*) 56867f05d30Smrg echo m68k-bull-sysv3 56967f05d30Smrg exit 0 ;; 57067f05d30Smrg 9000/[34]??:4.3bsd:1.*:*) 57167f05d30Smrg echo m68k-hp-bsd 57267f05d30Smrg exit 0 ;; 57367f05d30Smrg hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 57467f05d30Smrg echo m68k-hp-bsd4.4 57567f05d30Smrg exit 0 ;; 57667f05d30Smrg 9000/[34678]??:HP-UX:*:*) 57767f05d30Smrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 57867f05d30Smrg case "${UNAME_MACHINE}" in 57967f05d30Smrg 9000/31? ) HP_ARCH=m68000 ;; 58067f05d30Smrg 9000/[34]?? ) HP_ARCH=m68k ;; 58167f05d30Smrg 9000/[678][0-9][0-9]) 58267f05d30Smrg if [ -x /usr/bin/getconf ]; then 58367f05d30Smrg sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` 58467f05d30Smrg sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` 58567f05d30Smrg case "${sc_cpu_version}" in 58667f05d30Smrg 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 58767f05d30Smrg 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 58867f05d30Smrg 532) # CPU_PA_RISC2_0 58967f05d30Smrg case "${sc_kernel_bits}" in 59067f05d30Smrg 32) HP_ARCH="hppa2.0n" ;; 59167f05d30Smrg 64) HP_ARCH="hppa2.0w" ;; 59267f05d30Smrg '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 59367f05d30Smrg esac ;; 59467f05d30Smrg esac 59567f05d30Smrg fi 59667f05d30Smrg if [ "${HP_ARCH}" = "" ]; then 59767f05d30Smrg eval $set_cc_for_build 59867f05d30Smrg sed 's/^ //' << EOF >$dummy.c 59967f05d30Smrg 60067f05d30Smrg #define _HPUX_SOURCE 60167f05d30Smrg #include <stdlib.h> 60267f05d30Smrg #include <unistd.h> 60367f05d30Smrg 60467f05d30Smrg int main () 60567f05d30Smrg { 60667f05d30Smrg #if defined(_SC_KERNEL_BITS) 60767f05d30Smrg long bits = sysconf(_SC_KERNEL_BITS); 60867f05d30Smrg #endif 60967f05d30Smrg long cpu = sysconf (_SC_CPU_VERSION); 61067f05d30Smrg 61167f05d30Smrg switch (cpu) 61267f05d30Smrg { 61367f05d30Smrg case CPU_PA_RISC1_0: puts ("hppa1.0"); break; 61467f05d30Smrg case CPU_PA_RISC1_1: puts ("hppa1.1"); break; 61567f05d30Smrg case CPU_PA_RISC2_0: 61667f05d30Smrg #if defined(_SC_KERNEL_BITS) 61767f05d30Smrg switch (bits) 61867f05d30Smrg { 61967f05d30Smrg case 64: puts ("hppa2.0w"); break; 62067f05d30Smrg case 32: puts ("hppa2.0n"); break; 62167f05d30Smrg default: puts ("hppa2.0"); break; 62267f05d30Smrg } break; 62367f05d30Smrg #else /* !defined(_SC_KERNEL_BITS) */ 62467f05d30Smrg puts ("hppa2.0"); break; 62567f05d30Smrg #endif 62667f05d30Smrg default: puts ("hppa1.0"); break; 62767f05d30Smrg } 62867f05d30Smrg exit (0); 62967f05d30Smrg } 63067f05d30SmrgEOF 63167f05d30Smrg (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` 63267f05d30Smrg test -z "$HP_ARCH" && HP_ARCH=hppa 63367f05d30Smrg fi ;; 63467f05d30Smrg esac 63567f05d30Smrg if [ ${HP_ARCH} = "hppa2.0w" ] 63667f05d30Smrg then 63767f05d30Smrg # avoid double evaluation of $set_cc_for_build 63867f05d30Smrg test -n "$CC_FOR_BUILD" || eval $set_cc_for_build 63967f05d30Smrg if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null 64067f05d30Smrg then 64167f05d30Smrg HP_ARCH="hppa2.0w" 64267f05d30Smrg else 64367f05d30Smrg HP_ARCH="hppa64" 64467f05d30Smrg fi 64567f05d30Smrg fi 64667f05d30Smrg echo ${HP_ARCH}-hp-hpux${HPUX_REV} 64767f05d30Smrg exit 0 ;; 64867f05d30Smrg ia64:HP-UX:*:*) 64967f05d30Smrg HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 65067f05d30Smrg echo ia64-hp-hpux${HPUX_REV} 65167f05d30Smrg exit 0 ;; 65267f05d30Smrg 3050*:HI-UX:*:*) 65367f05d30Smrg eval $set_cc_for_build 65467f05d30Smrg sed 's/^ //' << EOF >$dummy.c 65567f05d30Smrg #include <unistd.h> 65667f05d30Smrg int 65767f05d30Smrg main () 65867f05d30Smrg { 65967f05d30Smrg long cpu = sysconf (_SC_CPU_VERSION); 66067f05d30Smrg /* The order matters, because CPU_IS_HP_MC68K erroneously returns 66167f05d30Smrg true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct 66267f05d30Smrg results, however. */ 66367f05d30Smrg if (CPU_IS_PA_RISC (cpu)) 66467f05d30Smrg { 66567f05d30Smrg switch (cpu) 66667f05d30Smrg { 66767f05d30Smrg case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; 66867f05d30Smrg case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; 66967f05d30Smrg case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; 67067f05d30Smrg default: puts ("hppa-hitachi-hiuxwe2"); break; 67167f05d30Smrg } 67267f05d30Smrg } 67367f05d30Smrg else if (CPU_IS_HP_MC68K (cpu)) 67467f05d30Smrg puts ("m68k-hitachi-hiuxwe2"); 67567f05d30Smrg else puts ("unknown-hitachi-hiuxwe2"); 67667f05d30Smrg exit (0); 67767f05d30Smrg } 67867f05d30SmrgEOF 67967f05d30Smrg $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0 68067f05d30Smrg echo unknown-hitachi-hiuxwe2 68167f05d30Smrg exit 0 ;; 68267f05d30Smrg 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 68367f05d30Smrg echo hppa1.1-hp-bsd 68467f05d30Smrg exit 0 ;; 68567f05d30Smrg 9000/8??:4.3bsd:*:*) 68667f05d30Smrg echo hppa1.0-hp-bsd 68767f05d30Smrg exit 0 ;; 68867f05d30Smrg *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 68967f05d30Smrg echo hppa1.0-hp-mpeix 69067f05d30Smrg exit 0 ;; 69167f05d30Smrg hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 69267f05d30Smrg echo hppa1.1-hp-osf 69367f05d30Smrg exit 0 ;; 69467f05d30Smrg hp8??:OSF1:*:*) 69567f05d30Smrg echo hppa1.0-hp-osf 69667f05d30Smrg exit 0 ;; 69767f05d30Smrg i*86:OSF1:*:*) 69867f05d30Smrg if [ -x /usr/sbin/sysversion ] ; then 69967f05d30Smrg echo ${UNAME_MACHINE}-unknown-osf1mk 70067f05d30Smrg else 70167f05d30Smrg echo ${UNAME_MACHINE}-unknown-osf1 70267f05d30Smrg fi 70367f05d30Smrg exit 0 ;; 70467f05d30Smrg parisc*:Lites*:*:*) 70567f05d30Smrg echo hppa1.1-hp-lites 70667f05d30Smrg exit 0 ;; 70767f05d30Smrg C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 70867f05d30Smrg echo c1-convex-bsd 70967f05d30Smrg exit 0 ;; 71067f05d30Smrg C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 71167f05d30Smrg if getsysinfo -f scalar_acc 71267f05d30Smrg then echo c32-convex-bsd 71367f05d30Smrg else echo c2-convex-bsd 71467f05d30Smrg fi 71567f05d30Smrg exit 0 ;; 71667f05d30Smrg C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 71767f05d30Smrg echo c34-convex-bsd 71867f05d30Smrg exit 0 ;; 71967f05d30Smrg C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 72067f05d30Smrg echo c38-convex-bsd 72167f05d30Smrg exit 0 ;; 72267f05d30Smrg C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 72367f05d30Smrg echo c4-convex-bsd 72467f05d30Smrg exit 0 ;; 72567f05d30Smrg CRAY*Y-MP:*:*:*) 72667f05d30Smrg echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 72767f05d30Smrg exit 0 ;; 72867f05d30Smrg CRAY*[A-Z]90:*:*:*) 72967f05d30Smrg echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ 73067f05d30Smrg | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ 73167f05d30Smrg -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 73267f05d30Smrg -e 's/\.[^.]*$/.X/' 73367f05d30Smrg exit 0 ;; 73467f05d30Smrg CRAY*TS:*:*:*) 73567f05d30Smrg echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 73667f05d30Smrg exit 0 ;; 73767f05d30Smrg CRAY*T3E:*:*:*) 73867f05d30Smrg echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 73967f05d30Smrg exit 0 ;; 74067f05d30Smrg CRAY*SV1:*:*:*) 74167f05d30Smrg echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 74267f05d30Smrg exit 0 ;; 74367f05d30Smrg *:UNICOS/mp:*:*) 74467f05d30Smrg echo nv1-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 74567f05d30Smrg exit 0 ;; 74667f05d30Smrg F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 74767f05d30Smrg FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 74867f05d30Smrg FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 74967f05d30Smrg FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 75067f05d30Smrg echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 75167f05d30Smrg exit 0 ;; 75267f05d30Smrg i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 75367f05d30Smrg echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 75467f05d30Smrg exit 0 ;; 75567f05d30Smrg sparc*:BSD/OS:*:*) 75667f05d30Smrg echo sparc-unknown-bsdi${UNAME_RELEASE} 75767f05d30Smrg exit 0 ;; 75867f05d30Smrg *:BSD/OS:*:*) 75967f05d30Smrg echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 76067f05d30Smrg exit 0 ;; 76167f05d30Smrg *:FreeBSD:*:*|*:GNU/FreeBSD:*:*) 76267f05d30Smrg # Determine whether the default compiler uses glibc. 76367f05d30Smrg eval $set_cc_for_build 76467f05d30Smrg sed 's/^ //' << EOF >$dummy.c 76567f05d30Smrg #include <features.h> 76667f05d30Smrg #if __GLIBC__ >= 2 76767f05d30Smrg LIBC=gnu 76867f05d30Smrg #else 76967f05d30Smrg LIBC= 77067f05d30Smrg #endif 77167f05d30SmrgEOF 77267f05d30Smrg eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` 77367f05d30Smrg echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC} 77467f05d30Smrg exit 0 ;; 77567f05d30Smrg i*:CYGWIN*:*) 77667f05d30Smrg echo ${UNAME_MACHINE}-pc-cygwin 77767f05d30Smrg exit 0 ;; 77867f05d30Smrg i*:MINGW*:*) 77967f05d30Smrg echo ${UNAME_MACHINE}-pc-mingw32 78067f05d30Smrg exit 0 ;; 78167f05d30Smrg i*:PW*:*) 78267f05d30Smrg echo ${UNAME_MACHINE}-pc-pw32 78367f05d30Smrg exit 0 ;; 78467f05d30Smrg x86:Interix*:[34]*) 78567f05d30Smrg echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//' 78667f05d30Smrg exit 0 ;; 78767f05d30Smrg [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 78867f05d30Smrg echo i${UNAME_MACHINE}-pc-mks 78967f05d30Smrg exit 0 ;; 79067f05d30Smrg i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 79167f05d30Smrg # How do we know it's Interix rather than the generic POSIX subsystem? 79267f05d30Smrg # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we 79367f05d30Smrg # UNAME_MACHINE based on the output of uname instead of i386? 79467f05d30Smrg echo i586-pc-interix 79567f05d30Smrg exit 0 ;; 79667f05d30Smrg i*:UWIN*:*) 79767f05d30Smrg echo ${UNAME_MACHINE}-pc-uwin 79867f05d30Smrg exit 0 ;; 79967f05d30Smrg p*:CYGWIN*:*) 80067f05d30Smrg echo powerpcle-unknown-cygwin 80167f05d30Smrg exit 0 ;; 80267f05d30Smrg prep*:SunOS:5.*:*) 80367f05d30Smrg echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 80467f05d30Smrg exit 0 ;; 80567f05d30Smrg *:GNU:*:*) 80667f05d30Smrg echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 80767f05d30Smrg exit 0 ;; 80867f05d30Smrg i*86:Minix:*:*) 80967f05d30Smrg echo ${UNAME_MACHINE}-pc-minix 81067f05d30Smrg exit 0 ;; 81167f05d30Smrg arm*:Linux:*:*) 81267f05d30Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 81367f05d30Smrg exit 0 ;; 81467f05d30Smrg cris:Linux:*:*) 81567f05d30Smrg echo cris-axis-linux-gnu 81667f05d30Smrg exit 0 ;; 81767f05d30Smrg ia64:Linux:*:*) 81867f05d30Smrg echo ${UNAME_MACHINE}-${VENDOR:-unknown}-linux-gnu 81967f05d30Smrg exit 0 ;; 82067f05d30Smrg m68*:Linux:*:*) 82167f05d30Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 82267f05d30Smrg exit 0 ;; 82367f05d30Smrg mips:Linux:*:*) 82467f05d30Smrg eval $set_cc_for_build 82567f05d30Smrg sed 's/^ //' << EOF >$dummy.c 82667f05d30Smrg #undef CPU 82767f05d30Smrg #undef mips 82867f05d30Smrg #undef mipsel 82967f05d30Smrg #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 83067f05d30Smrg CPU=mipsel 83167f05d30Smrg #else 83267f05d30Smrg #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 83367f05d30Smrg CPU=mips 83467f05d30Smrg #else 83567f05d30Smrg CPU= 83667f05d30Smrg #endif 83767f05d30Smrg #endif 83867f05d30SmrgEOF 83967f05d30Smrg eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` 84067f05d30Smrg test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0 84167f05d30Smrg ;; 84267f05d30Smrg mips64:Linux:*:*) 84367f05d30Smrg eval $set_cc_for_build 84467f05d30Smrg sed 's/^ //' << EOF >$dummy.c 84567f05d30Smrg #undef CPU 84667f05d30Smrg #undef mips64 84767f05d30Smrg #undef mips64el 84867f05d30Smrg #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) 84967f05d30Smrg CPU=mips64el 85067f05d30Smrg #else 85167f05d30Smrg #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) 85267f05d30Smrg CPU=mips64 85367f05d30Smrg #else 85467f05d30Smrg CPU= 85567f05d30Smrg #endif 85667f05d30Smrg #endif 85767f05d30SmrgEOF 85867f05d30Smrg eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` 85967f05d30Smrg test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0 86067f05d30Smrg ;; 86167f05d30Smrg ppc:Linux:*:*) 86267f05d30Smrg echo powerpc-${VENDOR:-unknown}-linux-gnu 86367f05d30Smrg exit 0 ;; 86467f05d30Smrg ppc64:Linux:*:*) 86567f05d30Smrg echo powerpc64-${VENDOR:-unknown}-linux-gnu 86667f05d30Smrg exit 0 ;; 86767f05d30Smrg alpha:Linux:*:*) 86867f05d30Smrg case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 86967f05d30Smrg EV5) UNAME_MACHINE=alphaev5 ;; 87067f05d30Smrg EV56) UNAME_MACHINE=alphaev56 ;; 87167f05d30Smrg PCA56) UNAME_MACHINE=alphapca56 ;; 87267f05d30Smrg PCA57) UNAME_MACHINE=alphapca56 ;; 87367f05d30Smrg EV6) UNAME_MACHINE=alphaev6 ;; 87467f05d30Smrg EV67) UNAME_MACHINE=alphaev67 ;; 87567f05d30Smrg EV68*) UNAME_MACHINE=alphaev68 ;; 87667f05d30Smrg esac 87767f05d30Smrg objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null 87867f05d30Smrg if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi 87967f05d30Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 88067f05d30Smrg exit 0 ;; 88167f05d30Smrg parisc:Linux:*:* | hppa:Linux:*:*) 88267f05d30Smrg # Look for CPU level 88367f05d30Smrg case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 88467f05d30Smrg PA7*) echo hppa1.1-unknown-linux-gnu ;; 88567f05d30Smrg PA8*) echo hppa2.0-unknown-linux-gnu ;; 88667f05d30Smrg *) echo hppa-unknown-linux-gnu ;; 88767f05d30Smrg esac 88867f05d30Smrg exit 0 ;; 88967f05d30Smrg parisc64:Linux:*:* | hppa64:Linux:*:*) 89067f05d30Smrg echo hppa64-unknown-linux-gnu 89167f05d30Smrg exit 0 ;; 89267f05d30Smrg s390:Linux:*:* | s390x:Linux:*:*) 89367f05d30Smrg echo ${UNAME_MACHINE}-${VENDOR:-ibm}-linux-gnu 89467f05d30Smrg exit 0 ;; 89567f05d30Smrg sh64*:Linux:*:*) 89667f05d30Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 89767f05d30Smrg exit 0 ;; 89867f05d30Smrg sh*:Linux:*:*) 89967f05d30Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 90067f05d30Smrg exit 0 ;; 90167f05d30Smrg sparc:Linux:*:* | sparc64:Linux:*:*) 90267f05d30Smrg echo ${UNAME_MACHINE}-unknown-linux-gnu 90367f05d30Smrg exit 0 ;; 90467f05d30Smrg x86_64:Linux:*:*) 90567f05d30Smrg echo x86_64-${VENDOR:-unknown}-linux-gnu 90667f05d30Smrg exit 0 ;; 90767f05d30Smrg i*86:Linux:*:*) 90867f05d30Smrg # The BFD linker knows what the default object file format is, so 90967f05d30Smrg # first see if it will tell us. cd to the root directory to prevent 91067f05d30Smrg # problems with other programs or directories called `ld' in the path. 91167f05d30Smrg # Set LC_ALL=C to ensure ld outputs messages in English. 91267f05d30Smrg ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ 91367f05d30Smrg | sed -ne '/supported targets:/!d 91467f05d30Smrg s/[ ][ ]*/ /g 91567f05d30Smrg s/.*supported targets: *// 91667f05d30Smrg s/ .*// 91767f05d30Smrg p'` 91867f05d30Smrg case "$ld_supported_targets" in 91967f05d30Smrg elf32-i386) 92067f05d30Smrg TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" 92167f05d30Smrg ;; 92267f05d30Smrg a.out-i386-linux) 92367f05d30Smrg echo "${UNAME_MACHINE}-pc-linux-gnuaout" 92467f05d30Smrg exit 0 ;; 92567f05d30Smrg coff-i386) 92667f05d30Smrg echo "${UNAME_MACHINE}-pc-linux-gnucoff" 92767f05d30Smrg exit 0 ;; 92867f05d30Smrg "") 92967f05d30Smrg # Either a pre-BFD a.out linker (linux-gnuoldld) or 93067f05d30Smrg # one that does not give us useful --help. 93167f05d30Smrg echo "${UNAME_MACHINE}-pc-linux-gnuoldld" 93267f05d30Smrg exit 0 ;; 93367f05d30Smrg esac 93467f05d30Smrg # Determine whether the default compiler is a.out or elf 93567f05d30Smrg eval $set_cc_for_build 93667f05d30Smrg sed 's/^ //' << EOF >$dummy.c 93767f05d30Smrg #include <features.h> 93867f05d30Smrg #ifdef __ELF__ 93967f05d30Smrg # ifdef __GLIBC__ 94067f05d30Smrg # if __GLIBC__ >= 2 94167f05d30Smrg LIBC=gnu 94267f05d30Smrg # else 94367f05d30Smrg LIBC=gnulibc1 94467f05d30Smrg # endif 94567f05d30Smrg # else 94667f05d30Smrg LIBC=gnulibc1 94767f05d30Smrg # endif 94867f05d30Smrg #else 94967f05d30Smrg #ifdef __INTEL_COMPILER 95067f05d30Smrg LIBC=gnu 95167f05d30Smrg #else 95267f05d30Smrg LIBC=gnuaout 95367f05d30Smrg #endif 95467f05d30Smrg #endif 95567f05d30SmrgEOF 95667f05d30Smrg eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` 95767f05d30Smrg test x"${LIBC}" != x && echo "${UNAME_MACHINE}-${VENDOR:-pc}-linux-${LIBC}" && exit 0 95867f05d30Smrg test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0 95967f05d30Smrg ;; 96067f05d30Smrg i*86:DYNIX/ptx:4*:*) 96167f05d30Smrg # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 96267f05d30Smrg # earlier versions are messed up and put the nodename in both 96367f05d30Smrg # sysname and nodename. 96467f05d30Smrg echo i386-sequent-sysv4 96567f05d30Smrg exit 0 ;; 96667f05d30Smrg i*86:UNIX_SV:4.2MP:2.*) 96767f05d30Smrg # Unixware is an offshoot of SVR4, but it has its own version 96867f05d30Smrg # number series starting with 2... 96967f05d30Smrg # I am not positive that other SVR4 systems won't match this, 97067f05d30Smrg # I just have to hope. -- rms. 97167f05d30Smrg # Use sysv4.2uw... so that sysv4* matches it. 97267f05d30Smrg echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 97367f05d30Smrg exit 0 ;; 97467f05d30Smrg i*86:OS/2:*:*) 97567f05d30Smrg # If we were able to find `uname', then EMX Unix compatibility 97667f05d30Smrg # is probably installed. 97767f05d30Smrg echo ${UNAME_MACHINE}-pc-os2-emx 97867f05d30Smrg exit 0 ;; 97967f05d30Smrg i*86:XTS-300:*:STOP) 98067f05d30Smrg echo ${UNAME_MACHINE}-unknown-stop 98167f05d30Smrg exit 0 ;; 98267f05d30Smrg i*86:atheos:*:*) 98367f05d30Smrg echo ${UNAME_MACHINE}-unknown-atheos 98467f05d30Smrg exit 0 ;; 98567f05d30Smrg i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) 98667f05d30Smrg echo i386-unknown-lynxos${UNAME_RELEASE} 98767f05d30Smrg exit 0 ;; 98867f05d30Smrg i*86:*DOS:*:*) 98967f05d30Smrg echo ${UNAME_MACHINE}-pc-msdosdjgpp 99067f05d30Smrg exit 0 ;; 99167f05d30Smrg i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 99267f05d30Smrg UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` 99367f05d30Smrg if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then 99467f05d30Smrg echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} 99567f05d30Smrg else 99667f05d30Smrg echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 99767f05d30Smrg fi 99867f05d30Smrg exit 0 ;; 99967f05d30Smrg i*86:*:5:[78]*) 100067f05d30Smrg case `/bin/uname -X | grep "^Machine"` in 100167f05d30Smrg *486*) UNAME_MACHINE=i486 ;; 100267f05d30Smrg *Pentium) UNAME_MACHINE=i586 ;; 100367f05d30Smrg *Pent*|*Celeron) UNAME_MACHINE=i686 ;; 100467f05d30Smrg esac 100567f05d30Smrg echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 100667f05d30Smrg exit 0 ;; 100767f05d30Smrg i*86:*:3.2:*) 100867f05d30Smrg if test -f /usr/options/cb.name; then 100967f05d30Smrg UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` 101067f05d30Smrg echo ${UNAME_MACHINE}-pc-isc$UNAME_REL 101167f05d30Smrg elif /bin/uname -X 2>/dev/null >/dev/null ; then 101267f05d30Smrg UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` 101367f05d30Smrg (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 101467f05d30Smrg (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ 101567f05d30Smrg && UNAME_MACHINE=i586 101667f05d30Smrg (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ 101767f05d30Smrg && UNAME_MACHINE=i686 101867f05d30Smrg (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ 101967f05d30Smrg && UNAME_MACHINE=i686 102067f05d30Smrg echo ${UNAME_MACHINE}-pc-sco$UNAME_REL 102167f05d30Smrg else 102267f05d30Smrg echo ${UNAME_MACHINE}-pc-sysv32 102367f05d30Smrg fi 102467f05d30Smrg exit 0 ;; 102567f05d30Smrg pc:*:*:*) 102667f05d30Smrg # Left here for compatibility: 102767f05d30Smrg # uname -m prints for DJGPP always 'pc', but it prints nothing about 102867f05d30Smrg # the processor, so we play safe by assuming i386. 102967f05d30Smrg echo i386-pc-msdosdjgpp 103067f05d30Smrg exit 0 ;; 103167f05d30Smrg Intel:Mach:3*:*) 103267f05d30Smrg echo i386-pc-mach3 103367f05d30Smrg exit 0 ;; 103467f05d30Smrg paragon:*:*:*) 103567f05d30Smrg echo i860-intel-osf1 103667f05d30Smrg exit 0 ;; 103767f05d30Smrg i860:*:4.*:*) # i860-SVR4 103867f05d30Smrg if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then 103967f05d30Smrg echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 104067f05d30Smrg else # Add other i860-SVR4 vendors below as they are discovered. 104167f05d30Smrg echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 104267f05d30Smrg fi 104367f05d30Smrg exit 0 ;; 104467f05d30Smrg mini*:CTIX:SYS*5:*) 104567f05d30Smrg # "miniframe" 104667f05d30Smrg echo m68010-convergent-sysv 104767f05d30Smrg exit 0 ;; 104867f05d30Smrg mc68k:UNIX:SYSTEM5:3.51m) 104967f05d30Smrg echo m68k-convergent-sysv 105067f05d30Smrg exit 0 ;; 105167f05d30Smrg M680?0:D-NIX:5.3:*) 105267f05d30Smrg echo m68k-diab-dnix 105367f05d30Smrg exit 0 ;; 105467f05d30Smrg M68*:*:R3V[567]*:*) 105567f05d30Smrg test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; 105667f05d30Smrg 3[34]??:*: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) 105767f05d30Smrg OS_REL='' 105867f05d30Smrg test -r /etc/.relid \ 105967f05d30Smrg && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 106067f05d30Smrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 106167f05d30Smrg && echo i486-ncr-sysv4.3${OS_REL} && exit 0 106267f05d30Smrg /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 106367f05d30Smrg && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;; 106467f05d30Smrg 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 106567f05d30Smrg /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 106667f05d30Smrg && echo i486-ncr-sysv4 && exit 0 ;; 106767f05d30Smrg m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 106867f05d30Smrg echo m68k-unknown-lynxos${UNAME_RELEASE} 106967f05d30Smrg exit 0 ;; 107067f05d30Smrg mc68030:UNIX_System_V:4.*:*) 107167f05d30Smrg echo m68k-atari-sysv4 107267f05d30Smrg exit 0 ;; 107367f05d30Smrg TSUNAMI:LynxOS:2.*:*) 107467f05d30Smrg echo sparc-unknown-lynxos${UNAME_RELEASE} 107567f05d30Smrg exit 0 ;; 107667f05d30Smrg rs6000:LynxOS:2.*:*) 107767f05d30Smrg echo rs6000-unknown-lynxos${UNAME_RELEASE} 107867f05d30Smrg exit 0 ;; 107967f05d30Smrg PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) 108067f05d30Smrg echo powerpc-unknown-lynxos${UNAME_RELEASE} 108167f05d30Smrg exit 0 ;; 108267f05d30Smrg SM[BE]S:UNIX_SV:*:*) 108367f05d30Smrg echo mips-dde-sysv${UNAME_RELEASE} 108467f05d30Smrg exit 0 ;; 108567f05d30Smrg RM*:ReliantUNIX-*:*:*) 108667f05d30Smrg echo mips-sni-sysv4 108767f05d30Smrg exit 0 ;; 108867f05d30Smrg RM*:SINIX-*:*:*) 108967f05d30Smrg echo mips-sni-sysv4 109067f05d30Smrg exit 0 ;; 109167f05d30Smrg *:SINIX-*:*:*) 109267f05d30Smrg if uname -p 2>/dev/null >/dev/null ; then 109367f05d30Smrg UNAME_MACHINE=`(uname -p) 2>/dev/null` 109467f05d30Smrg echo ${UNAME_MACHINE}-sni-sysv4 109567f05d30Smrg else 109667f05d30Smrg echo ns32k-sni-sysv 109767f05d30Smrg fi 109867f05d30Smrg exit 0 ;; 109967f05d30Smrg PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 110067f05d30Smrg # says <Richard.M.Bartel@ccMail.Census.GOV> 110167f05d30Smrg echo i586-unisys-sysv4 110267f05d30Smrg exit 0 ;; 110367f05d30Smrg *:UNIX_System_V:4*:FTX*) 110467f05d30Smrg # From Gerald Hewes <hewes@openmarket.com>. 110567f05d30Smrg # How about differentiating between stratus architectures? -djm 110667f05d30Smrg echo hppa1.1-stratus-sysv4 110767f05d30Smrg exit 0 ;; 110867f05d30Smrg *:*:*:FTX*) 110967f05d30Smrg # From seanf@swdc.stratus.com. 111067f05d30Smrg echo i860-stratus-sysv4 111167f05d30Smrg exit 0 ;; 111267f05d30Smrg *:VOS:*:*) 111367f05d30Smrg # From Paul.Green@stratus.com. 111467f05d30Smrg echo hppa1.1-stratus-vos 111567f05d30Smrg exit 0 ;; 111667f05d30Smrg mc68*:A/UX:*:*) 111767f05d30Smrg echo m68k-apple-aux${UNAME_RELEASE} 111867f05d30Smrg exit 0 ;; 111967f05d30Smrg news*:NEWS-OS:6*:*) 112067f05d30Smrg echo mips-sony-newsos6 112167f05d30Smrg exit 0 ;; 112267f05d30Smrg R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 112367f05d30Smrg if [ -d /usr/nec ]; then 112467f05d30Smrg echo mips-nec-sysv${UNAME_RELEASE} 112567f05d30Smrg else 112667f05d30Smrg echo mips-unknown-sysv${UNAME_RELEASE} 112767f05d30Smrg fi 112867f05d30Smrg exit 0 ;; 112967f05d30Smrg BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 113067f05d30Smrg echo powerpc-be-beos 113167f05d30Smrg exit 0 ;; 113267f05d30Smrg BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 113367f05d30Smrg echo powerpc-apple-beos 113467f05d30Smrg exit 0 ;; 113567f05d30Smrg BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 113667f05d30Smrg echo i586-pc-beos 113767f05d30Smrg exit 0 ;; 113867f05d30Smrg SX-4:SUPER-UX:*:*) 113967f05d30Smrg echo sx4-nec-superux${UNAME_RELEASE} 114067f05d30Smrg exit 0 ;; 114167f05d30Smrg SX-5:SUPER-UX:*:*) 114267f05d30Smrg echo sx5-nec-superux${UNAME_RELEASE} 114367f05d30Smrg exit 0 ;; 114467f05d30Smrg SX-6:SUPER-UX:*:*) 114567f05d30Smrg echo sx6-nec-superux${UNAME_RELEASE} 114667f05d30Smrg exit 0 ;; 114767f05d30Smrg Power*:Rhapsody:*:*) 114867f05d30Smrg echo powerpc-apple-rhapsody${UNAME_RELEASE} 114967f05d30Smrg exit 0 ;; 115067f05d30Smrg *:Rhapsody:*:*) 115167f05d30Smrg echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 115267f05d30Smrg exit 0 ;; 115367f05d30Smrg *:Darwin:*:*) 115467f05d30Smrg case `uname -p` in 115567f05d30Smrg *86) UNAME_PROCESSOR=i686 ;; 115667f05d30Smrg powerpc) UNAME_PROCESSOR=powerpc ;; 115767f05d30Smrg esac 115867f05d30Smrg echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 115967f05d30Smrg exit 0 ;; 116067f05d30Smrg *:procnto*:*:* | *:QNX:[0123456789]*:*) 116167f05d30Smrg UNAME_PROCESSOR=`uname -p` 116267f05d30Smrg if test "$UNAME_PROCESSOR" = "x86"; then 116367f05d30Smrg UNAME_PROCESSOR=i386 116467f05d30Smrg UNAME_MACHINE=pc 116567f05d30Smrg fi 116667f05d30Smrg echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 116767f05d30Smrg exit 0 ;; 116867f05d30Smrg *:QNX:*:4*) 116967f05d30Smrg echo i386-pc-qnx 117067f05d30Smrg exit 0 ;; 117167f05d30Smrg NSR-[DGKLNPTVW]:NONSTOP_KERNEL:*:*) 117267f05d30Smrg echo nsr-tandem-nsk${UNAME_RELEASE} 117367f05d30Smrg exit 0 ;; 117467f05d30Smrg *:NonStop-UX:*:*) 117567f05d30Smrg echo mips-compaq-nonstopux 117667f05d30Smrg exit 0 ;; 117767f05d30Smrg BS2000:POSIX*:*:*) 117867f05d30Smrg echo bs2000-siemens-sysv 117967f05d30Smrg exit 0 ;; 118067f05d30Smrg DS/*:UNIX_System_V:*:*) 118167f05d30Smrg echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 118267f05d30Smrg exit 0 ;; 118367f05d30Smrg *:Plan9:*:*) 118467f05d30Smrg # "uname -m" is not consistent, so use $cputype instead. 386 118567f05d30Smrg # is converted to i386 for consistency with other x86 118667f05d30Smrg # operating systems. 118767f05d30Smrg if test "$cputype" = "386"; then 118867f05d30Smrg UNAME_MACHINE=i386 118967f05d30Smrg else 119067f05d30Smrg UNAME_MACHINE="$cputype" 119167f05d30Smrg fi 119267f05d30Smrg echo ${UNAME_MACHINE}-unknown-plan9 119367f05d30Smrg exit 0 ;; 119467f05d30Smrg *:TOPS-10:*:*) 119567f05d30Smrg echo pdp10-unknown-tops10 119667f05d30Smrg exit 0 ;; 119767f05d30Smrg *:TENEX:*:*) 119867f05d30Smrg echo pdp10-unknown-tenex 119967f05d30Smrg exit 0 ;; 120067f05d30Smrg KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 120167f05d30Smrg echo pdp10-dec-tops20 120267f05d30Smrg exit 0 ;; 120367f05d30Smrg XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 120467f05d30Smrg echo pdp10-xkl-tops20 120567f05d30Smrg exit 0 ;; 120667f05d30Smrg *:TOPS-20:*:*) 120767f05d30Smrg echo pdp10-unknown-tops20 120867f05d30Smrg exit 0 ;; 120967f05d30Smrg *:ITS:*:*) 121067f05d30Smrg echo pdp10-unknown-its 121167f05d30Smrg exit 0 ;; 121267f05d30Smrg SEI:*:*:SEIUX) 121367f05d30Smrg echo mips-sei-seiux${UNAME_RELEASE} 121467f05d30Smrg exit 0 ;; 121567f05d30Smrgesac 121667f05d30Smrg 121767f05d30Smrg#echo '(No uname command or uname output not recognized.)' 1>&2 121867f05d30Smrg#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 121967f05d30Smrg 122067f05d30Smrgeval $set_cc_for_build 122167f05d30Smrgcat >$dummy.c <<EOF 122267f05d30Smrg#ifdef _SEQUENT_ 122367f05d30Smrg# include <sys/types.h> 122467f05d30Smrg# include <sys/utsname.h> 122567f05d30Smrg#endif 122667f05d30Smrgmain () 122767f05d30Smrg{ 122867f05d30Smrg#if defined (sony) 122967f05d30Smrg#if defined (MIPSEB) 123067f05d30Smrg /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, 123167f05d30Smrg I don't know.... */ 123267f05d30Smrg printf ("mips-sony-bsd\n"); exit (0); 123367f05d30Smrg#else 123467f05d30Smrg#include <sys/param.h> 123567f05d30Smrg printf ("m68k-sony-newsos%s\n", 123667f05d30Smrg#ifdef NEWSOS4 123767f05d30Smrg "4" 123867f05d30Smrg#else 123967f05d30Smrg "" 124067f05d30Smrg#endif 124167f05d30Smrg ); exit (0); 124267f05d30Smrg#endif 124367f05d30Smrg#endif 124467f05d30Smrg 124567f05d30Smrg#if defined (__arm) && defined (__acorn) && defined (__unix) 124667f05d30Smrg printf ("arm-acorn-riscix"); exit (0); 124767f05d30Smrg#endif 124867f05d30Smrg 124967f05d30Smrg#if defined (hp300) && !defined (hpux) 125067f05d30Smrg printf ("m68k-hp-bsd\n"); exit (0); 125167f05d30Smrg#endif 125267f05d30Smrg 125367f05d30Smrg#if defined (NeXT) 125467f05d30Smrg#if !defined (__ARCHITECTURE__) 125567f05d30Smrg#define __ARCHITECTURE__ "m68k" 125667f05d30Smrg#endif 125767f05d30Smrg int version; 125867f05d30Smrg version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; 125967f05d30Smrg if (version < 4) 126067f05d30Smrg printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); 126167f05d30Smrg else 126267f05d30Smrg printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); 126367f05d30Smrg exit (0); 126467f05d30Smrg#endif 126567f05d30Smrg 126667f05d30Smrg#if defined (MULTIMAX) || defined (n16) 126767f05d30Smrg#if defined (UMAXV) 126867f05d30Smrg printf ("ns32k-encore-sysv\n"); exit (0); 126967f05d30Smrg#else 127067f05d30Smrg#if defined (CMU) 127167f05d30Smrg printf ("ns32k-encore-mach\n"); exit (0); 127267f05d30Smrg#else 127367f05d30Smrg printf ("ns32k-encore-bsd\n"); exit (0); 127467f05d30Smrg#endif 127567f05d30Smrg#endif 127667f05d30Smrg#endif 127767f05d30Smrg 127867f05d30Smrg#if defined (__386BSD__) 127967f05d30Smrg printf ("i386-pc-bsd\n"); exit (0); 128067f05d30Smrg#endif 128167f05d30Smrg 128267f05d30Smrg#if defined (sequent) 128367f05d30Smrg#if defined (i386) 128467f05d30Smrg printf ("i386-sequent-dynix\n"); exit (0); 128567f05d30Smrg#endif 128667f05d30Smrg#if defined (ns32000) 128767f05d30Smrg printf ("ns32k-sequent-dynix\n"); exit (0); 128867f05d30Smrg#endif 128967f05d30Smrg#endif 129067f05d30Smrg 129167f05d30Smrg#if defined (_SEQUENT_) 129267f05d30Smrg struct utsname un; 129367f05d30Smrg 129467f05d30Smrg uname(&un); 129567f05d30Smrg 129667f05d30Smrg if (strncmp(un.version, "V2", 2) == 0) { 129767f05d30Smrg printf ("i386-sequent-ptx2\n"); exit (0); 129867f05d30Smrg } 129967f05d30Smrg if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ 130067f05d30Smrg printf ("i386-sequent-ptx1\n"); exit (0); 130167f05d30Smrg } 130267f05d30Smrg printf ("i386-sequent-ptx\n"); exit (0); 130367f05d30Smrg 130467f05d30Smrg#endif 130567f05d30Smrg 130667f05d30Smrg#if defined (vax) 130767f05d30Smrg# if !defined (ultrix) 130867f05d30Smrg# include <sys/param.h> 130967f05d30Smrg# if defined (BSD) 131067f05d30Smrg# if BSD == 43 131167f05d30Smrg printf ("vax-dec-bsd4.3\n"); exit (0); 131267f05d30Smrg# else 131367f05d30Smrg# if BSD == 199006 131467f05d30Smrg printf ("vax-dec-bsd4.3reno\n"); exit (0); 131567f05d30Smrg# else 131667f05d30Smrg printf ("vax-dec-bsd\n"); exit (0); 131767f05d30Smrg# endif 131867f05d30Smrg# endif 131967f05d30Smrg# else 132067f05d30Smrg printf ("vax-dec-bsd\n"); exit (0); 132167f05d30Smrg# endif 132267f05d30Smrg# else 132367f05d30Smrg printf ("vax-dec-ultrix\n"); exit (0); 132467f05d30Smrg# endif 132567f05d30Smrg#endif 132667f05d30Smrg 132767f05d30Smrg#if defined (alliant) && defined (i860) 132867f05d30Smrg printf ("i860-alliant-bsd\n"); exit (0); 132967f05d30Smrg#endif 133067f05d30Smrg 133167f05d30Smrg exit (1); 133267f05d30Smrg} 133367f05d30SmrgEOF 133467f05d30Smrg 133567f05d30Smrg$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0 133667f05d30Smrg 133767f05d30Smrg# Apollos put the system type in the environment. 133867f05d30Smrg 133967f05d30Smrgtest -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; } 134067f05d30Smrg 134167f05d30Smrg# Convex versions that predate uname can use getsysinfo(1) 134267f05d30Smrg 134367f05d30Smrgif [ -x /usr/convex/getsysinfo ] 134467f05d30Smrgthen 134567f05d30Smrg case `getsysinfo -f cpu_type` in 134667f05d30Smrg c1*) 134767f05d30Smrg echo c1-convex-bsd 134867f05d30Smrg exit 0 ;; 134967f05d30Smrg c2*) 135067f05d30Smrg if getsysinfo -f scalar_acc 135167f05d30Smrg then echo c32-convex-bsd 135267f05d30Smrg else echo c2-convex-bsd 135367f05d30Smrg fi 135467f05d30Smrg exit 0 ;; 135567f05d30Smrg c34*) 135667f05d30Smrg echo c34-convex-bsd 135767f05d30Smrg exit 0 ;; 135867f05d30Smrg c38*) 135967f05d30Smrg echo c38-convex-bsd 136067f05d30Smrg exit 0 ;; 136167f05d30Smrg c4*) 136267f05d30Smrg echo c4-convex-bsd 136367f05d30Smrg exit 0 ;; 136467f05d30Smrg esac 136567f05d30Smrgfi 136667f05d30Smrg 136767f05d30Smrgcat >&2 <<EOF 136867f05d30Smrg$0: unable to guess system type 136967f05d30Smrg 137067f05d30SmrgThis script, last modified $timestamp, has failed to recognize 137167f05d30Smrgthe operating system you are using. It is advised that you 137267f05d30Smrgdownload the most up to date version of the config scripts from 137367f05d30Smrg 137467f05d30Smrg ftp://ftp.gnu.org/pub/gnu/config/ 137567f05d30Smrg 137667f05d30SmrgIf the version you run ($0) is already up to date, please 137767f05d30Smrgsend the following data and any information you think might be 137867f05d30Smrgpertinent to <config-patches@gnu.org> in order to provide the needed 137967f05d30Smrginformation to handle your system. 138067f05d30Smrg 138167f05d30Smrgconfig.guess timestamp = $timestamp 138267f05d30Smrg 138367f05d30Smrguname -m = `(uname -m) 2>/dev/null || echo unknown` 138467f05d30Smrguname -r = `(uname -r) 2>/dev/null || echo unknown` 138567f05d30Smrguname -s = `(uname -s) 2>/dev/null || echo unknown` 138667f05d30Smrguname -v = `(uname -v) 2>/dev/null || echo unknown` 138767f05d30Smrg 138867f05d30Smrg/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` 138967f05d30Smrg/bin/uname -X = `(/bin/uname -X) 2>/dev/null` 139067f05d30Smrg 139167f05d30Smrghostinfo = `(hostinfo) 2>/dev/null` 139267f05d30Smrg/bin/universe = `(/bin/universe) 2>/dev/null` 139367f05d30Smrg/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` 139467f05d30Smrg/bin/arch = `(/bin/arch) 2>/dev/null` 139567f05d30Smrg/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` 139667f05d30Smrg/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` 139767f05d30Smrg 139867f05d30SmrgUNAME_MACHINE = ${UNAME_MACHINE} 139967f05d30SmrgUNAME_RELEASE = ${UNAME_RELEASE} 140067f05d30SmrgUNAME_SYSTEM = ${UNAME_SYSTEM} 140167f05d30SmrgUNAME_VERSION = ${UNAME_VERSION} 140267f05d30SmrgEOF 140367f05d30Smrg 140467f05d30Smrgexit 1 140567f05d30Smrg 140667f05d30Smrg# Local variables: 140767f05d30Smrg# eval: (add-hook 'write-file-hooks 'time-stamp) 140867f05d30Smrg# time-stamp-start: "timestamp='" 140967f05d30Smrg# time-stamp-format: "%:y-%02m-%02d" 141067f05d30Smrg# time-stamp-end: "'" 141167f05d30Smrg# End: 1412