about summary refs log tree commit diff
path: root/pkgs/development/ocaml-modules/csv/default.nix
diff options
context:
space:
mode:
authorVincent Laporte <Vincent.Laporte@gmail.com>2017-07-12 20:24:54 +0200
committerVincent Laporte <Vincent.Laporte@gmail.com>2017-07-12 20:45:02 +0200
commit574f3c3bfef49c682490e065b8f93e93ed49038b (patch)
tree27a82dfc0bb2d3a4100d0eb7e49a8feaa470d7d5 /pkgs/development/ocaml-modules/csv/default.nix
parent6620e007f48a526544d59b949eae8143a66cb597 (diff)
ocamlPackages.csv: 1.5 -> 1.7
Diffstat (limited to 'pkgs/development/ocaml-modules/csv/default.nix')
-rw-r--r--pkgs/development/ocaml-modules/csv/default.nix28
1 files changed, 22 insertions, 6 deletions
diff --git a/pkgs/development/ocaml-modules/csv/default.nix b/pkgs/development/ocaml-modules/csv/default.nix
index 4bb8f8ace9c05..751d40ff706d0 100644
--- a/pkgs/development/ocaml-modules/csv/default.nix
+++ b/pkgs/development/ocaml-modules/csv/default.nix
@@ -1,19 +1,35 @@
-{ stdenv, fetchzip, ocaml, findlib, ocamlbuild }:
+{ stdenv, fetchzip, ocaml, findlib, ocamlbuild, ocaml_lwt }:
+
+let param =
+  if stdenv.lib.versionAtLeast ocaml.version "4.2"
+  then {
+    version = "1.7";
+    url = https://math.umons.ac.be/anum/software/csv/csv-1.7.tar.gz;
+    sha256 = "1mmcjiiz0jppgipavpph5kn04xcpalw4scbjrw2z3drghvr3qqwf";
+    lwtSupport = true;
+  } else {
+    version = "1.5";
+    url = https://github.com/Chris00/ocaml-csv/releases/download/1.5/csv-1.5.tar.gz;
+    sha256 = "1ca7jgg58j24pccs5fshis726s06fdcjshnwza5kwxpjgdbvc63g";
+    lwtSupport = false;
+  };
+in
 
 stdenv.mkDerivation {
 
-  name = "ocaml-csv-1.5";
+  name = "ocaml${ocaml.version}-csv-${param.version}";
 
   src = fetchzip {
-    url = https://github.com/Chris00/ocaml-csv/releases/download/1.5/csv-1.5.tar.gz;
-    sha256 = "1ca7jgg58j24pccs5fshis726s06fdcjshnwza5kwxpjgdbvc63g";
+    inherit (param) url sha256;
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild ];
+  buildInputs = [ ocaml findlib ocamlbuild ]
+  ++ stdenv.lib.optional param.lwtSupport ocaml_lwt;
 
   createFindlibDestdir = true;
 
-  configurePhase = "ocaml setup.ml -configure --prefix $out --enable-tests";
+  configurePhase = "ocaml setup.ml -configure --prefix $out --enable-tests"
+  + stdenv.lib.optionalString param.lwtSupport " --enable-lwt";
 
   buildPhase = "ocaml setup.ml -build";