python313Packages.traits: fix build (#373698)
[NixPkgs.git] / pkgs / development / ocaml-modules / sosa / default.nix
blobded25d88f58e351012211c057293a4d65c41c8dc
2   lib,
3   fetchFromGitHub,
4   stdenv,
5   findlib,
6   ocaml,
7   ocamlbuild,
8 }:
10 lib.throwIf (lib.versionOlder ocaml.version "4.02")
11   "sosa is not available for OCaml ${ocaml.version}"
13   stdenv.mkDerivation
14   rec {
15     pname = "ocaml${ocaml.version}-sosa";
16     version = "0.3.0";
18     src = fetchFromGitHub {
19       owner = "hammerlab";
20       repo = "sosa";
21       rev = "sosa.${version}";
22       sha256 = "053hdv6ww0q4mivajj4iyp7krfvgq8zajq9d8x4mia4lid7j0dyk";
23     };
25     postPatch = lib.optionalString (lib.versionAtLeast ocaml.version "4.07") ''
26       for p in functors list_of of_mutable
27       do
28         substituteInPlace src/lib/$p.ml --replace Pervasives. Stdlib.
29       done
30     '';
32     nativeBuildInputs = [
33       ocaml
34       ocamlbuild
35       findlib
36     ];
38     strictDeps = true;
40     buildPhase = "make build";
42     createFindlibDestdir = true;
44     doCheck = true;
46     meta = with lib; {
47       homepage = "http://www.hammerlab.org/docs/sosa/master/index.html";
48       description = "Sane OCaml String API";
49       license = licenses.isc;
50       maintainers = [ maintainers.alexfmpe ];
51     };
52   }