source: trunk/third/libgtop/config.guess @ 18532

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