Annotation of rpl/config.guess, revision 1.4

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

CVSweb interface <joel.bertrand@systella.fr>