← Back to team overview

openjdk team mailing list archive

Bug#971247: openjdk-13: diff for NMU version 13.0.4+8-1.1

 

Package: openjdk-13
Version: 13.0.4+8-1
Severity: normal
Tags: patch  pending

Dear maintainer,

I've prepared an NMU for openjdk-13 (versioned as 13.0.4+8-1.1) and
uploaded it to DELAYED/15. Please feel free to tell me if I should
delay it longer or remove it from the queue.

Please see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=944738 for
context.

Thank you,
tony
diff -Nru openjdk-13-13.0.4+8/debian/changelog openjdk-13-13.0.4+8/debian/changelog
--- openjdk-13-13.0.4+8/debian/changelog	2020-07-17 11:24:46.000000000 -0700
+++ openjdk-13-13.0.4+8/debian/changelog	2020-09-27 13:38:20.000000000 -0700
@@ -1,3 +1,13 @@
+openjdk-13 (13.0.4+8-1.1) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Apply patch to strip nondeterminism before computing jmod hash.
+    Thank you to Julian Gilbey for the patch.
+    See Debian bugs #944738 and #968991.
+    Add Build-Depends on strip-nondeterminism.
+
+ -- tony mancill <tmancill@xxxxxxxxxx>  Sun, 27 Sep 2020 13:38:20 -0700
+
 openjdk-13 (13.0.4+8-1) unstable; urgency=medium
 
   * OpenJDK 13.0.4 release, build 8.
diff -Nru openjdk-13-13.0.4+8/debian/control openjdk-13-13.0.4+8/debian/control
--- openjdk-13-13.0.4+8/debian/control	2020-07-17 09:25:05.000000000 -0700
+++ openjdk-13-13.0.4+8/debian/control	2020-09-27 13:37:50.000000000 -0700
@@ -15,6 +15,7 @@
   zlib1g-dev:native, zlib1g-dev, libattr1-dev, libpng-dev, libjpeg-dev, libgif-dev, 
   libnss3-dev (>= 2:3.17.1),
   openjdk-13-jdk-headless <cross>,
+  strip-nondeterminism,
 Build-Depends-Indep: graphviz, pandoc,
 Standards-Version: 4.4.0
 Homepage: http://openjdk.java.net/
diff -Nru openjdk-13-13.0.4+8/debian/patches/reproducible-build-jmod.diff openjdk-13-13.0.4+8/debian/patches/reproducible-build-jmod.diff
--- openjdk-13-13.0.4+8/debian/patches/reproducible-build-jmod.diff	1969-12-31 16:00:00.000000000 -0800
+++ openjdk-13-13.0.4+8/debian/patches/reproducible-build-jmod.diff	2020-09-27 13:36:33.000000000 -0700
@@ -0,0 +1,33 @@
+Description: jlink: Hash of module differs to expected hash recorded in java.base
+ The cause is the use of dh_strip_nondeterminism late in the build
+ process.  This reorganises the jmod files, which in turn changes their
+ SHA256 checksums.  This would not be a problem, except that the
+ checksums are saved in java.base.jmod *before* the use of
+ dh_strip_nondeterminism.  Performing this stripping immediately after
+ each jmod file is created results in the checksums being consistent
+ throughout.
+Author: Julian Gilbey <jdg@xxxxxxxxxx>
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=944738
+Forwarded: not-needed
+
+--- a/make/CreateJmods.gmk
++++ b/make/CreateJmods.gmk
+@@ -216,6 +216,9 @@
+ 
+ # Create jmods in the support dir and then move them into place to keep the
+ # module path in $(IMAGES_OUTPUTDIR)/jmods valid at all times.
++# strip-nondeterminism requires the same timestamp as
++# dh_strip_nondeterminism uses, so we determine this first.
++DSN_TIMESTAMP := $(shell perl -MDebian::Debhelper::Dh_Lib -e 'print get_source_date_epoch()')
+ $(eval $(call SetupExecute, create_$(JMOD_FILE), \
+     WARN := Creating $(INTERIM_MSG)$(JMOD_FILE), \
+     DEPS := $(DEPS), \
+@@ -226,7 +229,7 @@
+         --target-platform '$(OPENJDK_MODULE_TARGET_PLATFORM)' \
+         --module-path $(JMODS_DIR) $(JMOD_FLAGS) \
+         $(JMODS_SUPPORT_DIR)/$(JMOD_FILE), \
+-    POST_COMMAND := $(MV) $(JMODS_SUPPORT_DIR)/$(JMOD_FILE) $(JMODS_DIR)/$(JMOD_FILE), \
++    POST_COMMAND := strip-nondeterminism --timestamp $(DSN_TIMESTAMP) $(JMODS_SUPPORT_DIR)/$(JMOD_FILE) && $(MV) $(JMODS_SUPPORT_DIR)/$(JMOD_FILE) $(JMODS_DIR)/$(JMOD_FILE), \
+ ))
+ 
+ TARGETS += $(create_$(JMOD_FILE))
diff -Nru openjdk-13-13.0.4+8/debian/patches/series openjdk-13-13.0.4+8/debian/patches/series
--- openjdk-13-13.0.4+8/debian/patches/series	2020-04-14 23:41:08.000000000 -0700
+++ openjdk-13-13.0.4+8/debian/patches/series	2020-09-27 13:36:27.000000000 -0700
@@ -43,3 +43,4 @@
 reproducible-copyright-headers.diff
 reproducible-build-user.diff
 JDK-8230708.diff
+reproducible-build-jmod.diff

Attachment: signature.asc
Description: PGP signature