Subject: [PATCH 19/39] gnu: Add ocaml-ptime.

From: Csepp <[email-masked]>
Date: Mon, 9 Jan 2023 01:35:09 +0100

From: raingloom <[email-masked]>

* gnu/packages/ocaml.scm (ocaml-ptime): New variable.
---
 gnu/packages/ocaml.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 70129a5b6b..52692b40bf 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -3855,6 +3855,38 @@ (define-public ocaml-mirage-clock
 epoch.")
     (license license:isc)))
 
+(define-public ocaml-ptime
+  (package
+  (name "ocaml-ptime")
+  ;; TODO 1.1.0 has some issues, so for now we are stuck with 0.8.5
+  (version "0.8.5")
+  (source
+    (origin
+      (method url-fetch)
+      (uri "https://erratique.ch/software/ptime/releases/ptime-0.8.5.tbz")
+      (sha256
+        (base32
+          "1fxq57xy1ajzfdnvv5zfm7ap2nf49znw5f9gbi4kb9vds942ij27"))))
+  (build-system ocaml-build-system)
+  (arguments
+   `(#:build-flags (list "build" "--with-js_of_ocaml" "true" "--tests" "true")
+     #:phases
+     (modify-phases %standard-phases
+       (delete 'configure))))
+  (propagated-inputs
+   (list ocaml-result js-of-ocaml))
+  (native-inputs
+    (list ocaml-findlib ocamlbuild ocaml-topkg opam))
+  (home-page "https://erratique.ch/software/ptime")
+  (synopsis "POSIX time for OCaml")
+  (description
+    "Ptime offers platform independent POSIX time support in pure OCaml. It
+provides a type to represent a well-defined range of POSIX timestamps with
+picosecond precision, conversion with date-time values, conversion with RFC
+3339 timestamps and pretty printing to a human-readable, locale-independent
+representation.")
+  (license license:isc)))
+
 (define-public ocaml-mirage-unix
   (package
     (name "ocaml-mirage-unix")
-- 
2.38.1