[Buildroot] [1/1] fs/cpio: sort 'find' utility output (reproducible builds)

Yurii Monakov monakov.y at gmail.com
Mon Jun 29 12:37:01 UTC 2020


Order of find utility results are not sorted and depend on items
attributes, so cpio produces different results across machines.

This patch sorts find output before piping to cpio to make
builds reproducible.

Signed-off-by: Yurii Monakov <monakov.y at gmail.com>
---
 fs/cpio/cpio.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/cpio/cpio.mk b/fs/cpio/cpio.mk
index 28a435dd5e..73837ddecb 100644
--- a/fs/cpio/cpio.mk
+++ b/fs/cpio/cpio.mk
@@ -37,7 +37,7 @@ 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 . | sort | cpio $(ROOTFS_CPIO_OPTS) --quiet -o -H newc > $@
 endef
 
 ifeq ($(BR2_TARGET_ROOTFS_CPIO_UIMAGE),y)
-- 
2.17.1



More information about the buildroot mailing list