summaryrefslogtreecommitdiff
path: root/gnu/packages/java.scm
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2023-10-06 16:16:27 +0300
committerEfraim Flashner <efraim@flashner.co.il>2023-10-06 16:21:44 +0300
commita7e6b4c98b97921ab695218f9b89be4f1ded48c9 (patch)
tree9e41be68e25eb8c626f7838ca90ece3103f1bdba /gnu/packages/java.scm
parent8d27ef1ed34a0a7fe14fd76f31541b62d0125498 (diff)
gnu: openjdk-12: Fix building on aarch64-linux.
* gnu/packages/java.scm (openjdk-12)[arugments]: When building for aarch64-linux add a phase to remove a duplicate line.
Diffstat (limited to 'gnu/packages/java.scm')
-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 30a59ec5a3..9445c37b67 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -1463,6 +1463,18 @@ new Date();"))
(substitute-keyword-arguments (package-arguments openjdk11)
((#:phases phases)
#~(modify-phases #$phases
+ #$@(if (target-aarch64?)
+ #~((add-after 'unpack 'patch-for-aarch64
+ (lambda _
+ (substitute* "src/hotspot/cpu/aarch64/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")
+ (string-append "Interpreter specific version of call_VM_base\n"
+ " using MacroAssembler::call_VM_leaf_base;"))))))
+ #~())
(replace 'fix-java-shebangs
(lambda _
;; 'blocked' was renamed to 'blacklisted' in this version for