ocamlPackages.rope: 0.6.2 → 0.6.3

This commit is contained in:
Vincent Laporte 2024-05-13 08:34:31 +02:00 committed by Vincent Laporte
parent cfb4ca3234
commit 08e65e472e

View File

@ -1,20 +1,29 @@
{ lib, fetchurl, ocaml, buildDunePackage, benchmark }:
{ lib, fetchurl, fetchpatch, ocaml, buildDunePackage
, version ? if lib.versionAtLeast ocaml.version "5.0" then "0.6.3" else "0.6.2"
, benchmark
}:
lib.throwIf (lib.versionAtLeast ocaml.version "5.0")
"rope is not available for OCaml ${ocaml.version}"
buildDunePackage rec {
buildDunePackage {
pname = "rope";
version = "0.6.2";
inherit version;
minimalOCamlVersion = "4.03";
src = fetchurl {
url = "https://github.com/Chris00/ocaml-rope/releases/download/${version}/rope-${version}.tbz";
sha256 = "15cvfa0s1vjx7gjd07d3fkznilishqf4z4h2q5f20wm9ysjh2h2i";
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";