1{
2 lib,
3 fetchFromGitHub,
4 stdenv,
5 findlib,
6 ocaml,
7 lem,
8}:
9
10lib.throwIfNot (lib.versionAtLeast ocaml.version "4.07")
11 "linksem is not available for OCaml ${ocaml.version}"
12
13 stdenv.mkDerivation
14 rec {
15 pname = "ocaml${ocaml.version}-linksem";
16 version = "0.8";
17
18 src = fetchFromGitHub {
19 owner = "rems-project";
20 repo = "linksem";
21 rev = version;
22 hash = "sha256-7/YfDK3TruKCckMzAPLRrwBkHRJcX1S+AzXHWRxkZPA=";
23 };
24
25 nativeBuildInputs = [
26 findlib
27 ocaml
28 ];
29
30 propagatedBuildInputs = [ lem ];
31
32 createFindlibDestdir = true;
33
34 meta = with lib; {
35 homepage = "https://github.com/rems-project/linksem";
36 description = "Formalisation of substantial parts of ELF linking and DWARF debug information";
37 maintainers = with maintainers; [ genericnerdyusername ];
38 license = licenses.bsd2;
39 platforms = ocaml.meta.platforms;
40 };
41 }