Annotation of XML/config.guess, revision 1.1

1.1     ! daniel      1: #! /bin/sh
        !             2: # Attempt to guess a canonical system name.
        !             3: #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999
        !             4: #   Free Software Foundation, Inc.
        !             5: #
        !             6: # This file is free software; you can redistribute it and/or modify it
        !             7: # under the terms of the GNU General Public License as published by
        !             8: # the Free Software Foundation; either version 2 of the License, or
        !             9: # (at your option) any later version.
        !            10: #
        !            11: # This program is distributed in the hope that it will be useful, but
        !            12: # WITHOUT ANY WARRANTY; without even the implied warranty of
        !            13: # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
        !            14: # General Public License for more details.
        !            15: #
        !            16: # You should have received a copy of the GNU General Public License
        !            17: # along with this program; if not, write to the Free Software
        !            18: # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
        !            19: #
        !            20: # As a special exception to the GNU General Public License, if you
        !            21: # distribute this file as part of a program that contains a
        !            22: # configuration script generated by Autoconf, you may include it under
        !            23: # the same distribution terms that you use for the rest of that program.
        !            24: 
        !            25: # Written by Per Bothner <bothner@cygnus.com>.
        !            26: # The master version of this file is at the FSF in /home/gd/gnu/lib.
        !            27: # Please send patches to the Autoconf mailing list <autoconf@gnu.org>.
        !            28: #
        !            29: # This script attempts to guess a canonical system name similar to
        !            30: # config.sub.  If it succeeds, it prints the system name on stdout, and
        !            31: # exits with 0.  Otherwise, it exits with 1.
        !            32: #
        !            33: # The plan is that this can be called by configure scripts if you
        !            34: # don't specify an explicit system type (host/target name).
        !            35: #
        !            36: # Only a few systems have been added to this list; please add others
        !            37: # (but try to keep the structure clean).
        !            38: #
        !            39: 
        !            40: # Use $HOST_CC if defined. $CC may point to a cross-compiler
        !            41: if test x"$CC_FOR_BUILD" = x; then
        !            42:   if test x"$HOST_CC" != x; then
        !            43:     CC_FOR_BUILD="$HOST_CC"
        !            44:   else
        !            45:     if test x"$CC" != x; then
        !            46:       CC_FOR_BUILD="$CC"
        !            47:     else
        !            48:       CC_FOR_BUILD=cc
        !            49:     fi
        !            50:   fi
        !            51: fi
        !            52: 
        !            53: 
        !            54: # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
        !            55: # (ghazi@noc.rutgers.edu 8/24/94.)
        !            56: if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
        !            57:        PATH=$PATH:/.attbin ; export PATH
        !            58: fi
        !            59: 
        !            60: UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
        !            61: UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
        !            62: UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
        !            63: UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
        !            64: 
        !            65: dummy=dummy-$$
        !            66: trap 'rm -f $dummy.c $dummy.o $dummy; exit 1' 1 2 15
        !            67: 
        !            68: # Note: order is significant - the case branches are not exclusive.
        !            69: 
        !            70: case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
        !            71:     alpha:OSF1:*:*)
        !            72:        if test $UNAME_RELEASE = "V4.0"; then
        !            73:                UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
        !            74:        fi
        !            75:        # A Vn.n version is a released version.
        !            76:        # A Tn.n version is a released field test version.
        !            77:        # A Xn.n version is an unreleased experimental baselevel.
        !            78:        # 1.2 uses "1.2" for uname -r.
        !            79:        cat <<EOF >$dummy.s
        !            80:        .globl main
        !            81:        .ent main
        !            82: main:
        !            83:        .frame \$30,0,\$26,0
        !            84:        .prologue 0
        !            85:        .long 0x47e03d80 # implver $0
        !            86:        lda \$2,259
        !            87:        .long 0x47e20c21 # amask $2,$1
        !            88:        srl \$1,8,\$2
        !            89:        sll \$2,2,\$2
        !            90:        sll \$0,3,\$0
        !            91:        addl \$1,\$0,\$0
        !            92:        addl \$2,\$0,\$0
        !            93:        ret \$31,(\$26),1
        !            94:        .end main
        !            95: EOF
        !            96:        $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
        !            97:        if test "$?" = 0 ; then
        !            98:                ./$dummy
        !            99:                case "$?" in
        !           100:                        7)
        !           101:                                UNAME_MACHINE="alpha"
        !           102:                                ;;
        !           103:                        15)
        !           104:                                UNAME_MACHINE="alphaev5"
        !           105:                                ;;
        !           106:                        14)
        !           107:                                UNAME_MACHINE="alphaev56"
        !           108:                                ;;
        !           109:                        10)
        !           110:                                UNAME_MACHINE="alphapca56"
        !           111:                                ;;
        !           112:                        16)
        !           113:                                UNAME_MACHINE="alphaev6"
        !           114:                                ;;
        !           115:                esac
        !           116:        fi
        !           117:        rm -f $dummy.s $dummy
        !           118:        echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
        !           119:        exit 0 ;;
        !           120:     Alpha\ *:Windows_NT*:*)
        !           121:        # How do we know it's Interix rather than the generic POSIX subsystem?
        !           122:        # Should we change UNAME_MACHINE based on the output of uname instead
        !           123:        # of the specific Alpha model?
        !           124:        echo alpha-pc-interix
        !           125:        exit 0 ;;
        !           126:     21064:Windows_NT:50:3)
        !           127:        echo alpha-dec-winnt3.5
        !           128:        exit 0 ;;
        !           129:     Amiga*:UNIX_System_V:4.0:*)
        !           130:        echo m68k-cbm-sysv4
        !           131:        exit 0;;
        !           132:     amiga:NetBSD:*:*)
        !           133:       echo m68k-cbm-netbsd${UNAME_RELEASE}
        !           134:       exit 0 ;;
        !           135:     amiga:OpenBSD:*:*)
        !           136:        echo m68k-unknown-openbsd${UNAME_RELEASE}
        !           137:        exit 0 ;;
        !           138:     *:[Aa]miga[Oo][Ss]:*:*)
        !           139:        echo ${UNAME_MACHINE}-unknown-amigaos
        !           140:        exit 0 ;;
        !           141:     arc64:OpenBSD:*:*)
        !           142:        echo mips64el-unknown-openbsd${UNAME_RELEASE}
        !           143:        exit 0 ;;
        !           144:     arc:OpenBSD:*:*)
        !           145:        echo mipsel-unknown-openbsd${UNAME_RELEASE}
        !           146:        exit 0 ;;
        !           147:     hkmips:OpenBSD:*:*)
        !           148:        echo mips-unknown-openbsd${UNAME_RELEASE}
        !           149:        exit 0 ;;
        !           150:     pmax:OpenBSD:*:*)
        !           151:        echo mipsel-unknown-openbsd${UNAME_RELEASE}
        !           152:        exit 0 ;;
        !           153:     sgi:OpenBSD:*:*)
        !           154:        echo mips-unknown-openbsd${UNAME_RELEASE}
        !           155:        exit 0 ;;
        !           156:     wgrisc:OpenBSD:*:*)
        !           157:        echo mipsel-unknown-openbsd${UNAME_RELEASE}
        !           158:        exit 0 ;;
        !           159:     arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
        !           160:        echo arm-acorn-riscix${UNAME_RELEASE}
        !           161:        exit 0;;
        !           162:     arm32:NetBSD:*:*)
        !           163:        echo arm-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
        !           164:        exit 0 ;;
        !           165:     SR2?01:HI-UX/MPP:*:*)
        !           166:        echo hppa1.1-hitachi-hiuxmpp
        !           167:        exit 0;;
        !           168:     Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
        !           169:        # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
        !           170:        if test "`(/bin/universe) 2>/dev/null`" = att ; then
        !           171:                echo pyramid-pyramid-sysv3
        !           172:        else
        !           173:                echo pyramid-pyramid-bsd
        !           174:        fi
        !           175:        exit 0 ;;
        !           176:     NILE*:*:*:dcosx)
        !           177:        echo pyramid-pyramid-svr4
        !           178:        exit 0 ;;
        !           179:     sun4H:SunOS:5.*:*)
        !           180:        echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
        !           181:        exit 0 ;;
        !           182:     sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
        !           183:        echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
        !           184:        exit 0 ;;
        !           185:     i86pc:SunOS:5.*:*)
        !           186:        echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
        !           187:        exit 0 ;;
        !           188:     sun4*:SunOS:6*:*)
        !           189:        # According to config.sub, this is the proper way to canonicalize
        !           190:        # SunOS6.  Hard to guess exactly what SunOS6 will be like, but
        !           191:        # it's likely to be more like Solaris than SunOS4.
        !           192:        echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
        !           193:        exit 0 ;;
        !           194:     sun4*:SunOS:*:*)
        !           195:        case "`/usr/bin/arch -k`" in
        !           196:            Series*|S4*)
        !           197:                UNAME_RELEASE=`uname -v`
        !           198:                ;;
        !           199:        esac
        !           200:        # Japanese Language versions have a version number like `4.1.3-JL'.
        !           201:        echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
        !           202:        exit 0 ;;
        !           203:     sun3*:SunOS:*:*)
        !           204:        echo m68k-sun-sunos${UNAME_RELEASE}
        !           205:        exit 0 ;;
        !           206:     sun*:*:4.2BSD:*)
        !           207:        UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
        !           208:        test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
        !           209:        case "`/bin/arch`" in
        !           210:            sun3)
        !           211:                echo m68k-sun-sunos${UNAME_RELEASE}
        !           212:                ;;
        !           213:            sun4)
        !           214:                echo sparc-sun-sunos${UNAME_RELEASE}
        !           215:                ;;
        !           216:        esac
        !           217:        exit 0 ;;
        !           218:     aushp:SunOS:*:*)
        !           219:        echo sparc-auspex-sunos${UNAME_RELEASE}
        !           220:        exit 0 ;;
        !           221:     atari*:NetBSD:*:*)
        !           222:        echo m68k-atari-netbsd${UNAME_RELEASE}
        !           223:        exit 0 ;;
        !           224:     atari*:OpenBSD:*:*)
        !           225:        echo m68k-unknown-openbsd${UNAME_RELEASE}
        !           226:        exit 0 ;;
        !           227:     # The situation for MiNT is a little confusing.  The machine name
        !           228:     # can be virtually everything (everything which is not
        !           229:     # "atarist" or "atariste" at least should have a processor 
        !           230:     # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
        !           231:     # to the lowercase version "mint" (or "freemint").  Finally
        !           232:     # the system name "TOS" denotes a system which is actually not
        !           233:     # MiNT.  But MiNT is downward compatible to TOS, so this should
        !           234:     # be no problem.
        !           235:     atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
        !           236:         echo m68k-atari-mint${UNAME_RELEASE}
        !           237:        exit 0 ;;
        !           238:     atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
        !           239:        echo m68k-atari-mint${UNAME_RELEASE}
        !           240:         exit 0 ;;
        !           241:     *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
        !           242:         echo m68k-atari-mint${UNAME_RELEASE}
        !           243:        exit 0 ;;
        !           244:     milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
        !           245:         echo m68k-milan-mint${UNAME_RELEASE}
        !           246:         exit 0 ;;
        !           247:     hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
        !           248:         echo m68k-hades-mint${UNAME_RELEASE}
        !           249:         exit 0 ;;
        !           250:     *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
        !           251:         echo m68k-unknown-mint${UNAME_RELEASE}
        !           252:         exit 0 ;;
        !           253:     sun3*:NetBSD:*:*)
        !           254:        echo m68k-sun-netbsd${UNAME_RELEASE}
        !           255:        exit 0 ;;
        !           256:     sun3*:OpenBSD:*:*)
        !           257:        echo m68k-unknown-openbsd${UNAME_RELEASE}
        !           258:        exit 0 ;;
        !           259:     mac68k:NetBSD:*:*)
        !           260:        echo m68k-apple-netbsd${UNAME_RELEASE}
        !           261:        exit 0 ;;
        !           262:     mac68k:OpenBSD:*:*)
        !           263:        echo m68k-unknown-openbsd${UNAME_RELEASE}
        !           264:        exit 0 ;;
        !           265:     mvme68k:OpenBSD:*:*)
        !           266:        echo m68k-unknown-openbsd${UNAME_RELEASE}
        !           267:        exit 0 ;;
        !           268:     mvme88k:OpenBSD:*:*)
        !           269:        echo m88k-unknown-openbsd${UNAME_RELEASE}
        !           270:        exit 0 ;;
        !           271:     powerpc:machten:*:*)
        !           272:        echo powerpc-apple-machten${UNAME_RELEASE}
        !           273:        exit 0 ;;
        !           274:     macppc:NetBSD:*:*)
        !           275:         echo powerpc-apple-netbsd${UNAME_RELEASE}
        !           276:         exit 0 ;;
        !           277:     RISC*:Mach:*:*)
        !           278:        echo mips-dec-mach_bsd4.3
        !           279:        exit 0 ;;
        !           280:     RISC*:ULTRIX:*:*)
        !           281:        echo mips-dec-ultrix${UNAME_RELEASE}
        !           282:        exit 0 ;;
        !           283:     VAX*:ULTRIX*:*:*)
        !           284:        echo vax-dec-ultrix${UNAME_RELEASE}
        !           285:        exit 0 ;;
        !           286:     2020:CLIX:*:* | 2430:CLIX:*:*)
        !           287:        echo clipper-intergraph-clix${UNAME_RELEASE}
        !           288:        exit 0 ;;
        !           289:     mips:*:*:UMIPS | mips:*:*:RISCos)
        !           290:        sed 's/^        //' << EOF >$dummy.c
        !           291: #ifdef __cplusplus
        !           292:        int main (int argc, char *argv[]) {
        !           293: #else
        !           294:        int main (argc, argv) int argc; char *argv[]; {
        !           295: #endif
        !           296:        #if defined (host_mips) && defined (MIPSEB)
        !           297:        #if defined (SYSTYPE_SYSV)
        !           298:          printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
        !           299:        #endif
        !           300:        #if defined (SYSTYPE_SVR4)
        !           301:          printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
        !           302:        #endif
        !           303:        #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
        !           304:          printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
        !           305:        #endif
        !           306:        #endif
        !           307:          exit (-1);
        !           308:        }
        !           309: EOF
        !           310:        $CC_FOR_BUILD $dummy.c -o $dummy \
        !           311:          && ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
        !           312:          && rm $dummy.c $dummy && exit 0
        !           313:        rm -f $dummy.c $dummy
        !           314:        echo mips-mips-riscos${UNAME_RELEASE}
        !           315:        exit 0 ;;
        !           316:     Night_Hawk:Power_UNIX:*:*)
        !           317:        echo powerpc-harris-powerunix
        !           318:        exit 0 ;;
        !           319:     m88k:CX/UX:7*:*)
        !           320:        echo m88k-harris-cxux7
        !           321:        exit 0 ;;
        !           322:     m88k:*:4*:R4*)
        !           323:        echo m88k-motorola-sysv4
        !           324:        exit 0 ;;
        !           325:     m88k:*:3*:R3*)
        !           326:        echo m88k-motorola-sysv3
        !           327:        exit 0 ;;
        !           328:     AViiON:dgux:*:*)
        !           329:         # DG/UX returns AViiON for all architectures
        !           330:         UNAME_PROCESSOR=`/usr/bin/uname -p`
        !           331:         if [ $UNAME_PROCESSOR = mc88100 -o $UNAME_PROCESSOR = mc88110 ] ; then
        !           332:        if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx \
        !           333:             -o ${TARGET_BINARY_INTERFACE}x = x ] ; then
        !           334:                echo m88k-dg-dgux${UNAME_RELEASE}
        !           335:        else
        !           336:                echo m88k-dg-dguxbcs${UNAME_RELEASE}
        !           337:        fi
        !           338:         else echo i586-dg-dgux${UNAME_RELEASE}
        !           339:         fi
        !           340:        exit 0 ;;
        !           341:     M88*:DolphinOS:*:*)        # DolphinOS (SVR3)
        !           342:        echo m88k-dolphin-sysv3
        !           343:        exit 0 ;;
        !           344:     M88*:*:R3*:*)
        !           345:        # Delta 88k system running SVR3
        !           346:        echo m88k-motorola-sysv3
        !           347:        exit 0 ;;
        !           348:     XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
        !           349:        echo m88k-tektronix-sysv3
        !           350:        exit 0 ;;
        !           351:     Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
        !           352:        echo m68k-tektronix-bsd
        !           353:        exit 0 ;;
        !           354:     *:IRIX*:*:*)
        !           355:        echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
        !           356:        exit 0 ;;
        !           357:     ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
        !           358:        echo romp-ibm-aix      # uname -m gives an 8 hex-code CPU id
        !           359:        exit 0 ;;              # Note that: echo "'`uname -s`'" gives 'AIX '
        !           360:     i?86:AIX:*:*)
        !           361:        echo i386-ibm-aix
        !           362:        exit 0 ;;
        !           363:     *:AIX:2:3)
        !           364:        if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
        !           365:                sed 's/^                //' << EOF >$dummy.c
        !           366:                #include <sys/systemcfg.h>
        !           367: 
        !           368:                main()
        !           369:                        {
        !           370:                        if (!__power_pc())
        !           371:                                exit(1);
        !           372:                        puts("powerpc-ibm-aix3.2.5");
        !           373:                        exit(0);
        !           374:                        }
        !           375: EOF
        !           376:                $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0
        !           377:                rm -f $dummy.c $dummy
        !           378:                echo rs6000-ibm-aix3.2.5
        !           379:        elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
        !           380:                echo rs6000-ibm-aix3.2.4
        !           381:        else
        !           382:                echo rs6000-ibm-aix3.2
        !           383:        fi
        !           384:        exit 0 ;;
        !           385:     *:AIX:*:4)
        !           386:        IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'`
        !           387:        if /usr/sbin/lsattr -EHl ${IBM_CPU_ID} | grep POWER >/dev/null 2>&1; then
        !           388:                IBM_ARCH=rs6000
        !           389:        else
        !           390:                IBM_ARCH=powerpc
        !           391:        fi
        !           392:        if [ -x /usr/bin/oslevel ] ; then
        !           393:                IBM_REV=`/usr/bin/oslevel`
        !           394:        else
        !           395:                IBM_REV=4.${UNAME_RELEASE}
        !           396:        fi
        !           397:        echo ${IBM_ARCH}-ibm-aix${IBM_REV}
        !           398:        exit 0 ;;
        !           399:     *:AIX:*:*)
        !           400:        echo rs6000-ibm-aix
        !           401:        exit 0 ;;
        !           402:     ibmrt:4.4BSD:*|romp-ibm:BSD:*)
        !           403:        echo romp-ibm-bsd4.4
        !           404:        exit 0 ;;
        !           405:     ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC NetBSD and
        !           406:        echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
        !           407:        exit 0 ;;                           # report: romp-ibm BSD 4.3
        !           408:     *:BOSX:*:*)
        !           409:        echo rs6000-bull-bosx
        !           410:        exit 0 ;;
        !           411:     DPX/2?00:B.O.S.:*:*)
        !           412:        echo m68k-bull-sysv3
        !           413:        exit 0 ;;
        !           414:     9000/[34]??:4.3bsd:1.*:*)
        !           415:        echo m68k-hp-bsd
        !           416:        exit 0 ;;
        !           417:     hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
        !           418:        echo m68k-hp-bsd4.4
        !           419:        exit 0 ;;
        !           420:     9000/[34678]??:HP-UX:*:*)
        !           421:        case "${UNAME_MACHINE}" in
        !           422:            9000/31? )            HP_ARCH=m68000 ;;
        !           423:            9000/[34]?? )         HP_ARCH=m68k ;;
        !           424:            9000/[678][0-9][0-9])
        !           425:               sed 's/^              //' << EOF >$dummy.c
        !           426:               #include <stdlib.h>
        !           427:               #include <unistd.h>
        !           428: 
        !           429:               int main ()
        !           430:               {
        !           431:               #if defined(_SC_KERNEL_BITS)
        !           432:                   long bits = sysconf(_SC_KERNEL_BITS);
        !           433:               #endif
        !           434:                   long cpu  = sysconf (_SC_CPU_VERSION);
        !           435: 
        !           436:                   switch (cpu)
        !           437:                {
        !           438:                case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
        !           439:                case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
        !           440:                case CPU_PA_RISC2_0:
        !           441:               #if defined(_SC_KERNEL_BITS)
        !           442:                    switch (bits)
        !           443:                        {
        !           444:                        case 64: puts ("hppa2.0w"); break;
        !           445:                        case 32: puts ("hppa2.0n"); break;
        !           446:                        default: puts ("hppa2.0"); break;
        !           447:                        } break;
        !           448:               #else  /* !defined(_SC_KERNEL_BITS) */
        !           449:                    puts ("hppa2.0"); break;
        !           450:               #endif
        !           451:                default: puts ("hppa1.0"); break;
        !           452:                }
        !           453:                   exit (0);
        !           454:               }
        !           455: EOF
        !           456:        ($CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy`
        !           457:        rm -f $dummy.c $dummy
        !           458:        esac
        !           459:        HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
        !           460:        echo ${HP_ARCH}-hp-hpux${HPUX_REV}
        !           461:        exit 0 ;;
        !           462:     3050*:HI-UX:*:*)
        !           463:        sed 's/^        //' << EOF >$dummy.c
        !           464:        #include <unistd.h>
        !           465:        int
        !           466:        main ()
        !           467:        {
        !           468:          long cpu = sysconf (_SC_CPU_VERSION);
        !           469:          /* The order matters, because CPU_IS_HP_MC68K erroneously returns
        !           470:             true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
        !           471:             results, however.  */
        !           472:          if (CPU_IS_PA_RISC (cpu))
        !           473:            {
        !           474:              switch (cpu)
        !           475:                {
        !           476:                  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
        !           477:                  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
        !           478:                  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
        !           479:                  default: puts ("hppa-hitachi-hiuxwe2"); break;
        !           480:                }
        !           481:            }
        !           482:          else if (CPU_IS_HP_MC68K (cpu))
        !           483:            puts ("m68k-hitachi-hiuxwe2");
        !           484:          else puts ("unknown-hitachi-hiuxwe2");
        !           485:          exit (0);
        !           486:        }
        !           487: EOF
        !           488:        $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0
        !           489:        rm -f $dummy.c $dummy
        !           490:        echo unknown-hitachi-hiuxwe2
        !           491:        exit 0 ;;
        !           492:     9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
        !           493:        echo hppa1.1-hp-bsd
        !           494:        exit 0 ;;
        !           495:     9000/8??:4.3bsd:*:*)
        !           496:        echo hppa1.0-hp-bsd
        !           497:        exit 0 ;;
        !           498:     *9??*:MPE/iX:*:*)
        !           499:        echo hppa1.0-hp-mpeix
        !           500:        exit 0 ;;
        !           501:     hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
        !           502:        echo hppa1.1-hp-osf
        !           503:        exit 0 ;;
        !           504:     hp8??:OSF1:*:*)
        !           505:        echo hppa1.0-hp-osf
        !           506:        exit 0 ;;
        !           507:     i?86:OSF1:*:*)
        !           508:        if [ -x /usr/sbin/sysversion ] ; then
        !           509:            echo ${UNAME_MACHINE}-unknown-osf1mk
        !           510:        else
        !           511:            echo ${UNAME_MACHINE}-unknown-osf1
        !           512:        fi
        !           513:        exit 0 ;;
        !           514:     parisc*:Lites*:*:*)
        !           515:        echo hppa1.1-hp-lites
        !           516:        exit 0 ;;
        !           517:     hppa*:OpenBSD:*:*)
        !           518:        echo hppa-unknown-openbsd
        !           519:        exit 0 ;;
        !           520:     C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
        !           521:        echo c1-convex-bsd
        !           522:         exit 0 ;;
        !           523:     C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
        !           524:        if getsysinfo -f scalar_acc
        !           525:        then echo c32-convex-bsd
        !           526:        else echo c2-convex-bsd
        !           527:        fi
        !           528:         exit 0 ;;
        !           529:     C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
        !           530:        echo c34-convex-bsd
        !           531:         exit 0 ;;
        !           532:     C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
        !           533:        echo c38-convex-bsd
        !           534:         exit 0 ;;
        !           535:     C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
        !           536:        echo c4-convex-bsd
        !           537:         exit 0 ;;
        !           538:     CRAY*X-MP:*:*:*)
        !           539:        echo xmp-cray-unicos
        !           540:         exit 0 ;;
        !           541:     CRAY*Y-MP:*:*:*)
        !           542:        echo ymp-cray-unicos${UNAME_RELEASE}
        !           543:        exit 0 ;;
        !           544:     CRAY*[A-Z]90:*:*:*)
        !           545:        echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
        !           546:        | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
        !           547:              -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
        !           548:        exit 0 ;;
        !           549:     CRAY*TS:*:*:*)
        !           550:        echo t90-cray-unicos${UNAME_RELEASE}
        !           551:        exit 0 ;;
        !           552:     CRAY*T3E:*:*:*)
        !           553:        echo t3e-cray-unicosmk${UNAME_RELEASE}
        !           554:        exit 0 ;;
        !           555:     CRAY-2:*:*:*)
        !           556:        echo cray2-cray-unicos
        !           557:         exit 0 ;;
        !           558:     F300:UNIX_System_V:*:*)
        !           559:         FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
        !           560:         FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
        !           561:         echo "f300-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
        !           562:         exit 0 ;;
        !           563:     F301:UNIX_System_V:*:*)
        !           564:        echo f301-fujitsu-uxpv`echo $UNAME_RELEASE | sed 's/ .*//'`
        !           565:        exit 0 ;;
        !           566:     hp3[0-9][05]:NetBSD:*:*)
        !           567:        echo m68k-hp-netbsd${UNAME_RELEASE}
        !           568:        exit 0 ;;
        !           569:     hp300:OpenBSD:*:*)
        !           570:        echo m68k-unknown-openbsd${UNAME_RELEASE}
        !           571:        exit 0 ;;
        !           572:     i?86:BSD/386:*:* | i?86:BSD/OS:*:*)
        !           573:        echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
        !           574:        exit 0 ;;
        !           575:     sparc*:BSD/OS:*:*)
        !           576:        echo sparc-unknown-bsdi${UNAME_RELEASE}
        !           577:        exit 0 ;;
        !           578:     *:BSD/OS:*:*)
        !           579:        echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
        !           580:        exit 0 ;;
        !           581:     *:FreeBSD:*:*)
        !           582:        if test -x /usr/bin/objformat; then
        !           583:            if test "elf" = "`/usr/bin/objformat`"; then
        !           584:                echo ${UNAME_MACHINE}-unknown-freebsdelf`echo ${UNAME_RELEASE}|sed -e 's/[-_].*//'`
        !           585:                exit 0
        !           586:            fi
        !           587:        fi
        !           588:        echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
        !           589:        exit 0 ;;
        !           590:     *:NetBSD:*:*)
        !           591:        echo ${UNAME_MACHINE}-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
        !           592:        exit 0 ;;
        !           593:     *:OpenBSD:*:*)
        !           594:        echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
        !           595:        exit 0 ;;
        !           596:     i*:CYGWIN*:*)
        !           597:        echo ${UNAME_MACHINE}-pc-cygwin
        !           598:        exit 0 ;;
        !           599:     i*:MINGW*:*)
        !           600:        echo ${UNAME_MACHINE}-pc-mingw32
        !           601:        exit 0 ;;
        !           602:     i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
        !           603:        # How do we know it's Interix rather than the generic POSIX subsystem?
        !           604:        # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
        !           605:        # UNAME_MACHINE based on the output of uname instead of i386?
        !           606:        echo i386-pc-interix
        !           607:        exit 0 ;;
        !           608:     i*:UWIN*:*)
        !           609:        echo ${UNAME_MACHINE}-pc-uwin
        !           610:        exit 0 ;;
        !           611:     p*:CYGWIN*:*)
        !           612:        echo powerpcle-unknown-cygwin
        !           613:        exit 0 ;;
        !           614:     prep*:SunOS:5.*:*)
        !           615:        echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
        !           616:        exit 0 ;;
        !           617:     *:GNU:*:*)
        !           618:        echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
        !           619:        exit 0 ;;
        !           620:     *:Linux:*:*)
        !           621: #      # uname on the ARM produces all sorts of strangeness, and we need to
        !           622: #      # filter it out.
        !           623: #      case "$UNAME_MACHINE" in
        !           624: #        armv*)                      UNAME_MACHINE=$UNAME_MACHINE ;;
        !           625: #        arm* | sa110*)              UNAME_MACHINE="arm" ;;
        !           626: #      esac
        !           627: 
        !           628:        # The BFD linker knows what the default object file format is, so
        !           629:        # first see if it will tell us. cd to the root directory to prevent
        !           630:        # problems with other programs or directories called `ld' in the path.
        !           631:        ld_help_string=`cd /; ld --help 2>&1`
        !           632:        ld_supported_emulations=`echo $ld_help_string \
        !           633:                         | sed -ne '/supported emulations:/!d
        !           634:                                    s/[         ][      ]*/ /g
        !           635:                                    s/.*supported emulations: *//
        !           636:                                    s/ .*//
        !           637:                                    p'`
        !           638:         case "$ld_supported_emulations" in
        !           639:          i?86linux)  echo "${UNAME_MACHINE}-pc-linux-gnuaout"      ; exit 0 ;;
        !           640:          i?86coff)   echo "${UNAME_MACHINE}-pc-linux-gnucoff"      ; exit 0 ;;
        !           641:          sparclinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
        !           642:          armlinux)   echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
        !           643:          m68klinux)  echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
        !           644:          elf32arm)   echo "${UNAME_MACHINE}-unknown-linux-gnu"     ; exit 0 ;;
        !           645:          elf32ppc)
        !           646:                # Determine Lib Version
        !           647:                cat >$dummy.c <<EOF
        !           648: #include <features.h>
        !           649: #if defined(__GLIBC__)
        !           650: extern char __libc_version[];
        !           651: extern char __libc_release[];
        !           652: #endif
        !           653: main(argc, argv)
        !           654:      int argc;
        !           655:      char *argv[];
        !           656: {
        !           657: #if defined(__GLIBC__)
        !           658:   printf("%s %s\n", __libc_version, __libc_release);
        !           659: #else
        !           660:   printf("unkown\n");
        !           661: #endif
        !           662:   return 0;
        !           663: }
        !           664: EOF
        !           665:                LIBC=""
        !           666:                $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null
        !           667:                if test "$?" = 0 ; then
        !           668:                        ./$dummy | grep 1\.99 > /dev/null
        !           669:                        if test "$?" = 0 ; then
        !           670:                                LIBC="libc1"
        !           671:                        fi
        !           672:                fi      
        !           673:                rm -f $dummy.c $dummy
        !           674:                echo powerpc-unknown-linux-gnu${LIBC} ; exit 0 ;;
        !           675:        esac
        !           676: 
        !           677:        if test "${UNAME_MACHINE}" = "alpha" ; then
        !           678:                sed 's/^        //'  <<EOF >$dummy.s
        !           679:                .globl main
        !           680:                .ent main
        !           681:        main:
        !           682:                .frame \$30,0,\$26,0
        !           683:                .prologue 0
        !           684:                .long 0x47e03d80 # implver $0
        !           685:                lda \$2,259
        !           686:                .long 0x47e20c21 # amask $2,$1
        !           687:                srl \$1,8,\$2
        !           688:                sll \$2,2,\$2
        !           689:                sll \$0,3,\$0
        !           690:                addl \$1,\$0,\$0
        !           691:                addl \$2,\$0,\$0
        !           692:                ret \$31,(\$26),1
        !           693:                .end main
        !           694: EOF
        !           695:                LIBC=""
        !           696:                $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
        !           697:                if test "$?" = 0 ; then
        !           698:                        ./$dummy
        !           699:                        case "$?" in
        !           700:                        7)
        !           701:                                UNAME_MACHINE="alpha"
        !           702:                                ;;
        !           703:                        15)
        !           704:                                UNAME_MACHINE="alphaev5"
        !           705:                                ;;
        !           706:                        14)
        !           707:                                UNAME_MACHINE="alphaev56"
        !           708:                                ;;
        !           709:                        10)
        !           710:                                UNAME_MACHINE="alphapca56"
        !           711:                                ;;
        !           712:                        16)
        !           713:                                UNAME_MACHINE="alphaev6"
        !           714:                                ;;
        !           715:                        esac
        !           716: 
        !           717:                        objdump --private-headers $dummy | \
        !           718:                          grep ld.so.1 > /dev/null
        !           719:                        if test "$?" = 0 ; then
        !           720:                                LIBC="libc1"
        !           721:                        fi
        !           722:                fi
        !           723:                rm -f $dummy.s $dummy
        !           724:                echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} ; exit 0
        !           725:        elif test "${UNAME_MACHINE}" = "mips" ; then
        !           726:          cat >$dummy.c <<EOF
        !           727: #ifdef __cplusplus
        !           728:        int main (int argc, char *argv[]) {
        !           729: #else
        !           730:        int main (argc, argv) int argc; char *argv[]; {
        !           731: #endif
        !           732: #ifdef __MIPSEB__
        !           733:   printf ("%s-unknown-linux-gnu\n", argv[1]);
        !           734: #endif
        !           735: #ifdef __MIPSEL__
        !           736:   printf ("%sel-unknown-linux-gnu\n", argv[1]);
        !           737: #endif
        !           738:   return 0;
        !           739: }
        !           740: EOF
        !           741:          $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
        !           742:          rm -f $dummy.c $dummy
        !           743:        else
        !           744:          # Either a pre-BFD a.out linker (linux-gnuoldld)
        !           745:          # or one that does not give us useful --help.
        !           746:          # GCC wants to distinguish between linux-gnuoldld and linux-gnuaout.
        !           747:          # If ld does not provide *any* "supported emulations:"
        !           748:          # that means it is gnuoldld.
        !           749:          echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations:"
        !           750:          test $? != 0 && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0
        !           751: 
        !           752:          case "${UNAME_MACHINE}" in
        !           753:          i?86)
        !           754:            VENDOR=pc;
        !           755:            ;;
        !           756:          *)
        !           757:            VENDOR=unknown;
        !           758:            ;;
        !           759:          esac
        !           760:          # Determine whether the default compiler is a.out or elf
        !           761:          cat >$dummy.c <<EOF
        !           762: #include <features.h>
        !           763: #ifdef __cplusplus
        !           764:        int main (int argc, char *argv[]) {
        !           765: #else
        !           766:        int main (argc, argv) int argc; char *argv[]; {
        !           767: #endif
        !           768: #ifdef __ELF__
        !           769: # ifdef __GLIBC__
        !           770: #  if __GLIBC__ >= 2
        !           771:     printf ("%s-${VENDOR}-linux-gnu\n", argv[1]);
        !           772: #  else
        !           773:     printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
        !           774: #  endif
        !           775: # else
        !           776:    printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
        !           777: # endif
        !           778: #else
        !           779:   printf ("%s-${VENDOR}-linux-gnuaout\n", argv[1]);
        !           780: #endif
        !           781:   return 0;
        !           782: }
        !           783: EOF
        !           784:          $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
        !           785:          rm -f $dummy.c $dummy
        !           786:        fi ;;
        !           787: # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.  earlier versions
        !           788: # are messed up and put the nodename in both sysname and nodename.
        !           789:     i?86:DYNIX/ptx:4*:*)
        !           790:        echo i386-sequent-sysv4
        !           791:        exit 0 ;;
        !           792:     i?86:UNIX_SV:4.2MP:2.*)
        !           793:         # Unixware is an offshoot of SVR4, but it has its own version
        !           794:         # number series starting with 2...
        !           795:         # I am not positive that other SVR4 systems won't match this,
        !           796:        # I just have to hope.  -- rms.
        !           797:         # Use sysv4.2uw... so that sysv4* matches it.
        !           798:        echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
        !           799:        exit 0 ;;
        !           800:     i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*)
        !           801:        if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
        !           802:                echo ${UNAME_MACHINE}-univel-sysv${UNAME_RELEASE}
        !           803:        else
        !           804:                echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE}
        !           805:        fi
        !           806:        exit 0 ;;
        !           807:     i?86:*:5:7*)
        !           808:        UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
        !           809:        (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
        !           810:        (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) && UNAME_MACHINE=i586
        !           811:        (/bin/uname -X|egrep '^Machine.*Pent.*II' >/dev/null) && UNAME_MACHINE=i686
        !           812:        (/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) && UNAME_MACHINE=i585
        !           813:        echo ${UNAME_MACHINE}-${UNAME_SYSTEM}${UNAME_VERSION}-sysv${UNAME_RELEASE}
        !           814:        exit 0 ;;
        !           815:     i?86:*:3.2:*)
        !           816:        if test -f /usr/options/cb.name; then
        !           817:                UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
        !           818:                echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
        !           819:        elif /bin/uname -X 2>/dev/null >/dev/null ; then
        !           820:                UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
        !           821:                (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
        !           822:                (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
        !           823:                        && UNAME_MACHINE=i586
        !           824:                (/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \
        !           825:                        && UNAME_MACHINE=i686
        !           826:                (/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \
        !           827:                        && UNAME_MACHINE=i686
        !           828:                echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
        !           829:        else
        !           830:                echo ${UNAME_MACHINE}-pc-sysv32
        !           831:        fi
        !           832:        exit 0 ;;
        !           833:     pc:*:*:*)
        !           834:         # uname -m prints for DJGPP always 'pc', but it prints nothing about
        !           835:         # the processor, so we play safe by assuming i386.
        !           836:        echo i386-pc-msdosdjgpp
        !           837:         exit 0 ;;
        !           838:     Intel:Mach:3*:*)
        !           839:        echo i386-pc-mach3
        !           840:        exit 0 ;;
        !           841:     paragon:*:*:*)
        !           842:        echo i860-intel-osf1
        !           843:        exit 0 ;;
        !           844:     i860:*:4.*:*) # i860-SVR4
        !           845:        if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
        !           846:          echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
        !           847:        else # Add other i860-SVR4 vendors below as they are discovered.
        !           848:          echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
        !           849:        fi
        !           850:        exit 0 ;;
        !           851:     mini*:CTIX:SYS*5:*)
        !           852:        # "miniframe"
        !           853:        echo m68010-convergent-sysv
        !           854:        exit 0 ;;
        !           855:     M68*:*:R3V[567]*:*)
        !           856:        test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
        !           857:     3[34]??:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
        !           858:        OS_REL=''
        !           859:        test -r /etc/.relid \
        !           860:        && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
        !           861:        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
        !           862:          && echo i486-ncr-sysv4.3${OS_REL} && exit 0
        !           863:        /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
        !           864:          && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
        !           865:     3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
        !           866:         /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
        !           867:           && echo i486-ncr-sysv4 && exit 0 ;;
        !           868:     m68*:LynxOS:2.*:*)
        !           869:        echo m68k-unknown-lynxos${UNAME_RELEASE}
        !           870:        exit 0 ;;
        !           871:     mc68030:UNIX_System_V:4.*:*)
        !           872:        echo m68k-atari-sysv4
        !           873:        exit 0 ;;
        !           874:     i?86:LynxOS:2.*:* | i?86:LynxOS:3.[01]*:*)
        !           875:        echo i386-unknown-lynxos${UNAME_RELEASE}
        !           876:        exit 0 ;;
        !           877:     TSUNAMI:LynxOS:2.*:*)
        !           878:        echo sparc-unknown-lynxos${UNAME_RELEASE}
        !           879:        exit 0 ;;
        !           880:     rs6000:LynxOS:2.*:* | PowerPC:LynxOS:2.*:*)
        !           881:        echo rs6000-unknown-lynxos${UNAME_RELEASE}
        !           882:        exit 0 ;;
        !           883:     SM[BE]S:UNIX_SV:*:*)
        !           884:        echo mips-dde-sysv${UNAME_RELEASE}
        !           885:        exit 0 ;;
        !           886:     RM*:ReliantUNIX-*:*:*)
        !           887:        echo mips-sni-sysv4
        !           888:        exit 0 ;;
        !           889:     RM*:SINIX-*:*:*)
        !           890:        echo mips-sni-sysv4
        !           891:        exit 0 ;;
        !           892:     *:SINIX-*:*:*)
        !           893:        if uname -p 2>/dev/null >/dev/null ; then
        !           894:                UNAME_MACHINE=`(uname -p) 2>/dev/null`
        !           895:                echo ${UNAME_MACHINE}-sni-sysv4
        !           896:        else
        !           897:                echo ns32k-sni-sysv
        !           898:        fi
        !           899:        exit 0 ;;
        !           900:     PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
        !           901:                            # says <Richard.M.Bartel@ccMail.Census.GOV>
        !           902:         echo i586-unisys-sysv4
        !           903:         exit 0 ;;
        !           904:     *:UNIX_System_V:4*:FTX*)
        !           905:        # From Gerald Hewes <hewes@openmarket.com>.
        !           906:        # How about differentiating between stratus architectures? -djm
        !           907:        echo hppa1.1-stratus-sysv4
        !           908:        exit 0 ;;
        !           909:     *:*:*:FTX*)
        !           910:        # From seanf@swdc.stratus.com.
        !           911:        echo i860-stratus-sysv4
        !           912:        exit 0 ;;
        !           913:     mc68*:A/UX:*:*)
        !           914:        echo m68k-apple-aux${UNAME_RELEASE}
        !           915:        exit 0 ;;
        !           916:     news*:NEWS-OS:*:6*)
        !           917:        echo mips-sony-newsos6
        !           918:        exit 0 ;;
        !           919:     R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
        !           920:        if [ -d /usr/nec ]; then
        !           921:                echo mips-nec-sysv${UNAME_RELEASE}
        !           922:        else
        !           923:                echo mips-unknown-sysv${UNAME_RELEASE}
        !           924:        fi
        !           925:         exit 0 ;;
        !           926:     BeBox:BeOS:*:*)    # BeOS running on hardware made by Be, PPC only.
        !           927:        echo powerpc-be-beos
        !           928:        exit 0 ;;
        !           929:     BeMac:BeOS:*:*)    # BeOS running on Mac or Mac clone, PPC only.
        !           930:        echo powerpc-apple-beos
        !           931:        exit 0 ;;
        !           932:     BePC:BeOS:*:*)     # BeOS running on Intel PC compatible.
        !           933:        echo i586-pc-beos
        !           934:        exit 0 ;;
        !           935:     SX-4:SUPER-UX:*:*)
        !           936:        echo sx4-nec-superux${UNAME_RELEASE}
        !           937:        exit 0 ;;
        !           938:     SX-5:SUPER-UX:*:*)
        !           939:        echo sx5-nec-superux${UNAME_RELEASE}
        !           940:        exit 0 ;;
        !           941:     Power*:Rhapsody:*:*)
        !           942:        echo powerpc-apple-rhapsody${UNAME_RELEASE}
        !           943:        exit 0 ;;
        !           944:     *:Rhapsody:*:*)
        !           945:        echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
        !           946:        exit 0 ;;
        !           947: esac
        !           948: 
        !           949: #echo '(No uname command or uname output not recognized.)' 1>&2
        !           950: #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
        !           951: 
        !           952: cat >$dummy.c <<EOF
        !           953: #ifdef _SEQUENT_
        !           954: # include <sys/types.h>
        !           955: # include <sys/utsname.h>
        !           956: #endif
        !           957: main ()
        !           958: {
        !           959: #if defined (sony)
        !           960: #if defined (MIPSEB)
        !           961:   /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
        !           962:      I don't know....  */
        !           963:   printf ("mips-sony-bsd\n"); exit (0);
        !           964: #else
        !           965: #include <sys/param.h>
        !           966:   printf ("m68k-sony-newsos%s\n",
        !           967: #ifdef NEWSOS4
        !           968:           "4"
        !           969: #else
        !           970:          ""
        !           971: #endif
        !           972:          ); exit (0);
        !           973: #endif
        !           974: #endif
        !           975: 
        !           976: #if defined (__arm) && defined (__acorn) && defined (__unix)
        !           977:   printf ("arm-acorn-riscix"); exit (0);
        !           978: #endif
        !           979: 
        !           980: #if defined (hp300) && !defined (hpux)
        !           981:   printf ("m68k-hp-bsd\n"); exit (0);
        !           982: #endif
        !           983: 
        !           984: #if defined (NeXT)
        !           985: #if !defined (__ARCHITECTURE__)
        !           986: #define __ARCHITECTURE__ "m68k"
        !           987: #endif
        !           988:   int version;
        !           989:   version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
        !           990:   if (version < 4)
        !           991:     printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
        !           992:   else
        !           993:     printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
        !           994:   exit (0);
        !           995: #endif
        !           996: 
        !           997: #if defined (MULTIMAX) || defined (n16)
        !           998: #if defined (UMAXV)
        !           999:   printf ("ns32k-encore-sysv\n"); exit (0);
        !          1000: #else
        !          1001: #if defined (CMU)
        !          1002:   printf ("ns32k-encore-mach\n"); exit (0);
        !          1003: #else
        !          1004:   printf ("ns32k-encore-bsd\n"); exit (0);
        !          1005: #endif
        !          1006: #endif
        !          1007: #endif
        !          1008: 
        !          1009: #if defined (__386BSD__)
        !          1010:   printf ("i386-pc-bsd\n"); exit (0);
        !          1011: #endif
        !          1012: 
        !          1013: #if defined (sequent)
        !          1014: #if defined (i386)
        !          1015:   printf ("i386-sequent-dynix\n"); exit (0);
        !          1016: #endif
        !          1017: #if defined (ns32000)
        !          1018:   printf ("ns32k-sequent-dynix\n"); exit (0);
        !          1019: #endif
        !          1020: #endif
        !          1021: 
        !          1022: #if defined (_SEQUENT_)
        !          1023:     struct utsname un;
        !          1024: 
        !          1025:     uname(&un);
        !          1026: 
        !          1027:     if (strncmp(un.version, "V2", 2) == 0) {
        !          1028:        printf ("i386-sequent-ptx2\n"); exit (0);
        !          1029:     }
        !          1030:     if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
        !          1031:        printf ("i386-sequent-ptx1\n"); exit (0);
        !          1032:     }
        !          1033:     printf ("i386-sequent-ptx\n"); exit (0);
        !          1034: 
        !          1035: #endif
        !          1036: 
        !          1037: #if defined (vax)
        !          1038: #if !defined (ultrix)
        !          1039:   printf ("vax-dec-bsd\n"); exit (0);
        !          1040: #else
        !          1041:   printf ("vax-dec-ultrix\n"); exit (0);
        !          1042: #endif
        !          1043: #endif
        !          1044: 
        !          1045: #if defined (alliant) && defined (i860)
        !          1046:   printf ("i860-alliant-bsd\n"); exit (0);
        !          1047: #endif
        !          1048: 
        !          1049:   exit (1);
        !          1050: }
        !          1051: EOF
        !          1052: 
        !          1053: $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm $dummy.c $dummy && exit 0
        !          1054: rm -f $dummy.c $dummy
        !          1055: 
        !          1056: # Apollos put the system type in the environment.
        !          1057: 
        !          1058: test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }
        !          1059: 
        !          1060: # Convex versions that predate uname can use getsysinfo(1)
        !          1061: 
        !          1062: if [ -x /usr/convex/getsysinfo ]
        !          1063: then
        !          1064:     case `getsysinfo -f cpu_type` in
        !          1065:     c1*)
        !          1066:        echo c1-convex-bsd
        !          1067:        exit 0 ;;
        !          1068:     c2*)
        !          1069:        if getsysinfo -f scalar_acc
        !          1070:        then echo c32-convex-bsd
        !          1071:        else echo c2-convex-bsd
        !          1072:        fi
        !          1073:        exit 0 ;;
        !          1074:     c34*)
        !          1075:        echo c34-convex-bsd
        !          1076:        exit 0 ;;
        !          1077:     c38*)
        !          1078:        echo c38-convex-bsd
        !          1079:        exit 0 ;;
        !          1080:     c4*)
        !          1081:        echo c4-convex-bsd
        !          1082:        exit 0 ;;
        !          1083:     esac
        !          1084: fi
        !          1085: 
        !          1086: #echo '(Unable to guess system type)' 1>&2
        !          1087: 
        !          1088: exit 1

Webmaster