pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/net/ntp4



Module Name:    pkgsrc
Committed By:   taca
Date:           Sun Jun 21 15:10:47 UTC 2020

Modified Files:
        pkgsrc/net/ntp4: Makefile distinfo options.mk
        pkgsrc/net/ntp4/patches: patch-include-ntp__syscall.h
Added Files:
        pkgsrc/net/ntp4/patches: patch-configure patch-include_ntp__md5.h
            patch-include_ntp__request.h patch-include_refclock__atom.h
            patch-lib_isc_inet__ntop.c patch-lib_isc_unix_net.c
            patch-libntp_ntp__calendar.c patch-libntp_socktoa.c
            patch-libntp_timexsup.c patch-libntp_work__fork.c
            patch-ntpd_ntp__config.c patch-ntpd_ntp__control.c
            patch-ntpd_ntp__io.c patch-ntpd_ntp__keyword.h
            patch-ntpd_ntp__loopfilter.c patch-ntpd_ntp__proto.c
            patch-ntpd_ntp__restrict.c patch-ntpd_refclock__jjy.c
            patch-ntpd_refclock__jupiter.c patch-ntpd_refclock__neoclock4x.c
            patch-ntpd_refclock__oncore.c patch-ntpd_refclock__ulink.c
            patch-ntpd_refclock__wwvb.c patch-ntpdate_ntpdate.c
            patch-ntpdc_Makefile.in patch-ntpq_ntpq.c
            patch-sntp_libevent_build-aux_config.guess
            patch-sntp_libevent_build-aux_config.sub
            patch-sntp_libopts_autoopts.h patch-sntp_libopts_enum.c
            patch-sntp_libopts_usage.c patch-util_ntp-keygen.c
            patch-util_ntptime.c

Log Message:
net/ntp4: update to 4.2.8p14

Updaet ntp4 to 4.2.8p14.

pkgsrc changes:
* Incorporate several changes from NetBSD base.
* few pkglint fixes.

Quote from release announce:

NTP 4.2.8p14 (Harlan Stenn <stenn%ntp.org@localhost>, 2020 Mar 03)

Focus: Security, Bug fixes, enhancements.

Severity: MEDIUM

This release fixes three vulnerabilities: a bug that causes causes an ntpd
instance that is explicitly configured to override the default and allow
ntpdc (mode 7) connections to be made to a server to read some uninitialized
memory; fixes the case where an unmonitored ntpd using an unauthenticated
association to its servers may be susceptible to a forged packet DoS attack;
and fixes an attack against a client instance that uses a single
unauthenticated time source.  It also fixes 46 other bugs and addresses
4 other issues.


To generate a diff of this commit:
cvs rdiff -u -r1.103 -r1.104 pkgsrc/net/ntp4/Makefile
cvs rdiff -u -r1.30 -r1.31 pkgsrc/net/ntp4/distinfo
cvs rdiff -u -r1.3 -r1.4 pkgsrc/net/ntp4/options.mk
cvs rdiff -u -r0 -r1.4 pkgsrc/net/ntp4/patches/patch-configure
cvs rdiff -u -r1.1 -r1.2 pkgsrc/net/ntp4/patches/patch-include-ntp__syscall.h
cvs rdiff -u -r0 -r1.1 pkgsrc/net/ntp4/patches/patch-include_ntp__md5.h \
    pkgsrc/net/ntp4/patches/patch-include_ntp__request.h \
    pkgsrc/net/ntp4/patches/patch-include_refclock__atom.h \
    pkgsrc/net/ntp4/patches/patch-lib_isc_inet__ntop.c \
    pkgsrc/net/ntp4/patches/patch-lib_isc_unix_net.c \
    pkgsrc/net/ntp4/patches/patch-libntp_ntp__calendar.c \
    pkgsrc/net/ntp4/patches/patch-libntp_socktoa.c \
    pkgsrc/net/ntp4/patches/patch-libntp_timexsup.c \
    pkgsrc/net/ntp4/patches/patch-libntp_work__fork.c \
    pkgsrc/net/ntp4/patches/patch-ntpd_ntp__config.c \
    pkgsrc/net/ntp4/patches/patch-ntpd_ntp__control.c \
    pkgsrc/net/ntp4/patches/patch-ntpd_ntp__keyword.h \
    pkgsrc/net/ntp4/patches/patch-ntpd_ntp__loopfilter.c \
    pkgsrc/net/ntp4/patches/patch-ntpd_ntp__proto.c \
    pkgsrc/net/ntp4/patches/patch-ntpd_ntp__restrict.c \
    pkgsrc/net/ntp4/patches/patch-ntpd_refclock__jjy.c \
    pkgsrc/net/ntp4/patches/patch-ntpd_refclock__jupiter.c \
    pkgsrc/net/ntp4/patches/patch-ntpd_refclock__neoclock4x.c \
    pkgsrc/net/ntp4/patches/patch-ntpd_refclock__oncore.c \
    pkgsrc/net/ntp4/patches/patch-ntpd_refclock__ulink.c \
    pkgsrc/net/ntp4/patches/patch-ntpd_refclock__wwvb.c \
    pkgsrc/net/ntp4/patches/patch-ntpdate_ntpdate.c \
    pkgsrc/net/ntp4/patches/patch-ntpdc_Makefile.in \
    pkgsrc/net/ntp4/patches/patch-ntpq_ntpq.c \
    pkgsrc/net/ntp4/patches/patch-sntp_libevent_build-aux_config.guess \
    pkgsrc/net/ntp4/patches/patch-sntp_libevent_build-aux_config.sub \
    pkgsrc/net/ntp4/patches/patch-sntp_libopts_autoopts.h \
    pkgsrc/net/ntp4/patches/patch-sntp_libopts_enum.c \
    pkgsrc/net/ntp4/patches/patch-sntp_libopts_usage.c \
    pkgsrc/net/ntp4/patches/patch-util_ntp-keygen.c \
    pkgsrc/net/ntp4/patches/patch-util_ntptime.c
cvs rdiff -u -r0 -r1.3 pkgsrc/net/ntp4/patches/patch-ntpd_ntp__io.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/net/ntp4/Makefile
diff -u pkgsrc/net/ntp4/Makefile:1.103 pkgsrc/net/ntp4/Makefile:1.104
--- pkgsrc/net/ntp4/Makefile:1.103      Sat Jan 18 21:50:21 2020
+++ pkgsrc/net/ntp4/Makefile    Sun Jun 21 15:10:47 2020
@@ -1,9 +1,7 @@
-# $NetBSD: Makefile,v 1.103 2020/01/18 21:50:21 jperkin Exp $
+# $NetBSD: Makefile,v 1.104 2020/06/21 15:10:47 taca Exp $
 #
 
-DISTNAME=      ntp-4.2.8p13
-PKGNAME=       ${DISTNAME:S/-dev-/-/}
-PKGREVISION=   2
+DISTNAME=      ntp-4.2.8p14
 CATEGORIES=    net time
 MASTER_SITES=  http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/
 
@@ -42,7 +40,7 @@ post-install:
 .include "../../mk/bsd.prefs.mk"
 .include "options.mk"
 
-PLIST_VARS+=   ntpsnmpd ntptime tickadj timetrim
+PLIST_VARS+=   ntptime tickadj timetrim
 
 .if ${OPSYS} == "NetBSD" || ${OPSYS} == "FreeBSD" || ${OPSYS} == "DragonFly" || ${OPSYS} == "Linux" || ${OPSYS} == "SunOS"
 PLIST.ntptime=         yes

Index: pkgsrc/net/ntp4/distinfo
diff -u pkgsrc/net/ntp4/distinfo:1.30 pkgsrc/net/ntp4/distinfo:1.31
--- pkgsrc/net/ntp4/distinfo:1.30       Mon Mar 25 17:19:59 2019
+++ pkgsrc/net/ntp4/distinfo    Sun Jun 21 15:10:47 2020
@@ -1,8 +1,41 @@
-$NetBSD: distinfo,v 1.30 2019/03/25 17:19:59 tnn Exp $
+$NetBSD: distinfo,v 1.31 2020/06/21 15:10:47 taca Exp $
 
-SHA1 (ntp-4.2.8p13.tar.gz) = cff200a987d64e891fb349a22313ecb0feaea090
-RMD160 (ntp-4.2.8p13.tar.gz) = 5d85e2a01bafa0bb755ab49e462f6dd7f96ce3d0
-SHA512 (ntp-4.2.8p13.tar.gz) = afbdbb8a37b8f4040a8a6939a3a85ad0350d359c153c297b32b8a013c7b7061fd925fa3e6e103671c5901e169156e22497813c654195ba50f890a7170b2f2075
-Size (ntp-4.2.8p13.tar.gz) = 6949363 bytes
-SHA1 (patch-include-ntp__syscall.h) = b247569339d09a88f2e143e355033ce7635ffe92
+SHA1 (ntp-4.2.8p14.tar.gz) = c6f353278cd5b7c8aa11e1189d3ac80985370b8f
+RMD160 (ntp-4.2.8p14.tar.gz) = c49cb8138678b246661cc1afe68d38f255756a7e
+SHA512 (ntp-4.2.8p14.tar.gz) = b0183b4b2f2c6ea0a49d0aca1fa28a7b5cd21e20696a2f633f5afa37c4ea2c59fa7769af82a55c626db49b9eb5a531608710dc1977c4d518583577ef95940ae8
+Size (ntp-4.2.8p14.tar.gz) = 7007263 bytes
+SHA1 (patch-configure) = cd2b6d9353282b574eea117b4b6e391a39a6267b
+SHA1 (patch-include-ntp__syscall.h) = b0587655e707b9a2e0eb9c937be47fd27e8d5435
+SHA1 (patch-include_ntp__md5.h) = 1bde85704e539ab40133f498409294d071df0cc8
+SHA1 (patch-include_ntp__request.h) = f76caeaaed595d32f249d493571f24410170e7bd
+SHA1 (patch-include_refclock__atom.h) = 72ab4f018356a006c41d041ed064072d99e75bbb
+SHA1 (patch-lib_isc_inet__ntop.c) = 8feef4a19e7762d0739345fa45aecea5b68c834a
+SHA1 (patch-lib_isc_unix_net.c) = abbe0dbc424666ef4c564870a65155cf5d355504
+SHA1 (patch-libntp_ntp__calendar.c) = f7e6a1cd37026a51288825a8a41d6337e0e10d86
+SHA1 (patch-libntp_socktoa.c) = ff469782951666834b753a55993fdd6a2f1f4f74
+SHA1 (patch-libntp_timexsup.c) = 385461d1049611921e19e7c75b94ed2788f7b1b7
+SHA1 (patch-libntp_work__fork.c) = f46501017291a0764db2240e258ae511a55baba7
+SHA1 (patch-ntpd_ntp__config.c) = 5b2107ab8ea5cac590b897b1e6709c47bce5b5d8
+SHA1 (patch-ntpd_ntp__control.c) = 3c6267aa5c36bd1d2e0fa729be86875436812783
+SHA1 (patch-ntpd_ntp__io.c) = 0ad70fe53d3c0f779842fb71ba60b8c2cbb1e456
+SHA1 (patch-ntpd_ntp__keyword.h) = 158f7e93459ea30bbf87830b939a81071fa13eaa
+SHA1 (patch-ntpd_ntp__loopfilter.c) = 381e44622a25351c470dbc7bfaef353e47370d79
+SHA1 (patch-ntpd_ntp__proto.c) = 5e5629cc5b8dc785427bc9b267d0cac6fc7b1b39
+SHA1 (patch-ntpd_ntp__restrict.c) = b659db3d7913a72f3a36c3a33ef47cfaf4545095
+SHA1 (patch-ntpd_refclock__jjy.c) = 592d010d2e19bb47beefdcb3fe5645271e2645bb
+SHA1 (patch-ntpd_refclock__jupiter.c) = bb248d2766cadddacdf9cb56bf9b29cbc538bbcb
+SHA1 (patch-ntpd_refclock__neoclock4x.c) = 66c38ba21572cb8804a39766f3b32d1b65cb0946
+SHA1 (patch-ntpd_refclock__oncore.c) = d93efa11cadc37fd9e600f80f2cbf0280be969c6
+SHA1 (patch-ntpd_refclock__ulink.c) = 55003f758fd71621db60ffad8a1880588098389e
+SHA1 (patch-ntpd_refclock__wwvb.c) = e1a7fc80df6dba9595788a8b8c56729619048ee4
+SHA1 (patch-ntpdate_ntpdate.c) = 17e2534ab7a54e5af16059ca8c02c9995d79d83c
+SHA1 (patch-ntpdc_Makefile.in) = 6afaf915ee8c6b244f94d3733545231e69dfd14d
+SHA1 (patch-ntpq_ntpq.c) = 0776827a712e2f6636b9d322ae7445d184f3709f
+SHA1 (patch-sntp_libevent_build-aux_config.guess) = 5f5fff42d04daef5fcbba2bc09b015fb4489ca59
+SHA1 (patch-sntp_libevent_build-aux_config.sub) = 178e8b39138e49db7702c4bb84fe92550d14a978
+SHA1 (patch-sntp_libopts_autoopts.h) = d4cbaa31df97e04f3637349a3d5eb1addfa847db
+SHA1 (patch-sntp_libopts_enum.c) = 7d6624ed84a6ea6f85b4de4c37480041a7603252
+SHA1 (patch-sntp_libopts_usage.c) = ec77942c98965c13de625b930db3458d5b81d28b
 SHA1 (patch-sntp_loc_pkgsrc) = 6e46ffc0cc2afcfdc1d01297cbe04cb80d103575
+SHA1 (patch-util_ntp-keygen.c) = e66348e2fcf7da4bf9ee35e66e3f891cb436f338
+SHA1 (patch-util_ntptime.c) = 897c3986661a9e655eeb7a7eeb10816996c31301

Index: pkgsrc/net/ntp4/options.mk
diff -u pkgsrc/net/ntp4/options.mk:1.3 pkgsrc/net/ntp4/options.mk:1.4
--- pkgsrc/net/ntp4/options.mk:1.3      Sat May 14 08:13:49 2016
+++ pkgsrc/net/ntp4/options.mk  Sun Jun 21 15:10:47 2020
@@ -1,9 +1,11 @@
-# $NetBSD: options.mk,v 1.3 2016/05/14 08:13:49 bsiegert Exp $
+# $NetBSD: options.mk,v 1.4 2020/06/21 15:10:47 taca Exp $
 
 PKG_OPTIONS_VAR=       PKG_OPTIONS.ntp4
 PKG_SUPPORTED_OPTIONS= inet6 snmp
 PKG_SUGGESTED_OPTIONS=
 
+PLIST_VARS+=   ntpsnmpd
+
 .if empty(MISSING_FEATURES:Minet6)
 PKG_SUGGESTED_OPTIONS+=        inet6
 .endif
@@ -19,6 +21,7 @@ CONFIGURE_ARGS+=      --disable-ipv6
 .if !empty(PKG_OPTIONS:Msnmp)
 CONFIGURE_ARGS+=       --with-ntpsnmpd
 PLIST.ntpsnmpd=                yes
+USE_TOOLS+=            perl
 .  include "../../net/net-snmp/buildlink3.mk"
 .else
 CONFIGURE_ARGS+=       --without-ntpsnmpd

Index: pkgsrc/net/ntp4/patches/patch-include-ntp__syscall.h
diff -u pkgsrc/net/ntp4/patches/patch-include-ntp__syscall.h:1.1 pkgsrc/net/ntp4/patches/patch-include-ntp__syscall.h:1.2
--- pkgsrc/net/ntp4/patches/patch-include-ntp__syscall.h:1.1    Thu Oct 29 11:23:47 2015
+++ pkgsrc/net/ntp4/patches/patch-include-ntp__syscall.h        Sun Jun 21 15:10:47 2020
@@ -1,4 +1,6 @@
-$NetBSD: patch-include-ntp__syscall.h,v 1.1 2015/10/29 11:23:47 christos Exp $
+$NetBSD: patch-include-ntp__syscall.h,v 1.2 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
 
 --- include/ntp_syscall.h.orig 2011-03-31 10:03:53.000000000 +0000
 +++ include/ntp_syscall.h

Added files:

Index: pkgsrc/net/ntp4/patches/patch-configure
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-configure:1.4
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-configure     Sun Jun 21 15:10:47 2020
@@ -0,0 +1,15 @@
+$NetBSD: patch-configure,v 1.4 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base; add support for setproctitle(3).
+
+--- configure.orig     2020-03-04 01:40:14.000000000 +0000
++++ configure
+@@ -27148,7 +27148,7 @@ fi
+ done
+ 
+ 
+-for ac_func in fnmatch getbootfile getuid getrusage nanosleep strsignal
++for ac_func in fnmatch getbootfile getuid getrusage nanosleep strsignal setproctitle
+ do :
+   as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"

Index: pkgsrc/net/ntp4/patches/patch-include_ntp__md5.h
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-include_ntp__md5.h:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-include_ntp__md5.h    Sun Jun 21 15:10:47 2020
@@ -0,0 +1,17 @@
+$NetBSD: patch-include_ntp__md5.h,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- include/ntp_md5.h.orig     2018-08-14 11:51:07.000000000 +0000
++++ include/ntp_md5.h
+@@ -36,8 +36,8 @@
+ # define EVP_md5()                    NULL
+ # define EVP_MD_CTX_init(c)
+ # define EVP_MD_CTX_set_flags(c, f)
+-# define EVP_DigestInit(c, dt)                (MD5Init(c), 1)
+-# define EVP_DigestInit_ex(c, dt, i)  (MD5Init(c), 1)
++# define EVP_DigestInit(c, dt)                (MD5Init(c), (dt ? 1 : 1))
++# define EVP_DigestInit_ex(c, dt, i)  (MD5Init(c), (dt ? 1 : 1))
+ # define EVP_DigestUpdate(c, p, s)    MD5Update(c, (const void *)(p), \
+                                                 s)
+ # define EVP_DigestFinal(c, d, pdl)   \
Index: pkgsrc/net/ntp4/patches/patch-include_ntp__request.h
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-include_ntp__request.h:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-include_ntp__request.h        Sun Jun 21 15:10:47 2020
@@ -0,0 +1,69 @@
+$NetBSD: patch-include_ntp__request.h,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- include/ntp_request.h.orig 2020-03-03 23:41:29.000000000 +0000
++++ include/ntp_request.h
+@@ -129,6 +129,25 @@ typedef union req_data_u_tag {
+ } req_data_u;                         /* struct conf_peer must fit */
+ 
+ /*
++ * Structure for carrying system flags.
++ */
++struct conf_sys_flags {
++      u_int32 flags;
++};
++
++/*
++ * System flags we can set/clear
++ */
++#define       SYS_FLAG_BCLIENT        0x01
++#define       SYS_FLAG_PPS            0x02
++#define SYS_FLAG_NTP          0x04
++#define SYS_FLAG_KERNEL               0x08
++#define SYS_FLAG_MONITOR      0x10
++#define SYS_FLAG_FILEGEN      0x20
++#define SYS_FLAG_AUTH         0x40
++#define SYS_FLAG_CAL          0x80
++
++/*
+  * A request packet.  These are almost a fixed length.
+  */
+ struct req_pkt {
+@@ -226,8 +245,8 @@ struct resp_pkt {
+ 
+ #define       INFO_ERR(err_nitems)    ((u_short)((ntohs(err_nitems)>>12)&0xf))
+ #define       INFO_NITEMS(err_nitems) ((u_short)(ntohs(err_nitems)&0xfff))
+-#define       ERR_NITEMS(err, nitems) (htons((u_short)((((u_short)(err)<<12)&0xf000)\
+-                              |((u_short)(nitems)&0xfff))))
++#define _ERR_EN(err)          ((u_short)(((err)&0xf)<<12))
++#define       ERR_NITEMS(err, nitems) ((u_short)htons(_ERR_EN(err)|(nitems&0xfff)))
+ 
+ #define       INFO_MBZ(mbz_itemsize)  ((ntohs(mbz_itemsize)>>12)&0xf)
+ #define       INFO_ITEMSIZE(mbz_itemsize)     ((u_short)(ntohs(mbz_itemsize)&0xfff))
+@@ -629,25 +648,6 @@ struct conf_unpeer {
+ };
+ 
+ /*
+- * Structure for carrying system flags.
+- */
+-struct conf_sys_flags {
+-      u_int32 flags;
+-};
+-
+-/*
+- * System flags we can set/clear
+- */
+-#define       SYS_FLAG_BCLIENT        0x01
+-#define       SYS_FLAG_PPS            0x02
+-#define SYS_FLAG_NTP          0x04
+-#define SYS_FLAG_KERNEL               0x08
+-#define SYS_FLAG_MONITOR      0x10
+-#define SYS_FLAG_FILEGEN      0x20
+-#define SYS_FLAG_AUTH         0x40
+-#define SYS_FLAG_CAL          0x80
+-
+-/*
+  * Structure used for returning restrict entries
+  */
+ struct info_restrict {
Index: pkgsrc/net/ntp4/patches/patch-include_refclock__atom.h
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-include_refclock__atom.h:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-include_refclock__atom.h      Sun Jun 21 15:10:47 2020
@@ -0,0 +1,18 @@
+$NetBSD: patch-include_refclock__atom.h,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- include/refclock_atom.h.orig       2011-10-09 05:08:20.000000000 +0000
++++ include/refclock_atom.h
+@@ -1,8 +1,10 @@
+ /*
+  * Definitions for the atom driver and its friends
+  */
+-#undef NANOSECOND     /* some systems define it differently */
++#ifndef NANOSECOND
+ #define NANOSECOND    1000000000 /* one second (ns) */
++#endif
++#define RANGEGATE     500000  /* range gate (ns) */
+ 
+ struct refclock_atom {
+       pps_handle_t handle;
Index: pkgsrc/net/ntp4/patches/patch-lib_isc_inet__ntop.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-lib_isc_inet__ntop.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-lib_isc_inet__ntop.c  Sun Jun 21 15:10:47 2020
@@ -0,0 +1,20 @@
+$NetBSD: patch-lib_isc_inet__ntop.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- lib/isc/inet_ntop.c.orig   2015-02-28 09:44:07.000000000 +0000
++++ lib/isc/inet_ntop.c
+@@ -88,11 +88,11 @@ isc_net_ntop(int af, const void *src, ch
+ static const char *
+ inet_ntop4(const unsigned char *src, char *dst, size_t size)
+ {
+-      static const char *fmt = "%u.%u.%u.%u";
++#define       FMT "%u.%u.%u.%u"
+       char tmp[sizeof("255.255.255.255")];
+       int len;
+ 
+-      len = snprintf(tmp, sizeof(tmp), fmt, src[0], src[1], src[2], src[3]);
++      len = snprintf(tmp, sizeof(tmp), FMT, src[0], src[1], src[2], src[3]);
+       if (len < 0 || (size_t)len >= size)
+       {
+               errno = ENOSPC;
Index: pkgsrc/net/ntp4/patches/patch-lib_isc_unix_net.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-lib_isc_unix_net.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-lib_isc_unix_net.c    Sun Jun 21 15:10:47 2020
@@ -0,0 +1,20 @@
+$NetBSD: patch-lib_isc_unix_net.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- lib/isc/unix/net.c.orig    2015-02-21 10:33:37.000000000 +0000
++++ lib/isc/unix/net.c
+@@ -104,12 +104,12 @@ const struct in6_addr isc_net_in6addrloo
+ 
+ # if defined(WANT_IPV6)
+ static isc_once_t     once_ipv6only = ISC_ONCE_INIT;
+-# endif
+ 
+ # if defined(ISC_PLATFORM_HAVEIPV6) && \
+      defined(WANT_IPV6) && defined(ISC_PLATFORM_HAVEIN6PKTINFO)
+ static isc_once_t     once_ipv6pktinfo = ISC_ONCE_INIT;
+ # endif
++# endif
+ #endif /* ISC_PLATFORM_HAVEIPV6 */
+ 
+ static isc_once_t     once = ISC_ONCE_INIT;
Index: pkgsrc/net/ntp4/patches/patch-libntp_ntp__calendar.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-libntp_ntp__calendar.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-libntp_ntp__calendar.c        Sun Jun 21 15:10:47 2020
@@ -0,0 +1,19 @@
+$NetBSD: patch-libntp_ntp__calendar.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- libntp/ntp_calendar.c.orig 2020-03-03 23:41:29.000000000 +0000
++++ libntp/ntp_calendar.c
+@@ -2223,10 +2223,10 @@ ntpcal_iso8601std(
+               len = LIB_BUFLENGTH;
+       }
+       if (len) {
+-              len = snprintf(buf, len, "%04u-%02u-%02uT%02u:%02u:%02u",
++              int slen = snprintf(buf, len, "%04u-%02u-%02uT%02u:%02u:%02u",
+                              cdp->year, cdp->month, cdp->monthday,
+                              cdp->hour, cdp->minute, cdp->second);
+-              if (len < 0)
++              if (slen < 0)
+                       *buf = '\0';
+       }
+       return buf;
Index: pkgsrc/net/ntp4/patches/patch-libntp_socktoa.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-libntp_socktoa.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-libntp_socktoa.c      Sun Jun 21 15:10:47 2020
@@ -0,0 +1,17 @@
+$NetBSD: patch-libntp_socktoa.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- libntp/socktoa.c.orig      2011-11-03 10:46:37.000000000 +0000
++++ libntp/socktoa.c
+@@ -91,8 +91,8 @@ sockporttoa(
+       LIB_GETBUF(buf);
+       snprintf(buf, LIB_BUFLENGTH,
+                (IS_IPV6(sock))
+-                   ? "[%s]:%hu"
+-                   : "%s:%hu",
++                   ? "[%s]:%u"
++                   : "%s:%u",
+                atext, SRCPORT(sock));
+       errno = saved_errno;
+ 
Index: pkgsrc/net/ntp4/patches/patch-libntp_timexsup.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-libntp_timexsup.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-libntp_timexsup.c     Sun Jun 21 15:10:47 2020
@@ -0,0 +1,14 @@
+$NetBSD: patch-libntp_timexsup.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- libntp/timexsup.c.orig     2020-03-03 23:41:29.000000000 +0000
++++ libntp/timexsup.c
+@@ -11,6 +11,7 @@
+ #include <math.h>
+ 
+ #ifdef HAVE_SYS_TIMEX_H
++# include <time.h>
+ # include <sys/timex.h>
+ #endif
+ 
Index: pkgsrc/net/ntp4/patches/patch-libntp_work__fork.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-libntp_work__fork.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-libntp_work__fork.c   Sun Jun 21 15:10:47 2020
@@ -0,0 +1,58 @@
+$NetBSD: patch-libntp_work__fork.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base; add support for setproctitle(3).
+
+--- libntp/work_fork.c.orig    2019-03-09 08:15:34.000000000 +0000
++++ libntp/work_fork.c
+@@ -434,6 +434,32 @@ fork_deferred_worker(void)
+ }
+ #endif
+ 
++#if HAVE_SETPROCTITLE == 0
++static void
++setproctitle(const char *fmt, ...)
++{
++      va_list ap;
++      char b1[128];
++      int argcc, argvlen, l;
++
++      if (saved_argc == 0)
++              return;
++
++      va_start(ap, fmt);
++      vsnprintf(b1, sizeof(b1), fmt, ap);
++      va_end(ap);
++
++      /* Clear argv */
++      for (argvlen = 0, argcc = 0; argcc < saved_argc; argcc++) {
++              l = strlen(saved_argv[argcc]);
++              argvlen += l + 1;
++              memset(saved_argv[argcc], 0, l);
++      }
++      l = snprintf(saved_argv[0], argvlen, "ntpd: %s", b1);
++      for (argcc = 1; argcc < saved_argc; argcc++)
++              saved_argv[argcc] = &saved_argv[0][l];
++}
++#endif
+ 
+ static void
+ fork_blocking_child(
+@@ -545,17 +571,7 @@ fork_blocking_child(
+        * Change the process name of the child to avoid confusion
+        * about ntpd trunning twice.
+        */
+-      if (saved_argc != 0) {
+-              int argcc;
+-              int argvlen = 0;
+-              /* Clear argv */
+-              for (argcc = 0; argcc < saved_argc; argcc++) {
+-                      int l = strlen(saved_argv[argcc]);
+-                      argvlen += l + 1;
+-                      memset(saved_argv[argcc], 0, l);
+-              }
+-              strlcpy(saved_argv[0], "ntpd: asynchronous dns resolver", argvlen);
+-      }
++      setproctitle("asynchronous dns resolver");
+ 
+       /*
+        * In the child, close all files except stdin, stdout, stderr,
Index: pkgsrc/net/ntp4/patches/patch-ntpd_ntp__config.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-ntpd_ntp__config.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-ntpd_ntp__config.c    Sun Jun 21 15:10:47 2020
@@ -0,0 +1,58 @@
+$NetBSD: patch-ntpd_ntp__config.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- ntpd/ntp_config.c.orig     2020-03-04 01:38:14.000000000 +0000
++++ ntpd/ntp_config.c
+@@ -2986,7 +2986,7 @@ void
+ attrtopsl(int poll, attr_val *avp)
+ {
+ 
+-      DEBUG_INSIST((poll - 3) < sizeof psl);
++      DEBUG_INSIST((size_t)(poll - 3) < sizeof psl);
+       if (poll < 3 || poll > 17) {
+               msyslog(LOG_ERR, "attrtopsl(%d, ...): Poll value is out of range - ignoring", poll);
+       } else {
+@@ -3836,6 +3836,7 @@ config_fudge(
+       address_node *addr_node;
+       struct refclockstat clock_stat;
+       int err_flag;
++      size_t len;
+ 
+       curr_fudge = HEAD_PFIFO(ptree->fudge);
+       for (; curr_fudge != NULL; curr_fudge = curr_fudge->link) {
+@@ -3889,9 +3890,13 @@ config_fudge(
+ 
+                       case T_Refid:
+                               clock_stat.haveflags |= CLK_HAVEVAL2;
+-                              /* strncpy() does exactly what we want here: */
+-                              strncpy((char*)&clock_stat.fudgeval2,
+-                                      curr_opt->value.s, 4);
++                              /* avoid using strncpy because gcc warns */
++                              len = strlen(curr_opt->value.s);
++                              if (len > sizeof(clock_stat.fudgeval2))
++                                      len = sizeof(clock_stat.fudgeval2);
++                              clock_stat.fudgeval2 = 0;
++                              memcpy(&clock_stat.fudgeval2,
++                                  curr_opt->value.s, len);
+                               break;
+ 
+                       case T_Flag1:
+@@ -4998,7 +5003,7 @@ getconfig(
+ 
+ 
+       /*** BULK OF THE PARSER ***/
+-#ifdef DEBUG
++#if defined(DEBUG) && defined(YYDEBUG)
+       yydebug = !!(debug >= 5);
+ #endif
+       yyparse();
+@@ -5461,7 +5466,7 @@ ntp_rlimit(
+                       (int)(rl_value / rl_scale), rl_sstr));
+               rl.rlim_cur = rl.rlim_max = rl_value;
+               if (setrlimit(RLIMIT_MEMLOCK, &rl) == -1)
+-                      msyslog(LOG_ERR, "Cannot set RLIMIT_MEMLOCK: %m");
++                      msyslog(LOG_DEBUG, "Cannot set RLIMIT_MEMLOCK: %m");
+               break;
+ # endif /* RLIMIT_MEMLOCK */
+ 
Index: pkgsrc/net/ntp4/patches/patch-ntpd_ntp__control.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-ntpd_ntp__control.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-ntpd_ntp__control.c   Sun Jun 21 15:10:47 2020
@@ -0,0 +1,18 @@
+$NetBSD: patch-ntpd_ntp__control.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- ntpd/ntp_control.c.orig    2020-03-03 23:41:29.000000000 +0000
++++ ntpd/ntp_control.c
+@@ -1910,7 +1910,11 @@ ctl_putsys(
+       )
+ {
+       l_fp tmp;
++#ifndef HAVE_UNAME
+       char str[256];
++#else
++      char str[sizeof utsnamebuf.sysname + sizeof utsnamebuf.release];
++#endif
+       u_int u;
+       double kb;
+       double dtemp;
Index: pkgsrc/net/ntp4/patches/patch-ntpd_ntp__keyword.h
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-ntpd_ntp__keyword.h:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-ntpd_ntp__keyword.h   Sun Jun 21 15:10:47 2020
@@ -0,0 +1,1795 @@
+$NetBSD: patch-ntpd_ntp__keyword.h,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- ntpd/ntp_keyword.h.orig    2020-03-04 01:38:17.000000000 +0000
++++ ntpd/ntp_keyword.h
+@@ -2,224 +2,224 @@
+  * ntp_keyword.h
+  * 
+  * NOTE: edit this file with caution, it is generated by keyword-gen.c
+- *     Generated 2020-02-13 08:56:28 UTC        diff_ignore_line
++ *     Generated 2020-05-25 20:05:29 UTC        diff_ignore_line
+  *
+  */
+ #include "ntp_scanner.h"
+ #include "ntp_parser.h"
+ 
+-#define LOWEST_KEYWORD_ID 258
++#define LOWEST_KEYWORD_ID 257
+ 
+ const char * const keyword_text[209] = {
+-      /* 0       258             T_Abbrev */  "abbrev",
+-      /* 1       259                T_Age */  "age",
+-      /* 2       260                T_All */  "all",
+-      /* 3       261              T_Allan */  "allan",
+-      /* 4       262           T_Allpeers */  "allpeers",
+-      /* 5       263               T_Auth */  "auth",
+-      /* 6       264            T_Autokey */  "autokey",
+-      /* 7       265            T_Automax */  "automax",
+-      /* 8       266            T_Average */  "average",
+-      /* 9       267           T_Basedate */  "basedate",
+-      /* 10      268            T_Bclient */  "bclient",
+-      /* 11      269        T_Bcpollbstep */  "bcpollbstep",
+-      /* 12      270             T_Beacon */  "beacon",
+-      /* 13      271          T_Broadcast */  "broadcast",
+-      /* 14      272    T_Broadcastclient */  "broadcastclient",
+-      /* 15      273     T_Broadcastdelay */  "broadcastdelay",
+-      /* 16      274              T_Burst */  "burst",
+-      /* 17      275          T_Calibrate */  "calibrate",
+-      /* 18      276            T_Ceiling */  "ceiling",
+-      /* 19      277          T_Checkhash */  "checkhash",
+-      /* 20      278         T_Clockstats */  "clockstats",
+-      /* 21      279             T_Cohort */  "cohort",
+-      /* 22      280         T_ControlKey */  "controlkey",
+-      /* 23      281             T_Crypto */  "crypto",
+-      /* 24      282        T_Cryptostats */  "cryptostats",
+-      /* 25      283                T_Ctl */  "ctl",
+-      /* 26      284                T_Day */  "day",
+-      /* 27      285            T_Default */  "default",
+-      /* 28      286             T_Digest */  "digest",
+-      /* 29      287            T_Disable */  "disable",
+-      /* 30      288            T_Discard */  "discard",
+-      /* 31      289         T_Dispersion */  "dispersion",
+-      /* 32      290             T_Double */  NULL,
+-      /* 33      291          T_Driftfile */  "driftfile",
+-      /* 34      292               T_Drop */  "drop",
+-      /* 35      293               T_Dscp */  "dscp",
+-      /* 36      294           T_Ellipsis */  "...",
+-      /* 37      295             T_Enable */  "enable",
+-      /* 38      296                T_End */  "end",
+-      /* 39      297              T_Epeer */  "epeer",
+-      /* 40      298              T_False */  NULL,
+-      /* 41      299               T_File */  "file",
+-      /* 42      300            T_Filegen */  "filegen",
+-      /* 43      301            T_Filenum */  "filenum",
+-      /* 44      302              T_Flag1 */  "flag1",
+-      /* 45      303              T_Flag2 */  "flag2",
+-      /* 46      304              T_Flag3 */  "flag3",
+-      /* 47      305              T_Flag4 */  "flag4",
+-      /* 48      306              T_Flake */  "flake",
+-      /* 49      307              T_Floor */  "floor",
+-      /* 50      308               T_Freq */  "freq",
+-      /* 51      309              T_Fudge */  "fudge",
+-      /* 52      310               T_Fuzz */  "fuzz",
+-      /* 53      311               T_Host */  "host",
+-      /* 54      312           T_Huffpuff */  "huffpuff",
+-      /* 55      313             T_Iburst */  "iburst",
+-      /* 56      314              T_Ident */  "ident",
+-      /* 57      315             T_Ignore */  "ignore",
+-      /* 58      316         T_Ignorehash */  "ignorehash",
+-      /* 59      317           T_Incalloc */  "incalloc",
+-      /* 60      318             T_Incmem */  "incmem",
+-      /* 61      319          T_Initalloc */  "initalloc",
+-      /* 62      320            T_Initmem */  "initmem",
+-      /* 63      321        T_Includefile */  "includefile",
+-      /* 64      322            T_Integer */  NULL,
+-      /* 65      323          T_Interface */  "interface",
+-      /* 66      324           T_Intrange */  NULL,
+-      /* 67      325                 T_Io */  "io",
+-      /* 68      326        T_Ippeerlimit */  "ippeerlimit",
+-      /* 69      327               T_Ipv4 */  "ipv4",
+-      /* 70      328          T_Ipv4_flag */  "-4",
+-      /* 71      329               T_Ipv6 */  "ipv6",
+-      /* 72      330          T_Ipv6_flag */  "-6",
+-      /* 73      331             T_Kernel */  "kernel",
+-      /* 74      332                T_Key */  "key",
+-      /* 75      333               T_Keys */  "keys",
+-      /* 76      334            T_Keysdir */  "keysdir",
+-      /* 77      335                T_Kod */  "kod",
+-      /* 78      336           T_Leapfile */  "leapfile",
+-      /* 79      337  T_Leapsmearinterval */  "leapsmearinterval",
+-      /* 80      338            T_Limited */  "limited",
+-      /* 81      339               T_Link */  "link",
+-      /* 82      340             T_Listen */  "listen",
+-      /* 83      341          T_Logconfig */  "logconfig",
+-      /* 84      342            T_Logfile */  "logfile",
+-      /* 85      343          T_Loopstats */  "loopstats",
+-      /* 86      344        T_Lowpriotrap */  "lowpriotrap",
+-      /* 87      345     T_Manycastclient */  "manycastclient",
+-      /* 88      346     T_Manycastserver */  "manycastserver",
+-      /* 89      347               T_Mask */  "mask",
+-      /* 90      348             T_Maxage */  "maxage",
+-      /* 91      349           T_Maxclock */  "maxclock",
+-      /* 92      350           T_Maxdepth */  "maxdepth",
+-      /* 93      351            T_Maxdist */  "maxdist",
+-      /* 94      352             T_Maxmem */  "maxmem",
+-      /* 95      353            T_Maxpoll */  "maxpoll",
+-      /* 96      354          T_Mdnstries */  "mdnstries",
+-      /* 97      355                T_Mem */  "mem",
+-      /* 98      356            T_Memlock */  "memlock",
+-      /* 99      357           T_Minclock */  "minclock",
+-      /* 100     358           T_Mindepth */  "mindepth",
+-      /* 101     359            T_Mindist */  "mindist",
+-      /* 102     360            T_Minimum */  "minimum",
+-      /* 103     361          T_Minjitter */  "minjitter",
+-      /* 104     362            T_Minpoll */  "minpoll",
+-      /* 105     363            T_Minsane */  "minsane",
+-      /* 106     364               T_Mode */  "mode",
+-      /* 107     365              T_Mode7 */  "mode7",
+-      /* 108     366            T_Monitor */  "monitor",
+-      /* 109     367              T_Month */  "month",
+-      /* 110     368                T_Mru */  "mru",
+-      /* 111     369             T_Mssntp */  "mssntp",
+-      /* 112     370    T_Multicastclient */  "multicastclient",
+-      /* 113     371                T_Nic */  "nic",
+-      /* 114     372             T_Nolink */  "nolink",
+-      /* 115     373           T_Nomodify */  "nomodify",
+-      /* 116     374          T_Nomrulist */  "nomrulist",
+-      /* 117     375               T_None */  "none",
+-      /* 118     376        T_Nonvolatile */  "nonvolatile",
+-      /* 119     377            T_Noepeer */  "noepeer",
+-      /* 120     378             T_Nopeer */  "nopeer",
+-      /* 121     379            T_Noquery */  "noquery",
+-      /* 122     380           T_Noselect */  "noselect",
+-      /* 123     381            T_Noserve */  "noserve",
+-      /* 124     382             T_Notrap */  "notrap",
+-      /* 125     383            T_Notrust */  "notrust",
+-      /* 126     384                T_Ntp */  "ntp",
+-      /* 127     385            T_Ntpport */  "ntpport",
+-      /* 128     386     T_NtpSignDsocket */  "ntpsigndsocket",
+-      /* 129     387             T_Orphan */  "orphan",
+-      /* 130     388         T_Orphanwait */  "orphanwait",
+-      /* 131     389          T_PCEdigest */  "peer_clear_digest_early",
+-      /* 132     390              T_Panic */  "panic",
+-      /* 133     391               T_Peer */  "peer",
+-      /* 134     392          T_Peerstats */  "peerstats",
+-      /* 135     393              T_Phone */  "phone",
+-      /* 136     394                T_Pid */  "pid",
+-      /* 137     395            T_Pidfile */  "pidfile",
+-      /* 138     396               T_Poll */  "poll",
+-      /* 139     397       T_PollSkewList */  "pollskewlist",
+-      /* 140     398               T_Pool */  "pool",
+-      /* 141     399               T_Port */  "port",
+-      /* 142     400            T_Preempt */  "preempt",
+-      /* 143     401             T_Prefer */  "prefer",
+-      /* 144     402         T_Protostats */  "protostats",
+-      /* 145     403                 T_Pw */  "pw",
+-      /* 146     404           T_Randfile */  "randfile",
+-      /* 147     405           T_Rawstats */  "rawstats",
+-      /* 148     406              T_Refid */  "refid",
+-      /* 149     407         T_Requestkey */  "requestkey",
+-      /* 150     408              T_Reset */  "reset",
+-      /* 151     409           T_Restrict */  "restrict",
+-      /* 152     410             T_Revoke */  "revoke",
+-      /* 153     411             T_Rlimit */  "rlimit",
+-      /* 154     412      T_Saveconfigdir */  "saveconfigdir",
+-      /* 155     413             T_Server */  "server",
+-      /* 156     414     T_Serverresponse */  "serverresponse",
+-      /* 157     415 T_ServerresponseFuzz */  NULL,
+-      /* 158     416             T_Setvar */  "setvar",
+-      /* 159     417             T_Source */  "source",
+-      /* 160     418          T_Stacksize */  "stacksize",
+-      /* 161     419         T_Statistics */  "statistics",
+-      /* 162     420              T_Stats */  "stats",
+-      /* 163     421           T_Statsdir */  "statsdir",
+-      /* 164     422               T_Step */  "step",
+-      /* 165     423           T_Stepback */  "stepback",
+-      /* 166     424            T_Stepfwd */  "stepfwd",
+-      /* 167     425            T_Stepout */  "stepout",
+-      /* 168     426            T_Stratum */  "stratum",
+-      /* 169     427             T_String */  NULL,
+-      /* 170     428                T_Sys */  "sys",
+-      /* 171     429           T_Sysstats */  "sysstats",
+-      /* 172     430               T_Tick */  "tick",
+-      /* 173     431              T_Time1 */  "time1",
+-      /* 174     432              T_Time2 */  "time2",
+-      /* 175     433              T_Timer */  "timer",
+-      /* 176     434        T_Timingstats */  "timingstats",
+-      /* 177     435             T_Tinker */  "tinker",
+-      /* 178     436                T_Tos */  "tos",
+-      /* 179     437               T_Trap */  "trap",
+-      /* 180     438               T_True */  "true",
+-      /* 181     439         T_Trustedkey */  "trustedkey",
+-      /* 182     440                T_Ttl */  "ttl",
+-      /* 183     441               T_Type */  "type",
+-      /* 184     442              T_U_int */  NULL,
+-      /* 185     443           T_UEcrypto */  "unpeer_crypto_early",
+-      /* 186     444        T_UEcryptonak */  "unpeer_crypto_nak_early",
+-      /* 187     445           T_UEdigest */  "unpeer_digest_early",
+-      /* 188     446           T_Unconfig */  "unconfig",
+-      /* 189     447             T_Unpeer */  "unpeer",
+-      /* 190     448            T_Version */  "version",
+-      /* 191     449    T_WanderThreshold */  NULL,
+-      /* 192     450               T_Week */  "week",
+-      /* 193     451           T_Wildcard */  "wildcard",
+-      /* 194     452             T_Xleave */  "xleave",
+-      /* 195     453           T_Xmtnonce */  "xmtnonce",
+-      /* 196     454               T_Year */  "year",
+-      /* 197     455               T_Flag */  NULL,
+-      /* 198     456                T_EOC */  NULL,
+-      /* 199     457           T_Simulate */  "simulate",
+-      /* 200     458         T_Beep_Delay */  "beep_delay",
+-      /* 201     459       T_Sim_Duration */  "simulation_duration",
+-      /* 202     460      T_Server_Offset */  "server_offset",
+-      /* 203     461           T_Duration */  "duration",
+-      /* 204     462        T_Freq_Offset */  "freq_offset",
+-      /* 205     463             T_Wander */  "wander",
+-      /* 206     464             T_Jitter */  "jitter",
+-      /* 207     465         T_Prop_Delay */  "prop_delay",
+-      /* 208     466         T_Proc_Delay */  "proc_delay"
++      /* 0       257                  257 */  "abbrev",
++      /* 1       258                  258 */  "age",
++      /* 2       259                  259 */  "all",
++      /* 3       260                  260 */  "allan",
++      /* 4       261                  261 */  "allpeers",
++      /* 5       262                  262 */  "auth",
++      /* 6       263                  263 */  "autokey",
++      /* 7       264                  264 */  "automax",
++      /* 8       265                  265 */  "average",
++      /* 9       266                  266 */  "basedate",
++      /* 10      267                  267 */  "bclient",
++      /* 11      268                  268 */  "bcpollbstep",
++      /* 12      269                  269 */  "beacon",
++      /* 13      270                  270 */  "broadcast",
++      /* 14      271                  271 */  "broadcastclient",
++      /* 15      272                  272 */  "broadcastdelay",
++      /* 16      273                  273 */  "burst",
++      /* 17      274                  274 */  "calibrate",
++      /* 18      275                  275 */  "ceiling",
++      /* 19      276                  276 */  "checkhash",
++      /* 20      277                  277 */  "clockstats",
++      /* 21      278                  278 */  "cohort",
++      /* 22      279                  279 */  "controlkey",
++      /* 23      280                  280 */  "crypto",
++      /* 24      281                  281 */  "cryptostats",
++      /* 25      282                  282 */  "ctl",
++      /* 26      283                  283 */  "day",
++      /* 27      284                  284 */  "default",
++      /* 28      285                  285 */  "digest",
++      /* 29      286                  286 */  "disable",
++      /* 30      287                  287 */  "discard",
++      /* 31      288                  288 */  "dispersion",
++      /* 32      289                  289 */  NULL,
++      /* 33      290                  290 */  "driftfile",
++      /* 34      291                  291 */  "drop",
++      /* 35      292                  292 */  "dscp",
++      /* 36      293                  293 */  "...",
++      /* 37      294                  294 */  "enable",
++      /* 38      295                  295 */  "end",
++      /* 39      296                  296 */  "epeer",
++      /* 40      297                  297 */  NULL,
++      /* 41      298                  298 */  "file",
++      /* 42      299                  299 */  "filegen",
++      /* 43      300                  300 */  "filenum",
++      /* 44      301                  301 */  "flag1",
++      /* 45      302                  302 */  "flag2",
++      /* 46      303                  303 */  "flag3",
++      /* 47      304                  304 */  "flag4",
++      /* 48      305                  305 */  "flake",
++      /* 49      306                  306 */  "floor",
++      /* 50      307                  307 */  "freq",
++      /* 51      308                  308 */  "fudge",
++      /* 52      309                  309 */  "fuzz",
++      /* 53      310                  310 */  "host",
++      /* 54      311                  311 */  "huffpuff",
++      /* 55      312                  312 */  "iburst",
++      /* 56      313                  313 */  "ident",
++      /* 57      314                  314 */  "ignore",
++      /* 58      315                  315 */  "ignorehash",
++      /* 59      316                  316 */  "incalloc",
++      /* 60      317                  317 */  "incmem",
++      /* 61      318                  318 */  "initalloc",
++      /* 62      319                  319 */  "initmem",
++      /* 63      320                  320 */  "includefile",
++      /* 64      321                  321 */  NULL,
++      /* 65      322                  322 */  "interface",
++      /* 66      323                  323 */  NULL,
++      /* 67      324                  324 */  "io",
++      /* 68      325                  325 */  "ippeerlimit",
++      /* 69      326                  326 */  "ipv4",
++      /* 70      327                  327 */  "-4",
++      /* 71      328                  328 */  "ipv6",
++      /* 72      329                  329 */  "-6",
++      /* 73      330                  330 */  "kernel",
++      /* 74      331                  331 */  "key",
++      /* 75      332                  332 */  "keys",
++      /* 76      333                  333 */  "keysdir",
++      /* 77      334                  334 */  "kod",
++      /* 78      335                  335 */  "leapfile",
++      /* 79      336                  336 */  "leapsmearinterval",
++      /* 80      337                  337 */  "limited",
++      /* 81      338                  338 */  "link",
++      /* 82      339                  339 */  "listen",
++      /* 83      340                  340 */  "logconfig",
++      /* 84      341                  341 */  "logfile",
++      /* 85      342                  342 */  "loopstats",
++      /* 86      343                  343 */  "lowpriotrap",
++      /* 87      344                  344 */  "manycastclient",
++      /* 88      345                  345 */  "manycastserver",
++      /* 89      346                  346 */  "mask",
++      /* 90      347                  347 */  "maxage",
++      /* 91      348                  348 */  "maxclock",
++      /* 92      349                  349 */  "maxdepth",
++      /* 93      350                  350 */  "maxdist",
++      /* 94      351                  351 */  "maxmem",
++      /* 95      352                  352 */  "maxpoll",
++      /* 96      353                  353 */  "mdnstries",
++      /* 97      354                  354 */  "mem",
++      /* 98      355                  355 */  "memlock",
++      /* 99      356                  356 */  "minclock",
++      /* 100     357                  357 */  "mindepth",
++      /* 101     358                  358 */  "mindist",
++      /* 102     359                  359 */  "minimum",
++      /* 103     360                  360 */  "minjitter",
++      /* 104     361                  361 */  "minpoll",
++      /* 105     362                  362 */  "minsane",
++      /* 106     363                  363 */  "mode",
++      /* 107     364                  364 */  "mode7",
++      /* 108     365                  365 */  "monitor",
++      /* 109     366                  366 */  "month",
++      /* 110     367                  367 */  "mru",
++      /* 111     368                  368 */  "mssntp",
++      /* 112     369                  369 */  "multicastclient",
++      /* 113     370                  370 */  "nic",
++      /* 114     371                  371 */  "nolink",
++      /* 115     372                  372 */  "nomodify",
++      /* 116     373                  373 */  "nomrulist",
++      /* 117     374                  374 */  "none",
++      /* 118     375                  375 */  "nonvolatile",
++      /* 119     376                  376 */  "noepeer",
++      /* 120     377                  377 */  "nopeer",
++      /* 121     378                  378 */  "noquery",
++      /* 122     379                  379 */  "noselect",
++      /* 123     380                  380 */  "noserve",
++      /* 124     381                  381 */  "notrap",
++      /* 125     382                  382 */  "notrust",
++      /* 126     383                  383 */  "ntp",
++      /* 127     384                  384 */  "ntpport",
++      /* 128     385                  385 */  "ntpsigndsocket",
++      /* 129     386                  386 */  "orphan",
++      /* 130     387                  387 */  "orphanwait",
++      /* 131     388                  388 */  "peer_clear_digest_early",
++      /* 132     389                  389 */  "panic",
++      /* 133     390                  390 */  "peer",
++      /* 134     391                  391 */  "peerstats",
++      /* 135     392                  392 */  "phone",
++      /* 136     393                  393 */  "pid",
++      /* 137     394                  394 */  "pidfile",
++      /* 138     395                  395 */  "poll",
++      /* 139     396                  396 */  "pollskewlist",
++      /* 140     397                  397 */  "pool",
++      /* 141     398                  398 */  "port",
++      /* 142     399                  399 */  "preempt",
++      /* 143     400                  400 */  "prefer",
++      /* 144     401                  401 */  "protostats",
++      /* 145     402                  402 */  "pw",
++      /* 146     403                  403 */  "randfile",
++      /* 147     404                  404 */  "rawstats",
++      /* 148     405                  405 */  "refid",
++      /* 149     406                  406 */  "requestkey",
++      /* 150     407                  407 */  "reset",
++      /* 151     408                  408 */  "restrict",
++      /* 152     409                  409 */  "revoke",
++      /* 153     410                  410 */  "rlimit",
++      /* 154     411                  411 */  "saveconfigdir",
++      /* 155     412                  412 */  "server",
++      /* 156     413                  413 */  "serverresponse",
++      /* 157     414                  414 */  NULL,
++      /* 158     415                  415 */  "setvar",
++      /* 159     416                  416 */  "source",
++      /* 160     417                  417 */  "stacksize",
++      /* 161     418                  418 */  "statistics",
++      /* 162     419                  419 */  "stats",
++      /* 163     420                  420 */  "statsdir",
++      /* 164     421                  421 */  "step",
++      /* 165     422                  422 */  "stepback",
++      /* 166     423                  423 */  "stepfwd",
++      /* 167     424                  424 */  "stepout",
++      /* 168     425                  425 */  "stratum",
++      /* 169     426                  426 */  NULL,
++      /* 170     427                  427 */  "sys",
++      /* 171     428                  428 */  "sysstats",
++      /* 172     429                  429 */  "tick",
++      /* 173     430                  430 */  "time1",
++      /* 174     431                  431 */  "time2",
++      /* 175     432                  432 */  "timer",
++      /* 176     433                  433 */  "timingstats",
++      /* 177     434                  434 */  "tinker",
++      /* 178     435                  435 */  "tos",
++      /* 179     436                  436 */  "trap",
++      /* 180     437                  437 */  "true",
++      /* 181     438                  438 */  "trustedkey",
++      /* 182     439                  439 */  "ttl",
++      /* 183     440                  440 */  "type",
++      /* 184     441                  441 */  NULL,
++      /* 185     442                  442 */  "unpeer_crypto_early",
++      /* 186     443                  443 */  "unpeer_crypto_nak_early",
++      /* 187     444                  444 */  "unpeer_digest_early",
++      /* 188     445                  445 */  "unconfig",
++      /* 189     446                  446 */  "unpeer",
++      /* 190     447                  447 */  "version",
++      /* 191     448                  448 */  NULL,
++      /* 192     449                  449 */  "week",
++      /* 193     450                  450 */  "wildcard",
++      /* 194     451                  451 */  "xleave",
++      /* 195     452                  452 */  "xmtnonce",
++      /* 196     453                  453 */  "year",
++      /* 197     454                  454 */  NULL,
++      /* 198     455                  455 */  NULL,
++      /* 199     456                  456 */  "simulate",
++      /* 200     457                  457 */  "beep_delay",
++      /* 201     458                  458 */  "simulation_duration",
++      /* 202     459                  459 */  "server_offset",
++      /* 203     460                  460 */  "duration",
++      /* 204     461                  461 */  "freq_offset",
++      /* 205     462                  462 */  "wander",
++      /* 206     463                  463 */  "jitter",
++      /* 207     464                  464 */  "prop_delay",
++      /* 208     465                  465 */  "proc_delay"
+ };
+ 
+ #define SCANNER_INIT_S 985
+@@ -227,45 +227,45 @@ const char * const keyword_text[209] = {
+ const scan_state sst[988] = {
+ /*SS_T( ch,   f-by, match, other ),                            */
+   0,                                /*     0                   */
+-  S_ST( '-',  3,      330,     0 ), /*     1                   */
++  S_ST( '-',  3,      329,     0 ), /*     1                   */
+   S_ST( '.',  3,        3,     1 ), /*     2                   */
+-  S_ST( '.',  3,      294,     0 ), /*     3 .                 */
++  S_ST( '.',  3,      293,     0 ), /*     3 .                 */
+   S_ST( 'a',  3,       23,     2 ), /*     4                   */
+   S_ST( 'b',  3,        6,     0 ), /*     5 a                 */
+   S_ST( 'b',  3,        7,     0 ), /*     6 ab                */
+   S_ST( 'r',  3,        8,     0 ), /*     7 abb               */
+-  S_ST( 'e',  3,      258,     0 ), /*     8 abbr              */
+-  S_ST( 'g',  3,      259,     5 ), /*     9 a                 */
+-  S_ST( 'l',  3,      260,     9 ), /*    10 a                 */
+-  S_ST( 'a',  3,      261,     0 ), /*    11 all               */
++  S_ST( 'e',  3,      257,     0 ), /*     8 abbr              */
++  S_ST( 'g',  3,      258,     5 ), /*     9 a                 */
++  S_ST( 'l',  3,      259,     9 ), /*    10 a                 */
++  S_ST( 'a',  3,      260,     0 ), /*    11 all               */
+   S_ST( 'p',  3,       13,    11 ), /*    12 all               */
+   S_ST( 'e',  3,       14,     0 ), /*    13 allp              */
+   S_ST( 'e',  3,       15,     0 ), /*    14 allpe             */
+-  S_ST( 'r',  3,      262,     0 ), /*    15 allpee            */
++  S_ST( 'r',  3,      261,     0 ), /*    15 allpee            */
+   S_ST( 'u',  3,       17,    10 ), /*    16 a                 */
+   S_ST( 't',  3,       18,     0 ), /*    17 au                */
+-  S_ST( 'o',  3,       21,   263 ), /*    18 aut               */
++  S_ST( 'o',  3,       21,   262 ), /*    18 aut               */
+   S_ST( 'k',  3,       20,     0 ), /*    19 auto              */
+-  S_ST( 'e',  3,      264,     0 ), /*    20 autok             */
++  S_ST( 'e',  3,      263,     0 ), /*    20 autok             */
+   S_ST( 'm',  3,       22,    19 ), /*    21 auto              */
+-  S_ST( 'a',  3,      265,     0 ), /*    22 autom             */
++  S_ST( 'a',  3,      264,     0 ), /*    22 autom             */
+   S_ST( 'v',  3,       24,    16 ), /*    23 a                 */
+   S_ST( 'e',  3,       25,     0 ), /*    24 av                */
+   S_ST( 'r',  3,       26,     0 ), /*    25 ave               */
+   S_ST( 'a',  3,       27,     0 ), /*    26 aver              */
+-  S_ST( 'g',  3,      266,     0 ), /*    27 avera             */
++  S_ST( 'g',  3,      265,     0 ), /*    27 avera             */
+   S_ST( 'b',  3,       75,     4 ), /*    28                   */
+   S_ST( 'a',  3,       30,     0 ), /*    29 b                 */
+   S_ST( 's',  3,       31,     0 ), /*    30 ba                */
+   S_ST( 'e',  3,       32,     0 ), /*    31 bas               */
+   S_ST( 'd',  3,       33,     0 ), /*    32 base              */
+   S_ST( 'a',  3,       34,     0 ), /*    33 based             */
+-  S_ST( 't',  3,      267,     0 ), /*    34 baseda            */
++  S_ST( 't',  3,      266,     0 ), /*    34 baseda            */
+   S_ST( 'c',  3,       40,    29 ), /*    35 b                 */
+   S_ST( 'l',  3,       37,     0 ), /*    36 bc                */
+   S_ST( 'i',  3,       38,     0 ), /*    37 bcl               */
+   S_ST( 'e',  3,       39,     0 ), /*    38 bcli              */
+-  S_ST( 'n',  3,      268,     0 ), /*    39 bclie             */
++  S_ST( 'n',  3,      267,     0 ), /*    39 bclie             */
+   S_ST( 'p',  3,       41,    36 ), /*    40 bc                */
+   S_ST( 'o',  3,       42,     0 ), /*    41 bcp               */
+   S_ST( 'l',  3,       43,     0 ), /*    42 bcpo              */
+@@ -273,37 +273,37 @@ const scan_state sst[988] = {
+   S_ST( 'b',  3,       45,     0 ), /*    44 bcpoll            */
+   S_ST( 's',  3,       46,     0 ), /*    45 bcpollb           */
+   S_ST( 't',  3,       47,     0 ), /*    46 bcpollbs          */
+-  S_ST( 'e',  3,      269,     0 ), /*    47 bcpollbst         */
++  S_ST( 'e',  3,      268,     0 ), /*    47 bcpollbst         */
+   S_ST( 'e',  3,       52,    35 ), /*    48 b                 */
+   S_ST( 'a',  3,       50,     0 ), /*    49 be                */
+   S_ST( 'c',  3,       51,     0 ), /*    50 bea               */
+-  S_ST( 'o',  3,      270,     0 ), /*    51 beac              */
++  S_ST( 'o',  3,      269,     0 ), /*    51 beac              */
+   S_ST( 'e',  3,       53,    49 ), /*    52 be                */
+   S_ST( 'p',  3,       54,     0 ), /*    53 bee               */
+   S_ST( '_',  3,       55,     0 ), /*    54 beep              */
+   S_ST( 'd',  3,       56,     0 ), /*    55 beep_             */
+   S_ST( 'e',  3,       57,     0 ), /*    56 beep_d            */
+   S_ST( 'l',  3,       58,     0 ), /*    57 beep_de           */
+-  S_ST( 'a',  3,      458,     0 ), /*    58 beep_del          */
++  S_ST( 'a',  3,      457,     0 ), /*    58 beep_del          */
+   S_ST( 'r',  3,       60,    48 ), /*    59 b                 */
+   S_ST( 'o',  3,       61,     0 ), /*    60 br                */
+   S_ST( 'a',  3,       62,     0 ), /*    61 bro               */
+   S_ST( 'd',  3,       63,     0 ), /*    62 broa              */
+   S_ST( 'c',  3,       64,     0 ), /*    63 broad             */
+   S_ST( 'a',  3,       65,     0 ), /*    64 broadc            */
+-  S_ST( 's',  3,      271,     0 ), /*    65 broadca           */
++  S_ST( 's',  3,      270,     0 ), /*    65 broadca           */
+   S_ST( 'c',  3,       67,     0 ), /*    66 broadcast         */
+   S_ST( 'l',  3,       68,     0 ), /*    67 broadcastc        */
+   S_ST( 'i',  3,       69,     0 ), /*    68 broadcastcl       */
+   S_ST( 'e',  3,       70,     0 ), /*    69 broadcastcli      */
+-  S_ST( 'n',  3,      272,     0 ), /*    70 broadcastclie     */
++  S_ST( 'n',  3,      271,     0 ), /*    70 broadcastclie     */
+   S_ST( 'd',  3,       72,    66 ), /*    71 broadcast         */
+   S_ST( 'e',  3,       73,     0 ), /*    72 broadcastd        */
+   S_ST( 'l',  3,       74,     0 ), /*    73 broadcastde       */
+-  S_ST( 'a',  3,      273,     0 ), /*    74 broadcastdel      */
++  S_ST( 'a',  3,      272,     0 ), /*    74 broadcastdel      */
+   S_ST( 'u',  3,       76,    59 ), /*    75 b                 */
+   S_ST( 'r',  3,       77,     0 ), /*    76 bu                */
+-  S_ST( 's',  3,      274,     0 ), /*    77 bur               */
++  S_ST( 's',  3,      273,     0 ), /*    77 bur               */
+   S_ST( 'c',  3,      125,    28 ), /*    78                   */
+   S_ST( 'a',  3,       80,     0 ), /*    79 c                 */
+   S_ST( 'l',  3,       81,     0 ), /*    80 ca                */
+@@ -311,19 +311,19 @@ const scan_state sst[988] = {
+   S_ST( 'b',  3,       83,     0 ), /*    82 cali              */
+   S_ST( 'r',  3,       84,     0 ), /*    83 calib             */
+   S_ST( 'a',  3,       85,     0 ), /*    84 calibr            */
+-  S_ST( 't',  3,      275,     0 ), /*    85 calibra           */
++  S_ST( 't',  3,      274,     0 ), /*    85 calibra           */
+   S_ST( 'e',  3,       87,    79 ), /*    86 c                 */
+   S_ST( 'i',  3,       88,     0 ), /*    87 ce                */
+   S_ST( 'l',  3,       89,     0 ), /*    88 cei               */
+   S_ST( 'i',  3,       90,     0 ), /*    89 ceil              */
+-  S_ST( 'n',  3,      276,     0 ), /*    90 ceili             */
++  S_ST( 'n',  3,      275,     0 ), /*    90 ceili             */
+   S_ST( 'h',  3,       92,    86 ), /*    91 c                 */
+   S_ST( 'e',  3,       93,     0 ), /*    92 ch                */
+   S_ST( 'c',  3,       94,     0 ), /*    93 che               */
+   S_ST( 'k',  3,       95,     0 ), /*    94 chec              */
+   S_ST( 'h',  3,       96,     0 ), /*    95 check             */
+   S_ST( 'a',  3,       97,     0 ), /*    96 checkh            */
+-  S_ST( 's',  3,      277,     0 ), /*    97 checkha           */
++  S_ST( 's',  3,      276,     0 ), /*    97 checkha           */
+   S_ST( 'l',  3,       99,    91 ), /*    98 c                 */
+   S_ST( 'o',  3,      100,     0 ), /*    99 cl                */
+   S_ST( 'c',  3,      101,     0 ), /*   100 clo               */
+@@ -331,382 +331,382 @@ const scan_state sst[988] = {
+   S_ST( 's',  3,      103,     0 ), /*   102 clock             */
+   S_ST( 't',  3,      104,     0 ), /*   103 clocks            */
+   S_ST( 'a',  3,      105,     0 ), /*   104 clockst           */
+-  S_ST( 't',  3,      278,     0 ), /*   105 clocksta          */
++  S_ST( 't',  3,      277,     0 ), /*   105 clocksta          */
+   S_ST( 'o',  3,      110,    98 ), /*   106 c                 */
+   S_ST( 'h',  3,      108,     0 ), /*   107 co                */
+   S_ST( 'o',  3,      109,     0 ), /*   108 coh               */
+-  S_ST( 'r',  3,      279,     0 ), /*   109 coho              */
++  S_ST( 'r',  3,      278,     0 ), /*   109 coho              */
+   S_ST( 'n',  3,      111,   107 ), /*   110 co                */
+   S_ST( 't',  3,      112,     0 ), /*   111 con               */
+   S_ST( 'r',  3,      113,     0 ), /*   112 cont              */
+   S_ST( 'o',  3,      114,     0 ), /*   113 contr             */
+   S_ST( 'l',  3,      115,     0 ), /*   114 contro            */
+   S_ST( 'k',  3,      116,     0 ), /*   115 control           */
+-  S_ST( 'e',  3,      280,     0 ), /*   116 controlk          */
++  S_ST( 'e',  3,      279,     0 ), /*   116 controlk          */
+   S_ST( 'r',  3,      118,   106 ), /*   117 c                 */
+   S_ST( 'y',  3,      119,     0 ), /*   118 cr                */
+   S_ST( 'p',  3,      120,     0 ), /*   119 cry               */
+-  S_ST( 't',  3,      281,     0 ), /*   120 cryp              */
++  S_ST( 't',  3,      280,     0 ), /*   120 cryp              */
+   S_ST( 's',  3,      122,     0 ), /*   121 crypto            */
+   S_ST( 't',  3,      123,     0 ), /*   122 cryptos           */
+   S_ST( 'a',  3,      124,     0 ), /*   123 cryptost          */
+-  S_ST( 't',  3,      282,     0 ), /*   124 cryptosta         */
+-  S_ST( 't',  3,      283,   117 ), /*   125 c                 */
++  S_ST( 't',  3,      281,     0 ), /*   124 cryptosta         */
++  S_ST( 't',  3,      282,   117 ), /*   125 c                 */
+   S_ST( 'd',  3,      160,    78 ), /*   126                   */
+-  S_ST( 'a',  3,      284,     0 ), /*   127 d                 */
++  S_ST( 'a',  3,      283,     0 ), /*   127 d                 */
+   S_ST( 'e',  3,      129,   127 ), /*   128 d                 */
+   S_ST( 'f',  3,      130,     0 ), /*   129 de                */
+   S_ST( 'a',  3,      131,     0 ), /*   130 def               */
+   S_ST( 'u',  3,      132,     0 ), /*   131 defa              */
+-  S_ST( 'l',  3,      285,     0 ), /*   132 defau             */
++  S_ST( 'l',  3,      284,     0 ), /*   132 defau             */
+   S_ST( 'i',  3,      137,   128 ), /*   133 d                 */
+   S_ST( 'g',  3,      135,     0 ), /*   134 di                */
+   S_ST( 'e',  3,      136,     0 ), /*   135 dig               */
+-  S_ST( 's',  3,      286,     0 ), /*   136 dige              */
++  S_ST( 's',  3,      285,     0 ), /*   136 dige              */
+   S_ST( 's',  3,      144,   134 ), /*   137 di                */
+   S_ST( 'a',  3,      139,     0 ), /*   138 dis               */
+   S_ST( 'b',  3,      140,     0 ), /*   139 disa              */
+-  S_ST( 'l',  3,      287,     0 ), /*   140 disab             */
++  S_ST( 'l',  3,      286,     0 ), /*   140 disab             */
+   S_ST( 'c',  3,      142,   138 ), /*   141 dis               */
+   S_ST( 'a',  3,      143,     0 ), /*   142 disc              */
+-  S_ST( 'r',  3,      288,     0 ), /*   143 disca             */
++  S_ST( 'r',  3,      287,     0 ), /*   143 disca             */
+   S_ST( 'p',  3,      145,   141 ), /*   144 dis               */
+   S_ST( 'e',  3,      146,     0 ), /*   145 disp              */
+   S_ST( 'r',  3,      147,     0 ), /*   146 dispe             */
+   S_ST( 's',  3,      148,     0 ), /*   147 disper            */
+   S_ST( 'i',  3,      149,     0 ), /*   148 dispers           */
+-  S_ST( 'o',  3,      289,     0 ), /*   149 dispersi          */
++  S_ST( 'o',  3,      288,     0 ), /*   149 dispersi          */
+   S_ST( 'r',  3,      157,   133 ), /*   150 d                 */
+   S_ST( 'i',  3,      152,     0 ), /*   151 dr                */
+   S_ST( 'f',  3,      153,     0 ), /*   152 dri               */
+   S_ST( 't',  3,      154,     0 ), /*   153 drif              */
+   S_ST( 'f',  3,      155,     0 ), /*   154 drift             */
+   S_ST( 'i',  3,      156,     0 ), /*   155 driftf            */
+-  S_ST( 'l',  3,      291,     0 ), /*   156 driftfi           */
+-  S_ST( 'o',  3,      292,   151 ), /*   157 dr                */
++  S_ST( 'l',  3,      290,     0 ), /*   156 driftfi           */
++  S_ST( 'o',  3,      291,   151 ), /*   157 dr                */
+   S_ST( 's',  3,      159,   150 ), /*   158 d                 */
+-  S_ST( 'c',  3,      293,     0 ), /*   159 ds                */
++  S_ST( 'c',  3,      292,     0 ), /*   159 ds                */
+   S_ST( 'u',  3,      161,   158 ), /*   160 d                 */
+   S_ST( 'r',  3,      162,     0 ), /*   161 du                */
+   S_ST( 'a',  3,      163,     0 ), /*   162 dur               */
+   S_ST( 't',  3,      164,     0 ), /*   163 dura              */
+   S_ST( 'i',  3,      165,     0 ), /*   164 durat             */
+-  S_ST( 'o',  3,      461,     0 ), /*   165 durati            */
++  S_ST( 'o',  3,      460,     0 ), /*   165 durati            */
+   S_ST( 'e',  3,      171,   126 ), /*   166                   */
+-  S_ST( 'n',  3,      296,     0 ), /*   167 e                 */
++  S_ST( 'n',  3,      295,     0 ), /*   167 e                 */
+   S_ST( 'a',  3,      169,     0 ), /*   168 en                */
+   S_ST( 'b',  3,      170,     0 ), /*   169 ena               */
+-  S_ST( 'l',  3,      295,     0 ), /*   170 enab              */
++  S_ST( 'l',  3,      294,     0 ), /*   170 enab              */
+   S_ST( 'p',  3,      172,   167 ), /*   171 e                 */
+   S_ST( 'e',  3,      173,     0 ), /*   172 ep                */
+-  S_ST( 'e',  3,      297,     0 ), /*   173 epe               */
++  S_ST( 'e',  3,      296,     0 ), /*   173 epe               */
+   S_ST( 'f',  3,      195,   166 ), /*   174                   */
+   S_ST( 'i',  3,      176,     0 ), /*   175 f                 */
+-  S_ST( 'l',  3,      299,     0 ), /*   176 fi                */
++  S_ST( 'l',  3,      298,     0 ), /*   176 fi                */
+   S_ST( 'g',  3,      178,     0 ), /*   177 file              */
+-  S_ST( 'e',  3,      300,     0 ), /*   178 fileg             */
++  S_ST( 'e',  3,      299,     0 ), /*   178 fileg             */
+   S_ST( 'n',  3,      180,   177 ), /*   179 file              */
+-  S_ST( 'u',  3,      301,     0 ), /*   180 filen             */
++  S_ST( 'u',  3,      300,     0 ), /*   180 filen             */
+   S_ST( 'l',  3,      185,   175 ), /*   181 f                 */
+   S_ST( 'a',  3,      184,     0 ), /*   182 fl                */
+-  S_ST( 'g',  3,      305,     0 ), /*   183 fla               */
+-  S_ST( 'k',  3,      306,   183 ), /*   184 fla               */
++  S_ST( 'g',  3,      304,     0 ), /*   183 fla               */
++  S_ST( 'k',  3,      305,   183 ), /*   184 fla               */
+   S_ST( 'o',  3,      186,   182 ), /*   185 fl                */
+-  S_ST( 'o',  3,      307,     0 ), /*   186 flo               */
++  S_ST( 'o',  3,      306,     0 ), /*   186 flo               */
+   S_ST( 'r',  3,      188,   181 ), /*   187 f                 */
+-  S_ST( 'e',  3,      308,     0 ), /*   188 fr                */
++  S_ST( 'e',  3,      307,     0 ), /*   188 fr                */
+   S_ST( '_',  3,      190,     0 ), /*   189 freq              */
+   S_ST( 'o',  3,      191,     0 ), /*   190 freq_             */
+   S_ST( 'f',  3,      192,     0 ), /*   191 freq_o            */
+   S_ST( 'f',  3,      193,     0 ), /*   192 freq_of           */
+   S_ST( 's',  3,      194,     0 ), /*   193 freq_off          */
+-  S_ST( 'e',  3,      462,     0 ), /*   194 freq_offs         */
++  S_ST( 'e',  3,      461,     0 ), /*   194 freq_offs         */
+   S_ST( 'u',  3,      198,   187 ), /*   195 f                 */
+   S_ST( 'd',  3,      197,     0 ), /*   196 fu                */
+-  S_ST( 'g',  3,      309,     0 ), /*   197 fud               */
+-  S_ST( 'z',  3,      310,   196 ), /*   198 fu                */
++  S_ST( 'g',  3,      308,     0 ), /*   197 fud               */
++  S_ST( 'z',  3,      309,   196 ), /*   198 fu                */
+   S_ST( 'h',  3,      202,   174 ), /*   199                   */
+   S_ST( 'o',  3,      201,     0 ), /*   200 h                 */
+-  S_ST( 's',  3,      311,     0 ), /*   201 ho                */
++  S_ST( 's',  3,      310,     0 ), /*   201 ho                */
+   S_ST( 'u',  3,      203,   200 ), /*   202 h                 */
+   S_ST( 'f',  3,      204,     0 ), /*   203 hu                */
+   S_ST( 'f',  3,      205,     0 ), /*   204 huf               */
+   S_ST( 'p',  3,      206,     0 ), /*   205 huff              */
+   S_ST( 'u',  3,      207,     0 ), /*   206 huffp             */
+-  S_ST( 'f',  3,      312,     0 ), /*   207 huffpu            */
++  S_ST( 'f',  3,      311,     0 ), /*   207 huffpu            */
+   S_ST( 'i',  3,      252,   199 ), /*   208                   */
+   S_ST( 'b',  3,      210,     0 ), /*   209 i                 */
+   S_ST( 'u',  3,      211,     0 ), /*   210 ib                */
+   S_ST( 'r',  3,      212,     0 ), /*   211 ibu               */
+-  S_ST( 's',  3,      313,     0 ), /*   212 ibur              */
++  S_ST( 's',  3,      312,     0 ), /*   212 ibur              */
+   S_ST( 'd',  3,      214,   209 ), /*   213 i                 */
+   S_ST( 'e',  3,      215,     0 ), /*   214 id                */
+-  S_ST( 'n',  3,      314,     0 ), /*   215 ide               */
++  S_ST( 'n',  3,      313,     0 ), /*   215 ide               */
+   S_ST( 'g',  3,      217,   213 ), /*   216 i                 */
+   S_ST( 'n',  3,      218,     0 ), /*   217 ig                */
+   S_ST( 'o',  3,      219,     0 ), /*   218 ign               */
+-  S_ST( 'r',  3,      315,     0 ), /*   219 igno              */
++  S_ST( 'r',  3,      314,     0 ), /*   219 igno              */
+   S_ST( 'h',  3,      221,     0 ), /*   220 ignore            */
+   S_ST( 'a',  3,      222,     0 ), /*   221 ignoreh           */
+-  S_ST( 's',  3,      316,     0 ), /*   222 ignoreha          */
++  S_ST( 's',  3,      315,     0 ), /*   222 ignoreha          */
+   S_ST( 'n',  3,      246,   216 ), /*   223 i                 */
+   S_ST( 'c',  3,      236,     0 ), /*   224 in                */
+   S_ST( 'a',  3,      226,     0 ), /*   225 inc               */
+   S_ST( 'l',  3,      227,     0 ), /*   226 inca              */
+   S_ST( 'l',  3,      228,     0 ), /*   227 incal             */
+-  S_ST( 'o',  3,      317,     0 ), /*   228 incall            */
++  S_ST( 'o',  3,      316,     0 ), /*   228 incall            */
+   S_ST( 'l',  3,      230,   225 ), /*   229 inc               */
+   S_ST( 'u',  3,      231,     0 ), /*   230 incl              */
+   S_ST( 'd',  3,      232,     0 ), /*   231 inclu             */
+   S_ST( 'e',  3,      233,     0 ), /*   232 includ            */
+   S_ST( 'f',  3,      234,     0 ), /*   233 include           */
+   S_ST( 'i',  3,      235,     0 ), /*   234 includef          */
+-  S_ST( 'l',  3,      321,     0 ), /*   235 includefi         */
++  S_ST( 'l',  3,      320,     0 ), /*   235 includefi         */
+   S_ST( 'm',  3,      237,   229 ), /*   236 inc               */
+-  S_ST( 'e',  3,      318,     0 ), /*   237 incm              */
++  S_ST( 'e',  3,      317,     0 ), /*   237 incm              */
+   S_ST( 'i',  3,      239,   224 ), /*   238 in                */
+   S_ST( 't',  3,      244,     0 ), /*   239 ini               */
+   S_ST( 'a',  3,      241,     0 ), /*   240 init              */
+   S_ST( 'l',  3,      242,     0 ), /*   241 inita             */
+   S_ST( 'l',  3,      243,     0 ), /*   242 inital            */
+-  S_ST( 'o',  3,      319,     0 ), /*   243 initall           */
++  S_ST( 'o',  3,      318,     0 ), /*   243 initall           */
+   S_ST( 'm',  3,      245,   240 ), /*   244 init              */
+-  S_ST( 'e',  3,      320,     0 ), /*   245 initm             */
++  S_ST( 'e',  3,      319,     0 ), /*   245 initm             */
+   S_ST( 't',  3,      247,   238 ), /*   246 in                */
+   S_ST( 'e',  3,      248,     0 ), /*   247 int               */
+   S_ST( 'r',  3,      249,     0 ), /*   248 inte              */
+   S_ST( 'f',  3,      250,     0 ), /*   249 inter             */
+   S_ST( 'a',  3,      251,     0 ), /*   250 interf            */
+-  S_ST( 'c',  3,      323,     0 ), /*   251 interfa           */
+-  S_ST( 'p',  3,      324,   325 ), /*   252 i                 */
++  S_ST( 'c',  3,      322,     0 ), /*   251 interfa           */
++  S_ST( 'p',  3,      414,   324 ), /*   252 i                 */
+   S_ST( 'p',  3,      254,     0 ), /*   253 ip                */
+   S_ST( 'e',  3,      255,     0 ), /*   254 ipp               */
+   S_ST( 'e',  3,      256,     0 ), /*   255 ippe              */
+-  S_ST( 'r',  3,      257,     0 ), /*   256 ippee             */
+-  S_ST( 'l',  3,      290,     0 ), /*   257 ippeer            */
+-  S_ST( 'v',  1,        0,     0 ), /*   258 T_Abbrev          */
+-  S_ST( 'e',  0,        0,     0 ), /*   259 T_Age             */
+-  S_ST( 'l',  0,       12,     0 ), /*   260 T_All             */
+-  S_ST( 'n',  0,        0,     0 ), /*   261 T_Allan           */
+-  S_ST( 's',  0,        0,     0 ), /*   262 T_Allpeers        */
+-  S_ST( 'h',  0,        0,     0 ), /*   263 T_Auth            */
+-  S_ST( 'y',  0,        0,     0 ), /*   264 T_Autokey         */
+-  S_ST( 'x',  0,        0,     0 ), /*   265 T_Automax         */
+-  S_ST( 'e',  0,        0,     0 ), /*   266 T_Average         */
+-  S_ST( 'e',  1,        0,     0 ), /*   267 T_Basedate        */
+-  S_ST( 't',  0,        0,     0 ), /*   268 T_Bclient         */
+-  S_ST( 'p',  0,        0,     0 ), /*   269 T_Bcpollbstep     */
+-  S_ST( 'n',  0,        0,     0 ), /*   270 T_Beacon          */
+-  S_ST( 't',  1,       71,     0 ), /*   271 T_Broadcast       */
+-  S_ST( 't',  0,        0,     0 ), /*   272 T_Broadcastclient */
+-  S_ST( 'y',  0,        0,     0 ), /*   273 T_Broadcastdelay  */
+-  S_ST( 't',  0,        0,     0 ), /*   274 T_Burst           */
+-  S_ST( 'e',  0,        0,     0 ), /*   275 T_Calibrate       */
+-  S_ST( 'g',  0,        0,     0 ), /*   276 T_Ceiling         */
+-  S_ST( 'h',  0,        0,     0 ), /*   277 T_Checkhash       */
+-  S_ST( 's',  0,        0,     0 ), /*   278 T_Clockstats      */
+-  S_ST( 't',  0,        0,     0 ), /*   279 T_Cohort          */
+-  S_ST( 'y',  0,        0,     0 ), /*   280 T_ControlKey      */
+-  S_ST( 'o',  0,      121,     0 ), /*   281 T_Crypto          */
+-  S_ST( 's',  0,        0,     0 ), /*   282 T_Cryptostats     */
+-  S_ST( 'l',  0,        0,     0 ), /*   283 T_Ctl             */
+-  S_ST( 'y',  0,        0,     0 ), /*   284 T_Day             */
+-  S_ST( 't',  0,        0,     0 ), /*   285 T_Default         */
+-  S_ST( 't',  1,        0,     0 ), /*   286 T_Digest          */
+-  S_ST( 'e',  0,        0,     0 ), /*   287 T_Disable         */
+-  S_ST( 'd',  0,        0,     0 ), /*   288 T_Discard         */
+-  S_ST( 'n',  0,        0,     0 ), /*   289 T_Dispersion      */
+-  S_ST( 'i',  3,      298,     0 ), /*   290 ippeerl           */
+-  S_ST( 'e',  1,        0,     0 ), /*   291 T_Driftfile       */
+-  S_ST( 'p',  0,        0,     0 ), /*   292 T_Drop            */
+-  S_ST( 'p',  0,        0,     0 ), /*   293 T_Dscp            */
+-  S_ST( '.',  0,        0,     0 ), /*   294 T_Ellipsis        */
+-  S_ST( 'e',  0,        0,     0 ), /*   295 T_Enable          */
+-  S_ST( 'd',  0,        0,   168 ), /*   296 T_End             */
+-  S_ST( 'r',  0,        0,     0 ), /*   297 T_Epeer           */
+-  S_ST( 'm',  3,      322,     0 ), /*   298 ippeerli          */
+-  S_ST( 'e',  1,      179,     0 ), /*   299 T_File            */
+-  S_ST( 'n',  0,        0,     0 ), /*   300 T_Filegen         */
+-  S_ST( 'm',  0,        0,     0 ), /*   301 T_Filenum         */
+-  S_ST( '1',  0,        0,     0 ), /*   302 T_Flag1           */
+-  S_ST( '2',  0,        0,   302 ), /*   303 T_Flag2           */
+-  S_ST( '3',  0,        0,   303 ), /*   304 T_Flag3           */
+-  S_ST( '4',  0,        0,   304 ), /*   305 T_Flag4           */
+-  S_ST( 'e',  0,        0,     0 ), /*   306 T_Flake           */
+-  S_ST( 'r',  0,        0,     0 ), /*   307 T_Floor           */
+-  S_ST( 'q',  0,      189,     0 ), /*   308 T_Freq            */
+-  S_ST( 'e',  1,        0,     0 ), /*   309 T_Fudge           */
+-  S_ST( 'z',  0,        0,     0 ), /*   310 T_Fuzz            */
+-  S_ST( 't',  1,        0,     0 ), /*   311 T_Host            */
+-  S_ST( 'f',  0,        0,     0 ), /*   312 T_Huffpuff        */
+-  S_ST( 't',  0,        0,     0 ), /*   313 T_Iburst          */
+-  S_ST( 't',  1,        0,     0 ), /*   314 T_Ident           */
+-  S_ST( 'e',  0,      220,     0 ), /*   315 T_Ignore          */
+-  S_ST( 'h',  0,        0,     0 ), /*   316 T_Ignorehash      */
+-  S_ST( 'c',  0,        0,     0 ), /*   317 T_Incalloc        */
+-  S_ST( 'm',  0,        0,     0 ), /*   318 T_Incmem          */
+-  S_ST( 'c',  0,        0,     0 ), /*   319 T_Initalloc       */
+-  S_ST( 'm',  0,        0,     0 ), /*   320 T_Initmem         */
+-  S_ST( 'e',  1,        0,     0 ), /*   321 T_Includefile     */
+-  S_ST( 'i',  3,      326,     0 ), /*   322 ippeerlim         */
+-  S_ST( 'e',  0,        0,     0 ), /*   323 T_Interface       */
+-  S_ST( 'v',  3,      329,   253 ), /*   324 ip                */
+-  S_ST( 'o',  0,        0,   223 ), /*   325 T_Io              */
+-  S_ST( 't',  0,        0,     0 ), /*   326 T_Ippeerlimit     */
+-  S_ST( '4',  0,        0,     0 ), /*   327 T_Ipv4            */
+-  S_ST( '4',  0,        0,     0 ), /*   328 T_Ipv4_flag       */
+-  S_ST( '6',  0,        0,   327 ), /*   329 T_Ipv6            */
+-  S_ST( '6',  0,        0,   328 ), /*   330 T_Ipv6_flag       */
+-  S_ST( 'l',  0,        0,     0 ), /*   331 T_Kernel          */
+-  S_ST( 'y',  0,      333,   468 ), /*   332 T_Key             */
+-  S_ST( 's',  1,      471,     0 ), /*   333 T_Keys            */
+-  S_ST( 'r',  1,        0,     0 ), /*   334 T_Keysdir         */
+-  S_ST( 'd',  0,        0,     0 ), /*   335 T_Kod             */
+-  S_ST( 'e',  1,        0,     0 ), /*   336 T_Leapfile        */
+-  S_ST( 'l',  0,        0,     0 ), /*   337 T_Leapsmearinterval */
+-  S_ST( 'd',  0,        0,     0 ), /*   338 T_Limited         */
+-  S_ST( 'k',  0,        0,     0 ), /*   339 T_Link            */
+-  S_ST( 'n',  0,        0,     0 ), /*   340 T_Listen          */
+-  S_ST( 'g',  2,        0,     0 ), /*   341 T_Logconfig       */
+-  S_ST( 'e',  1,        0,     0 ), /*   342 T_Logfile         */
+-  S_ST( 's',  0,        0,     0 ), /*   343 T_Loopstats       */
+-  S_ST( 'p',  0,        0,     0 ), /*   344 T_Lowpriotrap     */
+-  S_ST( 't',  1,        0,     0 ), /*   345 T_Manycastclient  */
+-  S_ST( 'r',  2,        0,     0 ), /*   346 T_Manycastserver  */
+-  S_ST( 'k',  0,        0,     0 ), /*   347 T_Mask            */
+-  S_ST( 'e',  0,        0,     0 ), /*   348 T_Maxage          */
+-  S_ST( 'k',  0,        0,     0 ), /*   349 T_Maxclock        */
+-  S_ST( 'h',  0,        0,     0 ), /*   350 T_Maxdepth        */
+-  S_ST( 't',  0,        0,     0 ), /*   351 T_Maxdist         */
+-  S_ST( 'm',  0,        0,     0 ), /*   352 T_Maxmem          */
+-  S_ST( 'l',  0,        0,     0 ), /*   353 T_Maxpoll         */
+-  S_ST( 's',  0,        0,     0 ), /*   354 T_Mdnstries       */
+-  S_ST( 'm',  0,      571,     0 ), /*   355 T_Mem             */
+-  S_ST( 'k',  0,        0,     0 ), /*   356 T_Memlock         */
+-  S_ST( 'k',  0,        0,     0 ), /*   357 T_Minclock        */
+-  S_ST( 'h',  0,        0,     0 ), /*   358 T_Mindepth        */
+-  S_ST( 't',  0,        0,     0 ), /*   359 T_Mindist         */
+-  S_ST( 'm',  0,        0,     0 ), /*   360 T_Minimum         */
+-  S_ST( 'r',  0,        0,     0 ), /*   361 T_Minjitter       */
+-  S_ST( 'l',  0,        0,     0 ), /*   362 T_Minpoll         */
+-  S_ST( 'e',  0,        0,     0 ), /*   363 T_Minsane         */
+-  S_ST( 'e',  0,      365,     0 ), /*   364 T_Mode            */
+-  S_ST( '7',  0,        0,     0 ), /*   365 T_Mode7           */
+-  S_ST( 'r',  0,        0,     0 ), /*   366 T_Monitor         */
+-  S_ST( 'h',  0,        0,     0 ), /*   367 T_Month           */
+-  S_ST( 'u',  0,        0,     0 ), /*   368 T_Mru             */
+-  S_ST( 'p',  0,        0,     0 ), /*   369 T_Mssntp          */
+-  S_ST( 't',  2,        0,     0 ), /*   370 T_Multicastclient */
+-  S_ST( 'c',  0,        0,     0 ), /*   371 T_Nic             */
+-  S_ST( 'k',  0,        0,     0 ), /*   372 T_Nolink          */
+-  S_ST( 'y',  0,        0,     0 ), /*   373 T_Nomodify        */
+-  S_ST( 't',  0,        0,     0 ), /*   374 T_Nomrulist       */
+-  S_ST( 'e',  0,        0,     0 ), /*   375 T_None            */
+-  S_ST( 'e',  0,        0,     0 ), /*   376 T_Nonvolatile     */
+-  S_ST( 'r',  0,        0,     0 ), /*   377 T_Noepeer         */
+-  S_ST( 'r',  0,        0,     0 ), /*   378 T_Nopeer          */
+-  S_ST( 'y',  0,        0,     0 ), /*   379 T_Noquery         */
+-  S_ST( 't',  0,        0,     0 ), /*   380 T_Noselect        */
+-  S_ST( 'e',  0,        0,     0 ), /*   381 T_Noserve         */
+-  S_ST( 'p',  0,        0,     0 ), /*   382 T_Notrap          */
+-  S_ST( 't',  0,        0,     0 ), /*   383 T_Notrust         */
+-  S_ST( 'p',  0,      676,     0 ), /*   384 T_Ntp             */
+-  S_ST( 't',  0,        0,     0 ), /*   385 T_Ntpport         */
+-  S_ST( 't',  1,        0,     0 ), /*   386 T_NtpSignDsocket  */
+-  S_ST( 'n',  0,      691,     0 ), /*   387 T_Orphan          */
+-  S_ST( 't',  0,        0,     0 ), /*   388 T_Orphanwait      */
+-  S_ST( 'y',  0,        0,     0 ), /*   389 T_PCEdigest       */
+-  S_ST( 'c',  0,        0,     0 ), /*   390 T_Panic           */
+-  S_ST( 'r',  1,      718,     0 ), /*   391 T_Peer            */
+-  S_ST( 's',  0,        0,     0 ), /*   392 T_Peerstats       */
+-  S_ST( 'e',  2,        0,     0 ), /*   393 T_Phone           */
+-  S_ST( 'd',  0,      726,     0 ), /*   394 T_Pid             */
+-  S_ST( 'e',  1,        0,     0 ), /*   395 T_Pidfile         */
+-  S_ST( 'l',  0,      731,     0 ), /*   396 T_Poll            */
+-  S_ST( 't',  0,        0,     0 ), /*   397 T_PollSkewList    */
+-  S_ST( 'l',  1,        0,     0 ), /*   398 T_Pool            */
+-  S_ST( 't',  0,        0,     0 ), /*   399 T_Port            */
+-  S_ST( 't',  0,        0,     0 ), /*   400 T_Preempt         */
+-  S_ST( 'r',  0,        0,     0 ), /*   401 T_Prefer          */
+-  S_ST( 's',  0,        0,     0 ), /*   402 T_Protostats      */
+-  S_ST( 'w',  1,        0,   740 ), /*   403 T_Pw              */
+-  S_ST( 'e',  1,        0,     0 ), /*   404 T_Randfile        */
+-  S_ST( 's',  0,        0,     0 ), /*   405 T_Rawstats        */
+-  S_ST( 'd',  1,        0,     0 ), /*   406 T_Refid           */
+-  S_ST( 'y',  0,        0,     0 ), /*   407 T_Requestkey      */
+-  S_ST( 't',  0,        0,     0 ), /*   408 T_Reset           */
+-  S_ST( 't',  0,        0,     0 ), /*   409 T_Restrict        */
+-  S_ST( 'e',  0,        0,     0 ), /*   410 T_Revoke          */
+-  S_ST( 't',  0,        0,     0 ), /*   411 T_Rlimit          */
+-  S_ST( 'r',  1,        0,     0 ), /*   412 T_Saveconfigdir   */
+-  S_ST( 'r',  1,      823,     0 ), /*   413 T_Server          */
+-  S_ST( 'e',  0,        0,     0 ), /*   414 T_Serverresponse  */
+-  S_ST( 'j',  3,      427,   208 ), /*   415                   */
+-  S_ST( 'r',  1,        0,     0 ), /*   416 T_Setvar          */
+-  S_ST( 'e',  0,        0,     0 ), /*   417 T_Source          */
+-  S_ST( 'e',  0,        0,     0 ), /*   418 T_Stacksize       */
+-  S_ST( 's',  0,        0,     0 ), /*   419 T_Statistics      */
+-  S_ST( 's',  0,      867,   862 ), /*   420 T_Stats           */
+-  S_ST( 'r',  1,        0,     0 ), /*   421 T_Statsdir        */
+-  S_ST( 'p',  0,      875,     0 ), /*   422 T_Step            */
+-  S_ST( 'k',  0,        0,     0 ), /*   423 T_Stepback        */
+-  S_ST( 'd',  0,        0,     0 ), /*   424 T_Stepfwd         */
+-  S_ST( 't',  0,        0,     0 ), /*   425 T_Stepout         */
+-  S_ST( 'm',  0,        0,     0 ), /*   426 T_Stratum         */
+-  S_ST( 'i',  3,      442,     0 ), /*   427 j                 */
+-  S_ST( 's',  0,      882,     0 ), /*   428 T_Sys             */
+-  S_ST( 's',  0,        0,     0 ), /*   429 T_Sysstats        */
+-  S_ST( 'k',  0,        0,     0 ), /*   430 T_Tick            */
+-  S_ST( '1',  0,        0,     0 ), /*   431 T_Time1           */
+-  S_ST( '2',  0,        0,   431 ), /*   432 T_Time2           */
+-  S_ST( 'r',  0,        0,   432 ), /*   433 T_Timer           */
+-  S_ST( 's',  0,        0,     0 ), /*   434 T_Timingstats     */
+-  S_ST( 'r',  0,        0,     0 ), /*   435 T_Tinker          */
+-  S_ST( 's',  0,        0,     0 ), /*   436 T_Tos             */
+-  S_ST( 'p',  1,        0,     0 ), /*   437 T_Trap            */
+-  S_ST( 'e',  0,        0,     0 ), /*   438 T_True            */
+-  S_ST( 'y',  0,        0,     0 ), /*   439 T_Trustedkey      */
+-  S_ST( 'l',  0,        0,     0 ), /*   440 T_Ttl             */
+-  S_ST( 'e',  0,        0,     0 ), /*   441 T_Type            */
+-  S_ST( 't',  3,      449,     0 ), /*   442 ji                */
+-  S_ST( 'y',  0,        0,     0 ), /*   443 T_UEcrypto        */
+-  S_ST( 'y',  0,        0,     0 ), /*   444 T_UEcryptonak     */
+-  S_ST( 'y',  0,        0,     0 ), /*   445 T_UEdigest        */
+-  S_ST( 'g',  1,        0,     0 ), /*   446 T_Unconfig        */
+-  S_ST( 'r',  1,      924,     0 ), /*   447 T_Unpeer          */
+-  S_ST( 'n',  0,        0,     0 ), /*   448 T_Version         */
+-  S_ST( 't',  3,      455,     0 ), /*   449 jit               */
+-  S_ST( 'k',  0,        0,     0 ), /*   450 T_Week            */
+-  S_ST( 'd',  0,        0,     0 ), /*   451 T_Wildcard        */
+-  S_ST( 'e',  0,        0,     0 ), /*   452 T_Xleave          */
+-  S_ST( 'e',  0,        0,     0 ), /*   453 T_Xmtnonce        */
+-  S_ST( 'r',  0,        0,     0 ), /*   454 T_Year            */
+-  S_ST( 'e',  3,      464,     0 ), /*   455 jitt              */
+-  S_ST( 'k',  3,      473,   415 ), /*   456                   */
+-  S_ST( 'e',  0,        0,     0 ), /*   457 T_Simulate        */
+-  S_ST( 'y',  0,        0,     0 ), /*   458 T_Beep_Delay      */
+-  S_ST( 'n',  0,        0,     0 ), /*   459 T_Sim_Duration    */
+-  S_ST( 't',  0,        0,     0 ), /*   460 T_Server_Offset   */
+-  S_ST( 'n',  0,        0,     0 ), /*   461 T_Duration        */
+-  S_ST( 't',  0,        0,     0 ), /*   462 T_Freq_Offset     */
+-  S_ST( 'r',  0,        0,     0 ), /*   463 T_Wander          */
+-  S_ST( 'r',  0,        0,     0 ), /*   464 T_Jitter          */
+-  S_ST( 'y',  0,        0,     0 ), /*   465 T_Prop_Delay      */
+-  S_ST( 'y',  0,        0,     0 ), /*   466 T_Proc_Delay      */
+-  S_ST( 'e',  3,      332,     0 ), /*   467 k                 */
++  S_ST( 'r',  3,      289,     0 ), /*   256 ippee             */
++  S_ST( 'v',  1,        0,     0 ), /*   257 257               */
++  S_ST( 'e',  0,        0,     0 ), /*   258 258               */
++  S_ST( 'l',  0,       12,     0 ), /*   259 259               */
++  S_ST( 'n',  0,        0,     0 ), /*   260 260               */
++  S_ST( 's',  0,        0,     0 ), /*   261 261               */
++  S_ST( 'h',  0,        0,     0 ), /*   262 262               */
++  S_ST( 'y',  0,        0,     0 ), /*   263 263               */
++  S_ST( 'x',  0,        0,     0 ), /*   264 264               */
++  S_ST( 'e',  0,        0,     0 ), /*   265 265               */
++  S_ST( 'e',  1,        0,     0 ), /*   266 266               */
++  S_ST( 't',  0,        0,     0 ), /*   267 267               */
++  S_ST( 'p',  0,        0,     0 ), /*   268 268               */
++  S_ST( 'n',  0,        0,     0 ), /*   269 269               */
++  S_ST( 't',  1,       71,     0 ), /*   270 270               */
++  S_ST( 't',  0,        0,     0 ), /*   271 271               */
++  S_ST( 'y',  0,        0,     0 ), /*   272 272               */
++  S_ST( 't',  0,        0,     0 ), /*   273 273               */
++  S_ST( 'e',  0,        0,     0 ), /*   274 274               */
++  S_ST( 'g',  0,        0,     0 ), /*   275 275               */
++  S_ST( 'h',  0,        0,     0 ), /*   276 276               */
++  S_ST( 's',  0,        0,     0 ), /*   277 277               */
++  S_ST( 't',  0,        0,     0 ), /*   278 278               */
++  S_ST( 'y',  0,        0,     0 ), /*   279 279               */
++  S_ST( 'o',  0,      121,     0 ), /*   280 280               */
++  S_ST( 's',  0,        0,     0 ), /*   281 281               */
++  S_ST( 'l',  0,        0,     0 ), /*   282 282               */
++  S_ST( 'y',  0,        0,     0 ), /*   283 283               */
++  S_ST( 't',  0,        0,     0 ), /*   284 284               */
++  S_ST( 't',  1,        0,     0 ), /*   285 285               */
++  S_ST( 'e',  0,        0,     0 ), /*   286 286               */
++  S_ST( 'd',  0,        0,     0 ), /*   287 287               */
++  S_ST( 'n',  0,        0,     0 ), /*   288 288               */
++  S_ST( 'l',  3,      297,     0 ), /*   289 ippeer            */
++  S_ST( 'e',  1,        0,     0 ), /*   290 290               */
++  S_ST( 'p',  0,        0,     0 ), /*   291 291               */
++  S_ST( 'p',  0,        0,     0 ), /*   292 292               */
++  S_ST( '.',  0,        0,     0 ), /*   293 293               */
++  S_ST( 'e',  0,        0,     0 ), /*   294 294               */
++  S_ST( 'd',  0,        0,   168 ), /*   295 295               */
++  S_ST( 'r',  0,        0,     0 ), /*   296 296               */
++  S_ST( 'i',  3,      321,     0 ), /*   297 ippeerl           */
++  S_ST( 'e',  1,      179,     0 ), /*   298 298               */
++  S_ST( 'n',  0,        0,     0 ), /*   299 299               */
++  S_ST( 'm',  0,        0,     0 ), /*   300 300               */
++  S_ST( '1',  0,        0,     0 ), /*   301 301               */
++  S_ST( '2',  0,        0,   301 ), /*   302 302               */
++  S_ST( '3',  0,        0,   302 ), /*   303 303               */
++  S_ST( '4',  0,        0,   303 ), /*   304 304               */
++  S_ST( 'e',  0,        0,     0 ), /*   305 305               */
++  S_ST( 'r',  0,        0,     0 ), /*   306 306               */
++  S_ST( 'q',  0,      189,     0 ), /*   307 307               */
++  S_ST( 'e',  1,        0,     0 ), /*   308 308               */
++  S_ST( 'z',  0,        0,     0 ), /*   309 309               */
++  S_ST( 't',  1,        0,     0 ), /*   310 310               */
++  S_ST( 'f',  0,        0,     0 ), /*   311 311               */
++  S_ST( 't',  0,        0,     0 ), /*   312 312               */
++  S_ST( 't',  1,        0,     0 ), /*   313 313               */
++  S_ST( 'e',  0,      220,     0 ), /*   314 314               */
++  S_ST( 'h',  0,        0,     0 ), /*   315 315               */
++  S_ST( 'c',  0,        0,     0 ), /*   316 316               */
++  S_ST( 'm',  0,        0,     0 ), /*   317 317               */
++  S_ST( 'c',  0,        0,     0 ), /*   318 318               */
++  S_ST( 'm',  0,        0,     0 ), /*   319 319               */
++  S_ST( 'e',  1,        0,     0 ), /*   320 320               */
++  S_ST( 'm',  3,      323,     0 ), /*   321 ippeerli          */
++  S_ST( 'e',  0,        0,     0 ), /*   322 322               */
++  S_ST( 'i',  3,      325,     0 ), /*   323 ippeerlim         */
++  S_ST( 'o',  0,        0,   223 ), /*   324 324               */
++  S_ST( 't',  0,        0,     0 ), /*   325 325               */
++  S_ST( '4',  0,        0,     0 ), /*   326 326               */
++  S_ST( '4',  0,        0,     0 ), /*   327 327               */
++  S_ST( '6',  0,        0,   326 ), /*   328 328               */
++  S_ST( '6',  0,        0,   327 ), /*   329 329               */
++  S_ST( 'l',  0,        0,     0 ), /*   330 330               */
++  S_ST( 'y',  0,      332,   468 ), /*   331 331               */
++  S_ST( 's',  1,      471,     0 ), /*   332 332               */
++  S_ST( 'r',  1,        0,     0 ), /*   333 333               */
++  S_ST( 'd',  0,        0,     0 ), /*   334 334               */
++  S_ST( 'e',  1,        0,     0 ), /*   335 335               */
++  S_ST( 'l',  0,        0,     0 ), /*   336 336               */
++  S_ST( 'd',  0,        0,     0 ), /*   337 337               */
++  S_ST( 'k',  0,        0,     0 ), /*   338 338               */
++  S_ST( 'n',  0,        0,     0 ), /*   339 339               */
++  S_ST( 'g',  2,        0,     0 ), /*   340 340               */
++  S_ST( 'e',  1,        0,     0 ), /*   341 341               */
++  S_ST( 's',  0,        0,     0 ), /*   342 342               */
++  S_ST( 'p',  0,        0,     0 ), /*   343 343               */
++  S_ST( 't',  1,        0,     0 ), /*   344 344               */
++  S_ST( 'r',  2,        0,     0 ), /*   345 345               */
++  S_ST( 'k',  0,        0,     0 ), /*   346 346               */
++  S_ST( 'e',  0,        0,     0 ), /*   347 347               */
++  S_ST( 'k',  0,        0,     0 ), /*   348 348               */
++  S_ST( 'h',  0,        0,     0 ), /*   349 349               */
++  S_ST( 't',  0,        0,     0 ), /*   350 350               */
++  S_ST( 'm',  0,        0,     0 ), /*   351 351               */
++  S_ST( 'l',  0,        0,     0 ), /*   352 352               */
++  S_ST( 's',  0,        0,     0 ), /*   353 353               */
++  S_ST( 'm',  0,      571,     0 ), /*   354 354               */
++  S_ST( 'k',  0,        0,     0 ), /*   355 355               */
++  S_ST( 'k',  0,        0,     0 ), /*   356 356               */
++  S_ST( 'h',  0,        0,     0 ), /*   357 357               */
++  S_ST( 't',  0,        0,     0 ), /*   358 358               */
++  S_ST( 'm',  0,        0,     0 ), /*   359 359               */
++  S_ST( 'r',  0,        0,     0 ), /*   360 360               */
++  S_ST( 'l',  0,        0,     0 ), /*   361 361               */
++  S_ST( 'e',  0,        0,     0 ), /*   362 362               */
++  S_ST( 'e',  0,      364,     0 ), /*   363 363               */
++  S_ST( '7',  0,        0,     0 ), /*   364 364               */
++  S_ST( 'r',  0,        0,     0 ), /*   365 365               */
++  S_ST( 'h',  0,        0,     0 ), /*   366 366               */
++  S_ST( 'u',  0,        0,     0 ), /*   367 367               */
++  S_ST( 'p',  0,        0,     0 ), /*   368 368               */
++  S_ST( 't',  2,        0,     0 ), /*   369 369               */
++  S_ST( 'c',  0,        0,     0 ), /*   370 370               */
++  S_ST( 'k',  0,        0,     0 ), /*   371 371               */
++  S_ST( 'y',  0,        0,     0 ), /*   372 372               */
++  S_ST( 't',  0,        0,     0 ), /*   373 373               */
++  S_ST( 'e',  0,        0,     0 ), /*   374 374               */
++  S_ST( 'e',  0,        0,     0 ), /*   375 375               */
++  S_ST( 'r',  0,        0,     0 ), /*   376 376               */
++  S_ST( 'r',  0,        0,     0 ), /*   377 377               */
++  S_ST( 'y',  0,        0,     0 ), /*   378 378               */
++  S_ST( 't',  0,        0,     0 ), /*   379 379               */
++  S_ST( 'e',  0,        0,     0 ), /*   380 380               */
++  S_ST( 'p',  0,        0,     0 ), /*   381 381               */
++  S_ST( 't',  0,        0,     0 ), /*   382 382               */
++  S_ST( 'p',  0,      676,     0 ), /*   383 383               */
++  S_ST( 't',  0,        0,     0 ), /*   384 384               */
++  S_ST( 't',  1,        0,     0 ), /*   385 385               */
++  S_ST( 'n',  0,      691,     0 ), /*   386 386               */
++  S_ST( 't',  0,        0,     0 ), /*   387 387               */
++  S_ST( 'y',  0,        0,     0 ), /*   388 388               */
++  S_ST( 'c',  0,        0,     0 ), /*   389 389               */
++  S_ST( 'r',  1,      718,     0 ), /*   390 390               */
++  S_ST( 's',  0,        0,     0 ), /*   391 391               */
++  S_ST( 'e',  2,        0,     0 ), /*   392 392               */
++  S_ST( 'd',  0,      726,     0 ), /*   393 393               */
++  S_ST( 'e',  1,        0,     0 ), /*   394 394               */
++  S_ST( 'l',  0,      731,     0 ), /*   395 395               */
++  S_ST( 't',  0,        0,     0 ), /*   396 396               */
++  S_ST( 'l',  1,        0,     0 ), /*   397 397               */
++  S_ST( 't',  0,        0,     0 ), /*   398 398               */
++  S_ST( 't',  0,        0,     0 ), /*   399 399               */
++  S_ST( 'r',  0,        0,     0 ), /*   400 400               */
++  S_ST( 's',  0,        0,     0 ), /*   401 401               */
++  S_ST( 'w',  1,        0,   740 ), /*   402 402               */
++  S_ST( 'e',  1,        0,     0 ), /*   403 403               */
++  S_ST( 's',  0,        0,     0 ), /*   404 404               */
++  S_ST( 'd',  1,        0,     0 ), /*   405 405               */
++  S_ST( 'y',  0,        0,     0 ), /*   406 406               */
++  S_ST( 't',  0,        0,     0 ), /*   407 407               */
++  S_ST( 't',  0,        0,     0 ), /*   408 408               */
++  S_ST( 'e',  0,        0,     0 ), /*   409 409               */
++  S_ST( 't',  0,        0,     0 ), /*   410 410               */
++  S_ST( 'r',  1,        0,     0 ), /*   411 411               */
++  S_ST( 'r',  1,      823,     0 ), /*   412 412               */
++  S_ST( 'e',  0,        0,     0 ), /*   413 413               */
++  S_ST( 'v',  3,      328,   253 ), /*   414 ip                */
++  S_ST( 'r',  1,        0,     0 ), /*   415 415               */
++  S_ST( 'e',  0,        0,     0 ), /*   416 416               */
++  S_ST( 'e',  0,        0,     0 ), /*   417 417               */
++  S_ST( 's',  0,        0,     0 ), /*   418 418               */
++  S_ST( 's',  0,      867,   862 ), /*   419 419               */
++  S_ST( 'r',  1,        0,     0 ), /*   420 420               */
++  S_ST( 'p',  0,      875,     0 ), /*   421 421               */
++  S_ST( 'k',  0,        0,     0 ), /*   422 422               */
++  S_ST( 'd',  0,        0,     0 ), /*   423 423               */
++  S_ST( 't',  0,        0,     0 ), /*   424 424               */
++  S_ST( 'm',  0,        0,     0 ), /*   425 425               */
++  S_ST( 'j',  3,      441,   208 ), /*   426                   */
++  S_ST( 's',  0,      882,     0 ), /*   427 427               */
++  S_ST( 's',  0,        0,     0 ), /*   428 428               */
++  S_ST( 'k',  0,        0,     0 ), /*   429 429               */
++  S_ST( '1',  0,        0,     0 ), /*   430 430               */
++  S_ST( '2',  0,        0,   430 ), /*   431 431               */
++  S_ST( 'r',  0,        0,   431 ), /*   432 432               */
++  S_ST( 's',  0,        0,     0 ), /*   433 433               */
++  S_ST( 'r',  0,        0,     0 ), /*   434 434               */
++  S_ST( 's',  0,        0,     0 ), /*   435 435               */
++  S_ST( 'p',  1,        0,     0 ), /*   436 436               */
++  S_ST( 'e',  0,        0,     0 ), /*   437 437               */
++  S_ST( 'y',  0,        0,     0 ), /*   438 438               */
++  S_ST( 'l',  0,        0,     0 ), /*   439 439               */
++  S_ST( 'e',  0,        0,     0 ), /*   440 440               */
++  S_ST( 'i',  3,      448,     0 ), /*   441 j                 */
++  S_ST( 'y',  0,        0,     0 ), /*   442 442               */
++  S_ST( 'y',  0,        0,     0 ), /*   443 443               */
++  S_ST( 'y',  0,        0,     0 ), /*   444 444               */
++  S_ST( 'g',  1,        0,     0 ), /*   445 445               */
++  S_ST( 'r',  1,      924,     0 ), /*   446 446               */
++  S_ST( 'n',  0,        0,     0 ), /*   447 447               */
++  S_ST( 't',  3,      454,     0 ), /*   448 ji                */
++  S_ST( 'k',  0,        0,     0 ), /*   449 449               */
++  S_ST( 'd',  0,        0,     0 ), /*   450 450               */
++  S_ST( 'e',  0,        0,     0 ), /*   451 451               */
++  S_ST( 'e',  0,        0,     0 ), /*   452 452               */
++  S_ST( 'r',  0,        0,     0 ), /*   453 453               */
++  S_ST( 't',  3,      455,     0 ), /*   454 jit               */
++  S_ST( 'e',  3,      463,     0 ), /*   455 jitt              */
++  S_ST( 'e',  0,        0,     0 ), /*   456 456               */
++  S_ST( 'y',  0,        0,     0 ), /*   457 457               */
++  S_ST( 'n',  0,        0,     0 ), /*   458 458               */
++  S_ST( 't',  0,        0,     0 ), /*   459 459               */
++  S_ST( 'n',  0,        0,     0 ), /*   460 460               */
++  S_ST( 't',  0,        0,     0 ), /*   461 461               */
++  S_ST( 'r',  0,        0,     0 ), /*   462 462               */
++  S_ST( 'r',  0,        0,     0 ), /*   463 463               */
++  S_ST( 'y',  0,        0,     0 ), /*   464 464               */
++  S_ST( 'y',  0,        0,     0 ), /*   465 465               */
++  S_ST( 'k',  3,      473,   426 ), /*   466                   */
++  S_ST( 'e',  3,      331,     0 ), /*   467 k                 */
+   S_ST( 'r',  3,      469,     0 ), /*   468 ke                */
+   S_ST( 'n',  3,      470,     0 ), /*   469 ker               */
+-  S_ST( 'e',  3,      331,     0 ), /*   470 kern              */
++  S_ST( 'e',  3,      330,     0 ), /*   470 kern              */
+   S_ST( 'd',  3,      472,     0 ), /*   471 keys              */
+-  S_ST( 'i',  3,      334,     0 ), /*   472 keysd             */
+-  S_ST( 'o',  3,      335,   467 ), /*   473 k                 */
+-  S_ST( 'l',  3,      502,   456 ), /*   474                   */
++  S_ST( 'i',  3,      333,     0 ), /*   472 keysd             */
++  S_ST( 'o',  3,      334,   467 ), /*   473 k                 */
++  S_ST( 'l',  3,      502,   466 ), /*   474                   */
+   S_ST( 'e',  3,      476,     0 ), /*   475 l                 */
+   S_ST( 'a',  3,      477,     0 ), /*   476 le                */
+   S_ST( 'p',  3,      481,     0 ), /*   477 lea               */
+   S_ST( 'f',  3,      479,     0 ), /*   478 leap              */
+   S_ST( 'i',  3,      480,     0 ), /*   479 leapf             */
+-  S_ST( 'l',  3,      336,     0 ), /*   480 leapfi            */
++  S_ST( 'l',  3,      335,     0 ), /*   480 leapfi            */
+   S_ST( 's',  3,      482,   478 ), /*   481 leap              */
+   S_ST( 'm',  3,      483,     0 ), /*   482 leaps             */
+   S_ST( 'e',  3,      484,     0 ), /*   483 leapsm            */
+@@ -718,32 +718,32 @@ const scan_state sst[988] = {
+   S_ST( 'e',  3,      490,     0 ), /*   489 leapsmearint      */
+   S_ST( 'r',  3,      491,     0 ), /*   490 leapsmearinte     */
+   S_ST( 'v',  3,      492,     0 ), /*   491 leapsmearinter    */
+-  S_ST( 'a',  3,      337,     0 ), /*   492 leapsmearinterv   */
++  S_ST( 'a',  3,      336,     0 ), /*   492 leapsmearinterv   */
+   S_ST( 'i',  3,      499,   475 ), /*   493 l                 */
+   S_ST( 'm',  3,      495,     0 ), /*   494 li                */
+   S_ST( 'i',  3,      496,     0 ), /*   495 lim               */
+   S_ST( 't',  3,      497,     0 ), /*   496 limi              */
+-  S_ST( 'e',  3,      338,     0 ), /*   497 limit             */
+-  S_ST( 'n',  3,      339,   494 ), /*   498 li                */
++  S_ST( 'e',  3,      337,     0 ), /*   497 limit             */
++  S_ST( 'n',  3,      338,   494 ), /*   498 li                */
+   S_ST( 's',  3,      500,   498 ), /*   499 li                */
+   S_ST( 't',  3,      501,     0 ), /*   500 lis               */
+-  S_ST( 'e',  3,      340,     0 ), /*   501 list              */
++  S_ST( 'e',  3,      339,     0 ), /*   501 list              */
+   S_ST( 'o',  3,      518,   493 ), /*   502 l                 */
+   S_ST( 'g',  3,      509,     0 ), /*   503 lo                */
+   S_ST( 'c',  3,      505,     0 ), /*   504 log               */
+   S_ST( 'o',  3,      506,     0 ), /*   505 logc              */
+   S_ST( 'n',  3,      507,     0 ), /*   506 logco             */
+   S_ST( 'f',  3,      508,     0 ), /*   507 logcon            */
+-  S_ST( 'i',  3,      341,     0 ), /*   508 logconf           */
++  S_ST( 'i',  3,      340,     0 ), /*   508 logconf           */
+   S_ST( 'f',  3,      510,   504 ), /*   509 log               */
+   S_ST( 'i',  3,      511,     0 ), /*   510 logf              */
+-  S_ST( 'l',  3,      342,     0 ), /*   511 logfi             */
++  S_ST( 'l',  3,      341,     0 ), /*   511 logfi             */
+   S_ST( 'o',  3,      513,   503 ), /*   512 lo                */
+   S_ST( 'p',  3,      514,     0 ), /*   513 loo               */
+   S_ST( 's',  3,      515,     0 ), /*   514 loop              */
+   S_ST( 't',  3,      516,     0 ), /*   515 loops             */
+   S_ST( 'a',  3,      517,     0 ), /*   516 loopst            */
+-  S_ST( 't',  3,      343,     0 ), /*   517 loopsta           */
++  S_ST( 't',  3,      342,     0 ), /*   517 loopsta           */
+   S_ST( 'w',  3,      519,   512 ), /*   518 lo                */
+   S_ST( 'p',  3,      520,     0 ), /*   519 low               */
+   S_ST( 'r',  3,      521,     0 ), /*   520 lowp              */
+@@ -751,7 +751,7 @@ const scan_state sst[988] = {
+   S_ST( 'o',  3,      523,     0 ), /*   522 lowpri            */
+   S_ST( 't',  3,      524,     0 ), /*   523 lowprio           */
+   S_ST( 'r',  3,      525,     0 ), /*   524 lowpriot          */
+-  S_ST( 'a',  3,      344,     0 ), /*   525 lowpriotr         */
++  S_ST( 'a',  3,      343,     0 ), /*   525 lowpriotr         */
+   S_ST( 'm',  3,      612,   474 ), /*   526                   */
+   S_ST( 'a',  3,      545,     0 ), /*   527 m                 */
+   S_ST( 'n',  3,      529,     0 ), /*   528 ma                */
+@@ -764,80 +764,80 @@ const scan_state sst[988] = {
+   S_ST( 'l',  3,      536,     0 ), /*   535 manycastc         */
+   S_ST( 'i',  3,      537,     0 ), /*   536 manycastcl        */
+   S_ST( 'e',  3,      538,     0 ), /*   537 manycastcli       */
+-  S_ST( 'n',  3,      345,     0 ), /*   538 manycastclie      */
++  S_ST( 'n',  3,      344,     0 ), /*   538 manycastclie      */
+   S_ST( 's',  3,      540,   534 ), /*   539 manycast          */
+   S_ST( 'e',  3,      541,     0 ), /*   540 manycasts         */
+   S_ST( 'r',  3,      542,     0 ), /*   541 manycastse        */
+   S_ST( 'v',  3,      543,     0 ), /*   542 manycastser       */
+-  S_ST( 'e',  3,      346,     0 ), /*   543 manycastserv      */
+-  S_ST( 's',  3,      347,   528 ), /*   544 ma                */
++  S_ST( 'e',  3,      345,     0 ), /*   543 manycastserv      */
++  S_ST( 's',  3,      346,   528 ), /*   544 ma                */
+   S_ST( 'x',  3,      560,   544 ), /*   545 ma                */
+   S_ST( 'a',  3,      547,     0 ), /*   546 max               */
+-  S_ST( 'g',  3,      348,     0 ), /*   547 maxa              */
++  S_ST( 'g',  3,      347,     0 ), /*   547 maxa              */
+   S_ST( 'c',  3,      549,   546 ), /*   548 max               */
+   S_ST( 'l',  3,      550,     0 ), /*   549 maxc              */
+   S_ST( 'o',  3,      551,     0 ), /*   550 maxcl             */
+-  S_ST( 'c',  3,      349,     0 ), /*   551 maxclo            */
++  S_ST( 'c',  3,      348,     0 ), /*   551 maxclo            */
+   S_ST( 'd',  3,      556,   548 ), /*   552 max               */
+   S_ST( 'e',  3,      554,     0 ), /*   553 maxd              */
+   S_ST( 'p',  3,      555,     0 ), /*   554 maxde             */
+-  S_ST( 't',  3,      350,     0 ), /*   555 maxdep            */
++  S_ST( 't',  3,      349,     0 ), /*   555 maxdep            */
+   S_ST( 'i',  3,      557,   553 ), /*   556 maxd              */
+-  S_ST( 's',  3,      351,     0 ), /*   557 maxdi             */
++  S_ST( 's',  3,      350,     0 ), /*   557 maxdi             */
+   S_ST( 'm',  3,      559,   552 ), /*   558 max               */
+-  S_ST( 'e',  3,      352,     0 ), /*   559 maxm              */
++  S_ST( 'e',  3,      351,     0 ), /*   559 maxm              */
+   S_ST( 'p',  3,      561,   558 ), /*   560 max               */
+   S_ST( 'o',  3,      562,     0 ), /*   561 maxp              */
+-  S_ST( 'l',  3,      353,     0 ), /*   562 maxpo             */
++  S_ST( 'l',  3,      352,     0 ), /*   562 maxpo             */
+   S_ST( 'd',  3,      564,   527 ), /*   563 m                 */
+   S_ST( 'n',  3,      565,     0 ), /*   564 md                */
+   S_ST( 's',  3,      566,     0 ), /*   565 mdn               */
+   S_ST( 't',  3,      567,     0 ), /*   566 mdns              */
+   S_ST( 'r',  3,      568,     0 ), /*   567 mdnst             */
+   S_ST( 'i',  3,      569,     0 ), /*   568 mdnstr            */
+-  S_ST( 'e',  3,      354,     0 ), /*   569 mdnstri           */
+-  S_ST( 'e',  3,      355,   563 ), /*   570 m                 */
++  S_ST( 'e',  3,      353,     0 ), /*   569 mdnstri           */
++  S_ST( 'e',  3,      354,   563 ), /*   570 m                 */
+   S_ST( 'l',  3,      572,     0 ), /*   571 mem               */
+   S_ST( 'o',  3,      573,     0 ), /*   572 meml              */
+-  S_ST( 'c',  3,      356,     0 ), /*   573 memlo             */
++  S_ST( 'c',  3,      355,     0 ), /*   573 memlo             */
+   S_ST( 'i',  3,      575,   570 ), /*   574 m                 */
+   S_ST( 'n',  3,      597,     0 ), /*   575 mi                */
+   S_ST( 'c',  3,      577,     0 ), /*   576 min               */
+   S_ST( 'l',  3,      578,     0 ), /*   577 minc              */
+   S_ST( 'o',  3,      579,     0 ), /*   578 mincl             */
+-  S_ST( 'c',  3,      357,     0 ), /*   579 minclo            */
++  S_ST( 'c',  3,      356,     0 ), /*   579 minclo            */
+   S_ST( 'd',  3,      584,   576 ), /*   580 min               */
+   S_ST( 'e',  3,      582,     0 ), /*   581 mind              */
+   S_ST( 'p',  3,      583,     0 ), /*   582 minde             */
+-  S_ST( 't',  3,      358,     0 ), /*   583 mindep            */
++  S_ST( 't',  3,      357,     0 ), /*   583 mindep            */
+   S_ST( 'i',  3,      585,   581 ), /*   584 mind              */
+-  S_ST( 's',  3,      359,     0 ), /*   585 mindi             */
++  S_ST( 's',  3,      358,     0 ), /*   585 mindi             */
+   S_ST( 'i',  3,      587,   580 ), /*   586 min               */
+   S_ST( 'm',  3,      588,     0 ), /*   587 mini              */
+-  S_ST( 'u',  3,      360,     0 ), /*   588 minim             */
++  S_ST( 'u',  3,      359,     0 ), /*   588 minim             */
+   S_ST( 'j',  3,      590,   586 ), /*   589 min               */
+   S_ST( 'i',  3,      591,     0 ), /*   590 minj              */
+   S_ST( 't',  3,      592,     0 ), /*   591 minji             */
+   S_ST( 't',  3,      593,     0 ), /*   592 minjit            */
+-  S_ST( 'e',  3,      361,     0 ), /*   593 minjitt           */
++  S_ST( 'e',  3,      360,     0 ), /*   593 minjitt           */
+   S_ST( 'p',  3,      595,   589 ), /*   594 min               */
+   S_ST( 'o',  3,      596,     0 ), /*   595 minp              */
+-  S_ST( 'l',  3,      362,     0 ), /*   596 minpo             */
++  S_ST( 'l',  3,      361,     0 ), /*   596 minpo             */
+   S_ST( 's',  3,      598,   594 ), /*   597 min               */
+   S_ST( 'a',  3,      599,     0 ), /*   598 mins              */
+-  S_ST( 'n',  3,      363,     0 ), /*   599 minsa             */
++  S_ST( 'n',  3,      362,     0 ), /*   599 minsa             */
+   S_ST( 'o',  3,      602,   574 ), /*   600 m                 */
+-  S_ST( 'd',  3,      364,     0 ), /*   601 mo                */
++  S_ST( 'd',  3,      363,     0 ), /*   601 mo                */
+   S_ST( 'n',  3,      606,   601 ), /*   602 mo                */
+   S_ST( 'i',  3,      604,     0 ), /*   603 mon               */
+   S_ST( 't',  3,      605,     0 ), /*   604 moni              */
+-  S_ST( 'o',  3,      366,     0 ), /*   605 monit             */
+-  S_ST( 't',  3,      367,   603 ), /*   606 mon               */
+-  S_ST( 'r',  3,      368,   600 ), /*   607 m                 */
++  S_ST( 'o',  3,      365,     0 ), /*   605 monit             */
++  S_ST( 't',  3,      366,   603 ), /*   606 mon               */
++  S_ST( 'r',  3,      367,   600 ), /*   607 m                 */
+   S_ST( 's',  3,      609,   607 ), /*   608 m                 */
+   S_ST( 's',  3,      610,     0 ), /*   609 ms                */
+   S_ST( 'n',  3,      611,     0 ), /*   610 mss               */
+-  S_ST( 't',  3,      369,     0 ), /*   611 mssn              */
++  S_ST( 't',  3,      368,     0 ), /*   611 mssn              */
+   S_ST( 'u',  3,      613,   608 ), /*   612 m                 */
+   S_ST( 'l',  3,      614,     0 ), /*   613 mu                */
+   S_ST( 't',  3,      615,     0 ), /*   614 mul               */
+@@ -850,58 +850,58 @@ const scan_state sst[988] = {
+   S_ST( 'l',  3,      622,     0 ), /*   621 multicastc        */
+   S_ST( 'i',  3,      623,     0 ), /*   622 multicastcl       */
+   S_ST( 'e',  3,      624,     0 ), /*   623 multicastcli      */
+-  S_ST( 'n',  3,      370,     0 ), /*   624 multicastclie     */
++  S_ST( 'n',  3,      369,     0 ), /*   624 multicastclie     */
+   S_ST( 'n',  3,      672,   526 ), /*   625                   */
+-  S_ST( 'i',  3,      371,     0 ), /*   626 n                 */
++  S_ST( 'i',  3,      370,     0 ), /*   626 n                 */
+   S_ST( 'o',  3,      667,   626 ), /*   627 n                 */
+   S_ST( 'e',  3,      629,     0 ), /*   628 no                */
+   S_ST( 'p',  3,      630,     0 ), /*   629 noe               */
+   S_ST( 'e',  3,      631,     0 ), /*   630 noep              */
+-  S_ST( 'e',  3,      377,     0 ), /*   631 noepe             */
++  S_ST( 'e',  3,      376,     0 ), /*   631 noepe             */
+   S_ST( 'l',  3,      633,   628 ), /*   632 no                */
+   S_ST( 'i',  3,      634,     0 ), /*   633 nol               */
+-  S_ST( 'n',  3,      372,     0 ), /*   634 noli              */
++  S_ST( 'n',  3,      371,     0 ), /*   634 noli              */
+   S_ST( 'm',  3,      640,   632 ), /*   635 no                */
+   S_ST( 'o',  3,      637,     0 ), /*   636 nom               */
+   S_ST( 'd',  3,      638,     0 ), /*   637 nomo              */
+   S_ST( 'i',  3,      639,     0 ), /*   638 nomod             */
+-  S_ST( 'f',  3,      373,     0 ), /*   639 nomodi            */
++  S_ST( 'f',  3,      372,     0 ), /*   639 nomodi            */
+   S_ST( 'r',  3,      641,   636 ), /*   640 nom               */
+   S_ST( 'u',  3,      642,     0 ), /*   641 nomr              */
+   S_ST( 'l',  3,      643,     0 ), /*   642 nomru             */
+   S_ST( 'i',  3,      644,     0 ), /*   643 nomrul            */
+-  S_ST( 's',  3,      374,     0 ), /*   644 nomruli           */
++  S_ST( 's',  3,      373,     0 ), /*   644 nomruli           */
+   S_ST( 'n',  3,      646,   635 ), /*   645 no                */
+-  S_ST( 'v',  3,      647,   375 ), /*   646 non               */
++  S_ST( 'v',  3,      647,   374 ), /*   646 non               */
+   S_ST( 'o',  3,      648,     0 ), /*   647 nonv              */
+   S_ST( 'l',  3,      649,     0 ), /*   648 nonvo             */
+   S_ST( 'a',  3,      650,     0 ), /*   649 nonvol            */
+   S_ST( 't',  3,      651,     0 ), /*   650 nonvola           */
+   S_ST( 'i',  3,      652,     0 ), /*   651 nonvolat          */
+-  S_ST( 'l',  3,      376,     0 ), /*   652 nonvolati         */
++  S_ST( 'l',  3,      375,     0 ), /*   652 nonvolati         */
+   S_ST( 'p',  3,      654,   645 ), /*   653 no                */
+   S_ST( 'e',  3,      655,     0 ), /*   654 nop               */
+-  S_ST( 'e',  3,      378,     0 ), /*   655 nope              */
++  S_ST( 'e',  3,      377,     0 ), /*   655 nope              */
+   S_ST( 'q',  3,      657,   653 ), /*   656 no                */
+   S_ST( 'u',  3,      658,     0 ), /*   657 noq               */
+   S_ST( 'e',  3,      659,     0 ), /*   658 noqu              */
+-  S_ST( 'r',  3,      379,     0 ), /*   659 noque             */
++  S_ST( 'r',  3,      378,     0 ), /*   659 noque             */
+   S_ST( 's',  3,      661,   656 ), /*   660 no                */
+   S_ST( 'e',  3,      665,     0 ), /*   661 nos               */
+   S_ST( 'l',  3,      663,     0 ), /*   662 nose              */
+   S_ST( 'e',  3,      664,     0 ), /*   663 nosel             */
+-  S_ST( 'c',  3,      380,     0 ), /*   664 nosele            */
++  S_ST( 'c',  3,      379,     0 ), /*   664 nosele            */
+   S_ST( 'r',  3,      666,   662 ), /*   665 nose              */
+-  S_ST( 'v',  3,      381,     0 ), /*   666 noser             */
++  S_ST( 'v',  3,      380,     0 ), /*   666 noser             */
+   S_ST( 't',  3,      668,   660 ), /*   667 no                */
+   S_ST( 'r',  3,      670,     0 ), /*   668 not               */
+-  S_ST( 'a',  3,      382,     0 ), /*   669 notr              */
++  S_ST( 'a',  3,      381,     0 ), /*   669 notr              */
+   S_ST( 'u',  3,      671,   669 ), /*   670 notr              */
+-  S_ST( 's',  3,      383,     0 ), /*   671 notru             */
+-  S_ST( 't',  3,      384,   627 ), /*   672 n                 */
++  S_ST( 's',  3,      382,     0 ), /*   671 notru             */
++  S_ST( 't',  3,      383,   627 ), /*   672 n                 */
+   S_ST( 'p',  3,      674,     0 ), /*   673 ntp               */
+   S_ST( 'o',  3,      675,     0 ), /*   674 ntpp              */
+-  S_ST( 'r',  3,      385,     0 ), /*   675 ntppo             */
++  S_ST( 'r',  3,      384,     0 ), /*   675 ntppo             */
+   S_ST( 's',  3,      677,   673 ), /*   676 ntp               */
+   S_ST( 'i',  3,      678,     0 ), /*   677 ntps              */
+   S_ST( 'g',  3,      679,     0 ), /*   678 ntpsi             */
+@@ -911,21 +911,21 @@ const scan_state sst[988] = {
+   S_ST( 'o',  3,      683,     0 ), /*   682 ntpsignds         */
+   S_ST( 'c',  3,      684,     0 ), /*   683 ntpsigndso        */
+   S_ST( 'k',  3,      685,     0 ), /*   684 ntpsigndsoc       */
+-  S_ST( 'e',  3,      386,     0 ), /*   685 ntpsigndsock      */
++  S_ST( 'e',  3,      385,     0 ), /*   685 ntpsigndsock      */
+   S_ST( 'o',  3,      687,   625 ), /*   686                   */
+   S_ST( 'r',  3,      688,     0 ), /*   687 o                 */
+   S_ST( 'p',  3,      689,     0 ), /*   688 or                */
+   S_ST( 'h',  3,      690,     0 ), /*   689 orp               */
+-  S_ST( 'a',  3,      387,     0 ), /*   690 orph              */
++  S_ST( 'a',  3,      386,     0 ), /*   690 orph              */
+   S_ST( 'w',  3,      692,     0 ), /*   691 orphan            */
+   S_ST( 'a',  3,      693,     0 ), /*   692 orphanw           */
+-  S_ST( 'i',  3,      388,     0 ), /*   693 orphanwa          */
+-  S_ST( 'p',  3,      403,   686 ), /*   694                   */
++  S_ST( 'i',  3,      387,     0 ), /*   693 orphanwa          */
++  S_ST( 'p',  3,      402,   686 ), /*   694                   */
+   S_ST( 'a',  3,      696,     0 ), /*   695 p                 */
+   S_ST( 'n',  3,      697,     0 ), /*   696 pa                */
+-  S_ST( 'i',  3,      390,     0 ), /*   697 pan               */
++  S_ST( 'i',  3,      389,     0 ), /*   697 pan               */
+   S_ST( 'e',  3,      699,   695 ), /*   698 p                 */
+-  S_ST( 'e',  3,      391,     0 ), /*   699 pe                */
++  S_ST( 'e',  3,      390,     0 ), /*   699 pe                */
+   S_ST( '_',  3,      701,     0 ), /*   700 peer              */
+   S_ST( 'c',  3,      702,     0 ), /*   701 peer_             */
+   S_ST( 'l',  3,      703,     0 ), /*   702 peer_c            */
+@@ -943,90 +943,90 @@ const scan_state sst[988] = {
+   S_ST( 'e',  3,      715,     0 ), /*   714 peer_clear_digest_ */
+   S_ST( 'a',  3,      716,     0 ), /*   715 peer_clear_digest_e */
+   S_ST( 'r',  3,      717,     0 ), /*   716 peer_clear_digest_ea */
+-  S_ST( 'l',  3,      389,     0 ), /*   717 peer_clear_digest_ear */
++  S_ST( 'l',  3,      388,     0 ), /*   717 peer_clear_digest_ear */
+   S_ST( 's',  3,      719,   700 ), /*   718 peer              */
+   S_ST( 't',  3,      720,     0 ), /*   719 peers             */
+   S_ST( 'a',  3,      721,     0 ), /*   720 peerst            */
+-  S_ST( 't',  3,      392,     0 ), /*   721 peersta           */
++  S_ST( 't',  3,      391,     0 ), /*   721 peersta           */
+   S_ST( 'h',  3,      723,   698 ), /*   722 p                 */
+   S_ST( 'o',  3,      724,     0 ), /*   723 ph                */
+-  S_ST( 'n',  3,      393,     0 ), /*   724 pho               */
+-  S_ST( 'i',  3,      394,   722 ), /*   725 p                 */
++  S_ST( 'n',  3,      392,     0 ), /*   724 pho               */
++  S_ST( 'i',  3,      393,   722 ), /*   725 p                 */
+   S_ST( 'f',  3,      727,     0 ), /*   726 pid               */
+   S_ST( 'i',  3,      728,     0 ), /*   727 pidf              */
+-  S_ST( 'l',  3,      395,     0 ), /*   728 pidfi             */
++  S_ST( 'l',  3,      394,     0 ), /*   728 pidfi             */
+   S_ST( 'o',  3,      739,   725 ), /*   729 p                 */
+-  S_ST( 'l',  3,      396,     0 ), /*   730 po                */
++  S_ST( 'l',  3,      395,     0 ), /*   730 po                */
+   S_ST( 's',  3,      732,     0 ), /*   731 poll              */
+   S_ST( 'k',  3,      733,     0 ), /*   732 polls             */
+   S_ST( 'e',  3,      734,     0 ), /*   733 pollsk            */
+   S_ST( 'w',  3,      735,     0 ), /*   734 pollske           */
+   S_ST( 'l',  3,      736,     0 ), /*   735 pollskew          */
+   S_ST( 'i',  3,      737,     0 ), /*   736 pollskewl         */
+-  S_ST( 's',  3,      397,     0 ), /*   737 pollskewli        */
+-  S_ST( 'o',  3,      398,   730 ), /*   738 po                */
+-  S_ST( 'r',  3,      399,   738 ), /*   739 po                */
++  S_ST( 's',  3,      396,     0 ), /*   737 pollskewli        */
++  S_ST( 'o',  3,      397,   730 ), /*   738 po                */
++  S_ST( 'r',  3,      398,   738 ), /*   739 po                */
+   S_ST( 'r',  3,      747,   729 ), /*   740 p                 */
+   S_ST( 'e',  3,      745,     0 ), /*   741 pr                */
+   S_ST( 'e',  3,      743,     0 ), /*   742 pre               */
+   S_ST( 'm',  3,      744,     0 ), /*   743 pree              */
+-  S_ST( 'p',  3,      400,     0 ), /*   744 preem             */
++  S_ST( 'p',  3,      399,     0 ), /*   744 preem             */
+   S_ST( 'f',  3,      746,   742 ), /*   745 pre               */
+-  S_ST( 'e',  3,      401,     0 ), /*   746 pref              */
++  S_ST( 'e',  3,      400,     0 ), /*   746 pref              */
+   S_ST( 'o',  3,      760,   741 ), /*   747 pr                */
+   S_ST( 'c',  3,      749,     0 ), /*   748 pro               */
+   S_ST( '_',  3,      750,     0 ), /*   749 proc              */
+   S_ST( 'd',  3,      751,     0 ), /*   750 proc_             */
+   S_ST( 'e',  3,      752,     0 ), /*   751 proc_d            */
+   S_ST( 'l',  3,      753,     0 ), /*   752 proc_de           */
+-  S_ST( 'a',  3,      466,     0 ), /*   753 proc_del          */
++  S_ST( 'a',  3,      465,     0 ), /*   753 proc_del          */
+   S_ST( 'p',  3,      755,   748 ), /*   754 pro               */
+   S_ST( '_',  3,      756,     0 ), /*   755 prop              */
+   S_ST( 'd',  3,      757,     0 ), /*   756 prop_             */
+   S_ST( 'e',  3,      758,     0 ), /*   757 prop_d            */
+   S_ST( 'l',  3,      759,     0 ), /*   758 prop_de           */
+-  S_ST( 'a',  3,      465,     0 ), /*   759 prop_del          */
++  S_ST( 'a',  3,      464,     0 ), /*   759 prop_del          */
+   S_ST( 't',  3,      761,   754 ), /*   760 pro               */
+   S_ST( 'o',  3,      762,     0 ), /*   761 prot              */
+   S_ST( 's',  3,      763,     0 ), /*   762 proto             */
+   S_ST( 't',  3,      764,     0 ), /*   763 protos            */
+   S_ST( 'a',  3,      765,     0 ), /*   764 protost           */
+-  S_ST( 't',  3,      402,     0 ), /*   765 protosta          */
++  S_ST( 't',  3,      401,     0 ), /*   765 protosta          */
+   S_ST( 'r',  3,      797,   694 ), /*   766                   */
+   S_ST( 'a',  3,      773,     0 ), /*   767 r                 */
+   S_ST( 'n',  3,      769,     0 ), /*   768 ra                */
+   S_ST( 'd',  3,      770,     0 ), /*   769 ran               */
+   S_ST( 'f',  3,      771,     0 ), /*   770 rand              */
+   S_ST( 'i',  3,      772,     0 ), /*   771 randf             */
+-  S_ST( 'l',  3,      404,     0 ), /*   772 randfi            */
++  S_ST( 'l',  3,      403,     0 ), /*   772 randfi            */
+   S_ST( 'w',  3,      774,   768 ), /*   773 ra                */
+   S_ST( 's',  3,      775,     0 ), /*   774 raw               */
+   S_ST( 't',  3,      776,     0 ), /*   775 raws              */
+   S_ST( 'a',  3,      777,     0 ), /*   776 rawst             */
+-  S_ST( 't',  3,      405,     0 ), /*   777 rawsta            */
++  S_ST( 't',  3,      404,     0 ), /*   777 rawsta            */
+   S_ST( 'e',  3,      794,   767 ), /*   778 r                 */
+   S_ST( 'f',  3,      780,     0 ), /*   779 re                */
+-  S_ST( 'i',  3,      406,     0 ), /*   780 ref               */
++  S_ST( 'i',  3,      405,     0 ), /*   780 ref               */
+   S_ST( 'q',  3,      782,   779 ), /*   781 re                */
+   S_ST( 'u',  3,      783,     0 ), /*   782 req               */
+   S_ST( 'e',  3,      784,     0 ), /*   783 requ              */
+   S_ST( 's',  3,      785,     0 ), /*   784 reque             */
+   S_ST( 't',  3,      786,     0 ), /*   785 reques            */
+   S_ST( 'k',  3,      787,     0 ), /*   786 request           */
+-  S_ST( 'e',  3,      407,     0 ), /*   787 requestk          */
++  S_ST( 'e',  3,      406,     0 ), /*   787 requestk          */
+   S_ST( 's',  3,      790,   781 ), /*   788 re                */
+-  S_ST( 'e',  3,      408,     0 ), /*   789 res               */
++  S_ST( 'e',  3,      407,     0 ), /*   789 res               */
+   S_ST( 't',  3,      791,   789 ), /*   790 res               */
+   S_ST( 'r',  3,      792,     0 ), /*   791 rest              */
+   S_ST( 'i',  3,      793,     0 ), /*   792 restr             */
+-  S_ST( 'c',  3,      409,     0 ), /*   793 restri            */
++  S_ST( 'c',  3,      408,     0 ), /*   793 restri            */
+   S_ST( 'v',  3,      795,   788 ), /*   794 re                */
+   S_ST( 'o',  3,      796,     0 ), /*   795 rev               */
+-  S_ST( 'k',  3,      410,     0 ), /*   796 revo              */
++  S_ST( 'k',  3,      409,     0 ), /*   796 revo              */
+   S_ST( 'l',  3,      798,   778 ), /*   797 r                 */
+   S_ST( 'i',  3,      799,     0 ), /*   798 rl                */
+   S_ST( 'm',  3,      800,     0 ), /*   799 rli               */
+-  S_ST( 'i',  3,      411,     0 ), /*   800 rlim              */
++  S_ST( 'i',  3,      410,     0 ), /*   800 rlim              */
+   S_ST( 's',  3,      881,   766 ), /*   801                   */
+   S_ST( 'a',  3,      803,     0 ), /*   802 s                 */
+   S_ST( 'v',  3,      804,     0 ), /*   803 sa                */
+@@ -1038,34 +1038,34 @@ const scan_state sst[988] = {
+   S_ST( 'i',  3,      810,     0 ), /*   809 saveconf          */
+   S_ST( 'g',  3,      811,     0 ), /*   810 saveconfi         */
+   S_ST( 'd',  3,      812,     0 ), /*   811 saveconfig        */
+-  S_ST( 'i',  3,      412,     0 ), /*   812 saveconfigd       */
++  S_ST( 'i',  3,      411,     0 ), /*   812 saveconfigd       */
+   S_ST( 'e',  3,      830,   802 ), /*   813 s                 */
+   S_ST( 'r',  3,      815,     0 ), /*   814 se                */
+   S_ST( 'v',  3,      816,     0 ), /*   815 ser               */
+-  S_ST( 'e',  3,      413,     0 ), /*   816 serv              */
++  S_ST( 'e',  3,      412,     0 ), /*   816 serv              */
+   S_ST( '_',  3,      818,     0 ), /*   817 server            */
+   S_ST( 'o',  3,      819,     0 ), /*   818 server_           */
+   S_ST( 'f',  3,      820,     0 ), /*   819 server_o          */
+   S_ST( 'f',  3,      821,     0 ), /*   820 server_of         */
+   S_ST( 's',  3,      822,     0 ), /*   821 server_off        */
+-  S_ST( 'e',  3,      460,     0 ), /*   822 server_offs       */
++  S_ST( 'e',  3,      459,     0 ), /*   822 server_offs       */
+   S_ST( 'r',  3,      824,   817 ), /*   823 server            */
+   S_ST( 'e',  3,      825,     0 ), /*   824 serverr           */
+   S_ST( 's',  3,      826,     0 ), /*   825 serverre          */
+   S_ST( 'p',  3,      827,     0 ), /*   826 serverres         */
+   S_ST( 'o',  3,      828,     0 ), /*   827 serverresp        */
+   S_ST( 'n',  3,      829,     0 ), /*   828 serverrespo       */
+-  S_ST( 's',  3,      414,     0 ), /*   829 serverrespon      */
++  S_ST( 's',  3,      413,     0 ), /*   829 serverrespon      */
+   S_ST( 't',  3,      831,   814 ), /*   830 se                */
+   S_ST( 'v',  3,      832,     0 ), /*   831 set               */
+-  S_ST( 'a',  3,      416,     0 ), /*   832 setv              */
++  S_ST( 'a',  3,      415,     0 ), /*   832 setv              */
+   S_ST( 'i',  3,      834,   813 ), /*   833 s                 */
+   S_ST( 'm',  3,      835,     0 ), /*   834 si                */
+   S_ST( 'u',  3,      836,     0 ), /*   835 sim               */
+   S_ST( 'l',  3,      837,     0 ), /*   836 simu              */
+   S_ST( 'a',  3,      838,     0 ), /*   837 simul             */
+   S_ST( 't',  3,      839,     0 ), /*   838 simula            */
+-  S_ST( 'i',  3,      840,   457 ), /*   839 simulat           */
++  S_ST( 'i',  3,      840,   456 ), /*   839 simulat           */
+   S_ST( 'o',  3,      841,     0 ), /*   840 simulati          */
+   S_ST( 'n',  3,      842,     0 ), /*   841 simulatio         */
+   S_ST( '_',  3,      843,     0 ), /*   842 simulation        */
+@@ -1075,81 +1075,81 @@ const scan_state sst[988] = {
+   S_ST( 'a',  3,      847,     0 ), /*   846 simulation_dur    */
+   S_ST( 't',  3,      848,     0 ), /*   847 simulation_dura   */
+   S_ST( 'i',  3,      849,     0 ), /*   848 simulation_durat  */
+-  S_ST( 'o',  3,      459,     0 ), /*   849 simulation_durati */
++  S_ST( 'o',  3,      458,     0 ), /*   849 simulation_durati */
+   S_ST( 'o',  3,      851,   833 ), /*   850 s                 */
+   S_ST( 'u',  3,      852,     0 ), /*   851 so                */
+   S_ST( 'r',  3,      853,     0 ), /*   852 sou               */
+-  S_ST( 'c',  3,      417,     0 ), /*   853 sour              */
++  S_ST( 'c',  3,      416,     0 ), /*   853 sour              */
+   S_ST( 't',  3,      877,   850 ), /*   854 s                 */
+   S_ST( 'a',  3,      861,     0 ), /*   855 st                */
+   S_ST( 'c',  3,      857,     0 ), /*   856 sta               */
+   S_ST( 'k',  3,      858,     0 ), /*   857 stac              */
+   S_ST( 's',  3,      859,     0 ), /*   858 stack             */
+   S_ST( 'i',  3,      860,     0 ), /*   859 stacks            */
+-  S_ST( 'z',  3,      418,     0 ), /*   860 stacksi           */
+-  S_ST( 't',  3,      420,   856 ), /*   861 sta               */
++  S_ST( 'z',  3,      417,     0 ), /*   860 stacksi           */
++  S_ST( 't',  3,      419,   856 ), /*   861 sta               */
+   S_ST( 'i',  3,      863,     0 ), /*   862 stat              */
+   S_ST( 's',  3,      864,     0 ), /*   863 stati             */
+   S_ST( 't',  3,      865,     0 ), /*   864 statis            */
+   S_ST( 'i',  3,      866,     0 ), /*   865 statist           */
+-  S_ST( 'c',  3,      419,     0 ), /*   866 statisti          */
++  S_ST( 'c',  3,      418,     0 ), /*   866 statisti          */
+   S_ST( 'd',  3,      868,     0 ), /*   867 stats             */
+-  S_ST( 'i',  3,      421,     0 ), /*   868 statsd            */
+-  S_ST( 'e',  3,      422,   855 ), /*   869 st                */
++  S_ST( 'i',  3,      420,     0 ), /*   868 statsd            */
++  S_ST( 'e',  3,      421,   855 ), /*   869 st                */
+   S_ST( 'b',  3,      871,     0 ), /*   870 step              */
+   S_ST( 'a',  3,      872,     0 ), /*   871 stepb             */
+-  S_ST( 'c',  3,      423,     0 ), /*   872 stepba            */
++  S_ST( 'c',  3,      422,     0 ), /*   872 stepba            */
+   S_ST( 'f',  3,      874,   870 ), /*   873 step              */
+-  S_ST( 'w',  3,      424,     0 ), /*   874 stepf             */
++  S_ST( 'w',  3,      423,     0 ), /*   874 stepf             */
+   S_ST( 'o',  3,      876,   873 ), /*   875 step              */
+-  S_ST( 'u',  3,      425,     0 ), /*   876 stepo             */
++  S_ST( 'u',  3,      424,     0 ), /*   876 stepo             */
+   S_ST( 'r',  3,      878,   869 ), /*   877 st                */
+   S_ST( 'a',  3,      879,     0 ), /*   878 str               */
+   S_ST( 't',  3,      880,     0 ), /*   879 stra              */
+-  S_ST( 'u',  3,      426,     0 ), /*   880 strat             */
+-  S_ST( 'y',  3,      428,   854 ), /*   881 s                 */
++  S_ST( 'u',  3,      425,     0 ), /*   880 strat             */
++  S_ST( 'y',  3,      427,   854 ), /*   881 s                 */
+   S_ST( 's',  3,      883,     0 ), /*   882 sys               */
+   S_ST( 't',  3,      884,     0 ), /*   883 syss              */
+   S_ST( 'a',  3,      885,     0 ), /*   884 sysst             */
+-  S_ST( 't',  3,      429,     0 ), /*   885 syssta            */
++  S_ST( 't',  3,      428,     0 ), /*   885 syssta            */
+   S_ST( 't',  3,      912,   801 ), /*   886                   */
+   S_ST( 'i',  3,      898,     0 ), /*   887 t                 */
+-  S_ST( 'c',  3,      430,     0 ), /*   888 ti                */
++  S_ST( 'c',  3,      429,     0 ), /*   888 ti                */
+   S_ST( 'm',  3,      891,   888 ), /*   889 ti                */
+-  S_ST( 'e',  3,      433,     0 ), /*   890 tim               */
++  S_ST( 'e',  3,      432,     0 ), /*   890 tim               */
+   S_ST( 'i',  3,      892,   890 ), /*   891 tim               */
+   S_ST( 'n',  3,      893,     0 ), /*   892 timi              */
+   S_ST( 'g',  3,      894,     0 ), /*   893 timin             */
+   S_ST( 's',  3,      895,     0 ), /*   894 timing            */
+   S_ST( 't',  3,      896,     0 ), /*   895 timings           */
+   S_ST( 'a',  3,      897,     0 ), /*   896 timingst          */
+-  S_ST( 't',  3,      434,     0 ), /*   897 timingsta         */
++  S_ST( 't',  3,      433,     0 ), /*   897 timingsta         */
+   S_ST( 'n',  3,      899,   889 ), /*   898 ti                */
+   S_ST( 'k',  3,      900,     0 ), /*   899 tin               */
+-  S_ST( 'e',  3,      435,     0 ), /*   900 tink              */
+-  S_ST( 'o',  3,      436,   887 ), /*   901 t                 */
++  S_ST( 'e',  3,      434,     0 ), /*   900 tink              */
++  S_ST( 'o',  3,      435,   887 ), /*   901 t                 */
+   S_ST( 'r',  3,      904,   901 ), /*   902 t                 */
+-  S_ST( 'a',  3,      437,     0 ), /*   903 tr                */
++  S_ST( 'a',  3,      436,     0 ), /*   903 tr                */
+   S_ST( 'u',  3,      905,   903 ), /*   904 tr                */
+-  S_ST( 's',  3,      906,   438 ), /*   905 tru               */
++  S_ST( 's',  3,      906,   437 ), /*   905 tru               */
+   S_ST( 't',  3,      907,     0 ), /*   906 trus              */
+   S_ST( 'e',  3,      908,     0 ), /*   907 trust             */
+   S_ST( 'd',  3,      909,     0 ), /*   908 truste            */
+   S_ST( 'k',  3,      910,     0 ), /*   909 trusted           */
+-  S_ST( 'e',  3,      439,     0 ), /*   910 trustedk          */
+-  S_ST( 't',  3,      440,   902 ), /*   911 t                 */
++  S_ST( 'e',  3,      438,     0 ), /*   910 trustedk          */
++  S_ST( 't',  3,      439,   902 ), /*   911 t                 */
+   S_ST( 'y',  3,      913,   911 ), /*   912 t                 */
+-  S_ST( 'p',  3,      441,     0 ), /*   913 ty                */
++  S_ST( 'p',  3,      440,     0 ), /*   913 ty                */
+   S_ST( 'u',  3,      915,   886 ), /*   914                   */
+   S_ST( 'n',  3,      921,     0 ), /*   915 u                 */
+   S_ST( 'c',  3,      917,     0 ), /*   916 un                */
+   S_ST( 'o',  3,      918,     0 ), /*   917 unc               */
+   S_ST( 'n',  3,      919,     0 ), /*   918 unco              */
+   S_ST( 'f',  3,      920,     0 ), /*   919 uncon             */
+-  S_ST( 'i',  3,      446,     0 ), /*   920 unconf            */
++  S_ST( 'i',  3,      445,     0 ), /*   920 unconf            */
+   S_ST( 'p',  3,      922,   916 ), /*   921 un                */
+   S_ST( 'e',  3,      923,     0 ), /*   922 unp               */
+-  S_ST( 'e',  3,      447,     0 ), /*   923 unpe              */
++  S_ST( 'e',  3,      446,     0 ), /*   923 unpe              */
+   S_ST( '_',  3,      944,     0 ), /*   924 unpeer            */
+   S_ST( 'c',  3,      926,     0 ), /*   925 unpeer_           */
+   S_ST( 'r',  3,      927,     0 ), /*   926 unpeer_c          */
+@@ -1161,7 +1161,7 @@ const scan_state sst[988] = {
+   S_ST( 'e',  3,      933,     0 ), /*   932 unpeer_crypto_    */
+   S_ST( 'a',  3,      934,     0 ), /*   933 unpeer_crypto_e   */
+   S_ST( 'r',  3,      935,     0 ), /*   934 unpeer_crypto_ea  */
+-  S_ST( 'l',  3,      443,     0 ), /*   935 unpeer_crypto_ear */
++  S_ST( 'l',  3,      442,     0 ), /*   935 unpeer_crypto_ear */
+   S_ST( 'n',  3,      937,   932 ), /*   936 unpeer_crypto_    */
+   S_ST( 'a',  3,      938,     0 ), /*   937 unpeer_crypto_n   */
+   S_ST( 'k',  3,      939,     0 ), /*   938 unpeer_crypto_na  */
+@@ -1169,7 +1169,7 @@ const scan_state sst[988] = {
+   S_ST( 'e',  3,      941,     0 ), /*   940 unpeer_crypto_nak_ */
+   S_ST( 'a',  3,      942,     0 ), /*   941 unpeer_crypto_nak_e */
+   S_ST( 'r',  3,      943,     0 ), /*   942 unpeer_crypto_nak_ea */
+-  S_ST( 'l',  3,      444,     0 ), /*   943 unpeer_crypto_nak_ear */
++  S_ST( 'l',  3,      443,     0 ), /*   943 unpeer_crypto_nak_ear */
+   S_ST( 'd',  3,      945,   925 ), /*   944 unpeer_           */
+   S_ST( 'i',  3,      946,     0 ), /*   945 unpeer_d          */
+   S_ST( 'g',  3,      947,     0 ), /*   946 unpeer_di         */
+@@ -1180,39 +1180,39 @@ const scan_state sst[988] = {
+   S_ST( 'e',  3,      952,     0 ), /*   951 unpeer_digest_    */
+   S_ST( 'a',  3,      953,     0 ), /*   952 unpeer_digest_e   */
+   S_ST( 'r',  3,      954,     0 ), /*   953 unpeer_digest_ea  */
+-  S_ST( 'l',  3,      445,     0 ), /*   954 unpeer_digest_ear */
++  S_ST( 'l',  3,      444,     0 ), /*   954 unpeer_digest_ear */
+   S_ST( 'v',  3,      956,   914 ), /*   955                   */
+   S_ST( 'e',  3,      957,     0 ), /*   956 v                 */
+   S_ST( 'r',  3,      958,     0 ), /*   957 ve                */
+   S_ST( 's',  3,      959,     0 ), /*   958 ver               */
+   S_ST( 'i',  3,      960,     0 ), /*   959 vers              */
+-  S_ST( 'o',  3,      448,     0 ), /*   960 versi             */
++  S_ST( 'o',  3,      447,     0 ), /*   960 versi             */
+   S_ST( 'w',  3,      968,   955 ), /*   961                   */
+   S_ST( 'a',  3,      963,     0 ), /*   962 w                 */
+   S_ST( 'n',  3,      964,     0 ), /*   963 wa                */
+   S_ST( 'd',  3,      965,     0 ), /*   964 wan               */
+-  S_ST( 'e',  3,      463,     0 ), /*   965 wand              */
++  S_ST( 'e',  3,      462,     0 ), /*   965 wand              */
+   S_ST( 'e',  3,      967,   962 ), /*   966 w                 */
+-  S_ST( 'e',  3,      450,     0 ), /*   967 we                */
++  S_ST( 'e',  3,      449,     0 ), /*   967 we                */
+   S_ST( 'i',  3,      969,   966 ), /*   968 w                 */
+   S_ST( 'l',  3,      970,     0 ), /*   969 wi                */
+   S_ST( 'd',  3,      971,     0 ), /*   970 wil               */
+   S_ST( 'c',  3,      972,     0 ), /*   971 wild              */
+   S_ST( 'a',  3,      973,     0 ), /*   972 wildc             */
+-  S_ST( 'r',  3,      451,     0 ), /*   973 wildca            */
++  S_ST( 'r',  3,      450,     0 ), /*   973 wildca            */
+   S_ST( 'x',  3,      979,   961 ), /*   974                   */
+   S_ST( 'l',  3,      976,     0 ), /*   975 x                 */
+   S_ST( 'e',  3,      977,     0 ), /*   976 xl                */
+   S_ST( 'a',  3,      978,     0 ), /*   977 xle               */
+-  S_ST( 'v',  3,      452,     0 ), /*   978 xlea              */
++  S_ST( 'v',  3,      451,     0 ), /*   978 xlea              */
+   S_ST( 'm',  3,      980,   975 ), /*   979 x                 */
+   S_ST( 't',  3,      981,     0 ), /*   980 xm                */
+   S_ST( 'n',  3,      982,     0 ), /*   981 xmt               */
+   S_ST( 'o',  3,      983,     0 ), /*   982 xmtn              */
+   S_ST( 'n',  3,      984,     0 ), /*   983 xmtno             */
+-  S_ST( 'c',  3,      453,     0 ), /*   984 xmtnon            */
++  S_ST( 'c',  3,      452,     0 ), /*   984 xmtnon            */
+   S_ST( 'y',  3,      986,   974 ), /*   985 [initial state]   */
+   S_ST( 'e',  3,      987,     0 ), /*   986 y                 */
+-  S_ST( 'a',  3,      454,     0 )  /*   987 ye                */
++  S_ST( 'a',  3,      453,     0 )  /*   987 ye                */
+ };
+ 
Index: pkgsrc/net/ntp4/patches/patch-ntpd_ntp__loopfilter.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-ntpd_ntp__loopfilter.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-ntpd_ntp__loopfilter.c        Sun Jun 21 15:10:47 2020
@@ -0,0 +1,24 @@
+$NetBSD: patch-ntpd_ntp__loopfilter.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- ntpd/ntp_loopfilter.c.orig 2020-03-03 23:41:29.000000000 +0000
++++ ntpd/ntp_loopfilter.c
+@@ -603,7 +603,7 @@ local_clock(
+ 
+                       clock_frequency = direct_freq(fp_offset);
+ 
+-                      /* fall through to EVNT_SPIK */
++                      /*FALLTHROUGH*/
+ 
+               /*
+                * In SPIK state we ignore succeeding outliers until
+@@ -614,7 +614,7 @@ local_clock(
+                       if (mu < clock_minstep)
+                               return (0);
+ 
+-                      /* fall through to default */
++                      /*FALLTHROUGH*/
+ 
+               /*
+                * We get here by default in NSET and FSET states and
Index: pkgsrc/net/ntp4/patches/patch-ntpd_ntp__proto.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-ntpd_ntp__proto.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-ntpd_ntp__proto.c     Sun Jun 21 15:10:47 2020
@@ -0,0 +1,24 @@
+$NetBSD: patch-ntpd_ntp__proto.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- ntpd/ntp_proto.c.orig      2020-03-03 23:41:29.000000000 +0000
++++ ntpd/ntp_proto.c
+@@ -717,7 +717,7 @@ receive(
+        * items from the packet once we can be sure they are indeed
+        * there.
+        */
+-      if (rbufp->recv_length < LEN_PKT_NOMAC) {
++      if ((size_t)rbufp->recv_length < LEN_PKT_NOMAC) {
+               sys_badlength++;
+               return;                         /* bogus length */
+       }
+@@ -4680,7 +4680,7 @@ fast_xmit(
+        * packet is not authenticated.
+        */
+       sendlen = LEN_PKT_NOMAC;
+-      if (rbufp->recv_length == sendlen) {
++      if ((size_t)rbufp->recv_length == sendlen) {
+               sendpkt(&rbufp->recv_srcadr, rbufp->dstadr, 0, &xpkt,
+                   sendlen);
+               DPRINTF(1, ("fast_xmit: at %ld %s->%s mode %d len %lu\n",
Index: pkgsrc/net/ntp4/patches/patch-ntpd_ntp__restrict.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-ntpd_ntp__restrict.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-ntpd_ntp__restrict.c  Sun Jun 21 15:10:47 2020
@@ -0,0 +1,24 @@
+$NetBSD: patch-ntpd_ntp__restrict.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- ntpd/ntp_restrict.c.orig   2020-03-03 23:41:29.000000000 +0000
++++ ntpd/ntp_restrict.c
+@@ -114,7 +114,7 @@ static restrict_u *        match_restrict6_addr
+ static restrict_u *   match_restrict_entry(const restrict_u *, int);
+ static int            res_sorts_before4(restrict_u *, restrict_u *);
+ static int            res_sorts_before6(restrict_u *, restrict_u *);
+-static char *         roptoa(restrict_op op);
++static const char *   roptoa(restrict_op op);
+ 
+ 
+ void  dump_restricts(void);
+@@ -576,7 +576,7 @@ restrictions(
+ /*
+  * roptoa - convert a restrict_op to a string
+  */
+-char *
++const char *
+ roptoa(restrict_op op) {
+       static char sb[30];
+ 
Index: pkgsrc/net/ntp4/patches/patch-ntpd_refclock__jjy.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-ntpd_refclock__jjy.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-ntpd_refclock__jjy.c  Sun Jun 21 15:10:47 2020
@@ -0,0 +1,60 @@
+$NetBSD: patch-ntpd_refclock__jjy.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- ntpd/refclock_jjy.c.orig   2018-02-27 15:15:27.000000000 +0000
++++ ntpd/refclock_jjy.c
+@@ -1010,7 +1010,7 @@ static void
+ jjy_synctime ( struct peer *peer, struct refclockproc *pp, struct jjyunit *up )
+ {
+ 
+-      char    sLog [ 80 ], cStatus ;
++      char    sLog [ 192 ], cStatus ;
+       const char      *pStatus ;
+ 
+       pp->year   = up->year ;
+@@ -1165,7 +1165,7 @@ jjy_receive_tristate_jjy01 ( struct recv
+       struct peer         *peer;
+ 
+       char *          pBuf ;
+-      char            sLog [ 100 ] ;
++      char            sLog [ 192 ] ;
+       int             iLen ;
+       int             rc ;
+ 
+@@ -1461,7 +1461,7 @@ jjy_receive_cdex_jst2000 ( struct recvbu
+       struct refclockproc *pp ;
+       struct peer         *peer ;
+ 
+-      char    *pBuf, sLog [ 100 ] ;
++      char    *pBuf, sLog [ 192 ] ;
+       int     iLen ;
+       int     rc ;
+ 
+@@ -2344,7 +2344,7 @@ jjy_receive_seiko_tsys_tdc_300 ( struct 
+       struct refclockproc     *pp ;
+       struct jjyunit          *up ;
+ 
+-      char    *pBuf, sLog [ 100 ] ;
++      char    *pBuf, sLog [ 192 ] ;
+       int     iLen, i ;
+       int     rc, iWeekday ;
+       time_t  now ;
+@@ -2693,7 +2693,7 @@ static int
+ jjy_start_telephone ( int unit, struct peer *peer, struct jjyunit *up )
+ {
+ 
+-      char    sLog [ 80 ], sFirstThreeDigits [ 4 ] ;
++      char    sLog [ 192 ], sFirstThreeDigits [ 4 ] ;
+       int     iNumberOfDigitsOfPhoneNumber, iCommaCount, iCommaPosition ;
+       size_t  i ;
+       size_t  iFirstThreeDigitsCount ;
+@@ -3402,7 +3402,7 @@ teljjy_conn_data ( struct peer *peer, st
+ 
+       char    *pBuf ;
+       int     iLen, rc ;
+-      char    sLog [ 80 ] ;
++      char    sLog [ 192 ] ;
+       char    bAdjustment ;
+ 
+ 
Index: pkgsrc/net/ntp4/patches/patch-ntpd_refclock__jupiter.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-ntpd_refclock__jupiter.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-ntpd_refclock__jupiter.c      Sun Jun 21 15:10:47 2020
@@ -0,0 +1,17 @@
+$NetBSD: patch-ntpd_refclock__jupiter.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- ntpd/refclock_jupiter.c.orig       2020-03-03 23:41:29.000000000 +0000
++++ ntpd/refclock_jupiter.c
+@@ -186,8 +186,8 @@ jupiter_start(
+       snprintf(gpsdev, sizeof(gpsdev), DEVICE, unit);
+       fd = refclock_open(gpsdev, SPEED232, LDISC_RAW);
+       if (fd <= 0) {
+-              jupiter_debug(peer, "jupiter_start", "open %s: %m",
+-                            gpsdev);
++              jupiter_debug(peer, "jupiter_start", "open %s: %s",
++                            gpsdev, strerror(errno));
+               return (0);
+       }
+ 
Index: pkgsrc/net/ntp4/patches/patch-ntpd_refclock__neoclock4x.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-ntpd_refclock__neoclock4x.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-ntpd_refclock__neoclock4x.c   Sun Jun 21 15:10:47 2020
@@ -0,0 +1,35 @@
+$NetBSD: patch-ntpd_refclock__neoclock4x.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- ntpd/refclock_neoclock4x.c.orig    2014-12-29 06:26:52.000000000 +0000
++++ ntpd/refclock_neoclock4x.c
+@@ -725,7 +725,8 @@ neoclock4x_control(int unit,
+   if(NULL != out)
+     {
+       char *tt;
+-      char tmpbuf[80];
++      /* the 199 here is almost 2x the max string */
++      char tmpbuf[199];
+ 
+       out->kv_list = (struct ctl_var *)0;
+       out->type    = REFCLK_NEOCLOCK4X;
+@@ -765,14 +766,15 @@ neoclock4x_control(int unit,
+         snprintf(tt, 39, "dststatus=\"winter\"");
+       else
+         snprintf(tt, 39, "dststatus=\"unknown\"");
++      /* the 99 below is greater than 80 the max string */
+       tt = add_var(&out->kv_list, 80, RO|DEF);
+-      snprintf(tt, 79, "firmware=\"%s\"", up->firmware);
++      snprintf(tt, 99, "firmware=\"%s\"", up->firmware);
+       tt = add_var(&out->kv_list, 40, RO|DEF);
+       snprintf(tt, 39, "firmwaretag=\"%c\"", up->firmwaretag);
+       tt = add_var(&out->kv_list, 80, RO|DEF);
+-      snprintf(tt, 79, "driver version=\"%s\"", NEOCLOCK4X_DRIVER_VERSION);
++      snprintf(tt, 99, "driver version=\"%s\"", NEOCLOCK4X_DRIVER_VERSION);
+       tt = add_var(&out->kv_list, 80, RO|DEF);
+-      snprintf(tt, 79, "serialnumber=\"%s\"", up->serial);
++      snprintf(tt, 99, "serialnumber=\"%s\"", up->serial);
+     }
+ }
+ 
Index: pkgsrc/net/ntp4/patches/patch-ntpd_refclock__oncore.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-ntpd_refclock__oncore.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-ntpd_refclock__oncore.c       Sun Jun 21 15:10:47 2020
@@ -0,0 +1,48 @@
+$NetBSD: patch-ntpd_refclock__oncore.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- ntpd/refclock_oncore.c.orig        2020-03-03 23:41:29.000000000 +0000
++++ ntpd/refclock_oncore.c
+@@ -1804,7 +1804,7 @@ oncore_get_timestamp(
+               Rsm = ((instance->BEHa[129]<<8) | instance->BEHa[130]);
+ 
+       if (instance->chan == 6 || instance->chan == 8) {
+-              char    f1[5], f2[5], f3[5], f4[5];
++              char    f1[6], f2[6], f3[6], f4[6];
+               if (instance->traim) {
+                       snprintf(f1, sizeof(f1), "%d",
+                                instance->BEHn[21]);
+@@ -1837,7 +1837,7 @@ oncore_get_timestamp(
+                   instance->BEHa[57], instance->BEHa[61], instance->BEHa[65], instance->BEHa[69]
+                   );                                  /* will be 0 for 6 chan */
+       } else if (instance->chan == 12) {
+-              char    f1[5], f2[5], f3[5], f4[5];
++              char    f1[6], f2[6], f3[6], f4[6];
+               if (instance->traim) {
+                       snprintf(f1, sizeof(f1), "%d",
+                                instance->BEHn[6]);
+@@ -3429,9 +3429,10 @@ oncore_check_leap_sec(
+               instance->Bj_day = instance->BEHa[5];
+ 
+               if (instance->saw_Gj < 0) {     /* -1 DONT have Gj use Bj */
+-                      if ((instance->BEHa[4] == 6) || (instance->BEHa[4] == 12))
++                      if ((instance->BEHa[4] == 6) || (instance->BEHa[4] == 12)) {
+                               oncore_sendmsg(instance, oncore_cmd_Bj, sizeof(oncore_cmd_Bj));
+                               oncore_sendmsg(instance, oncore_cmd_Bl, sizeof(oncore_cmd_Bl));
++                      }
+                       return;
+               }
+ 
+@@ -3872,9 +3873,10 @@ oncore_set_traim(
+                       oncore_sendmsg(instance, oncore_cmd_Bnx, sizeof(oncore_cmd_Bnx));
+               else if (instance->chan == 8)
+                       oncore_sendmsg(instance, oncore_cmd_Enx, sizeof(oncore_cmd_Enx));
+-              else    /* chan == 12 */
++              else {  /* chan == 12 */
+                       oncore_sendmsg(instance, oncore_cmd_Ge0, sizeof(oncore_cmd_Ge0));
+                       oncore_sendmsg(instance, oncore_cmd_Hn0, sizeof(oncore_cmd_Hn0));
++              }
+       }
+ }
+ 
Index: pkgsrc/net/ntp4/patches/patch-ntpd_refclock__ulink.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-ntpd_refclock__ulink.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-ntpd_refclock__ulink.c        Sun Jun 21 15:10:47 2020
@@ -0,0 +1,22 @@
+$NetBSD: patch-ntpd_refclock__ulink.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- ntpd/refclock_ulink.c.orig 2012-06-28 06:37:06.000000000 +0000
++++ ntpd/refclock_ulink.c
+@@ -389,6 +389,7 @@ ulink_receive(
+                     }
+                   break;
+               }
++              /*FALLTHROUGH*/
+ 
+               case LEN320:
+ 
+@@ -433,6 +434,7 @@ ulink_receive(
+               }
+ 
+               default:
++              /*FALLTHROUGH*/
+               refclock_report(peer, CEVNT_BADREPLY);
+               return;
+       }
Index: pkgsrc/net/ntp4/patches/patch-ntpd_refclock__wwvb.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-ntpd_refclock__wwvb.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-ntpd_refclock__wwvb.c Sun Jun 21 15:10:47 2020
@@ -0,0 +1,16 @@
+$NetBSD: patch-ntpd_refclock__wwvb.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- ntpd/refclock_wwvb.c.orig  2014-12-30 00:29:38.000000000 +0000
++++ ntpd/refclock_wwvb.c
+@@ -154,7 +154,8 @@ static     void    wwvb_control    (int, const str
+                                struct refclockstat *, struct peer *);
+ #define               WWVB_CONTROL    wwvb_control
+ #else
+-#define               WWVB_CONTROL    noentry
++#define               WWVB_CONTROL    (void)(*)
++noentry
+ #endif /* HAVE_PPSAPI */
+ 
+ /*
Index: pkgsrc/net/ntp4/patches/patch-ntpdate_ntpdate.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-ntpdate_ntpdate.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-ntpdate_ntpdate.c     Sun Jun 21 15:10:47 2020
@@ -0,0 +1,32 @@
+$NetBSD: patch-ntpdate_ntpdate.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- ntpdate/ntpdate.c.orig     2020-03-03 23:41:29.000000000 +0000
++++ ntpdate/ntpdate.c
+@@ -435,6 +435,7 @@ ntpdatemain (
+           }
+ 
+       if (errflg) {
++usage:
+               (void) fprintf(stderr,
+                   "usage: %s [-46bBdqsuv] [-a key#] [-e delay] [-k file] [-p samples] [-o version#] [-t timeo] server ...\n",
+                   progname);
+@@ -511,7 +512,7 @@ ntpdatemain (
+ 
+       if (sys_numservers == 0) {
+               msyslog(LOG_ERR, "no servers can be used, exiting");
+-              exit(1);
++              goto usage;
+       }
+ 
+       /*
+@@ -2175,7 +2176,7 @@ print_server(
+       if (REFID_ISTEXT(pp->stratum)) {
+               str = (char *) &pp->refid;
+               for (i=0; i<4 && str[i]; i++) {
+-                      junk[i] = (isprint(str[i]) ? str[i] : '.');
++                      junk[i] = (isprint((unsigned char)str[i]) ? str[i] : '.');
+               }
+               junk[i] = 0; // force terminating 0
+               str = junk;
Index: pkgsrc/net/ntp4/patches/patch-ntpdc_Makefile.in
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-ntpdc_Makefile.in:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-ntpdc_Makefile.in     Sun Jun 21 15:10:47 2020
@@ -0,0 +1,17 @@
+$NetBSD: patch-ntpdc_Makefile.in,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- ntpdc/Makefile.in.orig     2020-03-04 01:40:11.000000000 +0000
++++ ntpdc/Makefile.in
+@@ -1207,8 +1207,8 @@ ntpdc-layout.o: nl.c
+ layout.here: ntpdc-layout
+       ./ntpdc-layout > $@
+ 
+-check-layout: ntpdc-layout $(srcdir)/layout.std layout.here
+-      cmp $(srcdir)/layout.std layout.here && echo stamp > $@
++check-layout: # ntpdc-layout $(srcdir)/layout.std layout.here
++#     cmp $(srcdir)/layout.std layout.here && echo stamp > $@
+ 
+ $(PROGRAMS): version.o
+ 
Index: pkgsrc/net/ntp4/patches/patch-ntpq_ntpq.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-ntpq_ntpq.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-ntpq_ntpq.c   Sun Jun 21 15:10:47 2020
@@ -0,0 +1,34 @@
+$NetBSD: patch-ntpq_ntpq.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- ntpq/ntpq.c.orig   2020-03-04 01:38:15.000000000 +0000
++++ ntpq/ntpq.c
+@@ -445,7 +445,9 @@ chost chosts[MAXHOSTS];
+ # define SETJMP(x)    setjmp((x))
+ # define LONGJMP(x, v)        longjmp((x),(v))
+ #endif
++#ifndef BUILD_AS_LIB
+ static        JMP_BUF         interrupt_buf;
++#endif
+ static        volatile int    jump = 0;
+ 
+ /*
+@@ -3736,7 +3738,7 @@ cookedprint(
+               case SN:
+                       if (!value)
+                               output_raw = '?';
+-                      else if (isdigit(*value)) {     /* number without sign */
++                      else if (isdigit(*(const unsigned char *)value)) {      /* number without sign */
+                               bv[0] = '+';
+                               atoascii (value, MAXVALLEN, bv+1, sizeof(bv)-1);
+                               output(fp, name, bv);
+@@ -3894,7 +3896,7 @@ list_md_fn(const EVP_MD *m, const char *
+ 
+       /* Discard MACs that NTP won't accept. */
+       /* Keep this consistent with keytype_from_text() in ssl_init.c. */
+-      if (EVP_MD_size(m) > (MAX_MAC_LEN - sizeof(keyid_t)))
++      if (EVP_MD_size(m) > (int)(MAX_MAC_LEN - sizeof(keyid_t)))
+               return;
+       
+       name = EVP_MD_name(m);
Index: pkgsrc/net/ntp4/patches/patch-sntp_libevent_build-aux_config.guess
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-sntp_libevent_build-aux_config.guess:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-sntp_libevent_build-aux_config.guess  Sun Jun 21 15:10:47 2020
@@ -0,0 +1,1552 @@
+$NetBSD: patch-sntp_libevent_build-aux_config.guess,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- sntp/libevent/build-aux/config.guess.orig  2017-02-01 09:49:25.000000000 +0000
++++ sntp/libevent/build-aux/config.guess
+@@ -1,8 +1,8 @@
+ #! /bin/sh
+ # Attempt to guess a canonical system name.
+-#   Copyright 1992-2014 Free Software Foundation, Inc.
++#   Copyright 1992-2019 Free Software Foundation, Inc.
+ 
+-timestamp='2014-11-04'
++timestamp='2019-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
+@@ -15,7 +15,7 @@ timestamp='2014-11-04'
+ # 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
+@@ -27,7 +27,7 @@ timestamp='2014-11-04'
+ # Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
+ #
+ # You can get the latest version of this script from:
+-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
++# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
+ #
+ # Please send patches to <config-patches%gnu.org@localhost>.
+ 
+@@ -39,7 +39,7 @@ Usage: $0 [OPTION]
+ 
+ Output the configuration name of the system \`$me' is run on.
+ 
+-Operation modes:
++Options:
+   -h, --help         print this help, then exit
+   -t, --time-stamp   print date of last modification, then exit
+   -v, --version      print version number, then exit
+@@ -50,7 +50,7 @@ version="\
+ GNU config.guess ($timestamp)
+ 
+ Originally written by Per Bothner.
+-Copyright 1992-2014 Free Software Foundation, Inc.
++Copyright 1992-2019 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,8 +84,6 @@ if test $# != 0; then
+   exit 1
+ fi
+ 
+-trap 'exit 1' 1 2 15
+-
+ # 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
+ # temporary files to be created and, as you can see below, it is a
+@@ -96,34 +94,38 @@ trap 'exit 1' 1 2 15
+ 
+ # 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() {
++    : "${TMPDIR=/tmp}"
++    # shellcheck disable=SC2039
++    { 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@localhost 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
+ 
+@@ -132,14 +134,14 @@ UNAME_RELEASE=`(uname -r) 2>/dev/null` |
+ 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
+ 
+-      eval $set_cc_for_build
+-      cat <<-EOF > $dummy.c
++      set_cc_for_build
++      cat <<-EOF > "$dummy.c"
+       #include <features.h>
+       #if defined(__UCLIBC__)
+       LIBC=uclibc
+@@ -149,13 +151,20 @@ Linux|GNU|GNU/*)
+       LIBC=gnu
+       #endif
+       EOF
+-      eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
++      eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`"
++
++      # 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
++      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*,
+@@ -168,21 +177,33 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
+       # 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=`(/sbin/$sysctl 2>/dev/null || \
+-          /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
+-      case "${UNAME_MACHINE_ARCH}" in
++      UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
++          "/sbin/$sysctl" 2>/dev/null || \
++          "/usr/sbin/$sysctl" 2>/dev/null || \
++          echo unknown)`
++      case "$UNAME_MACHINE_ARCH" in
+           armeb) machine=armeb-unknown ;;
+           arm*) machine=arm-unknown ;;
+           sh3el) machine=shl-unknown ;;
+           sh3eb) machine=sh-unknown ;;
+           sh5el) machine=sh5le-unknown ;;
+-          *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
++          earm*)
++              arch="${UNAME_MACHINE_ARCH#e}"
++              arch="${arch%eb}"
++              arch="${arch%hf}"
++              endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'`
++              machine="${arch}${endian}"-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.
+-      case "${UNAME_MACHINE_ARCH}" in
++      # to ELF recently (or will in the future) and ABI.
++      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
+@@ -197,44 +218,67 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
+               os=netbsd
+               ;;
+       esac
++      # Determine ABI tags.
++      case "$UNAME_MACHINE_ARCH" in
++          earm*)
++              expr='s/v[0-9]//;s/earm/-eabi/;s/eb$//'
++              abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"`
++              ;;
++      esac
+       # The OS release
+       # Debian GNU/NetBSD machines have a different userland, and
+       # 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'
+               ;;
+           *)
+-              release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
++              release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2`
+               ;;
+       esac
+       # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
+       # contains redundant information, the shorter form:
+       # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
+-      echo "${machine}-${os}${release}"
++      echo "$machine-${os}${release}${abi-}"
+       exit ;;
+     *:Bitrig:*:*)
+       UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
+-      echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
++      echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE"
+       exit ;;
+     *:OpenBSD:*:*)
+       UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
+-      echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
++      echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE"
++      exit ;;
++    *:LibertyBSD:*:*)
++      UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
++      echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE"
++      exit ;;
++    *:MidnightBSD:*:*)
++      echo "$UNAME_MACHINE"-unknown-midnightbsd"$UNAME_RELEASE"
+       exit ;;
+     *:ekkoBSD:*:*)
+-      echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
++      echo "$UNAME_MACHINE"-unknown-ekkobsd"$UNAME_RELEASE"
+       exit ;;
+     *:SolidBSD:*:*)
+-      echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
++      echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE"
+       exit ;;
+     macppc:MirBSD:*:*)
+-      echo powerpc-unknown-mirbsd${UNAME_RELEASE}
++      echo powerpc-unknown-mirbsd"$UNAME_RELEASE"
+       exit ;;
+     *:MirBSD:*:*)
+-      echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
++      echo "$UNAME_MACHINE"-unknown-mirbsd"$UNAME_RELEASE"
++      exit ;;
++    *:Sortix:*:*)
++      echo "$UNAME_MACHINE"-unknown-sortix
+       exit ;;
++    *:Redox:*:*)
++      echo "$UNAME_MACHINE"-unknown-redox
++      exit ;;
++    mips:OSF1:*.*)
++        echo mips-dec-osf1
++        exit ;;
+     alpha:OSF1:*:*)
+       case $UNAME_RELEASE in
+       *4.0)
+@@ -251,63 +295,54 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
+       ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
+       case "$ALPHA_CPU_TYPE" in
+           "EV4 (21064)")
+-              UNAME_MACHINE="alpha" ;;
++              UNAME_MACHINE=alpha ;;
+           "EV4.5 (21064)")
+-              UNAME_MACHINE="alpha" ;;
++              UNAME_MACHINE=alpha ;;
+           "LCA4 (21066/21068)")
+-              UNAME_MACHINE="alpha" ;;
++              UNAME_MACHINE=alpha ;;
+           "EV5 (21164)")
+-              UNAME_MACHINE="alphaev5" ;;
++              UNAME_MACHINE=alphaev5 ;;
+           "EV5.6 (21164A)")
+-              UNAME_MACHINE="alphaev56" ;;
++              UNAME_MACHINE=alphaev56 ;;
+           "EV5.6 (21164PC)")
+-              UNAME_MACHINE="alphapca56" ;;
++              UNAME_MACHINE=alphapca56 ;;
+           "EV5.7 (21164PC)")
+-              UNAME_MACHINE="alphapca57" ;;
++              UNAME_MACHINE=alphapca57 ;;
+           "EV6 (21264)")
+-              UNAME_MACHINE="alphaev6" ;;
++              UNAME_MACHINE=alphaev6 ;;
+           "EV6.7 (21264A)")
+-              UNAME_MACHINE="alphaev67" ;;
++              UNAME_MACHINE=alphaev67 ;;
+           "EV6.8CB (21264C)")
+-              UNAME_MACHINE="alphaev68" ;;
++              UNAME_MACHINE=alphaev68 ;;
+           "EV6.8AL (21264B)")
+-              UNAME_MACHINE="alphaev68" ;;
++              UNAME_MACHINE=alphaev68 ;;
+           "EV6.8CX (21264D)")
+-              UNAME_MACHINE="alphaev68" ;;
++              UNAME_MACHINE=alphaev68 ;;
+           "EV6.9A (21264/EV69A)")
+-              UNAME_MACHINE="alphaev69" ;;
++              UNAME_MACHINE=alphaev69 ;;
+           "EV7 (21364)")
+-              UNAME_MACHINE="alphaev7" ;;
++              UNAME_MACHINE=alphaev7 ;;
+           "EV7.9 (21364A)")
+-              UNAME_MACHINE="alphaev79" ;;
++              UNAME_MACHINE=alphaev79 ;;
+       esac
+       # A Pn.n version is a patched version.
+       # A Vn.n version is a released version.
+       # 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'`
++      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 ;;
+-    Alpha\ *:Windows_NT*:*)
+-      # How do we know it's Interix rather than the generic POSIX subsystem?
+-      # Should we change UNAME_MACHINE based on the output of uname instead
+-      # of the specific Alpha model?
+-      echo alpha-pc-interix
+-      exit ;;
+-    21064:Windows_NT:50:3)
+-      echo alpha-dec-winnt3.5
+-      exit ;;
+     Amiga*:UNIX_System_V:4.0:*)
+       echo m68k-unknown-sysv4
+       exit ;;
+     *:[Aa]miga[Oo][Ss]:*:*)
+-      echo ${UNAME_MACHINE}-unknown-amigaos
++      echo "$UNAME_MACHINE"-unknown-amigaos
+       exit ;;
+     *:[Mm]orph[Oo][Ss]:*:*)
+-      echo ${UNAME_MACHINE}-unknown-morphos
++      echo "$UNAME_MACHINE"-unknown-morphos
+       exit ;;
+     *:OS/390:*:*)
+       echo i370-ibm-openedition
+@@ -319,7 +354,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
+       echo powerpc-ibm-os400
+       exit ;;
+     arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
+-      echo arm-acorn-riscix${UNAME_RELEASE}
++      echo arm-acorn-riscix"$UNAME_RELEASE"
+       exit ;;
+     arm*:riscos:*:*|arm*:RISCOS:*:*)
+       echo arm-unknown-riscos
+@@ -346,38 +381,51 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
+           sparc) echo sparc-icl-nx7; exit ;;
+       esac ;;
+     s390x:SunOS:*:*)
+-      echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
++      echo "$UNAME_MACHINE"-ibm-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
+       exit ;;
+     sun4H:SunOS:5.*:*)
+-      echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
++      echo sparc-hal-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
+       exit ;;
+     sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
+-      echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
++      set_cc_for_build
++      SUN_ARCH=sparc
++      # 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 (echo '#ifdef __sparcv9'; echo IS_64BIT_ARCH; echo '#endif') | \
++              (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
++              grep IS_64BIT_ARCH >/dev/null
++          then
++              SUN_ARCH=sparcv9
++          fi
++      fi
++      echo "$SUN_ARCH"-sun-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
+       exit ;;
+     i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
+-      echo i386-pc-auroraux${UNAME_RELEASE}
++      echo i386-pc-auroraux"$UNAME_RELEASE"
+       exit ;;
+     i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
+-      eval $set_cc_for_build
+-      SUN_ARCH="i386"
++      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 [ "$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 -E - 2>/dev/null) | \
+               grep IS_64BIT_ARCH >/dev/null
+           then
+-              SUN_ARCH="x86_64"
++              SUN_ARCH=x86_64
+           fi
+       fi
+-      echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
++      echo "$SUN_ARCH"-pc-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
+       exit ;;
+     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/[^.]*//'`
++      echo sparc-sun-solaris3"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
+       exit ;;
+     sun4*:SunOS:*:*)
+       case "`/usr/bin/arch -k`" in
+@@ -386,25 +434,25 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
+               ;;
+       esac
+       # Japanese Language versions have a version number like `4.1.3-JL'.
+-      echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
++      echo sparc-sun-sunos"`echo "$UNAME_RELEASE"|sed -e 's/-/_/'`"
+       exit ;;
+     sun3*:SunOS:*:*)
+-      echo m68k-sun-sunos${UNAME_RELEASE}
++      echo m68k-sun-sunos"$UNAME_RELEASE"
+       exit ;;
+     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
++      test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3
+       case "`/bin/arch`" in
+           sun3)
+-              echo m68k-sun-sunos${UNAME_RELEASE}
++              echo m68k-sun-sunos"$UNAME_RELEASE"
+               ;;
+           sun4)
+-              echo sparc-sun-sunos${UNAME_RELEASE}
++              echo sparc-sun-sunos"$UNAME_RELEASE"
+               ;;
+       esac
+       exit ;;
+     aushp:SunOS:*:*)
+-      echo sparc-auspex-sunos${UNAME_RELEASE}
++      echo sparc-auspex-sunos"$UNAME_RELEASE"
+       exit ;;
+     # The situation for MiNT is a little confusing.  The machine name
+     # can be virtually everything (everything which is not
+@@ -415,44 +463,44 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
+     # 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}
++      echo m68k-atari-mint"$UNAME_RELEASE"
+       exit ;;
+     atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
+-      echo m68k-atari-mint${UNAME_RELEASE}
++      echo m68k-atari-mint"$UNAME_RELEASE"
+       exit ;;
+     *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
+-      echo m68k-atari-mint${UNAME_RELEASE}
++      echo m68k-atari-mint"$UNAME_RELEASE"
+       exit ;;
+     milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
+-      echo m68k-milan-mint${UNAME_RELEASE}
++      echo m68k-milan-mint"$UNAME_RELEASE"
+       exit ;;
+     hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
+-      echo m68k-hades-mint${UNAME_RELEASE}
++      echo m68k-hades-mint"$UNAME_RELEASE"
+       exit ;;
+     *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
+-      echo m68k-unknown-mint${UNAME_RELEASE}
++      echo m68k-unknown-mint"$UNAME_RELEASE"
+       exit ;;
+     m68k:machten:*:*)
+-      echo m68k-apple-machten${UNAME_RELEASE}
++      echo m68k-apple-machten"$UNAME_RELEASE"
+       exit ;;
+     powerpc:machten:*:*)
+-      echo powerpc-apple-machten${UNAME_RELEASE}
++      echo powerpc-apple-machten"$UNAME_RELEASE"
+       exit ;;
+     RISC*:Mach:*:*)
+       echo mips-dec-mach_bsd4.3
+       exit ;;
+     RISC*:ULTRIX:*:*)
+-      echo mips-dec-ultrix${UNAME_RELEASE}
++      echo mips-dec-ultrix"$UNAME_RELEASE"
+       exit ;;
+     VAX*:ULTRIX*:*:*)
+-      echo vax-dec-ultrix${UNAME_RELEASE}
++      echo vax-dec-ultrix"$UNAME_RELEASE"
+       exit ;;
+     2020:CLIX:*:* | 2430:CLIX:*:*)
+-      echo clipper-intergraph-clix${UNAME_RELEASE}
++      echo clipper-intergraph-clix"$UNAME_RELEASE"
+       exit ;;
+     mips:*:*:UMIPS | mips:*:*:RISCos)
+-      eval $set_cc_for_build
+-      sed 's/^        //' << EOF >$dummy.c
++      set_cc_for_build
++      sed 's/^        //' << EOF > "$dummy.c"
+ #ifdef __cplusplus
+ #include <stdio.h>  /* for printf() prototype */
+       int main (int argc, char *argv[]) {
+@@ -461,23 +509,23 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
+ #endif
+       #if defined (host_mips) && defined (MIPSEB)
+       #if defined (SYSTYPE_SYSV)
+-        printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
++        printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0);
+       #endif
+       #if defined (SYSTYPE_SVR4)
+-        printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
++        printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0);
+       #endif
+       #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
+-        printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
++        printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0);
+       #endif
+       #endif
+         exit (-1);
+       }
+ EOF
+-      $CC_FOR_BUILD -o $dummy $dummy.c &&
+-        dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
+-        SYSTEM_NAME=`$dummy $dummyarg` &&
++      $CC_FOR_BUILD -o "$dummy" "$dummy.c" &&
++        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}
++      echo mips-mips-riscos"$UNAME_RELEASE"
+       exit ;;
+     Motorola:PowerMAX_OS:*:*)
+       echo powerpc-motorola-powermax
+@@ -503,17 +551,17 @@ EOF
+     AViiON:dgux:*:*)
+       # DG/UX returns AViiON for all architectures
+       UNAME_PROCESSOR=`/usr/bin/uname -p`
+-      if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
++      if [ "$UNAME_PROCESSOR" = mc88100 ] || [ "$UNAME_PROCESSOR" = mc88110 ]
+       then
+-          if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
+-             [ ${TARGET_BINARY_INTERFACE}x = x ]
++          if [ "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx ] || \
++             [ "$TARGET_BINARY_INTERFACE"x = x ]
+           then
+-              echo m88k-dg-dgux${UNAME_RELEASE}
++              echo m88k-dg-dgux"$UNAME_RELEASE"
+           else
+-              echo m88k-dg-dguxbcs${UNAME_RELEASE}
++              echo m88k-dg-dguxbcs"$UNAME_RELEASE"
+           fi
+       else
+-          echo i586-dg-dgux${UNAME_RELEASE}
++          echo i586-dg-dgux"$UNAME_RELEASE"
+       fi
+       exit ;;
+     M88*:DolphinOS:*:*)       # DolphinOS (SVR3)
+@@ -530,7 +578,7 @@ EOF
+       echo m68k-tektronix-bsd
+       exit ;;
+     *:IRIX*:*:*)
+-      echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
++      echo mips-sgi-irix"`echo "$UNAME_RELEASE"|sed -e 's/-/_/g'`"
+       exit ;;
+     ????????: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
+@@ -542,14 +590,14 @@ EOF
+       if [ -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}
++      echo "$UNAME_MACHINE"-ibm-aix"$IBM_REV"
+       exit ;;
+     *:AIX:2:3)
+       if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
+-              eval $set_cc_for_build
+-              sed 's/^                //' << EOF >$dummy.c
++              set_cc_for_build
++              sed 's/^                //' << EOF > "$dummy.c"
+               #include <sys/systemcfg.h>
+ 
+               main()
+@@ -560,7 +608,7 @@ EOF
+                       exit(0);
+                       }
+ EOF
+-              if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
++              if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"`
+               then
+                       echo "$SYSTEM_NAME"
+               else
+@@ -574,7 +622,7 @@ EOF
+       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
++      if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then
+               IBM_ARCH=rs6000
+       else
+               IBM_ARCH=powerpc
+@@ -583,18 +631,18 @@ EOF
+               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}
++      echo "$IBM_ARCH"-ibm-aix"$IBM_REV"
+       exit ;;
+     *:AIX:*:*)
+       echo rs6000-ibm-aix
+       exit ;;
+-    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
++    ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*)
+       echo romp-ibm-bsd4.4
+       exit ;;
+     ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
+-      echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
++      echo romp-ibm-bsd"$UNAME_RELEASE"   # 4.3 with uname added to
+       exit ;;                             # report: romp-ibm BSD 4.3
+     *:BOSX:*:*)
+       echo rs6000-bull-bosx
+@@ -609,28 +657,28 @@ EOF
+       echo m68k-hp-bsd4.4
+       exit ;;
+     9000/[34678]??:HP-UX:*:*)
+-      HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+-      case "${UNAME_MACHINE}" in
+-          9000/31? )            HP_ARCH=m68000 ;;
+-          9000/[34]?? )         HP_ARCH=m68k ;;
++      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
+                   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
+-                    523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
+-                    528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
++                  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
+-                        32) HP_ARCH="hppa2.0n" ;;
+-                        64) HP_ARCH="hppa2.0w" ;;
+-                        '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
++                      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
+-                  sed 's/^            //' << EOF >$dummy.c
++              if [ "$HP_ARCH" = "" ]; then
++                  set_cc_for_build
++                  sed 's/^            //' << EOF > "$dummy.c"
+ 
+               #define _HPUX_SOURCE
+               #include <stdlib.h>
+@@ -663,13 +711,13 @@ EOF
+                   exit (0);
+               }
+ EOF
+-                  (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
++                  (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"`
+                   test -z "$HP_ARCH" && HP_ARCH=hppa
+               fi ;;
+       esac
+-      if [ ${HP_ARCH} = "hppa2.0w" ]
++      if [ "$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
+@@ -680,23 +728,23 @@ EOF
+           # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
+           # => hppa64-hp-hpux11.23
+ 
+-          if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
++          if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) |
+               grep -q __LP64__
+           then
+-              HP_ARCH="hppa2.0w"
++              HP_ARCH=hppa2.0w
+           else
+-              HP_ARCH="hppa64"
++              HP_ARCH=hppa64
+           fi
+       fi
+-      echo ${HP_ARCH}-hp-hpux${HPUX_REV}
++      echo "$HP_ARCH"-hp-hpux"$HPUX_REV"
+       exit ;;
+     ia64:HP-UX:*:*)
+-      HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+-      echo ia64-hp-hpux${HPUX_REV}
++      HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
++      echo ia64-hp-hpux"$HPUX_REV"
+       exit ;;
+     3050*:HI-UX:*:*)
+-      eval $set_cc_for_build
+-      sed 's/^        //' << EOF >$dummy.c
++      set_cc_for_build
++      sed 's/^        //' << EOF > "$dummy.c"
+       #include <unistd.h>
+       int
+       main ()
+@@ -721,11 +769,11 @@ EOF
+         exit (0);
+       }
+ EOF
+-      $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
++      $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` &&
+               { echo "$SYSTEM_NAME"; exit; }
+       echo unknown-hitachi-hiuxwe2
+       exit ;;
+-    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
++    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*)
+       echo hppa1.1-hp-bsd
+       exit ;;
+     9000/8??:4.3bsd:*:*)
+@@ -734,7 +782,7 @@ EOF
+     *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
+       echo hppa1.0-hp-mpeix
+       exit ;;
+-    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
++    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*)
+       echo hppa1.1-hp-osf
+       exit ;;
+     hp8??:OSF1:*:*)
+@@ -742,9 +790,9 @@ EOF
+       exit ;;
+     i*86:OSF1:*:*)
+       if [ -x /usr/sbin/sysversion ] ; then
+-          echo ${UNAME_MACHINE}-unknown-osf1mk
++          echo "$UNAME_MACHINE"-unknown-osf1mk
+       else
+-          echo ${UNAME_MACHINE}-unknown-osf1
++          echo "$UNAME_MACHINE"-unknown-osf1
+       fi
+       exit ;;
+     parisc*:Lites*:*:*)
+@@ -769,127 +817,120 @@ EOF
+       echo c4-convex-bsd
+       exit ;;
+     CRAY*Y-MP:*:*:*)
+-      echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
++      echo ymp-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
+       exit ;;
+     CRAY*[A-Z]90:*:*:*)
+-      echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
++      echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \
+       | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
+             -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
+             -e 's/\.[^.]*$/.X/'
+       exit ;;
+     CRAY*TS:*:*:*)
+-      echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
++      echo t90-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
+       exit ;;
+     CRAY*T3E:*:*:*)
+-      echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
++      echo alphaev5-cray-unicosmk"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
+       exit ;;
+     CRAY*SV1:*:*:*)
+-      echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
++      echo sv1-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
+       exit ;;
+     *:UNICOS/mp:*:*)
+-      echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
++      echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
+       exit ;;
+     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/ /_/'`
++      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 ;;
+     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/ /_/'`
++      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 ;;
+     i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
+-      echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
++      echo "$UNAME_MACHINE"-pc-bsdi"$UNAME_RELEASE"
+       exit ;;
+     sparc*:BSD/OS:*:*)
+-      echo sparc-unknown-bsdi${UNAME_RELEASE}
++      echo sparc-unknown-bsdi"$UNAME_RELEASE"
+       exit ;;
+     *:BSD/OS:*:*)
+-      echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
++      echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE"
++      exit ;;
++    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
++          echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabi
++      else
++          echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabihf
++      fi
+       exit ;;
+     *:FreeBSD:*:*)
+       UNAME_PROCESSOR=`/usr/bin/uname -p`
+-      case ${UNAME_PROCESSOR} in
++      case "$UNAME_PROCESSOR" in
+           amd64)
+-              echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+-          *)
+-              echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
++              UNAME_PROCESSOR=x86_64 ;;
++          i386)
++              UNAME_PROCESSOR=i586 ;;
+       esac
++      echo "$UNAME_PROCESSOR"-unknown-freebsd"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
+       exit ;;
+     i*:CYGWIN*:*)
+-      echo ${UNAME_MACHINE}-pc-cygwin
++      echo "$UNAME_MACHINE"-pc-cygwin
+       exit ;;
+     *:MINGW64*:*)
+-      echo ${UNAME_MACHINE}-pc-mingw64
++      echo "$UNAME_MACHINE"-pc-mingw64
+       exit ;;
+     *:MINGW*:*)
+-      echo ${UNAME_MACHINE}-pc-mingw32
++      echo "$UNAME_MACHINE"-pc-mingw32
+       exit ;;
+     *:MSYS*:*)
+-      echo ${UNAME_MACHINE}-pc-msys
+-      exit ;;
+-    i*:windows32*:*)
+-      # uname -m includes "-pc" on this system.
+-      echo ${UNAME_MACHINE}-mingw32
++      echo "$UNAME_MACHINE"-pc-msys
+       exit ;;
+     i*:PW*:*)
+-      echo ${UNAME_MACHINE}-pc-pw32
++      echo "$UNAME_MACHINE"-pc-pw32
+       exit ;;
+     *:Interix*:*)
+-      case ${UNAME_MACHINE} in
++      case "$UNAME_MACHINE" in
+           x86)
+-              echo i586-pc-interix${UNAME_RELEASE}
++              echo i586-pc-interix"$UNAME_RELEASE"
+               exit ;;
+           authenticamd | genuineintel | EM64T)
+-              echo x86_64-unknown-interix${UNAME_RELEASE}
++              echo x86_64-unknown-interix"$UNAME_RELEASE"
+               exit ;;
+           IA64)
+-              echo ia64-unknown-interix${UNAME_RELEASE}
++              echo ia64-unknown-interix"$UNAME_RELEASE"
+               exit ;;
+       esac ;;
+-    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
+-      echo i${UNAME_MACHINE}-pc-mks
+-      exit ;;
+-    8664:Windows_NT:*)
+-      echo x86_64-pc-mks
+-      exit ;;
+-    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
+-      # How do we know it's Interix rather than the generic POSIX subsystem?
+-      # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
+-      # UNAME_MACHINE based on the output of uname instead of i386?
+-      echo i586-pc-interix
+-      exit ;;
+     i*:UWIN*:*)
+-      echo ${UNAME_MACHINE}-pc-uwin
++      echo "$UNAME_MACHINE"-pc-uwin
+       exit ;;
+     amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
+-      echo x86_64-unknown-cygwin
+-      exit ;;
+-    p*:CYGWIN*:*)
+-      echo powerpcle-unknown-cygwin
++      echo x86_64-pc-cygwin
+       exit ;;
+     prep*:SunOS:5.*:*)
+-      echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
++      echo powerpcle-unknown-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
+       exit ;;
+     *:GNU:*:*)
+       # the GNU system
+-      echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
++      echo "`echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,'`-unknown-$LIBC`echo "$UNAME_RELEASE"|sed -e 's,/.*$,,'`"
+       exit ;;
+     *:GNU/*:*:*)
+       # other systems with GNU libc and userland
+-      echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
++      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
++    *:Minix:*:*)
++      echo "$UNAME_MACHINE"-unknown-minix
+       exit ;;
+     aarch64:Linux:*:*)
+-      echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
++      echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+       exit ;;
+     aarch64_be:Linux:*:*)
+       UNAME_MACHINE=aarch64_be
+-      echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
++      echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+       exit ;;
+     alpha:Linux:*:*)
+       case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
+@@ -902,58 +943,64 @@ EOF
+         EV68*) UNAME_MACHINE=alphaev68 ;;
+       esac
+       objdump --private-headers /bin/sh | grep -q ld.so.1
+-      if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
+-      echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
++      if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
++      echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+       exit ;;
+     arc:Linux:*:* | arceb:Linux:*:*)
+-      echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
++      echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+       exit ;;
+     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}
++          echo "$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
++              echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabi
+           else
+-              echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
++              echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabihf
+           fi
+       fi
+       exit ;;
+     avr32*:Linux:*:*)
+-      echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
++      echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+       exit ;;
+     cris:Linux:*:*)
+-      echo ${UNAME_MACHINE}-axis-linux-${LIBC}
++      echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
+       exit ;;
+     crisv32:Linux:*:*)
+-      echo ${UNAME_MACHINE}-axis-linux-${LIBC}
++      echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
++      exit ;;
++    e2k:Linux:*:*)
++      echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+       exit ;;
+     frv:Linux:*:*)
+-      echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
++      echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+       exit ;;
+     hexagon:Linux:*:*)
+-      echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
++      echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+       exit ;;
+     i*86:Linux:*:*)
+-      echo ${UNAME_MACHINE}-pc-linux-${LIBC}
++      echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
+       exit ;;
+     ia64:Linux:*:*)
+-      echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
++      echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++      exit ;;
++    k1om:Linux:*:*)
++      echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+       exit ;;
+     m32r*:Linux:*:*)
+-      echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
++      echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+       exit ;;
+     m68*:Linux:*:*)
+-      echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
++      echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+       exit ;;
+     mips:Linux:*:* | mips64:Linux:*:*)
+-      eval $set_cc_for_build
+-      sed 's/^        //' << EOF >$dummy.c
++      set_cc_for_build
++      sed 's/^        //' << EOF > "$dummy.c"
+       #undef CPU
+       #undef ${UNAME_MACHINE}
+       #undef ${UNAME_MACHINE}el
+@@ -967,64 +1014,70 @@ EOF
+       #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; }
++      eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU'`"
++      test "x$CPU" != x && { echo "$CPU-unknown-linux-$LIBC"; exit; }
+       ;;
++    mips64el:Linux:*:*)
++      echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
++      exit ;;
+     openrisc*:Linux:*:*)
+-      echo or1k-unknown-linux-${LIBC}
++      echo or1k-unknown-linux-"$LIBC"
+       exit ;;
+     or32:Linux:*:* | or1k*:Linux:*:*)
+-      echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
++      echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+       exit ;;
+     padre:Linux:*:*)
+-      echo sparc-unknown-linux-${LIBC}
++      echo sparc-unknown-linux-"$LIBC"
+       exit ;;
+     parisc64:Linux:*:* | hppa64:Linux:*:*)
+-      echo hppa64-unknown-linux-${LIBC}
++      echo hppa64-unknown-linux-"$LIBC"
+       exit ;;
+     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*) echo hppa1.1-unknown-linux-"$LIBC" ;;
++        PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;;
++        *)    echo hppa-unknown-linux-"$LIBC" ;;
+       esac
+       exit ;;
+     ppc64:Linux:*:*)
+-      echo powerpc64-unknown-linux-${LIBC}
++      echo powerpc64-unknown-linux-"$LIBC"
+       exit ;;
+     ppc:Linux:*:*)
+-      echo powerpc-unknown-linux-${LIBC}
++      echo powerpc-unknown-linux-"$LIBC"
+       exit ;;
+     ppc64le:Linux:*:*)
+-      echo powerpc64le-unknown-linux-${LIBC}
++      echo powerpc64le-unknown-linux-"$LIBC"
+       exit ;;
+     ppcle:Linux:*:*)
+-      echo powerpcle-unknown-linux-${LIBC}
++      echo powerpcle-unknown-linux-"$LIBC"
++      exit ;;
++    riscv32:Linux:*:* | riscv64:Linux:*:*)
++      echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+       exit ;;
+     s390:Linux:*:* | s390x:Linux:*:*)
+-      echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
++      echo "$UNAME_MACHINE"-ibm-linux-"$LIBC"
+       exit ;;
+     sh64*:Linux:*:*)
+-      echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
++      echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+       exit ;;
+     sh*:Linux:*:*)
+-      echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
++      echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+       exit ;;
+     sparc:Linux:*:* | sparc64:Linux:*:*)
+-      echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
++      echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+       exit ;;
+     tile*:Linux:*:*)
+-      echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
++      echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+       exit ;;
+     vax:Linux:*:*)
+-      echo ${UNAME_MACHINE}-dec-linux-${LIBC}
++      echo "$UNAME_MACHINE"-dec-linux-"$LIBC"
+       exit ;;
+     x86_64:Linux:*:*)
+-      echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
++      echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
+       exit ;;
+     xtensa*:Linux:*:*)
+-      echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
++      echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+       exit ;;
+     i*86:DYNIX/ptx:4*:*)
+       # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
+@@ -1038,34 +1091,34 @@ EOF
+       # 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}
++      echo "$UNAME_MACHINE"-pc-sysv4.2uw"$UNAME_VERSION"
+       exit ;;
+     i*86:OS/2:*:*)
+       # If we were able to find `uname', then EMX Unix compatibility
+       # is probably installed.
+-      echo ${UNAME_MACHINE}-pc-os2-emx
++      echo "$UNAME_MACHINE"-pc-os2-emx
+       exit ;;
+     i*86:XTS-300:*:STOP)
+-      echo ${UNAME_MACHINE}-unknown-stop
++      echo "$UNAME_MACHINE"-unknown-stop
+       exit ;;
+     i*86:atheos:*:*)
+-      echo ${UNAME_MACHINE}-unknown-atheos
++      echo "$UNAME_MACHINE"-unknown-atheos
+       exit ;;
+     i*86:syllable:*:*)
+-      echo ${UNAME_MACHINE}-pc-syllable
++      echo "$UNAME_MACHINE"-pc-syllable
+       exit ;;
+     i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
+-      echo i386-unknown-lynxos${UNAME_RELEASE}
++      echo i386-unknown-lynxos"$UNAME_RELEASE"
+       exit ;;
+     i*86:*DOS:*:*)
+-      echo ${UNAME_MACHINE}-pc-msdosdjgpp
++      echo "$UNAME_MACHINE"-pc-msdosdjgpp
+       exit ;;
+-    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
+-      UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
++    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}
++              echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL"
+       else
+-              echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
++              echo "$UNAME_MACHINE"-pc-sysv"$UNAME_REL"
+       fi
+       exit ;;
+     i*86:*:5:[678]*)
+@@ -1075,12 +1128,12 @@ EOF
+           *Pentium)        UNAME_MACHINE=i586 ;;
+           *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
+       esac
+-      echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
++      echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}{$UNAME_VERSION}"
+       exit ;;
+     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
++              echo "$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
+@@ -1090,9 +1143,9 @@ EOF
+                       && UNAME_MACHINE=i686
+               (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
+                       && UNAME_MACHINE=i686
+-              echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
++              echo "$UNAME_MACHINE"-pc-sco"$UNAME_REL"
+       else
+-              echo ${UNAME_MACHINE}-pc-sysv32
++              echo "$UNAME_MACHINE"-pc-sysv32
+       fi
+       exit ;;
+     pc:*:*:*)
+@@ -1100,7 +1153,7 @@ EOF
+       # uname -m prints for DJGPP always 'pc', but it prints nothing about
+       # the processor, so we play safe by assuming i586.
+       # Note: whatever this is, it MUST be the same as what config.sub
+-      # prints for the "djgpp" host, or else GDB configury will decide that
++      # prints for the "djgpp" host, or else GDB configure will decide that
+       # this is a cross-build.
+       echo i586-pc-msdosdjgpp
+       exit ;;
+@@ -1112,9 +1165,9 @@ EOF
+       exit ;;
+     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
++        echo 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
++        echo i860-unknown-sysv"$UNAME_RELEASE"  # Unknown i860-SVR4
+       fi
+       exit ;;
+     mini*:CTIX:SYS*5:*)
+@@ -1134,9 +1187,9 @@ EOF
+       test -r /etc/.relid \
+       && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
+       /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+-        && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
++        && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
+       /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
+-        && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
++        && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
+     3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
+       /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+         && { echo i486-ncr-sysv4; exit; } ;;
+@@ -1145,28 +1198,28 @@ EOF
+       test -r /etc/.relid \
+           && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
+       /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+-          && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
++          && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
+       /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
+-          && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
++          && { echo i586-ncr-sysv4.3"$OS_REL"; exit; }
+       /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
+-          && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
++          && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
+     m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
+-      echo m68k-unknown-lynxos${UNAME_RELEASE}
++      echo m68k-unknown-lynxos"$UNAME_RELEASE"
+       exit ;;
+     mc68030:UNIX_System_V:4.*:*)
+       echo m68k-atari-sysv4
+       exit ;;
+     TSUNAMI:LynxOS:2.*:*)
+-      echo sparc-unknown-lynxos${UNAME_RELEASE}
++      echo sparc-unknown-lynxos"$UNAME_RELEASE"
+       exit ;;
+     rs6000:LynxOS:2.*:*)
+-      echo rs6000-unknown-lynxos${UNAME_RELEASE}
++      echo rs6000-unknown-lynxos"$UNAME_RELEASE"
+       exit ;;
+     PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
+-      echo powerpc-unknown-lynxos${UNAME_RELEASE}
++      echo powerpc-unknown-lynxos"$UNAME_RELEASE"
+       exit ;;
+     SM[BE]S:UNIX_SV:*:*)
+-      echo mips-dde-sysv${UNAME_RELEASE}
++      echo mips-dde-sysv"$UNAME_RELEASE"
+       exit ;;
+     RM*:ReliantUNIX-*:*:*)
+       echo mips-sni-sysv4
+@@ -1177,7 +1230,7 @@ EOF
+     *:SINIX-*:*:*)
+       if uname -p 2>/dev/null >/dev/null ; then
+               UNAME_MACHINE=`(uname -p) 2>/dev/null`
+-              echo ${UNAME_MACHINE}-sni-sysv4
++              echo "$UNAME_MACHINE"-sni-sysv4
+       else
+               echo ns32k-sni-sysv
+       fi
+@@ -1197,23 +1250,23 @@ EOF
+       exit ;;
+     i*86:VOS:*:*)
+       # From Paul.Green%stratus.com@localhost.
+-      echo ${UNAME_MACHINE}-stratus-vos
++      echo "$UNAME_MACHINE"-stratus-vos
+       exit ;;
+     *:VOS:*:*)
+       # From Paul.Green%stratus.com@localhost.
+       echo hppa1.1-stratus-vos
+       exit ;;
+     mc68*:A/UX:*:*)
+-      echo m68k-apple-aux${UNAME_RELEASE}
++      echo m68k-apple-aux"$UNAME_RELEASE"
+       exit ;;
+     news*:NEWS-OS:6*:*)
+       echo mips-sony-newsos6
+       exit ;;
+     R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
+       if [ -d /usr/nec ]; then
+-              echo mips-nec-sysv${UNAME_RELEASE}
++              echo mips-nec-sysv"$UNAME_RELEASE"
+       else
+-              echo mips-unknown-sysv${UNAME_RELEASE}
++              echo mips-unknown-sysv"$UNAME_RELEASE"
+       fi
+       exit ;;
+     BeBox:BeOS:*:*)   # BeOS running on hardware made by Be, PPC only.
+@@ -1232,46 +1285,56 @@ EOF
+       echo x86_64-unknown-haiku
+       exit ;;
+     SX-4:SUPER-UX:*:*)
+-      echo sx4-nec-superux${UNAME_RELEASE}
++      echo sx4-nec-superux"$UNAME_RELEASE"
+       exit ;;
+     SX-5:SUPER-UX:*:*)
+-      echo sx5-nec-superux${UNAME_RELEASE}
++      echo sx5-nec-superux"$UNAME_RELEASE"
+       exit ;;
+     SX-6:SUPER-UX:*:*)
+-      echo sx6-nec-superux${UNAME_RELEASE}
++      echo sx6-nec-superux"$UNAME_RELEASE"
+       exit ;;
+     SX-7:SUPER-UX:*:*)
+-      echo sx7-nec-superux${UNAME_RELEASE}
++      echo sx7-nec-superux"$UNAME_RELEASE"
+       exit ;;
+     SX-8:SUPER-UX:*:*)
+-      echo sx8-nec-superux${UNAME_RELEASE}
++      echo sx8-nec-superux"$UNAME_RELEASE"
+       exit ;;
+     SX-8R:SUPER-UX:*:*)
+-      echo sx8r-nec-superux${UNAME_RELEASE}
++      echo sx8r-nec-superux"$UNAME_RELEASE"
++      exit ;;
++    SX-ACE:SUPER-UX:*:*)
++      echo sxace-nec-superux"$UNAME_RELEASE"
+       exit ;;
+     Power*:Rhapsody:*:*)
+-      echo powerpc-apple-rhapsody${UNAME_RELEASE}
++      echo powerpc-apple-rhapsody"$UNAME_RELEASE"
+       exit ;;
+     *:Rhapsody:*:*)
+-      echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
++      echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE"
+       exit ;;
+     *:Darwin:*:*)
+       UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
+-      eval $set_cc_for_build
++      set_cc_for_build
+       if test "$UNAME_PROCESSOR" = unknown ; then
+           UNAME_PROCESSOR=powerpc
+       fi
+-      if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
+-          if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
++      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
++                     (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
+           fi
+       elif test "$UNAME_PROCESSOR" = i386 ; then
+           # Avoid executing cc on OS X 10.9, as it ships with a stub
+@@ -1282,27 +1345,33 @@ EOF
+           # that Apple uses in portable devices.
+           UNAME_PROCESSOR=x86_64
+       fi
+-      echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
++      echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE"
+       exit ;;
+     *:procnto*:*:* | *:QNX:[0123456789]*:*)
+       UNAME_PROCESSOR=`uname -p`
+-      if test "$UNAME_PROCESSOR" = "x86"; then
++      if test "$UNAME_PROCESSOR" = x86; then
+               UNAME_PROCESSOR=i386
+               UNAME_MACHINE=pc
+       fi
+-      echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
++      echo "$UNAME_PROCESSOR"-"$UNAME_MACHINE"-nto-qnx"$UNAME_RELEASE"
+       exit ;;
+     *:QNX:*:4*)
+       echo i386-pc-qnx
+       exit ;;
+-    NEO-?:NONSTOP_KERNEL:*:*)
+-      echo neo-tandem-nsk${UNAME_RELEASE}
++    NEO-*:NONSTOP_KERNEL:*:*)
++      echo neo-tandem-nsk"$UNAME_RELEASE"
+       exit ;;
+     NSE-*:NONSTOP_KERNEL:*:*)
+-      echo nse-tandem-nsk${UNAME_RELEASE}
++      echo nse-tandem-nsk"$UNAME_RELEASE"
++      exit ;;
++    NSR-*:NONSTOP_KERNEL:*:*)
++      echo nsr-tandem-nsk"$UNAME_RELEASE"
+       exit ;;
+-    NSR-?:NONSTOP_KERNEL:*:*)
+-      echo nsr-tandem-nsk${UNAME_RELEASE}
++    NSV-*:NONSTOP_KERNEL:*:*)
++      echo nsv-tandem-nsk"$UNAME_RELEASE"
++      exit ;;
++    NSX-*:NONSTOP_KERNEL:*:*)
++      echo nsx-tandem-nsk"$UNAME_RELEASE"
+       exit ;;
+     *:NonStop-UX:*:*)
+       echo mips-compaq-nonstopux
+@@ -1311,18 +1380,19 @@ EOF
+       echo bs2000-siemens-sysv
+       exit ;;
+     DS/*:UNIX_System_V:*:*)
+-      echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
++      echo "$UNAME_MACHINE"-"$UNAME_SYSTEM"-"$UNAME_RELEASE"
+       exit ;;
+     *: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
++      # shellcheck disable=SC2154
++      if test "$cputype" = 386; then
+           UNAME_MACHINE=i386
+       else
+           UNAME_MACHINE="$cputype"
+       fi
+-      echo ${UNAME_MACHINE}-unknown-plan9
++      echo "$UNAME_MACHINE"-unknown-plan9
+       exit ;;
+     *:TOPS-10:*:*)
+       echo pdp10-unknown-tops10
+@@ -1343,14 +1413,14 @@ EOF
+       echo pdp10-unknown-its
+       exit ;;
+     SEI:*:*:SEIUX)
+-      echo mips-sei-seiux${UNAME_RELEASE}
++      echo mips-sei-seiux"$UNAME_RELEASE"
+       exit ;;
+     *:DragonFly:*:*)
+-      echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
++      echo "$UNAME_MACHINE"-unknown-dragonfly"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
+       exit ;;
+     *:*VMS:*:*)
+       UNAME_MACHINE=`(uname -p) 2>/dev/null`
+-      case "${UNAME_MACHINE}" in
++      case "$UNAME_MACHINE" in
+           A*) echo alpha-dec-vms ; exit ;;
+           I*) echo ia64-dec-vms ; exit ;;
+           V*) echo vax-dec-vms ; exit ;;
+@@ -1359,34 +1429,51 @@ EOF
+       echo i386-pc-xenix
+       exit ;;
+     i*86:skyos:*:*)
+-      echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
++      echo "$UNAME_MACHINE"-pc-skyos"`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`"
+       exit ;;
+     i*86:rdos:*:*)
+-      echo ${UNAME_MACHINE}-pc-rdos
++      echo "$UNAME_MACHINE"-pc-rdos
+       exit ;;
+     i*86:AROS:*:*)
+-      echo ${UNAME_MACHINE}-pc-aros
++      echo "$UNAME_MACHINE"-pc-aros
+       exit ;;
+     x86_64:VMkernel:*:*)
+-      echo ${UNAME_MACHINE}-unknown-esx
++      echo "$UNAME_MACHINE"-unknown-esx
++      exit ;;
++    amd64:Isilon\ OneFS:*:*)
++      echo x86_64-unknown-onefs
++      exit ;;
++    *:Unleashed:*:*)
++      echo "$UNAME_MACHINE"-unknown-unleashed"$UNAME_RELEASE"
+       exit ;;
+ esac
+ 
++echo "$0: unable to guess system type" >&2
++
++case "$UNAME_MACHINE:$UNAME_SYSTEM" in
++    mips:Linux | mips64:Linux)
++      # If we got here on MIPS GNU/Linux, output extra information.
++      cat >&2 <<EOF
++
++NOTE: MIPS GNU/Linux systems require a C compiler to fully recognize
++the system type. Please install a C compiler and try again.
++EOF
++      ;;
++esac
++
+ cat >&2 <<EOF
+-$0: unable to guess system type
+ 
+-This script, last modified $timestamp, has failed to recognize
+-the operating system you are using. It is advised that you
+-download the most up to date version of the config scripts from
++This script (version $timestamp), has failed to recognize the
++operating system you are using. If your script is old, overwrite *all*
++copies of config.guess and config.sub with the latest versions from:
+ 
+-  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
++  https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
+ and
+-  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
++  https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
+ 
+-If the version you run ($0) is already up to date, please
+-send the following data and any information you think might be
+-pertinent to <config-patches%gnu.org@localhost> in order to provide the needed
+-information to handle your system.
++If $0 has already been updated, send the following data and any
++information you think might be pertinent to config-patches%gnu.org@localhost to
++provide the necessary information to handle your system.
+ 
+ config.guess timestamp = $timestamp
+ 
+@@ -1405,16 +1492,16 @@ hostinfo               = `(hostinfo) 2>/
+ /usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
+ /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
+ 
+-UNAME_MACHINE = ${UNAME_MACHINE}
+-UNAME_RELEASE = ${UNAME_RELEASE}
+-UNAME_SYSTEM  = ${UNAME_SYSTEM}
+-UNAME_VERSION = ${UNAME_VERSION}
++UNAME_MACHINE = "$UNAME_MACHINE"
++UNAME_RELEASE = "$UNAME_RELEASE"
++UNAME_SYSTEM  = "$UNAME_SYSTEM"
++UNAME_VERSION = "$UNAME_VERSION"
+ EOF
+ 
+ exit 1
+ 
+ # Local variables:
+-# eval: (add-hook 'write-file-hooks 'time-stamp)
++# eval: (add-hook 'before-save-hook 'time-stamp)
+ # time-stamp-start: "timestamp='"
+ # time-stamp-format: "%:y-%02m-%02d"
+ # time-stamp-end: "'"
Index: pkgsrc/net/ntp4/patches/patch-sntp_libevent_build-aux_config.sub
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-sntp_libevent_build-aux_config.sub:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-sntp_libevent_build-aux_config.sub    Sun Jun 21 15:10:47 2020
@@ -0,0 +1,3015 @@
+$NetBSD: patch-sntp_libevent_build-aux_config.sub,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- sntp/libevent/build-aux/config.sub.orig    2017-02-01 09:49:25.000000000 +0000
++++ sntp/libevent/build-aux/config.sub
+@@ -1,8 +1,8 @@
+ #! /bin/sh
+ # Configuration validation subroutine script.
+-#   Copyright 1992-2014 Free Software Foundation, Inc.
++#   Copyright 1992-2019 Free Software Foundation, Inc.
+ 
+-timestamp='2014-12-03'
++timestamp='2019-01-05'
+ 
+ # 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
+@@ -15,7 +15,7 @@ timestamp='2014-12-03'
+ # 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
+@@ -33,7 +33,7 @@ timestamp='2014-12-03'
+ # Otherwise, we print the canonical config type on stdout and succeed.
+ 
+ # You can get the latest version of this script from:
+-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
++# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
+ 
+ # This file is supposed to be the same for all GNU packages
+ # and recognize all the CPU types, system types and aliases
+@@ -53,12 +53,11 @@ timestamp='2014-12-03'
+ me=`echo "$0" | sed -e 's,.*/,,'`
+ 
+ usage="\
+-Usage: $0 [OPTION] CPU-MFR-OPSYS
+-       $0 [OPTION] ALIAS
++Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS
+ 
+ Canonicalize a configuration name.
+ 
+-Operation modes:
++Options:
+   -h, --help         print this help, then exit
+   -t, --time-stamp   print date of last modification, then exit
+   -v, --version      print version number, then exit
+@@ -68,7 +67,7 @@ Report bugs and patches to <config-patch
+ version="\
+ GNU config.sub ($timestamp)
+ 
+-Copyright 1992-2014 Free Software Foundation, Inc.
++Copyright 1992-2019 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."
+@@ -90,12 +89,12 @@ while test $# -gt 0 ; do
+     - )       # Use stdin as input.
+        break ;;
+     -* )
+-       echo "$me: invalid option $1$help"
++       echo "$me: invalid option $1$help" >&2
+        exit 1 ;;
+ 
+     *local*)
+        # First pass through any local machine types.
+-       echo $1
++       echo "$1"
+        exit ;;
+ 
+     * )
+@@ -111,1228 +110,1164 @@ case $# in
+     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* | \
+-  kopensolaris*-gnu* | \
+-  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
+-
+-### 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.
+-              ;;
+-      -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
+-              ;;
+-      -bluegene*)
+-              os=-cnk
+-              ;;
+-      -sim | -cisco | -oki | -wec | -winbond)
+-              os=
+-              basic_machine=$1
+-              ;;
+-      -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
++# Split fields of configuration type
++# shellcheck disable=SC2162
++IFS="-" read field1 field2 field3 field4 <<EOF
++$1
++EOF
++
++# Separate into logical components for further validation
++case $1 in
++      *-*-*-*-*)
++              echo Invalid configuration \`"$1"\': more than four components >&2
++              exit 1
+               ;;
+-      -ptx*)
+-              basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
++      *-*-*-*)
++              basic_machine=$field1-$field2
++              os=$field3-$field4
+               ;;
+-      -windowsnt*)
+-              os=`echo $os | sed -e 's/windowsnt/winnt/'`
++      *-*-*)
++              # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two
++              # parts
++              maybe_os=$field2-$field3
++              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*)
++                              basic_machine=$field1
++                              os=$maybe_os
++                              ;;
++                      android-linux)
++                              basic_machine=$field1-unknown
++                              os=linux-android
++                              ;;
++                      *)
++                              basic_machine=$field1-$field2
++                              os=$field3
++                              ;;
++              esac
+               ;;
+-      -psos*)
+-              os=-psos
++      *-*)
++              # A lone config we happen to match not fitting any pattern
++              case $field1-$field2 in
++                      decstation-3100)
++                              basic_machine=mips-dec
++                              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
++                                              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
++                                              os=
++                                              ;;
++                                      *)
++                                              basic_machine=$field1
++                                              os=$field2
++                                              ;;
++                              esac
++                      ;;
++              esac
+               ;;
+-      -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
++                              os=bsd
++                              ;;
++                      a29khif)
++                              basic_machine=a29k-amd
++                              os=udi
++                              ;;
++                      adobe68k)
++                              basic_machine=m68010-adobe
++                              os=scout
++                              ;;
++                      alliant)
++                              basic_machine=fx80-alliant
++                              os=
++                              ;;
++                      altos | altos3068)
++                              basic_machine=m68k-altos
++                              os=
++                              ;;
++                      am29k)
++                              basic_machine=a29k-none
++                              os=bsd
++                              ;;
++                      amdahl)
++                              basic_machine=580-amdahl
++                              os=sysv
++                              ;;
++                      amiga)
++                              basic_machine=m68k-unknown
++                              os=
++                              ;;
++                      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
++                              ;;
++                      aux)
++                              basic_machine=m68k-apple
++                              os=aux
++                              ;;
++                      balance)
++                              basic_machine=ns32k-sequent
++                              os=dynix
++                              ;;
++                      blackfin)
++                              basic_machine=bfin-unknown
++                              os=linux
++                              ;;
++                      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)
++                              basic_machine=j90-cray
++                              os=unicos
++                              ;;
++                      crds | unos)
++                              basic_machine=m68k-crds
++                              os=
++                              ;;
++                      da30)
++                              basic_machine=m68k-da30
++                              os=
++                              ;;
++                      decstation | pmax | pmin | dec3100 | decstatn)
++                              basic_machine=mips-dec
++                              os=
++                              ;;
++                      delta88)
++                              basic_machine=m88k-motorola
++                              os=sysv3
++                              ;;
++                      dicos)
++                              basic_machine=i686-pc
++                              os=dicos
++                              ;;
++                      djgpp)
++                              basic_machine=i586-pc
++                              os=msdosdjgpp
++                              ;;
++                      ebmon29k)
++                              basic_machine=a29k-amd
++                              os=ebmon
++                              ;;
++                      es1800 | OSE68k | ose68k | ose | OSE)
++                              basic_machine=m68k-ericsson
++                              os=ose
++                              ;;
++                      gmicro)
++                              basic_machine=tron-gmicro
++                              os=sysv
++                              ;;
++                      go32)
++                              basic_machine=i386-pc
++                              os=go32
++                              ;;
++                      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
++                              ;;
++                      hppaosf)
++                              basic_machine=hppa1.1-hp
++                              os=osf
++                              ;;
++                      hppro)
++                              basic_machine=hppa1.1-hp
++                              os=proelf
++                              ;;
++                      i386mach)
++                              basic_machine=i386-mach
++                              os=mach
++                              ;;
++                      vsta)
++                              basic_machine=i386-pc
++                              os=vsta
++                              ;;
++                      isi68 | isi)
++                              basic_machine=m68k-isi
++                              os=sysv
++                              ;;
++                      m68knommu)
++                              basic_machine=m68k-unknown
++                              os=linux
++                              ;;
++                      magnum | m3230)
++                              basic_machine=mips-mips
++                              os=sysv
++                              ;;
++                      merlin)
++                              basic_machine=ns32k-utek
++                              os=sysv
++                              ;;
++                      mingw64)
++                              basic_machine=x86_64-pc
++                              os=mingw64
++                              ;;
++                      mingw32)
++                              basic_machine=i686-pc
++                              os=mingw32
++                              ;;
++                      mingw32ce)
++                              basic_machine=arm-unknown
++                              os=mingw32ce
++                              ;;
++                      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
++                              ;;
++                      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-pc
++                              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
++                              ;;
++                      necv70)
++                              basic_machine=v70-nec
++                              os=sysv
++                              ;;
++                      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
++                              ;;
++                      os400)
++                              basic_machine=powerpc-ibm
++                              os=os400
++                              ;;
++                      OSE68000 | ose68000)
++                              basic_machine=m68000-ericsson
++                              os=ose
++                              ;;
++                      os68k)
++                              basic_machine=m68k-none
++                              os=os68k
++                              ;;
++                      paragon)
++                              basic_machine=i860-intel
++                              os=osf
++                              ;;
++                      parisc)
++                              basic_machine=hppa-unknown
++                              os=linux
++                              ;;
++                      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
++                              ;;
++                      sa29200)
++                              basic_machine=a29k-amd
++                              os=udi
++                              ;;
++                      sei)
++                              basic_machine=mips-sei
++                              os=seiux
++                              ;;
++                      sequent)
++                              basic_machine=i386-sequent
++                              os=
++                              ;;
++                      sps7)
++                              basic_machine=m68k-bull
++                              os=sysv2
++                              ;;
++                      st2000)
++                              basic_machine=m68k-tandem
++                              os=
++                              ;;
++                      stratus)
++                              basic_machine=i860-stratus
++                              os=sysv4
++                              ;;
++                      sun2)
++                              basic_machine=m68000-sun
++                              os=
++                              ;;
++                      sun2os3)
++                              basic_machine=m68000-sun
++                              os=sunos3
++                              ;;
++                      sun2os4)
++                              basic_machine=m68000-sun
++                              os=sunos4
++                              ;;
++                      sun3)
++                              basic_machine=m68k-sun
++                              os=
++                              ;;
++                      sun3os3)
++                              basic_machine=m68k-sun
++                              os=sunos3
++                              ;;
++                      sun3os4)
++                              basic_machine=m68k-sun
++                              os=sunos4
++                              ;;
++                      sun4)
++                              basic_machine=sparc-sun
++                              os=
++                              ;;
++                      sun4os3)
++                              basic_machine=sparc-sun
++                              os=sunos3
++                              ;;
++                      sun4os4)
++                              basic_machine=sparc-sun
++                              os=sunos4
++                              ;;
++                      sun4sol2)
++                              basic_machine=sparc-sun
++                              os=solaris2
++                              ;;
++                      sun386 | sun386i | roadrunner)
++                              basic_machine=i386-sun
++                              os=
++                              ;;
++                      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
++                              ;;
++                      toad1)
++                              basic_machine=pdp10-xkl
++                              os=tops20
++                              ;;
++                      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
++                              ;;
++                      vxworks960)
++                              basic_machine=i960-wrs
++                              os=vxworks
++                              ;;
++                      vxworks68)
++                              basic_machine=m68k-wrs
++                              os=vxworks
++                              ;;
++                      vxworks29k)
++                              basic_machine=a29k-wrs
++                              os=vxworks
++                              ;;
++                      xbox)
++                              basic_machine=i686-pc
++                              os=mingw32
++                              ;;
++                      ymp)
++                              basic_machine=ymp-cray
++                              os=unicos
++                              ;;
++                      *)
++                              basic_machine=$1
++                              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 \
+-      | be32 | be64 \
+-      | bfin \
+-      | c4x | c8051 | clipper \
+-      | d10v | d30v | dlx | dsp16xx \
+-      | epiphany \
+-      | fido | fr30 | frv \
+-      | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
+-      | hexagon \
+-      | i370 | i860 | i960 | 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 | pdp11 | pj | pjl \
+-      | powerpc | powerpc64 | powerpc64le | powerpcle \
+-      | pyramid \
+-      | riscv32 | riscv64 \
+-      | rl78 | rx \
+-      | score \
+-      | 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 \
+-      | spu \
+-      | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
+-      | ubicom32 \
+-      | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
+-      | visium \
+-      | we32k \
+-      | x86 | xc16x | xstormy16 | xtensa \
+-      | z8k | z80)
+-              basic_machine=$basic_machine-unknown
+-              ;;
+-      c54x)
+-              basic_machine=tic54x-unknown
+-              ;;
+-      c55x)
+-              basic_machine=tic55x-unknown
+-              ;;
+-      c6x)
+-              basic_machine=tic6x-unknown
+-              ;;
+-      leon|leon[3-9])
+-              basic_machine=sparc-$basic_machine
+-              ;;
+-      m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
+-              basic_machine=$basic_machine-unknown
+-              os=-none
++      # 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
+               ;;
+-      m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
++      op50n)
++              cpu=hppa1.1
++              vendor=oki
+               ;;
+-      ms1)
+-              basic_machine=mt-unknown
++      op60c)
++              cpu=hppa1.1
++              vendor=oki
+               ;;
+-
+-      strongarm | thumb | xscale)
+-              basic_machine=arm-unknown
++      ibm*)
++              cpu=i370
++              vendor=ibm
+               ;;
+-      xgate)
+-              basic_machine=$basic_machine-unknown
+-              os=-none
++      orion105)
++              cpu=clipper
++              vendor=highlevel
+               ;;
+-      xscaleeb)
+-              basic_machine=armeb-unknown
++      mac | mpw | mac-mpw)
++              cpu=m68k
++              vendor=apple
+               ;;
+-
+-      xscaleel)
+-              basic_machine=armel-unknown
++      pmac | pmac-mpw)
++              cpu=powerpc
++              vendor=apple
+               ;;
+ 
+-      # 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
+-              ;;
+-      # 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-* \
+-      | be32-* | be64-* \
+-      | bfin-* | bs2000-* \
+-      | c[123]* | c30-* | [cjt]90-* | c4x-* \
+-      | c8051-* | clipper-* | craynv-* | cydra-* \
+-      | d10v-* | d30v-* | dlx-* \
+-      | elxsi-* \
+-      | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
+-      | h8300-* | h8500-* \
+-      | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
+-      | hexagon-* \
+-      | i*86-* | i860-* | i960-* | 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-* \
+-      | pyramid-* \
+-      | 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-* \
+-      | 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-unknown
+-              os=-bsd
+-              ;;
+       3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
+-              basic_machine=m68000-att
++              cpu=m68000
++              vendor=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
+-              ;;
+-      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
++              cpu=we32k
++              vendor=att
+               ;;
+       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
++              cpu=powerpc
++              vendor=ibm
++              os=cnk
+               ;;
+       decsystem10* | dec10*)
+-              basic_machine=pdp10-dec
+-              os=-tops10
++              cpu=pdp10
++              vendor=dec
++              os=tops10
+               ;;
+       decsystem20* | dec20*)
+-              basic_machine=pdp10-dec
+-              os=-tops20
++              cpu=pdp10
++              vendor=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* | dpx2*-bull)
+-              basic_machine=m68k-bull
+-              os=-sysv3
+-              ;;
+-      ebmon29k)
+-              basic_machine=a29k-amd
+-              os=-ebmon
++              cpu=m68k
++              vendor=motorola
+               ;;
+-      elxsi)
+-              basic_machine=elxsi-elxsi
+-              os=-bsd
++      dpx2*)
++              cpu=m68k
++              vendor=bull
++              os=sysv3
+               ;;
+       encore | umax | mmax)
+-              basic_machine=ns32k-encore
++              cpu=ns32k
++              vendor=encore
+               ;;
+-      es1800 | OSE68k | ose68k | ose | OSE)
+-              basic_machine=m68k-ericsson
+-              os=-ose
++      elxsi)
++              cpu=elxsi
++              vendor=elxsi
++              os=${os:-bsd}
+               ;;
+       fx2800)
+-              basic_machine=i860-alliant
++              cpu=i860
++              vendor=alliant
+               ;;
+       genix)
+-              basic_machine=ns32k-ns
+-              ;;
+-      gmicro)
+-              basic_machine=tron-gmicro
+-              os=-sysv
+-              ;;
+-      go32)
+-              basic_machine=i386-pc
+-              os=-go32
++              cpu=ns32k
++              vendor=ns
+               ;;
+       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
++              cpu=hppa1.1
++              vendor=hitachi
++              os=hiuxwe2
+               ;;
+       hp3k9[0-9][0-9] | hp9[0-9][0-9])
+-              basic_machine=hppa1.0-hp
++              cpu=hppa1.0
++              vendor=hp
+               ;;
+       hp9k2[0-9][0-9] | hp9k31[0-9])
+-              basic_machine=m68000-hp
++              cpu=m68000
++              vendor=hp
+               ;;
+       hp9k3[2-9][0-9])
+-              basic_machine=m68k-hp
++              cpu=m68k
++              vendor=hp
+               ;;
+       hp9k6[0-9][0-9] | hp6[0-9][0-9])
+-              basic_machine=hppa1.0-hp
++              cpu=hppa1.0
++              vendor=hp
+               ;;
+       hp9k7[0-79][0-9] | hp7[0-79][0-9])
+-              basic_machine=hppa1.1-hp
++              cpu=hppa1.1
++              vendor=hp
+               ;;
+       hp9k78[0-9] | hp78[0-9])
+               # FIXME: really hppa2.0-hp
+-              basic_machine=hppa1.1-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
+-              basic_machine=hppa1.1-hp
++              cpu=hppa1.1
++              vendor=hp
+               ;;
+       hp9k8[0-9][13679] | hp8[0-9][13679])
+-              basic_machine=hppa1.1-hp
++              cpu=hppa1.1
++              vendor=hp
+               ;;
+       hp9k8[0-9][0-9] | hp8[0-9][0-9])
+-              basic_machine=hppa1.0-hp
+-              ;;
+-      hppa-next)
+-              os=-nextstep3
+-              ;;
+-      hppaosf)
+-              basic_machine=hppa1.1-hp
+-              os=-osf
+-              ;;
+-      hppro)
+-              basic_machine=hppa1.1-hp
+-              os=-proelf
+-              ;;
+-      i370-ibm* | ibm*)
+-              basic_machine=i370-ibm
++              cpu=hppa1.0
++              vendor=hp
+               ;;
+       i*86v32)
+-              basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+-              os=-sysv32
++              cpu=`echo "$1" | sed -e 's/86.*/86/'`
++              vendor=pc
++              os=sysv32
+               ;;
+       i*86v4*)
+-              basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+-              os=-sysv4
++              cpu=`echo "$1" | sed -e 's/86.*/86/'`
++              vendor=pc
++              os=sysv4
+               ;;
+       i*86v)
+-              basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+-              os=-sysv
++              cpu=`echo "$1" | sed -e 's/86.*/86/'`
++              vendor=pc
++              os=sysv
+               ;;
+       i*86sol2)
+-              basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+-              os=-solaris2
+-              ;;
+-      i386mach)
+-              basic_machine=i386-mach
+-              os=-mach
+-              ;;
+-      i386-vsta | vsta)
+-              basic_machine=i386-unknown
+-              os=-vsta
++              cpu=`echo "$1" | sed -e 's/86.*/86/'`
++              vendor=pc
++              os=solaris2
++              ;;
++      j90 | j90-cray)
++              cpu=j90
++              vendor=cray
++              os=${os:-unicos}
+               ;;
+       iris | iris4d)
+-              basic_machine=mips-sgi
++              cpu=mips
++              vendor=sgi
+               case $os in
+-                  -irix*)
++                  irix*)
+                       ;;
+                   *)
+-                      os=-irix4
++                      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
+-              ;;
+-      m88k-omron*)
+-              basic_machine=m88k-omron
+-              ;;
+-      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
++              cpu=m68000
++              vendor=convergent
+               ;;
+-      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
++      *mint | mint[0-9]* | *MiNT | *MiNT[0-9]*)
++              cpu=m68k
++              vendor=atari
++              os=mint
+               ;;
+       news-3600 | risc-news)
+-              basic_machine=mips-sony
+-              os=-newsos
+-              ;;
+-      necv70)
+-              basic_machine=v70-nec
+-              os=-sysv
+-              ;;
+-      next | m*-next )
+-              basic_machine=m68k-next
++              cpu=mips
++              vendor=sony
++              os=newsos
++              ;;
++      next | m*-next)
++              cpu=m68k
++              vendor=next
+               case $os in
+-                  -nextstep* )
++                  nextstep* )
+                       ;;
+-                  -ns2*)
+-                    os=-nextstep2
++                  ns2*)
++                    os=nextstep2
+                       ;;
+                   *)
+-                    os=-nextstep3
++                    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
++              cpu=np1
++              vendor=gould
+               ;;
+       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
++              cpu=hppa1.1
++              vendor=oki
++              os=proelf
+               ;;
+       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
++              cpu=hppa1.1
++              vendor=hitachi
++              os=hiuxwe2
+               ;;
+       pbd)
+-              basic_machine=sparc-tti
++              cpu=sparc
++              vendor=tti
+               ;;
+       pbb)
+-              basic_machine=m68k-tti
++              cpu=m68k
++              vendor=tti
+               ;;
+-      pc532 | pc532-*)
+-              basic_machine=ns32k-pc532
++      pc532)
++              cpu=ns32k
++              vendor=pc532
+               ;;
+-      pc98)
+-              basic_machine=i386-pc
+-              ;;
+-      pc98-*)
+-              basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
+-              ;;
+-      pentium | p5 | k5 | k6 | nexgen | viac3)
+-              basic_machine=i586-pc
+-              ;;
+-      pentiumpro | p6 | 6x86 | athlon | athlon_*)
+-              basic_machine=i686-pc
+-              ;;
+-      pentiumii | pentium2 | pentiumiii | pentium3)
+-              basic_machine=i686-pc
+-              ;;
+-      pentium4)
+-              basic_machine=i786-pc
++      pn)
++              cpu=pn
++              vendor=gould
+               ;;
+-      pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
+-              basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
++      power)
++              cpu=power
++              vendor=ibm
+               ;;
+-      pentiumpro-* | p6-* | 6x86-* | athlon-*)
+-              basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
++      ps2)
++              cpu=i386
++              vendor=ibm
+               ;;
+-      pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
+-              basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
++      rm[46]00)
++              cpu=mips
++              vendor=siemens
+               ;;
+-      pentium4-*)
+-              basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
++      rtpc | rtpc-*)
++              cpu=romp
++              vendor=ibm
+               ;;
+-      pn)
+-              basic_machine=pn-gould
++      sde)
++              cpu=mipsisa32
++              vendor=sde
++              os=${os:-elf}
++              ;;
++      simso-wrs)
++              cpu=sparclite
++              vendor=wrs
++              os=vxworks
+               ;;
+-      power)  basic_machine=power-ibm
++      tower | tower-32)
++              cpu=m68k
++              vendor=ncr
+               ;;
+-      ppc | ppcbe)    basic_machine=powerpc-unknown
++      vpp*|vx|vx-*)
++              cpu=f301
++              vendor=fujitsu
+               ;;
+-      ppc-* | ppcbe-*)
+-              basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
++      w65)
++              cpu=w65
++              vendor=wdc
+               ;;
+-      ppcle | powerpclittle | ppc-le | powerpc-little)
+-              basic_machine=powerpcle-unknown
++      w89k-*)
++              cpu=hppa1.1
++              vendor=winbond
++              os=proelf
+               ;;
+-      ppcle-* | powerpclittle-*)
+-              basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
++      none)
++              cpu=none
++              vendor=none
+               ;;
+-      ppc64)  basic_machine=powerpc64-unknown
++      leon|leon[3-9])
++              cpu=sparc
++              vendor=$basic_machine
+               ;;
+-      ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
++      leon-*|leon[3-9]-*)
++              cpu=sparc
++              vendor=`echo "$basic_machine" | sed 's/-.*//'`
+               ;;
+-      ppc64le | powerpc64little | ppc64-le | powerpc64-little)
+-              basic_machine=powerpc64le-unknown
++
++      *-*)
++              # shellcheck disable=SC2162
++              IFS="-" read cpu vendor <<EOF
++$basic_machine
++EOF
+               ;;
+-      ppc64le-* | powerpc64little-*)
+-              basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
++      # 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)
++              cpu=$basic_machine
++              vendor=pc
+               ;;
+-      ps2)
+-              basic_machine=i386-ibm
++      # 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)
++              cpu=i386
++              vendor=pc
+               ;;
+-      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
++      x64 | amd64)
++              cpu=x86_64
++              vendor=pc
+               ;;
+-      rm[46]00)
+-              basic_machine=mips-siemens
++      # Recognize the basic CPU types without company name.
++      *)
++              cpu=$basic_machine
++              vendor=unknown
+               ;;
+-      rtpc | rtpc-*)
+-              basic_machine=romp-ibm
++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
++              os=${os:-unicosmp}
+               ;;
+-      s390 | s390-*)
+-              basic_machine=s390-ibm
++      c90-unknown | c90-cray)
++              vendor=cray
++              os=${os:-unicos}
+               ;;
+-      s390x | s390x-*)
+-              basic_machine=s390x-ibm
++      fx80-unknown)
++              vendor=alliant
+               ;;
+-      sa29200)
+-              basic_machine=a29k-amd
+-              os=-udi
++      romp-unknown)
++              vendor=ibm
+               ;;
+-      sb1)
+-              basic_machine=mipsisa64sb1-unknown
++      mmix-unknown)
++              vendor=knuth
+               ;;
+-      sb1el)
+-              basic_machine=mipsisa64sb1el-unknown
++      microblaze-unknown | microblazeel-unknown)
++              vendor=xilinx
+               ;;
+-      sde)
+-              basic_machine=mipsisa32-sde
+-              os=-elf
++      rs6000-unknown)
++              vendor=ibm
+               ;;
+-      sei)
+-              basic_machine=mips-sei
+-              os=-seiux
++      vax-unknown)
++              vendor=dec
+               ;;
+-      sequent)
+-              basic_machine=i386-sequent
++      pdp11-unknown)
++              vendor=dec
+               ;;
+-      sh)
+-              basic_machine=sh-hitachi
+-              os=-hms
++      we32k-unknown)
++              vendor=att
+               ;;
+-      sh5el)
+-              basic_machine=sh5le-unknown
++      cydra-unknown)
++              vendor=cydrome
+               ;;
+-      sh64)
+-              basic_machine=sh64-unknown
++      i370-ibm*)
++              vendor=ibm
+               ;;
+-      sparclite-wrs | simso-wrs)
+-              basic_machine=sparclite-wrs
+-              os=-vxworks
++      orion-unknown)
++              vendor=highlevel
+               ;;
+-      sps7)
+-              basic_machine=m68k-bull
+-              os=-sysv2
++      xps-unknown | xps100-unknown)
++              cpu=xps100
++              vendor=honeywell
+               ;;
+-      spur)
+-              basic_machine=spur-unknown
++
++      # Here we normalize CPU types with a missing or matching vendor
++      dpx20-unknown | dpx20-bull)
++              cpu=rs6000
++              vendor=bull
++              os=${os:-bosx}
+               ;;
+-      st2000)
+-              basic_machine=m68k-tandem
++
++      # Here we normalize CPU types irrespective of the vendor
++      amd64-*)
++              cpu=x86_64
+               ;;
+-      stratus)
+-              basic_machine=i860-stratus
+-              os=-sysv4
++      blackfin-*)
++              cpu=bfin
++              os=linux
+               ;;
+-      strongarm-* | thumb-*)
+-              basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
++      c54x-*)
++              cpu=tic54x
+               ;;
+-      sun2)
+-              basic_machine=m68000-sun
++      c55x-*)
++              cpu=tic55x
+               ;;
+-      sun2os3)
+-              basic_machine=m68000-sun
+-              os=-sunos3
++      c6x-*)
++              cpu=tic6x
+               ;;
+-      sun2os4)
+-              basic_machine=m68000-sun
+-              os=-sunos4
++      e500v[12]-*)
++              cpu=powerpc
++              os=$os"spe"
+               ;;
+-      sun3os3)
+-              basic_machine=m68k-sun
+-              os=-sunos3
++      mips3*-*)
++              cpu=mips64
+               ;;
+-      sun3os4)
+-              basic_machine=m68k-sun
+-              os=-sunos4
++      ms1-*)
++              cpu=mt
+               ;;
+-      sun4os3)
+-              basic_machine=sparc-sun
+-              os=-sunos3
++      m68knommu-*)
++              cpu=m68k
++              os=linux
+               ;;
+-      sun4os4)
+-              basic_machine=sparc-sun
+-              os=-sunos4
++      m9s12z-* | m68hcs12z-* | hcs12z-* | s12z-*)
++              cpu=s12z
+               ;;
+-      sun4sol2)
+-              basic_machine=sparc-sun
+-              os=-solaris2
++      openrisc-*)
++              cpu=or32
+               ;;
+-      sun3 | sun3-*)
+-              basic_machine=m68k-sun
++      parisc-*)
++              cpu=hppa
++              os=linux
+               ;;
+-      sun4)
+-              basic_machine=sparc-sun
++      pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
++              cpu=i586
+               ;;
+-      sun386 | sun386i | roadrunner)
+-              basic_machine=i386-sun
++      pentiumpro-* | p6-* | 6x86-* | athlon-* | athalon_*-*)
++              cpu=i686
+               ;;
+-      sv1)
+-              basic_machine=sv1-cray
+-              os=-unicos
++      pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
++              cpu=i686
+               ;;
+-      symmetry)
+-              basic_machine=i386-sequent
+-              os=-dynix
++      pentium4-*)
++              cpu=i786
+               ;;
+-      t3e)
+-              basic_machine=alphaev5-cray
+-              os=-unicos
++      pc98-*)
++              cpu=i386
+               ;;
+-      t90)
+-              basic_machine=t90-cray
+-              os=-unicos
++      ppc-* | ppcbe-*)
++              cpu=powerpc
+               ;;
+-      tile*)
+-              basic_machine=$basic_machine-unknown
+-              os=-linux-gnu
++      ppcle-* | powerpclittle-*)
++              cpu=powerpcle
+               ;;
+-      tx39)
+-              basic_machine=mipstx39-unknown
++      ppc64-*)
++              cpu=powerpc64
+               ;;
+-      tx39el)
+-              basic_machine=mipstx39el-unknown
++      ppc64le-* | powerpc64little-*)
++              cpu=powerpc64le
+               ;;
+-      toad1)
+-              basic_machine=pdp10-xkl
+-              os=-tops20
++      sb1-*)
++              cpu=mipsisa64sb1
+               ;;
+-      tower | tower-32)
+-              basic_machine=m68k-ncr
++      sb1el-*)
++              cpu=mipsisa64sb1el
+               ;;
+-      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
++      sh5e[lb]-*)
++              cpu=`echo "$cpu" | sed 's/^\(sh.\)e\(.\)$/\1\2e/'`
+               ;;
+-      vpp*|vx|vx-*)
+-              basic_machine=f301-fujitsu
++      spur-*)
++              cpu=spur
+               ;;
+-      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
++      strongarm-* | thumb-*)
++              cpu=arm
+               ;;
+-      w89k-*)
+-              basic_machine=hppa1.1-winbond
+-              os=-proelf
++      tx39-*)
++              cpu=mipstx39
+               ;;
+-      xbox)
+-              basic_machine=i686-pc
+-              os=-mingw32
++      tx39el-*)
++              cpu=mipstx39el
+               ;;
+-      xps | xps100)
+-              basic_machine=xps100-honeywell
++      x64-*)
++              cpu=x86_64
+               ;;
+       xscale-* | xscalee[bl]-*)
+-              basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
+-              ;;
+-      ymp)
+-              basic_machine=ymp-cray
+-              os=-unicos
+-              ;;
+-      z8k-*-coff)
+-              basic_machine=z8k-unknown
+-              os=-sim
+-              ;;
+-      z80-*-coff)
+-              basic_machine=z80-unknown
+-              os=-sim
+-              ;;
+-      none)
+-              basic_machine=none-none
+-              os=-none
++              cpu=`echo "$cpu" | sed 's/^xscale/arm/'`
+               ;;
+ 
+-# 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
+-              ;;
+-      op50n)
+-              basic_machine=hppa1.1-oki
+-              ;;
+-      op60c)
+-              basic_machine=hppa1.1-oki
++      # Recognize the canonical CPU Types that limit and/or modify the
++      # company names they are paired with.
++      cr16-*)
++              os=${os:-elf}
+               ;;
+-      romp)
+-              basic_machine=romp-ibm
++      crisv32-* | etraxfs*-*)
++              cpu=crisv32
++              vendor=axis
+               ;;
+-      mmix)
+-              basic_machine=mmix-knuth
++      cris-* | etrax*-*)
++              cpu=cris
++              vendor=axis
+               ;;
+-      rs6000)
+-              basic_machine=rs6000-ibm
++      crx-*)
++              os=${os:-elf}
+               ;;
+-      vax)
+-              basic_machine=vax-dec
+-              ;;
+-      pdp10)
+-              # there are many clones, so DEC is not a safe bet
+-              basic_machine=pdp10-unknown
+-              ;;
+-      pdp11)
+-              basic_machine=pdp11-dec
+-              ;;
+-      we32k)
+-              basic_machine=we32k-att
+-              ;;
+-      sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
+-              basic_machine=sh-unknown
+-              ;;
+-      sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
+-              basic_machine=sparc-sun
+-              ;;
+-      cydra)
+-              basic_machine=cydra-cydrome
+-              ;;
+-      orion)
+-              basic_machine=orion-highlevel
++      neo-tandem)
++              cpu=neo
++              vendor=tandem
+               ;;
+-      orion105)
+-              basic_machine=clipper-highlevel
++      nse-tandem)
++              cpu=nse
++              vendor=tandem
+               ;;
+-      mac | mpw | mac-mpw)
+-              basic_machine=m68k-apple
++      nsr-tandem)
++              cpu=nsr
++              vendor=tandem
+               ;;
+-      pmac | pmac-mpw)
+-              basic_machine=powerpc-apple
++      nsv-tandem)
++              cpu=nsv
++              vendor=tandem
++              ;;
++      nsx-tandem)
++              cpu=nsx
++              vendor=tandem
++              ;;
++      s390-*)
++              cpu=s390
++              vendor=ibm
++              ;;
++      s390x-*)
++              cpu=s390x
++              vendor=ibm
+               ;;
+-      *-unknown)
+-              # Make sure to match an already-canonicalized machine name.
++      tile*-*)
++              os=${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 \
++                      | arm  | arm[lb]e | arme[lb] | armv* \
++                      | avr | avr32 \
++                      | asmjs \
++                      | ba \
++                      | be32 | be64 \
++                      | bfin | 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 \
++                      | 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 \
++                      | mipsisa32r6 | mipsisa32r6el \
++                      | mipsisa64 | mipsisa64el \
++                      | mipsisa64r2 | mipsisa64r2el \
++                      | 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 | riscv64 \
++                      | rl78 | romp | rs6000 | rx \
++                      | 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 \
++                      | tic30 | tic4x | tic54x | tic55x | tic6x | tic80 \
++                      | tron \
++                      | ubicom32 \
++                      | v70 | v850 | v850e | v850e1 | v850es | v850e2 | v850e2v3 \
++                      | vax \
++                      | visium \
++                      | w65 | wasm32 \
++                      | 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
+               ;;
+       *)
+               ;;
+@@ -1340,197 +1275,246 @@ esac
+ 
+ # Decode manufacturer-specific aliases for certain operating systems.
+ 
+-if [ x"$os" != x"" ]
++if [ x$os != x ]
+ then
+ 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
++      # 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
+               ;;
+-      -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|'`
+               ;;
+-      -svr4*)
+-              os=-sysv4
++      solaris)
++              os=solaris2
+               ;;
+-      -unixware*)
+-              os=-sysv4.2uw
++      unixware*)
++              os=sysv4.2uw
+               ;;
+-      -gnu/linux*)
++      gnu/linux*)
+               os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
+               ;;
+-      # First accept the basic system types.
++      # es1800 is here to avoid being matched by es* (a different OS)
++      es1800*)
++              os=ose
++              ;;
++      # Some version numbers need modification
++      chorusos*)
++              os=chorusos
++              ;;
++      isc)
++              os=isc2.2
++              ;;
++      sco6)
++              os=sco5v6
++              ;;
++      sco5)
++              os=sco3.2v5
++              ;;
++      sco4)
++              os=sco3.2v4
++              ;;
++      sco3.2.[4-9]*)
++              os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
++              ;;
++      sco3.2v[4-9]* | sco5v6*)
++              # Don't forget version if it is 3.2v4 or newer.
++              ;;
++      scout)
++              # Don't match below
++              ;;
++      sco*)
++              os=sco3.2v2
++              ;;
++      psos*)
++              os=psos
++              ;;
++      # 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* \
+-            | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
+-            | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
+-            | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
+-            | -bitrig* | -openbsd* | -solidbsd* \
+-            | -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* \
+-            | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
+-            | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
+-            | -linux-newlib* | -linux-musl* | -linux-uclibc* \
+-            | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
+-            | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
+-            | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
+-            | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
+-            | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
+-            | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
+-            | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
+-            | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* | -tirtos*)
++      # 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* | esix* | 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* | isc* | rtu* | xenix* \
++           | 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* | hcos* \
++           | chorusrdb* | cegcc* | glidix* \
++           | cygwin* | msys* | pe* | 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* | amdhsa* | unleashed* | emscripten*)
+       # Remember, each alternative MUST END IN *, to match a version number.
+               ;;
+-      -qnx*)
+-              case $basic_machine in
+-                  x86-* | i*86-*)
++      qnx*)
++              case $cpu in
++                  x86 | i*86)
+                       ;;
+                   *)
+-                      os=-nto$os
++                      os=nto-$os
+                       ;;
+               esac
+               ;;
+-      -nto-qnx*)
++      hiux*)
++              os=hiuxwe2
+               ;;
+-      -nto*)
+-              os=`echo $os | sed -e 's|nto|nto-qnx|'`
++      nto-qnx*)
+               ;;
+-      -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
+-            | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
+-            | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
++      nto*)
++              os=`echo $os | sed -e 's|nto|nto-qnx|'`
+               ;;
+-      -mac*)
+-              os=`echo $os | sed -e 's|mac|macos|'`
++      sim | xray | os68k* | v88r* \
++          | windows* | osx | abug | netware* | os9* \
++          | macos* | mpw* | magic* | mmixware* | mon960* | lnews*)
+               ;;
+-      -linux-dietlibc)
+-              os=-linux-dietlibc
++      linux-dietlibc)
++              os=linux-dietlibc
+               ;;
+-      -linux*)
++      linux*)
+               os=`echo $os | sed -e 's|linux|linux-gnu|'`
+               ;;
+-      -sunos5*)
+-              os=`echo $os | sed -e 's|sunos5|solaris2|'`
++      lynx*178)
++              os=lynxos178
++              ;;
++      lynx*5)
++              os=lynxos5
+               ;;
+-      -sunos6*)
+-              os=`echo $os | sed -e 's|sunos6|solaris3|'`
++      lynx*)
++              os=lynxos
+               ;;
+-      -opened*)
+-              os=-openedition
++      mac*)
++              os=`echo "$os" | sed -e 's|mac|macos|'`
+               ;;
+-      -os400*)
+-              os=-os400
++      opened*)
++              os=openedition
+               ;;
+-      -wince*)
+-              os=-wince
++      os400*)
++              os=os400
+               ;;
+-      -osfrose*)
+-              os=-osfrose
++      sunos5*)
++              os=`echo "$os" | sed -e 's|sunos5|solaris2|'`
+               ;;
+-      -osf*)
+-              os=-osf
++      sunos6*)
++              os=`echo "$os" | sed -e 's|sunos6|solaris3|'`
+               ;;
+-      -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
++              ;;
++      386bsd)
++              os=bsd
+               ;;
+-      -ctix* | -uts*)
+-              os=-sysv
++      ctix* | uts*)
++              os=sysv
+               ;;
+-      -nova*)
+-              os=-rtmk-nova
++      nova*)
++              os=rtmk-nova
+               ;;
+-      -ns2 )
+-              os=-nextstep2
++      ns2)
++              os=nextstep2
+               ;;
+-      -nsk*)
+-              os=-nsk
++      nsk*)
++              os=nsk
+               ;;
+       # Preserve the version number of sinix5.
+-      -sinix5.*)
++      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*)
++      # This must come after sysvr4.
++      sysv*)
+               ;;
+-      -ose*)
+-              os=-ose
++      ose*)
++              os=ose
+               ;;
+-      -es1800*)
+-              os=-ose
++      *mint | mint[0-9]* | *MiNT | MiNT[0-9]*)
++              os=mint
+               ;;
+-      -xenix)
+-              os=-xenix
++      zvmoe)
++              os=zvmoe
+               ;;
+-      -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
+-              os=-mint
++      dicos*)
++              os=dicos
+               ;;
+-      -aros*)
+-              os=-aros
++      pikeos*)
++              # Until real need of OS specific support for
++              # particular features comes up, bare metal
++              # configurations are quite functional.
++              case $cpu in
++                  arm*)
++                      os=eabi
++                      ;;
++                  *)
++                      os=elf
++                      ;;
++              esac
+               ;;
+-      -zvmoe)
+-              os=-zvmoe
++      nacl*)
+               ;;
+-      -dicos*)
+-              os=-dicos
++      ios)
+               ;;
+-      -nacl*)
++      none)
+               ;;
+-      -none)
++      *-eabi)
+               ;;
+       *)
+-              # Get rid of the `-' at the beginning of $os.
+-              os=`echo $os | sed 's/[^-]*-//'`
+-              echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
++              echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2
+               exit 1
+               ;;
+ esac
+@@ -1546,261 +1530,265 @@ else
+ # will signal an error saying that MANUFACTURER isn't an operating
+ # system, and we'll never get to this point.
+ 
+-case $basic_machine in
++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
++              os=linux
+               ;;
+       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
+               ;;
+-      *-be)
+-              os=-beos
++      pru-*)
++              os=elf
+               ;;
+-      *-haiku)
+-              os=-haiku
++      *-be)
++              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
++      *-next)
++              os=nextstep
+               ;;
+       *-sequent)
+-              os=-ptx
++              os=ptx
+               ;;
+       *-crds)
+-              os=-unos
++              os=unos
+               ;;
+       *-ns)
+-              os=-genix
++              os=genix
+               ;;
+       i370-*)
+-              os=-mvs
+-              ;;
+-      *-next)
+-              os=-nextstep3
++              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
+ 
+ # 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 $vendor in
++      unknown)
+               case $os in
+-                      -riscix*)
++                      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*)
++                      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-$os"
+ exit
+ 
+ # Local variables:
+-# eval: (add-hook 'write-file-hooks 'time-stamp)
++# eval: (add-hook 'before-save-hook 'time-stamp)
+ # time-stamp-start: "timestamp='"
+ # time-stamp-format: "%:y-%02m-%02d"
+ # time-stamp-end: "'"
Index: pkgsrc/net/ntp4/patches/patch-sntp_libopts_autoopts.h
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-sntp_libopts_autoopts.h:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-sntp_libopts_autoopts.h       Sun Jun 21 15:10:47 2020
@@ -0,0 +1,27 @@
+$NetBSD: patch-sntp_libopts_autoopts.h,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- sntp/libopts/autoopts.h.orig       2015-04-26 18:43:14.000000000 +0000
++++ sntp/libopts/autoopts.h
+@@ -32,7 +32,11 @@
+ 
+ #ifndef AUTOGEN_AUTOOPTS_H
+ #define AUTOGEN_AUTOOPTS_H
++#if 0
+ #include <stdnoreturn.h>
++#else
++#define noreturn __dead
++#endif
+ 
+ #define AO_NAME_LIMIT           127
+ #define AO_NAME_SIZE            ((size_t)(AO_NAME_LIMIT + 1))
+@@ -452,7 +456,7 @@ typedef enum { AOFLAG_TABLE } ao_flags_t
+ #undef  _aof_
+ 
+ static char const   zNil[] = "";
+-static arg_types_t  argTypes             = { NULL };
++static arg_types_t  argTypes             = { .pzStr = NULL };
+ static char         line_fmt_buf[32];
+ static bool         displayEnum          = false;
+ static char const   pkgdatadir_default[] = PKGDATADIR;
Index: pkgsrc/net/ntp4/patches/patch-sntp_libopts_enum.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-sntp_libopts_enum.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-sntp_libopts_enum.c   Sun Jun 21 15:10:47 2020
@@ -0,0 +1,15 @@
+$NetBSD: patch-sntp_libopts_enum.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- sntp/libopts/enum.c.orig   2015-12-05 20:28:17.000000000 +0000
++++ sntp/libopts/enum.c
+@@ -253,7 +253,7 @@ find_name(char const * name, tOptions * 
+ char const *
+ optionKeywordName(tOptDesc * pOD, unsigned int enum_val)
+ {
+-    tOptDesc od = { 0 };
++    tOptDesc od = { .optIndex = 0 };
+     od.optArg.argEnum = enum_val;
+ 
+     (*(pOD->pOptProc))(OPTPROC_RETURN_VALNAME, &od );
Index: pkgsrc/net/ntp4/patches/patch-sntp_libopts_usage.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-sntp_libopts_usage.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-sntp_libopts_usage.c  Sun Jun 21 15:10:47 2020
@@ -0,0 +1,15 @@
+$NetBSD: patch-sntp_libopts_usage.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- sntp/libopts/usage.c.orig  2015-04-26 18:43:15.000000000 +0000
++++ sntp/libopts/usage.c
+@@ -762,7 +762,7 @@ prt_vendor_opts(tOptions * opts, char co
+         OPTST_NO_USAGE_MASK | OPTST_DOCUMENT;
+ 
+     static char const vfmtfmt[] = "%%-%us %%s\n";
+-    char vfmt[sizeof(vfmtfmt)];
++    char vfmt[sizeof(vfmtfmt)+10]; /* strlen(UINT_MAX) */
+ 
+     /*
+      *  Only handle client specified options.  The "vendor option" follows
Index: pkgsrc/net/ntp4/patches/patch-util_ntp-keygen.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-util_ntp-keygen.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-util_ntp-keygen.c     Sun Jun 21 15:10:47 2020
@@ -0,0 +1,29 @@
+$NetBSD: patch-util_ntp-keygen.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- util/ntp-keygen.c.orig     2020-03-04 01:38:15.000000000 +0000
++++ util/ntp-keygen.c
+@@ -275,17 +275,19 @@ followlink(
+       )
+ {
+       int len;
++      char result[2048];
+ 
+       REQUIRE(bufsiz > 0);
+ 
+-      len = readlink(fname, fname, (int)bufsiz);
+-      if (len < 0 ) {
++      len = readlink(fname, result, sizeof(result));
++      if (len < 0) {
+               fname[0] = '\0';
+               return;
+       }
+       if (len > (int)bufsiz - 1)
+               len = (int)bufsiz - 1;
+-      fname[len] = '\0';
++      result[len] = '\0';
++      strcpy(fname, result);
+ }
+ 
+ 
Index: pkgsrc/net/ntp4/patches/patch-util_ntptime.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-util_ntptime.c:1.1
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-util_ntptime.c        Sun Jun 21 15:10:47 2020
@@ -0,0 +1,15 @@
+$NetBSD: patch-util_ntptime.c,v 1.1 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- util/ntptime.c.orig        2020-03-03 23:41:29.000000000 +0000
++++ util/ntptime.c
+@@ -98,7 +98,7 @@ main(
+       struct timex ntx, _ntx;
+       int     times[20] = { 0 };
+       double ftemp, gtemp, htemp;
+-      double nscale = 1.0;                    /* assume usec scale for now */
++      volatile double nscale = 1.0;                   /* assume usec scale for now */
+       long time_frac;                         /* ntv.time.tv_frac_sec (us/ns) */
+       l_fp ts;
+       volatile unsigned ts_mask = TS_MASK_US;         /* defaults to 20 bits (us) */

Index: pkgsrc/net/ntp4/patches/patch-ntpd_ntp__io.c
diff -u /dev/null pkgsrc/net/ntp4/patches/patch-ntpd_ntp__io.c:1.3
--- /dev/null   Sun Jun 21 15:10:47 2020
+++ pkgsrc/net/ntp4/patches/patch-ntpd_ntp__io.c        Sun Jun 21 15:10:47 2020
@@ -0,0 +1,69 @@
+$NetBSD: patch-ntpd_ntp__io.c,v 1.3 2020/06/21 15:10:47 taca Exp $
+
+* Changes from NetBSD base.
+
+--- ntpd/ntp_io.c.orig 2020-03-03 23:41:29.000000000 +0000
++++ ntpd/ntp_io.c
+@@ -4836,6 +4836,50 @@ init_async_notifications()
+ #else
+       int fd = socket(PF_ROUTE, SOCK_RAW, 0);
+ #endif
++#ifdef RO_MSGFILTER
++      unsigned char msgfilter[] = {
++#ifdef RTM_NEWADDR
++              RTM_NEWADDR,
++#endif
++#ifdef RTM_DELADDR
++              RTM_DELADDR,
++#endif
++#ifdef RTM_ADD
++              RTM_ADD,
++#endif
++#ifdef RTM_DELETE
++              RTM_DELETE,
++#endif
++#ifdef RTM_REDIRECT
++              RTM_REDIRECT,
++#endif
++#ifdef RTM_CHANGE
++              RTM_CHANGE,
++#endif
++#ifdef RTM_LOSING
++              RTM_LOSING,
++#endif
++#ifdef RTM_IFINFO
++              RTM_IFINFO,
++#endif
++#ifdef RTM_IFANNOUNCE
++              RTM_IFANNOUNCE,
++#endif
++#ifdef RTM_NEWLINK
++              RTM_NEWLINK,
++#endif
++#ifdef RTM_DELLINK
++              RTM_DELLINK,
++#endif
++#ifdef RTM_NEWROUTE
++              RTM_NEWROUTE,
++#endif
++#ifdef RTM_DELROUTE
++              RTM_DELROUTE,
++#endif
++      };
++#endif /* !RO_MSGFILTER */
++
+       if (fd < 0) {
+               msyslog(LOG_ERR,
+                       "unable to open routing socket (%m) - using polled interface update");
+@@ -4856,6 +4900,11 @@ init_async_notifications()
+               return;
+       }
+ #endif
++#ifdef RO_MSGFILTER
++      if (setsockopt(fd, PF_ROUTE, RO_MSGFILTER,
++          &msgfilter, sizeof(msgfilter)) == -1)
++              msyslog(LOG_ERR, "RO_MSGFILTER: %m");
++#endif
+       make_socket_nonblocking(fd);
+ #if defined(HAVE_SIGNALED_IO)
+       init_socket_sig(fd);



Home | Main Index | Thread Index | Old Index