fs/cpio: generate reproducible archives
The output of 'find' depends on the directory entries, and is not ordered. As a consequence, the cpio archive is not reproducible. Fix that by sorting the output of find. Use the 'C' locale to enforce reproducibility that does not depend on the locale. The command line is now pretty long, so we wrap it. Signed-off-by: Yurii Monakov <monakov.y@gmail.com> [yann.morin.1998@free.fr: - use LC_ALL=C when sorting - wrap long line - reword commit log ] Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This commit is contained in:
parent
16a522b5e0
commit
4728fdd4c0
@ -37,7 +37,11 @@ ROOTFS_CPIO_OPTS += --reproducible
|
||||
endif
|
||||
|
||||
define ROOTFS_CPIO_CMD
|
||||
cd $(TARGET_DIR) && find . | cpio $(ROOTFS_CPIO_OPTS) --quiet -o -H newc > $@
|
||||
cd $(TARGET_DIR) && \
|
||||
find . \
|
||||
| LC_ALL=C sort \
|
||||
| cpio $(ROOTFS_CPIO_OPTS) --quiet -o -H newc \
|
||||
> $@
|
||||
endef
|
||||
|
||||
ifeq ($(BR2_TARGET_ROOTFS_CPIO_UIMAGE),y)
|
||||
|
Loading…
Reference in New Issue
Block a user