Trisurf Monte Carlo simulator
Samo Penic
2023-01-24 a8e354c7fad70eb7fdfda62ec83faf1be6c4ed44
Changes in code and README for easier compilation. May break something
9 files modified
5 files added
13662 ■■■■ changed files
INSTALL 6 ●●●● patch | view | raw | blame | history
README.md 2 ●●● patch | view | raw | blame | history
config.guess 1500 ●●●●● patch | view | raw | blame | history
config.h.in 10 ●●●●● patch | view | raw | blame | history
config.sub 2855 ●●●● patch | view | raw | blame | history
configure.ac 7 ●●●●● patch | view | raw | blame | history
depcomp 10 ●●●● patch | view | raw | blame | history
install-sh 179 ●●●●● patch | view | raw | blame | history
m4/libtool.m4 8394 ●●●●● patch | view | raw | blame | history
m4/ltoptions.m4 437 ●●●●● patch | view | raw | blame | history
m4/ltsugar.m4 124 ●●●●● patch | view | raw | blame | history
m4/ltversion.m4 23 ●●●●● patch | view | raw | blame | history
m4/lt~obsolete.m4 99 ●●●●● patch | view | raw | blame | history
missing 16 ●●●● patch | view | raw | blame | history
INSTALL
@@ -1,8 +1,8 @@
Installation Instructions
*************************
   Copyright (C) 1994-1996, 1999-2002, 2004-2016 Free Software
Foundation, Inc.
   Copyright (C) 1994-1996, 1999-2002, 2004-2017, 2020-2021 Free
Software Foundation, Inc.
   Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
@@ -225,7 +225,7 @@
and if that doesn't work, install pre-built binaries of GCC for HP-UX.
   HP-UX 'make' updates targets which have the same time stamps as their
   HP-UX 'make' updates targets which have the same timestamps as their
prerequisites, which makes it generally unusable when shipped generated
files such as 'configure' are involved.  Use GNU 'make' instead.
README.md
@@ -20,7 +20,7 @@
On Debian based systems, install prerequisities by typing the following command in the command line:
``sudo apt-get install libconfuse-dev libgsl0-dev libxml2-dev zlib1g-dev automake gcc python3-psutil python3 python3-pip``
``sudo apt-get install libconfuse-dev libgsl0-dev libxml2-dev zlib1g-dev automake gcc pkg-config python3-psutil python3 python3-pip``
``sudo pip3 install tabulate configobj``
Move to the project root directory and compile with:
config.guess
@@ -1,12 +1,14 @@
#! /bin/sh
# Attempt to guess a canonical system name.
#   Copyright 1992-2018 Free Software Foundation, Inc.
#   Copyright 1992-2022 Free Software Foundation, Inc.
timestamp='2018-02-24'
# shellcheck disable=SC2006,SC2268 # see below for rationale
timestamp='2022-01-09'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful, but
@@ -27,9 +29,17 @@
# Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
#
# You can get the latest version of this script from:
# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
# https://git.savannah.gnu.org/cgit/config.git/plain/config.guess
#
# Please send patches to <config-patches@gnu.org>.
# The "shellcheck disable" line above the timestamp inhibits complaints
# about features and limitations of the classic Bourne shell that were
# superseded or lifted in POSIX.  However, this script identifies a wide
# variety of pre-POSIX systems that do not have POSIX shells at all, and
# even some reasonably current systems (Solaris 10 as case-in-point) still
# have a pre-POSIX /bin/sh.
me=`echo "$0" | sed -e 's,.*/,,'`
@@ -50,7 +60,7 @@
GNU config.guess ($timestamp)
Originally written by Per Bothner.
Copyright 1992-2018 Free Software Foundation, Inc.
Copyright 1992-2022 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -84,7 +94,8 @@
  exit 1
fi
trap 'exit 1' 1 2 15
# Just in case it came from the environment.
GUESS=
# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
# compiler to aid in system detection is discouraged as it requires
@@ -96,73 +107,90 @@
# Portable tmp directory creation inspired by the Autoconf team.
set_cc_for_build='
trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
: ${TMPDIR=/tmp} ;
 { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
 { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
 { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
 { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
dummy=$tmp/dummy ;
tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
case $CC_FOR_BUILD,$HOST_CC,$CC in
 ,,)    echo "int x;" > "$dummy.c" ;
    for c in cc gcc c89 c99 ; do
      if ($c -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then
         CC_FOR_BUILD="$c"; break ;
      fi ;
    done ;
    if test x"$CC_FOR_BUILD" = x ; then
      CC_FOR_BUILD=no_compiler_found ;
    fi
    ;;
 ,,*)   CC_FOR_BUILD=$CC ;;
 ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
esac ; set_cc_for_build= ;'
tmp=
# shellcheck disable=SC2172
trap 'test -z "$tmp" || rm -fr "$tmp"' 0 1 2 13 15
set_cc_for_build() {
    # prevent multiple calls if $tmp is already set
    test "$tmp" && return 0
    : "${TMPDIR=/tmp}"
    # shellcheck disable=SC2039,SC3028
    { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
    { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } ||
    { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } ||
    { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; }
    dummy=$tmp/dummy
    case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in
    ,,)    echo "int x;" > "$dummy.c"
           for driver in cc gcc c89 c99 ; do
           if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then
               CC_FOR_BUILD=$driver
               break
           fi
           done
           if test x"$CC_FOR_BUILD" = x ; then
           CC_FOR_BUILD=no_compiler_found
           fi
           ;;
    ,,*)   CC_FOR_BUILD=$CC ;;
    ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
    esac
}
# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
# (ghazi@noc.rutgers.edu 1994-08-24)
if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
if test -f /.attbin/uname ; then
    PATH=$PATH:/.attbin ; export PATH
fi
UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
case "$UNAME_SYSTEM" in
case $UNAME_SYSTEM in
Linux|GNU|GNU/*)
    # If the system lacks a compiler, then just pick glibc.
    # We could probably try harder.
    LIBC=gnu
    LIBC=unknown
    eval "$set_cc_for_build"
    set_cc_for_build
    cat <<-EOF > "$dummy.c"
    #include <features.h>
    #if defined(__UCLIBC__)
    LIBC=uclibc
    #elif defined(__dietlibc__)
    LIBC=dietlibc
    #else
    #elif defined(__GLIBC__)
    LIBC=gnu
    #else
    #include <stdarg.h>
    /* First heuristic to detect musl libc.  */
    #ifdef __DEFINED_va_list
    LIBC=musl
    #endif
    #endif
    EOF
    eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`"
    cc_set_libc=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
    eval "$cc_set_libc"
    # If ldd exists, use it to detect musl libc.
    if command -v ldd >/dev/null && \
        ldd --version 2>&1 | grep -q ^musl
    then
        LIBC=musl
    # Second heuristic to detect musl libc.
    if [ "$LIBC" = unknown ] &&
       command -v ldd >/dev/null &&
       ldd --version 2>&1 | grep -q ^musl; then
        LIBC=musl
    fi
    # If the system lacks a compiler, then just pick glibc.
    # We could probably try harder.
    if [ "$LIBC" = unknown ]; then
        LIBC=gnu
    fi
    ;;
esac
# Note: order is significant - the case branches are not exclusive.
case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in
    *:NetBSD:*:*)
    # NetBSD (nbsd) targets should (where applicable) match one or
    # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
@@ -174,12 +202,12 @@
    #
    # Note: NetBSD doesn't particularly care about the vendor
    # portion of the name.  We always set it to "unknown".
    sysctl="sysctl -n hw.machine_arch"
    UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
        "/sbin/$sysctl" 2>/dev/null || \
        "/usr/sbin/$sysctl" 2>/dev/null || \
        /sbin/sysctl -n hw.machine_arch 2>/dev/null || \
        /usr/sbin/sysctl -n hw.machine_arch 2>/dev/null || \
        echo unknown)`
    case "$UNAME_MACHINE_ARCH" in
    case $UNAME_MACHINE_ARCH in
        aarch64eb) machine=aarch64_be-unknown ;;
        armeb) machine=armeb-unknown ;;
        arm*) machine=arm-unknown ;;
        sh3el) machine=shl-unknown ;;
@@ -188,18 +216,18 @@
        earmv*)
        arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'`
        endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'`
        machine="${arch}${endian}"-unknown
        machine=${arch}${endian}-unknown
        ;;
        *) machine="$UNAME_MACHINE_ARCH"-unknown ;;
        *) machine=$UNAME_MACHINE_ARCH-unknown ;;
    esac
    # The Operating System including object format, if it has switched
    # to ELF recently (or will in the future) and ABI.
    case "$UNAME_MACHINE_ARCH" in
    case $UNAME_MACHINE_ARCH in
        earm*)
        os=netbsdelf
        ;;
        arm*|i386|m68k|ns32k|sh3*|sparc|vax)
        eval "$set_cc_for_build"
        set_cc_for_build
        if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
            | grep -q __ELF__
        then
@@ -215,7 +243,7 @@
        ;;
    esac
    # Determine ABI tags.
    case "$UNAME_MACHINE_ARCH" in
    case $UNAME_MACHINE_ARCH in
        earm*)
        expr='s/^earmv[0-9]/-eabi/;s/eb$//'
        abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"`
@@ -226,7 +254,7 @@
    # thus, need a distinct triplet. However, they do not need
    # kernel version information, so it can be replaced with a
    # suitable tag, in the style of linux-gnu.
    case "$UNAME_VERSION" in
    case $UNAME_VERSION in
        Debian*)
        release='-gnu'
        ;;
@@ -237,45 +265,57 @@
    # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
    # contains redundant information, the shorter form:
    # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
    echo "$machine-${os}${release}${abi}"
    exit ;;
    GUESS=$machine-${os}${release}${abi-}
    ;;
    *:Bitrig:*:*)
    UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
    echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE"
    exit ;;
    GUESS=$UNAME_MACHINE_ARCH-unknown-bitrig$UNAME_RELEASE
    ;;
    *:OpenBSD:*:*)
    UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
    echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE"
    exit ;;
    GUESS=$UNAME_MACHINE_ARCH-unknown-openbsd$UNAME_RELEASE
    ;;
    *:SecBSD:*:*)
    UNAME_MACHINE_ARCH=`arch | sed 's/SecBSD.//'`
    GUESS=$UNAME_MACHINE_ARCH-unknown-secbsd$UNAME_RELEASE
    ;;
    *:LibertyBSD:*:*)
    UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
    echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE"
    exit ;;
    GUESS=$UNAME_MACHINE_ARCH-unknown-libertybsd$UNAME_RELEASE
    ;;
    *:MidnightBSD:*:*)
    echo "$UNAME_MACHINE"-unknown-midnightbsd"$UNAME_RELEASE"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-midnightbsd$UNAME_RELEASE
    ;;
    *:ekkoBSD:*:*)
    echo "$UNAME_MACHINE"-unknown-ekkobsd"$UNAME_RELEASE"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-ekkobsd$UNAME_RELEASE
    ;;
    *:SolidBSD:*:*)
    echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-solidbsd$UNAME_RELEASE
    ;;
    *:OS108:*:*)
    GUESS=$UNAME_MACHINE-unknown-os108_$UNAME_RELEASE
    ;;
    macppc:MirBSD:*:*)
    echo powerpc-unknown-mirbsd"$UNAME_RELEASE"
    exit ;;
    GUESS=powerpc-unknown-mirbsd$UNAME_RELEASE
    ;;
    *:MirBSD:*:*)
    echo "$UNAME_MACHINE"-unknown-mirbsd"$UNAME_RELEASE"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-mirbsd$UNAME_RELEASE
    ;;
    *:Sortix:*:*)
    echo "$UNAME_MACHINE"-unknown-sortix
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-sortix
    ;;
    *:Twizzler:*:*)
    GUESS=$UNAME_MACHINE-unknown-twizzler
    ;;
    *:Redox:*:*)
    echo "$UNAME_MACHINE"-unknown-redox
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-redox
    ;;
    mips:OSF1:*.*)
        echo mips-dec-osf1
        exit ;;
    GUESS=mips-dec-osf1
    ;;
    alpha:OSF1:*:*)
    # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
    trap '' 0
    case $UNAME_RELEASE in
    *4.0)
        UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
@@ -289,7 +329,7 @@
    # covers most systems running today.  This code pipes the CPU
    # types through head -n 1, so we only detect the type of CPU 0.
    ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
    case "$ALPHA_CPU_TYPE" in
    case $ALPHA_CPU_TYPE in
        "EV4 (21064)")
        UNAME_MACHINE=alpha ;;
        "EV4.5 (21064)")
@@ -326,117 +366,121 @@
    # A Tn.n version is a released field test version.
    # A Xn.n version is an unreleased experimental baselevel.
    # 1.2 uses "1.2" for uname -r.
    echo "$UNAME_MACHINE"-dec-osf"`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`"
    # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
    exitcode=$?
    trap '' 0
    exit $exitcode ;;
    OSF_REL=`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
    GUESS=$UNAME_MACHINE-dec-osf$OSF_REL
    ;;
    Amiga*:UNIX_System_V:4.0:*)
    echo m68k-unknown-sysv4
    exit ;;
    GUESS=m68k-unknown-sysv4
    ;;
    *:[Aa]miga[Oo][Ss]:*:*)
    echo "$UNAME_MACHINE"-unknown-amigaos
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-amigaos
    ;;
    *:[Mm]orph[Oo][Ss]:*:*)
    echo "$UNAME_MACHINE"-unknown-morphos
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-morphos
    ;;
    *:OS/390:*:*)
    echo i370-ibm-openedition
    exit ;;
    GUESS=i370-ibm-openedition
    ;;
    *:z/VM:*:*)
    echo s390-ibm-zvmoe
    exit ;;
    GUESS=s390-ibm-zvmoe
    ;;
    *:OS400:*:*)
    echo powerpc-ibm-os400
    exit ;;
    GUESS=powerpc-ibm-os400
    ;;
    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
    echo arm-acorn-riscix"$UNAME_RELEASE"
    exit ;;
    GUESS=arm-acorn-riscix$UNAME_RELEASE
    ;;
    arm*:riscos:*:*|arm*:RISCOS:*:*)
    echo arm-unknown-riscos
    exit ;;
    GUESS=arm-unknown-riscos
    ;;
    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
    echo hppa1.1-hitachi-hiuxmpp
    exit ;;
    GUESS=hppa1.1-hitachi-hiuxmpp
    ;;
    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
    # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
    if test "`(/bin/universe) 2>/dev/null`" = att ; then
        echo pyramid-pyramid-sysv3
    else
        echo pyramid-pyramid-bsd
    fi
    exit ;;
    case `(/bin/universe) 2>/dev/null` in
        att) GUESS=pyramid-pyramid-sysv3 ;;
        *)   GUESS=pyramid-pyramid-bsd   ;;
    esac
    ;;
    NILE*:*:*:dcosx)
    echo pyramid-pyramid-svr4
    exit ;;
    GUESS=pyramid-pyramid-svr4
    ;;
    DRS?6000:unix:4.0:6*)
    echo sparc-icl-nx6
    exit ;;
    GUESS=sparc-icl-nx6
    ;;
    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
    case `/usr/bin/uname -p` in
        sparc) echo sparc-icl-nx7; exit ;;
    esac ;;
        sparc) GUESS=sparc-icl-nx7 ;;
    esac
    ;;
    s390x:SunOS:*:*)
    echo "$UNAME_MACHINE"-ibm-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
    exit ;;
    SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
    GUESS=$UNAME_MACHINE-ibm-solaris2$SUN_REL
    ;;
    sun4H:SunOS:5.*:*)
    echo sparc-hal-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
    exit ;;
    SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
    GUESS=sparc-hal-solaris2$SUN_REL
    ;;
    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
    echo sparc-sun-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
    exit ;;
    SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
    GUESS=sparc-sun-solaris2$SUN_REL
    ;;
    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
    echo i386-pc-auroraux"$UNAME_RELEASE"
    exit ;;
    GUESS=i386-pc-auroraux$UNAME_RELEASE
    ;;
    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
    eval "$set_cc_for_build"
    set_cc_for_build
    SUN_ARCH=i386
    # If there is a compiler, see if it is configured for 64-bit objects.
    # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
    # This test works for both compilers.
    if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
    if test "$CC_FOR_BUILD" != no_compiler_found; then
        if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
        (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
        (CCOPTS="" $CC_FOR_BUILD -m64 -E - 2>/dev/null) | \
        grep IS_64BIT_ARCH >/dev/null
        then
        SUN_ARCH=x86_64
        fi
    fi
    echo "$SUN_ARCH"-pc-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
    exit ;;
    SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
    GUESS=$SUN_ARCH-pc-solaris2$SUN_REL
    ;;
    sun4*:SunOS:6*:*)
    # According to config.sub, this is the proper way to canonicalize
    # SunOS6.  Hard to guess exactly what SunOS6 will be like, but
    # it's likely to be more like Solaris than SunOS4.
    echo sparc-sun-solaris3"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
    exit ;;
    SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
    GUESS=sparc-sun-solaris3$SUN_REL
    ;;
    sun4*:SunOS:*:*)
    case "`/usr/bin/arch -k`" in
    case `/usr/bin/arch -k` in
        Series*|S4*)
        UNAME_RELEASE=`uname -v`
        ;;
    esac
    # Japanese Language versions have a version number like `4.1.3-JL'.
    echo sparc-sun-sunos"`echo "$UNAME_RELEASE"|sed -e 's/-/_/'`"
    exit ;;
    SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/'`
    GUESS=sparc-sun-sunos$SUN_REL
    ;;
    sun3*:SunOS:*:*)
    echo m68k-sun-sunos"$UNAME_RELEASE"
    exit ;;
    GUESS=m68k-sun-sunos$UNAME_RELEASE
    ;;
    sun*:*:4.2BSD:*)
    UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
    test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3
    case "`/bin/arch`" in
    case `/bin/arch` in
        sun3)
        echo m68k-sun-sunos"$UNAME_RELEASE"
        GUESS=m68k-sun-sunos$UNAME_RELEASE
        ;;
        sun4)
        echo sparc-sun-sunos"$UNAME_RELEASE"
        GUESS=sparc-sun-sunos$UNAME_RELEASE
        ;;
    esac
    exit ;;
    ;;
    aushp:SunOS:*:*)
    echo sparc-auspex-sunos"$UNAME_RELEASE"
    exit ;;
    GUESS=sparc-auspex-sunos$UNAME_RELEASE
    ;;
    # The situation for MiNT is a little confusing.  The machine name
    # can be virtually everything (everything which is not
    # "atarist" or "atariste" at least should have a processor
@@ -446,43 +490,43 @@
    # MiNT.  But MiNT is downward compatible to TOS, so this should
    # be no problem.
    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
    echo m68k-atari-mint"$UNAME_RELEASE"
    exit ;;
    GUESS=m68k-atari-mint$UNAME_RELEASE
    ;;
    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
    echo m68k-atari-mint"$UNAME_RELEASE"
    exit ;;
    GUESS=m68k-atari-mint$UNAME_RELEASE
    ;;
    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
    echo m68k-atari-mint"$UNAME_RELEASE"
    exit ;;
    GUESS=m68k-atari-mint$UNAME_RELEASE
    ;;
    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
    echo m68k-milan-mint"$UNAME_RELEASE"
    exit ;;
    GUESS=m68k-milan-mint$UNAME_RELEASE
    ;;
    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
    echo m68k-hades-mint"$UNAME_RELEASE"
    exit ;;
    GUESS=m68k-hades-mint$UNAME_RELEASE
    ;;
    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
    echo m68k-unknown-mint"$UNAME_RELEASE"
    exit ;;
    GUESS=m68k-unknown-mint$UNAME_RELEASE
    ;;
    m68k:machten:*:*)
    echo m68k-apple-machten"$UNAME_RELEASE"
    exit ;;
    GUESS=m68k-apple-machten$UNAME_RELEASE
    ;;
    powerpc:machten:*:*)
    echo powerpc-apple-machten"$UNAME_RELEASE"
    exit ;;
    GUESS=powerpc-apple-machten$UNAME_RELEASE
    ;;
    RISC*:Mach:*:*)
    echo mips-dec-mach_bsd4.3
    exit ;;
    GUESS=mips-dec-mach_bsd4.3
    ;;
    RISC*:ULTRIX:*:*)
    echo mips-dec-ultrix"$UNAME_RELEASE"
    exit ;;
    GUESS=mips-dec-ultrix$UNAME_RELEASE
    ;;
    VAX*:ULTRIX*:*:*)
    echo vax-dec-ultrix"$UNAME_RELEASE"
    exit ;;
    GUESS=vax-dec-ultrix$UNAME_RELEASE
    ;;
    2020:CLIX:*:* | 2430:CLIX:*:*)
    echo clipper-intergraph-clix"$UNAME_RELEASE"
    exit ;;
    GUESS=clipper-intergraph-clix$UNAME_RELEASE
    ;;
    mips:*:*:UMIPS | mips:*:*:RISCos)
    eval "$set_cc_for_build"
    set_cc_for_build
    sed 's/^    //' << EOF > "$dummy.c"
#ifdef __cplusplus
#include <stdio.h>  /* for printf() prototype */
@@ -508,78 +552,79 @@
      dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` &&
      SYSTEM_NAME=`"$dummy" "$dummyarg"` &&
        { echo "$SYSTEM_NAME"; exit; }
    echo mips-mips-riscos"$UNAME_RELEASE"
    exit ;;
    GUESS=mips-mips-riscos$UNAME_RELEASE
    ;;
    Motorola:PowerMAX_OS:*:*)
    echo powerpc-motorola-powermax
    exit ;;
    GUESS=powerpc-motorola-powermax
    ;;
    Motorola:*:4.3:PL8-*)
    echo powerpc-harris-powermax
    exit ;;
    GUESS=powerpc-harris-powermax
    ;;
    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
    echo powerpc-harris-powermax
    exit ;;
    GUESS=powerpc-harris-powermax
    ;;
    Night_Hawk:Power_UNIX:*:*)
    echo powerpc-harris-powerunix
    exit ;;
    GUESS=powerpc-harris-powerunix
    ;;
    m88k:CX/UX:7*:*)
    echo m88k-harris-cxux7
    exit ;;
    GUESS=m88k-harris-cxux7
    ;;
    m88k:*:4*:R4*)
    echo m88k-motorola-sysv4
    exit ;;
    GUESS=m88k-motorola-sysv4
    ;;
    m88k:*:3*:R3*)
    echo m88k-motorola-sysv3
    exit ;;
    GUESS=m88k-motorola-sysv3
    ;;
    AViiON:dgux:*:*)
    # DG/UX returns AViiON for all architectures
    UNAME_PROCESSOR=`/usr/bin/uname -p`
    if [ "$UNAME_PROCESSOR" = mc88100 ] || [ "$UNAME_PROCESSOR" = mc88110 ]
    if test "$UNAME_PROCESSOR" = mc88100 || test "$UNAME_PROCESSOR" = mc88110
    then
        if [ "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx ] || \
           [ "$TARGET_BINARY_INTERFACE"x = x ]
        if test "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx || \
           test "$TARGET_BINARY_INTERFACE"x = x
        then
        echo m88k-dg-dgux"$UNAME_RELEASE"
        GUESS=m88k-dg-dgux$UNAME_RELEASE
        else
        echo m88k-dg-dguxbcs"$UNAME_RELEASE"
        GUESS=m88k-dg-dguxbcs$UNAME_RELEASE
        fi
    else
        echo i586-dg-dgux"$UNAME_RELEASE"
        GUESS=i586-dg-dgux$UNAME_RELEASE
    fi
    exit ;;
    ;;
    M88*:DolphinOS:*:*)    # DolphinOS (SVR3)
    echo m88k-dolphin-sysv3
    exit ;;
    GUESS=m88k-dolphin-sysv3
    ;;
    M88*:*:R3*:*)
    # Delta 88k system running SVR3
    echo m88k-motorola-sysv3
    exit ;;
    GUESS=m88k-motorola-sysv3
    ;;
    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
    echo m88k-tektronix-sysv3
    exit ;;
    GUESS=m88k-tektronix-sysv3
    ;;
    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
    echo m68k-tektronix-bsd
    exit ;;
    GUESS=m68k-tektronix-bsd
    ;;
    *:IRIX*:*:*)
    echo mips-sgi-irix"`echo "$UNAME_RELEASE"|sed -e 's/-/_/g'`"
    exit ;;
    IRIX_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/g'`
    GUESS=mips-sgi-irix$IRIX_REL
    ;;
    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
    echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
    exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
    GUESS=romp-ibm-aix    # uname -m gives an 8 hex-code CPU id
    ;;                    # Note that: echo "'`uname -s`'" gives 'AIX '
    i*86:AIX:*:*)
    echo i386-ibm-aix
    exit ;;
    GUESS=i386-ibm-aix
    ;;
    ia64:AIX:*:*)
    if [ -x /usr/bin/oslevel ] ; then
    if test -x /usr/bin/oslevel ; then
        IBM_REV=`/usr/bin/oslevel`
    else
        IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
        IBM_REV=$UNAME_VERSION.$UNAME_RELEASE
    fi
    echo "$UNAME_MACHINE"-ibm-aix"$IBM_REV"
    exit ;;
    GUESS=$UNAME_MACHINE-ibm-aix$IBM_REV
    ;;
    *:AIX:2:3)
    if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
        eval "$set_cc_for_build"
        set_cc_for_build
        sed 's/^        //' << EOF > "$dummy.c"
        #include <sys/systemcfg.h>
@@ -593,16 +638,16 @@
EOF
        if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"`
        then
            echo "$SYSTEM_NAME"
            GUESS=$SYSTEM_NAME
        else
            echo rs6000-ibm-aix3.2.5
            GUESS=rs6000-ibm-aix3.2.5
        fi
    elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
        echo rs6000-ibm-aix3.2.4
        GUESS=rs6000-ibm-aix3.2.4
    else
        echo rs6000-ibm-aix3.2
        GUESS=rs6000-ibm-aix3.2
    fi
    exit ;;
    ;;
    *:AIX:*:[4567])
    IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
    if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then
@@ -610,57 +655,57 @@
    else
        IBM_ARCH=powerpc
    fi
    if [ -x /usr/bin/lslpp ] ; then
        IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |
    if test -x /usr/bin/lslpp ; then
        IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | \
               awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
    else
        IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
        IBM_REV=$UNAME_VERSION.$UNAME_RELEASE
    fi
    echo "$IBM_ARCH"-ibm-aix"$IBM_REV"
    exit ;;
    GUESS=$IBM_ARCH-ibm-aix$IBM_REV
    ;;
    *:AIX:*:*)
    echo rs6000-ibm-aix
    exit ;;
    GUESS=rs6000-ibm-aix
    ;;
    ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*)
    echo romp-ibm-bsd4.4
    exit ;;
    GUESS=romp-ibm-bsd4.4
    ;;
    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
    echo romp-ibm-bsd"$UNAME_RELEASE"   # 4.3 with uname added to
    exit ;;                             # report: romp-ibm BSD 4.3
    GUESS=romp-ibm-bsd$UNAME_RELEASE    # 4.3 with uname added to
    ;;                                  # report: romp-ibm BSD 4.3
    *:BOSX:*:*)
    echo rs6000-bull-bosx
    exit ;;
    GUESS=rs6000-bull-bosx
    ;;
    DPX/2?00:B.O.S.:*:*)
    echo m68k-bull-sysv3
    exit ;;
    GUESS=m68k-bull-sysv3
    ;;
    9000/[34]??:4.3bsd:1.*:*)
    echo m68k-hp-bsd
    exit ;;
    GUESS=m68k-hp-bsd
    ;;
    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
    echo m68k-hp-bsd4.4
    exit ;;
    GUESS=m68k-hp-bsd4.4
    ;;
    9000/[34678]??:HP-UX:*:*)
    HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
    case "$UNAME_MACHINE" in
    HPUX_REV=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*.[0B]*//'`
    case $UNAME_MACHINE in
        9000/31?)            HP_ARCH=m68000 ;;
        9000/[34]??)         HP_ARCH=m68k ;;
        9000/[678][0-9][0-9])
        if [ -x /usr/bin/getconf ]; then
        if test -x /usr/bin/getconf; then
            sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
            sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
            case "$sc_cpu_version" in
            case $sc_cpu_version in
              523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
              528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
              532)                      # CPU_PA_RISC2_0
            case "$sc_kernel_bits" in
            case $sc_kernel_bits in
              32) HP_ARCH=hppa2.0n ;;
              64) HP_ARCH=hppa2.0w ;;
              '') HP_ARCH=hppa2.0 ;;   # HP-UX 10.20
            esac ;;
            esac
        fi
        if [ "$HP_ARCH" = "" ]; then
            eval "$set_cc_for_build"
        if test "$HP_ARCH" = ""; then
            set_cc_for_build
            sed 's/^        //' << EOF > "$dummy.c"
        #define _HPUX_SOURCE
@@ -698,9 +743,9 @@
            test -z "$HP_ARCH" && HP_ARCH=hppa
        fi ;;
    esac
    if [ "$HP_ARCH" = hppa2.0w ]
    if test "$HP_ARCH" = hppa2.0w
    then
        eval "$set_cc_for_build"
        set_cc_for_build
        # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
        # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
@@ -719,14 +764,14 @@
        HP_ARCH=hppa64
        fi
    fi
    echo "$HP_ARCH"-hp-hpux"$HPUX_REV"
    exit ;;
    GUESS=$HP_ARCH-hp-hpux$HPUX_REV
    ;;
    ia64:HP-UX:*:*)
    HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
    echo ia64-hp-hpux"$HPUX_REV"
    exit ;;
    HPUX_REV=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*.[0B]*//'`
    GUESS=ia64-hp-hpux$HPUX_REV
    ;;
    3050*:HI-UX:*:*)
    eval "$set_cc_for_build"
    set_cc_for_build
    sed 's/^    //' << EOF > "$dummy.c"
    #include <unistd.h>
    int
@@ -754,36 +799,36 @@
EOF
    $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` &&
        { echo "$SYSTEM_NAME"; exit; }
    echo unknown-hitachi-hiuxwe2
    exit ;;
    GUESS=unknown-hitachi-hiuxwe2
    ;;
    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*)
    echo hppa1.1-hp-bsd
    exit ;;
    GUESS=hppa1.1-hp-bsd
    ;;
    9000/8??:4.3bsd:*:*)
    echo hppa1.0-hp-bsd
    exit ;;
    GUESS=hppa1.0-hp-bsd
    ;;
    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
    echo hppa1.0-hp-mpeix
    exit ;;
    GUESS=hppa1.0-hp-mpeix
    ;;
    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*)
    echo hppa1.1-hp-osf
    exit ;;
    GUESS=hppa1.1-hp-osf
    ;;
    hp8??:OSF1:*:*)
    echo hppa1.0-hp-osf
    exit ;;
    GUESS=hppa1.0-hp-osf
    ;;
    i*86:OSF1:*:*)
    if [ -x /usr/sbin/sysversion ] ; then
        echo "$UNAME_MACHINE"-unknown-osf1mk
    if test -x /usr/sbin/sysversion ; then
        GUESS=$UNAME_MACHINE-unknown-osf1mk
    else
        echo "$UNAME_MACHINE"-unknown-osf1
        GUESS=$UNAME_MACHINE-unknown-osf1
    fi
    exit ;;
    ;;
    parisc*:Lites*:*:*)
    echo hppa1.1-hp-lites
    exit ;;
    GUESS=hppa1.1-hp-lites
    ;;
    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
    echo c1-convex-bsd
    exit ;;
    GUESS=c1-convex-bsd
    ;;
    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
    if getsysinfo -f scalar_acc
    then echo c32-convex-bsd
@@ -791,17 +836,18 @@
    fi
    exit ;;
    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
    echo c34-convex-bsd
    exit ;;
    GUESS=c34-convex-bsd
    ;;
    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
    echo c38-convex-bsd
    exit ;;
    GUESS=c38-convex-bsd
    ;;
    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
    echo c4-convex-bsd
    exit ;;
    GUESS=c4-convex-bsd
    ;;
    CRAY*Y-MP:*:*:*)
    echo ymp-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
    exit ;;
    CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
    GUESS=ymp-cray-unicos$CRAY_REL
    ;;
    CRAY*[A-Z]90:*:*:*)
    echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \
    | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
@@ -809,103 +855,129 @@
          -e 's/\.[^.]*$/.X/'
    exit ;;
    CRAY*TS:*:*:*)
    echo t90-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
    exit ;;
    CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
    GUESS=t90-cray-unicos$CRAY_REL
    ;;
    CRAY*T3E:*:*:*)
    echo alphaev5-cray-unicosmk"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
    exit ;;
    CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
    GUESS=alphaev5-cray-unicosmk$CRAY_REL
    ;;
    CRAY*SV1:*:*:*)
    echo sv1-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
    exit ;;
    CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
    GUESS=sv1-cray-unicos$CRAY_REL
    ;;
    *:UNICOS/mp:*:*)
    echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
    exit ;;
    CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'`
    GUESS=craynv-cray-unicosmp$CRAY_REL
    ;;
    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
    FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
    FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
    FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'`
    echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
    exit ;;
    GUESS=${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}
    ;;
    5000:UNIX_System_V:4.*:*)
    FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
    FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`
    echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
    exit ;;
    GUESS=sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}
    ;;
    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
    echo "$UNAME_MACHINE"-pc-bsdi"$UNAME_RELEASE"
    exit ;;
    GUESS=$UNAME_MACHINE-pc-bsdi$UNAME_RELEASE
    ;;
    sparc*:BSD/OS:*:*)
    echo sparc-unknown-bsdi"$UNAME_RELEASE"
    exit ;;
    GUESS=sparc-unknown-bsdi$UNAME_RELEASE
    ;;
    *:BSD/OS:*:*)
    echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-bsdi$UNAME_RELEASE
    ;;
    arm:FreeBSD:*:*)
    UNAME_PROCESSOR=`uname -p`
    set_cc_for_build
    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
        | grep -q __ARM_PCS_VFP
    then
        FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
        GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabi
    else
        FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
        GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabihf
    fi
    ;;
    *:FreeBSD:*:*)
    UNAME_PROCESSOR=`/usr/bin/uname -p`
    case "$UNAME_PROCESSOR" in
    case $UNAME_PROCESSOR in
        amd64)
        UNAME_PROCESSOR=x86_64 ;;
        i386)
        UNAME_PROCESSOR=i586 ;;
    esac
    echo "$UNAME_PROCESSOR"-unknown-freebsd"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
    exit ;;
    FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
    GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL
    ;;
    i*:CYGWIN*:*)
    echo "$UNAME_MACHINE"-pc-cygwin
    exit ;;
    GUESS=$UNAME_MACHINE-pc-cygwin
    ;;
    *:MINGW64*:*)
    echo "$UNAME_MACHINE"-pc-mingw64
    exit ;;
    GUESS=$UNAME_MACHINE-pc-mingw64
    ;;
    *:MINGW*:*)
    echo "$UNAME_MACHINE"-pc-mingw32
    exit ;;
    GUESS=$UNAME_MACHINE-pc-mingw32
    ;;
    *:MSYS*:*)
    echo "$UNAME_MACHINE"-pc-msys
    exit ;;
    GUESS=$UNAME_MACHINE-pc-msys
    ;;
    i*:PW*:*)
    echo "$UNAME_MACHINE"-pc-pw32
    exit ;;
    GUESS=$UNAME_MACHINE-pc-pw32
    ;;
    *:SerenityOS:*:*)
        GUESS=$UNAME_MACHINE-pc-serenity
        ;;
    *:Interix*:*)
    case "$UNAME_MACHINE" in
    case $UNAME_MACHINE in
        x86)
        echo i586-pc-interix"$UNAME_RELEASE"
        exit ;;
        GUESS=i586-pc-interix$UNAME_RELEASE
        ;;
        authenticamd | genuineintel | EM64T)
        echo x86_64-unknown-interix"$UNAME_RELEASE"
        exit ;;
        GUESS=x86_64-unknown-interix$UNAME_RELEASE
        ;;
        IA64)
        echo ia64-unknown-interix"$UNAME_RELEASE"
        exit ;;
        GUESS=ia64-unknown-interix$UNAME_RELEASE
        ;;
    esac ;;
    i*:UWIN*:*)
    echo "$UNAME_MACHINE"-pc-uwin
    exit ;;
    GUESS=$UNAME_MACHINE-pc-uwin
    ;;
    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
    echo x86_64-unknown-cygwin
    exit ;;
    GUESS=x86_64-pc-cygwin
    ;;
    prep*:SunOS:5.*:*)
    echo powerpcle-unknown-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
    exit ;;
    SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
    GUESS=powerpcle-unknown-solaris2$SUN_REL
    ;;
    *:GNU:*:*)
    # the GNU system
    echo "`echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,'`-unknown-$LIBC`echo "$UNAME_RELEASE"|sed -e 's,/.*$,,'`"
    exit ;;
    GNU_ARCH=`echo "$UNAME_MACHINE" | sed -e 's,[-/].*$,,'`
    GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's,/.*$,,'`
    GUESS=$GNU_ARCH-unknown-$LIBC$GNU_REL
    ;;
    *:GNU/*:*:*)
    # other systems with GNU libc and userland
    echo "$UNAME_MACHINE-unknown-`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`-$LIBC"
    exit ;;
    i*86:Minix:*:*)
    echo "$UNAME_MACHINE"-pc-minix
    exit ;;
    GNU_SYS=`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"`
    GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
    GUESS=$UNAME_MACHINE-unknown-$GNU_SYS$GNU_REL-$LIBC
    ;;
    *:Minix:*:*)
    GUESS=$UNAME_MACHINE-unknown-minix
    ;;
    aarch64:Linux:*:*)
    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
    ;;
    aarch64_be:Linux:*:*)
    UNAME_MACHINE=aarch64_be
    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
    ;;
    alpha:Linux:*:*)
    case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
    case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' /proc/cpuinfo 2>/dev/null` in
      EV5)   UNAME_MACHINE=alphaev5 ;;
      EV56)  UNAME_MACHINE=alphaev56 ;;
      PCA56) UNAME_MACHINE=alphapca56 ;;
@@ -916,187 +988,225 @@
    esac
    objdump --private-headers /bin/sh | grep -q ld.so.1
    if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
    exit ;;
    arc:Linux:*:* | arceb:Linux:*:*)
    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
    ;;
    arc:Linux:*:* | arceb:Linux:*:* | arc32:Linux:*:* | arc64:Linux:*:*)
    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
    ;;
    arm*:Linux:*:*)
    eval "$set_cc_for_build"
    set_cc_for_build
    if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
        | grep -q __ARM_EABI__
    then
        echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
        GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
    else
        if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
        | grep -q __ARM_PCS_VFP
        then
        echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabi
        GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabi
        else
        echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabihf
        GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabihf
        fi
    fi
    exit ;;
    ;;
    avr32*:Linux:*:*)
    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
    ;;
    cris:Linux:*:*)
    echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-axis-linux-$LIBC
    ;;
    crisv32:Linux:*:*)
    echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-axis-linux-$LIBC
    ;;
    e2k:Linux:*:*)
    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
    ;;
    frv:Linux:*:*)
    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
    ;;
    hexagon:Linux:*:*)
    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
    ;;
    i*86:Linux:*:*)
    echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-pc-linux-$LIBC
    ;;
    ia64:Linux:*:*)
    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
    ;;
    k1om:Linux:*:*)
    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
    ;;
    loongarch32:Linux:*:* | loongarch64:Linux:*:* | loongarchx32:Linux:*:*)
    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
    ;;
    m32r*:Linux:*:*)
    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
    ;;
    m68*:Linux:*:*)
    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
    ;;
    mips:Linux:*:* | mips64:Linux:*:*)
    eval "$set_cc_for_build"
    set_cc_for_build
    IS_GLIBC=0
    test x"${LIBC}" = xgnu && IS_GLIBC=1
    sed 's/^    //' << EOF > "$dummy.c"
    #undef CPU
    #undef ${UNAME_MACHINE}
    #undef ${UNAME_MACHINE}el
    #undef mips
    #undef mipsel
    #undef mips64
    #undef mips64el
    #if ${IS_GLIBC} && defined(_ABI64)
    LIBCABI=gnuabi64
    #else
    #if ${IS_GLIBC} && defined(_ABIN32)
    LIBCABI=gnuabin32
    #else
    LIBCABI=${LIBC}
    #endif
    #endif
    #if ${IS_GLIBC} && defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6
    CPU=mipsisa64r6
    #else
    #if ${IS_GLIBC} && !defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6
    CPU=mipsisa32r6
    #else
    #if defined(__mips64)
    CPU=mips64
    #else
    CPU=mips
    #endif
    #endif
    #endif
    #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
    CPU=${UNAME_MACHINE}el
    MIPS_ENDIAN=el
    #else
    #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
    CPU=${UNAME_MACHINE}
    MIPS_ENDIAN=
    #else
    CPU=
    MIPS_ENDIAN=
    #endif
    #endif
EOF
    eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU'`"
    test "x$CPU" != x && { echo "$CPU-unknown-linux-$LIBC"; exit; }
    cc_set_vars=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI'`
    eval "$cc_set_vars"
    test "x$CPU" != x && { echo "$CPU${MIPS_ENDIAN}-unknown-linux-$LIBCABI"; exit; }
    ;;
    mips64el:Linux:*:*)
    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
    ;;
    openrisc*:Linux:*:*)
    echo or1k-unknown-linux-"$LIBC"
    exit ;;
    GUESS=or1k-unknown-linux-$LIBC
    ;;
    or32:Linux:*:* | or1k*:Linux:*:*)
    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
    ;;
    padre:Linux:*:*)
    echo sparc-unknown-linux-"$LIBC"
    exit ;;
    GUESS=sparc-unknown-linux-$LIBC
    ;;
    parisc64:Linux:*:* | hppa64:Linux:*:*)
    echo hppa64-unknown-linux-"$LIBC"
    exit ;;
    GUESS=hppa64-unknown-linux-$LIBC
    ;;
    parisc:Linux:*:* | hppa:Linux:*:*)
    # Look for CPU level
    case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
      PA7*) echo hppa1.1-unknown-linux-"$LIBC" ;;
      PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;;
      *)    echo hppa-unknown-linux-"$LIBC" ;;
      PA7*) GUESS=hppa1.1-unknown-linux-$LIBC ;;
      PA8*) GUESS=hppa2.0-unknown-linux-$LIBC ;;
      *)    GUESS=hppa-unknown-linux-$LIBC ;;
    esac
    exit ;;
    ;;
    ppc64:Linux:*:*)
    echo powerpc64-unknown-linux-"$LIBC"
    exit ;;
    GUESS=powerpc64-unknown-linux-$LIBC
    ;;
    ppc:Linux:*:*)
    echo powerpc-unknown-linux-"$LIBC"
    exit ;;
    GUESS=powerpc-unknown-linux-$LIBC
    ;;
    ppc64le:Linux:*:*)
    echo powerpc64le-unknown-linux-"$LIBC"
    exit ;;
    GUESS=powerpc64le-unknown-linux-$LIBC
    ;;
    ppcle:Linux:*:*)
    echo powerpcle-unknown-linux-"$LIBC"
    exit ;;
    riscv32:Linux:*:* | riscv64:Linux:*:*)
    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
    exit ;;
    GUESS=powerpcle-unknown-linux-$LIBC
    ;;
    riscv32:Linux:*:* | riscv32be:Linux:*:* | riscv64:Linux:*:* | riscv64be:Linux:*:*)
    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
    ;;
    s390:Linux:*:* | s390x:Linux:*:*)
    echo "$UNAME_MACHINE"-ibm-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-ibm-linux-$LIBC
    ;;
    sh64*:Linux:*:*)
    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
    ;;
    sh*:Linux:*:*)
    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
    ;;
    sparc:Linux:*:* | sparc64:Linux:*:*)
    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
    ;;
    tile*:Linux:*:*)
    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
    ;;
    vax:Linux:*:*)
    echo "$UNAME_MACHINE"-dec-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-dec-linux-$LIBC
    ;;
    x86_64:Linux:*:*)
    if objdump -f /bin/sh | grep -q elf32-x86-64; then
        echo "$UNAME_MACHINE"-pc-linux-"$LIBC"x32
    else
        echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
    set_cc_for_build
    LIBCABI=$LIBC
    if test "$CC_FOR_BUILD" != no_compiler_found; then
        if (echo '#ifdef __ILP32__'; echo IS_X32; echo '#endif') | \
        (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
        grep IS_X32 >/dev/null
        then
        LIBCABI=${LIBC}x32
        fi
    fi
    exit ;;
    GUESS=$UNAME_MACHINE-pc-linux-$LIBCABI
    ;;
    xtensa*:Linux:*:*)
    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
    ;;
    i*86:DYNIX/ptx:4*:*)
    # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
    # earlier versions are messed up and put the nodename in both
    # sysname and nodename.
    echo i386-sequent-sysv4
    exit ;;
    GUESS=i386-sequent-sysv4
    ;;
    i*86:UNIX_SV:4.2MP:2.*)
    # Unixware is an offshoot of SVR4, but it has its own version
    # number series starting with 2...
    # I am not positive that other SVR4 systems won't match this,
    # I just have to hope.  -- rms.
    # Use sysv4.2uw... so that sysv4* matches it.
    echo "$UNAME_MACHINE"-pc-sysv4.2uw"$UNAME_VERSION"
    exit ;;
    GUESS=$UNAME_MACHINE-pc-sysv4.2uw$UNAME_VERSION
    ;;
    i*86:OS/2:*:*)
    # If we were able to find `uname', then EMX Unix compatibility
    # is probably installed.
    echo "$UNAME_MACHINE"-pc-os2-emx
    exit ;;
    GUESS=$UNAME_MACHINE-pc-os2-emx
    ;;
    i*86:XTS-300:*:STOP)
    echo "$UNAME_MACHINE"-unknown-stop
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-stop
    ;;
    i*86:atheos:*:*)
    echo "$UNAME_MACHINE"-unknown-atheos
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-atheos
    ;;
    i*86:syllable:*:*)
    echo "$UNAME_MACHINE"-pc-syllable
    exit ;;
    GUESS=$UNAME_MACHINE-pc-syllable
    ;;
    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
    echo i386-unknown-lynxos"$UNAME_RELEASE"
    exit ;;
    GUESS=i386-unknown-lynxos$UNAME_RELEASE
    ;;
    i*86:*DOS:*:*)
    echo "$UNAME_MACHINE"-pc-msdosdjgpp
    exit ;;
    GUESS=$UNAME_MACHINE-pc-msdosdjgpp
    ;;
    i*86:*:4.*:*)
    UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'`
    if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
        echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL"
        GUESS=$UNAME_MACHINE-univel-sysv$UNAME_REL
    else
        echo "$UNAME_MACHINE"-pc-sysv"$UNAME_REL"
        GUESS=$UNAME_MACHINE-pc-sysv$UNAME_REL
    fi
    exit ;;
    ;;
    i*86:*:5:[678]*)
    # UnixWare 7.x, OpenUNIX and OpenServer 6.
    case `/bin/uname -X | grep "^Machine"` in
@@ -1104,12 +1214,12 @@
        *Pentium)         UNAME_MACHINE=i586 ;;
        *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
    esac
    echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}{$UNAME_VERSION}"
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
    ;;
    i*86:*:3.2:*)
    if test -f /usr/options/cb.name; then
        UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
        echo "$UNAME_MACHINE"-pc-isc"$UNAME_REL"
        GUESS=$UNAME_MACHINE-pc-isc$UNAME_REL
    elif /bin/uname -X 2>/dev/null >/dev/null ; then
        UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
        (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
@@ -1119,11 +1229,11 @@
            && UNAME_MACHINE=i686
        (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
            && UNAME_MACHINE=i686
        echo "$UNAME_MACHINE"-pc-sco"$UNAME_REL"
        GUESS=$UNAME_MACHINE-pc-sco$UNAME_REL
    else
        echo "$UNAME_MACHINE"-pc-sysv32
        GUESS=$UNAME_MACHINE-pc-sysv32
    fi
    exit ;;
    ;;
    pc:*:*:*)
    # Left here for compatibility:
    # uname -m prints for DJGPP always 'pc', but it prints nothing about
@@ -1131,31 +1241,31 @@
    # Note: whatever this is, it MUST be the same as what config.sub
    # prints for the "djgpp" host, or else GDB configure will decide that
    # this is a cross-build.
    echo i586-pc-msdosdjgpp
    exit ;;
    GUESS=i586-pc-msdosdjgpp
    ;;
    Intel:Mach:3*:*)
    echo i386-pc-mach3
    exit ;;
    GUESS=i386-pc-mach3
    ;;
    paragon:*:*:*)
    echo i860-intel-osf1
    exit ;;
    GUESS=i860-intel-osf1
    ;;
    i860:*:4.*:*) # i860-SVR4
    if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
      echo i860-stardent-sysv"$UNAME_RELEASE" # Stardent Vistra i860-SVR4
      GUESS=i860-stardent-sysv$UNAME_RELEASE    # Stardent Vistra i860-SVR4
    else # Add other i860-SVR4 vendors below as they are discovered.
      echo i860-unknown-sysv"$UNAME_RELEASE"  # Unknown i860-SVR4
      GUESS=i860-unknown-sysv$UNAME_RELEASE     # Unknown i860-SVR4
    fi
    exit ;;
    ;;
    mini*:CTIX:SYS*5:*)
    # "miniframe"
    echo m68010-convergent-sysv
    exit ;;
    GUESS=m68010-convergent-sysv
    ;;
    mc68k:UNIX:SYSTEM5:3.51m)
    echo m68k-convergent-sysv
    exit ;;
    GUESS=m68k-convergent-sysv
    ;;
    M680?0:D-NIX:5.3:*)
    echo m68k-diab-dnix
    exit ;;
    GUESS=m68k-diab-dnix
    ;;
    M68*:*:R3V[5678]*:*)
    test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
    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)
@@ -1180,249 +1290,404 @@
    /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
        && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
    echo m68k-unknown-lynxos"$UNAME_RELEASE"
    exit ;;
    GUESS=m68k-unknown-lynxos$UNAME_RELEASE
    ;;
    mc68030:UNIX_System_V:4.*:*)
    echo m68k-atari-sysv4
    exit ;;
    GUESS=m68k-atari-sysv4
    ;;
    TSUNAMI:LynxOS:2.*:*)
    echo sparc-unknown-lynxos"$UNAME_RELEASE"
    exit ;;
    GUESS=sparc-unknown-lynxos$UNAME_RELEASE
    ;;
    rs6000:LynxOS:2.*:*)
    echo rs6000-unknown-lynxos"$UNAME_RELEASE"
    exit ;;
    GUESS=rs6000-unknown-lynxos$UNAME_RELEASE
    ;;
    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
    echo powerpc-unknown-lynxos"$UNAME_RELEASE"
    exit ;;
    GUESS=powerpc-unknown-lynxos$UNAME_RELEASE
    ;;
    SM[BE]S:UNIX_SV:*:*)
    echo mips-dde-sysv"$UNAME_RELEASE"
    exit ;;
    GUESS=mips-dde-sysv$UNAME_RELEASE
    ;;
    RM*:ReliantUNIX-*:*:*)
    echo mips-sni-sysv4
    exit ;;
    GUESS=mips-sni-sysv4
    ;;
    RM*:SINIX-*:*:*)
    echo mips-sni-sysv4
    exit ;;
    GUESS=mips-sni-sysv4
    ;;
    *:SINIX-*:*:*)
    if uname -p 2>/dev/null >/dev/null ; then
        UNAME_MACHINE=`(uname -p) 2>/dev/null`
        echo "$UNAME_MACHINE"-sni-sysv4
        GUESS=$UNAME_MACHINE-sni-sysv4
    else
        echo ns32k-sni-sysv
        GUESS=ns32k-sni-sysv
    fi
    exit ;;
    ;;
    PENTIUM:*:4.0*:*)    # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
            # says <Richard.M.Bartel@ccMail.Census.GOV>
    echo i586-unisys-sysv4
    exit ;;
    GUESS=i586-unisys-sysv4
    ;;
    *:UNIX_System_V:4*:FTX*)
    # From Gerald Hewes <hewes@openmarket.com>.
    # How about differentiating between stratus architectures? -djm
    echo hppa1.1-stratus-sysv4
    exit ;;
    GUESS=hppa1.1-stratus-sysv4
    ;;
    *:*:*:FTX*)
    # From seanf@swdc.stratus.com.
    echo i860-stratus-sysv4
    exit ;;
    GUESS=i860-stratus-sysv4
    ;;
    i*86:VOS:*:*)
    # From Paul.Green@stratus.com.
    echo "$UNAME_MACHINE"-stratus-vos
    exit ;;
    GUESS=$UNAME_MACHINE-stratus-vos
    ;;
    *:VOS:*:*)
    # From Paul.Green@stratus.com.
    echo hppa1.1-stratus-vos
    exit ;;
    GUESS=hppa1.1-stratus-vos
    ;;
    mc68*:A/UX:*:*)
    echo m68k-apple-aux"$UNAME_RELEASE"
    exit ;;
    GUESS=m68k-apple-aux$UNAME_RELEASE
    ;;
    news*:NEWS-OS:6*:*)
    echo mips-sony-newsos6
    exit ;;
    GUESS=mips-sony-newsos6
    ;;
    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
    if [ -d /usr/nec ]; then
        echo mips-nec-sysv"$UNAME_RELEASE"
    if test -d /usr/nec; then
        GUESS=mips-nec-sysv$UNAME_RELEASE
    else
        echo mips-unknown-sysv"$UNAME_RELEASE"
        GUESS=mips-unknown-sysv$UNAME_RELEASE
    fi
    exit ;;
    ;;
    BeBox:BeOS:*:*)    # BeOS running on hardware made by Be, PPC only.
    echo powerpc-be-beos
    exit ;;
    GUESS=powerpc-be-beos
    ;;
    BeMac:BeOS:*:*)    # BeOS running on Mac or Mac clone, PPC only.
    echo powerpc-apple-beos
    exit ;;
    GUESS=powerpc-apple-beos
    ;;
    BePC:BeOS:*:*)    # BeOS running on Intel PC compatible.
    echo i586-pc-beos
    exit ;;
    GUESS=i586-pc-beos
    ;;
    BePC:Haiku:*:*)    # Haiku running on Intel PC compatible.
    echo i586-pc-haiku
    exit ;;
    GUESS=i586-pc-haiku
    ;;
    x86_64:Haiku:*:*)
    echo x86_64-unknown-haiku
    exit ;;
    GUESS=x86_64-unknown-haiku
    ;;
    SX-4:SUPER-UX:*:*)
    echo sx4-nec-superux"$UNAME_RELEASE"
    exit ;;
    GUESS=sx4-nec-superux$UNAME_RELEASE
    ;;
    SX-5:SUPER-UX:*:*)
    echo sx5-nec-superux"$UNAME_RELEASE"
    exit ;;
    GUESS=sx5-nec-superux$UNAME_RELEASE
    ;;
    SX-6:SUPER-UX:*:*)
    echo sx6-nec-superux"$UNAME_RELEASE"
    exit ;;
    GUESS=sx6-nec-superux$UNAME_RELEASE
    ;;
    SX-7:SUPER-UX:*:*)
    echo sx7-nec-superux"$UNAME_RELEASE"
    exit ;;
    GUESS=sx7-nec-superux$UNAME_RELEASE
    ;;
    SX-8:SUPER-UX:*:*)
    echo sx8-nec-superux"$UNAME_RELEASE"
    exit ;;
    GUESS=sx8-nec-superux$UNAME_RELEASE
    ;;
    SX-8R:SUPER-UX:*:*)
    echo sx8r-nec-superux"$UNAME_RELEASE"
    exit ;;
    GUESS=sx8r-nec-superux$UNAME_RELEASE
    ;;
    SX-ACE:SUPER-UX:*:*)
    echo sxace-nec-superux"$UNAME_RELEASE"
    exit ;;
    GUESS=sxace-nec-superux$UNAME_RELEASE
    ;;
    Power*:Rhapsody:*:*)
    echo powerpc-apple-rhapsody"$UNAME_RELEASE"
    exit ;;
    GUESS=powerpc-apple-rhapsody$UNAME_RELEASE
    ;;
    *:Rhapsody:*:*)
    echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE"
    exit ;;
    GUESS=$UNAME_MACHINE-apple-rhapsody$UNAME_RELEASE
    ;;
    arm64:Darwin:*:*)
    GUESS=aarch64-apple-darwin$UNAME_RELEASE
    ;;
    *:Darwin:*:*)
    UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
    eval "$set_cc_for_build"
    if test "$UNAME_PROCESSOR" = unknown ; then
        UNAME_PROCESSOR=powerpc
    UNAME_PROCESSOR=`uname -p`
    case $UNAME_PROCESSOR in
        unknown) UNAME_PROCESSOR=powerpc ;;
    esac
    if command -v xcode-select > /dev/null 2> /dev/null && \
        ! xcode-select --print-path > /dev/null 2> /dev/null ; then
        # Avoid executing cc if there is no toolchain installed as
        # cc will be a stub that puts up a graphical alert
        # prompting the user to install developer tools.
        CC_FOR_BUILD=no_compiler_found
    else
        set_cc_for_build
    fi
    if test "`echo "$UNAME_RELEASE" | sed -e 's/\..*//'`" -le 10 ; then
        if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
        if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
               (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
               grep IS_64BIT_ARCH >/dev/null
        then
            case $UNAME_PROCESSOR in
            i386) UNAME_PROCESSOR=x86_64 ;;
            powerpc) UNAME_PROCESSOR=powerpc64 ;;
            esac
        fi
        # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc
        if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \
               (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
               grep IS_PPC >/dev/null
        then
            UNAME_PROCESSOR=powerpc
        fi
    if test "$CC_FOR_BUILD" != no_compiler_found; then
        if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
           (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
           grep IS_64BIT_ARCH >/dev/null
        then
        case $UNAME_PROCESSOR in
            i386) UNAME_PROCESSOR=x86_64 ;;
            powerpc) UNAME_PROCESSOR=powerpc64 ;;
        esac
        fi
        # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc
        if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \
           (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
           grep IS_PPC >/dev/null
        then
        UNAME_PROCESSOR=powerpc
        fi
    elif test "$UNAME_PROCESSOR" = i386 ; then
        # Avoid executing cc on OS X 10.9, as it ships with a stub
        # that puts up a graphical alert prompting to install
        # developer tools.  Any system running Mac OS X 10.7 or
        # later (Darwin 11 and later) is required to have a 64-bit
        # processor. This is not true of the ARM version of Darwin
        # that Apple uses in portable devices.
        UNAME_PROCESSOR=x86_64
        # uname -m returns i386 or x86_64
        UNAME_PROCESSOR=$UNAME_MACHINE
    fi
    echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE"
    exit ;;
    GUESS=$UNAME_PROCESSOR-apple-darwin$UNAME_RELEASE
    ;;
    *:procnto*:*:* | *:QNX:[0123456789]*:*)
    UNAME_PROCESSOR=`uname -p`
    if test "$UNAME_PROCESSOR" = x86; then
        UNAME_PROCESSOR=i386
        UNAME_MACHINE=pc
    fi
    echo "$UNAME_PROCESSOR"-"$UNAME_MACHINE"-nto-qnx"$UNAME_RELEASE"
    exit ;;
    GUESS=$UNAME_PROCESSOR-$UNAME_MACHINE-nto-qnx$UNAME_RELEASE
    ;;
    *:QNX:*:4*)
    echo i386-pc-qnx
    exit ;;
    GUESS=i386-pc-qnx
    ;;
    NEO-*:NONSTOP_KERNEL:*:*)
    echo neo-tandem-nsk"$UNAME_RELEASE"
    exit ;;
    GUESS=neo-tandem-nsk$UNAME_RELEASE
    ;;
    NSE-*:NONSTOP_KERNEL:*:*)
    echo nse-tandem-nsk"$UNAME_RELEASE"
    exit ;;
    GUESS=nse-tandem-nsk$UNAME_RELEASE
    ;;
    NSR-*:NONSTOP_KERNEL:*:*)
    echo nsr-tandem-nsk"$UNAME_RELEASE"
    exit ;;
    GUESS=nsr-tandem-nsk$UNAME_RELEASE
    ;;
    NSV-*:NONSTOP_KERNEL:*:*)
    echo nsv-tandem-nsk"$UNAME_RELEASE"
    exit ;;
    GUESS=nsv-tandem-nsk$UNAME_RELEASE
    ;;
    NSX-*:NONSTOP_KERNEL:*:*)
    echo nsx-tandem-nsk"$UNAME_RELEASE"
    exit ;;
    GUESS=nsx-tandem-nsk$UNAME_RELEASE
    ;;
    *:NonStop-UX:*:*)
    echo mips-compaq-nonstopux
    exit ;;
    GUESS=mips-compaq-nonstopux
    ;;
    BS2000:POSIX*:*:*)
    echo bs2000-siemens-sysv
    exit ;;
    GUESS=bs2000-siemens-sysv
    ;;
    DS/*:UNIX_System_V:*:*)
    echo "$UNAME_MACHINE"-"$UNAME_SYSTEM"-"$UNAME_RELEASE"
    exit ;;
    GUESS=$UNAME_MACHINE-$UNAME_SYSTEM-$UNAME_RELEASE
    ;;
    *:Plan9:*:*)
    # "uname -m" is not consistent, so use $cputype instead. 386
    # is converted to i386 for consistency with other x86
    # operating systems.
    if test "$cputype" = 386; then
    if test "${cputype-}" = 386; then
        UNAME_MACHINE=i386
    else
        UNAME_MACHINE="$cputype"
    elif test "x${cputype-}" != x; then
        UNAME_MACHINE=$cputype
    fi
    echo "$UNAME_MACHINE"-unknown-plan9
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-plan9
    ;;
    *:TOPS-10:*:*)
    echo pdp10-unknown-tops10
    exit ;;
    GUESS=pdp10-unknown-tops10
    ;;
    *:TENEX:*:*)
    echo pdp10-unknown-tenex
    exit ;;
    GUESS=pdp10-unknown-tenex
    ;;
    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
    echo pdp10-dec-tops20
    exit ;;
    GUESS=pdp10-dec-tops20
    ;;
    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
    echo pdp10-xkl-tops20
    exit ;;
    GUESS=pdp10-xkl-tops20
    ;;
    *:TOPS-20:*:*)
    echo pdp10-unknown-tops20
    exit ;;
    GUESS=pdp10-unknown-tops20
    ;;
    *:ITS:*:*)
    echo pdp10-unknown-its
    exit ;;
    GUESS=pdp10-unknown-its
    ;;
    SEI:*:*:SEIUX)
    echo mips-sei-seiux"$UNAME_RELEASE"
    exit ;;
    GUESS=mips-sei-seiux$UNAME_RELEASE
    ;;
    *:DragonFly:*:*)
    echo "$UNAME_MACHINE"-unknown-dragonfly"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
    exit ;;
    DRAGONFLY_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
    GUESS=$UNAME_MACHINE-unknown-dragonfly$DRAGONFLY_REL
    ;;
    *:*VMS:*:*)
    UNAME_MACHINE=`(uname -p) 2>/dev/null`
    case "$UNAME_MACHINE" in
        A*) echo alpha-dec-vms ; exit ;;
        I*) echo ia64-dec-vms ; exit ;;
        V*) echo vax-dec-vms ; exit ;;
    case $UNAME_MACHINE in
        A*) GUESS=alpha-dec-vms ;;
        I*) GUESS=ia64-dec-vms ;;
        V*) GUESS=vax-dec-vms ;;
    esac ;;
    *:XENIX:*:SysV)
    echo i386-pc-xenix
    exit ;;
    GUESS=i386-pc-xenix
    ;;
    i*86:skyos:*:*)
    echo "$UNAME_MACHINE"-pc-skyos"`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`"
    exit ;;
    SKYOS_REL=`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`
    GUESS=$UNAME_MACHINE-pc-skyos$SKYOS_REL
    ;;
    i*86:rdos:*:*)
    echo "$UNAME_MACHINE"-pc-rdos
    exit ;;
    i*86:AROS:*:*)
    echo "$UNAME_MACHINE"-pc-aros
    exit ;;
    GUESS=$UNAME_MACHINE-pc-rdos
    ;;
    i*86:Fiwix:*:*)
    GUESS=$UNAME_MACHINE-pc-fiwix
    ;;
    *:AROS:*:*)
    GUESS=$UNAME_MACHINE-unknown-aros
    ;;
    x86_64:VMkernel:*:*)
    echo "$UNAME_MACHINE"-unknown-esx
    exit ;;
    GUESS=$UNAME_MACHINE-unknown-esx
    ;;
    amd64:Isilon\ OneFS:*:*)
    echo x86_64-unknown-onefs
    exit ;;
    GUESS=x86_64-unknown-onefs
    ;;
    *:Unleashed:*:*)
    GUESS=$UNAME_MACHINE-unknown-unleashed$UNAME_RELEASE
    ;;
esac
# Do we have a guess based on uname results?
if test "x$GUESS" != x; then
    echo "$GUESS"
    exit
fi
# No uname command or uname output not recognized.
set_cc_for_build
cat > "$dummy.c" <<EOF
#ifdef _SEQUENT_
#include <sys/types.h>
#include <sys/utsname.h>
#endif
#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__)
#if defined (vax) || defined (__vax) || defined (__vax__) || defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__)
#include <signal.h>
#if defined(_SIZE_T_) || defined(SIGLOST)
#include <sys/utsname.h>
#endif
#endif
#endif
main ()
{
#if defined (sony)
#if defined (MIPSEB)
  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
     I don't know....  */
  printf ("mips-sony-bsd\n"); exit (0);
#else
#include <sys/param.h>
  printf ("m68k-sony-newsos%s\n",
#ifdef NEWSOS4
  "4"
#else
  ""
#endif
  ); exit (0);
#endif
#endif
#if defined (NeXT)
#if !defined (__ARCHITECTURE__)
#define __ARCHITECTURE__ "m68k"
#endif
  int version;
  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
  if (version < 4)
    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
  else
    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
  exit (0);
#endif
#if defined (MULTIMAX) || defined (n16)
#if defined (UMAXV)
  printf ("ns32k-encore-sysv\n"); exit (0);
#else
#if defined (CMU)
  printf ("ns32k-encore-mach\n"); exit (0);
#else
  printf ("ns32k-encore-bsd\n"); exit (0);
#endif
#endif
#endif
#if defined (__386BSD__)
  printf ("i386-pc-bsd\n"); exit (0);
#endif
#if defined (sequent)
#if defined (i386)
  printf ("i386-sequent-dynix\n"); exit (0);
#endif
#if defined (ns32000)
  printf ("ns32k-sequent-dynix\n"); exit (0);
#endif
#endif
#if defined (_SEQUENT_)
  struct utsname un;
  uname(&un);
  if (strncmp(un.version, "V2", 2) == 0) {
    printf ("i386-sequent-ptx2\n"); exit (0);
  }
  if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
    printf ("i386-sequent-ptx1\n"); exit (0);
  }
  printf ("i386-sequent-ptx\n"); exit (0);
#endif
#if defined (vax)
#if !defined (ultrix)
#include <sys/param.h>
#if defined (BSD)
#if BSD == 43
  printf ("vax-dec-bsd4.3\n"); exit (0);
#else
#if BSD == 199006
  printf ("vax-dec-bsd4.3reno\n"); exit (0);
#else
  printf ("vax-dec-bsd\n"); exit (0);
#endif
#endif
#else
  printf ("vax-dec-bsd\n"); exit (0);
#endif
#else
#if defined(_SIZE_T_) || defined(SIGLOST)
  struct utsname un;
  uname (&un);
  printf ("vax-dec-ultrix%s\n", un.release); exit (0);
#else
  printf ("vax-dec-ultrix\n"); exit (0);
#endif
#endif
#endif
#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__)
#if defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__)
#if defined(_SIZE_T_) || defined(SIGLOST)
  struct utsname *un;
  uname (&un);
  printf ("mips-dec-ultrix%s\n", un.release); exit (0);
#else
  printf ("mips-dec-ultrix\n"); exit (0);
#endif
#endif
#endif
#if defined (alliant) && defined (i860)
  printf ("i860-alliant-bsd\n"); exit (0);
#endif
  exit (1);
}
EOF
$CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=`"$dummy"` &&
    { echo "$SYSTEM_NAME"; exit; }
# Apollos put the system type in the environment.
test -d /usr/apollo && { echo "$ISP-apollo-$SYSTYPE"; exit; }
echo "$0: unable to guess system type" >&2
case "$UNAME_MACHINE:$UNAME_SYSTEM" in
case $UNAME_MACHINE:$UNAME_SYSTEM in
    mips:Linux | mips64:Linux)
    # If we got here on MIPS GNU/Linux, output extra information.
    cat >&2 <<EOF
@@ -1439,9 +1704,17 @@
operating system you are using. If your script is old, overwrite *all*
copies of config.guess and config.sub with the latest versions from:
  https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
  https://git.savannah.gnu.org/cgit/config.git/plain/config.guess
and
  https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
  https://git.savannah.gnu.org/cgit/config.git/plain/config.sub
EOF
our_year=`echo $timestamp | sed 's,-.*,,'`
thisyear=`date +%Y`
# shellcheck disable=SC2003
script_age=`expr "$thisyear" - "$our_year"`
if test "$script_age" -lt 3 ; then
   cat >&2 <<EOF
If $0 has already been updated, send the following data and any
information you think might be pertinent to config-patches@gnu.org to
@@ -1469,11 +1742,12 @@
UNAME_SYSTEM  = "$UNAME_SYSTEM"
UNAME_VERSION = "$UNAME_VERSION"
EOF
fi
exit 1
# Local variables:
# eval: (add-hook 'write-file-functions 'time-stamp)
# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "timestamp='"
# time-stamp-format: "%:y-%02m-%02d"
# time-stamp-end: "'"
config.h.in
@@ -25,9 +25,6 @@
   to 0 otherwise. */
#undef HAVE_MALLOC
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
/* Define to 1 if you have the `pow' function. */
#undef HAVE_POW
@@ -40,6 +37,9 @@
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
/* Define to 1 if you have the <stdio.h> header file. */
#undef HAVE_STDIO_H
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
@@ -86,7 +86,9 @@
/* Define to the version of this package. */
#undef PACKAGE_VERSION
/* Define to 1 if you have the ANSI C header files. */
/* Define to 1 if all of the C90 standard headers exist (not just the ones
   required in a freestanding environment). This macro is provided for
   backward compatibility; new code need not use it. */
#undef STDC_HEADERS
/* Version number of package */
config.sub
@@ -1,12 +1,14 @@
#! /bin/sh
# Configuration validation subroutine script.
#   Copyright 1992-2018 Free Software Foundation, Inc.
#   Copyright 1992-2022 Free Software Foundation, Inc.
timestamp='2018-02-22'
# shellcheck disable=SC2006,SC2268 # see below for rationale
timestamp='2022-01-03'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful, but
@@ -33,7 +35,7 @@
# Otherwise, we print the canonical config type on stdout and succeed.
# You can get the latest version of this script from:
# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
# https://git.savannah.gnu.org/cgit/config.git/plain/config.sub
# This file is supposed to be the same for all GNU packages
# and recognize all the CPU types, system types and aliases
@@ -49,6 +51,13 @@
# or in some cases, the newer four-part form:
#    CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
# It is wrong to echo any other type of specification.
# The "shellcheck disable" line above the timestamp inhibits complaints
# about features and limitations of the classic Bourne shell that were
# superseded or lifted in POSIX.  However, this script identifies a wide
# variety of pre-POSIX systems that do not have POSIX shells at all, and
# even some reasonably current systems (Solaris 10 as case-in-point) still
# have a pre-POSIX /bin/sh.
me=`echo "$0" | sed -e 's,.*/,,'`
@@ -67,7 +76,7 @@
version="\
GNU config.sub ($timestamp)
Copyright 1992-2018 Free Software Foundation, Inc.
Copyright 1992-2022 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -89,7 +98,7 @@
    - )    # Use stdin as input.
       break ;;
    -* )
       echo "$me: invalid option $1$help"
       echo "$me: invalid option $1$help" >&2
       exit 1 ;;
    *local*)
@@ -110,1223 +119,1186 @@
    exit 1;;
esac
# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
# Here we must recognize all the valid KERNEL-OS combinations.
maybe_os=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in
  nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
  linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
  knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \
  kopensolaris*-gnu* | cloudabi*-eabi* | \
  storm-chaos* | os2-emx* | rtmk-nova*)
    os=-$maybe_os
    basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
    ;;
  android-linux)
    os=-linux-android
    basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
    ;;
  *)
    basic_machine=`echo "$1" | sed 's/-[^-]*$//'`
    if [ "$basic_machine" != "$1" ]
    then os=`echo "$1" | sed 's/.*-/-/'`
    else os=; fi
    ;;
esac
# Split fields of configuration type
# shellcheck disable=SC2162
saved_IFS=$IFS
IFS="-" read field1 field2 field3 field4 <<EOF
$1
EOF
IFS=$saved_IFS
### Let's recognize common machines as not being operating systems so
### that things like config.sub decstation-3100 work.  We also
### recognize some manufacturers as not being operating systems, so we
### can provide default operating systems below.
case $os in
    -sun*os*)
        # Prevent following clause from handling this invalid input.
# Separate into logical components for further validation
case $1 in
    *-*-*-*-*)
        echo Invalid configuration \`"$1"\': more than four components >&2
        exit 1
        ;;
    -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
    -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
    -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
    -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
    -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
    -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
    -apple | -axis | -knuth | -cray | -microblaze*)
        os=
        basic_machine=$1
    *-*-*-*)
        basic_machine=$field1-$field2
        basic_os=$field3-$field4
        ;;
    -bluegene*)
        os=-cnk
    *-*-*)
        # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two
        # parts
        maybe_os=$field2-$field3
        case $maybe_os in
            nto-qnx* | linux-* | uclinux-uclibc* \
            | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \
            | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \
            | storm-chaos* | os2-emx* | rtmk-nova*)
                basic_machine=$field1
                basic_os=$maybe_os
                ;;
            android-linux)
                basic_machine=$field1-unknown
                basic_os=linux-android
                ;;
            *)
                basic_machine=$field1-$field2
                basic_os=$field3
                ;;
        esac
        ;;
    -sim | -cisco | -oki | -wec | -winbond)
        os=
        basic_machine=$1
    *-*)
        # A lone config we happen to match not fitting any pattern
        case $field1-$field2 in
            decstation-3100)
                basic_machine=mips-dec
                basic_os=
                ;;
            *-*)
                # Second component is usually, but not always the OS
                case $field2 in
                    # Prevent following clause from handling this valid os
                    sun*os*)
                        basic_machine=$field1
                        basic_os=$field2
                        ;;
                    zephyr*)
                        basic_machine=$field1-unknown
                        basic_os=$field2
                        ;;
                    # Manufacturers
                    dec* | mips* | sequent* | encore* | pc533* | sgi* | sony* \
                    | att* | 7300* | 3300* | delta* | motorola* | sun[234]* \
                    | unicom* | ibm* | next | hp | isi* | apollo | altos* \
                    | convergent* | ncr* | news | 32* | 3600* | 3100* \
                    | hitachi* | c[123]* | convex* | sun | crds | omron* | dg \
                    | ultra | tti* | harris | dolphin | highlevel | gould \
                    | cbm | ns | masscomp | apple | axis | knuth | cray \
                    | microblaze* | sim | cisco \
                    | oki | wec | wrs | winbond)
                        basic_machine=$field1-$field2
                        basic_os=
                        ;;
                    *)
                        basic_machine=$field1
                        basic_os=$field2
                        ;;
                esac
            ;;
        esac
        ;;
    -scout)
        ;;
    -wrs)
        os=-vxworks
        basic_machine=$1
        ;;
    -chorusos*)
        os=-chorusos
        basic_machine=$1
        ;;
    -chorusrdb)
        os=-chorusrdb
        basic_machine=$1
        ;;
    -hiux*)
        os=-hiuxwe2
        ;;
    -sco6)
        os=-sco5v6
        basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
        ;;
    -sco5)
        os=-sco3.2v5
        basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
        ;;
    -sco4)
        os=-sco3.2v4
        basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
        ;;
    -sco3.2.[4-9]*)
        os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
        basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
        ;;
    -sco3.2v[4-9]*)
        # Don't forget version if it is 3.2v4 or newer.
        basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
        ;;
    -sco5v6*)
        # Don't forget version if it is 3.2v4 or newer.
        basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
        ;;
    -sco*)
        os=-sco3.2v2
        basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
        ;;
    -udk*)
        basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
        ;;
    -isc)
        os=-isc2.2
        basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
        ;;
    -clix*)
        basic_machine=clipper-intergraph
        ;;
    -isc*)
        basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
        ;;
    -lynx*178)
        os=-lynxos178
        ;;
    -lynx*5)
        os=-lynxos5
        ;;
    -lynx*)
        os=-lynxos
        ;;
    -ptx*)
        basic_machine=`echo "$1" | sed -e 's/86-.*/86-sequent/'`
        ;;
    -psos*)
        os=-psos
        ;;
    -mint | -mint[0-9]*)
        basic_machine=m68k-atari
        os=-mint
    *)
        # Convert single-component short-hands not valid as part of
        # multi-component configurations.
        case $field1 in
            386bsd)
                basic_machine=i386-pc
                basic_os=bsd
                ;;
            a29khif)
                basic_machine=a29k-amd
                basic_os=udi
                ;;
            adobe68k)
                basic_machine=m68010-adobe
                basic_os=scout
                ;;
            alliant)
                basic_machine=fx80-alliant
                basic_os=
                ;;
            altos | altos3068)
                basic_machine=m68k-altos
                basic_os=
                ;;
            am29k)
                basic_machine=a29k-none
                basic_os=bsd
                ;;
            amdahl)
                basic_machine=580-amdahl
                basic_os=sysv
                ;;
            amiga)
                basic_machine=m68k-unknown
                basic_os=
                ;;
            amigaos | amigados)
                basic_machine=m68k-unknown
                basic_os=amigaos
                ;;
            amigaunix | amix)
                basic_machine=m68k-unknown
                basic_os=sysv4
                ;;
            apollo68)
                basic_machine=m68k-apollo
                basic_os=sysv
                ;;
            apollo68bsd)
                basic_machine=m68k-apollo
                basic_os=bsd
                ;;
            aros)
                basic_machine=i386-pc
                basic_os=aros
                ;;
            aux)
                basic_machine=m68k-apple
                basic_os=aux
                ;;
            balance)
                basic_machine=ns32k-sequent
                basic_os=dynix
                ;;
            blackfin)
                basic_machine=bfin-unknown
                basic_os=linux
                ;;
            cegcc)
                basic_machine=arm-unknown
                basic_os=cegcc
                ;;
            convex-c1)
                basic_machine=c1-convex
                basic_os=bsd
                ;;
            convex-c2)
                basic_machine=c2-convex
                basic_os=bsd
                ;;
            convex-c32)
                basic_machine=c32-convex
                basic_os=bsd
                ;;
            convex-c34)
                basic_machine=c34-convex
                basic_os=bsd
                ;;
            convex-c38)
                basic_machine=c38-convex
                basic_os=bsd
                ;;
            cray)
                basic_machine=j90-cray
                basic_os=unicos
                ;;
            crds | unos)
                basic_machine=m68k-crds
                basic_os=
                ;;
            da30)
                basic_machine=m68k-da30
                basic_os=
                ;;
            decstation | pmax | pmin | dec3100 | decstatn)
                basic_machine=mips-dec
                basic_os=
                ;;
            delta88)
                basic_machine=m88k-motorola
                basic_os=sysv3
                ;;
            dicos)
                basic_machine=i686-pc
                basic_os=dicos
                ;;
            djgpp)
                basic_machine=i586-pc
                basic_os=msdosdjgpp
                ;;
            ebmon29k)
                basic_machine=a29k-amd
                basic_os=ebmon
                ;;
            es1800 | OSE68k | ose68k | ose | OSE)
                basic_machine=m68k-ericsson
                basic_os=ose
                ;;
            gmicro)
                basic_machine=tron-gmicro
                basic_os=sysv
                ;;
            go32)
                basic_machine=i386-pc
                basic_os=go32
                ;;
            h8300hms)
                basic_machine=h8300-hitachi
                basic_os=hms
                ;;
            h8300xray)
                basic_machine=h8300-hitachi
                basic_os=xray
                ;;
            h8500hms)
                basic_machine=h8500-hitachi
                basic_os=hms
                ;;
            harris)
                basic_machine=m88k-harris
                basic_os=sysv3
                ;;
            hp300 | hp300hpux)
                basic_machine=m68k-hp
                basic_os=hpux
                ;;
            hp300bsd)
                basic_machine=m68k-hp
                basic_os=bsd
                ;;
            hppaosf)
                basic_machine=hppa1.1-hp
                basic_os=osf
                ;;
            hppro)
                basic_machine=hppa1.1-hp
                basic_os=proelf
                ;;
            i386mach)
                basic_machine=i386-mach
                basic_os=mach
                ;;
            isi68 | isi)
                basic_machine=m68k-isi
                basic_os=sysv
                ;;
            m68knommu)
                basic_machine=m68k-unknown
                basic_os=linux
                ;;
            magnum | m3230)
                basic_machine=mips-mips
                basic_os=sysv
                ;;
            merlin)
                basic_machine=ns32k-utek
                basic_os=sysv
                ;;
            mingw64)
                basic_machine=x86_64-pc
                basic_os=mingw64
                ;;
            mingw32)
                basic_machine=i686-pc
                basic_os=mingw32
                ;;
            mingw32ce)
                basic_machine=arm-unknown
                basic_os=mingw32ce
                ;;
            monitor)
                basic_machine=m68k-rom68k
                basic_os=coff
                ;;
            morphos)
                basic_machine=powerpc-unknown
                basic_os=morphos
                ;;
            moxiebox)
                basic_machine=moxie-unknown
                basic_os=moxiebox
                ;;
            msdos)
                basic_machine=i386-pc
                basic_os=msdos
                ;;
            msys)
                basic_machine=i686-pc
                basic_os=msys
                ;;
            mvs)
                basic_machine=i370-ibm
                basic_os=mvs
                ;;
            nacl)
                basic_machine=le32-unknown
                basic_os=nacl
                ;;
            ncr3000)
                basic_machine=i486-ncr
                basic_os=sysv4
                ;;
            netbsd386)
                basic_machine=i386-pc
                basic_os=netbsd
                ;;
            netwinder)
                basic_machine=armv4l-rebel
                basic_os=linux
                ;;
            news | news700 | news800 | news900)
                basic_machine=m68k-sony
                basic_os=newsos
                ;;
            news1000)
                basic_machine=m68030-sony
                basic_os=newsos
                ;;
            necv70)
                basic_machine=v70-nec
                basic_os=sysv
                ;;
            nh3000)
                basic_machine=m68k-harris
                basic_os=cxux
                ;;
            nh[45]000)
                basic_machine=m88k-harris
                basic_os=cxux
                ;;
            nindy960)
                basic_machine=i960-intel
                basic_os=nindy
                ;;
            mon960)
                basic_machine=i960-intel
                basic_os=mon960
                ;;
            nonstopux)
                basic_machine=mips-compaq
                basic_os=nonstopux
                ;;
            os400)
                basic_machine=powerpc-ibm
                basic_os=os400
                ;;
            OSE68000 | ose68000)
                basic_machine=m68000-ericsson
                basic_os=ose
                ;;
            os68k)
                basic_machine=m68k-none
                basic_os=os68k
                ;;
            paragon)
                basic_machine=i860-intel
                basic_os=osf
                ;;
            parisc)
                basic_machine=hppa-unknown
                basic_os=linux
                ;;
            psp)
                basic_machine=mipsallegrexel-sony
                basic_os=psp
                ;;
            pw32)
                basic_machine=i586-unknown
                basic_os=pw32
                ;;
            rdos | rdos64)
                basic_machine=x86_64-pc
                basic_os=rdos
                ;;
            rdos32)
                basic_machine=i386-pc
                basic_os=rdos
                ;;
            rom68k)
                basic_machine=m68k-rom68k
                basic_os=coff
                ;;
            sa29200)
                basic_machine=a29k-amd
                basic_os=udi
                ;;
            sei)
                basic_machine=mips-sei
                basic_os=seiux
                ;;
            sequent)
                basic_machine=i386-sequent
                basic_os=
                ;;
            sps7)
                basic_machine=m68k-bull
                basic_os=sysv2
                ;;
            st2000)
                basic_machine=m68k-tandem
                basic_os=
                ;;
            stratus)
                basic_machine=i860-stratus
                basic_os=sysv4
                ;;
            sun2)
                basic_machine=m68000-sun
                basic_os=
                ;;
            sun2os3)
                basic_machine=m68000-sun
                basic_os=sunos3
                ;;
            sun2os4)
                basic_machine=m68000-sun
                basic_os=sunos4
                ;;
            sun3)
                basic_machine=m68k-sun
                basic_os=
                ;;
            sun3os3)
                basic_machine=m68k-sun
                basic_os=sunos3
                ;;
            sun3os4)
                basic_machine=m68k-sun
                basic_os=sunos4
                ;;
            sun4)
                basic_machine=sparc-sun
                basic_os=
                ;;
            sun4os3)
                basic_machine=sparc-sun
                basic_os=sunos3
                ;;
            sun4os4)
                basic_machine=sparc-sun
                basic_os=sunos4
                ;;
            sun4sol2)
                basic_machine=sparc-sun
                basic_os=solaris2
                ;;
            sun386 | sun386i | roadrunner)
                basic_machine=i386-sun
                basic_os=
                ;;
            sv1)
                basic_machine=sv1-cray
                basic_os=unicos
                ;;
            symmetry)
                basic_machine=i386-sequent
                basic_os=dynix
                ;;
            t3e)
                basic_machine=alphaev5-cray
                basic_os=unicos
                ;;
            t90)
                basic_machine=t90-cray
                basic_os=unicos
                ;;
            toad1)
                basic_machine=pdp10-xkl
                basic_os=tops20
                ;;
            tpf)
                basic_machine=s390x-ibm
                basic_os=tpf
                ;;
            udi29k)
                basic_machine=a29k-amd
                basic_os=udi
                ;;
            ultra3)
                basic_machine=a29k-nyu
                basic_os=sym1
                ;;
            v810 | necv810)
                basic_machine=v810-nec
                basic_os=none
                ;;
            vaxv)
                basic_machine=vax-dec
                basic_os=sysv
                ;;
            vms)
                basic_machine=vax-dec
                basic_os=vms
                ;;
            vsta)
                basic_machine=i386-pc
                basic_os=vsta
                ;;
            vxworks960)
                basic_machine=i960-wrs
                basic_os=vxworks
                ;;
            vxworks68)
                basic_machine=m68k-wrs
                basic_os=vxworks
                ;;
            vxworks29k)
                basic_machine=a29k-wrs
                basic_os=vxworks
                ;;
            xbox)
                basic_machine=i686-pc
                basic_os=mingw32
                ;;
            ymp)
                basic_machine=ymp-cray
                basic_os=unicos
                ;;
            *)
                basic_machine=$1
                basic_os=
                ;;
        esac
        ;;
esac
# Decode aliases for certain CPU-COMPANY combinations.
# Decode 1-component or ad-hoc basic machines
case $basic_machine in
    # Recognize the basic CPU types without company name.
    # Some are omitted here because they have special meanings below.
    1750a | 580 \
    | a29k \
    | aarch64 | aarch64_be \
    | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
    | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
    | am33_2.0 \
    | arc | arceb \
    | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
    | avr | avr32 \
    | ba \
    | be32 | be64 \
    | bfin \
    | c4x | c8051 | clipper \
    | d10v | d30v | dlx | dsp16xx \
    | e2k | epiphany \
    | fido | fr30 | frv | ft32 \
    | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
    | hexagon \
    | i370 | i860 | i960 | ia16 | ia64 \
    | ip2k | iq2000 \
    | k1om \
    | le32 | le64 \
    | lm32 \
    | m32c | m32r | m32rle | m68000 | m68k | m88k \
    | maxq | mb | microblaze | microblazeel | mcore | mep | metag \
    | mips | mipsbe | mipseb | mipsel | mipsle \
    | mips16 \
    | mips64 | mips64el \
    | mips64octeon | mips64octeonel \
    | mips64orion | mips64orionel \
    | mips64r5900 | mips64r5900el \
    | mips64vr | mips64vrel \
    | mips64vr4100 | mips64vr4100el \
    | mips64vr4300 | mips64vr4300el \
    | mips64vr5000 | mips64vr5000el \
    | mips64vr5900 | mips64vr5900el \
    | mipsisa32 | mipsisa32el \
    | mipsisa32r2 | mipsisa32r2el \
    | mipsisa32r6 | mipsisa32r6el \
    | mipsisa64 | mipsisa64el \
    | mipsisa64r2 | mipsisa64r2el \
    | mipsisa64r6 | mipsisa64r6el \
    | mipsisa64sb1 | mipsisa64sb1el \
    | mipsisa64sr71k | mipsisa64sr71kel \
    | mipsr5900 | mipsr5900el \
    | mipstx39 | mipstx39el \
    | mn10200 | mn10300 \
    | moxie \
    | mt \
    | msp430 \
    | nds32 | nds32le | nds32be \
    | nios | nios2 | nios2eb | nios2el \
    | ns16k | ns32k \
    | open8 | or1k | or1knd | or32 \
    | pdp10 | pj | pjl \
    | powerpc | powerpc64 | powerpc64le | powerpcle \
    | pru \
    | pyramid \
    | riscv32 | riscv64 \
    | rl78 | rx \
    | score \
    | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
    | sh64 | sh64le \
    | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
    | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
    | spu \
    | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
    | ubicom32 \
    | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
    | visium \
    | wasm32 \
    | x86 | xc16x | xstormy16 | xtensa \
    | z8k | z80)
        basic_machine=$basic_machine-unknown
    # Here we handle the default manufacturer of certain CPU types.  It is in
    # some cases the only manufacturer, in others, it is the most popular.
    w89k)
        cpu=hppa1.1
        vendor=winbond
        ;;
    c54x)
        basic_machine=tic54x-unknown
    op50n)
        cpu=hppa1.1
        vendor=oki
        ;;
    c55x)
        basic_machine=tic55x-unknown
    op60c)
        cpu=hppa1.1
        vendor=oki
        ;;
    c6x)
        basic_machine=tic6x-unknown
    ibm*)
        cpu=i370
        vendor=ibm
        ;;
    orion105)
        cpu=clipper
        vendor=highlevel
        ;;
    mac | mpw | mac-mpw)
        cpu=m68k
        vendor=apple
        ;;
    pmac | pmac-mpw)
        cpu=powerpc
        vendor=apple
        ;;
    # Recognize the various machine names and aliases which stand
    # for a CPU type and a company and sometimes even an OS.
    3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
        cpu=m68000
        vendor=att
        ;;
    3b*)
        cpu=we32k
        vendor=att
        ;;
    bluegene*)
        cpu=powerpc
        vendor=ibm
        basic_os=cnk
        ;;
    decsystem10* | dec10*)
        cpu=pdp10
        vendor=dec
        basic_os=tops10
        ;;
    decsystem20* | dec20*)
        cpu=pdp10
        vendor=dec
        basic_os=tops20
        ;;
    delta | 3300 | motorola-3300 | motorola-delta \
          | 3300-motorola | delta-motorola)
        cpu=m68k
        vendor=motorola
        ;;
    dpx2*)
        cpu=m68k
        vendor=bull
        basic_os=sysv3
        ;;
    encore | umax | mmax)
        cpu=ns32k
        vendor=encore
        ;;
    elxsi)
        cpu=elxsi
        vendor=elxsi
        basic_os=${basic_os:-bsd}
        ;;
    fx2800)
        cpu=i860
        vendor=alliant
        ;;
    genix)
        cpu=ns32k
        vendor=ns
        ;;
    h3050r* | hiux*)
        cpu=hppa1.1
        vendor=hitachi
        basic_os=hiuxwe2
        ;;
    hp3k9[0-9][0-9] | hp9[0-9][0-9])
        cpu=hppa1.0
        vendor=hp
        ;;
    hp9k2[0-9][0-9] | hp9k31[0-9])
        cpu=m68000
        vendor=hp
        ;;
    hp9k3[2-9][0-9])
        cpu=m68k
        vendor=hp
        ;;
    hp9k6[0-9][0-9] | hp6[0-9][0-9])
        cpu=hppa1.0
        vendor=hp
        ;;
    hp9k7[0-79][0-9] | hp7[0-79][0-9])
        cpu=hppa1.1
        vendor=hp
        ;;
    hp9k78[0-9] | hp78[0-9])
        # FIXME: really hppa2.0-hp
        cpu=hppa1.1
        vendor=hp
        ;;
    hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
        # FIXME: really hppa2.0-hp
        cpu=hppa1.1
        vendor=hp
        ;;
    hp9k8[0-9][13679] | hp8[0-9][13679])
        cpu=hppa1.1
        vendor=hp
        ;;
    hp9k8[0-9][0-9] | hp8[0-9][0-9])
        cpu=hppa1.0
        vendor=hp
        ;;
    i*86v32)
        cpu=`echo "$1" | sed -e 's/86.*/86/'`
        vendor=pc
        basic_os=sysv32
        ;;
    i*86v4*)
        cpu=`echo "$1" | sed -e 's/86.*/86/'`
        vendor=pc
        basic_os=sysv4
        ;;
    i*86v)
        cpu=`echo "$1" | sed -e 's/86.*/86/'`
        vendor=pc
        basic_os=sysv
        ;;
    i*86sol2)
        cpu=`echo "$1" | sed -e 's/86.*/86/'`
        vendor=pc
        basic_os=solaris2
        ;;
    j90 | j90-cray)
        cpu=j90
        vendor=cray
        basic_os=${basic_os:-unicos}
        ;;
    iris | iris4d)
        cpu=mips
        vendor=sgi
        case $basic_os in
            irix*)
            ;;
            *)
            basic_os=irix4
            ;;
        esac
        ;;
    miniframe)
        cpu=m68000
        vendor=convergent
        ;;
    *mint | mint[0-9]* | *MiNT | *MiNT[0-9]*)
        cpu=m68k
        vendor=atari
        basic_os=mint
        ;;
    news-3600 | risc-news)
        cpu=mips
        vendor=sony
        basic_os=newsos
        ;;
    next | m*-next)
        cpu=m68k
        vendor=next
        case $basic_os in
            openstep*)
                ;;
            nextstep*)
            ;;
            ns2*)
              basic_os=nextstep2
            ;;
            *)
              basic_os=nextstep3
            ;;
        esac
        ;;
    np1)
        cpu=np1
        vendor=gould
        ;;
    op50n-* | op60c-*)
        cpu=hppa1.1
        vendor=oki
        basic_os=proelf
        ;;
    pa-hitachi)
        cpu=hppa1.1
        vendor=hitachi
        basic_os=hiuxwe2
        ;;
    pbd)
        cpu=sparc
        vendor=tti
        ;;
    pbb)
        cpu=m68k
        vendor=tti
        ;;
    pc532)
        cpu=ns32k
        vendor=pc532
        ;;
    pn)
        cpu=pn
        vendor=gould
        ;;
    power)
        cpu=power
        vendor=ibm
        ;;
    ps2)
        cpu=i386
        vendor=ibm
        ;;
    rm[46]00)
        cpu=mips
        vendor=siemens
        ;;
    rtpc | rtpc-*)
        cpu=romp
        vendor=ibm
        ;;
    sde)
        cpu=mipsisa32
        vendor=sde
        basic_os=${basic_os:-elf}
        ;;
    simso-wrs)
        cpu=sparclite
        vendor=wrs
        basic_os=vxworks
        ;;
    tower | tower-32)
        cpu=m68k
        vendor=ncr
        ;;
    vpp*|vx|vx-*)
        cpu=f301
        vendor=fujitsu
        ;;
    w65)
        cpu=w65
        vendor=wdc
        ;;
    w89k-*)
        cpu=hppa1.1
        vendor=winbond
        basic_os=proelf
        ;;
    none)
        cpu=none
        vendor=none
        ;;
    leon|leon[3-9])
        basic_machine=sparc-$basic_machine
        cpu=sparc
        vendor=$basic_machine
        ;;
    m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
        basic_machine=$basic_machine-unknown
        os=-none
        ;;
    m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65)
        ;;
    ms1)
        basic_machine=mt-unknown
    leon-*|leon[3-9]-*)
        cpu=sparc
        vendor=`echo "$basic_machine" | sed 's/-.*//'`
        ;;
    strongarm | thumb | xscale)
        basic_machine=arm-unknown
    *-*)
        # shellcheck disable=SC2162
        saved_IFS=$IFS
        IFS="-" read cpu vendor <<EOF
$basic_machine
EOF
        IFS=$saved_IFS
        ;;
    xgate)
        basic_machine=$basic_machine-unknown
        os=-none
        ;;
    xscaleeb)
        basic_machine=armeb-unknown
        ;;
    xscaleel)
        basic_machine=armel-unknown
        ;;
    # We use `pc' rather than `unknown'
    # because (1) that's what they normally are, and
    # (2) the word "unknown" tends to confuse beginning users.
    i*86 | x86_64)
      basic_machine=$basic_machine-pc
      ;;
    # Object if more than one company name word.
    *-*-*)
        echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2
        exit 1
        cpu=$basic_machine
        vendor=pc
        ;;
    # Recognize the basic CPU types with company name.
    580-* \
    | a29k-* \
    | aarch64-* | aarch64_be-* \
    | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
    | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
    | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
    | arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
    | avr-* | avr32-* \
    | ba-* \
    | be32-* | be64-* \
    | bfin-* | bs2000-* \
    | c[123]* | c30-* | [cjt]90-* | c4x-* \
    | c8051-* | clipper-* | craynv-* | cydra-* \
    | d10v-* | d30v-* | dlx-* \
    | e2k-* | elxsi-* \
    | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
    | h8300-* | h8500-* \
    | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
    | hexagon-* \
    | i*86-* | i860-* | i960-* | ia16-* | ia64-* \
    | ip2k-* | iq2000-* \
    | k1om-* \
    | le32-* | le64-* \
    | lm32-* \
    | m32c-* | m32r-* | m32rle-* \
    | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
    | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
    | microblaze-* | microblazeel-* \
    | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
    | mips16-* \
    | mips64-* | mips64el-* \
    | mips64octeon-* | mips64octeonel-* \
    | mips64orion-* | mips64orionel-* \
    | mips64r5900-* | mips64r5900el-* \
    | mips64vr-* | mips64vrel-* \
    | mips64vr4100-* | mips64vr4100el-* \
    | mips64vr4300-* | mips64vr4300el-* \
    | mips64vr5000-* | mips64vr5000el-* \
    | mips64vr5900-* | mips64vr5900el-* \
    | mipsisa32-* | mipsisa32el-* \
    | mipsisa32r2-* | mipsisa32r2el-* \
    | mipsisa32r6-* | mipsisa32r6el-* \
    | mipsisa64-* | mipsisa64el-* \
    | mipsisa64r2-* | mipsisa64r2el-* \
    | mipsisa64r6-* | mipsisa64r6el-* \
    | mipsisa64sb1-* | mipsisa64sb1el-* \
    | mipsisa64sr71k-* | mipsisa64sr71kel-* \
    | mipsr5900-* | mipsr5900el-* \
    | mipstx39-* | mipstx39el-* \
    | mmix-* \
    | mt-* \
    | msp430-* \
    | nds32-* | nds32le-* | nds32be-* \
    | nios-* | nios2-* | nios2eb-* | nios2el-* \
    | none-* | np1-* | ns16k-* | ns32k-* \
    | open8-* \
    | or1k*-* \
    | orion-* \
    | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
    | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
    | pru-* \
    | pyramid-* \
    | riscv32-* | riscv64-* \
    | rl78-* | romp-* | rs6000-* | rx-* \
    | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
    | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
    | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
    | sparclite-* \
    | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \
    | tahoe-* \
    | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
    | tile*-* \
    | tron-* \
    | ubicom32-* \
    | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
    | vax-* \
    | visium-* \
    | wasm32-* \
    | we32k-* \
    | x86-* | x86_64-* | xc16x-* | xps100-* \
    | xstormy16-* | xtensa*-* \
    | ymp-* \
    | z8k-* | z80-*)
        ;;
    # Recognize the basic CPU types without company name, with glob match.
    xtensa*)
        basic_machine=$basic_machine-unknown
        ;;
    # Recognize the various machine names and aliases which stand
    # for a CPU type and a company and sometimes even an OS.
    386bsd)
        basic_machine=i386-pc
        os=-bsd
        ;;
    3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
        basic_machine=m68000-att
        ;;
    3b*)
        basic_machine=we32k-att
        ;;
    a29khif)
        basic_machine=a29k-amd
        os=-udi
        ;;
    abacus)
        basic_machine=abacus-unknown
        ;;
    adobe68k)
        basic_machine=m68010-adobe
        os=-scout
        ;;
    alliant | fx80)
        basic_machine=fx80-alliant
        ;;
    altos | altos3068)
        basic_machine=m68k-altos
        ;;
    am29k)
        basic_machine=a29k-none
        os=-bsd
        ;;
    amd64)
        basic_machine=x86_64-pc
        ;;
    amd64-*)
        basic_machine=x86_64-`echo "$basic_machine" | sed 's/^[^-]*-//'`
        ;;
    amdahl)
        basic_machine=580-amdahl
        os=-sysv
        ;;
    amiga | amiga-*)
        basic_machine=m68k-unknown
        ;;
    amigaos | amigados)
        basic_machine=m68k-unknown
        os=-amigaos
        ;;
    amigaunix | amix)
        basic_machine=m68k-unknown
        os=-sysv4
        ;;
    apollo68)
        basic_machine=m68k-apollo
        os=-sysv
        ;;
    apollo68bsd)
        basic_machine=m68k-apollo
        os=-bsd
        ;;
    aros)
        basic_machine=i386-pc
        os=-aros
        ;;
    asmjs)
        basic_machine=asmjs-unknown
        ;;
    aux)
        basic_machine=m68k-apple
        os=-aux
        ;;
    balance)
        basic_machine=ns32k-sequent
        os=-dynix
        ;;
    blackfin)
        basic_machine=bfin-unknown
        os=-linux
        ;;
    blackfin-*)
        basic_machine=bfin-`echo "$basic_machine" | sed 's/^[^-]*-//'`
        os=-linux
        ;;
    bluegene*)
        basic_machine=powerpc-ibm
        os=-cnk
        ;;
    c54x-*)
        basic_machine=tic54x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
        ;;
    c55x-*)
        basic_machine=tic55x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
        ;;
    c6x-*)
        basic_machine=tic6x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
        ;;
    c90)
        basic_machine=c90-cray
        os=-unicos
        ;;
    cegcc)
        basic_machine=arm-unknown
        os=-cegcc
        ;;
    convex-c1)
        basic_machine=c1-convex
        os=-bsd
        ;;
    convex-c2)
        basic_machine=c2-convex
        os=-bsd
        ;;
    convex-c32)
        basic_machine=c32-convex
        os=-bsd
        ;;
    convex-c34)
        basic_machine=c34-convex
        os=-bsd
        ;;
    convex-c38)
        basic_machine=c38-convex
        os=-bsd
        ;;
    cray | j90)
        basic_machine=j90-cray
        os=-unicos
        ;;
    craynv)
        basic_machine=craynv-cray
        os=-unicosmp
        ;;
    cr16 | cr16-*)
        basic_machine=cr16-unknown
        os=-elf
        ;;
    crds | unos)
        basic_machine=m68k-crds
        ;;
    crisv32 | crisv32-* | etraxfs*)
        basic_machine=crisv32-axis
        ;;
    cris | cris-* | etrax*)
        basic_machine=cris-axis
        ;;
    crx)
        basic_machine=crx-unknown
        os=-elf
        ;;
    da30 | da30-*)
        basic_machine=m68k-da30
        ;;
    decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
        basic_machine=mips-dec
        ;;
    decsystem10* | dec10*)
        basic_machine=pdp10-dec
        os=-tops10
        ;;
    decsystem20* | dec20*)
        basic_machine=pdp10-dec
        os=-tops20
        ;;
    delta | 3300 | motorola-3300 | motorola-delta \
          | 3300-motorola | delta-motorola)
        basic_machine=m68k-motorola
        ;;
    delta88)
        basic_machine=m88k-motorola
        os=-sysv3
        ;;
    dicos)
        basic_machine=i686-pc
        os=-dicos
        ;;
    djgpp)
        basic_machine=i586-pc
        os=-msdosdjgpp
        ;;
    dpx20 | dpx20-*)
        basic_machine=rs6000-bull
        os=-bosx
        ;;
    dpx2*)
        basic_machine=m68k-bull
        os=-sysv3
        ;;
    e500v[12])
        basic_machine=powerpc-unknown
        os=$os"spe"
        ;;
    e500v[12]-*)
        basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'`
        os=$os"spe"
        ;;
    ebmon29k)
        basic_machine=a29k-amd
        os=-ebmon
        ;;
    elxsi)
        basic_machine=elxsi-elxsi
        os=-bsd
        ;;
    encore | umax | mmax)
        basic_machine=ns32k-encore
        ;;
    es1800 | OSE68k | ose68k | ose | OSE)
        basic_machine=m68k-ericsson
        os=-ose
        ;;
    fx2800)
        basic_machine=i860-alliant
        ;;
    genix)
        basic_machine=ns32k-ns
        ;;
    gmicro)
        basic_machine=tron-gmicro
        os=-sysv
        ;;
    go32)
        basic_machine=i386-pc
        os=-go32
        ;;
    h3050r* | hiux*)
        basic_machine=hppa1.1-hitachi
        os=-hiuxwe2
        ;;
    h8300hms)
        basic_machine=h8300-hitachi
        os=-hms
        ;;
    h8300xray)
        basic_machine=h8300-hitachi
        os=-xray
        ;;
    h8500hms)
        basic_machine=h8500-hitachi
        os=-hms
        ;;
    harris)
        basic_machine=m88k-harris
        os=-sysv3
        ;;
    hp300-*)
        basic_machine=m68k-hp
        ;;
    hp300bsd)
        basic_machine=m68k-hp
        os=-bsd
        ;;
    hp300hpux)
        basic_machine=m68k-hp
        os=-hpux
        ;;
    hp3k9[0-9][0-9] | hp9[0-9][0-9])
        basic_machine=hppa1.0-hp
        ;;
    hp9k2[0-9][0-9] | hp9k31[0-9])
        basic_machine=m68000-hp
        ;;
    hp9k3[2-9][0-9])
        basic_machine=m68k-hp
        ;;
    hp9k6[0-9][0-9] | hp6[0-9][0-9])
        basic_machine=hppa1.0-hp
        ;;
    hp9k7[0-79][0-9] | hp7[0-79][0-9])
        basic_machine=hppa1.1-hp
        ;;
    hp9k78[0-9] | hp78[0-9])
        # FIXME: really hppa2.0-hp
        basic_machine=hppa1.1-hp
        ;;
    hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
        # FIXME: really hppa2.0-hp
        basic_machine=hppa1.1-hp
        ;;
    hp9k8[0-9][13679] | hp8[0-9][13679])
        basic_machine=hppa1.1-hp
        ;;
    hp9k8[0-9][0-9] | hp8[0-9][0-9])
        basic_machine=hppa1.0-hp
        ;;
    hppaosf)
        basic_machine=hppa1.1-hp
        os=-osf
        ;;
    hppro)
        basic_machine=hppa1.1-hp
        os=-proelf
        ;;
    i370-ibm* | ibm*)
        basic_machine=i370-ibm
        ;;
    i*86v32)
        basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
        os=-sysv32
        ;;
    i*86v4*)
        basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
        os=-sysv4
        ;;
    i*86v)
        basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
        os=-sysv
        ;;
    i*86sol2)
        basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
        os=-solaris2
        ;;
    i386mach)
        basic_machine=i386-mach
        os=-mach
        ;;
    vsta)
        basic_machine=i386-unknown
        os=-vsta
        ;;
    iris | iris4d)
        basic_machine=mips-sgi
        case $os in
            -irix*)
            ;;
            *)
            os=-irix4
            ;;
        esac
        ;;
    isi68 | isi)
        basic_machine=m68k-isi
        os=-sysv
        ;;
    leon-*|leon[3-9]-*)
        basic_machine=sparc-`echo "$basic_machine" | sed 's/-.*//'`
        ;;
    m68knommu)
        basic_machine=m68k-unknown
        os=-linux
        ;;
    m68knommu-*)
        basic_machine=m68k-`echo "$basic_machine" | sed 's/^[^-]*-//'`
        os=-linux
        ;;
    magnum | m3230)
        basic_machine=mips-mips
        os=-sysv
        ;;
    merlin)
        basic_machine=ns32k-utek
        os=-sysv
        ;;
    microblaze*)
        basic_machine=microblaze-xilinx
        ;;
    mingw64)
        basic_machine=x86_64-pc
        os=-mingw64
        ;;
    mingw32)
        basic_machine=i686-pc
        os=-mingw32
        ;;
    mingw32ce)
        basic_machine=arm-unknown
        os=-mingw32ce
        ;;
    miniframe)
        basic_machine=m68000-convergent
        ;;
    *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
        basic_machine=m68k-atari
        os=-mint
        ;;
    mips3*-*)
        basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`
        ;;
    mips3*)
        basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`-unknown
        ;;
    monitor)
        basic_machine=m68k-rom68k
        os=-coff
        ;;
    morphos)
        basic_machine=powerpc-unknown
        os=-morphos
        ;;
    moxiebox)
        basic_machine=moxie-unknown
        os=-moxiebox
        ;;
    msdos)
        basic_machine=i386-pc
        os=-msdos
        ;;
    ms1-*)
        basic_machine=`echo "$basic_machine" | sed -e 's/ms1-/mt-/'`
        ;;
    msys)
        basic_machine=i686-pc
        os=-msys
        ;;
    mvs)
        basic_machine=i370-ibm
        os=-mvs
        ;;
    nacl)
        basic_machine=le32-unknown
        os=-nacl
        ;;
    ncr3000)
        basic_machine=i486-ncr
        os=-sysv4
        ;;
    netbsd386)
        basic_machine=i386-unknown
        os=-netbsd
        ;;
    netwinder)
        basic_machine=armv4l-rebel
        os=-linux
        ;;
    news | news700 | news800 | news900)
        basic_machine=m68k-sony
        os=-newsos
        ;;
    news1000)
        basic_machine=m68030-sony
        os=-newsos
        ;;
    news-3600 | risc-news)
        basic_machine=mips-sony
        os=-newsos
        ;;
    necv70)
        basic_machine=v70-nec
        os=-sysv
        ;;
    next | m*-next)
        basic_machine=m68k-next
        case $os in
            -nextstep* )
            ;;
            -ns2*)
              os=-nextstep2
            ;;
            *)
              os=-nextstep3
            ;;
        esac
        ;;
    nh3000)
        basic_machine=m68k-harris
        os=-cxux
        ;;
    nh[45]000)
        basic_machine=m88k-harris
        os=-cxux
        ;;
    nindy960)
        basic_machine=i960-intel
        os=-nindy
        ;;
    mon960)
        basic_machine=i960-intel
        os=-mon960
        ;;
    nonstopux)
        basic_machine=mips-compaq
        os=-nonstopux
        ;;
    np1)
        basic_machine=np1-gould
        ;;
    neo-tandem)
        basic_machine=neo-tandem
        ;;
    nse-tandem)
        basic_machine=nse-tandem
        ;;
    nsr-tandem)
        basic_machine=nsr-tandem
        ;;
    nsv-tandem)
        basic_machine=nsv-tandem
        ;;
    nsx-tandem)
        basic_machine=nsx-tandem
        ;;
    op50n-* | op60c-*)
        basic_machine=hppa1.1-oki
        os=-proelf
        ;;
    openrisc | openrisc-*)
        basic_machine=or32-unknown
        ;;
    os400)
        basic_machine=powerpc-ibm
        os=-os400
        ;;
    OSE68000 | ose68000)
        basic_machine=m68000-ericsson
        os=-ose
        ;;
    os68k)
        basic_machine=m68k-none
        os=-os68k
        ;;
    pa-hitachi)
        basic_machine=hppa1.1-hitachi
        os=-hiuxwe2
        ;;
    paragon)
        basic_machine=i860-intel
        os=-osf
        ;;
    parisc)
        basic_machine=hppa-unknown
        os=-linux
        ;;
    parisc-*)
        basic_machine=hppa-`echo "$basic_machine" | sed 's/^[^-]*-//'`
        os=-linux
        ;;
    pbd)
        basic_machine=sparc-tti
        ;;
    pbb)
        basic_machine=m68k-tti
        ;;
    pc532 | pc532-*)
        basic_machine=ns32k-pc532
        ;;
    # These rules are duplicated from below for sake of the special case above;
    # i.e. things that normalized to x86 arches should also default to "pc"
    pc98)
        basic_machine=i386-pc
        cpu=i386
        vendor=pc
        ;;
    pc98-*)
        basic_machine=i386-`echo "$basic_machine" | sed 's/^[^-]*-//'`
    x64 | amd64)
        cpu=x86_64
        vendor=pc
        ;;
    pentium | p5 | k5 | k6 | nexgen | viac3)
        basic_machine=i586-pc
    # Recognize the basic CPU types without company name.
    *)
        cpu=$basic_machine
        vendor=unknown
        ;;
    pentiumpro | p6 | 6x86 | athlon | athlon_*)
        basic_machine=i686-pc
esac
unset -v basic_machine
# Decode basic machines in the full and proper CPU-Company form.
case $cpu-$vendor in
    # Here we handle the default manufacturer of certain CPU types in canonical form. It is in
    # some cases the only manufacturer, in others, it is the most popular.
    craynv-unknown)
        vendor=cray
        basic_os=${basic_os:-unicosmp}
        ;;
    pentiumii | pentium2 | pentiumiii | pentium3)
        basic_machine=i686-pc
    c90-unknown | c90-cray)
        vendor=cray
        basic_os=${Basic_os:-unicos}
        ;;
    pentium4)
        basic_machine=i786-pc
    fx80-unknown)
        vendor=alliant
        ;;
    pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
        basic_machine=i586-`echo "$basic_machine" | sed 's/^[^-]*-//'`
    romp-unknown)
        vendor=ibm
        ;;
    pentiumpro-* | p6-* | 6x86-* | athlon-*)
        basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'`
    mmix-unknown)
        vendor=knuth
        ;;
    pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
        basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'`
    microblaze-unknown | microblazeel-unknown)
        vendor=xilinx
        ;;
    pentium4-*)
        basic_machine=i786-`echo "$basic_machine" | sed 's/^[^-]*-//'`
    rs6000-unknown)
        vendor=ibm
        ;;
    pn)
        basic_machine=pn-gould
    vax-unknown)
        vendor=dec
        ;;
    power)    basic_machine=power-ibm
    pdp11-unknown)
        vendor=dec
        ;;
    ppc | ppcbe)    basic_machine=powerpc-unknown
    we32k-unknown)
        vendor=att
        ;;
    ppc-* | ppcbe-*)
        basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'`
    cydra-unknown)
        vendor=cydrome
        ;;
    ppcle | powerpclittle)
        basic_machine=powerpcle-unknown
    i370-ibm*)
        vendor=ibm
        ;;
    ppcle-* | powerpclittle-*)
        basic_machine=powerpcle-`echo "$basic_machine" | sed 's/^[^-]*-//'`
    orion-unknown)
        vendor=highlevel
        ;;
    ppc64)    basic_machine=powerpc64-unknown
        ;;
    ppc64-*) basic_machine=powerpc64-`echo "$basic_machine" | sed 's/^[^-]*-//'`
        ;;
    ppc64le | powerpc64little)
        basic_machine=powerpc64le-unknown
        ;;
    ppc64le-* | powerpc64little-*)
        basic_machine=powerpc64le-`echo "$basic_machine" | sed 's/^[^-]*-//'`
        ;;
    ps2)
        basic_machine=i386-ibm
        ;;
    pw32)
        basic_machine=i586-unknown
        os=-pw32
        ;;
    rdos | rdos64)
        basic_machine=x86_64-pc
        os=-rdos
        ;;
    rdos32)
        basic_machine=i386-pc
        os=-rdos
        ;;
    rom68k)
        basic_machine=m68k-rom68k
        os=-coff
        ;;
    rm[46]00)
        basic_machine=mips-siemens
        ;;
    rtpc | rtpc-*)
        basic_machine=romp-ibm
        ;;
    s390 | s390-*)
        basic_machine=s390-ibm
        ;;
    s390x | s390x-*)
        basic_machine=s390x-ibm
        ;;
    sa29200)
        basic_machine=a29k-amd
        os=-udi
        ;;
    sb1)
        basic_machine=mipsisa64sb1-unknown
        ;;
    sb1el)
        basic_machine=mipsisa64sb1el-unknown
        ;;
    sde)
        basic_machine=mipsisa32-sde
        os=-elf
        ;;
    sei)
        basic_machine=mips-sei
        os=-seiux
        ;;
    sequent)
        basic_machine=i386-sequent
        ;;
    sh5el)
        basic_machine=sh5le-unknown
        ;;
    simso-wrs)
        basic_machine=sparclite-wrs
        os=-vxworks
        ;;
    sps7)
        basic_machine=m68k-bull
        os=-sysv2
        ;;
    spur)
        basic_machine=spur-unknown
        ;;
    st2000)
        basic_machine=m68k-tandem
        ;;
    stratus)
        basic_machine=i860-stratus
        os=-sysv4
        ;;
    strongarm-* | thumb-*)
        basic_machine=arm-`echo "$basic_machine" | sed 's/^[^-]*-//'`
        ;;
    sun2)
        basic_machine=m68000-sun
        ;;
    sun2os3)
        basic_machine=m68000-sun
        os=-sunos3
        ;;
    sun2os4)
        basic_machine=m68000-sun
        os=-sunos4
        ;;
    sun3os3)
        basic_machine=m68k-sun
        os=-sunos3
        ;;
    sun3os4)
        basic_machine=m68k-sun
        os=-sunos4
        ;;
    sun4os3)
        basic_machine=sparc-sun
        os=-sunos3
        ;;
    sun4os4)
        basic_machine=sparc-sun
        os=-sunos4
        ;;
    sun4sol2)
        basic_machine=sparc-sun
        os=-solaris2
        ;;
    sun3 | sun3-*)
        basic_machine=m68k-sun
        ;;
    sun4)
        basic_machine=sparc-sun
        ;;
    sun386 | sun386i | roadrunner)
        basic_machine=i386-sun
        ;;
    sv1)
        basic_machine=sv1-cray
        os=-unicos
        ;;
    symmetry)
        basic_machine=i386-sequent
        os=-dynix
        ;;
    t3e)
        basic_machine=alphaev5-cray
        os=-unicos
        ;;
    t90)
        basic_machine=t90-cray
        os=-unicos
        ;;
    tile*)
        basic_machine=$basic_machine-unknown
        os=-linux-gnu
        ;;
    tx39)
        basic_machine=mipstx39-unknown
        ;;
    tx39el)
        basic_machine=mipstx39el-unknown
        ;;
    toad1)
        basic_machine=pdp10-xkl
        os=-tops20
        ;;
    tower | tower-32)
        basic_machine=m68k-ncr
        ;;
    tpf)
        basic_machine=s390x-ibm
        os=-tpf
        ;;
    udi29k)
        basic_machine=a29k-amd
        os=-udi
        ;;
    ultra3)
        basic_machine=a29k-nyu
        os=-sym1
        ;;
    v810 | necv810)
        basic_machine=v810-nec
        os=-none
        ;;
    vaxv)
        basic_machine=vax-dec
        os=-sysv
        ;;
    vms)
        basic_machine=vax-dec
        os=-vms
        ;;
    vpp*|vx|vx-*)
        basic_machine=f301-fujitsu
        ;;
    vxworks960)
        basic_machine=i960-wrs
        os=-vxworks
        ;;
    vxworks68)
        basic_machine=m68k-wrs
        os=-vxworks
        ;;
    vxworks29k)
        basic_machine=a29k-wrs
        os=-vxworks
        ;;
    w65*)
        basic_machine=w65-wdc
        os=-none
        ;;
    w89k-*)
        basic_machine=hppa1.1-winbond
        os=-proelf
        ;;
    x64)
        basic_machine=x86_64-pc
        ;;
    xbox)
        basic_machine=i686-pc
        os=-mingw32
        ;;
    xps | xps100)
        basic_machine=xps100-honeywell
        ;;
    xscale-* | xscalee[bl]-*)
        basic_machine=`echo "$basic_machine" | sed 's/^xscale/arm/'`
        ;;
    ymp)
        basic_machine=ymp-cray
        os=-unicos
        ;;
    none)
        basic_machine=none-none
        os=-none
    xps-unknown | xps100-unknown)
        cpu=xps100
        vendor=honeywell
        ;;
# Here we handle the default manufacturer of certain CPU types.  It is in
# some cases the only manufacturer, in others, it is the most popular.
    w89k)
        basic_machine=hppa1.1-winbond
    # Here we normalize CPU types with a missing or matching vendor
    armh-unknown | armh-alt)
        cpu=armv7l
        vendor=alt
        basic_os=${basic_os:-linux-gnueabihf}
        ;;
    op50n)
        basic_machine=hppa1.1-oki
    dpx20-unknown | dpx20-bull)
        cpu=rs6000
        vendor=bull
        basic_os=${basic_os:-bosx}
        ;;
    op60c)
        basic_machine=hppa1.1-oki
    # Here we normalize CPU types irrespective of the vendor
    amd64-*)
        cpu=x86_64
        ;;
    romp)
        basic_machine=romp-ibm
    blackfin-*)
        cpu=bfin
        basic_os=linux
        ;;
    mmix)
        basic_machine=mmix-knuth
    c54x-*)
        cpu=tic54x
        ;;
    rs6000)
        basic_machine=rs6000-ibm
    c55x-*)
        cpu=tic55x
        ;;
    vax)
        basic_machine=vax-dec
    c6x-*)
        cpu=tic6x
        ;;
    pdp11)
        basic_machine=pdp11-dec
    e500v[12]-*)
        cpu=powerpc
        basic_os=${basic_os}"spe"
        ;;
    we32k)
        basic_machine=we32k-att
    mips3*-*)
        cpu=mips64
        ;;
    sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
        basic_machine=sh-unknown
    ms1-*)
        cpu=mt
        ;;
    cydra)
        basic_machine=cydra-cydrome
    m68knommu-*)
        cpu=m68k
        basic_os=linux
        ;;
    orion)
        basic_machine=orion-highlevel
    m9s12z-* | m68hcs12z-* | hcs12z-* | s12z-*)
        cpu=s12z
        ;;
    orion105)
        basic_machine=clipper-highlevel
    openrisc-*)
        cpu=or32
        ;;
    mac | mpw | mac-mpw)
        basic_machine=m68k-apple
    parisc-*)
        cpu=hppa
        basic_os=linux
        ;;
    pmac | pmac-mpw)
        basic_machine=powerpc-apple
    pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
        cpu=i586
        ;;
    *-unknown)
        # Make sure to match an already-canonicalized machine name.
    pentiumpro-* | p6-* | 6x86-* | athlon-* | athalon_*-*)
        cpu=i686
        ;;
    pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
        cpu=i686
        ;;
    pentium4-*)
        cpu=i786
        ;;
    pc98-*)
        cpu=i386
        ;;
    ppc-* | ppcbe-*)
        cpu=powerpc
        ;;
    ppcle-* | powerpclittle-*)
        cpu=powerpcle
        ;;
    ppc64-*)
        cpu=powerpc64
        ;;
    ppc64le-* | powerpc64little-*)
        cpu=powerpc64le
        ;;
    sb1-*)
        cpu=mipsisa64sb1
        ;;
    sb1el-*)
        cpu=mipsisa64sb1el
        ;;
    sh5e[lb]-*)
        cpu=`echo "$cpu" | sed 's/^\(sh.\)e\(.\)$/\1\2e/'`
        ;;
    spur-*)
        cpu=spur
        ;;
    strongarm-* | thumb-*)
        cpu=arm
        ;;
    tx39-*)
        cpu=mipstx39
        ;;
    tx39el-*)
        cpu=mipstx39el
        ;;
    x64-*)
        cpu=x86_64
        ;;
    xscale-* | xscalee[bl]-*)
        cpu=`echo "$cpu" | sed 's/^xscale/arm/'`
        ;;
    arm64-* | aarch64le-*)
        cpu=aarch64
        ;;
    # Recognize the canonical CPU Types that limit and/or modify the
    # company names they are paired with.
    cr16-*)
        basic_os=${basic_os:-elf}
        ;;
    crisv32-* | etraxfs*-*)
        cpu=crisv32
        vendor=axis
        ;;
    cris-* | etrax*-*)
        cpu=cris
        vendor=axis
        ;;
    crx-*)
        basic_os=${basic_os:-elf}
        ;;
    neo-tandem)
        cpu=neo
        vendor=tandem
        ;;
    nse-tandem)
        cpu=nse
        vendor=tandem
        ;;
    nsr-tandem)
        cpu=nsr
        vendor=tandem
        ;;
    nsv-tandem)
        cpu=nsv
        vendor=tandem
        ;;
    nsx-tandem)
        cpu=nsx
        vendor=tandem
        ;;
    mipsallegrexel-sony)
        cpu=mipsallegrexel
        vendor=sony
        ;;
    tile*-*)
        basic_os=${basic_os:-linux-gnu}
        ;;
    *)
        echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2
        exit 1
        # Recognize the canonical CPU types that are allowed with any
        # company name.
        case $cpu in
            1750a | 580 \
            | a29k \
            | aarch64 | aarch64_be \
            | abacus \
            | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] \
            | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] \
            | alphapca5[67] | alpha64pca5[67] \
            | am33_2.0 \
            | amdgcn \
            | arc | arceb | arc32 | arc64 \
            | arm | arm[lb]e | arme[lb] | armv* \
            | avr | avr32 \
            | asmjs \
            | ba \
            | be32 | be64 \
            | bfin | bpf | bs2000 \
            | c[123]* | c30 | [cjt]90 | c4x \
            | c8051 | clipper | craynv | csky | cydra \
            | d10v | d30v | dlx | dsp16xx \
            | e2k | elxsi | epiphany \
            | f30[01] | f700 | fido | fr30 | frv | ft32 | fx80 \
            | h8300 | h8500 \
            | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
            | hexagon \
            | i370 | i*86 | i860 | i960 | ia16 | ia64 \
            | ip2k | iq2000 \
            | k1om \
            | le32 | le64 \
            | lm32 \
            | loongarch32 | loongarch64 | loongarchx32 \
            | m32c | m32r | m32rle \
            | m5200 | m68000 | m680[012346]0 | m68360 | m683?2 | m68k \
            | m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x \
            | m88110 | m88k | maxq | mb | mcore | mep | metag \
            | microblaze | microblazeel \
            | mips | mipsbe | mipseb | mipsel | mipsle \
            | mips16 \
            | mips64 | mips64eb | mips64el \
            | mips64octeon | mips64octeonel \
            | mips64orion | mips64orionel \
            | mips64r5900 | mips64r5900el \
            | mips64vr | mips64vrel \
            | mips64vr4100 | mips64vr4100el \
            | mips64vr4300 | mips64vr4300el \
            | mips64vr5000 | mips64vr5000el \
            | mips64vr5900 | mips64vr5900el \
            | mipsisa32 | mipsisa32el \
            | mipsisa32r2 | mipsisa32r2el \
            | mipsisa32r3 | mipsisa32r3el \
            | mipsisa32r5 | mipsisa32r5el \
            | mipsisa32r6 | mipsisa32r6el \
            | mipsisa64 | mipsisa64el \
            | mipsisa64r2 | mipsisa64r2el \
            | mipsisa64r3 | mipsisa64r3el \
            | mipsisa64r5 | mipsisa64r5el \
            | mipsisa64r6 | mipsisa64r6el \
            | mipsisa64sb1 | mipsisa64sb1el \
            | mipsisa64sr71k | mipsisa64sr71kel \
            | mipsr5900 | mipsr5900el \
            | mipstx39 | mipstx39el \
            | mmix \
            | mn10200 | mn10300 \
            | moxie \
            | mt \
            | msp430 \
            | nds32 | nds32le | nds32be \
            | nfp \
            | nios | nios2 | nios2eb | nios2el \
            | none | np1 | ns16k | ns32k | nvptx \
            | open8 \
            | or1k* \
            | or32 \
            | orion \
            | picochip \
            | pdp10 | pdp11 | pj | pjl | pn | power \
            | powerpc | powerpc64 | powerpc64le | powerpcle | powerpcspe \
            | pru \
            | pyramid \
            | riscv | riscv32 | riscv32be | riscv64 | riscv64be \
            | rl78 | romp | rs6000 | rx \
            | s390 | s390x \
            | score \
            | sh | shl \
            | sh[1234] | sh[24]a | sh[24]ae[lb] | sh[23]e | she[lb] | sh[lb]e \
            | sh[1234]e[lb] |  sh[12345][lb]e | sh[23]ele | sh64 | sh64le \
            | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet \
            | sparclite \
            | sparcv8 | sparcv9 | sparcv9b | sparcv9v | sv1 | sx* \
            | spu \
            | tahoe \
            | thumbv7* \
            | tic30 | tic4x | tic54x | tic55x | tic6x | tic80 \
            | tron \
            | ubicom32 \
            | v70 | v850 | v850e | v850e1 | v850es | v850e2 | v850e2v3 \
            | vax \
            | visium \
            | w65 \
            | wasm32 | wasm64 \
            | we32k \
            | x86 | x86_64 | xc16x | xgate | xps100 \
            | xstormy16 | xtensa* \
            | ymp \
            | z8k | z80)
                ;;
            *)
                echo Invalid configuration \`"$1"\': machine \`"$cpu-$vendor"\' not recognized 1>&2
                exit 1
                ;;
        esac
        ;;
esac
# Here we canonicalize certain aliases for manufacturers.
case $basic_machine in
    *-digital*)
        basic_machine=`echo "$basic_machine" | sed 's/digital.*/dec/'`
case $vendor in
    digital*)
        vendor=dec
        ;;
    *-commodore*)
        basic_machine=`echo "$basic_machine" | sed 's/commodore.*/cbm/'`
    commodore*)
        vendor=cbm
        ;;
    *)
        ;;
@@ -1334,203 +1306,215 @@
# Decode manufacturer-specific aliases for certain operating systems.
if [ x"$os" != x"" ]
if test x$basic_os != x
then
# First recognize some ad-hoc cases, or perhaps split kernel-os, or else just
# set os.
case $basic_os in
    gnu/linux*)
        kernel=linux
        os=`echo "$basic_os" | sed -e 's|gnu/linux|gnu|'`
        ;;
    os2-emx)
        kernel=os2
        os=`echo "$basic_os" | sed -e 's|os2-emx|emx|'`
        ;;
    nto-qnx*)
        kernel=nto
        os=`echo "$basic_os" | sed -e 's|nto-qnx|qnx|'`
        ;;
    *-*)
        # shellcheck disable=SC2162
        saved_IFS=$IFS
        IFS="-" read kernel os <<EOF
$basic_os
EOF
        IFS=$saved_IFS
        ;;
    # Default OS when just kernel was specified
    nto*)
        kernel=nto
        os=`echo "$basic_os" | sed -e 's|nto|qnx|'`
        ;;
    linux*)
        kernel=linux
        os=`echo "$basic_os" | sed -e 's|linux|gnu|'`
        ;;
    *)
        kernel=
        os=$basic_os
        ;;
esac
# Now, normalize the OS (knowing we just have one component, it's not a kernel,
# etc.)
case $os in
    # First match some system type aliases that might get confused
    # with valid system types.
    # -solaris* is a basic system type, with this one exception.
    -auroraux)
        os=-auroraux
    # solaris* is a basic system type, with this one exception.
    auroraux)
        os=auroraux
        ;;
    -solaris1 | -solaris1.*)
        os=`echo $os | sed -e 's|solaris1|sunos4|'`
    bluegene*)
        os=cnk
        ;;
    -solaris)
        os=-solaris2
    solaris1 | solaris1.*)
        os=`echo "$os" | sed -e 's|solaris1|sunos4|'`
        ;;
    -unixware*)
        os=-sysv4.2uw
    solaris)
        os=solaris2
        ;;
    -gnu/linux*)
        os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
    unixware*)
        os=sysv4.2uw
        ;;
    # es1800 is here to avoid being matched by es* (a different OS)
    -es1800*)
        os=-ose
    es1800*)
        os=ose
        ;;
    # Now accept the basic system types.
    # The portable systems comes first.
    # Each alternative MUST end in a * to match a version number.
    # -sysv* is not here because it comes later, after sysvr4.
    -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
          | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
          | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
          | -sym* | -kopensolaris* | -plan9* \
          | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
          | -aos* | -aros* | -cloudabi* | -sortix* \
          | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
          | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
          | -hiux* | -knetbsd* | -mirbsd* | -netbsd* \
          | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \
          | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
          | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
          | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
          | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
          | -chorusos* | -chorusrdb* | -cegcc* | -glidix* \
          | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
          | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
          | -linux-newlib* | -linux-musl* | -linux-uclibc* \
          | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
          | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* \
          | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
          | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
          | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
          | -morphos* | -superux* | -rtmk* | -windiss* \
          | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
          | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \
          | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox* | -bme* \
          | -midnightbsd*)
    # Remember, each alternative MUST END IN *, to match a version number.
    # Some version numbers need modification
    chorusos*)
        os=chorusos
        ;;
    -qnx*)
        case $basic_machine in
            x86-* | i*86-*)
            ;;
            *)
            os=-nto$os
            ;;
        esac
    isc)
        os=isc2.2
        ;;
    -nto-qnx*)
    sco6)
        os=sco5v6
        ;;
    -nto*)
        os=`echo $os | sed -e 's|nto|nto-qnx|'`
    sco5)
        os=sco3.2v5
        ;;
    -sim | -xray | -os68k* | -v88r* \
          | -windows* | -osx | -abug | -netware* | -os9* \
          | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
    sco4)
        os=sco3.2v4
        ;;
    -mac*)
    sco3.2.[4-9]*)
        os=`echo "$os" | sed -e 's/sco3.2./sco3.2v/'`
        ;;
    sco*v* | scout)
        # Don't match below
        ;;
    sco*)
        os=sco3.2v2
        ;;
    psos*)
        os=psos
        ;;
    qnx*)
        os=qnx
        ;;
    hiux*)
        os=hiuxwe2
        ;;
    lynx*178)
        os=lynxos178
        ;;
    lynx*5)
        os=lynxos5
        ;;
    lynxos*)
        # don't get caught up in next wildcard
        ;;
    lynx*)
        os=lynxos
        ;;
    mac[0-9]*)
        os=`echo "$os" | sed -e 's|mac|macos|'`
        ;;
    -linux-dietlibc)
        os=-linux-dietlibc
    opened*)
        os=openedition
        ;;
    -linux*)
        os=`echo $os | sed -e 's|linux|linux-gnu|'`
    os400*)
        os=os400
        ;;
    -sunos5*)
    sunos5*)
        os=`echo "$os" | sed -e 's|sunos5|solaris2|'`
        ;;
    -sunos6*)
    sunos6*)
        os=`echo "$os" | sed -e 's|sunos6|solaris3|'`
        ;;
    -opened*)
        os=-openedition
    wince*)
        os=wince
        ;;
    -os400*)
        os=-os400
    utek*)
        os=bsd
        ;;
    -wince*)
        os=-wince
    dynix*)
        os=bsd
        ;;
    -utek*)
        os=-bsd
    acis*)
        os=aos
        ;;
    -dynix*)
        os=-bsd
    atheos*)
        os=atheos
        ;;
    -acis*)
        os=-aos
    syllable*)
        os=syllable
        ;;
    -atheos*)
        os=-atheos
    386bsd)
        os=bsd
        ;;
    -syllable*)
        os=-syllable
    ctix* | uts*)
        os=sysv
        ;;
    -386bsd)
        os=-bsd
    nova*)
        os=rtmk-nova
        ;;
    -ctix* | -uts*)
        os=-sysv
        ;;
    -nova*)
        os=-rtmk-nova
        ;;
    -ns2)
        os=-nextstep2
        ;;
    -nsk*)
        os=-nsk
    ns2)
        os=nextstep2
        ;;
    # Preserve the version number of sinix5.
    -sinix5.*)
        os=`echo $os | sed -e 's|sinix|sysv|'`
    sinix5.*)
        os=`echo "$os" | sed -e 's|sinix|sysv|'`
        ;;
    -sinix*)
        os=-sysv4
    sinix*)
        os=sysv4
        ;;
    -tpf*)
        os=-tpf
    tpf*)
        os=tpf
        ;;
    -triton*)
        os=-sysv3
    triton*)
        os=sysv3
        ;;
    -oss*)
        os=-sysv3
    oss*)
        os=sysv3
        ;;
    -svr4*)
        os=-sysv4
    svr4*)
        os=sysv4
        ;;
    -svr3)
        os=-sysv3
    svr3)
        os=sysv3
        ;;
    -sysvr4)
        os=-sysv4
    sysvr4)
        os=sysv4
        ;;
    # This must come after -sysvr4.
    -sysv*)
    ose*)
        os=ose
        ;;
    -ose*)
        os=-ose
    *mint | mint[0-9]* | *MiNT | MiNT[0-9]*)
        os=mint
        ;;
    -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
        os=-mint
    dicos*)
        os=dicos
        ;;
    -zvmoe)
        os=-zvmoe
        ;;
    -dicos*)
        os=-dicos
        ;;
    -pikeos*)
    pikeos*)
        # Until real need of OS specific support for
        # particular features comes up, bare metal
        # configurations are quite functional.
        case $basic_machine in
        case $cpu in
            arm*)
            os=-eabi
            os=eabi
            ;;
            *)
            os=-elf
            os=elf
            ;;
        esac
        ;;
    -nacl*)
        ;;
    -ios)
        ;;
    -none)
        ;;
    *)
        # Get rid of the `-' at the beginning of $os.
        os=`echo $os | sed 's/[^-]*-//'`
        echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2
        exit 1
        # No normalization, but not necessarily accepted, that comes below.
        ;;
esac
else
# Here we handle the default operating systems that come with various machines.
@@ -1543,258 +1527,363 @@
# will signal an error saying that MANUFACTURER isn't an operating
# system, and we'll never get to this point.
case $basic_machine in
kernel=
case $cpu-$vendor in
    score-*)
        os=-elf
        os=elf
        ;;
    spu-*)
        os=-elf
        os=elf
        ;;
    *-acorn)
        os=-riscix1.2
        os=riscix1.2
        ;;
    arm*-rebel)
        os=-linux
        kernel=linux
        os=gnu
        ;;
    arm*-semi)
        os=-aout
        os=aout
        ;;
    c4x-* | tic4x-*)
        os=-coff
        os=coff
        ;;
    c8051-*)
        os=-elf
        os=elf
        ;;
    clipper-intergraph)
        os=clix
        ;;
    hexagon-*)
        os=-elf
        os=elf
        ;;
    tic54x-*)
        os=-coff
        os=coff
        ;;
    tic55x-*)
        os=-coff
        os=coff
        ;;
    tic6x-*)
        os=-coff
        os=coff
        ;;
    # This must come before the *-dec entry.
    pdp10-*)
        os=-tops20
        os=tops20
        ;;
    pdp11-*)
        os=-none
        os=none
        ;;
    *-dec | vax-*)
        os=-ultrix4.2
        os=ultrix4.2
        ;;
    m68*-apollo)
        os=-domain
        os=domain
        ;;
    i386-sun)
        os=-sunos4.0.2
        os=sunos4.0.2
        ;;
    m68000-sun)
        os=-sunos3
        os=sunos3
        ;;
    m68*-cisco)
        os=-aout
        os=aout
        ;;
    mep-*)
        os=-elf
        os=elf
        ;;
    mips*-cisco)
        os=-elf
        os=elf
        ;;
    mips*-*)
        os=-elf
        os=elf
        ;;
    or32-*)
        os=-coff
        os=coff
        ;;
    *-tti)    # must be before sparc entry or we get the wrong os.
        os=-sysv3
        os=sysv3
        ;;
    sparc-* | *-sun)
        os=-sunos4.1.1
        os=sunos4.1.1
        ;;
    pru-*)
        os=-elf
        os=elf
        ;;
    *-be)
        os=-beos
        os=beos
        ;;
    *-ibm)
        os=-aix
        os=aix
        ;;
    *-knuth)
        os=-mmixware
        os=mmixware
        ;;
    *-wec)
        os=-proelf
        os=proelf
        ;;
    *-winbond)
        os=-proelf
        os=proelf
        ;;
    *-oki)
        os=-proelf
        os=proelf
        ;;
    *-hp)
        os=-hpux
        os=hpux
        ;;
    *-hitachi)
        os=-hiux
        os=hiux
        ;;
    i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
        os=-sysv
        os=sysv
        ;;
    *-cbm)
        os=-amigaos
        os=amigaos
        ;;
    *-dg)
        os=-dgux
        os=dgux
        ;;
    *-dolphin)
        os=-sysv3
        os=sysv3
        ;;
    m68k-ccur)
        os=-rtu
        os=rtu
        ;;
    m88k-omron*)
        os=-luna
        os=luna
        ;;
    *-next)
        os=-nextstep
        os=nextstep
        ;;
    *-sequent)
        os=-ptx
        os=ptx
        ;;
    *-crds)
        os=-unos
        os=unos
        ;;
    *-ns)
        os=-genix
        os=genix
        ;;
    i370-*)
        os=-mvs
        os=mvs
        ;;
    *-gould)
        os=-sysv
        os=sysv
        ;;
    *-highlevel)
        os=-bsd
        os=bsd
        ;;
    *-encore)
        os=-bsd
        os=bsd
        ;;
    *-sgi)
        os=-irix
        os=irix
        ;;
    *-siemens)
        os=-sysv4
        os=sysv4
        ;;
    *-masscomp)
        os=-rtu
        os=rtu
        ;;
    f30[01]-fujitsu | f700-fujitsu)
        os=-uxpv
        os=uxpv
        ;;
    *-rom68k)
        os=-coff
        os=coff
        ;;
    *-*bug)
        os=-coff
        os=coff
        ;;
    *-apple)
        os=-macos
        os=macos
        ;;
    *-atari*)
        os=-mint
        os=mint
        ;;
    *-wrs)
        os=vxworks
        ;;
    *)
        os=-none
        os=none
        ;;
esac
fi
# Now, validate our (potentially fixed-up) OS.
case $os in
    # Sometimes we do "kernel-libc", so those need to count as OSes.
    musl* | newlib* | relibc* | uclibc*)
        ;;
    # Likewise for "kernel-abi"
    eabi* | gnueabi*)
        ;;
    # VxWorks passes extra cpu info in the 4th filed.
    simlinux | simwindows | spe)
        ;;
    # Now accept the basic system types.
    # The portable systems comes first.
    # Each alternative MUST end in a * to match a version number.
    gnu* | android* | bsd* | mach* | minix* | genix* | ultrix* | irix* \
         | *vms* | esix* | aix* | cnk* | sunos | sunos[34]* \
         | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \
         | sym* |  plan9* | psp* | sim* | xray* | os68k* | v88r* \
         | hiux* | abug | nacl* | netware* | windows* \
         | os9* | macos* | osx* | ios* \
         | mpw* | magic* | mmixware* | mon960* | lnews* \
         | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \
         | aos* | aros* | cloudabi* | sortix* | twizzler* \
         | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \
         | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \
         | mirbsd* | netbsd* | dicos* | openedition* | ose* \
         | bitrig* | openbsd* | secbsd* | solidbsd* | libertybsd* | os108* \
         | ekkobsd* | freebsd* | riscix* | lynxos* | os400* \
         | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \
         | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \
         | udi* | lites* | ieee* | go32* | aux* | hcos* \
         | chorusrdb* | cegcc* | glidix* | serenity* \
         | cygwin* | msys* | pe* | moss* | proelf* | rtems* \
         | midipix* | mingw32* | mingw64* | mint* \
         | uxpv* | beos* | mpeix* | udk* | moxiebox* \
         | interix* | uwin* | mks* | rhapsody* | darwin* \
         | openstep* | oskit* | conix* | pw32* | nonstopux* \
         | storm-chaos* | tops10* | tenex* | tops20* | its* \
         | os2* | vos* | palmos* | uclinux* | nucleus* | morphos* \
         | scout* | superux* | sysv* | rtmk* | tpf* | windiss* \
         | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \
         | skyos* | haiku* | rdos* | toppers* | drops* | es* \
         | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
         | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \
         | nsk* | powerunix* | genode* | zvmoe* | qnx* | emx* | zephyr* \
         | fiwix* )
        ;;
    # This one is extra strict with allowed versions
    sco3.2v2 | sco3.2v[4-9]* | sco5v6*)
        # Don't forget version if it is 3.2v4 or newer.
        ;;
    none)
        ;;
    *)
        echo Invalid configuration \`"$1"\': OS \`"$os"\' not recognized 1>&2
        exit 1
        ;;
esac
# As a final step for OS-related things, validate the OS-kernel combination
# (given a valid OS), if there is a kernel.
case $kernel-$os in
    linux-gnu* | linux-dietlibc* | linux-android* | linux-newlib* \
           | linux-musl* | linux-relibc* | linux-uclibc* )
        ;;
    uclinux-uclibc* )
        ;;
    -dietlibc* | -newlib* | -musl* | -relibc* | -uclibc* )
        # These are just libc implementations, not actual OSes, and thus
        # require a kernel.
        echo "Invalid configuration \`$1': libc \`$os' needs explicit kernel." 1>&2
        exit 1
        ;;
    kfreebsd*-gnu* | kopensolaris*-gnu*)
        ;;
    vxworks-simlinux | vxworks-simwindows | vxworks-spe)
        ;;
    nto-qnx*)
        ;;
    os2-emx)
        ;;
    *-eabi* | *-gnueabi*)
        ;;
    -*)
        # Blank kernel with real OS is always fine.
        ;;
    *-*)
        echo "Invalid configuration \`$1': Kernel \`$kernel' not known to work with OS \`$os'." 1>&2
        exit 1
        ;;
esac
# Here we handle the case where we know the os, and the CPU type, but not the
# manufacturer.  We pick the logical manufacturer.
vendor=unknown
case $basic_machine in
    *-unknown)
        case $os in
            -riscix*)
case $vendor in
    unknown)
        case $cpu-$os in
            *-riscix*)
                vendor=acorn
                ;;
            -sunos*)
            *-sunos*)
                vendor=sun
                ;;
            -cnk*|-aix*)
            *-cnk* | *-aix*)
                vendor=ibm
                ;;
            -beos*)
            *-beos*)
                vendor=be
                ;;
            -hpux*)
            *-hpux*)
                vendor=hp
                ;;
            -mpeix*)
            *-mpeix*)
                vendor=hp
                ;;
            -hiux*)
            *-hiux*)
                vendor=hitachi
                ;;
            -unos*)
            *-unos*)
                vendor=crds
                ;;
            -dgux*)
            *-dgux*)
                vendor=dg
                ;;
            -luna*)
            *-luna*)
                vendor=omron
                ;;
            -genix*)
            *-genix*)
                vendor=ns
                ;;
            -mvs* | -opened*)
            *-clix*)
                vendor=intergraph
                ;;
            *-mvs* | *-opened*)
                vendor=ibm
                ;;
            -os400*)
            *-os400*)
                vendor=ibm
                ;;
            -ptx*)
            s390-* | s390x-*)
                vendor=ibm
                ;;
            *-ptx*)
                vendor=sequent
                ;;
            -tpf*)
            *-tpf*)
                vendor=ibm
                ;;
            -vxsim* | -vxworks* | -windiss*)
            *-vxsim* | *-vxworks* | *-windiss*)
                vendor=wrs
                ;;
            -aux*)
            *-aux*)
                vendor=apple
                ;;
            -hms*)
            *-hms*)
                vendor=hitachi
                ;;
            -mpw* | -macos*)
            *-mpw* | *-macos*)
                vendor=apple
                ;;
            -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
            *-*mint | *-mint[0-9]* | *-*MiNT | *-MiNT[0-9]*)
                vendor=atari
                ;;
            -vos*)
            *-vos*)
                vendor=stratus
                ;;
        esac
        basic_machine=`echo "$basic_machine" | sed "s/unknown/$vendor/"`
        ;;
esac
echo "$basic_machine$os"
echo "$cpu-$vendor-${kernel:+$kernel-}$os"
exit
# Local variables:
# eval: (add-hook 'write-file-functions 'time-stamp)
# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "timestamp='"
# time-stamp-format: "%:y-%02m-%02d"
# time-stamp-end: "'"
configure.ac
@@ -1,15 +1,16 @@
#                                               -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.67])
AC_INIT([trisurf_ng], [1.0], [samo.penic@fe.uni-lj.si])
AC_PREREQ([2.71])
AC_INIT([trisurf_ng],[1.0],[samo.penic@fe.uni-lj.si])
AC_CONFIG_SRCDIR([config.h.in])
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_MACRO_DIRS([m4])
AM_INIT_AUTOMAKE
# Checks for programs.
AC_PROG_CC
LT_INIT
AC_PROG_LIBTOOL
LT_INIT
# Checks for libraries.
# FIXME: Replace `main' with a function in `-lconfuse':
AC_CHECK_LIB([confuse], [cfg_parse])
depcomp
@@ -1,9 +1,9 @@
#! /bin/sh
# depcomp - compile a program generating dependencies as side-effects
scriptversion=2013-05-30.07; # UTC
scriptversion=2018-03-07.03; # UTC
# Copyright (C) 1999-2014 Free Software Foundation, Inc.
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -16,7 +16,7 @@
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
# along with this program.  If not, see <https://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@@ -783,9 +783,9 @@
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:
install-sh
@@ -1,7 +1,7 @@
#!/bin/sh
# install - install a program, script, or datafile
scriptversion=2014-09-12.12; # UTC
scriptversion=2020-11-14.01; # UTC
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
@@ -69,6 +69,11 @@
# Desired mode of installed file.
mode=0755
# Create dirs (including intermediate dirs) using mode 755.
# This is like GNU 'install' as of coreutils 8.32 (2020).
mkdir_umask=22
backupsuffix=
chgrpcmd=
chmodcmd=$chmodprog
chowncmd=
@@ -99,18 +104,28 @@
     --version  display version info and exit.
  -c            (ignored)
  -C            install only if different (preserve the last data modification time)
  -C            install only if different (preserve data modification time)
  -d            create directories instead of installing files.
  -g GROUP      $chgrpprog installed files to GROUP.
  -m MODE       $chmodprog installed files to MODE.
  -o USER       $chownprog installed files to USER.
  -p            pass -p to $cpprog.
  -s            $stripprog installed files.
  -S SUFFIX     attempt to back up existing files, with suffix SUFFIX.
  -t DIRECTORY  install into DIRECTORY.
  -T            report an error if DSTFILE is a directory.
Environment variables override the default commands:
  CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
  RMPROG STRIPPROG
By default, rm is invoked with -f; when overridden with RMPROG,
it's up to you to specify -f if you want it.
If -S is not specified, no backups are attempted.
Email bug reports to bug-automake@gnu.org.
Automake home page: https://www.gnu.org/software/automake/
"
while test $# -ne 0; do
@@ -137,7 +152,12 @@
    -o) chowncmd="$chownprog $2"
        shift;;
    -p) cpprog="$cpprog -p";;
    -s) stripcmd=$stripprog;;
    -S) backupsuffix="$2"
        shift;;
    -t)
        is_target_a_directory=always
@@ -255,6 +275,10 @@
    dstdir=$dst
    test -d "$dstdir"
    dstdir_status=$?
    # Don't chown directories that already exist.
    if test $dstdir_status = 0; then
      chowncmd=""
    fi
  else
    # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
@@ -271,15 +295,18 @@
    fi
    dst=$dst_arg
    # If destination is a directory, append the input filename; won't work
    # if double slashes aren't ignored.
    # If destination is a directory, append the input filename.
    if test -d "$dst"; then
      if test "$is_target_a_directory" = never; then
        echo "$0: $dst_arg: Is a directory" >&2
        exit 1
      fi
      dstdir=$dst
      dst=$dstdir/`basename "$src"`
      dstbase=`basename "$src"`
      case $dst in
    */) dst=$dst$dstbase;;
    *)  dst=$dst/$dstbase;;
      esac
      dstdir_status=0
    else
      dstdir=`dirname "$dst"`
@@ -288,27 +315,16 @@
    fi
  fi
  case $dstdir in
    */) dstdirslash=$dstdir;;
    *)  dstdirslash=$dstdir/;;
  esac
  obsolete_mkdir_used=false
  if test $dstdir_status != 0; then
    case $posix_mkdir in
      '')
        # Create intermediate dirs using mode 755 as modified by the umask.
        # This is like FreeBSD 'install' as of 1997-10-28.
        umask=`umask`
        case $stripcmd.$umask in
          # Optimize common cases.
          *[2367][2367]) mkdir_umask=$umask;;
          .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
          *[0-7])
            mkdir_umask=`expr $umask + 22 \
              - $umask % 100 % 40 + $umask % 20 \
              - $umask % 10 % 4 + $umask % 2
            `;;
          *) mkdir_umask=$umask,go-w;;
        esac
        # With -d, create the new directory with the user-specified mode.
        # Otherwise, rely on $mkdir_umask.
        if test -n "$dir_arg"; then
@@ -318,50 +334,49 @@
        fi
        posix_mkdir=false
        case $umask in
          *[123567][0-7][0-7])
            # POSIX mkdir -p sets u+wx bits regardless of umask, which
            # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
            ;;
          *)
            # $RANDOM is not portable (e.g. dash);  use it when possible to
            # lower collision chance
            tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
            trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0
    # The $RANDOM variable is not portable (e.g., dash).  Use it
    # here however when possible just to lower collision chance.
    tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
            # As "mkdir -p" follows symlinks and we work in /tmp possibly;  so
            # create the $tmpdir first (and fail if unsuccessful) to make sure
            # that nobody tries to guess the $tmpdir name.
            if (umask $mkdir_umask &&
                $mkdirprog $mkdir_mode "$tmpdir" &&
                exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
            then
              if test -z "$dir_arg" || {
                   # Check for POSIX incompatibilities with -m.
                   # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
                   # other-writable bit of parent directory when it shouldn't.
                   # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
                   test_tmpdir="$tmpdir/a"
                   ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
                   case $ls_ld_tmpdir in
                     d????-?r-*) different_mode=700;;
                     d????-?--*) different_mode=755;;
                     *) false;;
                   esac &&
                   $mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
                     ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
                     test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
                   }
                 }
              then posix_mkdir=:
              fi
              rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
            else
              # Remove any dirs left behind by ancient mkdir implementations.
              rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
            fi
            trap '' 0;;
        esac;;
    trap '
      ret=$?
      rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null
      exit $ret
    ' 0
    # Because "mkdir -p" follows existing symlinks and we likely work
    # directly in world-writeable /tmp, make sure that the '$tmpdir'
    # directory is successfully created first before we actually test
    # 'mkdir -p'.
    if (umask $mkdir_umask &&
        $mkdirprog $mkdir_mode "$tmpdir" &&
        exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
    then
      if test -z "$dir_arg" || {
           # Check for POSIX incompatibilities with -m.
           # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
           # other-writable bit of parent directory when it shouldn't.
           # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
           test_tmpdir="$tmpdir/a"
           ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
           case $ls_ld_tmpdir in
         d????-?r-*) different_mode=700;;
         d????-?--*) different_mode=755;;
         *) false;;
           esac &&
           $mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
         ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
         test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
           }
         }
      then posix_mkdir=:
      fi
      rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
    else
      # Remove any dirs left behind by ancient mkdir implementations.
      rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
    fi
    trap '' 0;;
    esac
    if
@@ -372,7 +387,7 @@
    then :
    else
      # The umask is ridiculous, or mkdir does not conform to POSIX,
      # mkdir does not conform to POSIX,
      # or it failed possibly due to a race condition.  Create the
      # directory the slow way, step by step, checking for races as we go.
@@ -401,7 +416,7 @@
          prefixes=
        else
          if $posix_mkdir; then
            (umask=$mkdir_umask &&
            (umask $mkdir_umask &&
             $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
            # Don't fail if two instances are running concurrently.
            test -d "$prefix" || exit 1
@@ -434,14 +449,25 @@
  else
    # Make a couple of temp file names in the proper directory.
    dsttmp=$dstdir/_inst.$$_
    rmtmp=$dstdir/_rm.$$_
    dsttmp=${dstdirslash}_inst.$$_
    rmtmp=${dstdirslash}_rm.$$_
    # Trap to clean up those temp files at exit.
    trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
    # Copy the file name to the temp name.
    (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
    (umask $cp_umask &&
     { test -z "$stripcmd" || {
     # Create $dsttmp read-write so that cp doesn't create it read-only,
     # which would cause strip to fail.
     if test -z "$doit"; then
       : >"$dsttmp" # No need to fork-exec 'touch'.
     else
       $doit touch "$dsttmp"
     fi
       }
     } &&
     $doit_exec $cpprog "$src" "$dsttmp") &&
    # and set any options; do chmod last to preserve setuid bits.
    #
@@ -467,6 +493,13 @@
    then
      rm -f "$dsttmp"
    else
      # If $backupsuffix is set, and the file being installed
      # already exists, attempt a backup.  Don't worry if it fails,
      # e.g., if mv doesn't support -f.
      if test -n "$backupsuffix" && test -f "$dst"; then
        $doit $mvcmd -f "$dst" "$dst$backupsuffix" 2>/dev/null
      fi
      # Rename the file to the real destination.
      $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
@@ -481,9 +514,9 @@
        # file should still install successfully.
        {
          test ! -f "$dst" ||
          $doit $rmcmd -f "$dst" 2>/dev/null ||
          $doit $rmcmd "$dst" 2>/dev/null ||
          { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
            { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
            { $doit $rmcmd "$rmtmp" 2>/dev/null; :; }
          } ||
          { echo "$0: cannot unlink or rename $dst" >&2
            (exit 1); exit 1
@@ -500,9 +533,9 @@
done
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:
m4/libtool.m4
New file
Diff too large
m4/ltoptions.m4
New file
@@ -0,0 +1,437 @@
# Helper functions for option handling.                    -*- Autoconf -*-
#
#   Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software
#   Foundation, Inc.
#   Written by Gary V. Vaughan, 2004
#
# This file is free software; the Free Software Foundation gives
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
# serial 8 ltoptions.m4
# This is to help aclocal find these macros, as it can't see m4_define.
AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
# ------------------------------------------
m4_define([_LT_MANGLE_OPTION],
[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
# ---------------------------------------
# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
# matching handler defined, dispatch to it.  Other OPTION-NAMEs are
# saved as a flag.
m4_define([_LT_SET_OPTION],
[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
        _LT_MANGLE_DEFUN([$1], [$2]),
    [m4_warning([Unknown $1 option '$2'])])[]dnl
])
# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
# ------------------------------------------------------------
# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
m4_define([_LT_IF_OPTION],
[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
# -------------------------------------------------------
# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
# are set.
m4_define([_LT_UNLESS_OPTIONS],
[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
        [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
              [m4_define([$0_found])])])[]dnl
m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
])[]dnl
])
# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
# ----------------------------------------
# OPTION-LIST is a space-separated list of Libtool options associated
# with MACRO-NAME.  If any OPTION has a matching handler declared with
# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
# the unknown option and exit.
m4_defun([_LT_SET_OPTIONS],
[# Set options
m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
    [_LT_SET_OPTION([$1], _LT_Option)])
m4_if([$1],[LT_INIT],[
  dnl
  dnl Simply set some default values (i.e off) if boolean options were not
  dnl specified:
  _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
  ])
  _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
  ])
  dnl
  dnl If no reference was made to various pairs of opposing options, then
  dnl we run the default mode handler for the pair.  For example, if neither
  dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
  dnl archives by default:
  _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
  _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
  _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
  _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
           [_LT_ENABLE_FAST_INSTALL])
  _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4],
           [_LT_WITH_AIX_SONAME([aix])])
  ])
])# _LT_SET_OPTIONS
## --------------------------------- ##
## Macros to handle LT_INIT options. ##
## --------------------------------- ##
# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
# -----------------------------------------
m4_define([_LT_MANGLE_DEFUN],
[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
# -----------------------------------------------
m4_define([LT_OPTION_DEFINE],
[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
])# LT_OPTION_DEFINE
# dlopen
# ------
LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
])
AU_DEFUN([AC_LIBTOOL_DLOPEN],
[_LT_SET_OPTION([LT_INIT], [dlopen])
AC_DIAGNOSE([obsolete],
[$0: Remove this warning and the call to _LT_SET_OPTION when you
put the 'dlopen' option into LT_INIT's first parameter.])
])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
# win32-dll
# ---------
# Declare package support for building win32 dll's.
LT_OPTION_DEFINE([LT_INIT], [win32-dll],
[enable_win32_dll=yes
case $host in
*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
  AC_CHECK_TOOL(AS, as, false)
  AC_CHECK_TOOL(DLLTOOL, dlltool, false)
  AC_CHECK_TOOL(OBJDUMP, objdump, false)
  ;;
esac
test -z "$AS" && AS=as
_LT_DECL([], [AS],      [1], [Assembler program])dnl
test -z "$DLLTOOL" && DLLTOOL=dlltool
_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
test -z "$OBJDUMP" && OBJDUMP=objdump
_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
])# win32-dll
AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
_LT_SET_OPTION([LT_INIT], [win32-dll])
AC_DIAGNOSE([obsolete],
[$0: Remove this warning and the call to _LT_SET_OPTION when you
put the 'win32-dll' option into LT_INIT's first parameter.])
])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
# _LT_ENABLE_SHARED([DEFAULT])
# ----------------------------
# implement the --enable-shared flag, and supports the 'shared' and
# 'disable-shared' LT_INIT options.
# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
m4_define([_LT_ENABLE_SHARED],
[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
AC_ARG_ENABLE([shared],
    [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
    [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
    [p=${PACKAGE-default}
    case $enableval in
    yes) enable_shared=yes ;;
    no) enable_shared=no ;;
    *)
      enable_shared=no
      # Look at the argument we got.  We use all the common list separators.
      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
      for pkg in $enableval; do
    IFS=$lt_save_ifs
    if test "X$pkg" = "X$p"; then
      enable_shared=yes
    fi
      done
      IFS=$lt_save_ifs
      ;;
    esac],
    [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
    _LT_DECL([build_libtool_libs], [enable_shared], [0],
    [Whether or not to build shared libraries])
])# _LT_ENABLE_SHARED
LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
# Old names:
AC_DEFUN([AC_ENABLE_SHARED],
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
])
AC_DEFUN([AC_DISABLE_SHARED],
[_LT_SET_OPTION([LT_INIT], [disable-shared])
])
AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AM_ENABLE_SHARED], [])
dnl AC_DEFUN([AM_DISABLE_SHARED], [])
# _LT_ENABLE_STATIC([DEFAULT])
# ----------------------------
# implement the --enable-static flag, and support the 'static' and
# 'disable-static' LT_INIT options.
# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
m4_define([_LT_ENABLE_STATIC],
[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
AC_ARG_ENABLE([static],
    [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
    [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
    [p=${PACKAGE-default}
    case $enableval in
    yes) enable_static=yes ;;
    no) enable_static=no ;;
    *)
     enable_static=no
      # Look at the argument we got.  We use all the common list separators.
      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
      for pkg in $enableval; do
    IFS=$lt_save_ifs
    if test "X$pkg" = "X$p"; then
      enable_static=yes
    fi
      done
      IFS=$lt_save_ifs
      ;;
    esac],
    [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
    _LT_DECL([build_old_libs], [enable_static], [0],
    [Whether or not to build static libraries])
])# _LT_ENABLE_STATIC
LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
# Old names:
AC_DEFUN([AC_ENABLE_STATIC],
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
])
AC_DEFUN([AC_DISABLE_STATIC],
[_LT_SET_OPTION([LT_INIT], [disable-static])
])
AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AM_ENABLE_STATIC], [])
dnl AC_DEFUN([AM_DISABLE_STATIC], [])
# _LT_ENABLE_FAST_INSTALL([DEFAULT])
# ----------------------------------
# implement the --enable-fast-install flag, and support the 'fast-install'
# and 'disable-fast-install' LT_INIT options.
# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
m4_define([_LT_ENABLE_FAST_INSTALL],
[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
AC_ARG_ENABLE([fast-install],
    [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
    [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
    [p=${PACKAGE-default}
    case $enableval in
    yes) enable_fast_install=yes ;;
    no) enable_fast_install=no ;;
    *)
      enable_fast_install=no
      # Look at the argument we got.  We use all the common list separators.
      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
      for pkg in $enableval; do
    IFS=$lt_save_ifs
    if test "X$pkg" = "X$p"; then
      enable_fast_install=yes
    fi
      done
      IFS=$lt_save_ifs
      ;;
    esac],
    [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
_LT_DECL([fast_install], [enable_fast_install], [0],
     [Whether or not to optimize for fast installation])dnl
])# _LT_ENABLE_FAST_INSTALL
LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
# Old names:
AU_DEFUN([AC_ENABLE_FAST_INSTALL],
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
AC_DIAGNOSE([obsolete],
[$0: Remove this warning and the call to _LT_SET_OPTION when you put
the 'fast-install' option into LT_INIT's first parameter.])
])
AU_DEFUN([AC_DISABLE_FAST_INSTALL],
[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
AC_DIAGNOSE([obsolete],
[$0: Remove this warning and the call to _LT_SET_OPTION when you put
the 'disable-fast-install' option into LT_INIT's first parameter.])
])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
# _LT_WITH_AIX_SONAME([DEFAULT])
# ----------------------------------
# implement the --with-aix-soname flag, and support the `aix-soname=aix'
# and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
# is either `aix', `both' or `svr4'.  If omitted, it defaults to `aix'.
m4_define([_LT_WITH_AIX_SONAME],
[m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
shared_archive_member_spec=
case $host,$enable_shared in
power*-*-aix[[5-9]]*,yes)
  AC_MSG_CHECKING([which variant of shared library versioning to provide])
  AC_ARG_WITH([aix-soname],
    [AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
      [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
    [case $withval in
    aix|svr4|both)
      ;;
    *)
      AC_MSG_ERROR([Unknown argument to --with-aix-soname])
      ;;
    esac
    lt_cv_with_aix_soname=$with_aix_soname],
    [AC_CACHE_VAL([lt_cv_with_aix_soname],
      [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
    with_aix_soname=$lt_cv_with_aix_soname])
  AC_MSG_RESULT([$with_aix_soname])
  if test aix != "$with_aix_soname"; then
    # For the AIX way of multilib, we name the shared archive member
    # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
    # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
    # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
    # the AIX toolchain works better with OBJECT_MODE set (default 32).
    if test 64 = "${OBJECT_MODE-32}"; then
      shared_archive_member_spec=shr_64
    else
      shared_archive_member_spec=shr
    fi
  fi
  ;;
*)
  with_aix_soname=aix
  ;;
esac
_LT_DECL([], [shared_archive_member_spec], [0],
    [Shared archive member basename, for filename based shared library versioning on AIX])dnl
])# _LT_WITH_AIX_SONAME
LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
# _LT_WITH_PIC([MODE])
# --------------------
# implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
# LT_INIT options.
# MODE is either 'yes' or 'no'.  If omitted, it defaults to 'both'.
m4_define([_LT_WITH_PIC],
[AC_ARG_WITH([pic],
    [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
    [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
    [lt_p=${PACKAGE-default}
    case $withval in
    yes|no) pic_mode=$withval ;;
    *)
      pic_mode=default
      # Look at the argument we got.  We use all the common list separators.
      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
      for lt_pkg in $withval; do
    IFS=$lt_save_ifs
    if test "X$lt_pkg" = "X$lt_p"; then
      pic_mode=yes
    fi
      done
      IFS=$lt_save_ifs
      ;;
    esac],
    [pic_mode=m4_default([$1], [default])])
_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
])# _LT_WITH_PIC
LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
# Old name:
AU_DEFUN([AC_LIBTOOL_PICMODE],
[_LT_SET_OPTION([LT_INIT], [pic-only])
AC_DIAGNOSE([obsolete],
[$0: Remove this warning and the call to _LT_SET_OPTION when you
put the 'pic-only' option into LT_INIT's first parameter.])
])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
## ----------------- ##
## LTDL_INIT Options ##
## ----------------- ##
m4_define([_LTDL_MODE], [])
LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
         [m4_define([_LTDL_MODE], [nonrecursive])])
LT_OPTION_DEFINE([LTDL_INIT], [recursive],
         [m4_define([_LTDL_MODE], [recursive])])
LT_OPTION_DEFINE([LTDL_INIT], [subproject],
         [m4_define([_LTDL_MODE], [subproject])])
m4_define([_LTDL_TYPE], [])
LT_OPTION_DEFINE([LTDL_INIT], [installable],
         [m4_define([_LTDL_TYPE], [installable])])
LT_OPTION_DEFINE([LTDL_INIT], [convenience],
         [m4_define([_LTDL_TYPE], [convenience])])
m4/ltsugar.m4
New file
@@ -0,0 +1,124 @@
# ltsugar.m4 -- libtool m4 base layer.                         -*-Autoconf-*-
#
# Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software
# Foundation, Inc.
# Written by Gary V. Vaughan, 2004
#
# This file is free software; the Free Software Foundation gives
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
# serial 6 ltsugar.m4
# This is to help aclocal find these macros, as it can't see m4_define.
AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
# lt_join(SEP, ARG1, [ARG2...])
# -----------------------------
# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
# associated separator.
# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
# versions in m4sugar had bugs.
m4_define([lt_join],
[m4_if([$#], [1], [],
       [$#], [2], [[$2]],
       [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
m4_define([_lt_join],
[m4_if([$#$2], [2], [],
       [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
# lt_car(LIST)
# lt_cdr(LIST)
# ------------
# Manipulate m4 lists.
# These macros are necessary as long as will still need to support
# Autoconf-2.59, which quotes differently.
m4_define([lt_car], [[$1]])
m4_define([lt_cdr],
[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
       [$#], 1, [],
       [m4_dquote(m4_shift($@))])])
m4_define([lt_unquote], $1)
# lt_append(MACRO-NAME, STRING, [SEPARATOR])
# ------------------------------------------
# Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'.
# Note that neither SEPARATOR nor STRING are expanded; they are appended
# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
# No SEPARATOR is output if MACRO-NAME was previously undefined (different
# than defined and empty).
#
# This macro is needed until we can rely on Autoconf 2.62, since earlier
# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
m4_define([lt_append],
[m4_define([$1],
       m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
# ----------------------------------------------------------
# Produce a SEP delimited list of all paired combinations of elements of
# PREFIX-LIST with SUFFIX1 through SUFFIXn.  Each element of the list
# has the form PREFIXmINFIXSUFFIXn.
# Needed until we can rely on m4_combine added in Autoconf 2.62.
m4_define([lt_combine],
[m4_if(m4_eval([$# > 3]), [1],
       [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
[[m4_foreach([_Lt_prefix], [$2],
         [m4_foreach([_Lt_suffix],
        ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
    [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
# -----------------------------------------------------------------------
# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
m4_define([lt_if_append_uniq],
[m4_ifdef([$1],
      [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
         [lt_append([$1], [$2], [$3])$4],
         [$5])],
      [lt_append([$1], [$2], [$3])$4])])
# lt_dict_add(DICT, KEY, VALUE)
# -----------------------------
m4_define([lt_dict_add],
[m4_define([$1($2)], [$3])])
# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
# --------------------------------------------
m4_define([lt_dict_add_subkey],
[m4_define([$1($2:$3)], [$4])])
# lt_dict_fetch(DICT, KEY, [SUBKEY])
# ----------------------------------
m4_define([lt_dict_fetch],
[m4_ifval([$3],
    m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
    m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
# -----------------------------------------------------------------
m4_define([lt_if_dict_fetch],
[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
    [$5],
    [$6])])
# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
# --------------------------------------------------------------
m4_define([lt_dict_filter],
[m4_if([$5], [], [],
  [lt_join(m4_quote(m4_default([$4], [[, ]])),
           lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
              [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
])
m4/ltversion.m4
New file
@@ -0,0 +1,23 @@
# ltversion.m4 -- version numbers            -*- Autoconf -*-
#
#   Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc.
#   Written by Scott James Remnant, 2004
#
# This file is free software; the Free Software Foundation gives
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
# @configure_input@
# serial 4179 ltversion.m4
# This file is part of GNU Libtool
m4_define([LT_PACKAGE_VERSION], [2.4.6])
m4_define([LT_PACKAGE_REVISION], [2.4.6])
AC_DEFUN([LTVERSION_VERSION],
[macro_version='2.4.6'
macro_revision='2.4.6'
_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
_LT_DECL(, macro_revision, 0)
])
m4/lt~obsolete.m4
New file
@@ -0,0 +1,99 @@
# lt~obsolete.m4 -- aclocal satisfying obsolete definitions.    -*-Autoconf-*-
#
#   Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software
#   Foundation, Inc.
#   Written by Scott James Remnant, 2004.
#
# This file is free software; the Free Software Foundation gives
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
# serial 5 lt~obsolete.m4
# These exist entirely to fool aclocal when bootstrapping libtool.
#
# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN),
# which have later been changed to m4_define as they aren't part of the
# exported API, or moved to Autoconf or Automake where they belong.
#
# The trouble is, aclocal is a bit thick.  It'll see the old AC_DEFUN
# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
# using a macro with the same name in our local m4/libtool.m4 it'll
# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
# and doesn't know about Autoconf macros at all.)
#
# So we provide this file, which has a silly filename so it's always
# included after everything else.  This provides aclocal with the
# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
# because those macros already exist, or will be overwritten later.
# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
#
# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
# Yes, that means every name once taken will need to remain here until
# we give up compatibility with versions before 1.7, at which point
# we need to keep only those names which we still refer to.
# This is to help aclocal find these macros, as it can't see m4_define.
AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
m4_ifndef([AC_LIBTOOL_LINKER_OPTION],    [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
m4_ifndef([AC_PROG_EGREP],        [AC_DEFUN([AC_PROG_EGREP])])
m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH],    [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
m4_ifndef([_LT_AC_SHELL_INIT],        [AC_DEFUN([_LT_AC_SHELL_INIT])])
m4_ifndef([_LT_AC_SYS_LIBPATH_AIX],    [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
m4_ifndef([_LT_PROG_LTMAIN],        [AC_DEFUN([_LT_PROG_LTMAIN])])
m4_ifndef([_LT_AC_TAGVAR],        [AC_DEFUN([_LT_AC_TAGVAR])])
m4_ifndef([AC_LTDL_ENABLE_INSTALL],    [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
m4_ifndef([AC_LTDL_PREOPEN],        [AC_DEFUN([AC_LTDL_PREOPEN])])
m4_ifndef([_LT_AC_SYS_COMPILER],    [AC_DEFUN([_LT_AC_SYS_COMPILER])])
m4_ifndef([_LT_AC_LOCK],        [AC_DEFUN([_LT_AC_LOCK])])
m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE],    [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
m4_ifndef([_LT_AC_TRY_DLOPEN_SELF],    [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
m4_ifndef([AC_LIBTOOL_PROG_CC_C_O],    [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
m4_ifndef([AC_LIBTOOL_OBJDIR],        [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
m4_ifndef([AC_LTDL_OBJDIR],        [AC_DEFUN([AC_LTDL_OBJDIR])])
m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP],    [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
m4_ifndef([AC_PATH_MAGIC],        [AC_DEFUN([AC_PATH_MAGIC])])
m4_ifndef([AC_PROG_LD_GNU],        [AC_DEFUN([AC_PROG_LD_GNU])])
m4_ifndef([AC_PROG_LD_RELOAD_FLAG],    [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
m4_ifndef([AC_DEPLIBS_CHECK_METHOD],    [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS],    [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP],    [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
m4_ifndef([LT_AC_PROG_EGREP],        [AC_DEFUN([LT_AC_PROG_EGREP])])
m4_ifndef([LT_AC_PROG_SED],        [AC_DEFUN([LT_AC_PROG_SED])])
m4_ifndef([_LT_CC_BASENAME],        [AC_DEFUN([_LT_CC_BASENAME])])
m4_ifndef([_LT_COMPILER_BOILERPLATE],    [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
m4_ifndef([_LT_LINKER_BOILERPLATE],    [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
m4_ifndef([_AC_PROG_LIBTOOL],        [AC_DEFUN([_AC_PROG_LIBTOOL])])
m4_ifndef([AC_LIBTOOL_SETUP],        [AC_DEFUN([AC_LIBTOOL_SETUP])])
m4_ifndef([_LT_AC_CHECK_DLFCN],        [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER],    [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
m4_ifndef([_LT_AC_TAGCONFIG],        [AC_DEFUN([_LT_AC_TAGCONFIG])])
m4_ifndef([AC_DISABLE_FAST_INSTALL],    [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
m4_ifndef([_LT_AC_LANG_CXX],        [AC_DEFUN([_LT_AC_LANG_CXX])])
m4_ifndef([_LT_AC_LANG_F77],        [AC_DEFUN([_LT_AC_LANG_F77])])
m4_ifndef([_LT_AC_LANG_GCJ],        [AC_DEFUN([_LT_AC_LANG_GCJ])])
m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG],    [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
m4_ifndef([_LT_AC_LANG_C_CONFIG],    [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG],    [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
m4_ifndef([_LT_AC_LANG_CXX_CONFIG],    [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG],    [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
m4_ifndef([_LT_AC_LANG_F77_CONFIG],    [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG],    [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
m4_ifndef([_LT_AC_LANG_GCJ_CONFIG],    [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG],    [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
m4_ifndef([_LT_AC_LANG_RC_CONFIG],    [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
m4_ifndef([AC_LIBTOOL_CONFIG],        [AC_DEFUN([AC_LIBTOOL_CONFIG])])
m4_ifndef([_LT_AC_FILE_LTDLL_C],    [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS],    [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
m4_ifndef([_LT_AC_PROG_CXXCPP],        [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS],    [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
m4_ifndef([_LT_PROG_ECHO_BACKSLASH],    [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
m4_ifndef([_LT_PROG_F77],        [AC_DEFUN([_LT_PROG_F77])])
m4_ifndef([_LT_PROG_FC],        [AC_DEFUN([_LT_PROG_FC])])
m4_ifndef([_LT_PROG_CXX],        [AC_DEFUN([_LT_PROG_CXX])])
missing
@@ -1,9 +1,9 @@
#! /bin/sh
# Common wrapper for a few potentially missing GNU programs.
scriptversion=2013-10-28.13; # UTC
scriptversion=2018-03-07.03; # UTC
# Copyright (C) 1996-2014 Free Software Foundation, Inc.
# Copyright (C) 1996-2021 Free Software Foundation, Inc.
# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# This program is free software; you can redistribute it and/or modify
@@ -17,7 +17,7 @@
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
# along with this program.  If not, see <https://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@@ -101,9 +101,9 @@
  exit $st
fi
perl_URL=http://www.perl.org/
flex_URL=http://flex.sourceforge.net/
gnu_software_URL=http://www.gnu.org/software
perl_URL=https://www.perl.org/
flex_URL=https://github.com/westes/flex
gnu_software_URL=https://www.gnu.org/software
program_details ()
{
@@ -207,9 +207,9 @@
exit $st
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End: