Message ID | 1479460224-6119-11-git-send-email-jezz@sysmic.org |
---|---|
State | Superseded |
Headers | show |
Hello, On Fri, 18 Nov 2016 10:10:19 +0100, Jérôme Pouiller wrote: > +ifeq ($(BR2_REPRODUCIBLE),y) > +TOOLCHAIN_DEPENDENCIES += host-fakedate > +endif Unfortunately, this means that fakedate is only installed at the end of the toolchain build process. So the entire toolchain is built without fakedate installed. Is it because we assume that the toolchain build process is safe (i.e it doesn't call "date") ? Perhaps it should be added in DEPENDENCIES_HOST_PREREQ instead ? Best regards, Thomas
On 2016-11-18 12:49, Thomas Petazzoni wrote: > Hello, > > On Fri, 18 Nov 2016 10:10:19 +0100, Jérôme Pouiller wrote: > >> +ifeq ($(BR2_REPRODUCIBLE),y) >> +TOOLCHAIN_DEPENDENCIES += host-fakedate >> +endif > > Unfortunately, this means that fakedate is only installed at the end of > the toolchain build process. So the entire toolchain is built without > fakedate installed. > > Is it because we assume that the toolchain build process is safe (i.e > it doesn't call "date") ? During my tests, fakedate was build before host-gcc-initial. Indeed, I was lucky (in add, I think toolchain build process is safe). > Perhaps it should be added in DEPENDENCIES_HOST_PREREQ instead ? Right.
On 18-11-16 14:53, Jérôme Pouiller wrote: > On 2016-11-18 12:49, Thomas Petazzoni wrote: >> Hello, >> >> On Fri, 18 Nov 2016 10:10:19 +0100, Jérôme Pouiller wrote: >> >>> +ifeq ($(BR2_REPRODUCIBLE),y) >>> +TOOLCHAIN_DEPENDENCIES += host-fakedate >>> +endif >> >> Unfortunately, this means that fakedate is only installed at the end of >> the toolchain build process. So the entire toolchain is built without >> fakedate installed. >> >> Is it because we assume that the toolchain build process is safe (i.e >> it doesn't call "date") ? > > During my tests, fakedate was build before host-gcc-initial. Indeed, I > was lucky (in add, I think toolchain build process is safe). > > >> Perhaps it should be added in DEPENDENCIES_HOST_PREREQ instead ? > > Right. And that can be done in the top-level BR2_REPRODUCIBLE condition. Regards, Arnout >
diff --git a/toolchain/toolchain/toolchain.mk b/toolchain/toolchain/toolchain.mk index d317e91..b88dd94 100644 --- a/toolchain/toolchain/toolchain.mk +++ b/toolchain/toolchain/toolchain.mk @@ -10,6 +10,10 @@ else ifeq ($(BR2_TOOLCHAIN_EXTERNAL),y) TOOLCHAIN_DEPENDENCIES += toolchain-external endif +ifeq ($(BR2_REPRODUCIBLE),y) +TOOLCHAIN_DEPENDENCIES += host-fakedate +endif + TOOLCHAIN_ADD_TOOLCHAIN_DEPENDENCY = NO # Apply a hack that Rick Felker suggested[1] to avoid conflicts between libc
Enable fakedate for whole build process. This work was sponsored by `BA Robotic Systems'. Signed-off-by: Jérôme Pouiller <jezz@sysmic.org> --- toolchain/toolchain/toolchain.mk | 4 ++++ 1 file changed, 4 insertions(+)