aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulien Lepiller <julien@lepiller.eu>2016-12-30 10:53:41 +0100
committerDavid Craven <david@craven.ch>2017-01-04 16:05:28 +0100
commitddf2b503b1c1daab22af14a8c9eeff3ea89cdff7 (patch)
tree2187a5f69ed978d22e975dc773bd9598414b6b73
parent93eeadf0226078a6a9ecf57f84446044b4be249b (diff)
downloadgnu-guix-ddf2b503b1c1daab22af14a8c9eeff3ea89cdff7.tar
gnu-guix-ddf2b503b1c1daab22af14a8c9eeff3ea89cdff7.tar.gz
gnu: Add ocaml-zarith.
* gnu/packages/ocaml.scm (ocaml-zarith): New variable. Signed-off-by: David Craven <david@craven.ch>
-rw-r--r--gnu/packages/ocaml.scm31
1 files changed, 31 insertions, 0 deletions
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 6a12cb45ee..69a3801e97 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -35,6 +35,7 @@
#:use-module (gnu packages gtk)
#:use-module (gnu packages lynx)
#:use-module (gnu packages m4)
+ #:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
@@ -833,3 +834,33 @@ files in these formats.")
(synopsis "Generate modules from OCaml source files")
(description "Generate modules from OCaml source files.")
(license license:lgpl2.1+))) ; with an exception
+
+(define-public ocaml-zarith
+ (package
+ (name "ocaml-zarith")
+ (version "1.4.1")
+ (source (origin
+ (method url-fetch)
+ (uri (ocaml-forge-uri "zarith" version 1574))
+ (sha256
+ (base32
+ "0l36hzmfbvdai2kcgynh13vfdim5x2grnaw61fxqalyjm90c3di3"))))
+ (build-system ocaml-build-system)
+ (native-inputs
+ `(("perl" ,perl)))
+ (inputs
+ `(("gmp" ,gmp)))
+ (arguments
+ `(#:tests? #f ; no test target
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key #:allow-other-keys)
+ (zero? (system* "./configure")))))))
+ (home-page "https://forge.ocamlcore.org/projects/zarith/")
+ (synopsis "Implements arbitrary-precision integers")
+ (description "Implements arithmetic and logical operations over
+arbitrary-precision integers. It uses GMP to efficiently implement arithmetic
+over big integers. Small integers are represented as Caml unboxed integers,
+for speed and space economy.")
+ (license license:lgpl2.1+))) ; with an exception