guix-patches
[Top][All Lists]
Advanced

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

[bug#33079] [PATCH 11/34] gnu: Add ocaml-num.


From: Julien Lepiller
Subject: [bug#33079] [PATCH 11/34] gnu: Add ocaml-num.
Date: Wed, 17 Oct 2018 22:34:19 +0200

* gnu/packages/ocaml.scm (ocaml-num): New variable.
---
 gnu/packages/ocaml.scm | 44 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 6a32d225c..604726c7b 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -556,6 +556,50 @@ concrete syntax of the language (Quotations, Syntax 
Extensions).")
 written in Objective Caml.")
     (license license:qpl)))
 
+(define-public ocaml-num
+  (package
+    (name "ocaml-num")
+    (version "1.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/ocaml/num/archive/v";
+                                  version ".tar.gz"))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1xlkd0svc0mgq5s7nrm2rjrsvg15i9wxqkc1kvwjp6sv8vv8bb04"))))
+    (build-system ocaml-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         (add-before 'build 'fix-makefile
+           (lambda* (#:key outputs #:allow-other-keys)
+             ;; This package supposes we install to the same directory as
+             ;; the ocaml package.
+             (substitute* "src/META"
+               (("\"\\^\"") (string-append "\"" (assoc-ref outputs "out")
+                                           "/lib/ocaml/site-lib\"")))
+             (substitute* "src/Makefile"
+               (("\\) \\$\\(STDLIBDIR\\)")
+                (string-append ") " (assoc-ref outputs "out")
+                               "/lib/ocaml/site-lib")))
+             #t))
+         (add-after 'install 'fix-stubslib
+           (lambda* (#:key outputs #:allow-other-keys)
+             (format #t "~a~%" (find-files "." ".*.so"))
+             (let ((stubdir (string-append (assoc-ref outputs "out")
+                                           "/lib/ocaml/site-lib")))
+               (mkdir-p stubdir)
+               (install-file "src/dllnums.so" stubdir))
+             #t)))))
+    (home-page "https://github.com/ocaml/num";)
+    (synopsis "Arbitrary-precision integer and rational arithmetic")
+    (description "OCaml-Num contains the legacy Num library for
+arbitrary-precision integer and rational arithmetic that used to be part of
+the OCaml core distribution.")
+    (license license:lgpl2.1+))); with linking exception
+
 (define-public coq
   (package
     (name "coq")
-- 
2.18.0






reply via email to

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