summary refs log tree commit diff
path: root/gnu/packages/java.scm
diff options
context:
space:
mode:
authorSimon South <simon@simonsouth.net>2020-06-01 13:15:31 -0400
committerEfraim Flashner <efraim@flashner.co.il>2020-06-28 10:45:53 +0300
commit6c9dca5a9bc3aeab260bc125e8ddc08a5107ec4e (patch)
treecaa64fe416108b9fa5f9f75bff54c5196794643a /gnu/packages/java.scm
parent25ceae92ea6cddd2306fab9847ba091c17a0ae69 (diff)
downloadguix-6c9dca5a9bc3aeab260bc125e8ddc08a5107ec4e.tar.gz
gnu: jamvm-1-bootstrap: Add aarch64-linux support.
* gnu/packages/java.scm (jamvm-1-bootstrap)[source]: Add patch; update
name of existing patch.
[arguments]<#:phases>: Invoke autoreconf during bootstrap phase when
building for aarch64.
[native-inputs]: Include packages required for autoreconf when
building for aarch64.
* gnu/packages/patches/jamvm-1.5.1-aarch64-support.patch: New file.
* gnu/packages/patches/jamvm-arm.patch: Rename to
"jamvm-1.5.1-armv7-support.patch".
* gnu/local.mk (dist_patch_DATA): Add file; update filename.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
Diffstat (limited to 'gnu/packages/java.scm')
-rw-r--r--gnu/packages/java.scm22
1 files changed, 20 insertions, 2 deletions
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 48f9a52a56..27a6ebc437 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -288,7 +288,8 @@ language.")
               (uri (string-append "mirror://sourceforge/jamvm/jamvm/"
                                   "JamVM%20" version "/jamvm-"
                                   version ".tar.gz"))
-              (patches (search-patches "jamvm-arm.patch"))
+              (patches (search-patches "jamvm-1.5.1-aarch64-support.patch"
+                                       "jamvm-1.5.1-armv7-support.patch"))
               (sha256
                (base32
                 "06lhi03l3b0h48pc7x58bk9my2nrcf1flpmglvys3wyad6yraf36"))
@@ -304,13 +305,30 @@ language.")
                             (assoc-ref %build-inputs "classpath"))
              "--disable-int-caching"
              "--enable-runtime-reloc-checks"
-             "--enable-ffi")))
+             "--enable-ffi")
+       #:phases
+       ,(if (string-prefix? "aarch64" (or (%current-system)
+                                          (%current-target-system)))
+            ;; Makefiles and the configure script need to be regenerated to
+            ;; incorporate support for AArch64.
+            '(modify-phases %standard-phases
+               (replace 'bootstrap
+                 (lambda _ (invoke "autoreconf" "-vif"))))
+            '%standard-phases)))
     (inputs
      `(("classpath" ,classpath-bootstrap)
        ("jikes" ,jikes)
        ("libffi" ,libffi)
        ("zip" ,zip)
        ("zlib" ,zlib)))
+    (native-inputs
+     (if (string-prefix? "aarch64" (or (%current-system)
+                                       (%current-target-system)))
+         ;; Additional packages needed for autoreconf.
+         `(("autoconf" ,autoconf)
+           ("automake" ,automake)
+           ("libtool" ,libtool))
+         '()))
     (home-page "http://jamvm.sourceforge.net/")
     (synopsis "Small Java Virtual Machine")
     (description "JamVM is a Java Virtual Machine conforming to the JVM