~ubuntu-branches/ubuntu/warty/quagga/warty

« back to all changes in this revision

Viewing changes to config.guess

  • Committer: Bazaar Package Importer
  • Author(s): Fabio M. Di Nitto
  • Date: 2004-06-29 09:50:59 UTC
  • Revision ID: james.westby@ubuntu.com-20040629095059-px1m2m108z4qw1mr
Tags: upstream-0.96.5
ImportĀ upstreamĀ versionĀ 0.96.5

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