guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

04/05: gnu: Add r-rjava.


From: guix-commits
Subject: 04/05: gnu: Add r-rjava.
Date: Mon, 25 Mar 2019 12:31:03 -0400 (EDT)

rekado pushed a commit to branch master
in repository guix.

commit 3f6e6e98572e43297f8f780e0500a9c907c332c9
Author: Ricardo Wurmus <address@hidden>
Date:   Mon Mar 25 17:19:47 2019 +0100

    gnu: Add r-rjava.
    
    * gnu/packages/cran.scm (r-rjava): New variable.
---
 gnu/packages/cran.scm | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm
index 68516ec..d9648e4 100644
--- a/gnu/packages/cran.scm
+++ b/gnu/packages/cran.scm
@@ -54,8 +54,10 @@
   #:use-module (gnu packages graph)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages haskell)
+  #:use-module (gnu packages icu4c)
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
+  #:use-module (gnu packages java)
   #:use-module (gnu packages javascript)
   #:use-module (gnu packages lisp)
   #:use-module (gnu packages machine-learning)
@@ -63,6 +65,7 @@
   #:use-module (gnu packages mpi)
   #:use-module (gnu packages multiprecision)
   #:use-module (gnu packages networking)
+  #:use-module (gnu packages pcre)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
@@ -12871,3 +12874,50 @@ write HTML reports for statistical analysis.  Finally, 
a driver for Sweave
 allows to parse HTML flat files containing R code and to automatically write
 the corresponding outputs (tables and graphs).")
     (license license:gpl2+)))
+
+(define-public r-rjava
+  (package
+    (name "r-rjava")
+    (version "0.9-10")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "rJava" version))
+       (sha256
+        (base32
+         "0y7yg70i3zwbwl4g36js4dqpl51cmwss5ymrsk24d1z07bflp4y9"))))
+    (properties `((upstream-name . "rJava")))
+    (build-system r-build-system)
+    (arguments
+     `(#:modules ((guix build utils)
+                  (guix build r-build-system)
+                  (ice-9 match))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'set-JAVA_HOME
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let ((jdk (assoc-ref inputs "jdk")))
+               (setenv "JAVA_HOME" jdk)
+               (setenv "JAVA" (which "java"))
+               (setenv "JAR" (which "jar"))
+               (setenv "JAVAC" (which "javac"))
+               (setenv "JAVAH" (which "javah"))
+               (setenv "JAVA_CPPFLAGS"
+                       (string-append "-I" jdk "/include "
+                                      "-I" jdk "/include/linux"))
+               (match (find-files (string-append jdk "/jre/lib/") "libjvm.so")
+                 ((lib) (setenv "JAVA_LIBS" lib))
+                 (_ (error "Could not find libjvm.so"))))
+             #t)))))
+    (inputs
+     `(("icu4c" ,icu4c)
+       ("jdk" ,icedtea-8 "jdk")
+       ("pcre" ,pcre)
+       ("zlib" ,zlib)))
+    (home-page "http://www.rforge.net/rJava/";)
+    (synopsis "Low-Level R to Java interface")
+    (description
+     "This package provides a low-level interface to the Java VM very much
+like .C/.Call and friends.  It allows the creation of objects, calling methods
+and accessing fields.")
+    (license license:gpl2)))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]