source: trunk/third/libgnomeprintui/config.guess @ 20964

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