svn commit: r336011 - head/usr.sbin/config
Andrew Turner
andrew at fubar.geek.nz
Thu Jul 5 18:33:00 UTC 2018
> On 5 Jul 2018, at 18:53, Kyle Evans <kevans at FreeBSD.org> wrote:
>
> Author: kevans
> Date: Thu Jul 5 17:53:51 2018
> New Revision: 336011
> URL: https://svnweb.freebsd.org/changeset/base/336011
>
> Log:
> config(8): De-dupe hint/env vars within a single file
>
> r335653 flipped the order in which hints/env files are concatenated to match
> the order in which vars are processed by the kernel. This is the other
> hammer to drop.
>
> Use nv(9) to de-dupe entries within a single `hint` or `env` file, using the
> latest value specified for a key. This leaves some duplicates if a variable
> is specified in multiple hint/env files or via `envvar` in a kernel config,
> but the reversed order of concatenation (from r335653) makes this a
> non-issue as the latest-specified version will be seen first.
>
> This change also silently rewrote hint bits to use the same sanitization
> process that ian@ wrote for r335642. To the kernel, hints and env vars are
> basically the same thing through early boot, then get merged into the
> dynamic environment once kmem becomes available and the dynamic environment
> is created. They should be subjected to the same restrictions.
>
> MFC after: 1 month
>
> Modified:
> head/usr.sbin/config/Makefile
> head/usr.sbin/config/mkmakefile.c
>
> Modified: head/usr.sbin/config/Makefile
> ==============================================================================
> --- head/usr.sbin/config/Makefile Thu Jul 5 17:28:06 2018 (r336010)
> +++ head/usr.sbin/config/Makefile Thu Jul 5 17:53:51 2018 (r336011)
> @@ -18,7 +18,7 @@ CFLAGS+= -I. -I${SRCDIR}
>
> NO_WMISSING_VARIABLE_DECLARATIONS=
>
> -LIBADD= l sbuf
> +LIBADD= l nv sbuf
>
> CLEANFILES+= kernconf.c
>
>
> Modified: head/usr.sbin/config/mkmakefile.c
> ==============================================================================
> --- head/usr.sbin/config/mkmakefile.c Thu Jul 5 17:28:06 2018 (r336010)
> +++ head/usr.sbin/config/mkmakefile.c Thu Jul 5 17:53:51 2018 (r336011)
> @@ -49,6 +49,8 @@ static const char rcsid[] =
> #include <stdbool.h>
> #include <stdio.h>
> #include <string.h>
> +#include <sys/cnv.h>
> +#include <sys/nv.h>
It looks like this breaks the build from 11 [1]. cnv.h doesn’t exist there.
Andrew
[1] https://ci.freebsd.org/job/FreeBSD-head-aarch64-build/8427/console
More information about the svn-src-all
mailing list