Enabling the WITH_REPRODUCIBLE_BUILD knob for 12.0-REL

Warner Losh imp at bsdimp.com
Mon Sep 10 15:08:20 UTC 2018


On Mon, Sep 10, 2018 at 8:58 AM Ed Maste <emaste at freebsd.org> wrote:

> The FreeBSD base system is a reproducible build[1] with a minor
> exception: the build metadata (timestamps, user, hostname, etc.)
> included in the kernel and loader.
>
> With the default, non-reproducible build the kernel ident looks like:
>
> FreeBSD 12.0-ALPHA5 #4 r338195: Mon Jan 1 10:11:12 EDT 2018
>    user at hostname:/path/to/freebsd/src
>
> and the loader ident:
>
> FreeBSD/amd64 EFI loader, Revision 1.1
> (Mon Jan 1 10:11:12 EDT 2018 user at hostname)
>
> With reproducible builds enabled the kernel ident looks like:
>
> FreeBSD 12.0-ALPHA5  r338195
>
> and the loader ident:
>
> FreeBSD/amd64 EFI loader, Revision 1.1
>
> I would like to enable the REPRODUCIBLE_BUILD knob by default for the
> 12.0 release, and propose we do this by adding a step to switch the
> default to the list of changes[2] that re@ commits to the branch as
> part of the release process.
>
> [1] https://reproducible-builds.org
> [2]
> https://www.freebsd.org/doc/en_US.ISO8859-1/articles/freebsd-releng/releng-head.html


Turning it on, like we turn off WITNESS, for stable branches, I think this
is a good idea. The loader doesn't really need the extra stuff to function
properly, so dropping it is OK.

Warner


More information about the freebsd-current mailing list