diff options
Diffstat (limited to 'pkgs')
-rw-r--r-- | pkgs/development/ocaml-modules/csv/default.nix | 28 |
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"; |