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
guix-patches <at> gnu.org
:bug#42089
; Package guix-patches
.
(Sat, 27 Jun 2020 17:37:02 GMT) Full text and rfc822 format available.Simon South <simon <at> simonsouth.net>
: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
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
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.