openjdk team mailing list archive
-
openjdk team
-
Mailing list archive
-
Message #14052
Bug#968991: openjdk-14: diff for NMU version 14.0.2+12-1.1
Control: tags 968991 + pending
Hi Matthias,
I've prepared an NMU for openjdk-14 (versioned as 14.0.2+12-1.1) and
uploaded it to DELAYED/15. Please feel free to tell me if I should
delay it longer, or if you would prefer that I remove the upload.
Also see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=944738 for
discussion regarding the patch.
Cheers,
tony
diff -Nru openjdk-14-14.0.2+12/debian/changelog openjdk-14-14.0.2+12/debian/changelog
--- openjdk-14-14.0.2+12/debian/changelog 2020-07-17 09:20:10.000000000 -0700
+++ openjdk-14-14.0.2+12/debian/changelog 2020-09-23 11:13:13.000000000 -0700
@@ -1,3 +1,12 @@
+openjdk-14 (14.0.2+12-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. (Closes: #968991)
+ Add Build-Depends on strip-nondeterminism.
+
+ -- tony mancill <tmancill@xxxxxxxxxx> Wed, 23 Sep 2020 11:13:13 -0700
+
openjdk-14 (14.0.2+12-1) unstable; urgency=medium
* OpenJDK 14.0.2 release, build 12 (release build).
diff -Nru openjdk-14-14.0.2+12/debian/control openjdk-14-14.0.2+12/debian/control
--- openjdk-14-14.0.2+12/debian/control 2020-07-17 07:51:00.000000000 -0700
+++ openjdk-14-14.0.2+12/debian/control 2020-09-19 12:57:12.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-14-jdk-headless <cross>,
+ strip-nondeterminism,
Build-Depends-Indep: graphviz, pandoc,
Standards-Version: 4.5.0
Homepage: http://openjdk.java.net/
diff -Nru openjdk-14-14.0.2+12/debian/patches/reproducible-build-jmod.diff openjdk-14-14.0.2+12/debian/patches/reproducible-build-jmod.diff
--- openjdk-14-14.0.2+12/debian/patches/reproducible-build-jmod.diff 1969-12-31 16:00:00.000000000 -0800
+++ openjdk-14-14.0.2+12/debian/patches/reproducible-build-jmod.diff 2020-09-23 11:11:16.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
+@@ -218,6 +218,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), \
+@@ -228,7 +231,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-14-14.0.2+12/debian/patches/series openjdk-14-14.0.2+12/debian/patches/series
--- openjdk-14-14.0.2+12/debian/patches/series 2020-04-15 00:11:57.000000000 -0700
+++ openjdk-14-14.0.2+12/debian/patches/series 2020-09-23 11:11:33.000000000 -0700
@@ -42,3 +42,4 @@
reproducible-module-info.diff
reproducible-copyright-headers.diff
reproducible-build-user.diff
+reproducible-build-jmod.diff
Attachment:
signature.asc
Description: PGP signature
References