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 # 2011 Free Software Foundation, Inc.
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.
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.
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
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.
30 # Originally written by Per Bothner. Please send patches (context
31 # diff format) to <config-patches@gnu.org> and include a ChangeLog
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.
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
41 me
=`echo "$0" | sed -e 's,.*/,,'`
46 Output the configuration name of the system \`$me' is run on.
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
53 Report bugs and patches to <config-patches@gnu.org>."
56 GNU config.guess ($timestamp)
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, 2011 Free
61 Software Foundation, Inc.
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."
67 Try \`$me --help' for more information."
70 while test $# -gt 0 ; do
72 --time-stamp |
--time* |
-t )
73 echo "$timestamp" ; exit ;;
75 echo "$version" ; exit ;;
77 echo "$usage"; exit ;;
78 -- ) # Stop option processing
80 - ) # Use stdin as input.
83 echo "$me: invalid option $1$help" >&2
91 echo "$me: too many arguments$help" >&2
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.
102 # Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
103 # use `HOST_CC' if defined, but it is deprecated.
105 # Portable tmp directory creation inspired by the Autoconf team.
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 ;
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 ; } ;
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 ;
124 if test x"$CC_FOR_BUILD" = x ; then
125 CC_FOR_BUILD=no_compiler_found ;
128 ,,*) CC_FOR_BUILD=$CC ;;
129 ,*,*) CC_FOR_BUILD=$HOST_CC ;;
130 esac ; set_cc_for_build= ;'
132 # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
133 # (ghazi@noc.rutgers.edu 1994-08-24)
134 if (test -f /.attbin
/uname
) >/dev
/null
2>&1 ; then
135 PATH
=$PATH:/.attbin
; export PATH
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
143 # Note: order is significant - the case branches are not exclusive.
145 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
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.
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 ;;
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 \
176 # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
177 # Return netbsd for either. FIX?
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
197 release
=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
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}"
206 UNAME_MACHINE_ARCH
=`arch | sed 's/OpenBSD.//'`
207 echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
210 echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
213 echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
216 echo powerpc-unknown-mirbsd
${UNAME_RELEASE}
219 echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
222 case $UNAME_RELEASE in
224 UNAME_RELEASE
=`/usr/sbin/sizer -v | awk '{print $3}'`
227 UNAME_RELEASE
=`/usr/sbin/sizer -v | awk '{print $4}'`
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
237 UNAME_MACHINE
="alpha" ;;
239 UNAME_MACHINE
="alpha" ;;
240 "LCA4 (21066/21068)")
241 UNAME_MACHINE
="alpha" ;;
243 UNAME_MACHINE
="alphaev5" ;;
245 UNAME_MACHINE
="alphaev56" ;;
247 UNAME_MACHINE
="alphapca56" ;;
249 UNAME_MACHINE
="alphapca57" ;;
251 UNAME_MACHINE
="alphaev6" ;;
253 UNAME_MACHINE
="alphaev67" ;;
255 UNAME_MACHINE
="alphaev68" ;;
257 UNAME_MACHINE
="alphaev68" ;;
259 UNAME_MACHINE
="alphaev68" ;;
260 "EV6.9A (21264/EV69A)")
261 UNAME_MACHINE
="alphaev69" ;;
263 UNAME_MACHINE
="alphaev7" ;;
265 UNAME_MACHINE
="alphaev79" ;;
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 # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
277 Alpha\
*:Windows_NT
*:*)
278 # How do we know it's Interix rather than the generic POSIX subsystem?
279 # Should we change UNAME_MACHINE based on the output of uname instead
280 # of the specific Alpha model?
281 echo alpha-pc-interix
283 21064:Windows_NT
:50:3)
284 echo alpha-dec-winnt3.5
286 Amiga
*:UNIX_System_V
:4.0:*)
287 echo m68k-unknown-sysv4
289 *:[Aa
]miga
[Oo
][Ss
]:*:*)
290 echo ${UNAME_MACHINE}-unknown-amigaos
292 *:[Mm
]orph
[Oo
][Ss
]:*:*)
293 echo ${UNAME_MACHINE}-unknown-morphos
296 echo i370-ibm-openedition
302 echo powerpc-ibm-os400
304 arm
:RISC
*:1.
[012]*:*|arm
:riscix
:1.
[012]*:*)
305 echo arm-acorn-riscix
${UNAME_RELEASE}
307 arm
:riscos
:*:*|arm
:RISCOS
:*:*)
308 echo arm-unknown-riscos
310 SR2?
01:HI-UX
/MPP
:*:* | SR8000
:HI-UX
/MPP
:*:*)
311 echo hppa1.1
-hitachi-hiuxmpp
313 Pyramid
*:OSx
*:*:* | MIS
*:OSx
*:*:* | MIS
*:SMP_DC-OSx
*:*:*)
314 # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
315 if test "`(/bin/universe) 2>/dev/null`" = att
; then
316 echo pyramid-pyramid-sysv3
318 echo pyramid-pyramid-bsd
322 echo pyramid-pyramid-svr4
324 DRS?
6000:unix
:4.0:6*)
327 DRS?
6000:UNIX_SV
:4.2*:7* | DRS?
6000:isis
:4.2*:7*)
328 case `/usr/bin/uname -p` in
329 sparc
) echo sparc-icl-nx7
; exit ;;
332 echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
335 echo sparc-hal-solaris2
`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
337 sun4
*:SunOS
:5.
*:* | tadpole
*:SunOS
:5.
*:*)
338 echo sparc-sun-solaris2
`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
340 i86pc
:AuroraUX
:5.
*:* | i86xen
:AuroraUX
:5.
*:*)
341 echo i386-pc-auroraux
${UNAME_RELEASE}
343 i86pc
:SunOS
:5.
*:* | i86xen
:SunOS
:5.
*:*)
344 eval $set_cc_for_build
346 # If there is a compiler, see if it is configured for 64-bit objects.
347 # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
348 # This test works for both compilers.
349 if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
350 if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH
; echo '#endif') | \
351 (CCOPTS
= $CC_FOR_BUILD -E - 2>/dev
/null
) | \
352 grep IS_64BIT_ARCH
>/dev
/null
357 echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
360 # According to config.sub, this is the proper way to canonicalize
361 # SunOS6. Hard to guess exactly what SunOS6 will be like, but
362 # it's likely to be more like Solaris than SunOS4.
363 echo sparc-sun-solaris3
`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
366 case "`/usr/bin/arch -k`" in
368 UNAME_RELEASE
=`uname -v`
371 # Japanese Language versions have a version number like `4.1.3-JL'.
372 echo sparc-sun-sunos
`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
375 echo m68k-sun-sunos
${UNAME_RELEASE}
378 UNAME_RELEASE
=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
379 test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE
=3
380 case "`/bin/arch`" in
382 echo m68k-sun-sunos
${UNAME_RELEASE}
385 echo sparc-sun-sunos
${UNAME_RELEASE}
390 echo sparc-auspex-sunos
${UNAME_RELEASE}
392 # The situation for MiNT is a little confusing. The machine name
393 # can be virtually everything (everything which is not
394 # "atarist" or "atariste" at least should have a processor
395 # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
396 # to the lowercase version "mint" (or "freemint"). Finally
397 # the system name "TOS" denotes a system which is actually not
398 # MiNT. But MiNT is downward compatible to TOS, so this should
400 atarist
[e
]:*MiNT
:*:* | atarist
[e
]:*mint
:*:* | atarist
[e
]:*TOS
:*:*)
401 echo m68k-atari-mint
${UNAME_RELEASE}
403 atari
*:*MiNT
:*:* | atari
*:*mint
:*:* | atarist
[e
]:*TOS
:*:*)
404 echo m68k-atari-mint
${UNAME_RELEASE}
406 *falcon
*:*MiNT
:*:* |
*falcon
*:*mint
:*:* |
*falcon
*:*TOS
:*:*)
407 echo m68k-atari-mint
${UNAME_RELEASE}
409 milan
*:*MiNT
:*:* | milan
*:*mint
:*:* |
*milan
*:*TOS
:*:*)
410 echo m68k-milan-mint
${UNAME_RELEASE}
412 hades
*:*MiNT
:*:* | hades
*:*mint
:*:* |
*hades
*:*TOS
:*:*)
413 echo m68k-hades-mint
${UNAME_RELEASE}
415 *:*MiNT
:*:* |
*:*mint
:*:* |
*:*TOS
:*:*)
416 echo m68k-unknown-mint
${UNAME_RELEASE}
419 echo m68k-apple-machten
${UNAME_RELEASE}
422 echo powerpc-apple-machten
${UNAME_RELEASE}
425 echo mips-dec-mach_bsd4.3
428 echo mips-dec-ultrix
${UNAME_RELEASE}
431 echo vax-dec-ultrix
${UNAME_RELEASE}
433 2020:CLIX
:*:* |
2430:CLIX
:*:*)
434 echo clipper-intergraph-clix
${UNAME_RELEASE}
436 mips
:*:*:UMIPS | mips
:*:*:RISCos
)
437 eval $set_cc_for_build
438 sed 's/^ //' << EOF >$dummy.c
440 #include <stdio.h> /* for printf() prototype */
441 int main (int argc, char *argv[]) {
443 int main (argc, argv) int argc; char *argv[]; {
445 #if defined (host_mips) && defined (MIPSEB)
446 #if defined (SYSTYPE_SYSV)
447 printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
449 #if defined (SYSTYPE_SVR4)
450 printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
452 #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
453 printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
459 $CC_FOR_BUILD -o $dummy $dummy.c
&&
460 dummyarg
=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
461 SYSTEM_NAME
=`$dummy $dummyarg` &&
462 { echo "$SYSTEM_NAME"; exit; }
463 echo mips-mips-riscos
${UNAME_RELEASE}
465 Motorola
:PowerMAX_OS
:*:*)
466 echo powerpc-motorola-powermax
468 Motorola
:*:4.3:PL8-
*)
469 echo powerpc-harris-powermax
471 Night_Hawk
:*:*:PowerMAX_OS | Synergy
:PowerMAX_OS
:*:*)
472 echo powerpc-harris-powermax
474 Night_Hawk
:Power_UNIX
:*:*)
475 echo powerpc-harris-powerunix
478 echo m88k-harris-cxux7
481 echo m88k-motorola-sysv4
484 echo m88k-motorola-sysv3
487 # DG/UX returns AViiON for all architectures
488 UNAME_PROCESSOR
=`/usr/bin/uname -p`
489 if [ $UNAME_PROCESSOR = mc88100
] ||
[ $UNAME_PROCESSOR = mc88110
]
491 if [ ${TARGET_BINARY_INTERFACE}x
= m88kdguxelfx
] || \
492 [ ${TARGET_BINARY_INTERFACE}x
= x
]
494 echo m88k-dg-dgux
${UNAME_RELEASE}
496 echo m88k-dg-dguxbcs
${UNAME_RELEASE}
499 echo i586-dg-dgux
${UNAME_RELEASE}
502 M88
*:DolphinOS
:*:*) # DolphinOS (SVR3)
503 echo m88k-dolphin-sysv3
506 # Delta 88k system running SVR3
507 echo m88k-motorola-sysv3
509 XD88
*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
510 echo m88k-tektronix-sysv3
512 Tek43
[0-9][0-9]:UTek
:*:*) # Tektronix 4300 system running UTek (BSD)
513 echo m68k-tektronix-bsd
516 echo mips-sgi-irix
`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
518 ????????
:AIX?
:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
519 echo romp-ibm-aix
# uname -m gives an 8 hex-code CPU id
520 exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
525 if [ -x /usr
/bin
/oslevel
] ; then
526 IBM_REV
=`/usr/bin/oslevel`
528 IBM_REV
=${UNAME_VERSION}.
${UNAME_RELEASE}
530 echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
533 if grep bos325
/usr
/include
/stdio.h
>/dev
/null
2>&1; then
534 eval $set_cc_for_build
535 sed 's/^ //' << EOF >$dummy.c
536 #include <sys/systemcfg.h>
542 puts("powerpc-ibm-aix3.2.5");
546 if $CC_FOR_BUILD -o $dummy $dummy.c
&& SYSTEM_NAME
=`$dummy`
550 echo rs6000-ibm-aix3.2
.5
552 elif grep bos324
/usr
/include
/stdio.h
>/dev
/null
2>&1; then
553 echo rs6000-ibm-aix3.2
.4
555 echo rs6000-ibm-aix3.2
559 IBM_CPU_ID
=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
560 if /usr
/sbin
/lsattr
-El ${IBM_CPU_ID} |
grep ' POWER' >/dev
/null
2>&1; then
565 if [ -x /usr
/bin
/oslevel
] ; then
566 IBM_REV
=`/usr/bin/oslevel`
568 IBM_REV
=${UNAME_VERSION}.
${UNAME_RELEASE}
570 echo ${IBM_ARCH}-ibm-aix${IBM_REV}
575 ibmrt
:4.4BSD
:*|romp-ibm
:BSD
:*)
578 ibmrt
:*BSD
:*|romp-ibm
:BSD
:*) # covers RT/PC BSD and
579 echo romp-ibm-bsd
${UNAME_RELEASE} # 4.3 with uname added to
580 exit ;; # report: romp-ibm BSD 4.3
582 echo rs6000-bull-bosx
587 9000/[34]??
:4.3bsd
:1.
*:*)
590 hp300
:4.4BSD
:*:* |
9000/[34]??
:4.3bsd
:2.
*:*)
593 9000/[34678]??
:HP-UX
:*:*)
594 HPUX_REV
=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
595 case "${UNAME_MACHINE}" in
596 9000/31?
) HP_ARCH
=m68000
;;
597 9000/[34]??
) HP_ARCH
=m68k
;;
598 9000/[678][0-9][0-9])
599 if [ -x /usr
/bin
/getconf
]; then
600 sc_cpu_version
=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
601 sc_kernel_bits
=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
602 case "${sc_cpu_version}" in
603 523) HP_ARCH
="hppa1.0" ;; # CPU_PA_RISC1_0
604 528) HP_ARCH
="hppa1.1" ;; # CPU_PA_RISC1_1
605 532) # CPU_PA_RISC2_0
606 case "${sc_kernel_bits}" in
607 32) HP_ARCH
="hppa2.0n" ;;
608 64) HP_ARCH
="hppa2.0w" ;;
609 '') HP_ARCH
="hppa2.0" ;; # HP-UX 10.20
613 if [ "${HP_ARCH}" = "" ]; then
614 eval $set_cc_for_build
615 sed 's/^ //' << EOF >$dummy.c
623 #if defined(_SC_KERNEL_BITS)
624 long bits = sysconf(_SC_KERNEL_BITS);
626 long cpu = sysconf (_SC_CPU_VERSION);
630 case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
631 case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
633 #if defined(_SC_KERNEL_BITS)
636 case 64: puts ("hppa2.0w"); break;
637 case 32: puts ("hppa2.0n"); break;
638 default: puts ("hppa2.0"); break;
640 #else /* !defined(_SC_KERNEL_BITS) */
641 puts ("hppa2.0"); break;
643 default: puts ("hppa1.0"); break;
648 (CCOPTS
= $CC_FOR_BUILD -o $dummy $dummy.c
2>/dev
/null
) && HP_ARCH
=`$dummy`
649 test -z "$HP_ARCH" && HP_ARCH
=hppa
652 if [ ${HP_ARCH} = "hppa2.0w" ]
654 eval $set_cc_for_build
656 # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
657 # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
658 # generating 64-bit code. GNU and HP use different nomenclature:
660 # $ CC_FOR_BUILD=cc ./config.guess
661 # => hppa2.0w-hp-hpux11.23
662 # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
663 # => hppa64-hp-hpux11.23
665 if echo __LP64__ |
(CCOPTS
= $CC_FOR_BUILD -E - 2>/dev
/null
) |
673 echo ${HP_ARCH}-hp-hpux${HPUX_REV}
676 HPUX_REV
=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
677 echo ia64-hp-hpux
${HPUX_REV}
680 eval $set_cc_for_build
681 sed 's/^ //' << EOF >$dummy.c
686 long cpu = sysconf (_SC_CPU_VERSION);
687 /* The order matters, because CPU_IS_HP_MC68K erroneously returns
688 true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
690 if (CPU_IS_PA_RISC (cpu))
694 case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
695 case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
696 case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
697 default: puts ("hppa-hitachi-hiuxwe2"); break;
700 else if (CPU_IS_HP_MC68K (cpu))
701 puts ("m68k-hitachi-hiuxwe2");
702 else puts ("unknown-hitachi-hiuxwe2");
706 $CC_FOR_BUILD -o $dummy $dummy.c
&& SYSTEM_NAME
=`$dummy` &&
707 { echo "$SYSTEM_NAME"; exit; }
708 echo unknown-hitachi-hiuxwe2
710 9000/7??
:4.3bsd
:*:* |
9000/8?
[79]:4.3bsd
:*:* )
716 *9??
*:MPE
/iX
:*:* |
*3000*:MPE
/iX
:*:*)
717 echo hppa1.0
-hp-mpeix
719 hp7??
:OSF1
:*:* | hp8?
[79]:OSF1
:*:* )
726 if [ -x /usr
/sbin
/sysversion
] ; then
727 echo ${UNAME_MACHINE}-unknown-osf1mk
729 echo ${UNAME_MACHINE}-unknown-osf1
733 echo hppa1.1
-hp-lites
735 C1
*:ConvexOS
:*:* | convex
:ConvexOS
:C1
*:*)
738 C2
*:ConvexOS
:*:* | convex
:ConvexOS
:C2
*:*)
739 if getsysinfo
-f scalar_acc
740 then echo c32-convex-bsd
741 else echo c2-convex-bsd
744 C34
*:ConvexOS
:*:* | convex
:ConvexOS
:C34
*:*)
747 C38
*:ConvexOS
:*:* | convex
:ConvexOS
:C38
*:*)
750 C4
*:ConvexOS
:*:* | convex
:ConvexOS
:C4
*:*)
754 echo ymp-cray-unicos
${UNAME_RELEASE} |
sed -e 's/\.[^.]*$/.X/'
757 echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
758 |
sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
759 -e y
/ABCDEFGHIJKLMNOPQRSTUVWXYZ
/abcdefghijklmnopqrstuvwxyz
/ \
763 echo t90-cray-unicos
${UNAME_RELEASE} |
sed -e 's/\.[^.]*$/.X/'
766 echo alphaev5-cray-unicosmk
${UNAME_RELEASE} |
sed -e 's/\.[^.]*$/.X/'
769 echo sv1-cray-unicos
${UNAME_RELEASE} |
sed -e 's/\.[^.]*$/.X/'
772 echo craynv-cray-unicosmp
${UNAME_RELEASE} |
sed -e 's/\.[^.]*$/.X/'
774 F30
[01]:UNIX_System_V
:*:* | F700
:UNIX_System_V
:*:*)
775 FUJITSU_PROC
=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
776 FUJITSU_SYS
=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
777 FUJITSU_REL
=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
778 echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
780 5000:UNIX_System_V
:4.
*:*)
781 FUJITSU_SYS
=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
782 FUJITSU_REL
=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
783 echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
785 i
*86:BSD
/386:*:* | i
*86:BSD
/OS
:*:* |
*:Ascend\ Embedded
/OS
:*:*)
786 echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
789 echo sparc-unknown-bsdi
${UNAME_RELEASE}
792 echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
795 UNAME_PROCESSOR
=`/usr/bin/uname -p`
796 case ${UNAME_PROCESSOR} in
798 echo x86_64-unknown-freebsd
`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
800 echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
804 echo ${UNAME_MACHINE}-pc-cygwin
807 echo ${UNAME_MACHINE}-pc-mingw32
810 echo ${UNAME_MACHINE}-pc-msys
813 # uname -m includes "-pc" on this system.
814 echo ${UNAME_MACHINE}-mingw32
817 echo ${UNAME_MACHINE}-pc-pw32
820 case ${UNAME_MACHINE} in
822 echo i586-pc-interix
${UNAME_RELEASE}
824 authenticamd | genuineintel | EM64T
)
825 echo x86_64-unknown-interix
${UNAME_RELEASE}
828 echo ia64-unknown-interix
${UNAME_RELEASE}
831 [345]86:Windows_95
:* |
[345]86:Windows_98
:* |
[345]86:Windows_NT
:*)
832 echo i
${UNAME_MACHINE}-pc-mks
837 i
*:Windows_NT
*:* | Pentium
*:Windows_NT
*:*)
838 # How do we know it's Interix rather than the generic POSIX subsystem?
839 # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
840 # UNAME_MACHINE based on the output of uname instead of i386?
844 echo ${UNAME_MACHINE}-pc-uwin
846 amd64
:CYGWIN
*:*:* | x86_64
:CYGWIN
*:*:*)
847 echo x86_64-unknown-cygwin
850 echo powerpcle-unknown-cygwin
853 echo powerpcle-unknown-solaris2
`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
857 echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
860 # other systems with GNU libc and userland
861 echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|
sed -e 's/[-(].*//'`-gnu
864 echo ${UNAME_MACHINE}-pc-minix
867 echo ${UNAME_MACHINE}-unknown-linux-gnu
870 case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc
/cpuinfo
` in
871 EV5) UNAME_MACHINE=alphaev5 ;;
872 EV56) UNAME_MACHINE=alphaev56 ;;
873 PCA56) UNAME_MACHINE=alphapca56 ;;
874 PCA57) UNAME_MACHINE=alphapca56 ;;
875 EV6) UNAME_MACHINE=alphaev6 ;;
876 EV67) UNAME_MACHINE=alphaev67 ;;
877 EV68*) UNAME_MACHINE=alphaev68 ;;
879 objdump --private-headers /bin/sh | grep -q ld.so.1
880 if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
881 echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
884 eval $set_cc_for_build
885 if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
886 | grep -q __ARM_EABI__
888 echo ${UNAME_MACHINE}-unknown-linux-gnu
890 if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
891 | grep -q __ARM_PCS_VFP
893 echo ${UNAME_MACHINE}-unknown-linux-gnueabi
895 echo ${UNAME_MACHINE}-unknown-linux-gnueabihf
900 echo ${UNAME_MACHINE}-unknown-linux-gnu
903 echo cris-axis-linux-gnu
906 echo crisv32-axis-linux-gnu
909 echo frv-unknown-linux-gnu
913 eval $set_cc_for_build
914 sed 's/^ //' << EOF >$dummy.c
919 eval `$CC_FOR_BUILD -E $dummy.c
2>/dev
/null |
grep '^LIBC'`
920 echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
923 echo ${UNAME_MACHINE}-unknown-linux-gnu
925 loongarch32:Linux:*:* | loongarch64:Linux:*:* | loongarchx32:Linux:*:*)
927 eval $set_cc_for_build
928 # Do not check for __GLIBC__ because uclibc defines it too
929 sed 's/^ //' << EOF >$dummy.c
930 #include <features.h>
931 #if defined(__UCLIBC__)
933 #elif defined(__dietlibc__)
937 eval `$CC_FOR_BUILD -E $dummy.c
2>/dev
/null |
grep '^LIBC'`
939 # There is no features test macro for musl
940 # Follow the GNU's config.guess approach of
941 # checking the output of ldd
942 if command -v ldd >/dev/null && \
943 ldd --version 2>&1 | grep -q ^musl; then
947 echo "${UNAME_MACHINE}-unknown-linux-${LIBC}"
950 echo ${UNAME_MACHINE}-unknown-linux-gnu
953 echo ${UNAME_MACHINE}-unknown-linux-gnu
955 mips:Linux:*:* | mips64:Linux:*:*)
956 eval $set_cc_for_build
957 sed 's/^ //' << EOF >$dummy.c
959 #undef ${UNAME_MACHINE}
960 #undef ${UNAME_MACHINE}el
961 #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
962 CPU=${UNAME_MACHINE}el
964 #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
971 eval `$CC_FOR_BUILD -E $dummy.c
2>/dev
/null |
grep '^CPU'`
972 test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
975 echo or32-unknown-linux-gnu
978 echo sparc-unknown-linux-gnu
980 parisc64:Linux:*:* | hppa64:Linux:*:*)
981 echo hppa64-unknown-linux-gnu
983 parisc:Linux:*:* | hppa:Linux:*:*)
985 case `grep '^cpu[^a-z]*:' /proc
/cpuinfo
2>/dev
/null | cut
-d' ' -f2` in
986 PA7*) echo hppa1.1-unknown-linux-gnu ;;
987 PA8*) echo hppa2.0-unknown-linux-gnu ;;
988 *) echo hppa-unknown-linux-gnu ;;
992 echo powerpc64-unknown-linux-gnu
995 echo powerpc64le-unknown-linux-gnu
998 echo powerpc-unknown-linux-gnu
1001 echo powerpcle-unknown-linux-gnu
1003 riscv32:Linux:*:* | riscv64:Linux:*:*)
1005 eval $set_cc_for_build
1006 # Do not check for __GLIBC__ because uclibc defines it too
1007 sed 's/^ //' << EOF >$dummy.c
1008 #include <features.h>
1009 #if defined(__UCLIBC__)
1011 #elif defined(__dietlibc__)
1015 eval `$CC_FOR_BUILD -E $dummy.c
2>/dev
/null |
grep '^LIBC'`
1017 # There is no features test macro for musl
1018 # Follow the GNU's config.guess approach of
1019 # checking the output of ldd
1020 if command -v ldd >/dev/null && \
1021 ldd --version 2>&1 | grep -q ^musl; then
1025 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1027 s390:Linux:*:* | s390x:Linux:*:*)
1028 echo ${UNAME_MACHINE}-ibm-linux
1031 echo ${UNAME_MACHINE}-unknown-linux-gnu
1034 echo ${UNAME_MACHINE}-unknown-linux-gnu
1036 sparc:Linux:*:* | sparc64:Linux:*:*)
1037 echo ${UNAME_MACHINE}-unknown-linux-gnu
1040 echo ${UNAME_MACHINE}-unknown-linux-gnu
1043 echo ${UNAME_MACHINE}-dec-linux-gnu
1046 echo x86_64-unknown-linux-gnu
1049 echo ${UNAME_MACHINE}-unknown-linux-gnu
1051 i*86:DYNIX/ptx:4*:*)
1052 # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
1053 # earlier versions are messed up and put the nodename in both
1054 # sysname and nodename.
1055 echo i386-sequent-sysv4
1057 i*86:UNIX_SV:4.2MP:2.*)
1058 # Unixware is an offshoot of SVR4, but it has its own version
1059 # number series starting with 2...
1060 # I am not positive that other SVR4 systems won't match this,
1061 # I just have to hope. -- rms.
1062 # Use sysv4.2uw... so that sysv4* matches it.
1063 echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
1066 # If we were able to find `uname
', then EMX Unix compatibility
1067 # is probably installed.
1068 echo ${UNAME_MACHINE}-pc-os2-emx
1070 i*86:XTS-300:*:STOP)
1071 echo ${UNAME_MACHINE}-unknown-stop
1074 echo ${UNAME_MACHINE}-unknown-atheos
1077 echo ${UNAME_MACHINE}-pc-syllable
1079 i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
1080 echo i386-unknown-lynxos${UNAME_RELEASE}
1083 echo ${UNAME_MACHINE}-pc-msdosdjgpp
1085 i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
1086 UNAME_REL=`echo ${UNAME_RELEASE} | sed 's
/\
/MP$
//'`
1087 if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1088 echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
1090 echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
1094 # UnixWare 7.x, OpenUNIX and OpenServer 6.
1095 case `/bin/uname -X | grep "^Machine"` in
1096 *486*) UNAME_MACHINE=i486 ;;
1097 *Pentium) UNAME_MACHINE=i586 ;;
1098 *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1100 echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
1103 if test -f /usr/options/cb.name; then
1104 UNAME_REL=`sed -n 's
/.
*Version
//p
' </usr/options/cb.name`
1105 echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1106 elif /bin/uname -X 2>/dev/null >/dev/null ; then
1107 UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's
/.
*= //')`
1108 (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1109 (/bin/uname -X|grep '^Machine.
*Pentium
' >/dev/null) \
1110 && UNAME_MACHINE=i586
1111 (/bin/uname -X|grep '^Machine.
*Pent
*II
' >/dev/null) \
1112 && UNAME_MACHINE=i686
1113 (/bin/uname -X|grep '^Machine.
*Pentium Pro
' >/dev/null) \
1114 && UNAME_MACHINE=i686
1115 echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1117 echo ${UNAME_MACHINE}-pc-sysv32
1121 # Left here for compatibility:
1122 # uname -m prints for DJGPP always 'pc
', but it prints nothing about
1123 # the processor, so we play safe by assuming i586.
1124 # Note: whatever this is, it MUST be the same as what config.sub
1125 # prints for the "djgpp" host, or else GDB configury will decide that
1126 # this is a cross-build.
1127 echo i586-pc-msdosdjgpp
1133 echo i860-intel-osf1
1135 i860:*:4.*:*) # i860-SVR4
1136 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1137 echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
1138 else # Add other i860-SVR4 vendors below as they are discovered.
1139 echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
1144 echo m68010-convergent-sysv
1146 mc68k:UNIX:SYSTEM5:3.51m)
1147 echo m68k-convergent-sysv
1152 M68*:*:R3V[5678]*:*)
1153 test -r /sysV68 && { echo 'm68k-motorola-sysv
'; exit; } ;;
1154 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)
1156 test -r /etc/.relid \
1157 && OS_REL=.`sed -n 's
/[^
]* [^
]* \
([0-9][0-9]\
).
*/\
1/p
' < /etc/.relid`
1158 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1159 && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1160 /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1161 && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1162 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1163 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1164 && { echo i486-ncr-sysv4; exit; } ;;
1165 NCR*:*:4.2:* | MPRAS*:*:4.2:*)
1167 test -r /etc/.relid \
1168 && OS_REL=.`sed -n 's
/[^
]* [^
]* \
([0-9][0-9]\
).
*/\
1/p
' < /etc/.relid`
1169 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1170 && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1171 /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1172 && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
1173 /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
1174 && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1175 m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1176 echo m68k-unknown-lynxos${UNAME_RELEASE}
1178 mc68030:UNIX_System_V:4.*:*)
1179 echo m68k-atari-sysv4
1181 TSUNAMI:LynxOS:2.*:*)
1182 echo sparc-unknown-lynxos${UNAME_RELEASE}
1184 rs6000:LynxOS:2.*:*)
1185 echo rs6000-unknown-lynxos${UNAME_RELEASE}
1187 PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
1188 echo powerpc-unknown-lynxos${UNAME_RELEASE}
1190 SM[BE]S:UNIX_SV:*:*)
1191 echo mips-dde-sysv${UNAME_RELEASE}
1193 RM*:ReliantUNIX-*:*:*)
1200 if uname -p 2>/dev/null >/dev/null ; then
1201 UNAME_MACHINE=`(uname -p) 2>/dev/null`
1202 echo ${UNAME_MACHINE}-sni-sysv4
1207 PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR
4/MP effort
1208 # says <Richard.M.Bartel@ccMail.Census.GOV>
1209 echo i586-unisys-sysv4
1211 *:UNIX_System_V
:4*:FTX
*)
1212 # From Gerald Hewes <hewes@openmarket.com>.
1213 # How about differentiating between stratus architectures? -djm
1214 echo hppa1.1
-stratus-sysv4
1217 # From seanf@swdc.stratus.com.
1218 echo i860-stratus-sysv4
1221 # From Paul.Green@stratus.com.
1222 echo ${UNAME_MACHINE}-stratus-vos
1225 # From Paul.Green@stratus.com.
1226 echo hppa1.1
-stratus-vos
1229 echo m68k-apple-aux
${UNAME_RELEASE}
1232 echo mips-sony-newsos6
1234 R
[34]000:*System_V
*:*:* | R4000
:UNIX_SYSV
:*:* | R
*000:UNIX_SV
:*:*)
1235 if [ -d /usr
/nec
]; then
1236 echo mips-nec-sysv
${UNAME_RELEASE}
1238 echo mips-unknown-sysv
${UNAME_RELEASE}
1241 BeBox
:BeOS
:*:*) # BeOS running on hardware made by Be, PPC only.
1242 echo powerpc-be-beos
1244 BeMac
:BeOS
:*:*) # BeOS running on Mac or Mac clone, PPC only.
1245 echo powerpc-apple-beos
1247 BePC
:BeOS
:*:*) # BeOS running on Intel PC compatible.
1250 BePC
:Haiku
:*:*) # Haiku running on Intel PC compatible.
1253 x86_64
:Haiku
:*:*) # Haiku running on x86_64.
1254 echo x86_64-unknown-haiku
1257 echo sx4-nec-superux
${UNAME_RELEASE}
1260 echo sx5-nec-superux
${UNAME_RELEASE}
1263 echo sx6-nec-superux
${UNAME_RELEASE}
1266 echo sx7-nec-superux
${UNAME_RELEASE}
1269 echo sx8-nec-superux
${UNAME_RELEASE}
1272 echo sx8r-nec-superux
${UNAME_RELEASE}
1274 Power
*:Rhapsody
:*:*)
1275 echo powerpc-apple-rhapsody
${UNAME_RELEASE}
1278 echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
1281 UNAME_PROCESSOR
=`uname -p` || UNAME_PROCESSOR
=unknown
1282 case $UNAME_PROCESSOR in
1284 eval $set_cc_for_build
1285 if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
1286 if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH
; echo '#endif') | \
1287 (CCOPTS
= $CC_FOR_BUILD -E - 2>/dev
/null
) | \
1288 grep IS_64BIT_ARCH
>/dev
/null
1290 UNAME_PROCESSOR
="x86_64"
1294 eval $set_cc_for_build
1295 if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
1296 if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH
; echo '#endif') | \
1297 (CCOPTS
= $CC_FOR_BUILD -E - 2>/dev
/null
) | \
1298 grep IS_64BIT_ARCH
>/dev
/null
1300 if (echo '#ifdef __PTRAUTH_INTRINSICS__'; echo HAS_AUTH
; echo '#endif') | \
1301 (CCOPTS
= $CC_FOR_BUILD -E - 2>/dev
/null
) | \
1302 grep HAS_AUTH
>/dev
/null
1304 UNAME_PROCESSOR
="arm64e"
1306 UNAME_PROCESSOR
="arm64"
1310 unknown
) UNAME_PROCESSOR
=powerpc
;;
1312 echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
1314 *:procnto
*:*:* |
*:QNX
:[0123456789]*:*)
1315 UNAME_PROCESSOR
=`uname -p`
1316 if test "$UNAME_PROCESSOR" = "x86"; then
1317 UNAME_PROCESSOR
=i386
1320 echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
1325 NEO-?
:NONSTOP_KERNEL
:*:*)
1326 echo neo-tandem-nsk
${UNAME_RELEASE}
1328 NSE-?
:NONSTOP_KERNEL
:*:*)
1329 echo nse-tandem-nsk
${UNAME_RELEASE}
1331 NSR-?
:NONSTOP_KERNEL
:*:*)
1332 echo nsr-tandem-nsk
${UNAME_RELEASE}
1335 echo mips-compaq-nonstopux
1338 echo bs2000-siemens-sysv
1340 DS
/*:UNIX_System_V
:*:*)
1341 echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
1344 # "uname -m" is not consistent, so use $cputype instead. 386
1345 # is converted to i386 for consistency with other x86
1346 # operating systems.
1347 if test "$cputype" = "386"; then
1350 UNAME_MACHINE
="$cputype"
1352 echo ${UNAME_MACHINE}-unknown-plan9
1355 echo pdp10-unknown-tops10
1358 echo pdp10-unknown-tenex
1360 KS10
:TOPS-20
:*:* | KL10
:TOPS-20
:*:* | TYPE4
:TOPS-20
:*:*)
1361 echo pdp10-dec-tops20
1363 XKL-1
:TOPS-20
:*:* | TYPE5
:TOPS-20
:*:*)
1364 echo pdp10-xkl-tops20
1367 echo pdp10-unknown-tops20
1370 echo pdp10-unknown-its
1373 echo mips-sei-seiux
${UNAME_RELEASE}
1376 echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
1379 UNAME_MACHINE
=`(uname -p) 2>/dev/null`
1380 case "${UNAME_MACHINE}" in
1381 A
*) echo alpha-dec-vms
; exit ;;
1382 I
*) echo ia64-dec-vms
; exit ;;
1383 V
*) echo vax-dec-vms
; exit ;;
1389 echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` |
sed -e 's/ .*$//'
1392 echo ${UNAME_MACHINE}-pc-rdos
1395 echo ${UNAME_MACHINE}-pc-aros
1399 #echo '(No uname command or uname output not recognized.)' 1>&2
1400 #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
1402 eval $set_cc_for_build
1405 # include <sys/types.h>
1406 # include <sys/utsname.h>
1411 #if defined (MIPSEB)
1412 /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
1414 printf ("mips-sony-bsd\n"); exit (0);
1416 #include <sys/param.h>
1417 printf ("m68k-sony-newsos%s\n",
1427 #if defined (__arm) && defined (__acorn) && defined (__unix)
1428 printf ("arm-acorn-riscix\n"); exit (0);
1431 #if defined (hp300) && !defined (hpux)
1432 printf ("m68k-hp-bsd\n"); exit (0);
1436 #if !defined (__ARCHITECTURE__)
1437 #define __ARCHITECTURE__ "m68k"
1440 version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
1442 printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
1444 printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
1448 #if defined (MULTIMAX) || defined (n16)
1450 printf ("ns32k-encore-sysv\n"); exit (0);
1453 printf ("ns32k-encore-mach\n"); exit (0);
1455 printf ("ns32k-encore-bsd\n"); exit (0);
1460 #if defined (__386BSD__)
1461 printf ("i386-pc-bsd\n"); exit (0);
1464 #if defined (sequent)
1466 printf ("i386-sequent-dynix\n"); exit (0);
1468 #if defined (ns32000)
1469 printf ("ns32k-sequent-dynix\n"); exit (0);
1473 #if defined (_SEQUENT_)
1478 if (strncmp(un.version, "V2", 2) == 0) {
1479 printf ("i386-sequent-ptx2\n"); exit (0);
1481 if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
1482 printf ("i386-sequent-ptx1\n"); exit (0);
1484 printf ("i386-sequent-ptx\n"); exit (0);
1489 # if !defined (ultrix)
1490 # include <sys/param.h>
1493 printf ("vax-dec-bsd4.3\n"); exit (0);
1496 printf ("vax-dec-bsd4.3reno\n"); exit (0);
1498 printf ("vax-dec-bsd\n"); exit (0);
1502 printf ("vax-dec-bsd\n"); exit (0);
1505 printf ("vax-dec-ultrix\n"); exit (0);
1509 #if defined (alliant) && defined (i860)
1510 printf ("i860-alliant-bsd\n"); exit (0);
1517 $CC_FOR_BUILD -o $dummy $dummy.c
2>/dev
/null
&& SYSTEM_NAME
=`$dummy` &&
1518 { echo "$SYSTEM_NAME"; exit; }
1520 # Apollos put the system type in the environment.
1522 test -d /usr
/apollo
&& { echo ${ISP}-apollo-${SYSTYPE}; exit; }
1524 # Convex versions that predate uname can use getsysinfo(1)
1526 if [ -x /usr
/convex
/getsysinfo
]
1528 case `getsysinfo -f cpu_type` in
1533 if getsysinfo
-f scalar_acc
1534 then echo c32-convex-bsd
1535 else echo c2-convex-bsd
1551 $0: unable to guess system type
1553 This script, last modified $timestamp, has failed to recognize
1554 the operating system you are using. It is advised that you
1555 download the most up to date version of the config scripts from
1557 http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
1559 http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
1561 If the version you run ($0) is already up to date, please
1562 send the following data and any information you think might be
1563 pertinent to <config-patches@gnu.org> in order to provide the needed
1564 information to handle your system.
1566 config.guess timestamp = $timestamp
1568 uname -m = `(uname -m) 2>/dev/null || echo unknown`
1569 uname -r = `(uname -r) 2>/dev/null || echo unknown`
1570 uname -s = `(uname -s) 2>/dev/null || echo unknown`
1571 uname -v = `(uname -v) 2>/dev/null || echo unknown`
1573 /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1574 /bin/uname -X = `(/bin/uname -X) 2>/dev/null`
1576 hostinfo = `(hostinfo) 2>/dev/null`
1577 /bin/universe = `(/bin/universe) 2>/dev/null`
1578 /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
1579 /bin/arch = `(/bin/arch) 2>/dev/null`
1580 /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
1581 /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1583 UNAME_MACHINE = ${UNAME_MACHINE}
1584 UNAME_RELEASE = ${UNAME_RELEASE}
1585 UNAME_SYSTEM = ${UNAME_SYSTEM}
1586 UNAME_VERSION = ${UNAME_VERSION}
1592 # eval: (add-hook 'write-file-hooks 'time-stamp)
1593 # time-stamp-start: "timestamp='"
1594 # time-stamp-format: "%:y-%02m-%02d"
1595 # time-stamp-end: "'"