depot/third_party/nixpkgs/pkgs/development/ocaml-modules/rope/default.nix
Default email fa5436e0a7 Project import generated by Copybara.
GitOrigin-RevId: e8057b67ebf307f01bdcc8fba94d94f75039d1f6
2024-06-05 17:53:02 +02:00

33 lines
1 KiB
Nix

{ lib, fetchurl, fetchpatch, ocaml, buildDunePackage
, version ? if lib.versionAtLeast ocaml.version "5.0" then "0.6.3" else "0.6.2"
, benchmark
}:
buildDunePackage {
pname = "rope";
inherit version;
minimalOCamlVersion = "4.03";
src = fetchurl {
url = "https://github.com/Chris00/ocaml-rope/releases/download/${version}/rope-${version}.tbz";
hash = {
"0.6.2" = "sha256:15cvfa0s1vjx7gjd07d3fkznilishqf4z4h2q5f20wm9ysjh2h2i";
"0.6.3" = "sha256-M14fiP9BDiz3WEoMqAJqZaXk4PoZ8Z1YjOk+F97z05Y=";
}."${version}";
};
buildInputs = [ benchmark ] ;
patches = lib.optional (version == "0.6.3") (fetchpatch {
url = "https://github.com/Chris00/ocaml-rope/commit/be53daa18dd3d1450a92881b33c997eafb1dc958.patch";
hash = "sha256-fHJNfD1ph3+QLmVJ8C4hhJ8hvrWIh7D0EL0XhOW2yqQ=";
});
meta = {
homepage = "https://github.com/Chris00/ocaml-rope";
description = "Ropes (heavyweight strings) in OCaml";
license = lib.licenses.lgpl21;
maintainers = with lib.maintainers; [ ];
};
}