GNU bug report logs - #42089
[PATCH 0/1] gnu: icedtea-7: Update to 2.6.22.

Previous Next

Package: guix-patches;

Reported by: Simon South <simon <at> simonsouth.net>

Date: Sat, 27 Jun 2020 17:37:02 UTC

Severity: normal

Tags: patch

To reply to this bug, email your comments to 42089 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#42089; Package guix-patches. (Sat, 27 Jun 2020 17:37:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Simon South <simon <at> simonsouth.net>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Sat, 27 Jun 2020 17:37:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Simon South <simon <at> simonsouth.net>
To: guix-patches <at> gnu.org
Cc: Simon South <simon <at> simonsouth.net>
Subject: [PATCH 0/1] gnu: icedtea-7: Update to 2.6.22.
Date: Sat, 27 Jun 2020 13:36:00 -0400
This patch updates IcedTea 7 to version 2.6.22, which brings in a number of
bugfixes. (I did this work originally hoping it would fix a build error on
AArch64; it didn't and the solution lay elsewhere, but I figured I might as
well finish and submit the change anyway.)

It assumes the patches for issue 41871
(https://issues.guix.gnu.org/issue/41871) have already been applied, but
doesn't depend on them.

I've successfully built IcedTea 7 and 8 with this patch applied on x86_64 and
(using additional patches) on AArch64.

I've updated the URIs for the project's home page and source code to match
what's current upstream. I've also taken the time to review the patching being
done and bring it in-line with the updated source code, including fixing one
case where "sh" was being replaced with "rm" (!).

Importantly, I've changed the "--enable-bootstrap" configure option to
"--disable-bootstrap". This seems correct to me (and I'm surprised it hasn't
been an issue before) but am pointing it out in case there's something else
here I'm missing.

Without "--disable-bootstrap" this version of IcedTea 7 fails to build, with
error messages like

    /tmp/guix-build-icedtea-2.6.22.drv-0/icedtea-2.6.22/generated.build/java/nio/ByteBuffer.java:1190: error: cannot find symbol
	    return Byte.compare(x, y);
		       ^
      symbol:   method compare(byte,byte)
      location: class Byte

That makes sense, since this method was added in Java 1.7 and therefore won't
be recognized by the Java 1.6 compiler (i.e. IcedTea 6) being used. And this
seems to be what the option controls: Whether or not to assume an existing
Java 1.7-compatible compiler is present.

In fact IcedTea 7's instructions in INSTALL say

    To build IcedTea with an older version of IcedTea, use:
    ./autogen.sh
    ./configure --disable-bootstrap 
    make

So this seems to be both necessary and correct; I'm just not sure why it
wasn't this way already.

--
Simon South
simon <at> simonsouth.net


Simon South (1):
  gnu: icedtea-7: Update to 2.6.22.

 gnu/packages/java.scm | 70 +++++++++++++++++++++++--------------------
 1 file changed, 38 insertions(+), 32 deletions(-)

-- 
2.26.2





Information forwarded to guix-patches <at> gnu.org:
bug#42089; Package guix-patches. (Sat, 27 Jun 2020 17:41:01 GMT) Full text and rfc822 format available.

Message #8 received at 42089 <at> debbugs.gnu.org (full text, mbox):

From: Simon South <simon <at> simonsouth.net>
To: 42089 <at> debbugs.gnu.org
Cc: Simon South <simon <at> simonsouth.net>
Subject: [PATCH 1/1] gnu: icedtea-7: Update to 2.6.22.
Date: Sat, 27 Jun 2020 13:39:57 -0400
* gnu/packages/java.scm (icedtea-7): Update to 2.6.22.
[source, native-inputs]: Update URIs.
[arguments]<#:configure-flags>: Disable bootstrapping to allow building with
previous version of IcedTea.
[arguments]<#:phases>: Update "patch-paths", "fix-hotspot-tests" and
"fix-jdk-tests" phases to match source code.
[home-page]: Update.
---
 gnu/packages/java.scm | 70 +++++++++++++++++++++++--------------------
 1 file changed, 38 insertions(+), 32 deletions(-)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 938b191427..9a2bba4d97 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -1163,12 +1163,12 @@ bootstrapping purposes.")
     (license license:gpl2+)))
 
 (define-public icedtea-7
-  (let* ((version "2.6.13")
+  (let* ((version "2.6.22")
          (drop (lambda (name hash)
                  (origin
                    (method url-fetch)
                    (uri (string-append
-                         "http://icedtea.classpath.org/download/drops"
+                         "http://icedtea.wildebeest.org/download/drops"
                          "/icedtea7/" version "/" name ".tar.bz2"))
                    (sha256 (base32 hash))))))
     (package
@@ -1181,7 +1181,7 @@ bootstrapping purposes.")
                       version ".tar.xz"))
                 (sha256
                  (base32
-                  "1w331rdqx1dcx2xb0fmjmrkdc71xqn20fxsgw8by4xhiblh88khh"))
+                  "1h1kva8n7iaby869p5ni8flsgn8zgsacsz5nwz17wbz7k0w9zyil"))
                 (modules '((guix build utils)))
                 (snippet
                  '(begin
@@ -1223,7 +1223,7 @@ bootstrapping purposes.")
          ;; TODO: package pcsc and sctp, and add to inputs
          `("--disable-system-pcsc"
            "--disable-system-sctp"
-           "--enable-bootstrap"
+           "--disable-bootstrap"
            "--enable-nss"
            "--without-rhino"
            ,(string-append "--with-parallel-jobs="
@@ -1308,7 +1308,9 @@ bootstrapping purposes.")
                     (string-append "DEVTOOLS_PATH = " corebin))
                    (("COMPILER_PATH *= */usr/bin/")
                     (string-append "COMPILER_PATH = "
-                                   (assoc-ref %build-inputs "gcc") "/bin/"))
+                                   (assoc-ref %build-inputs "gcc") "/bin/")))
+
+                 (substitute* "openjdk.src/jdk/make/common/Defs-linux.gmk"
                    (("DEF_OBJCOPY *=.*objcopy")
                     (string-append "DEF_OBJCOPY = " (which "objcopy"))))
 
@@ -1359,16 +1361,7 @@ bootstrapping purposes.")
                    (("ZIPEXE *=.*zip")
                     (string-append "ZIPEXE = " (which "zip")))
                    (("SED *=.*sed")
-                    (string-append "SED = " (which "sed"))))
-
-                 ;; Some of these timestamps cause problems as they are more than
-                 ;; 10 years ago, failing the build process.
-                 (substitute*
-                     "openjdk.src/jdk/src/share/classes/java/util/CurrencyData.properties"
-                   (("AZ=AZM;2005-12-31-20-00-00;AZN") "AZ=AZN")
-                   (("MZ=MZM;2006-06-30-22-00-00;MZN") "MZ=MZN")
-                   (("RO=ROL;2005-06-30-21-00-00;RON") "RO=RON")
-                   (("TR=TRL;2004-12-31-22-00-00;TRY") "TR=TRY")))
+                    (string-append "SED = " (which "sed")))))
                #t))
            (add-before 'configure 'set-additional-paths
              (lambda* (#:key inputs #:allow-other-keys)
@@ -1425,8 +1418,7 @@ bootstrapping purposes.")
                     (string-append "PATH=" (getenv "PATH")))
                    (("make=/usr/bin/make")
                     (string-append "make=" (which "make"))))
-                 (substitute* '("runtime/6626217/Test6626217.sh"
-                                "runtime/7110720/Test7110720.sh")
+                 (substitute* "runtime/7110720/Test7110720.sh"
                    (("/bin/rm") (which "rm"))
                    (("/bin/cp") (which "cp"))
                    (("/bin/mv") (which "mv"))))
@@ -1434,6 +1426,11 @@ bootstrapping purposes.")
            (add-before 'check 'fix-jdk-tests
              (lambda _
                (with-directory-excursion "openjdk.src/jdk/test/"
+                 (substitute* "jprt.config"
+                   (("PATH=\"\\$\\{path4sdk\\}\"")
+                    (string-append "PATH=" (getenv "PATH")))
+                   (("make=/usr/bin/make")
+                    (string-append "make=" (which "make"))))
                  (substitute* "com/sun/jdi/JdbReadTwiceTest.sh"
                    (("/bin/pwd") (which "pwd")))
                  (substitute* "com/sun/jdi/ShellScaffold.sh"
@@ -1445,18 +1442,29 @@ bootstrapping purposes.")
                    (("/bin/rm") (which "rm")))
                  (substitute* "tools/launcher/MultipleJRE.sh"
                    (("echo \"#!/bin/sh\"")
-                    (string-append "echo \"#!" (which "rm") "\""))
+                    (string-append "echo \"#!" (which "sh") "\""))
                    (("/usr/bin/zip") (which "zip")))
                  (substitute* "com/sun/jdi/OnThrowTest.java"
                    (("#!/bin/sh") (string-append "#!" (which "sh"))))
+                 (substitute* "java/awt/JAWT/Makefile.unix"
+                   (("ENV *=.*env") (which "env")))
                  (substitute* "java/lang/management/OperatingSystemMXBean/GetSystemLoadAverage.java"
                    (("/usr/bin/uptime") (which "uptime")))
                  (substitute* "java/lang/ProcessBuilder/Basic.java"
                    (("/usr/bin/env") (which "env"))
                    (("/bin/false") (which "false"))
                    (("/bin/true") (which "true"))
+                   (("/bin/echo") (which "echo"))
                    (("/bin/cp") (which "cp"))
-                   (("/bin/sh") (which "sh")))
+                   (("/bin/sh") (which "sh"))
+                   (("/bin/sleep") (which "sleep"))
+                   (("/bin/bash") (which "bash"))
+                   (("/bin/ps") (which "ps"))
+                   (("/usr/bin/perl") (which "perl"))
+                   (("/usr/bin/xargs") (which "xargs")))
+                 (substitute* '("java/lang/ProcessBuilder/BigFork.java"
+                                "java/lang/ProcessBuilder/CloseRace.java")
+                   (("/bin/true") (which "true")))
                  (substitute* "java/lang/ProcessBuilder/FeelingLucky.java"
                    (("/bin/sh") (which "sh")))
                  (substitute* "java/lang/ProcessBuilder/Zombies.java"
@@ -1483,10 +1491,8 @@ bootstrapping purposes.")
                    (("/bin/sh") (which "sh")))
                  (substitute* "java/lang/Runtime/exec/StreamsSurviveDestroy.java"
                    (("/bin/cat") (which "cat")))
-                 (substitute* "java/rmi/activation/CommandEnvironment/SetChildEnv.java"
-                   (("/bin/chmod") (which "chmod")))
-                 (substitute* "java/util/zip/ZipFile/Assortment.java"
-                   (("/bin/sh") (which "sh"))))
+                 (substitute* "java/util/Locale/data/deflocale.sh"
+                   (("/usr/bin/locale") (which "locale"))))
                #t))
            (replace 'check
              (lambda _
@@ -1630,31 +1636,31 @@ bootstrapping purposes.")
       (native-inputs
        `(("openjdk-src"
           ,(drop "openjdk"
-                 "0l34ikyf62hbzlf9032alzkkqvf7bpmckz4gvirvph755w7gka8l"))
+                 "060qk9kdj2pdl87kp71jng9lkqa98snlc8s0fkrymg714a6kpzk5"))
          ("corba-drop"
           ,(drop "corba"
-                 "050gv2jbg1pi6qkn8w18bwpbklfa5b0kymjvan9pncddbj8m84fz"))
+                 "1nw5j576bwhy1s9qli51fv802w86ysm2ldggfyf1kr710dx94ym0"))
          ("jaxp-drop"
           ,(drop "jaxp"
-                 "1k6yldwnxfzdg5926r1nlfv8d1r1j7rlp2nkz6gqh05vgyamnfhl"))
+                 "0yjmd2c941qsjj2p5bnn9nlj5rf3a6qjv5pk6whlhpiq4jkyg3lq"))
          ("jaxws-drop"
           ,(drop "jaxws"
-                 "110j7jlz47x2gg6f7653x12mssan5kvj9l9h1m1c8c92drfxbqyk"))
+                 "1nipfrahs7h8xb8k593yjq5vh712q6jyzc0ab032ay6gdfw75blc"))
          ("jdk-drop"
           ,(drop "jdk"
-                 "0d1mca38ksxvdskp9im3pp7fdijhj1n3lwq9w13r9s4v3qyskgdd"))
+                 "04niz08mfpgcxx4wyqi4b9lyiqnaid12zimjiw078ijf76ka069p"))
          ("langtools-drop"
           ,(drop "langtools"
-                 "0nq5236fzxn3p6x8cgncl56mzcmsj07q9gymysnws4c8byc6n0qj"))
+                 "08bhcp1wz0ybjdldfzv0mqvng1yb098kf74lvzv347j5fr57a9cn"))
          ("hotspot-drop"
           ,(origin
              (method url-fetch)
              (uri (string-append
-                   "http://icedtea.classpath.org/downloads/drops"
+                   "http://icedtea.wildebeest.org/download/drops"
                    "/icedtea7/" version "/hotspot.tar.bz2"))
              (sha256
               (base32
-               "17bdv39n4lh8l5737c96f3xgamx4y305m067p01cywgp7zaddqws"))
+               "0hya1lsw893rwy93gbm1gbqyr7v82bmp722m4x7k303pfr4wbm6s"))
              (patches (search-patches
                        "icedtea-7-hotspot-aarch64-use-c++98.patch"))))
          ("ant" ,ant-bootstrap)
@@ -1696,7 +1702,7 @@ bootstrapping purposes.")
          ("lcms" ,lcms)
          ("zlib" ,zlib)
          ("gtk" ,gtk+-2)))
-      (home-page "http://icedtea.classpath.org")
+      (home-page "https://icedtea.classpath.org/wiki/Main_Page")
       (synopsis "Java development kit")
       (description
        "This package provides the Java development kit OpenJDK built with the
-- 
2.26.2





This bug report was last modified 3 years and 275 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.