summary refs log tree commit diff
path: root/pkgs/development/ocaml-modules
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/ocaml-modules')
-rw-r--r--pkgs/development/ocaml-modules/ezjsonm/default.nix15
-rw-r--r--pkgs/development/ocaml-modules/lwt/default.nix11
-rw-r--r--pkgs/development/ocaml-modules/lwt_log/default.nix24
3 files changed, 39 insertions, 11 deletions
diff --git a/pkgs/development/ocaml-modules/ezjsonm/default.nix b/pkgs/development/ocaml-modules/ezjsonm/default.nix
index aec6851e12bc..1dcafe4c6a48 100644
--- a/pkgs/development/ocaml-modules/ezjsonm/default.nix
+++ b/pkgs/development/ocaml-modules/ezjsonm/default.nix
@@ -1,20 +1,21 @@
-{ stdenv, fetchzip, ocaml, findlib, ocamlbuild, jsonm, hex, sexplib, lwt }:
+{ stdenv, fetchzip, ocaml, findlib, jbuilder, jsonm, hex, sexplib }:
 
-let version = "0.4.3"; in
+let version = "0.6.0"; in
 
 stdenv.mkDerivation {
-  name = "ocaml-ezjsonm-${version}";
+  name = "ocaml${ocaml.version}-ezjsonm-${version}";
 
   src = fetchzip {
     url = "https://github.com/mirage/ezjsonm/archive/${version}.tar.gz";
-    sha256 = "1y6p3ga6vj1wx5dyns7hjgd0qgrrn2hnn323a7y5didgci5pybls";
+    sha256 = "18g64lhai0bz65b9fil12vlgfpwa9b5apj7x6d7n4zzm18qfazvj";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild lwt ];
+  buildInputs = [ ocaml findlib jbuilder ];
   propagatedBuildInputs = [ jsonm hex sexplib ];
-  createFindlibDestdir = true;
 
-  configureFlags = "--enable-lwt";
+  buildPhase = "jbuilder build -p ezjsonm";
+
+  inherit (jbuilder) installPhase;
 
   meta = {
     description = "An easy interface on top of the Jsonm library";
diff --git a/pkgs/development/ocaml-modules/lwt/default.nix b/pkgs/development/ocaml-modules/lwt/default.nix
index 37bcff375ea9..345ca037fec9 100644
--- a/pkgs/development/ocaml-modules/lwt/default.nix
+++ b/pkgs/development/ocaml-modules/lwt/default.nix
@@ -1,6 +1,8 @@
 { stdenv, fetchzip, pkgconfig, ncurses, libev, jbuilder
-, ocaml, findlib, camlp4, cppo
+, ocaml, findlib, cppo
 , ocaml-migrate-parsetree, ppx_tools_versioned, result
+, withP4 ? !stdenv.lib.versionAtLeast ocaml.version "4.07"
+, camlp4 ? null
 }:
 
 stdenv.mkDerivation rec {
@@ -13,12 +15,13 @@ stdenv.mkDerivation rec {
   };
 
   preConfigure = ''
-    ocaml src/util/configure.ml -use-libev true -use-camlp4 true
+    ocaml src/util/configure.ml -use-libev true -use-camlp4 ${if withP4 then "true" else "false"}
   '';
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ ncurses ocaml findlib jbuilder camlp4 cppo
-    ocaml-migrate-parsetree ppx_tools_versioned ];
+  buildInputs = [ ncurses ocaml findlib jbuilder cppo
+    ocaml-migrate-parsetree ppx_tools_versioned ]
+  ++ stdenv.lib.optional withP4 camlp4;
   propagatedBuildInputs = [ libev result ];
 
   installPhase = ''
diff --git a/pkgs/development/ocaml-modules/lwt_log/default.nix b/pkgs/development/ocaml-modules/lwt_log/default.nix
new file mode 100644
index 000000000000..bdabe677a858
--- /dev/null
+++ b/pkgs/development/ocaml-modules/lwt_log/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, ocaml, findlib, jbuilder, lwt }:
+
+stdenv.mkDerivation rec {
+  version = "1.0.0";
+  name = "ocaml${ocaml.version}-lwt_log-${version}";
+
+  inherit (lwt) src;
+
+  buildInputs = [ ocaml findlib jbuilder ];
+
+  propagatedBuildInputs = [ lwt ];
+
+  buildPhase = "jbuilder build -p lwt_log";
+
+  inherit (jbuilder) installPhase;
+
+  meta = {
+    description = "Lwt logging library (deprecated)";
+    homepage = "https://github.com/aantron/lwt_log";
+    license = stdenv.lib.licenses.lgpl21;
+    inherit (ocaml.meta) platforms;
+    maintainers = [ stdenv.lib.maintainers.vbgl ];
+  };
+}