nixpkgs/pkgs/development/ocaml-modules/lwt/default.nix
2023-05-26 08:38:21 +02:00

35 lines
932 B
Nix

{ lib, fetchFromGitHub, libev, buildDunePackage
, ocaml, cppo, dune-configurator, ocplib-endian
}:
buildDunePackage rec {
pname = "lwt";
version = "5.6.1";
minimalOCamlVersion = "4.08";
src = fetchFromGitHub {
owner = "ocsigen";
repo = "lwt";
rev = version;
sha256 = "sha256-XstKs0tMwliCyXnP0Vzi5WC27HKJGnATUYtbbQmH1TE=";
};
postPatch = lib.optionalString (lib.versionAtLeast ocaml.version "5.0") ''
substituteInPlace src/core/dune \
--replace "(libraries bytes)" ""
substituteInPlace src/unix/dune \
--replace "libraries bigarray lwt" "libraries lwt"
'';
nativeBuildInputs = [ cppo ];
buildInputs = [ dune-configurator ];
propagatedBuildInputs = [ libev ocplib-endian ];
meta = {
homepage = "https://ocsigen.org/lwt/";
description = "A cooperative threads library for OCaml";
maintainers = [ lib.maintainers.vbgl ];
license = lib.licenses.mit;
};
}