33 lines
985 B
Nix
Raw Normal View History

{ lib, fetchzip, pkg-config, ncurses, libev, buildDunePackage, ocaml
2021-02-08 09:04:12 +01:00
, cppo, dune-configurator, ocaml-migrate-parsetree, ocplib-endian, result
, mmap, seq
2021-02-08 09:04:12 +01:00
, ocaml-syntax-shims
2016-11-21 19:20:43 +01:00
}:
let inherit (lib) optional versionAtLeast; in
buildDunePackage rec {
pname = "lwt";
2021-02-08 09:04:12 +01:00
version = "5.4.0";
useDune2 = true;
2015-02-16 11:23:43 +01:00
src = fetchzip {
url = "https://github.com/ocsigen/${pname}/archive/${version}.tar.gz";
2021-02-08 09:04:12 +01:00
sha256 = "1ay1zgadnw19r9hl2awfjr22n37l7rzxd9v73pjbahavwm2ay65d";
};
nativeBuildInputs = [ pkg-config ];
2021-02-08 09:04:12 +01:00
buildInputs = [ cppo dune-configurator ocaml-migrate-parsetree ]
++ optional (!versionAtLeast ocaml.version "4.08") ocaml-syntax-shims
++ optional (!versionAtLeast ocaml.version "4.07") ncurses;
2019-11-13 17:13:05 +00:00
propagatedBuildInputs = [ libev mmap ocplib-endian seq result ];
2018-03-25 18:26:39 +00:00
meta = {
homepage = "https://ocsigen.org/lwt/";
description = "A cooperative threads library for OCaml";
maintainers = [ lib.maintainers.vbgl ];
license = lib.licenses.mit;
};
}