1{
2 lib,
3 fetchFromGitHub,
4 buildDunePackage,
5 ocaml,
6}:
7
8buildDunePackage rec {
9 pname = "bigstring";
10 version = "0.3";
11
12 duneVersion = "3";
13 minimalOCamlVersion = "4.03";
14
15 # Ensure compatibility with OCaml ≥ 5.0
16 preConfigure = lib.optional (lib.versionAtLeast ocaml.version "4.08") ''
17 substituteInPlace src/dune --replace '(libraries bytes bigarray)' ""
18 '';
19
20 src = fetchFromGitHub {
21 owner = "c-cube";
22 repo = "ocaml-bigstring";
23 rev = version;
24 sha256 = "0bkxwdcswy80f6rmx5wjza92xzq4rdqsb4a9fm8aav8bdqx021n8";
25 };
26
27 # Circular dependency with bigstring-unix
28 doCheck = false;
29
30 meta = with lib; {
31 homepage = "https://github.com/c-cube/ocaml-bigstring";
32 description = "Bigstring built on top of bigarrays, and convenient functions";
33 license = licenses.bsd2;
34 maintainers = [ maintainers.alexfmpe ];
35 };
36}