From e3bc8635e8730e33c2e4f9658dacb6f2f669d8bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A1bor=20Boskovits?= Date: Sun, 14 Oct 2018 21:06:55 +0200 Subject: [PATCH] gnu: icedtea-6: Make javadoc reproducible. * gnu/packages/patches/icedtea-6-javadoc-reproducibility.patch: New file. * gnu/packages/java.scm[icedtea-6](native-inputs): Add patch to langtools-src. (phases)[unpack]: Adjust unpacking of patched source. * gnu/local.mk[dist_patch_DATA]: Register it. --- gnu/local.mk | 1 + gnu/packages/java.scm | 9 +++++-- .../icedtea-6-javadoc-reproducibility.patch | 25 +++++++++++++++++++ 3 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/icedtea-6-javadoc-reproducibility.patch diff --git a/gnu/local.mk b/gnu/local.mk index 9284e487fe..9a1b98eb16 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1169,6 +1169,7 @@ dist_patch_DATA = \ %D%/packages/patches/icecat-use-system-graphite2+harfbuzz.patch \ %D%/packages/patches/icecat-use-system-media-libs.patch \ %D%/packages/patches/icedtea-6-extend-hotspot-aarch64-support.patch \ + %D%/packages/patches/icedtea-6-javadoc-reproducibility.patch \ %D%/packages/patches/icedtea-7-hotspot-aarch64-use-c++98.patch \ %D%/packages/patches/icu4c-CVE-2020-10531.patch \ %D%/packages/patches/id3lib-CVE-2007-4460.patch \ diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index e298fd9537..deaa9e1fcd 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -892,7 +892,10 @@ machine."))) (string-append part "-src")) part)) '("jdk" "hotspot" "corba" - "langtools" "jaxp" "jaxws"))) + "jaxp" "jaxws"))) + (with-directory-excursion "openjdk" + (invoke "tar" "xvf" (assoc-ref inputs "langtools-src")) + (rename-file "hg-checkout" "langtools")) (substitute* "patches/freetypeversion.patch" (("REQUIRED_FREETYPE_VERSION = 2.2.1") "REQUIRED_FREETYPE_VERSION = 2.10.1")) @@ -1136,7 +1139,9 @@ machine."))) (changeset "jdk6-b41"))) (sha256 (base32 - "1x52wd67fynbbd9ild6fb4wvba3f5hhwk03qdjfazd0a1qr37z3d")))) + "1x52wd67fynbbd9ild6fb4wvba3f5hhwk03qdjfazd0a1qr37z3d")) + (patches + (search-patches "icedtea-6-javadoc-reproducibility.patch")))) ("jaxp-src" ,(origin (method hg-fetch) diff --git a/gnu/packages/patches/icedtea-6-javadoc-reproducibility.patch b/gnu/packages/patches/icedtea-6-javadoc-reproducibility.patch new file mode 100644 index 0000000000..dd472a9c66 --- /dev/null +++ b/gnu/packages/patches/icedtea-6-javadoc-reproducibility.patch @@ -0,0 +1,25 @@ +# HG changeset patch +# User Gábor Boskovits +# Date 1539456874 -7200 +# Sat Oct 13 20:54:34 2018 +0200 +# Node ID 6e5f716a659247888c104f66c58bf40fb959c8a4 +# Parent 06656286f572cbf716397b9d983f8dee7d94f913 +Make javadoc respect SOURCE_DATE_EPOCH. + +diff -r 06656286f572 src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlDocWriter.java +--- a/src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlDocWriter.java Mon Aug 22 10:53:55 2016 -0700 ++++ b/src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlDocWriter.java Wed Dec 09 21:40:00 2020 -0500 +@@ -396,6 +396,12 @@ + */ + public String today() { + Calendar calendar = new GregorianCalendar(TimeZone.getDefault()); +- return calendar.getTime().toString(); ++ Date date=calendar.getTime(); ++ String epoch=System.getenv("SOURCE_DATE_EPOCH"); ++ if(epoch != null) { ++ long unixtime=Long.parseLong(epoch); ++ date=new Date(unixtime*1000L); ++ } ++ return date.toString(); + } + } -- 2.29.2