guix-commits
[Top][All Lists]
Advanced

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

02/03: gnu: Add r-rcpparmadillo.


From: Ricardo Wurmus
Subject: 02/03: gnu: Add r-rcpparmadillo.
Date: Mon, 21 Dec 2015 15:05:52 +0000

rekado pushed a commit to branch master
in repository guix.

commit e22d4ca4c4489c8e9b12e8b6ea3f17999eed4ece
Author: Ricardo Wurmus <address@hidden>
Date:   Thu Dec 17 16:27:32 2015 +0100

    gnu: Add r-rcpparmadillo.
    
    * gnu/packages/maths.scm (armadillo-for-rcpparmadillo): New variable.
    * gnu/packages/statistics.scm (r-rcpparmadillo): New variable.
---
 gnu/packages/maths.scm      |   11 +++++++++++
 gnu/packages/statistics.scm |   43 +++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 54 insertions(+), 0 deletions(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 0d66b9f..e7a7b7c 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -1451,6 +1451,17 @@ provides efficient classes for vectors, matrices and 
cubes, as well as 150+
 associated functions (eg. contiguous and non-contiguous submatrix views).")
     (license license:mpl2.0)))
 
+(define-public armadillo-for-rcpparmadillo
+  (package (inherit armadillo)
+    (version "6.200.2")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://sourceforge/arma/armadillo-"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "1f69rlqhnf2wv8khyn2a8vi6gx1i72qgfy8b9b760ssk85dcl763"))))))
+
 (define-public muparser
   (package
     (name "muparser")
diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm
index 0ffd495..64ea551 100644
--- a/gnu/packages/statistics.scm
+++ b/gnu/packages/statistics.scm
@@ -1342,3 +1342,46 @@ visualization system inspired by Trellis graphics, with 
an emphasis on
 multivariate data.  Lattice is sufficient for typical graphics needs, and is
 also flexible enough to handle most nonstandard requirements.")
     (license license:gpl2+)))
+
+(define-public r-rcpparmadillo
+  (package
+    (name "r-rcpparmadillo")
+    (version "0.6.200.2.0")
+    (source (origin
+              (method url-fetch)
+              (uri (cran-uri "RcppArmadillo" version))
+              (sha256
+               (base32
+                "137wqqga776yj6synx5awhrzgkz7mmqnvgmggh9l4k6d99vwp9gj"))
+              (modules '((guix build utils)))
+              ;; Remove bundled armadillo sources
+              (snippet
+               '(begin
+                  (delete-file-recursively "inst/include/armadillo_bits")
+                  (delete-file "inst/include/armadillo")))))
+    (properties `((upstream-name . "RcppArmadillo")))
+    (build-system r-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'link-against-armadillo
+           (lambda _
+             (substitute* "src/Makevars"
+               (("PKG_LIBS=" prefix)
+                (string-append prefix "-larmadillo"))))))))
+    (propagated-inputs
+     `(("r-rcpp" ,r-rcpp)
+       ("armadillo" ,armadillo-for-rcpparmadillo)))
+    (home-page "https://github.com/RcppCore/RcppArmadillo";)
+    (synopsis "Rcpp integration for the Armadillo linear algebra library")
+    (description
+     "Armadillo is a templated C++ linear algebra library that aims towards a
+good balance between speed and ease of use.  Integer, floating point and
+complex numbers are supported, as well as a subset of trigonometric and
+statistics functions.  Various matrix decompositions are provided through
+optional integration with LAPACK and ATLAS libraries.  This package includes
+the header files from the templated Armadillo library.")
+    ;; Armadillo is licensed under the MPL 2.0, while RcppArmadillo (the Rcpp
+    ;; bindings to Armadillo) is licensed under the GNU GPL version 2 or
+    ;; later, as is the rest of 'Rcpp'.
+    (license license:gpl2+)))



reply via email to

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