[BACK]Return to config.guess CVS log [TXT][DIR] Up to [local] / src / usr.bin / sudo

Annotation of src/usr.bin/sudo/config.guess, Revision 1.13

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