summary refs log tree commit diff
path: root/gnu/packages
diff options
context:
space:
mode:
authorChristopher Baines <mail@cbaines.net>2023-05-06 11:50:47 +0100
committerAndreas Enge <andreas@enge.fr>2023-07-26 15:56:26 +0200
commit9ca9b0afb641f045e0021a00ced579ca1615af5b (patch)
tree033b36c19e2f48d6c934a4220e8b95ab25b521ce /gnu/packages
parentf22c20e7ca14f79f0be5ce228f55d934cda27e04 (diff)
downloadguix-9ca9b0afb641f045e0021a00ced579ca1615af5b.tar.gz
gnu: openjdk9: Fix build on aarch64.
* gnu/packages/java.scm (openjdk9)[arguments]: Add 'patch-for-aarch64 phase to
remove duplicate line in interp_masm_aarch64.hpp.

Signed-off-by: Andreas Enge <andreas@enge.fr>
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/java.scm12
1 files changed, 12 insertions, 0 deletions
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 7ad1116527..dd6c549a25 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -884,6 +884,18 @@ new Date();"))
 
        #:phases
        (modify-phases %standard-phases
+         ,@(if (target-aarch64?)
+               `((add-after 'unpack 'patch-for-aarch64
+                   (lambda _
+                     (substitute* "hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp"
+                       ;; This line is duplicated, so remove both occurrences,
+                       ;; then add back one occurrence by substituting a
+                       ;; comment that occurs once.
+                       (("using MacroAssembler::call_VM_leaf_base;") "")
+                       (("Interpreter specific version of call_VM_base")
+                        "Interpreter specific version of call_VM_base
+  using MacroAssembler::call_VM_leaf_base;")))))
+               '())
          (add-after 'patch-source-shebangs 'fix-java-shebangs
            (lambda _
              ;; This file was "fixed" by patch-source-shebangs, but it requires