unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* bug#27116: New ocaml packages
@ 2017-05-28 13:55 Julien Lepiller
  0 siblings, 0 replies; only message in thread
From: Julien Lepiller @ 2017-05-28 13:55 UTC (permalink / raw)
  To: 27116

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

Hi,

here are ten new OCaml packages. Only 13 remaining after these ;).

[-- Attachment #2: 0001-gnu-Add-ocaml-core-kernel.patch --]
[-- Type: text/x-patch, Size: 2010 bytes --]

From e103e629c604975dfce8b541192864d8a33617e4 Mon Sep 17 00:00:00 2001
From: Julien Lepiller <julien@lepiller.eu>
Date: Sun, 28 May 2017 15:06:06 +0200
Subject: [PATCH 01/10] gnu: Add ocaml-core-kernel.

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

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 863e367a5..b7adc6e56 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -2907,3 +2907,35 @@ the expected output.")
     (synopsis "Standard Jane Street ppx rewriters")
     (description "Ppx_jane is a ppx_driver including all standard ppx rewriters.")
     (license license:asl2.0)))
+
+(define-public ocaml-core-kernel
+  (package
+    (name "ocaml-core-kernel")
+    (version "113.33.03")
+    (source (janestreet-origin "core_kernel" version
+               "0fl23jrwivixawhxinbwaw9cabqnzn7fini7dxpxjjvkxdc8ip5y"))
+    (native-inputs
+     `(("js-build-tools" ,ocaml-js-build-tools)
+       ("ppx-jane" ,ocaml-ppx-jane)
+       ("opam" ,opam)))
+    (propagated-inputs
+     `(("bin_prot" ,ocaml-bin-prot)
+       ("ppx-assert" ,ocaml-ppx-assert)
+       ("ppx-bench" ,ocaml-ppx-bench)
+       ("ppx-driver" ,ocaml-ppx-driver)
+       ("ppx-expect" ,ocaml-ppx-expect)
+       ("ppx-inline-test" ,ocaml-ppx-inline-test)
+       ("typerep" ,ocaml-typerep)
+       ("sexplib" ,ocaml-sexplib)
+       ("variantslib" ,ocaml-variantslib)
+       ("result" ,ocaml-result)
+       ("fieldslib" ,ocaml-fieldslib)))
+    (build-system ocaml-build-system)
+    (arguments janestreet-arguments)
+    (home-page "https://github.com/janestreet/core_kernel/")
+    (synopsis "Portable standard library for OCaml")
+    (description "Core is an alternative to the OCaml standard library.
+
+Core_kernel is the system-independent part of Core.  It is aimed for cases when
+the full Core is not available, such as in Javascript.")
+    (license license:asl2.0)))
-- 
2.13.0


[-- Attachment #3: 0002-gnu-Add-ocaml-async-kernel.patch --]
[-- Type: text/x-patch, Size: 1506 bytes --]

From 81ede957f7d7ffabfed1a8b2b658cb901f130c98 Mon Sep 17 00:00:00 2001
From: Julien Lepiller <julien@lepiller.eu>
Date: Sun, 28 May 2017 15:10:10 +0200
Subject: [PATCH 02/10] gnu: Add ocaml-async-kernel.

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

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index b7adc6e56..d526b825c 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -2939,3 +2939,23 @@ the expected output.")
 Core_kernel is the system-independent part of Core.  It is aimed for cases when
 the full Core is not available, such as in Javascript.")
     (license license:asl2.0)))
+
+(define-public ocaml-async-kernel
+  (package
+    (name "ocaml-async-kernel")
+    (version "113.33.03")
+    (source (janestreet-origin "async_kernel" version
+              "04bjsaa23j831r09r38x6xx9nhryvp0z5ihickvhxqa4fb2snyvd"))
+    (native-inputs
+     `(("oasis" ,ocaml-oasis)
+       ("js-build-tools" ,ocaml-js-build-tools)
+       ("ppx-jane" ,ocaml-ppx-jane)
+       ("opam" ,opam)))
+    (propagated-inputs
+     `(("core-kernel" ,ocaml-core-kernel)))
+    (build-system ocaml-build-system)
+    (arguments janestreet-arguments)
+    (home-page "https://github.com/janestreet/async_kernel/")
+    (synopsis "Monadic concurrency library")
+    (description "Async-kernel is a library for concurrent programming in OCaml.")
+    (license license:asl2.0)))
-- 
2.13.0


[-- Attachment #4: 0003-gnu-Add-ocaml-async-rpc-kernel.patch --]
[-- Type: text/x-patch, Size: 1594 bytes --]

From c3a31011e1b4084948346ab010601b80a6a0f549 Mon Sep 17 00:00:00 2001
From: Julien Lepiller <julien@lepiller.eu>
Date: Sun, 28 May 2017 15:13:50 +0200
Subject: [PATCH 03/10] gnu: Add ocaml-async-rpc-kernel.

* gnu/packages/ocaml.scm (ocaml-async-rpc-kernel): New variable.
---
 gnu/packages/ocaml.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index d526b825c..f360e7d1f 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -2959,3 +2959,24 @@ the full Core is not available, such as in Javascript.")
     (synopsis "Monadic concurrency library")
     (description "Async-kernel is a library for concurrent programming in OCaml.")
     (license license:asl2.0)))
+
+(define-public ocaml-async-rpc-kernel
+  (package
+    (name "ocaml-async-rpc-kernel")
+    (version "113.33.03")
+    (source (janestreet-origin "async_rpc_kernel" version
+             "0y97h9pkb00v7jpf87m8cbb0ffkclj9g26ph6sq97q8dpisnkjwh"))
+    (native-inputs
+     `(("oasis" ,ocaml-oasis)
+       ("js-build-tools" ,ocaml-js-build-tools)
+       ("ppx-jane" ,ocaml-ppx-jane)
+       ("opam" ,opam)))
+    (propagated-inputs
+     `(("async-kernel" ,ocaml-async-kernel)))
+    (build-system ocaml-build-system)
+    (arguments janestreet-arguments)
+    (home-page "https://github.com/janestreet/async_rpc_kernel/")
+    (synopsis "Platform-independent core of the Async RPC library")
+    (description "Async_rpc_kernel is the platform-independent core of
+the Async RPC library.")
+    (license license:asl2.0)))
-- 
2.13.0


[-- Attachment #5: 0004-gnu-Add-ocaml-core.patch --]
[-- Type: text/x-patch, Size: 1511 bytes --]

From dac519eb8443bbbd85dc8d475b73eead82f6cf53 Mon Sep 17 00:00:00 2001
From: Julien Lepiller <julien@lepiller.eu>
Date: Sun, 28 May 2017 15:16:28 +0200
Subject: [PATCH 04/10] gnu: Add ocaml-core.

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

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index f360e7d1f..1a70b67bf 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -2980,3 +2980,24 @@ the full Core is not available, such as in Javascript.")
     (description "Async_rpc_kernel is the platform-independent core of
 the Async RPC library.")
     (license license:asl2.0)))
+
+(define-public ocaml-core
+  (package
+    (name "ocaml-core")
+    (version "113.33.03")
+    (source (janestreet-origin "core" version
+              "1znll157qg56g9d3247fjibv1hxv3r9wxgr4nhy19j2vzdh6a268"))
+    (native-inputs
+     `(("oasis" ,ocaml-oasis)
+       ("js-build-tools" ,ocaml-js-build-tools)
+       ("ppx-jane" ,ocaml-ppx-jane)
+       ("opam" ,opam)))
+    (propagated-inputs
+     `(("core-kernel" ,ocaml-core-kernel)))
+    (build-system ocaml-build-system)
+    (arguments janestreet-arguments)
+    (home-page "https://github.com/janestreet/core/")
+    (synopsis "Alternative to OCaml's standard library")
+    (description "The Core suite of libraries is an alternative to OCaml's
+standard library that was developed by Jane Street.")
+    (license license:asl2.0)))
-- 
2.13.0


[-- Attachment #6: 0005-gnu-Add-ocaml-async-unix.patch --]
[-- Type: text/x-patch, Size: 1526 bytes --]

From 86e67689027780f1275c99d2287d8c1fc47d3fe7 Mon Sep 17 00:00:00 2001
From: Julien Lepiller <julien@lepiller.eu>
Date: Sun, 28 May 2017 15:19:17 +0200
Subject: [PATCH 05/10] gnu: Add ocaml-async-unix.

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

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 1a70b67bf..a40ebea54 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -3001,3 +3001,24 @@ the Async RPC library.")
     (description "The Core suite of libraries is an alternative to OCaml's
 standard library that was developed by Jane Street.")
     (license license:asl2.0)))
+
+(define-public ocaml-async-unix
+  (package
+    (name "ocaml-async-unix")
+    (version "113.33.03")
+    (source (janestreet-origin "async_unix" version
+              "1fwl0lfrizllcfjk8hk8m7lsz9ha2jg6qgk4gssfyz377qvpcq4h"))
+    (native-inputs
+     `(("oasis" ,ocaml-oasis)
+       ("js-build-tools" ,ocaml-js-build-tools)
+       ("ppx-jane" ,ocaml-ppx-jane)
+       ("opam" ,opam)))
+    (propagated-inputs
+     `(("async-kernel" ,ocaml-async-kernel)
+       ("core" ,ocaml-core)))
+    (build-system ocaml-build-system)
+    (arguments janestreet-arguments)
+    (home-page "https://github.com/janestreet/async_unix")
+    (synopsis "Asynchronous execution library for Unix")
+    (description "Async_unix is an asynchronous execution library for Unix.")
+    (license license:asl2.0)))
-- 
2.13.0


[-- Attachment #7: 0006-gnu-Add-ocaml-async-extra.patch --]
[-- Type: text/x-patch, Size: 1638 bytes --]

From bd3c93defadf4e54fad987217d7971b387a3b229 Mon Sep 17 00:00:00 2001
From: Julien Lepiller <julien@lepiller.eu>
Date: Sun, 28 May 2017 15:24:58 +0200
Subject: [PATCH 06/10] gnu: Add ocaml-async-extra.

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

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index a40ebea54..aa2832044 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -3022,3 +3022,26 @@ standard library that was developed by Jane Street.")
     (synopsis "Asynchronous execution library for Unix")
     (description "Async_unix is an asynchronous execution library for Unix.")
     (license license:asl2.0)))
+
+(define-public ocaml-async-extra
+  (package
+    (name "ocaml-async-extra")
+    (version "113.33.03")
+    (source (janestreet-origin "async_extra" version
+              "1si8jgiq5xh5sl9f2b7f9p17p7zx5h1pg557x2cxywi2x7pxqg4f"))
+    (native-inputs
+     `(("oasis" ,ocaml-oasis)
+       ("js-build-tools" ,ocaml-js-build-tools)
+       ("ppx-jane" ,ocaml-ppx-jane)
+       ("opam" ,opam)))
+    (propagated-inputs
+     `(("async-rpc-kernel" ,ocaml-async-rpc-kernel)
+       ("async-unix" ,ocaml-async-unix)
+       ("core" ,ocaml-core)))
+    (build-system ocaml-build-system)
+    (arguments janestreet-arguments)
+    (home-page "https://github.com/janestreet/async_extra")
+    (synopsis "Extra functionnalities for the async library")
+    (description "Async_extra provides additional functionnalities for the
+async library.")
+    (license license:asl2.0)))
-- 
2.13.0


[-- Attachment #8: 0007-gnu-Add-ocaml-async.patch --]
[-- Type: text/x-patch, Size: 1442 bytes --]

From 3045d816c05f9ec62f248aaa9ce5821b0ea86293 Mon Sep 17 00:00:00 2001
From: Julien Lepiller <julien@lepiller.eu>
Date: Sun, 28 May 2017 15:27:17 +0200
Subject: [PATCH 07/10] gnu: Add ocaml-async.

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

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index aa2832044..5acf06d76 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -3045,3 +3045,23 @@ standard library that was developed by Jane Street.")
     (description "Async_extra provides additional functionnalities for the
 async library.")
     (license license:asl2.0)))
+
+(define-public ocaml-async
+  (package
+    (name "ocaml-async")
+    (version "113.33.03")
+    (source (janestreet-origin "async" version
+              "0210fyhcs12kpmmd26015bgivkfd2wqkyn3c5wd7688d0f872y25"))
+    (native-inputs
+     `(("oasis" ,ocaml-oasis)
+       ("js-build-tools" ,ocaml-js-build-tools)
+       ("ppx-jane" ,ocaml-ppx-jane)
+       ("opam" ,opam)))
+    (propagated-inputs
+     `(("async-extra" ,ocaml-async-extra)))
+    (build-system ocaml-build-system)
+    (arguments janestreet-arguments)
+    (home-page "https://github.com/janestreet/async")
+    (synopsis "Monadic concurrency library")
+    (description "Async is a library for concurrent programming in OCaml.")
+    (license license:asl2.0)))
-- 
2.13.0


[-- Attachment #9: 0008-gnu-Add-ocaml-ocplib-endian.patch --]
[-- Type: text/x-patch, Size: 1790 bytes --]

From 342bacd526715f394b0fd2dfb38560b826210db8 Mon Sep 17 00:00:00 2001
From: Julien Lepiller <julien@lepiller.eu>
Date: Sun, 28 May 2017 15:30:33 +0200
Subject: [PATCH 08/10] gnu: Add ocaml-ocplib-endian.

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

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 5acf06d76..3e8337518 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -3065,3 +3065,26 @@ async library.")
     (synopsis "Monadic concurrency library")
     (description "Async is a library for concurrent programming in OCaml.")
     (license license:asl2.0)))
+
+(define-public ocaml-ocplib-endian
+  (package
+    (name "ocaml-ocplib-endian")
+    (version "1.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/OCamlPro/ocplib-endian/"
+                                  "archive/" version ".tar.gz"))
+              (sha256
+               (base32
+                "0hwj09rnzjs0m0kazz5h2mgs6p95j0zlga8cda5srnzqmzhniwkn"))
+              (file-name (string-append name "-" version ".tar.gz"))))
+    (build-system ocaml-build-system)
+    (native-inputs `(("cppo" ,ocaml-cppo)))
+    (home-page "https://github.com/OCamlPro/ocplib-endian")
+    (synopsis "Optimised functions to read and write int16/32/64 from strings
+and bigarrays")
+    (description "Optimised functions to read and write int16/32/64 from strings
+and bigarrays, based on new primitives added in version 4.01.  It works on
+strings, bytes and bigstring (Bigarrys of chars), and provides submodules for
+big- and little-endian, with their unsafe counter-parts.")
+    (license license:lgpl2.1)))
-- 
2.13.0


[-- Attachment #10: 0009-gnu-Add-ocaml-cstruct.patch --]
[-- Type: text/x-patch, Size: 2634 bytes --]

From 4632494f9506a2dab84461971ae9c58609523c14 Mon Sep 17 00:00:00 2001
From: Julien Lepiller <julien@lepiller.eu>
Date: Sun, 28 May 2017 15:33:28 +0200
Subject: [PATCH 09/10] gnu: Add ocaml-cstruct.

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

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 3e8337518..3ee90aa06 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -3088,3 +3088,45 @@ and bigarrays, based on new primitives added in version 4.01.  It works on
 strings, bytes and bigstring (Bigarrys of chars), and provides submodules for
 big- and little-endian, with their unsafe counter-parts.")
     (license license:lgpl2.1)))
+
+(define-public ocaml-cstruct
+  (package
+    (name "ocaml-cstruct")
+    (version "2.3.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/mirage/ocaml-cstruct/"
+                                  "archive/v" version ".tar.gz"))
+              (sha256
+               (base32
+                "15qpdc8421shq4pprdas9jznpva45229wkfqbwcxw9khaiiz7949"))
+              (file-name (string-append name "-" version ".tar.gz"))))
+    (build-system ocaml-build-system)
+    (arguments
+     `(#:configure-flags
+       (list "--enable-lwt" "--enable-async")
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'install 'link-stubs
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (stubs (string-append out "/lib/ocaml/site-lib/stubslibs"))
+                    (lib (string-append out "/lib/ocaml/site-lib/cstruct")))
+               (mkdir-p stubs)
+               (symlink (string-append lib "/dllcstruct_stubs.so")
+                        (string-append stubs "/dllcstruct_stubs.so"))))))))
+    (native-inputs
+     `(("ounit" ,ocaml-ounit)
+       ("ppx-tools" ,ocaml-ppx-tools)
+       ("camlp4" ,camlp4)))
+    (propagated-inputs
+     `(("ocplib-endian" ,ocaml-ocplib-endian)
+       ("lwt" ,ocaml-lwt)
+       ("async" ,ocaml-async)
+       ("sexplib" ,ocaml-sexplib)))
+    (home-page "https://github.com/mirage/ocaml-cstruct")
+    (synopsis "Access C structures via a camlp4 extension")
+    (description "Cstruct is a library and syntax extension to make it easier
+to access C-like structures directly from OCaml.  It supports both reading and
+writing to these structures, and they are accessed via the Bigarray module.")
+    (license license:isc)))
-- 
2.13.0


[-- Attachment #11: 0010-gnu-Add-ocaml-hex.patch --]
[-- Type: text/x-patch, Size: 1572 bytes --]

From 2f9681b3b465ffc69c32b9aca17fa1805909e8e6 Mon Sep 17 00:00:00 2001
From: Julien Lepiller <julien@lepiller.eu>
Date: Sun, 28 May 2017 15:35:28 +0200
Subject: [PATCH 10/10] gnu: Add ocaml-hex.

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

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 3ee90aa06..e205138a3 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -3130,3 +3130,22 @@ big- and little-endian, with their unsafe counter-parts.")
 to access C-like structures directly from OCaml.  It supports both reading and
 writing to these structures, and they are accessed via the Bigarray module.")
     (license license:isc)))
+
+(define-public ocaml-hex
+  (package
+    (name "ocaml-hex")
+    (version "1.0.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/mirage/ocaml-hex/"
+                                  "archive/" version ".tar.gz"))
+              (sha256
+               (base32
+                "0s63g0b8gfv2xm6fv6xg7bva8h76b5pcjb0zw3f8cygs0lq9072v"))
+              (file-name (string-append name "-" version ".tar.gz"))))
+    (build-system ocaml-build-system)
+    (propagated-inputs `(("cstruct" ,ocaml-cstruct)))
+    (home-page "https://github.com/mirage/ocaml-hex/")
+    (synopsis "Minimal library providing hexadecimal converters")
+    (description "Hex is a minimal library providing hexadecimal converters.")
+    (license license:isc)))
-- 
2.13.0


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2017-05-28 13:57 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-05-28 13:55 bug#27116: New ocaml packages 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).