[OE-core] [OE-Core][PATCH] rootfs: Make BUILDNAME a weak default in reproducible_build_simple

Peter Kjellerstedt peter.kjellerstedt at axis.com
Sun Feb 9 06:05:18 UTC 2020


> -----Original Message-----
> From: Alex Kiernan <alex.kiernan at gmail.com>
> Sent: den 7 februari 2020 18:04
> To: Peter Kjellerstedt <peter.kjellerstedt at axis.com>
> Cc: openembedded-core at lists.openembedded.org
> Subject: Re: [OE-core] [OE-Core][PATCH] rootfs: Make BUILDNAME a weak
> default in reproducible_build_simple
> 
> On Fri, Feb 7, 2020 at 4:27 PM Peter Kjellerstedt
> <peter.kjellerstedt at axis.com> wrote:
> >
> > > -----Original Message-----
> > > From: openembedded-core-bounces at lists.openembedded.org <openembedded-
> core-
> > > bounces at lists.openembedded.org> On Behalf Of Alex Kiernan
> > > Sent: den 18 januari 2020 06:41
> > > To: openembedded-core at lists.openembedded.org
> > > Subject: [OE-core] [OE-Core][PATCH] rootfs: Make BUILDNAME a weak
> default
> > > in reproducible_build_simple
> > >
> > > 11e45082ad00 ("rootfs-postcommands.bbclass: improve binary
> > > reproducibility") fixed binary reproducibility of /etc/version, but
> with
> > > the move to reproducibilty in all builds, setting /etc/version to
> > > anything other than the default fixed timestamp is tricky because
> > > rootfs_reproducible() runs very late.
> > >
> > > rootfs.py uses BUILDNAME if set for /etc/version, so introduce a weak
> > > default for BUILDNAME of "REPRODUCIBLE_TIMESTAMP_ROOTFS", when
> enabling
> > > reproducible builds hence allowing BUILDNAME to be overridden
> elsewhere.
> > >
> > > Signed-off-by: Alex Kiernan <alex.kiernan at gmail.com>
> > > ---
> > >
> > >  meta/classes/reproducible_build_simple.bbclass | 1 +
> > >  meta/classes/rootfs-postcommands.bbclass       | 5 -----
> > >  2 files changed, 1 insertion(+), 5 deletions(-)
> > >
> > > diff --git a/meta/classes/reproducible_build_simple.bbclass
> b/meta/classes/reproducible_build_simple.bbclass
> > > index d0842f0f902a..153a07607219 100644
> > > --- a/meta/classes/reproducible_build_simple.bbclass
> > > +++ b/meta/classes/reproducible_build_simple.bbclass
> > > @@ -7,5 +7,6 @@ export PERL_HASH_SEED = "0"
> > >  export SOURCE_DATE_EPOCH ??= "1520598896"
> > >
> > >  REPRODUCIBLE_TIMESTAMP_ROOTFS ??= "1520598896"
> > > +BUILDNAME ??= "${REPRODUCIBLE_TIMESTAMP_ROOTFS}"
> >
> > Can we please revert this change?  This breaks (all?) other usages
> > of ${BUILDNAME}. E.g., the information in tmp/buildstats is totally
> > useless now since all builds end up in the same directory
> > "tmp/buildstats/1520598896", overwriting each other...
> >
> 
> +1; I'd agree that seems rather more broken than the problem I was
> trying to fix here.
> 
> --
> Alex Kiernan

I guess you can achieve what you originally wanted by introducing some new 
variable, but I will send a patch to revert the above change for now.

//Peter



More information about the Openembedded-core mailing list