unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#30096] Update ocaml-findlib; Add ocaml-tsdl and dependencies
@ 2018-01-13 11:05 Peter Kreye
  2018-01-13 11:14 ` [bug#30096] [PATCH 1/6] gnu: ocaml-findlib-1.7.3: Fix install Peter Kreye
                   ` (6 more replies)
  0 siblings, 7 replies; 20+ messages in thread
From: Peter Kreye @ 2018-01-13 11:05 UTC (permalink / raw)
  To: 30096

Hi,

This patch series updates to ocaml-findlib to version 1.7.3, removes the
ocaml-findlib-1.7.3 package, and adds the tsdl-ocaml package along with
its dependencies.

-- 
Peter Kreye

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [bug#30096] [PATCH 1/6] gnu: ocaml-findlib-1.7.3: Fix install.
  2018-01-13 11:05 [bug#30096] Update ocaml-findlib; Add ocaml-tsdl and dependencies Peter Kreye
@ 2018-01-13 11:14 ` Peter Kreye
  2018-01-13 11:14 ` [bug#30096] [PATCH 2/6] gnu: Add ocaml-integers Peter Kreye
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 20+ messages in thread
From: Peter Kreye @ 2018-01-13 11:14 UTC (permalink / raw)
  To: 30096

User-agent: mu4e 0.9.18; emacs 25.3.1

* gnu/packages/ocaml.scm (ocaml-findlib-1.7.3): install topfind to
lib/ocaml/site/lib
---
 gnu/packages/ocaml.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index eab84c698..e70316cd7 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -918,7 +918,7 @@ compilers that can directly deal with packages.")
                (let ((out (assoc-ref outputs "out")))
                  (zero? (system* "make" "install"
                                  (string-append "OCAML_CORE_STDLIB="
-                                                out))))))))))))
+                                                out "/lib/ocaml/site-lib"))))))))))))
 
 (define-public ocaml4.01-findlib
   (package
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [bug#30096] [PATCH 2/6] gnu: Add ocaml-integers.
  2018-01-13 11:05 [bug#30096] Update ocaml-findlib; Add ocaml-tsdl and dependencies Peter Kreye
  2018-01-13 11:14 ` [bug#30096] [PATCH 1/6] gnu: ocaml-findlib-1.7.3: Fix install Peter Kreye
@ 2018-01-13 11:14 ` Peter Kreye
  2018-01-13 12:57   ` Julien Lepiller
  2018-01-13 13:08   ` Julien Lepiller
  2018-01-13 11:24 ` [bug#30096] [PATCH 3/6] gnu: Add ocaml-ctypes Peter Kreye
                   ` (4 subsequent siblings)
  6 siblings, 2 replies; 20+ messages in thread
From: Peter Kreye @ 2018-01-13 11:14 UTC (permalink / raw)
  To: 30096

User-agent: mu4e 0.9.18; emacs 25.3.1

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

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index e70316cd7..61398d3f2 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -3739,6 +3739,42 @@ terminal or in Emacs.  It supports line editing, history, real-time and context
 sensitive completion, colors, and more.")
     (license license:bsd-3)))
 
+(define-public ocaml-integers
+  (package
+    (name "ocaml-integers")
+    (version "0.2.2")
+    (home-page "https://github.com/ocamllabs/ocaml-integers")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append home-page
+                                  "/releases/download/v0.2.2/integers-"
+                                  version ".tbz"))
+              (file-name (string-append name "-" version ".tbz"))
+              (sha256
+               (base32
+                "08b1ljw88ny3l0mdq6xmffjk8anfc77igryva5jz1p6f4f746ywk"))))
+    (build-system ocaml-build-system)
+    (arguments
+     `(#:tests? #f
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         (replace 'build
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((libdir (string-append
+                            (assoc-ref %build-inputs "findlib")
+                            "/lib/ocaml/site-lib")))
+               (zero? (system* "ocaml" "-I" libdir "pkg/pkg.ml" "build"))))))))
+    (inputs
+     `(("findlib" ,ocaml-findlib-1.7.3)
+       ("topkg" ,ocaml-topkg)
+       ("opam", opam)))
+    (synopsis "Various signed and unsigned integer types for OCaml")
+    (description "The ocaml-integers library provides a number of 8-, 16-, 32-
+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 coq-flocq
   (package
     (name "coq-flocq")
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [bug#30096] [PATCH 3/6] gnu: Add ocaml-ctypes.
  2018-01-13 11:05 [bug#30096] Update ocaml-findlib; Add ocaml-tsdl and dependencies Peter Kreye
  2018-01-13 11:14 ` [bug#30096] [PATCH 1/6] gnu: ocaml-findlib-1.7.3: Fix install Peter Kreye
  2018-01-13 11:14 ` [bug#30096] [PATCH 2/6] gnu: Add ocaml-integers Peter Kreye
@ 2018-01-13 11:24 ` Peter Kreye
  2018-01-13 12:59   ` Julien Lepiller
  2018-01-13 11:25 ` [bug#30096] [PATCH 4/6] gnu: Add ocaml-ocb-stubblr Peter Kreye
                   ` (3 subsequent siblings)
  6 siblings, 1 reply; 20+ messages in thread
From: Peter Kreye @ 2018-01-13 11:24 UTC (permalink / raw)
  To: 30096

* 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

^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [bug#30096] [PATCH 4/6] gnu: Add ocaml-ocb-stubblr.
  2018-01-13 11:05 [bug#30096] Update ocaml-findlib; Add ocaml-tsdl and dependencies Peter Kreye
                   ` (2 preceding siblings ...)
  2018-01-13 11:24 ` [bug#30096] [PATCH 3/6] gnu: Add ocaml-ctypes Peter Kreye
@ 2018-01-13 11:25 ` Peter Kreye
  2018-01-13 13:10   ` Julien Lepiller
  2018-01-13 11:26 ` [bug#30096] [PATCH 5/6] gnu: Add ocaml-tsdl Peter Kreye
                   ` (2 subsequent siblings)
  6 siblings, 1 reply; 20+ messages in thread
From: Peter Kreye @ 2018-01-13 11:25 UTC (permalink / raw)
  To: 30096

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

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 40303c808..a60922c02 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -3814,6 +3814,42 @@ functions that you want to call, then bind directly to those functions -- all
 without writing or generating any C!")
    (license license:expat)))
 
+(define-public ocaml-ocb-stubblr
+  (package
+   (name "ocaml-ocb-stubblr")
+   (version "0.1.1")
+   (home-page "https://github.com/pqwy/ocb-stubblr")
+   (source (origin
+             (method url-fetch)
+             (uri (string-append
+                   home-page "/releases/download/v0.1.1/ocb-stubblr-"
+                   version ".tbz"))
+             (file-name (string-append name "-" version ".tbz"))
+             (sha256
+              (base32
+               "167b7x1j21mkviq8dbaa0nmk4rps2ilvzwx02igsc2706784z72f"))))
+   (build-system ocaml-build-system)
+   (arguments
+     `(#:tests? #f
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         (replace 'build
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((libdir (string-append (assoc-ref %build-inputs "findlib")
+                                          "/lib/ocaml/site-lib")))
+               (zero? (system* "ocaml" "-I" libdir "pkg/pkg.ml" "build"))))))))
+   (inputs
+    `(("findlib" ,ocaml-findlib-1.7.3)
+      ("topkg" ,ocaml-topkg)
+      ("astring" ,ocaml-astring)
+      ("opam", opam)))
+   (synopsis "OCamlbuild plugin for C stubs")
+   (description "Ocb-stubblr is about ten lines of code that you need to
+repeat over, over, over and over again if you are using ocamlbuild to build
+OCaml projects that contain C stubs.")
+   (license license:isc)))
+
 (define-public coq-flocq
   (package
     (name "coq-flocq")
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [bug#30096] [PATCH 5/6] gnu: Add ocaml-tsdl.
  2018-01-13 11:05 [bug#30096] Update ocaml-findlib; Add ocaml-tsdl and dependencies Peter Kreye
                   ` (3 preceding siblings ...)
  2018-01-13 11:25 ` [bug#30096] [PATCH 4/6] gnu: Add ocaml-ocb-stubblr Peter Kreye
@ 2018-01-13 11:26 ` Peter Kreye
  2018-01-13 13:16   ` Julien Lepiller
  2018-01-13 11:27 ` [bug#30096] [PATCH 6/6] gnu: ocaml-findlib: Update to 1.7.3 Peter Kreye
  2018-02-01 22:12 ` bug#30096: Update ocaml-findlib; Add ocaml-tsdl and dependencies Julien Lepiller
  6 siblings, 1 reply; 20+ messages in thread
From: Peter Kreye @ 2018-01-13 11:26 UTC (permalink / raw)
  To: 30096

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

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index a60922c02..34458be28 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -52,6 +52,7 @@
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages protobuf)
   #:use-module (gnu packages python)
+  #:use-module (gnu packages sdl)
   #:use-module (gnu packages tex)
   #:use-module (gnu packages texinfo)
   #:use-module (gnu packages time)
@@ -3842,14 +3843,55 @@ without writing or generating any C!")
    (inputs
     `(("findlib" ,ocaml-findlib-1.7.3)
       ("topkg" ,ocaml-topkg)
-      ("astring" ,ocaml-astring)
       ("opam", opam)))
+   (propagated-inputs
+    `(("astring" ,ocaml-astring)))
    (synopsis "OCamlbuild plugin for C stubs")
    (description "Ocb-stubblr is about ten lines of code that you need to
 repeat over, over, over and over again if you are using ocamlbuild to build
 OCaml projects that contain C stubs.")
    (license license:isc)))
 
+(define-public ocaml-tsdl
+  (package
+    (name "ocaml-tsdl")
+    (version "0.9.1")
+    (home-page "http://erratique.ch/software/tsdl")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append home-page "/releases/tsdl-"
+                                  version ".tbz"))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "08bb97fhvz829fb0sgjn2p20mp7b04v98zy2qxpk2w390a6c4b34"))))
+    (build-system ocaml-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         (replace 'build
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((libdir (string-append (assoc-ref %build-inputs "findlib")
+                                          "/lib/ocaml/site-lib")))
+
+               (zero? (system* "ocaml" "-I" libdir "pkg/pkg.ml" "build" "--tests" "false")))))
+         (delete 'check))))
+    (native-inputs
+     `(("opam" ,opam)
+       ("pkg-config" ,pkg-config)))
+    (inputs
+     `(("findlib" ,ocaml-findlib-1.7.3)
+       ("topkg" ,ocaml-topkg)
+       ("result" ,ocaml-result)
+       ("sdl2" ,sdl2)
+       ("integers" ,ocaml-integers)
+       ("ctypes" ,ocaml-ctypes)))
+    (synopsis "Thin bindings to SDL for OCaml")
+    (description "Tsdl is an OCaml library providing thin bindings to the
+cross-platform SDL C library.")
+    (license license:isc)))
+
 (define-public coq-flocq
   (package
     (name "coq-flocq")
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [bug#30096] [PATCH 6/6] gnu: ocaml-findlib: Update to 1.7.3.
  2018-01-13 11:05 [bug#30096] Update ocaml-findlib; Add ocaml-tsdl and dependencies Peter Kreye
                   ` (4 preceding siblings ...)
  2018-01-13 11:26 ` [bug#30096] [PATCH 5/6] gnu: Add ocaml-tsdl Peter Kreye
@ 2018-01-13 11:27 ` Peter Kreye
  2018-01-13 13:18   ` Julien Lepiller
  2018-02-01 22:12 ` bug#30096: Update ocaml-findlib; Add ocaml-tsdl and dependencies Julien Lepiller
  6 siblings, 1 reply; 20+ messages in thread
From: Peter Kreye @ 2018-01-13 11:27 UTC (permalink / raw)
  To: 30096

* gnu/packages/ocaml.scm (ocaml-findlib): Update to 1.7.3.
* gnu/packages/ocaml.scm (ocaml-findlib-1.7.3): Removed.
---
 gnu/packages/ocaml.scm | 45 ++++++++++++++-------------------------------
 1 file changed, 14 insertions(+), 31 deletions(-)

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 34458be28..3d2d5c337 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -850,20 +850,19 @@ to the other.")
 (define-public ocaml-findlib
   (package
     (name "ocaml-findlib")
-    (version "1.6.1")
+    (version "1.7.3")
     (source (origin
               (method url-fetch)
               (uri (string-append "http://download.camlcity.org/download/"
                                   "findlib" "-" version ".tar.gz"))
               (sha256
                (base32
-                "02abg1lsnwvjg3igdyb8qjgr5kv1nbwl4gaf8mdinzfii5p82721"))
-              (patches (search-patches "ocaml-findlib-make-install.patch"))))
+                "12xx8si1qv3xz90qsrpazjjk4lc1989fzm97rsmc4diwla7n15ni"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("camlp4" ,camlp4)
        ("m4" ,m4)
-       ("ocaml" ,ocaml)))
+       ("ocaml" ,ocaml)))    
     (arguments
      `(#:tests? #f  ; no test suite
        #:parallel-build? #f
@@ -880,6 +879,12 @@ to the other.")
                         "-mandir" (string-append out "/share/man")
                         "-sitelib" (string-append out "/lib/ocaml/site-lib")
                         "-with-toolbox"))))
+                  (replace 'install
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      (let ((out (assoc-ref outputs "out")))
+                        (zero? (system* "make" "install"
+                                        (string-append "OCAML_CORE_STDLIB="
+                                                       out "/lib/ocaml/site-lib"))))))
                   (add-after 'install 'remove-camlp4
                     (lambda* (#:key outputs #:allow-other-keys)
                       (let ((out (assoc-ref outputs "out")))
@@ -900,28 +905,6 @@ compilation and linkage, there are new frontends of the various OCaml
 compilers that can directly deal with packages.")
     (license license:x11)))
 
-(define-public ocaml-findlib-1.7.3
-  (package
-    (inherit ocaml-findlib)
-    (version "1.7.3")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "http://download.camlcity.org/download/"
-                                  "findlib" "-" version ".tar.gz"))
-              (sha256
-               (base32
-                "12xx8si1qv3xz90qsrpazjjk4lc1989fzm97rsmc4diwla7n15ni"))))
-    (arguments
-     (substitute-keyword-arguments (package-arguments ocaml-findlib)
-       ((#:phases phases)
-        `(modify-phases ,phases
-           (replace 'install
-             (lambda* (#:key outputs #:allow-other-keys)
-               (let ((out (assoc-ref outputs "out")))
-                 (zero? (system* "make" "install"
-                                 (string-append "OCAML_CORE_STDLIB="
-                                                out "/lib/ocaml/site-lib"))))))))))))
-
 (define-public ocaml4.01-findlib
   (package
     (inherit ocaml-findlib)
@@ -3728,7 +3711,7 @@ instead of bindings to a C library.")
        ("cppo" ,ocaml-cppo)
        ("jbuilder" ,ocaml-jbuilder)))
     (propagated-inputs
-     `(("findlib" ,ocaml-findlib-1.7.3)
+     `(("findlib" ,ocaml-findlib)
        ("lambda-term" ,ocaml-lambda-term)
        ("lwt" ,ocaml-lwt)
        ("react" ,ocaml-react)
@@ -3768,7 +3751,7 @@ sensitive completion, colors, and more.")
                             "/lib/ocaml/site-lib")))
                (zero? (system* "ocaml" "-I" libdir "pkg/pkg.ml" "build"))))))))
     (inputs
-     `(("findlib" ,ocaml-findlib-1.7.3)
+     `(("findlib" ,ocaml-findlib)
        ("topkg" ,ocaml-topkg)
        ("opam", opam)))
     (synopsis "Various signed and unsigned integer types for OCaml")
@@ -3801,7 +3784,7 @@ long and size_t whose sizes depend on the host platform.")
       ("libffi" ,libffi)
       ("ounit" ,ocaml-ounit)
       ("integers" ,ocaml-integers)
-      ("findlib" ,ocaml-findlib-1.7.3)
+      ("findlib" ,ocaml-findlib)
       ("lwt" ,ocaml-lwt)
       ("topkg" ,ocaml-topkg)
       ("opam", opam)))
@@ -3841,7 +3824,7 @@ without writing or generating any C!")
                                           "/lib/ocaml/site-lib")))
                (zero? (system* "ocaml" "-I" libdir "pkg/pkg.ml" "build"))))))))
    (inputs
-    `(("findlib" ,ocaml-findlib-1.7.3)
+    `(("findlib" ,ocaml-findlib)
       ("topkg" ,ocaml-topkg)
       ("opam", opam)))
    (propagated-inputs
@@ -3881,7 +3864,7 @@ OCaml projects that contain C stubs.")
      `(("opam" ,opam)
        ("pkg-config" ,pkg-config)))
     (inputs
-     `(("findlib" ,ocaml-findlib-1.7.3)
+     `(("findlib" ,ocaml-findlib)
        ("topkg" ,ocaml-topkg)
        ("result" ,ocaml-result)
        ("sdl2" ,sdl2)
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [bug#30096] [PATCH 2/6] gnu: Add ocaml-integers.
  2018-01-13 11:14 ` [bug#30096] [PATCH 2/6] gnu: Add ocaml-integers Peter Kreye
@ 2018-01-13 12:57   ` Julien Lepiller
  2018-01-13 13:08   ` Julien Lepiller
  1 sibling, 0 replies; 20+ messages in thread
From: Julien Lepiller @ 2018-01-13 12:57 UTC (permalink / raw)
  To: 30096

Le Sat, 13 Jan 2018 05:14:55 -0600,
Peter Kreye <kreyepr@gmail.com> a écrit :

> User-agent: mu4e 0.9.18; emacs 25.3.1
> 
> * gnu/packages/ocaml.scm (ocaml-integes): New variable.
                                        ^
ocaml-integers

> ---
>  gnu/packages/ocaml.scm | 36 ++++++++++++++++++++++++++++++++++++
>  1 file changed, 36 insertions(+)
> 
> diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
> index e70316cd7..61398d3f2 100644
> --- a/gnu/packages/ocaml.scm
> +++ b/gnu/packages/ocaml.scm
> @@ -3739,6 +3739,42 @@ terminal or in Emacs.  It supports line
> editing, history, real-time and context sensitive completion, colors,
> and more.") (license license:bsd-3)))
>  
> +(define-public ocaml-integers
> +  (package
> +    (name "ocaml-integers")
> +    (version "0.2.2")
> +    (home-page "https://github.com/ocamllabs/ocaml-integers")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append home-page
> +
> "/releases/download/v0.2.2/integers-"
> +                                  version ".tbz"))
> +              (file-name (string-append name "-" version ".tbz"))
> +              (sha256
> +               (base32
> +
> "08b1ljw88ny3l0mdq6xmffjk8anfc77igryva5jz1p6f4f746ywk"))))
> +    (build-system ocaml-build-system)
> +    (arguments
> +     `(#:tests? #f
> +       #:phases
> +       (modify-phases %standard-phases
> +         (delete 'configure)
> +         (replace 'build
> +           (lambda* (#:key outputs #:allow-other-keys)
> +             (let ((libdir (string-append
> +                            (assoc-ref %build-inputs "findlib")
> +                            "/lib/ocaml/site-lib")))
> +               (zero? (system* "ocaml" "-I" libdir "pkg/pkg.ml"
> "build"))))))))
> +    (inputs
> +     `(("findlib" ,ocaml-findlib-1.7.3)
It's probably better to use "#:findlib ,ocaml-findlib-1.7.3" in the
arguments list.

> +       ("topkg" ,ocaml-topkg)
> +       ("opam", opam)))
> +    (synopsis "Various signed and unsigned integer types for OCaml")
> +    (description "The ocaml-integers library provides a number of
> 8-, 16-, 32- +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 coq-flocq
>    (package
>      (name "coq-flocq")

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [bug#30096] [PATCH 3/6] gnu: Add ocaml-ctypes.
  2018-01-13 11:24 ` [bug#30096] [PATCH 3/6] gnu: Add ocaml-ctypes Peter Kreye
@ 2018-01-13 12:59   ` Julien Lepiller
  2018-01-19  5:52     ` Peter Kreye
  0 siblings, 1 reply; 20+ messages in thread
From: Julien Lepiller @ 2018-01-13 12:59 UTC (permalink / raw)
  To: 30096

Le Sat, 13 Jan 2018 05:24:18 -0600,
Peter Kreye <kreyepr@gmail.com> a écrit :

> * 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)
That should be a native-inputs I think

> +      ("libffi" ,libffi)
> +      ("ounit" ,ocaml-ounit)
> +      ("integers" ,ocaml-integers)
> +      ("findlib" ,ocaml-findlib-1.7.3)
Can you put that in #:findlib instead?

> +      ("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!")
guix lint complains that sentences should be separated with two spaces,
the description should start with an upper-case letter

> +   (license license:expat)))
> +
>  (define-public coq-flocq
>    (package
>      (name "coq-flocq")

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [bug#30096] [PATCH 2/6] gnu: Add ocaml-integers.
  2018-01-13 11:14 ` [bug#30096] [PATCH 2/6] gnu: Add ocaml-integers Peter Kreye
  2018-01-13 12:57   ` Julien Lepiller
@ 2018-01-13 13:08   ` Julien Lepiller
  2018-01-19  5:32     ` Peter Kreye
  1 sibling, 1 reply; 20+ messages in thread
From: Julien Lepiller @ 2018-01-13 13:08 UTC (permalink / raw)
  To: 30096

Le Sat, 13 Jan 2018 05:14:55 -0600,
Peter Kreye <kreyepr@gmail.com> a écrit :

> User-agent: mu4e 0.9.18; emacs 25.3.1
> 
> * gnu/packages/ocaml.scm (ocaml-integes): New variable.
> ---
>  gnu/packages/ocaml.scm | 36 ++++++++++++++++++++++++++++++++++++
>  1 file changed, 36 insertions(+)
> 
> diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
> index e70316cd7..61398d3f2 100644
> --- a/gnu/packages/ocaml.scm
> +++ b/gnu/packages/ocaml.scm
> @@ -3739,6 +3739,42 @@ terminal or in Emacs.  It supports line
> editing, history, real-time and context sensitive completion, colors,
> and more.") (license license:bsd-3)))
>  
> +(define-public ocaml-integers
> +  (package
> +    (name "ocaml-integers")
> +    (version "0.2.2")
> +    (home-page "https://github.com/ocamllabs/ocaml-integers")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append home-page
> +
> "/releases/download/v0.2.2/integers-"
> +                                  version ".tbz"))
> +              (file-name (string-append name "-" version ".tbz"))
> +              (sha256
> +               (base32
> +
> "08b1ljw88ny3l0mdq6xmffjk8anfc77igryva5jz1p6f4f746ywk"))))
> +    (build-system ocaml-build-system)
> +    (arguments
> +     `(#:tests? #f
Actually, I forgot to ask, why disable tests?

That's the same question for the rest of your patches too.

> +       #:phases
> +       (modify-phases %standard-phases
> +         (delete 'configure)
> +         (replace 'build
> +           (lambda* (#:key outputs #:allow-other-keys)
> +             (let ((libdir (string-append
> +                            (assoc-ref %build-inputs "findlib")
> +                            "/lib/ocaml/site-lib")))
> +               (zero? (system* "ocaml" "-I" libdir "pkg/pkg.ml"
> "build"))))))))
You don't need to replace the 'build phase. ocaml-build-system can find
pkg/pkg.ml. You just need to use #:build-flags (list "build") to add
arguments.

That applies also to the rest of your patches.

> +    (inputs
> +     `(("findlib" ,ocaml-findlib-1.7.3)
> +       ("topkg" ,ocaml-topkg)
> +       ("opam", opam)))
> +    (synopsis "Various signed and unsigned integer types for OCaml")
> +    (description "The ocaml-integers library provides a number of
> 8-, 16-, 32- +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 coq-flocq
>    (package
>      (name "coq-flocq")

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [bug#30096] [PATCH 4/6] gnu: Add ocaml-ocb-stubblr.
  2018-01-13 11:25 ` [bug#30096] [PATCH 4/6] gnu: Add ocaml-ocb-stubblr Peter Kreye
@ 2018-01-13 13:10   ` Julien Lepiller
  0 siblings, 0 replies; 20+ messages in thread
From: Julien Lepiller @ 2018-01-13 13:10 UTC (permalink / raw)
  To: 30096

Le Sat, 13 Jan 2018 05:25:52 -0600,
Peter Kreye <kreyepr@gmail.com> a écrit :

> * gnu/packages/ocaml.scm (ocaml-ocb-stubblr): New variable.
> ---
>  gnu/packages/ocaml.scm | 36 ++++++++++++++++++++++++++++++++++++
>  1 file changed, 36 insertions(+)
> 
> diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
> index 40303c808..a60922c02 100644
> --- a/gnu/packages/ocaml.scm
> +++ b/gnu/packages/ocaml.scm
> @@ -3814,6 +3814,42 @@ functions that you want to call, then bind
> directly to those functions -- all without writing or generating any
> C!") (license license:expat)))
>  
> +(define-public ocaml-ocb-stubblr
> +  (package
> +   (name "ocaml-ocb-stubblr")
> +   (version "0.1.1")
> +   (home-page "https://github.com/pqwy/ocb-stubblr")
> +   (source (origin
> +             (method url-fetch)
> +             (uri (string-append
> +                   home-page "/releases/download/v0.1.1/ocb-stubblr-"
> +                   version ".tbz"))
> +             (file-name (string-append name "-" version ".tbz"))
> +             (sha256
> +              (base32
> +
> "167b7x1j21mkviq8dbaa0nmk4rps2ilvzwx02igsc2706784z72f"))))
> +   (build-system ocaml-build-system)
> +   (arguments
> +     `(#:tests? #f
> +       #:phases
> +       (modify-phases %standard-phases
> +         (delete 'configure)
> +         (replace 'build
> +           (lambda* (#:key outputs #:allow-other-keys)
> +             (let ((libdir (string-append (assoc-ref %build-inputs
> "findlib")
> +                                          "/lib/ocaml/site-lib")))
> +               (zero? (system* "ocaml" "-I" libdir "pkg/pkg.ml"
> "build"))))))))
You don't need to replace the build phase, use #:build-flags (list
"build").

> +   (inputs
> +    `(("findlib" ,ocaml-findlib-1.7.3)
Similarly, I think it's better to use #:findlib.

> +      ("topkg" ,ocaml-topkg)
> +      ("astring" ,ocaml-astring)
> +      ("opam", opam)))
> +   (synopsis "OCamlbuild plugin for C stubs")
> +   (description "Ocb-stubblr is about ten lines of code that you
> need to +repeat over, over, over and over again if you are using
> ocamlbuild to build +OCaml projects that contain C stubs.")
> +   (license license:isc)))
> +
>  (define-public coq-flocq
>    (package
>      (name "coq-flocq")

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [bug#30096] [PATCH 5/6] gnu: Add ocaml-tsdl.
  2018-01-13 11:26 ` [bug#30096] [PATCH 5/6] gnu: Add ocaml-tsdl Peter Kreye
@ 2018-01-13 13:16   ` Julien Lepiller
  0 siblings, 0 replies; 20+ messages in thread
From: Julien Lepiller @ 2018-01-13 13:16 UTC (permalink / raw)
  To: 30096

Le Sat, 13 Jan 2018 05:26:37 -0600,
Peter Kreye <kreyepr@gmail.com> a écrit :

> * gnu/packages/ocaml.scm (ocaml-tsdl): New variable.
> ---
>  gnu/packages/ocaml.scm | 44
> +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 43
> insertions(+), 1 deletion(-)
> 
> diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
> index a60922c02..34458be28 100644
> --- a/gnu/packages/ocaml.scm
> +++ b/gnu/packages/ocaml.scm
> @@ -52,6 +52,7 @@
>    #:use-module (gnu packages pkg-config)
>    #:use-module (gnu packages protobuf)
>    #:use-module (gnu packages python)
> +  #:use-module (gnu packages sdl)
>    #:use-module (gnu packages tex)
>    #:use-module (gnu packages texinfo)
>    #:use-module (gnu packages time)
> @@ -3842,14 +3843,55 @@ without writing or generating any C!")
>     (inputs
>      `(("findlib" ,ocaml-findlib-1.7.3)
>        ("topkg" ,ocaml-topkg)
> -      ("astring" ,ocaml-astring)
>        ("opam", opam)))
> +   (propagated-inputs
> +    `(("astring" ,ocaml-astring)))
This needs to be in the commit message.

>     (synopsis "OCamlbuild plugin for C stubs")
>     (description "Ocb-stubblr is about ten lines of code that you
> need to repeat over, over, over and over again if you are using
> ocamlbuild to build OCaml projects that contain C stubs.")
>     (license license:isc)))
>  
> +(define-public ocaml-tsdl
> +  (package
> +    (name "ocaml-tsdl")
> +    (version "0.9.1")
> +    (home-page "http://erratique.ch/software/tsdl")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append home-page "/releases/tsdl-"
> +                                  version ".tbz"))
> +              (file-name (string-append name "-" version ".tar.gz"))
> +              (sha256
> +               (base32
> +
> "08bb97fhvz829fb0sgjn2p20mp7b04v98zy2qxpk2w390a6c4b34"))))
> +    (build-system ocaml-build-system)
> +    (arguments
> +     `(#:phases
> +       (modify-phases %standard-phases
> +         (delete 'configure)
> +         (replace 'build
> +           (lambda* (#:key outputs #:allow-other-keys)
> +             (let ((libdir (string-append (assoc-ref %build-inputs
> "findlib")
> +                                          "/lib/ocaml/site-lib")))
> +
> +               (zero? (system* "ocaml" "-I" libdir "pkg/pkg.ml"
> "build" "--tests" "false")))))
Don't replace the 'build phase and delete 'check: you just need
#:build-flags (list "build") and #:tests? #f. I don't think you need to
disable test building. Why not run tests?

> +         (delete 'check))))
> +    (native-inputs
> +     `(("opam" ,opam)
> +       ("pkg-config" ,pkg-config)))
> +    (inputs
> +     `(("findlib" ,ocaml-findlib-1.7.3)
> +       ("topkg" ,ocaml-topkg)
> +       ("result" ,ocaml-result)
> +       ("sdl2" ,sdl2)
> +       ("integers" ,ocaml-integers)
> +       ("ctypes" ,ocaml-ctypes)))
> +    (synopsis "Thin bindings to SDL for OCaml")
> +    (description "Tsdl is an OCaml library providing thin bindings
> to the +cross-platform SDL C library.")
The description has a line that's too long

> +    (license license:isc)))
> +
>  (define-public coq-flocq
>    (package
>      (name "coq-flocq")

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [bug#30096] [PATCH 6/6] gnu: ocaml-findlib: Update to 1.7.3.
  2018-01-13 11:27 ` [bug#30096] [PATCH 6/6] gnu: ocaml-findlib: Update to 1.7.3 Peter Kreye
@ 2018-01-13 13:18   ` Julien Lepiller
  2018-01-13 18:10     ` Leo Famulari
  0 siblings, 1 reply; 20+ messages in thread
From: Julien Lepiller @ 2018-01-13 13:18 UTC (permalink / raw)
  To: 30096

Le Sat, 13 Jan 2018 05:27:36 -0600,
Peter Kreye <kreyepr@gmail.com> a écrit :

> * gnu/packages/ocaml.scm (ocaml-findlib): Update to 1.7.3.
> * gnu/packages/ocaml.scm (ocaml-findlib-1.7.3): Removed.
> ---
>  gnu/packages/ocaml.scm | 45
> ++++++++++++++------------------------------- 1 file changed, 14
> insertions(+), 31 deletions(-)
> 
> diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
> index 34458be28..3d2d5c337 100644
> --- a/gnu/packages/ocaml.scm
> +++ b/gnu/packages/ocaml.scm
> [...]

I haven't tested rebuilding everything, but if it works, LGTM.

Thank you for your patches!

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [bug#30096] [PATCH 6/6] gnu: ocaml-findlib: Update to 1.7.3.
  2018-01-13 13:18   ` Julien Lepiller
@ 2018-01-13 18:10     ` Leo Famulari
  2018-01-16 14:30       ` Ludovic Courtès
  0 siblings, 1 reply; 20+ messages in thread
From: Leo Famulari @ 2018-01-13 18:10 UTC (permalink / raw)
  To: Julien Lepiller; +Cc: 30096

[-- Attachment #1: Type: text/plain, Size: 864 bytes --]

On Sat, Jan 13, 2018 at 02:18:30PM +0100, Julien Lepiller wrote:
> Le Sat, 13 Jan 2018 05:27:36 -0600,
> Peter Kreye <kreyepr@gmail.com> a écrit :
> 
> > * gnu/packages/ocaml.scm (ocaml-findlib): Update to 1.7.3.
> > * gnu/packages/ocaml.scm (ocaml-findlib-1.7.3): Removed.
> > ---
> >  gnu/packages/ocaml.scm | 45
> > ++++++++++++++------------------------------- 1 file changed, 14
> > insertions(+), 31 deletions(-)
> > 
> > diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
> > index 34458be28..3d2d5c337 100644
> > --- a/gnu/packages/ocaml.scm
> > +++ b/gnu/packages/ocaml.scm
> > [...]
> 
> I haven't tested rebuilding everything, but if it works, LGTM.
> 
> Thank you for your patches!

Thanks to Peter for the patches and Julien for the review. Julien, once
the revised patches are ready, please feel free to push them :)

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [bug#30096] [PATCH 6/6] gnu: ocaml-findlib: Update to 1.7.3.
  2018-01-13 18:10     ` Leo Famulari
@ 2018-01-16 14:30       ` Ludovic Courtès
  0 siblings, 0 replies; 20+ messages in thread
From: Ludovic Courtès @ 2018-01-16 14:30 UTC (permalink / raw)
  To: Leo Famulari; +Cc: 30096

Heya,

Leo Famulari <leo@famulari.name> skribis:

> Thanks to Peter for the patches and Julien for the review. Julien, once
> the revised patches are ready, please feel free to push them :)

Also, please consider fixing minor issues (like two spaces after
end-of-sentence) on behalf of Peter.  This should be more efficient for
everyone.  :-)

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [bug#30096] [PATCH 2/6] gnu: Add ocaml-integers.
  2018-01-13 13:08   ` Julien Lepiller
@ 2018-01-19  5:32     ` Peter Kreye
  2018-01-19  8:09       ` julien lepiller
  0 siblings, 1 reply; 20+ messages in thread
From: Peter Kreye @ 2018-01-19  5:32 UTC (permalink / raw)
  To: Julien Lepiller; +Cc: 30096

[-- Attachment #1: Type: text/plain, Size: 741 bytes --]

Julien,

Thank you for all of the feedback, it is much appreciated.

Julien Lepiller writes:

> Actually, I forgot to ask, why disable tests?
>
> That's the same question for the rest of your patches too.

This package doesn't have any tests, which seems to be causing the 'check
phase to fail. Would it be better to use "#:tests? #f" or to delete the
'check phase?

> You don't need to replace the 'build phase. ocaml-build-system can find
> pkg/pkg.ml. You just need to use #:build-flags (list "build") to add
> arguments.
>
> That applies also to the rest of your patches.

Thank you for this info. I'll make sure to do this from now on.

> It's probably better to use "#:findlib ,ocaml-findlib-1.7.3" in the
> arguments list.

Same.

--

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-Add-ocaml-integers.patch --]
[-- Type: text/x-patch, Size: 1988 bytes --]

From 3e3d3cf9775fb95d22ecf1422a81e7ae582176ce Mon Sep 17 00:00:00 2001
From: Peter Kreye <kreyepr@gmail.com>
Date: Thu, 18 Jan 2018 22:38:07 -0600
Subject: [PATCH] gnu: Add ocaml-integers.
To: 30096@debbugs.gnu.org

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

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index e70316cd7..ca731001f 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -3739,6 +3739,37 @@ terminal or in Emacs.  It supports line editing, history, real-time and context
 sensitive completion, colors, and more.")
     (license license:bsd-3)))
 
+(define-public ocaml-integers
+  (package
+    (name "ocaml-integers")
+    (version "0.2.2")
+    (home-page "https://github.com/ocamllabs/ocaml-integers")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append home-page
+                                  "/releases/download/v0.2.2/integers-"
+                                  version ".tbz"))
+              (file-name (string-append name "-" version ".tbz"))
+              (sha256
+               (base32
+                "08b1ljw88ny3l0mdq6xmffjk8anfc77igryva5jz1p6f4f746ywk"))))
+    (build-system ocaml-build-system)
+    (arguments
+     `(#:findlib ,ocaml-findlib-1.7.3
+       #:build-flags (list "build")
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         (delete 'check))))
+    (inputs
+     `(("topkg" ,ocaml-topkg)
+       ("opam", opam)))
+    (synopsis "Various signed and unsigned integer types for OCaml")
+    (description "The ocaml-integers library provides a number of 8-, 16-, 32-
+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 coq-flocq
   (package
     (name "coq-flocq")
-- 
2.14.2


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [bug#30096] [PATCH 3/6] gnu: Add ocaml-ctypes.
  2018-01-13 12:59   ` Julien Lepiller
@ 2018-01-19  5:52     ` Peter Kreye
  2018-01-28 22:35       ` Ludovic Courtès
  0 siblings, 1 reply; 20+ messages in thread
From: Peter Kreye @ 2018-01-19  5:52 UTC (permalink / raw)
  To: Julien Lepiller; +Cc: 30096

[-- Attachment #1: Type: text/plain, Size: 133 bytes --]


Julien Lepiller writes:

>> +   (inputs
>> +    `(("pkg-config" ,pkg-config)
> That should be a native-inputs I think

I agree.

--

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-Add-ocaml-ctypes.patch --]
[-- Type: text/x-patch, Size: 2670 bytes --]

From 7215cb21ae3c4117d1b581b19b3b310339b32689 Mon Sep 17 00:00:00 2001
From: Peter Kreye <kreyepr@gmail.com>
Date: Thu, 18 Jan 2018 23:41:30 -0600
Subject: [PATCH] gnu: Add ocaml-ctypes.
To: 30096@debbugs.gnu.org

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

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index ca731001f..23fa260c8 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)
@@ -3770,6 +3771,45 @@ 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
+    `(#:findlib ,ocaml-findlib-1.7.3
+      #:make-flags
+       (list (string-append "INSTALL_HEADERS = $(wildcard $($(PROJECT).dir)/*.h)"))
+      #:phases
+      (modify-phases %standard-phases
+        (delete 'configure))))
+   (native-inputs
+    `(("pkg-config" ,pkg-config)))
+   (inputs
+    `(("libffi" ,libffi)
+      ("ounit" ,ocaml-ounit)
+      ("integers" ,ocaml-integers)
+      ("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


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [bug#30096] [PATCH 2/6] gnu: Add ocaml-integers.
  2018-01-19  5:32     ` Peter Kreye
@ 2018-01-19  8:09       ` julien lepiller
  0 siblings, 0 replies; 20+ messages in thread
From: julien lepiller @ 2018-01-19  8:09 UTC (permalink / raw)
  To: 30096

Le 2018-01-19 06:32, Peter Kreye a écrit :
> Julien,
> 
> Thank you for all of the feedback, it is much appreciated.
> 
> Julien Lepiller writes:
> 
>> Actually, I forgot to ask, why disable tests?
>> 
>> That's the same question for the rest of your patches too.
> 
> This package doesn't have any tests, which seems to be causing the 
> 'check
> phase to fail. Would it be better to use "#:tests? #f" or to delete the
> 'check phase?

I think it's better to use #:tests? #f and leave a comment to explain 
the reason, so:

#:tests? #f; no test suite

Since you disable tests in all your patches, could you leave a comment 
in each of them
to explain why it is disabled?

> 
>> You don't need to replace the 'build phase. ocaml-build-system can 
>> find
>> pkg/pkg.ml. You just need to use #:build-flags (list "build") to add
>> arguments.
>> 
>> That applies also to the rest of your patches.
> 
> Thank you for this info. I'll make sure to do this from now on.
> 
>> It's probably better to use "#:findlib ,ocaml-findlib-1.7.3" in the
>> arguments list.
> 
> Same.
> 
> --

Thank you, I'll push your patches as soon as you send a new version.

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [bug#30096] [PATCH 3/6] gnu: Add ocaml-ctypes.
  2018-01-19  5:52     ` Peter Kreye
@ 2018-01-28 22:35       ` Ludovic Courtès
  0 siblings, 0 replies; 20+ messages in thread
From: Ludovic Courtès @ 2018-01-28 22:35 UTC (permalink / raw)
  To: Peter Kreye; +Cc: 30096

Hi Peter,

Peter Kreye <kreyepr@gmail.com> skribis:

> From 7215cb21ae3c4117d1b581b19b3b310339b32689 Mon Sep 17 00:00:00 2001
> From: Peter Kreye <kreyepr@gmail.com>
> Date: Thu, 18 Jan 2018 23:41:30 -0600
> Subject: [PATCH] gnu: Add ocaml-ctypes.
> To: 30096@debbugs.gnu.org
>
> * gnu/packages/ocaml.scm (ocaml-ctypes): New variable.

AFAICS this addresses the suggestions that Julien made (it lacks a
copyright line for you but we can add it, no problem.)

However it also depends on the previous patches.

Julien, could you take a look?  :-)

Ludo’.

^ permalink raw reply	[flat|nested] 20+ messages in thread

* bug#30096: Update ocaml-findlib; Add ocaml-tsdl and dependencies
  2018-01-13 11:05 [bug#30096] Update ocaml-findlib; Add ocaml-tsdl and dependencies Peter Kreye
                   ` (5 preceding siblings ...)
  2018-01-13 11:27 ` [bug#30096] [PATCH 6/6] gnu: ocaml-findlib: Update to 1.7.3 Peter Kreye
@ 2018-02-01 22:12 ` Julien Lepiller
  6 siblings, 0 replies; 20+ messages in thread
From: Julien Lepiller @ 2018-02-01 22:12 UTC (permalink / raw)
  To: 30096-done

Le Sat, 13 Jan 2018 05:05:43 -0600,
Peter Kreye <kreyepr@gmail.com> a écrit :

> Hi,
> 
> This patch series updates to ocaml-findlib to version 1.7.3, removes
> the ocaml-findlib-1.7.3 package, and adds the tsdl-ocaml package
> along with its dependencies.
> 

Pushed as 2b4d2a4d0a100b67397eeb76f55e1cc20be4ae75 -
bff6739d5ea513417bb491a61aa276c4fb7ddd43, with small changes.

^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2018-02-01 22:15 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-01-13 11:05 [bug#30096] Update ocaml-findlib; Add ocaml-tsdl and dependencies Peter Kreye
2018-01-13 11:14 ` [bug#30096] [PATCH 1/6] gnu: ocaml-findlib-1.7.3: Fix install Peter Kreye
2018-01-13 11:14 ` [bug#30096] [PATCH 2/6] gnu: Add ocaml-integers Peter Kreye
2018-01-13 12:57   ` Julien Lepiller
2018-01-13 13:08   ` Julien Lepiller
2018-01-19  5:32     ` Peter Kreye
2018-01-19  8:09       ` julien lepiller
2018-01-13 11:24 ` [bug#30096] [PATCH 3/6] gnu: Add ocaml-ctypes Peter Kreye
2018-01-13 12:59   ` Julien Lepiller
2018-01-19  5:52     ` Peter Kreye
2018-01-28 22:35       ` Ludovic Courtès
2018-01-13 11:25 ` [bug#30096] [PATCH 4/6] gnu: Add ocaml-ocb-stubblr Peter Kreye
2018-01-13 13:10   ` Julien Lepiller
2018-01-13 11:26 ` [bug#30096] [PATCH 5/6] gnu: Add ocaml-tsdl Peter Kreye
2018-01-13 13:16   ` Julien Lepiller
2018-01-13 11:27 ` [bug#30096] [PATCH 6/6] gnu: ocaml-findlib: Update to 1.7.3 Peter Kreye
2018-01-13 13:18   ` Julien Lepiller
2018-01-13 18:10     ` Leo Famulari
2018-01-16 14:30       ` Ludovic Courtès
2018-02-01 22:12 ` bug#30096: Update ocaml-findlib; Add ocaml-tsdl and dependencies Julien Lepiller

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).