Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 26 Sep 2018 13:58:50 -0400
From:      Ed Maste <emaste@freebsd.org>
To:        tech-lists <tech-lists@zyxst.net>
Cc:        Andrey Fesenko <f0andrey@gmail.com>, FreeBSD Current <freebsd-current@freebsd.org>
Subject:   Re: change in uname -a behaviour between 12-ALPHA5 and 12-ALPHA7
Message-ID:  <CAPyFy2Dd1W72XQGkMCBM0b9sf%2BvwkYhUrmzmfX1iKZ6EdLqTMg@mail.gmail.com>
In-Reply-To: <fc940515-9802-3b98-f2f5-f11715e77cb4@zyxst.net>
References:  <ef47f178-ff1f-df17-7841-aaed8257dd71@zyxst.net> <CA%2BK5SrOi7o9d50S%2BVL63jRqHB7Kg2wfc466zxnwfpWTvng85ig@mail.gmail.com> <fc940515-9802-3b98-f2f5-f11715e77cb4@zyxst.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On 26 September 2018 at 12:20, tech-lists <tech-lists@zyxst.net> wrote:
> On 26/09/2018 14:34, Andrey Fesenko wrote:
>>
>> See WITH_REPRODUCIBLE_BUILD
>>
>> https://lists.freebsd.org/pipermail/freebsd-current/2018-September/071125.html
>
>
> Thanks, I was unaware of the change till now. Somehow missed that thread.

I've also added it to UPDATING now too, in r338946 - I missed that at first.

> I had to add the line WITHOUT_REPRODUCIBLE_BUILD="YES"
> to /etc/src.conf. I could not see WITH_REPRODUCIBLE_BUILD in man src.conf.

Where a knob has the same default on all architectures,only the
(non-default) setting that has an effect is documented:

     WITHOUT_REPRODUCIBLE_BUILD
             Set to include build metadata (such as the build time, user, and
             host) in the kernel, boot loaders, and uname output.  Successive
             builds will not be bit-for-bit identical.

> So this means at least in -current r338903 that
> WITHOUT_REPRODUCIBLE_BUILD="NO" is the default, iow REPRODUCIBLE_BUILD is on
> by default unless everything is recompiled WITHOUT_REPRODUCIBLE_BUILD="YES".

The WITH/WITHOUT options do not test the value, only whether set or
not -- see the src.conf(5) note:

     The values of variables are ignored regardless of their setting; even if
     they would be set to "FALSE" or "NO".  The presence of an option causes
     it to be honored by make(1).

In other words, there are only two cases:

- REPRODUCIBLE_BUILD defaults to off, and WITH_REPRODUCIBLE_BUILD=yes
enables it (prior to r338642)
- REPRODUCIBLE_BUILD defaults to on, and
WITHOUT_REPRODUCIBLE_BUILD=yes disables it (r338643 and later)

Note that the original plan was to make this change only in the branch
before the release, but we decided to do it earlier in order to
identify any issues. Right now it's still undecided whether the
default will switch back to off in HEAD after the branch or not.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAPyFy2Dd1W72XQGkMCBM0b9sf%2BvwkYhUrmzmfX1iKZ6EdLqTMg>