Make source package creation repeatable
- Due to all sorts of not preserving file times, and embedding
timestamps, creation of source tarballs would not product the same
artifact each time. Fix a few options to ensure that the source tarballs
always are the same (assuming no changes to the contents, of course)
Change-Id: I6aeffcd526e82c5f2a2bd62c69544bd543049a95
diff --git a/packages.mk b/packages.mk
index db36dfc..82b5a24 100644
--- a/packages.mk
+++ b/packages.mk
@@ -74,12 +74,13 @@
cd $(ROOTDIR)/$2; git submodule init; git submodule update;
rm -rf $(PRODUCT_OUT)/obj/$1
mkdir -p $(PRODUCT_OUT)/obj/$1
- rsync -rl --exclude .git/ $(ROOTDIR)/$2/* $(PRODUCT_OUT)/obj/$1
- cp -r $(ROOTDIR)/packages/$1/debian $(PRODUCT_OUT)/obj/$1
- tar -C $(PRODUCT_OUT)/obj --exclude=debian/ -czf \
+ rsync -a --exclude .git/ $(ROOTDIR)/$2/* $(PRODUCT_OUT)/obj/$1
+ cp -a $(ROOTDIR)/packages/$1/debian $(PRODUCT_OUT)/obj/$1
+ touch -t 7001010000 $(PRODUCT_OUT)/obj/$1
+ tar -C $(PRODUCT_OUT)/obj -I 'gzip -n' --exclude=debian/ -cf \
$(PRODUCT_OUT)/obj/$1_$$(call get-deb-version-orig,$1).orig.tar.gz \
$1
- tar -C $(PRODUCT_OUT)/obj/$1 -czf \
+ tar -C $(PRODUCT_OUT)/obj/$1 -I 'gzip -n' -cf \
$(PRODUCT_OUT)/obj/$1_$$(call get-deb-version-full,$1).debian.tar.gz \
debian