Subversion Repositories Open64

[/] [sim/] [fsim/] [shell/] [tclsh/] [readline/] [support/] [config.guess] - Blame information for rev 2072

Details | Compare with Previous | View Log

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