guix-patches
[Top][All Lists]
Advanced

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

[bug#30096] [PATCH 3/6] gnu: Add ocaml-ctypes.


From: Peter Kreye
Subject: [bug#30096] [PATCH 3/6] gnu: Add ocaml-ctypes.
Date: Sat, 13 Jan 2018 05:24:18 -0600
User-agent: mu4e 0.9.18; emacs 25.3.1

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

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 61398d3f2..40303c808 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -42,6 +42,7 @@
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages libevent)
+  #:use-module (gnu packages libffi)
   #:use-module (gnu packages llvm)
   #:use-module (gnu packages m4)
   #:use-module (gnu packages multiprecision)
@@ -3775,6 +3776,44 @@ and 64-bit signed and unsigned integer types, together 
with aliases such as
 long and size_t whose sizes depend on the host platform.")
     (license license:expat)))
 
+(define-public ocaml-ctypes
+  (package
+   (name "ocaml-ctypes")
+   (version "0.13.1")
+   (home-page "https://github.com/ocamllabs/ocaml-ctypes";)
+   (source (origin
+             (method url-fetch)
+             (uri (string-append home-page "/archive/" version ".tar.gz"))
+             (file-name (string-append name "-" version ".tar.gz"))
+             (sha256
+              (base32
+               "17w0pr5k0zjcjns4y9n36rjpfl35zhvp3h8ggqs9lz12qhshdk2m"))))
+   (build-system ocaml-build-system)
+   (arguments
+    `(#:make-flags
+       (list (string-append "INSTALL_HEADERS = $(wildcard 
$($(PROJECT).dir)/*.h)"))
+      #:phases
+      (modify-phases %standard-phases
+        (delete 'configure))))
+   (inputs
+    `(("pkg-config" ,pkg-config)
+      ("libffi" ,libffi)
+      ("ounit" ,ocaml-ounit)
+      ("integers" ,ocaml-integers)
+      ("findlib" ,ocaml-findlib-1.7.3)
+      ("lwt" ,ocaml-lwt)
+      ("topkg" ,ocaml-topkg)
+      ("opam", opam)))
+   (synopsis "Library for binding to C libraries using pure OCaml")
+   (description "ctypes is a library for binding to C libraries using pure
+OCaml. The primary aim is to make writing C extensions as straightforward as
+possible. The core of ctypes is a set of combinators for describing the
+structure of C types -- numeric types, arrays, pointers, structs, unions and
+functions. You can use these combinators to describe the types of the
+functions that you want to call, then bind directly to those functions -- all
+without writing or generating any C!")
+   (license license:expat)))
+
 (define-public coq-flocq
   (package
     (name "coq-flocq")
-- 
2.14.2







reply via email to

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