diff mbox series

[bug#33041] gnu: icedtea-6: Make javadoc reproducible.

Message ID 87o8j1xs96.fsf@posteo.net
State New
Headers show
Series [bug#33041] gnu: icedtea-6: Make javadoc reproducible. | expand

Checks

Context Check Description
cbaines/submitting builds success
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue

Commit Message

Kei Kebreau Dec. 10, 2020, 9:31 p.m. UTC
Hi all,

I came across this bug and had some time to attempt to make the
suggested changes.  Please find the updated patch attached and let me
know if it still works as intended.

Best,
Kei
Gábor Boskovits <boskovits@gmail.com> writes:

> Ok, I will look into it.
>
> Ricardo Wurmus <rekado@elephly.net> ezt írta (időpont: 2020. máj. 14., Csü 19:59):
>
>  Hi Gábor,
>
>  looks like we dropped this issue.  Would you like to rebase it, include
>  Danny’s suggestions, and push it?  I’d very much like to close bug #30927.
>
>  -- 
>  Ricardo

Comments

Maxim Cournoyer July 14, 2021, 1:34 p.m. UTC | #1
Hi,

Kei Kebreau <kkebreau@posteo.net> writes:

> Hi all,
>
> I came across this bug and had some time to attempt to make the
> suggested changes.  Please find the updated patch attached and let me
> know if it still works as intended.

[...]

> 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 <boskovits@gmail.com>
> +# 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();
> +     }
> + }

I tried this patch but it didn't work for me:

--8<---------------cut here---------------start------------->8---
diff -r /gnu/store/394r3dq5q2kmxddwcbh4wwnxmlp0b2rs-icedtea-1.13.13-doc/share/doc/icedtea/api/org/omg/PortableServer/POAPackage/WrongPolicyHelper.html /gnu/store/394r3dq5q2kmxddwcbh4wwnxmlp0b2rs-icedtea-1.13.13-doc-check/share/doc/icedtea/api/org/omg/PortableServer/POAPackage/WrongPolicyHelper.html
116c116
<  Wednesday, July 14, 2021 12:30:23 AM GMT</div>
---
>  Wednesday, July 14, 2021 12:14:11 AM GMT</div>
diff -r /gnu/store/394r3dq5q2kmxddwcbh4wwnxmlp0b2rs-icedtea-1.13.13-doc/share/doc/icedtea/api/org/omg/PortableServer/POAPackage/WrongPolicy.html /gnu/store/394r3dq5q2kmxddwcbh4wwnxmlp0b2rs-icedtea-1.13.13-doc-check/share/doc/icedtea/api/org/omg/PortableServer/POAPackage/WrongPolicy.html
129c129
<  Wednesday, July 14, 2021 12:30:23 AM GMT</div>
---
>  Wednesday, July 14, 2021 12:14:11 AM GMT</div>
diff -r /gnu/store/394r3dq5q2kmxddwcbh4wwnxmlp0b2rs-icedtea-1.13.13-doc/share/doc/icedtea/api/org/omg/PortableServer/REQUEST_PROCESSING_POLICY_ID.html /gnu/store/394r3dq5q2kmxddwcbh4wwnxmlp0b2rs-icedtea-1.13.13-doc-check/share/doc/icedtea/api/org/omg/PortableServer/REQUEST_PROCESSING_POLICY_ID.html
102c102
<  Wednesday, July 14, 2021 12:30:23 AM GMT</div>
---
>  Wednesday, July 14, 2021 12:14:11 AM GMT</div>
diff -r /gnu/store/394r3dq5q2kmxddwcbh4wwnxmlp0b2rs-icedtea-1.13.13-doc/share/doc/icedtea/api/org/omg/PortableServer/SERVANT_RETENTION_POLICY_ID.html /gnu/store/394r3dq5q2kmxddwcbh4wwnxmlp0b2rs-icedtea-1.13.13-doc-check/share/doc/icedtea/api/org/omg/PortableServer/SERVANT_RETENTION_POLICY_ID.html
102c102
<  Wednesday, July 14, 2021 12:30:23 AM GMT</div>
---
>  Wednesday, July 14, 2021 12:14:11 AM GMT</div>
diff -r /gnu/store/394r3dq5q2kmxddwcbh4wwnxmlp0b2rs-icedtea-1.13.13-doc/share/doc/icedtea/api/org/omg/PortableServer/THREAD_POLICY_ID.html /gnu/store/394r3dq5q2kmxddwcbh4wwnxmlp0b2rs-icedtea-1.13.13-doc-check/share/doc/icedtea/api/org/omg/PortableServer/THREAD_POLICY_ID.html
102c102
<  Wednesday, July 14, 2021 12:30:23 AM GMT</div>
---
>  Wednesday, July 14, 2021 12:14:11 AM GMT</div>
--8<---------------cut here---------------end--------------->8---

Could you retest it to validate it's working as expected?

Thank you,

Maxim
diff mbox series

Patch

From e3bc8635e8730e33c2e4f9658dacb6f2f669d8bb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?G=C3=A1bor=20Boskovits?= <boskovits@gmail.com>
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 <boskovits@gmail.com>
+# 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