Subject: [bug#64249] [PATCH v9 21/34] gnu: Add ocaml-junit.

From: Julien Lepiller <[email-masked]>
Date: Wed, 10 Jan 2024 08:43:22 +0100

From: Arnaud DABY-SEESARAM <[email-masked]>

* gnu/packages/ocaml.scm (ocaml-junit): New variable.

Change-Id: I69fd4302b0a178765a79a72801eed694b3bd3ebd
---
 gnu/packages/ocaml.scm | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 49d6ea9f4d..93da7dab2c 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -1618,6 +1618,36 @@ (define-public ocaml-ounit
 other XUnit testing frameworks.")
     (license license:expat)))
 
+(define-public ocaml-junit
+  (package
+    (name "ocaml-junit")
+    (version "2.0.2")
+    (home-page "https://github.com/Khady/ocaml-junit")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+              (url home-page)
+              (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1cam7zzarrh9p1l5m3ba3h5rkh9mhark8j37rjgw35a66qd0gds1"))))
+    (build-system dune-build-system)
+    (arguments
+     `(#:package "junit"
+       #:phases (modify-phases %standard-phases
+                  (add-before 'build 'dune-subst
+                    (lambda _
+                      (invoke "dune" "subst") #t)))))
+    (properties `((upstream-name . "junit")))
+    (propagated-inputs (list ocaml-ounit ocaml-ptime ocaml-tyxml ocaml-odoc))
+    (synopsis "JUnit XML reports generation library")
+    (description "Ocaml-junit is a package for the creation of JUnit XML
+reports.  It provides a typed API to produce valid reports.  They are supposed
+to be accepted by Jenkins.")
+    ;; with OCaml linking exception
+    (license license:gpl3+)))
+
 (define-public camlzip
   (package
     (name "camlzip")
-- 
2.41.0