source: trunk/gui/tclconfig/config.guess @ 503

Last change on this file since 503 was 503, checked in by nkissebe, 18 years ago

Converted to Tcl Extension Architecture (TEA) v3.5 for base Windows support. Added Windows ports of getrlimit, getrusage, gettimeofday, setrlimit functions.

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