summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/ocaml.scm25
1 files changed, 25 insertions, 0 deletions
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 3c072672b7..b9f6bb13df 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -8665,6 +8665,31 @@ Using this package, you can run afl-fuzz in ``persistent mode'', which avoids
 repeated forking and is much faster.")
     (license license:expat)))
 
+(define-public ocaml-monolith
+  (package
+    (name "ocaml-monolith")
+    (version "20210525")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+              (url "https://gitlab.inria.fr/fpottier/monolith")
+              (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "1b6jj4ivl9ni8kba7wls4xsqdy8nm7q9mnx9347jvb99dmmlj5mc"))))
+    (build-system dune-build-system)
+    (arguments `(#:test-target "."))
+    (propagated-inputs (list ocaml-afl-persistent ocaml-pprint ocaml-seq))
+    (home-page "https://gitlab.inria.fr/fpottier/monolith")
+    (synopsis "Framework for testing an OCaml library using afl-fuzz")
+    (description "Monolith offers facilities for testing an OCaml library (for
+instance, a data structure implementation) by comparing it against a reference
+implementation.  It can be used to perform either random testing or fuzz
+testing by using the @code{afl-fuzz} tool.")
+    (license license:lgpl3+)))
+
 (define-public ocaml-pprint
   (package
     (name "ocaml-pprint")