summary refs log tree commit diff
path: root/pkgs/development/ocaml-modules/digestif/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/ocaml-modules/digestif/default.nix')
-rw-r--r--pkgs/development/ocaml-modules/digestif/default.nix38
1 files changed, 38 insertions, 0 deletions
diff --git a/pkgs/development/ocaml-modules/digestif/default.nix b/pkgs/development/ocaml-modules/digestif/default.nix
new file mode 100644
index 00000000000..dba0bcb9269
--- /dev/null
+++ b/pkgs/development/ocaml-modules/digestif/default.nix
@@ -0,0 +1,38 @@
+{ lib, ocaml, fetchurl, buildDunePackage
+, pkg-config, which
+, bigarray-compat, eqaf, stdlib-shims
+, alcotest, astring, bos, findlib, fpath
+}:
+
+buildDunePackage rec {
+  pname = "digestif";
+  version = "1.1.0";
+
+  useDune2 = true;
+
+  src = fetchurl {
+    url = "https://github.com/mirage/digestif/releases/download/v${version}/digestif-v${version}.tbz";
+    sha256 = "01gwkbrznci4xdcbww4ysgsciz2qs0r8jsmhp0siwbcgcrf1jjv5";
+  };
+
+  nativeBuildInputs = [ findlib which ];
+  buildInputs = [ ocaml ];
+
+  propagatedBuildInputs = [ bigarray-compat eqaf stdlib-shims ];
+
+  strictDeps = !doCheck;
+
+  checkInputs = [ alcotest astring bos fpath ];
+  doCheck = lib.versionAtLeast ocaml.version "4.05";
+
+  postCheck = ''
+    ocaml -I ${findlib}/lib/ocaml/${ocaml.version}/site-lib/ test/test_runes.ml
+  '';
+
+  meta = {
+    description = "Simple hash algorithms in OCaml";
+    homepage = "https://github.com/mirage/digestif";
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.vbgl ];
+  };
+}