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
5 # 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 <per@bothner.com>.
31 # Please send patches to <config-patches@gnu.org>. Submit a context
32 # diff and a properly formatted ChangeLog entry.
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 # The plan is that this can be called by configure scripts if you
39 # don't specify an explicit build system type.
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, 2001,
60 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
62 This is free software; see the source for copying conditions. There is NO
63 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
66 Try \`$me --help' for more information."
69 while test $# -gt 0 ; do
71 --time-stamp | --time* | -t )
72 echo "$timestamp" ; exit ;;
74 echo "$version" ; exit ;;
76 echo "$usage"; exit ;;
77 -- ) # Stop option processing
79 - ) # Use stdin as input.
82 echo "$me: invalid option $1$help" >&2
90 echo "$me: too many arguments$help" >&2
96 # CC_FOR_BUILD -- compiler used by this script. Note that the use of a
97 # compiler to aid in system detection is discouraged as it requires
98 # temporary files to be created and, as you can see below, it is a
99 # headache to deal with in a portable fashion.
101 # Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
102 # use `HOST_CC' if defined, but it is deprecated.
104 # Portable tmp directory creation inspired by the Autoconf team.
107 trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
108 trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
110 { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
111 { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
112 { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
113 { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
115 tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
116 case $CC_FOR_BUILD,$HOST_CC,$CC in
117 ,,) echo "int x;" > $dummy.c ;
118 for c in cc gcc c89 c99 ; do
119 if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
120 CC_FOR_BUILD="$c"; break ;
123 if test x"$CC_FOR_BUILD" = x ; then
124 CC_FOR_BUILD=no_compiler_found ;
127 ,,*) CC_FOR_BUILD=$CC ;;
128 ,*,*) CC_FOR_BUILD=$HOST_CC ;;
129 esac ; set_cc_for_build= ;'
131 # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
132 # (ghazi@noc.rutgers.edu 1994-08-24)
133 if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
134 PATH=$PATH:/.attbin ; export PATH
137 UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
138 UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
139 UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
140 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
142 # Note: order is significant - the case branches are not exclusive.
144 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
146 # NetBSD (nbsd) targets should (where applicable) match one or
147 # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
148 # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
149 # switched to ELF, *-*-netbsd* would select the old
150 # object file format. This provides both forward
151 # compatibility and a consistent mechanism for selecting the
152 # object file format.
154 # Note: NetBSD doesn't particularly care about the vendor
155 # portion of the name. We always set it to "unknown".
156 sysctl="sysctl -n hw.machine_arch"
157 UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
158 /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
159 case "${UNAME_MACHINE_ARCH}" in
160 armeb) machine=armeb-unknown ;;
161 arm*) machine=arm-unknown ;;
162 sh3el) machine=shl-unknown ;;
163 sh3eb) machine=sh-unknown ;;
164 sh5el) machine=sh5le-unknown ;;
165 *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
167 # The Operating System including object format, if it has switched
168 # to ELF recently, or will in the future.
169 case "${UNAME_MACHINE_ARCH}" in
170 arm*|i386|m68k|ns32k|sh3*|sparc|vax)
171 eval $set_cc_for_build
172 if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
173 | grep __ELF__ >/dev/null
175 # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
176 # Return netbsd for either. FIX?
187 # Debian GNU/NetBSD machines have a different userland, and
188 # thus, need a distinct triplet. However, they do not need
189 # kernel version information, so it can be replaced with a
190 # suitable tag, in the style of linux-gnu.
191 case "${UNAME_VERSION}" in
196 release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
199 # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
200 # contains redundant information, the shorter form:
201 # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
202 echo "${machine}-${os}${release}"
205 UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
206 echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
209 echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
212 echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
215 echo powerpc-unknown-mirbsd${UNAME_RELEASE}
218 echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
221 case $UNAME_RELEASE in
223 UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
226 UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
229 # According to Compaq, /usr/sbin/psrinfo has been available on
230 # OSF/1 and Tru64 systems produced since 1995. I hope that
231 # covers most systems running today. This code pipes the CPU
232 # types through head -n 1, so we only detect the type of CPU 0.
233 ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
234 case "$ALPHA_CPU_TYPE" in
236 UNAME_MACHINE="alpha" ;;
238 UNAME_MACHINE="alpha" ;;
239 "LCA4 (21066/21068)")
240 UNAME_MACHINE="alpha" ;;
242 UNAME_MACHINE="alphaev5" ;;
244 UNAME_MACHINE="alphaev56" ;;
246 UNAME_MACHINE="alphapca56" ;;
248 UNAME_MACHINE="alphapca57" ;;
250 UNAME_MACHINE="alphaev6" ;;
252 UNAME_MACHINE="alphaev67" ;;
254 UNAME_MACHINE="alphaev68" ;;
256 UNAME_MACHINE="alphaev68" ;;
258 UNAME_MACHINE="alphaev68" ;;
259 "EV6.9A (21264/EV69A)")
260 UNAME_MACHINE="alphaev69" ;;
262 UNAME_MACHINE="alphaev7" ;;
264 UNAME_MACHINE="alphaev79" ;;
266 # A Pn.n version is a patched version.
267 # A Vn.n version is a released version.
268 # A Tn.n version is a released field test version.
269 # A Xn.n version is an unreleased experimental baselevel.
270 # 1.2 uses "1.2" for uname -r.
271 echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
273 Alpha\ *:Windows_NT*:*)
274 # How do we know it's Interix rather than the generic POSIX subsystem?
275 # Should we change UNAME_MACHINE based on the output of uname instead
276 # of the specific Alpha model?
277 echo alpha-pc-interix
279 21064:Windows_NT:50:3)
280 echo alpha-dec-winnt3.5
282 Amiga*:UNIX_System_V:4.0:*)
283 echo m68k-unknown-sysv4
285 *:[Aa]miga[Oo][Ss]:*:*)
286 echo ${UNAME_MACHINE}-unknown-amigaos
288 *:[Mm]orph[Oo][Ss]:*:*)
289 echo ${UNAME_MACHINE}-unknown-morphos
292 echo i370-ibm-openedition
298 echo powerpc-ibm-os400
300 arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
301 echo arm-acorn-riscix${UNAME_RELEASE}
303 arm:riscos:*:*|arm:RISCOS:*:*)
304 echo arm-unknown-riscos
306 SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
307 echo hppa1.1-hitachi-hiuxmpp
309 Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
310 # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
311 if test "`(/bin/universe) 2>/dev/null`" = att ; then
312 echo pyramid-pyramid-sysv3
314 echo pyramid-pyramid-bsd
318 echo pyramid-pyramid-svr4
320 DRS?6000:unix:4.0:6*)
323 DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
324 case `/usr/bin/uname -p` in
325 sparc) echo sparc-icl-nx7; exit ;;
328 echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
330 sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
331 echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
333 i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
334 eval $set_cc_for_build
336 # If there is a compiler, see if it is configured for 64-bit objects.
337 # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
338 # This test works for both compilers.
339 if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
340 # bash is not able to generate correct code here
341 # i.e. it leaves \ns there
342 # so we need to use /usr/bin/echo to get what we want
343 # note that if config.guess is run by /bin/sh then
344 # this works as expected even without /usr/bin/echo
345 # but the problem is that configure is clever enough
346 # to find bash installed and then runs config.guess
347 # by bash instead of by /bin/sh
348 # It seems that using /usr/bin/echo here is the most
349 # portable Solaris fix
350 if /usr/bin/echo '\n#ifdef __amd64\nIS_64BIT_ARCH\n#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) |
666 grep __LP64__ >/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 case ${UNAME_MACHINE} in
797 echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
799 echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
801 echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
805 echo ${UNAME_MACHINE}-pc-cygwin
808 echo ${UNAME_MACHINE}-pc-mingw32
811 # uname -m includes "-pc" on this system.
812 echo ${UNAME_MACHINE}-mingw32
815 echo ${UNAME_MACHINE}-pc-pw32
818 case ${UNAME_MACHINE} in
820 echo i586-pc-interix${UNAME_RELEASE}
822 EM64T | authenticamd | genuineintel)
823 echo x86_64-unknown-interix${UNAME_RELEASE}
826 echo ia64-unknown-interix${UNAME_RELEASE}
829 [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
830 echo i${UNAME_MACHINE}-pc-mks
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?
839 echo ${UNAME_MACHINE}-pc-uwin
841 amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
842 echo x86_64-unknown-cygwin
845 echo powerpcle-unknown-cygwin
848 echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
852 echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
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
859 echo ${UNAME_MACHINE}-pc-minix
862 eval $set_cc_for_build
863 if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
864 | grep -q __ARM_EABI__
866 echo ${UNAME_MACHINE}-unknown-linux-gnu
868 echo ${UNAME_MACHINE}-unknown-linux-gnueabi
872 echo ${UNAME_MACHINE}-unknown-linux-gnu
875 echo cris-axis-linux-gnu
878 echo crisv32-axis-linux-gnu
881 echo frv-unknown-linux-gnu
884 echo ${UNAME_MACHINE}-unknown-linux-gnu
887 echo ${UNAME_MACHINE}-unknown-linux-gnu
890 echo ${UNAME_MACHINE}-unknown-linux-gnu
893 eval $set_cc_for_build
894 sed 's/^ //' << EOF >$dummy.c
898 #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
901 #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
908 eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
913 test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
916 eval $set_cc_for_build
917 sed 's/^ //' << EOF >$dummy.c
921 #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
924 #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
931 eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
936 test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
939 echo or32-unknown-linux-gnu
942 echo powerpc-unknown-linux-gnu
945 echo powerpc64-unknown-linux-gnu
948 case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
949 EV5) UNAME_MACHINE=alphaev5 ;;
950 EV56) UNAME_MACHINE=alphaev56 ;;
951 PCA56) UNAME_MACHINE=alphapca56 ;;
952 PCA57) UNAME_MACHINE=alphapca56 ;;
953 EV6) UNAME_MACHINE=alphaev6 ;;
954 EV67) UNAME_MACHINE=alphaev67 ;;
955 EV68*) UNAME_MACHINE=alphaev68 ;;
957 objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
958 if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
959 echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
962 echo sparc-unknown-linux-gnu
964 parisc:Linux:*:* | hppa:Linux:*:*)
966 case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
967 PA7*) echo hppa1.1-unknown-linux-gnu ;;
968 PA8*) echo hppa2.0-unknown-linux-gnu ;;
969 *) echo hppa-unknown-linux-gnu ;;
972 parisc64:Linux:*:* | hppa64:Linux:*:*)
973 echo hppa64-unknown-linux-gnu
975 s390:Linux:*:* | s390x:Linux:*:*)
976 echo ${UNAME_MACHINE}-ibm-linux
979 echo ${UNAME_MACHINE}-unknown-linux-gnu
982 echo ${UNAME_MACHINE}-unknown-linux-gnu
984 sparc:Linux:*:* | sparc64:Linux:*:*)
985 echo ${UNAME_MACHINE}-unknown-linux-gnu
988 echo ${UNAME_MACHINE}-dec-linux-gnu
991 echo x86_64-unknown-linux-gnu
994 echo ${UNAME_MACHINE}-unknown-linux-gnu
997 # The BFD linker knows what the default object file format is, so
998 # first see if it will tell us. cd to the root directory to prevent
999 # problems with other programs or directories called `ld' in the path.
1000 # Set LC_ALL=C to ensure ld outputs messages in English.
1001 ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
1002 | sed -ne '/supported targets:/!d
1004 s/.*supported targets: *//
1007 case "$ld_supported_targets" in
1009 TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
1012 echo "${UNAME_MACHINE}-pc-linux-gnuaout"
1015 # Either a pre-BFD a.out linker (linux-gnuoldld) or
1016 # one that does not give us useful --help.
1017 echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
1020 # Determine whether the default compiler is a.out or elf
1021 eval $set_cc_for_build
1022 sed 's/^ //' << EOF >$dummy.c
1023 #include <features.h>
1035 #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
1045 eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
1050 test x"${LIBC}" != x && {
1051 echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
1054 test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
1056 i*86:DYNIX/ptx:4*:*)
1057 # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
1058 # earlier versions are messed up and put the nodename in both
1059 # sysname and nodename.
1060 echo i386-sequent-sysv4
1062 i*86:UNIX_SV:4.2MP:2.*)
1063 # Unixware is an offshoot of SVR4, but it has its own version
1064 # number series starting with 2...
1065 # I am not positive that other SVR4 systems won't match this,
1066 # I just have to hope. -- rms.
1067 # Use sysv4.2uw... so that sysv4* matches it.
1068 echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
1071 # If we were able to find `uname', then EMX Unix compatibility
1072 # is probably installed.
1073 echo ${UNAME_MACHINE}-pc-os2-emx
1075 i*86:XTS-300:*:STOP)
1076 echo ${UNAME_MACHINE}-unknown-stop
1079 echo ${UNAME_MACHINE}-unknown-atheos
1082 echo ${UNAME_MACHINE}-pc-syllable
1084 i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
1085 echo i386-unknown-lynxos${UNAME_RELEASE}
1088 echo ${UNAME_MACHINE}-pc-msdosdjgpp
1090 i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
1091 UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
1092 if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1093 echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
1095 echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
1099 # UnixWare 7.x, OpenUNIX and OpenServer 6.
1100 case `/bin/uname -X | grep "^Machine"` in
1101 *486*) UNAME_MACHINE=i486 ;;
1102 *Pentium) UNAME_MACHINE=i586 ;;
1103 *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1105 echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
1108 if test -f /usr/options/cb.name; then
1109 UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1110 echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1111 elif /bin/uname -X 2>/dev/null >/dev/null ; then
1112 UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1113 (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1114 (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1115 && UNAME_MACHINE=i586
1116 (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1117 && UNAME_MACHINE=i686
1118 (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1119 && UNAME_MACHINE=i686
1120 echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1122 echo ${UNAME_MACHINE}-pc-sysv32
1126 # Left here for compatibility:
1127 # uname -m prints for DJGPP always 'pc', but it prints nothing about
1128 # the processor, so we play safe by assuming i386.
1129 echo i386-pc-msdosdjgpp
1135 echo i860-intel-osf1
1137 i860:*:4.*:*) # i860-SVR4
1138 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1139 echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
1140 else # Add other i860-SVR4 vendors below as they are discovered.
1141 echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
1146 echo m68010-convergent-sysv
1148 mc68k:UNIX:SYSTEM5:3.51m)
1149 echo m68k-convergent-sysv
1154 M68*:*:R3V[5678]*:*)
1155 test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
1156 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)
1158 test -r /etc/.relid \
1159 && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1160 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1161 && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1162 /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1163 && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1164 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1165 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1166 && { echo i486-ncr-sysv4; exit; } ;;
1167 m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1168 echo m68k-unknown-lynxos${UNAME_RELEASE}
1170 mc68030:UNIX_System_V:4.*:*)
1171 echo m68k-atari-sysv4
1173 TSUNAMI:LynxOS:2.*:*)
1174 echo sparc-unknown-lynxos${UNAME_RELEASE}
1176 rs6000:LynxOS:2.*:*)
1177 echo rs6000-unknown-lynxos${UNAME_RELEASE}
1179 PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
1180 echo powerpc-unknown-lynxos${UNAME_RELEASE}
1182 SM[BE]S:UNIX_SV:*:*)
1183 echo mips-dde-sysv${UNAME_RELEASE}
1185 RM*:ReliantUNIX-*:*:*)
1192 if uname -p 2>/dev/null >/dev/null ; then
1193 UNAME_MACHINE=`(uname -p) 2>/dev/null`
1194 echo ${UNAME_MACHINE}-sni-sysv4
1199 PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1200 # says <Richard.M.Bartel@ccMail.Census.GOV>
1201 echo i586-unisys-sysv4
1203 *:UNIX_System_V:4*:FTX*)
1204 # From Gerald Hewes <hewes@openmarket.com>.
1205 # How about differentiating between stratus architectures? -djm
1206 echo hppa1.1-stratus-sysv4
1209 # From seanf@swdc.stratus.com.
1210 echo i860-stratus-sysv4
1213 # From Paul.Green@stratus.com.
1214 echo ${UNAME_MACHINE}-stratus-vos
1217 # From Paul.Green@stratus.com.
1218 echo hppa1.1-stratus-vos
1221 echo m68k-apple-aux${UNAME_RELEASE}
1224 echo mips-sony-newsos6
1226 R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1227 if [ -d /usr/nec ]; then
1228 echo mips-nec-sysv${UNAME_RELEASE}
1230 echo mips-unknown-sysv${UNAME_RELEASE}
1233 BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
1234 echo powerpc-be-beos
1236 BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
1237 echo powerpc-apple-beos
1239 BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
1242 BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
1246 echo sx4-nec-superux${UNAME_RELEASE}
1249 echo sx5-nec-superux${UNAME_RELEASE}
1252 echo sx6-nec-superux${UNAME_RELEASE}
1255 echo sx7-nec-superux${UNAME_RELEASE}
1258 echo sx8-nec-superux${UNAME_RELEASE}
1261 echo sx8r-nec-superux${UNAME_RELEASE}
1263 Power*:Rhapsody:*:*)
1264 echo powerpc-apple-rhapsody${UNAME_RELEASE}
1267 echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
1270 UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
1271 case $UNAME_PROCESSOR in
1272 unknown) UNAME_PROCESSOR=powerpc ;;
1274 echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
1276 *:procnto*:*:* | *:QNX:[0123456789]*:*)
1277 UNAME_PROCESSOR=`uname -p`
1278 if test "$UNAME_PROCESSOR" = "x86"; then
1279 UNAME_PROCESSOR=i386
1282 echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
1287 NSE-?:NONSTOP_KERNEL:*:*)
1288 echo nse-tandem-nsk${UNAME_RELEASE}
1290 NSR-?:NONSTOP_KERNEL:*:*)
1291 echo nsr-tandem-nsk${UNAME_RELEASE}
1294 echo mips-compaq-nonstopux
1297 echo bs2000-siemens-sysv
1299 DS/*:UNIX_System_V:*:*)
1300 echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
1303 # "uname -m" is not consistent, so use $cputype instead. 386
1304 # is converted to i386 for consistency with other x86
1305 # operating systems.
1306 if test "$cputype" = "386"; then
1309 UNAME_MACHINE="$cputype"
1311 echo ${UNAME_MACHINE}-unknown-plan9
1314 echo pdp10-unknown-tops10
1317 echo pdp10-unknown-tenex
1319 KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1320 echo pdp10-dec-tops20
1322 XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1323 echo pdp10-xkl-tops20
1326 echo pdp10-unknown-tops20
1329 echo pdp10-unknown-its
1332 echo mips-sei-seiux${UNAME_RELEASE}
1335 echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
1338 UNAME_MACHINE=`(uname -p) 2>/dev/null`
1339 case "${UNAME_MACHINE}" in
1340 A*) echo alpha-dec-vms ; exit ;;
1341 I*) echo ia64-dec-vms ; exit ;;
1342 V*) echo vax-dec-vms ; exit ;;
1348 echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
1351 echo ${UNAME_MACHINE}-pc-rdos
1355 #echo '(No uname command or uname output not recognized.)' 1>&2
1356 #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
1358 eval $set_cc_for_build
1361 # include <sys/types.h>
1362 # include <sys/utsname.h>
1367 #if defined (MIPSEB)
1368 /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
1370 printf ("mips-sony-bsd\n"); exit (0);
1372 #include <sys/param.h>
1373 printf ("m68k-sony-newsos%s\n",
1383 #if defined (__arm) && defined (__acorn) && defined (__unix)
1384 printf ("arm-acorn-riscix\n"); exit (0);
1387 #if defined (hp300) && !defined (hpux)
1388 printf ("m68k-hp-bsd\n"); exit (0);
1392 #if !defined (__ARCHITECTURE__)
1393 #define __ARCHITECTURE__ "m68k"
1396 version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
1398 printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
1400 printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
1404 #if defined (MULTIMAX) || defined (n16)
1406 printf ("ns32k-encore-sysv\n"); exit (0);
1409 printf ("ns32k-encore-mach\n"); exit (0);
1411 printf ("ns32k-encore-bsd\n"); exit (0);
1416 #if defined (__386BSD__)
1417 printf ("i386-pc-bsd\n"); exit (0);
1420 #if defined (sequent)
1422 printf ("i386-sequent-dynix\n"); exit (0);
1424 #if defined (ns32000)
1425 printf ("ns32k-sequent-dynix\n"); exit (0);
1429 #if defined (_SEQUENT_)
1434 if (strncmp(un.version, "V2", 2) == 0) {
1435 printf ("i386-sequent-ptx2\n"); exit (0);
1437 if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
1438 printf ("i386-sequent-ptx1\n"); exit (0);
1440 printf ("i386-sequent-ptx\n"); exit (0);
1445 # if !defined (ultrix)
1446 # include <sys/param.h>
1449 printf ("vax-dec-bsd4.3\n"); exit (0);
1452 printf ("vax-dec-bsd4.3reno\n"); exit (0);
1454 printf ("vax-dec-bsd\n"); exit (0);
1458 printf ("vax-dec-bsd\n"); exit (0);
1461 printf ("vax-dec-ultrix\n"); exit (0);
1465 #if defined (alliant) && defined (i860)
1466 printf ("i860-alliant-bsd\n"); exit (0);
1473 $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
1474 { echo "$SYSTEM_NAME"; exit; }
1476 # Apollos put the system type in the environment.
1478 test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
1480 # Convex versions that predate uname can use getsysinfo(1)
1482 if [ -x /usr/convex/getsysinfo ]
1484 case `getsysinfo -f cpu_type` in
1489 if getsysinfo -f scalar_acc
1490 then echo c32-convex-bsd
1491 else echo c2-convex-bsd
1507 $0: unable to guess system type
1509 This script, last modified $timestamp, has failed to recognize
1510 the operating system you are using. It is advised that you
1511 download the most up to date version of the config scripts from
1513 http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
1515 http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
1517 If the version you run ($0) is already up to date, please
1518 send the following data and any information you think might be
1519 pertinent to <config-patches@gnu.org> in order to provide the needed
1520 information to handle your system.
1522 config.guess timestamp = $timestamp
1524 uname -m = `(uname -m) 2>/dev/null || echo unknown`
1525 uname -r = `(uname -r) 2>/dev/null || echo unknown`
1526 uname -s = `(uname -s) 2>/dev/null || echo unknown`
1527 uname -v = `(uname -v) 2>/dev/null || echo unknown`
1529 /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1530 /bin/uname -X = `(/bin/uname -X) 2>/dev/null`
1532 hostinfo = `(hostinfo) 2>/dev/null`
1533 /bin/universe = `(/bin/universe) 2>/dev/null`
1534 /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
1535 /bin/arch = `(/bin/arch) 2>/dev/null`
1536 /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
1537 /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1539 UNAME_MACHINE = ${UNAME_MACHINE}
1540 UNAME_RELEASE = ${UNAME_RELEASE}
1541 UNAME_SYSTEM = ${UNAME_SYSTEM}
1542 UNAME_VERSION = ${UNAME_VERSION}
1548 # eval: (add-hook 'write-file-hooks 'time-stamp)
1549 # time-stamp-start: "timestamp='"
1550 # time-stamp-format: "%:y-%02m-%02d"
1551 # time-stamp-end: "'"