"Fossies" - the Fresh Open Source Software Archive

Member "citadel/config.guess" (5 Jun 2021, 49448 Bytes) of package /linux/www/citadel.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) Bash source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file.

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