Annotation of Amaya/config.guess, revision 1.3

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

Webmaster