~ubuntu-branches/ubuntu/vivid/gnome-backgrounds/vivid

« back to all changes in this revision

Viewing changes to config.guess

  • Committer: Bazaar Package Importer
  • Author(s): Sebastien Bacher
  • Date: 2005-03-07 19:48:47 UTC
  • Revision ID: james.westby@ubuntu.com-20050307194847-j743r98olajf0vwu
Tags: upstream-2.10.0
ImportĀ upstreamĀ versionĀ 2.10.0

Show diffs side-by-side

added added

removed removed

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