unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#64670] [PATCH 0/1] Fixing failing builds of openjdk on aarch64
@ 2023-07-16 20:35 Tim Johann
  2023-07-16 20:35 ` [bug#64671] [PATCH 1/1] gnu: openjdk: patches for aarch64 build (openjdk9|openjdk10) Tim Johann
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: Tim Johann @ 2023-07-16 20:35 UTC (permalink / raw)
  To: 64670; +Cc: Tim Johann

When I wanted to install Clojure on my Raspberry Pis, I was stumped to see
that there was no installable version of openjdk available on aarch64.  Seeing
the build fail, I saw that this was a very simple issue fixed in openjdk11
(cf.: [1] and [2]).  So, I created a patch and applied it to openjdk9 and
openjdk10, after which I was able to build openjdk@9.181, openjdk@10.46, and
openjdk@11.0.17 successfully on one of my RPis.  I hope that subsequently all
versions of openjdk can be built on aarch64.

[1]  https://bugs.openjdk.org/browse/JDK-8237885
[2] https://hg.openjdk.org/jdk-updates/jdk11u/rev/15cc1c8a6371).

Tim Johann (1):
  gnu: openjdk: patches for aarch64 build (openjdk9|openjdk10).

 gnu/packages/java.scm                             |  6 ++++--
 .../openjdk-10-duplicate-using-declaration.patch  | 15 +++++++++++++++
 .../openjdk-9-duplicate-using-declaration.patch   | 15 +++++++++++++++
 3 files changed, 34 insertions(+), 2 deletions(-)
 create mode 100644 gnu/packages/patches/openjdk-10-duplicate-using-declaration.patch
 create mode 100644 gnu/packages/patches/openjdk-9-duplicate-using-declaration.patch


base-commit: 796c823a0d1d0aec9f4af908eca462e58e5675b5
-- 
2.41.0





^ permalink raw reply	[flat|nested] 8+ messages in thread

* [bug#64671] [PATCH 1/1] gnu: openjdk: patches for aarch64 build (openjdk9|openjdk10).
  2023-07-16 20:35 [bug#64670] [PATCH 0/1] Fixing failing builds of openjdk on aarch64 Tim Johann
@ 2023-07-16 20:35 ` Tim Johann
  2023-07-16 21:19   ` [bug#64671] ignore Tim Johann
  2023-07-16 21:16 ` [bug#64670] [PATCH 1/1] gnu: openjdk: patches for aarch64 build (openjdk9|openjdk10) Tim Johann
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 8+ messages in thread
From: Tim Johann @ 2023-07-16 20:35 UTC (permalink / raw)
  To: 64671; +Cc: Tim Johann

OpenJDK source code prior to version 11 have a duplicate 'using' statement
in hotspot's interp_masm_aarch64.hpp, which let's compilation of
openjdk@9.181 fail on aarch64, and in consequence all openjdk versions,
since each version larger than major 9 depends on the next lower major
version of openjdk.

This patch will make openjdk available on aarch64, again.

* gnu/packages/java.scm (openjdk9|openjdk10)[source](patches): adding patches
to remove duplicate 'using' statements causing build to fail on aarch64.
* gnu/packages/patches/openjdk-9-duplicate-using-declaration.patch,
gnu/packages/patches/openjdk-10-duplicate-using-declaration.patch: New files
---
 gnu/packages/java.scm                             |  6 ++++--
 .../openjdk-10-duplicate-using-declaration.patch  | 15 +++++++++++++++
 .../openjdk-9-duplicate-using-declaration.patch   | 15 +++++++++++++++
 3 files changed, 34 insertions(+), 2 deletions(-)
 create mode 100644 gnu/packages/patches/openjdk-10-duplicate-using-declaration.patch
 create mode 100644 gnu/packages/patches/openjdk-9-duplicate-using-declaration.patch

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 5a6288581e..69c4e604a8 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -873,7 +873,8 @@ (define-public openjdk9
                (base32
                 "1v92nzdqx07c35x945awzir4yk0fk22vky6fpp8mq9js930sxsz0"))
               (patches (search-patches "openjdk-9-pointer-comparison.patch"
-                                       "openjdk-9-setsignalhandler.patch"))))
+                                       "openjdk-9-setsignalhandler.patch"
+                                       "openjdk-9-duplicate-using-declaration.patch"))))
     (build-system gnu-build-system)
     (outputs '("out" "jdk" "doc"))
     (arguments
@@ -1060,7 +1061,8 @@ (define-public openjdk10
               (patches (search-patches
                         "openjdk-10-idlj-reproducibility.patch"
                         "openjdk-10-pointer-comparison.patch"
-                        "openjdk-10-setsignalhandler.patch"))))
+                        "openjdk-10-setsignalhandler.patch"
+                        "openjdk-10-duplicate-using-declaration.patch"))))
     (arguments
      (substitute-keyword-arguments (package-arguments openjdk9)
        ((#:phases phases)
diff --git a/gnu/packages/patches/openjdk-10-duplicate-using-declaration.patch b/gnu/packages/patches/openjdk-10-duplicate-using-declaration.patch
new file mode 100644
index 0000000000..48cded60e3
--- /dev/null
+++ b/gnu/packages/patches/openjdk-10-duplicate-using-declaration.patch
@@ -0,0 +1,15 @@
+Patch from changeset of openjdk11:
+https://hg.openjdk.org/jdk-updates/jdk11u/rev/15cc1c8a6371
+
+diff -u -r openjdk-10.alt/src/hotspot/cpu/aarch64/interp_masm_aarch64.hpp openjdk-10/src/hotspot/cpu/aarch64/interp_masm_aarch64.hpp
+--- openjdk-10.alt/src/hotspot/cpu/aarch64/interp_masm_aarch64.hpp	2023-07-16 14:33:27.570165136 +0200
++++ openjdk-10/src/hotspot/cpu/aarch64/interp_masm_aarch64.hpp	2023-07-16 14:34:55.325163199 +0200
+@@ -39,8 +39,6 @@
+  protected:
+ 
+  protected:
+-  using MacroAssembler::call_VM_leaf_base;
+-
+   // Interpreter specific version of call_VM_base
+   using MacroAssembler::call_VM_leaf_base;
+ 
diff --git a/gnu/packages/patches/openjdk-9-duplicate-using-declaration.patch b/gnu/packages/patches/openjdk-9-duplicate-using-declaration.patch
new file mode 100644
index 0000000000..3fa933ad36
--- /dev/null
+++ b/gnu/packages/patches/openjdk-9-duplicate-using-declaration.patch
@@ -0,0 +1,15 @@
+Patch from changeset of openjdk11:
+https://hg.openjdk.org/jdk-updates/jdk11u/rev/15cc1c8a6371
+
+diff -u -r openjdk-9.alt/hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp openjdk-9/hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp
+--- openjdk-9.alt/hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp	2023-07-15 19:03:09.063790084 +0200
++++ openjdk-9/hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp	2023-07-15 19:01:12.289447197 +0200
+@@ -39,8 +39,6 @@
+  protected:
+ 
+  protected:
+-  using MacroAssembler::call_VM_leaf_base;
+-
+   // Interpreter specific version of call_VM_base
+   using MacroAssembler::call_VM_leaf_base;
+ 
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [bug#64670] [PATCH 1/1] gnu: openjdk: patches for aarch64 build (openjdk9|openjdk10).
  2023-07-16 20:35 [bug#64670] [PATCH 0/1] Fixing failing builds of openjdk on aarch64 Tim Johann
  2023-07-16 20:35 ` [bug#64671] [PATCH 1/1] gnu: openjdk: patches for aarch64 build (openjdk9|openjdk10) Tim Johann
@ 2023-07-16 21:16 ` Tim Johann
  2023-07-17 15:41 ` [bug#64670] This seems to be a duplicate issue to the on by Christopher Baines Tim Johann
  2023-08-11 10:56 ` [bug#64670] referenced patch does not apply to openjdk10 Tim Johann
  3 siblings, 0 replies; 8+ messages in thread
From: Tim Johann @ 2023-07-16 21:16 UTC (permalink / raw)
  To: 64670; +Cc: Tim Johann

OpenJDK source code prior to version 11 have a duplicate 'using' statement
in hotspot's interp_masm_aarch64.hpp, which let's compilation of
openjdk@9.181 fail on aarch64, and in consequence all openjdk versions,
since each version larger than major 9 depends on the next lower major
version of openjdk.

This patch will make openjdk available on aarch64, again.

* gnu/packages/java.scm (openjdk9|openjdk10)[source](patches): adding patches
to remove duplicate 'using' statements causing build to fail on aarch64.
* gnu/packages/patches/openjdk-9-duplicate-using-declaration.patch,
gnu/packages/patches/openjdk-10-duplicate-using-declaration.patch: New files
---
 gnu/packages/java.scm                             |  6 ++++--
 .../openjdk-10-duplicate-using-declaration.patch  | 15 +++++++++++++++
 .../openjdk-9-duplicate-using-declaration.patch   | 15 +++++++++++++++
 3 files changed, 34 insertions(+), 2 deletions(-)
 create mode 100644 gnu/packages/patches/openjdk-10-duplicate-using-declaration.patch
 create mode 100644 gnu/packages/patches/openjdk-9-duplicate-using-declaration.patch

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 5a6288581e..69c4e604a8 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -873,7 +873,8 @@ (define-public openjdk9
                (base32
                 "1v92nzdqx07c35x945awzir4yk0fk22vky6fpp8mq9js930sxsz0"))
               (patches (search-patches "openjdk-9-pointer-comparison.patch"
-                                       "openjdk-9-setsignalhandler.patch"))))
+                                       "openjdk-9-setsignalhandler.patch"
+                                       "openjdk-9-duplicate-using-declaration.patch"))))
     (build-system gnu-build-system)
     (outputs '("out" "jdk" "doc"))
     (arguments
@@ -1060,7 +1061,8 @@ (define-public openjdk10
               (patches (search-patches
                         "openjdk-10-idlj-reproducibility.patch"
                         "openjdk-10-pointer-comparison.patch"
-                        "openjdk-10-setsignalhandler.patch"))))
+                        "openjdk-10-setsignalhandler.patch"
+                        "openjdk-10-duplicate-using-declaration.patch"))))
     (arguments
      (substitute-keyword-arguments (package-arguments openjdk9)
        ((#:phases phases)
diff --git a/gnu/packages/patches/openjdk-10-duplicate-using-declaration.patch b/gnu/packages/patches/openjdk-10-duplicate-using-declaration.patch
new file mode 100644
index 0000000000..48cded60e3
--- /dev/null
+++ b/gnu/packages/patches/openjdk-10-duplicate-using-declaration.patch
@@ -0,0 +1,15 @@
+Patch from changeset of openjdk11:
+https://hg.openjdk.org/jdk-updates/jdk11u/rev/15cc1c8a6371
+
+diff -u -r openjdk-10.alt/src/hotspot/cpu/aarch64/interp_masm_aarch64.hpp openjdk-10/src/hotspot/cpu/aarch64/interp_masm_aarch64.hpp
+--- openjdk-10.alt/src/hotspot/cpu/aarch64/interp_masm_aarch64.hpp	2023-07-16 14:33:27.570165136 +0200
++++ openjdk-10/src/hotspot/cpu/aarch64/interp_masm_aarch64.hpp	2023-07-16 14:34:55.325163199 +0200
+@@ -39,8 +39,6 @@
+  protected:
+ 
+  protected:
+-  using MacroAssembler::call_VM_leaf_base;
+-
+   // Interpreter specific version of call_VM_base
+   using MacroAssembler::call_VM_leaf_base;
+ 
diff --git a/gnu/packages/patches/openjdk-9-duplicate-using-declaration.patch b/gnu/packages/patches/openjdk-9-duplicate-using-declaration.patch
new file mode 100644
index 0000000000..3fa933ad36
--- /dev/null
+++ b/gnu/packages/patches/openjdk-9-duplicate-using-declaration.patch
@@ -0,0 +1,15 @@
+Patch from changeset of openjdk11:
+https://hg.openjdk.org/jdk-updates/jdk11u/rev/15cc1c8a6371
+
+diff -u -r openjdk-9.alt/hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp openjdk-9/hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp
+--- openjdk-9.alt/hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp	2023-07-15 19:03:09.063790084 +0200
++++ openjdk-9/hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp	2023-07-15 19:01:12.289447197 +0200
+@@ -39,8 +39,6 @@
+  protected:
+ 
+  protected:
+-  using MacroAssembler::call_VM_leaf_base;
+-
+   // Interpreter specific version of call_VM_base
+   using MacroAssembler::call_VM_leaf_base;
+ 
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [bug#64671] ignore
  2023-07-16 20:35 ` [bug#64671] [PATCH 1/1] gnu: openjdk: patches for aarch64 build (openjdk9|openjdk10) Tim Johann
@ 2023-07-16 21:19   ` Tim Johann
  0 siblings, 0 replies; 8+ messages in thread
From: Tim Johann @ 2023-07-16 21:19 UTC (permalink / raw)
  To: 64671; +Cc: Tim Johann

close 64671




^ permalink raw reply	[flat|nested] 8+ messages in thread

* [bug#64670] This seems to be a duplicate issue to the on by Christopher Baines.
  2023-07-16 20:35 [bug#64670] [PATCH 0/1] Fixing failing builds of openjdk on aarch64 Tim Johann
  2023-07-16 20:35 ` [bug#64671] [PATCH 1/1] gnu: openjdk: patches for aarch64 build (openjdk9|openjdk10) Tim Johann
  2023-07-16 21:16 ` [bug#64670] [PATCH 1/1] gnu: openjdk: patches for aarch64 build (openjdk9|openjdk10) Tim Johann
@ 2023-07-17 15:41 ` Tim Johann
  2023-08-11 10:56 ` [bug#64670] referenced patch does not apply to openjdk10 Tim Johann
  3 siblings, 0 replies; 8+ messages in thread
From: Tim Johann @ 2023-07-17 15:41 UTC (permalink / raw)
  To: 64670


[-- Attachment #1.1: Type: text/plain, Size: 208 bytes --]

Hello,

I just found a kinda duplicate of this from May 06:
<https://issues.guix.gnu.org/63327>

So, why isn't this already pushed?

I'll keep this one open until one of our patches is applied.


Cheers

Tim

[-- Attachment #1.2: Type: text/html, Size: 1521 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [bug#64670] referenced patch does not apply to openjdk10
  2023-07-16 20:35 [bug#64670] [PATCH 0/1] Fixing failing builds of openjdk on aarch64 Tim Johann
                   ` (2 preceding siblings ...)
  2023-07-17 15:41 ` [bug#64670] This seems to be a duplicate issue to the on by Christopher Baines Tim Johann
@ 2023-08-11 10:56 ` Tim Johann
  2023-10-05  7:26   ` bug#64670: " Efraim Flashner
  3 siblings, 1 reply; 8+ messages in thread
From: Tim Johann @ 2023-08-11 10:56 UTC (permalink / raw)
  To: 64670


[-- Attachment #1.1: Type: text/plain, Size: 512 bytes --]

Hello again,

said issue is merged (<https://issues.guix.gnu.org/63327>) now.

Unfortunately, it does not affect openjdk10, since it uses a different file system organisation than the former version.

I already suggested this solution to bug#63069 (<https://issues.guix.gnu.org/63069>) where a fix along the lines of separate patch files was proposed as a better alternative to issue #63327.

Still keeping this open until a patch for openjdk10 has been merged, too, which I would love to see soon.

Cheers

Tim

[-- Attachment #1.2: Type: text/html, Size: 2029 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#64670: referenced patch does not apply to openjdk10
  2023-08-11 10:56 ` [bug#64670] referenced patch does not apply to openjdk10 Tim Johann
@ 2023-10-05  7:26   ` Efraim Flashner
  2023-10-05 11:47     ` [bug#64670] " Tim Johann
  0 siblings, 1 reply; 8+ messages in thread
From: Efraim Flashner @ 2023-10-05  7:26 UTC (permalink / raw)
  To: Tim Johann; +Cc: 64670-done

[-- Attachment #1: Type: text/plain, Size: 1190 bytes --]

On Fri, Aug 11, 2023 at 12:56:30PM +0200, Tim Johann wrote:
> Hello again,
> 
> said issue is merged (<https://issues.guix.gnu.org/63327>) now.
> 
> Unfortunately, it does not affect openjdk10, since it uses a different file system organisation than the former version.
> 
> I already suggested this solution to bug#63069 (<https://issues.guix.gnu.org/63069>) where a fix along the lines of separate patch files was proposed as a better alternative to issue #63327.
> 
> Still keeping this open until a patch for openjdk10 has been merged, too, which I would love to see soon.

Sorry for this issue taking so long to get resolved. I've added a phase
for openjdk-10 that replaces the phase for openjdk-9 with one that uses
the updated path.  Openjdk-11 doesn't inherit from openjdk-10 so it
doesn't look like we need to override the phase there, and I didn't see
the duplicate line when I checked the source file.

I've added you as a co-author for the patch.

-- 
Efraim Flashner   <efraim@flashner.co.il>   רנשלפ םירפא
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [bug#64670] referenced patch does not apply to openjdk10
  2023-10-05  7:26   ` bug#64670: " Efraim Flashner
@ 2023-10-05 11:47     ` Tim Johann
  0 siblings, 0 replies; 8+ messages in thread
From: Tim Johann @ 2023-10-05 11:47 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: 64670-done

[-- Attachment #1: Type: text/plain, Size: 16 bytes --]

Thanks, Efraim!

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2023-10-05 11:51 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-07-16 20:35 [bug#64670] [PATCH 0/1] Fixing failing builds of openjdk on aarch64 Tim Johann
2023-07-16 20:35 ` [bug#64671] [PATCH 1/1] gnu: openjdk: patches for aarch64 build (openjdk9|openjdk10) Tim Johann
2023-07-16 21:19   ` [bug#64671] ignore Tim Johann
2023-07-16 21:16 ` [bug#64670] [PATCH 1/1] gnu: openjdk: patches for aarch64 build (openjdk9|openjdk10) Tim Johann
2023-07-17 15:41 ` [bug#64670] This seems to be a duplicate issue to the on by Christopher Baines Tim Johann
2023-08-11 10:56 ` [bug#64670] referenced patch does not apply to openjdk10 Tim Johann
2023-10-05  7:26   ` bug#64670: " Efraim Flashner
2023-10-05 11:47     ` [bug#64670] " Tim Johann

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).