1{
2 lib,
3 fetchFromGitHub,
4 buildDunePackage,
5 ocaml,
6}:
7
8buildDunePackage rec {
9 pname = "landmarks";
10 version = "1.5";
11 minimalOCamlVersion = "4.08";
12
13 src = fetchFromGitHub {
14 owner = "LexiFi";
15 repo = "landmarks";
16 tag = "v${version}";
17 hash = "sha256-eIq02D19OzDOrMDHE1Ecrgk+T6s9vj2X6B2HY+z+K8Q=";
18 };
19
20 doCheck = lib.versionAtLeast ocaml.version "4.08" && lib.versionOlder ocaml.version "5.0";
21
22 meta = {
23 inherit (src.meta) homepage;
24 description = "Simple Profiling Library for OCaml";
25 longDescription = ''
26 Landmarks is a simple profiling library for OCaml. It provides
27 primitives to measure time spent in portion of instrumented code. The
28 instrumentation of the code may either done by hand, automatically or
29 semi-automatically using the ppx pepreprocessor (see landmarks-ppx package).
30 '';
31 changelog = "https://raw.githubusercontent.com/LexiFi/landmarks/refs/tags/v${version}/CHANGES.md";
32 maintainers = with lib.maintainers; [ kenran ];
33 license = lib.licenses.mit;
34 };
35}