Fossil SCM

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

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button