nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 fetchFromGitHub,
4 stdenv,
5 findlib,
6 ocaml,
7 ocamlbuild,
8}:
9
10stdenv.mkDerivation rec {
11 pname = "ocaml${ocaml.version}-sosa";
12 version = "0.3.0";
13
14 src = fetchFromGitHub {
15 owner = "hammerlab";
16 repo = "sosa";
17 rev = "sosa.${version}";
18 sha256 = "053hdv6ww0q4mivajj4iyp7krfvgq8zajq9d8x4mia4lid7j0dyk";
19 };
20
21 postPatch = lib.optionalString (lib.versionAtLeast ocaml.version "4.07") ''
22 for p in functors list_of of_mutable
23 do
24 substituteInPlace src/lib/$p.ml --replace Pervasives. Stdlib.
25 done
26 '';
27
28 nativeBuildInputs = [
29 ocaml
30 ocamlbuild
31 findlib
32 ];
33
34 strictDeps = true;
35
36 buildPhase = "make build";
37
38 createFindlibDestdir = true;
39
40 doCheck = true;
41
42 meta = {
43 homepage = "http://www.hammerlab.org/docs/sosa/master/index.html";
44 description = "Sane OCaml String API";
45 license = lib.licenses.isc;
46 maintainers = [ lib.maintainers.alexfmpe ];
47 broken = !(lib.versionOlder ocaml.version "4.02");
48 };
49}