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