root/main/trunk/greenstone2/config.guess @ 31975

Revision 2962, 37.2 KB (checked in by jrm21, 18 years ago)

Updated with new versions from autoconf version 2.52 (from ftp.gnu.org), so
hopefully we now understand most machines currently out there. Previous
"upgrade" for the alphas actually stopped us from recognising darwin (OS X),
so this new `official' version should be canonical....

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