Browse Source

gemini: make all tar files more reproducible

Force a fixed sorting and use the parameters to create reproducible
archives for all tar invocations.

Signed-off-by: Mathias Kresin <[email protected]>
Mathias Kresin 7 years ago
parent
commit
1e606edce6
1 changed files with 5 additions and 3 deletions
  1. 5 3
      target/linux/gemini/image/Makefile

+ 5 - 3
target/linux/gemini/image/Makefile

@@ -38,7 +38,9 @@ define Build/dns313-images
 	dns313-header $(IMAGE_KERNEL) \
 		[email protected]/.boot/zImage
 
-	tar -czf $@ -C @.tmp .boot
+	tar --sort=name --owner=0 --group=0 --numeric-owner -czf $@ \
+		-C [email protected] .boot \
+		$(if $(SOURCE_DATE_EPOCH),--mtime="@$(SOURCE_DATE_EPOCH)")
 
 	rm -rf [email protected]
 endef
@@ -57,8 +59,8 @@ define Build/nas4220b-sq201-images
 	dd if=/dev/zero of=$@-tmp/hddapp.tgz bs=6144k count=1
 	cp $(IMAGE_KERNEL) $@-tmp/zImage
 	cp ./ImageInfo-$(1) $@-tmp/ImageInfo
-	(cd $@-tmp; tar --owner=0 --group=0 --numeric-owner --mtime=@$(SOURCE_DATE_EPOCH) \
-			-czf $@ ImageInfo zImage rd.gz hddapp.tgz)
+	(cd $@-tmp; tar --sort=name --owner=0 --group=0 --numeric-owner -czf $@ * \
+		$(if $(SOURCE_DATE_EPOCH),--mtime="@$(SOURCE_DATE_EPOCH)"))
 	rm -rf $@-tmp
 endef