source: trunk/packages/libyaml/config/config.guess @ 1574

Last change on this file since 1574 was 898, checked in by hartmans, 16 years ago

Add pyyaml and libyaml packages
backported from lenny.
There is discussion about how these should go in the repository; these are added in this form
in order to make forward progress.

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