unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Danny Milosavljevic <dannym@scratchpost.org>
To: 55751@debbugs.gnu.org
Cc: Danny Milosavljevic <dannym@scratchpost.org>
Subject: [bug#55751] [PATCH v2 5/7] gnu: openjdk13: Make reproducible.
Date: Mon, 31 Jul 2023 20:09:17 +0200	[thread overview]
Message-ID: <20230731180919.28047-6-dannym@scratchpost.org> (raw)
In-Reply-To: <20230731180919.28047-1-dannym@scratchpost.org>

* gnu/packages/patches/openjdk-13-classlist-reproducibility.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add patch.
* gnu/packages/java.scm (openjdk13)[source]: Add patch.
[arguments]<#:phases>[remove-timestamping]: Modify phase.
---
 gnu/local.mk                                    |  1 +
 gnu/packages/java.scm                           | 17 ++++++++++++++---
 .../openjdk-13-classlist-reproducibility.patch  | 11 +++++++++++
 3 files changed, 26 insertions(+), 3 deletions(-)
 create mode 100644 gnu/packages/patches/openjdk-13-classlist-reproducibility.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 715e958248..7956b57669 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1676,6 +1676,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/openjdk-10-pointer-comparison.patch      \
   %D%/packages/patches/openjdk-10-setsignalhandler.patch        \
   %D%/packages/patches/openjdk-11-classlist-reproducibility.patch	\
+  %D%/packages/patches/openjdk-13-classlist-reproducibility.patch	\
   %D%/packages/patches/openjdk-15-xcursor-no-dynamic.patch	\
   %D%/packages/patches/openmpi-mtl-priorities.patch		\
   %D%/packages/patches/openmw-assume-nonconst-SIGSTKSZ.patch    \
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 66dcc5023e..d7cad12bf1 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -1527,9 +1527,20 @@ (define-public openjdk12
 (define-public openjdk13
   (make-openjdk openjdk12 "13.0.13"
                 "0pxf4dlig61k0pg7amg4mi919hzam7nzwckry01avgq1wj8ambji"
-  (source (origin
-            (inherit (package-source base))
-            (patches '())))))
+   (source (origin
+             (inherit (package-source base))
+             (patches (search-patches "openjdk-13-classlist-reproducibility.patch"
+                                      "openjdk-10-jtask-reproducibility.patch"))))
+   (arguments
+    (substitute-keyword-arguments (package-arguments openjdk12)
+      ((#:phases phases)
+       #~(modify-phases #$phases
+           (replace 'remove-timestamping
+             (lambda _
+               (substitute*
+                "src/hotspot/share/runtime/abstract_vm_version.cpp"
+                (("__DATE__") "")
+                (("__TIME__") ""))))))))))
 
 (define-public openjdk14
   (make-openjdk
diff --git a/gnu/packages/patches/openjdk-13-classlist-reproducibility.patch b/gnu/packages/patches/openjdk-13-classlist-reproducibility.patch
new file mode 100644
index 0000000000..326f6875ec
--- /dev/null
+++ b/gnu/packages/patches/openjdk-13-classlist-reproducibility.patch
@@ -0,0 +1,11 @@
+--- 6cllxkf0narh0b4wgx8npwjkznd7ifq0-openjdk-13.0.7-checkout/make/GenerateLinkOptData.gmk.orig	2022-04-04 17:20:33.012539984 +0200
++++ 6cllxkf0narh0b4wgx8npwjkznd7ifq0-openjdk-13.0.7-checkout/make/GenerateLinkOptData.gmk	2022-04-04 17:20:51.181032859 +0200
+@@ -78,7 +78,7 @@
+ 	        $(CAT) $(LINK_OPT_DIR)/stderr $(JLI_TRACE_FILE) ; \
+ 	        exit $$exitcode \
+ 	    )
+-	$(GREP) -v HelloClasslist $@.raw > $@
++	$(GREP) -v HelloClasslist $@.raw | sort > $@
+ 
+ # The jli trace is created by the same recipe as classlist. By declaring these
+ # dependencies, make will correctly rebuild both jli trace and classlist
-- 
2.39.2





  parent reply	other threads:[~2023-07-31 18:11 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-01 12:57 [bug#55751] [PATCH 0/8] Towards reproducible openjdk dannym
2022-06-01 13:00 ` [bug#55751] [PATCH 1/8] gnu: openjdk9: Make build reproducible dannym
2022-06-01 13:12   ` Maxime Devos
2022-06-01 13:14   ` Maxime Devos
2022-06-01 13:18   ` Maxime Devos
2022-09-21 20:18     ` Danny Milosavljevic
2022-06-01 13:00 ` [bug#55751] [PATCH 2/8] gnu: openjdk10: Make more reproducible dannym
2022-06-01 13:00 ` [bug#55751] [PATCH 3/8] gnu: openjdk11: " dannym
2022-06-01 13:00 ` [bug#55751] [PATCH 4/8] gnu: openjdk12: Make reproducible dannym
2022-06-01 13:00 ` [bug#55751] [PATCH 5/8] gnu: openjdk13: " dannym
2022-06-01 13:00 ` [bug#55751] [PATCH 6/8] gnu: openjdk14: " dannym
2022-06-01 13:00 ` [bug#55751] [PATCH 7/8] gnu: openjdk15: " dannym
2022-06-01 13:00 ` [bug#55751] [PATCH 8/8] gnu: openjdk16: " dannym
2022-06-01 13:20 ` [bug#55751] [PATCH 0/8] Towards reproducible openjdk Maxime Devos
2023-07-31 18:09 ` [bug#55751] [PATCH v2 0/7] " Danny Milosavljevic
2023-07-31 18:09   ` [bug#55751] [PATCH v2 1/7] gnu: openjdk9: Make build reproducible Danny Milosavljevic
2023-07-31 18:09   ` [bug#55751] [PATCH v2 2/7] gnu: openjdk10: Make more reproducible Danny Milosavljevic
2023-07-31 18:09   ` [bug#55751] [PATCH v2 3/7] gnu: openjdk11: " Danny Milosavljevic
2023-07-31 18:09   ` [bug#55751] [PATCH v2 4/7] gnu: openjdk12: Make reproducible Danny Milosavljevic
2023-07-31 18:09   ` Danny Milosavljevic [this message]
2023-07-31 18:09   ` [bug#55751] [PATCH v2 6/7] gnu: openjdk14: " Danny Milosavljevic
2023-07-31 18:09   ` [bug#55751] [PATCH v2 7/7] gnu: openjdk15: " Danny Milosavljevic
2024-01-21  5:22     ` Maxim Cournoyer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230731180919.28047-6-dannym@scratchpost.org \
    --to=dannym@scratchpost.org \
    --cc=55751@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).