Subject: [PATCH] gnu: openjdk9: Fix build on aarch64.
From: Christopher Baines <[email-masked]>
To: [email-masked]
Date: Sat, 6 May 2023 11:50:47 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

* gnu/packages/java.scm (openjdk9)[arguments]: Add 'patch-for-aarch64 phase to
remove duplicate line in interp_masm_aarch64.hpp.
---
 gnu/packages/java.scm | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 067284017c..166417a73d 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -884,6 +884,18 @@ (define-public openjdk9
 
        #: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

base-commit: 64086a4fa449a9f6d2f835fcdf5498222b309e3a
-- 
2.39.1