Author: aurel32
Date: 2015-08-21 15:08:32 +0000 (Fri, 21 Aug 2015)
New Revision: 6477

Modified:
   glibc-package/branches/glibc-2.21/debian/changelog
   glibc-package/branches/glibc-2.21/debian/rules.d/build.mk
Log:
Create source tarball in a deterministic manner: adjust file modification
time, user, group, permissions, and file order (addresses: #783210).

Modified: glibc-package/branches/glibc-2.21/debian/changelog
===================================================================
--- glibc-package/branches/glibc-2.21/debian/changelog  2015-08-21 14:43:12 UTC 
(rev 6476)
+++ glibc-package/branches/glibc-2.21/debian/changelog  2015-08-21 15:08:32 UTC 
(rev 6477)
@@ -95,6 +95,10 @@
   [ Matthias Klose ]
   * Fix multilib enabled stage1 cross builds (closes: #766877).
 
+  [ Aurelien Jarno ]
+  * Create source tarball in a deterministic manner: adjust file modification
+    time, user, group, permissions, and file order (addresses: #783210).
+
  -- Samuel Thibault <[email protected]>  Fri, 20 Mar 2015 12:30:54 +0000
 
 glibc (2.21-0experimental0) experimental; urgency=medium

Modified: glibc-package/branches/glibc-2.21/debian/rules.d/build.mk
===================================================================
--- glibc-package/branches/glibc-2.21/debian/rules.d/build.mk   2015-08-21 
14:43:12 UTC (rev 6476)
+++ glibc-package/branches/glibc-2.21/debian/rules.d/build.mk   2015-08-21 
15:08:32 UTC (rev 6477)
@@ -275,9 +275,17 @@
 
 $(stamp)source: $(stamp)patch
        mkdir -p $(build-tree)
-       tar -c -J -C .. \
-               -f $(build-tree)/glibc-$(GLIBC_VERSION).tar.xz \
-               $(GLIBC_SOURCES)
+       cd .. && \
+              find $(GLIBC_SOURCES) -depth -newermt '$(DEB_BUILD_DATE)' \
+                       -print0 | \
+               xargs -0r touch --no-dereference --date='$(DEB_BUILD_DATE)'
+       cd .. && \
+               find $(GLIBC_SOURCES) -print0 | \
+               LC_ALL=C sort -z | \
+               tar -c -J --null -T - --no-recursion \
+                       --mode=go=rX,u+rw,a-s \
+                       --owner=root --group=root --numeric-owner \
+                       -f $(CURDIR)/$(build-tree)/glibc-$(GLIBC_VERSION).tar.xz
        mkdir -p debian/glibc-source/usr/src/glibc
        tar cf - --files-from debian/glibc-source.filelist \
          | tar -x -C debian/glibc-source/usr/src/glibc -f -

Reply via email to