[Buildroot] [PATCH v2 04/15] fs/tar: make results reproducible
jezz at sysmic.org
Sat Nov 19 13:59:54 UTC 2016
On Saturday 19 November 2016 10:12:24 Arnout Vandecappelle wrote:
> On 18-11-16 10:10, Jérôme Pouiller wrote:
> > In order to make tar images reproducible, we use --sort flag. However,
> > this flags is available only from tar 1.28. So we also bump necessary
> > host-tar version.
> > This work was sponsored by `BA Robotic Systems'.
> > Signed-off-by: Jérôme Pouiller <jezz at sysmic.org>
> > ---
> > fs/tar/tar.mk | 2 +-
> > support/dependencies/check-host-tar.sh | 5 ++---
> > 2 files changed, 3 insertions(+), 4 deletions(-)
> > diff --git a/fs/tar/tar.mk b/fs/tar/tar.mk
> > index 11c69c5..5a1b263 100644
> > --- a/fs/tar/tar.mk
> > +++ b/fs/tar/tar.mk
> > @@ -7,7 +7,7 @@
> > TAR_OPTS := $(call qstrip,$(BR2_TARGET_ROOTFS_TAR_OPTIONS))
> > define ROOTFS_TAR_CMD
> > - tar $(TAR_OPTS) -cf $@ --numeric-owner -C $(TARGET_DIR) .
> > + tar $(TAR_OPTS) -cf $@ --sort=name --numeric-owner -C $(TARGET_DIR) .
> Instead of requiring a specific version of tar, I would prefer to use the same
> solution we already have in the git wrapper, and which is also what is proposed
> by reproducible-builds.org:
> find src -print0 | LC_ALL=C sort -z |
> tar --null -T - --no-recursion -cf $@ --numeric-owner -C $(TARGET_DIR)
> The find | sort part we probably want to factor into the rootfs infra, because
> the same thing will have to be done for all other rootfs types as well. But that
> refactoring can be done later (when the other rootfs types are tackled).
It makes sense. I will do that.
Jérôme Pouiller, Sysmic
Embedded Linux specialist
More information about the buildroot