summary refs log tree commit diff
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2017-12-13 23:35:13 +0100
committerRicardo Wurmus <rekado@elephly.net>2017-12-15 00:00:34 +0100
commit1bc147d609014cc86326ff0570dfb58426f1ec73 (patch)
treeacbdca846240ec77dcf276e0b03b1de5cd6dfe49
parente536b1d308bddc41d4eb45094e67eead681dbdd1 (diff)
downloadguix-1bc147d609014cc86326ff0570dfb58426f1ec73.tar.gz
guix: ant-build-system: Do not compress jars.
Fixes <https://bugs.gnu.org/29700>.

* guix/build/ant-build-system.scm (strip-jar-timestamps): Do not compress jar
when repacking.
-rw-r--r--guix/build/ant-build-system.scm7
1 files changed, 5 insertions, 2 deletions
diff --git a/guix/build/ant-build-system.scm b/guix/build/ant-build-system.scm
index a440daf054..6ce813a001 100644
--- a/guix/build/ant-build-system.scm
+++ b/guix/build/ant-build-system.scm
@@ -197,9 +197,12 @@ repack them.  This is necessary to ensure that archives are reproducible."
            ;; first.
            (with-directory-excursion dir
              (let* ((files (find-files "." ".*" #:directories? #t))
+                    ;; To ensure that the reference scanner can detect all
+                    ;; store references in the jars we disable compression
+                    ;; with the "-0" option.
                     (command (if (file-exists? manifest)
-                                 `("zip" "-X" ,jar ,manifest ,@files)
-                                 `("zip" "-X" ,jar ,@files))))
+                                 `("zip" "-0" "-X" ,jar ,manifest ,@files)
+                                 `("zip" "-0" "-X" ,jar ,@files))))
                (unless (zero? (apply system* command))
                  (error "'zip' failed"))))
            (utime jar 0 0)