Subject: [PATCH 07/39] gnu: Add ocaml-functoria-runtime

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

From: raingloom <[email-masked]>

* gnu/packages/ocaml.scm (mirage-version, mirage-origin,
  ocaml-functoria-runtime): New variables.
---
 gnu/packages/ocaml.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 034924d9ff..1cc930292c 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -3682,6 +3682,41 @@ (define-public ocaml-emile
 according RFC2047.")
     (license license:expat)))
 
+(define-public ocaml-functoria-runtime
+  (package
+    (name "ocaml-functoria-runtime")
+    (version "4.3.2")
+    (source
+     (origin
+       (method git-fetch)
+       (uri
+        (git-reference
+         (url "https://github.com/mirage/mirage/")
+         (commit (string-append "v" version))))
+       ;; TODO this origin is used by multiple packages, so what should the name
+       ;; field say?
+       (file-name (git-file-name "mirage" version))
+       (sha256
+        (base32
+         "151adbcn4zmhxgh4g10flamlgwd90pppjvk0lhy2p3yxyn55f914"))))
+    (build-system dune-build-system)
+    (arguments
+     '(#:package "functoria-runtime"
+       ;; TODO
+       ;; again, requires opam for tests, which needs network access.
+       ;; most other tests seem to pass.
+       #:tests? #f))
+    (propagated-inputs
+     (list ocaml-cmdliner ocaml-fmt ocaml-logs ocaml-bos ocaml-ipaddr
+           ocaml-emile ocaml-uri))
+    (native-inputs
+     (list ocaml-alcotest))
+    (home-page "https://github.com/mirage/mirage")
+    (synopsis "Runtime support library for functoria-generated code")
+    (description
+     "This is the runtime support library for code generated by functoria.")
+    (license license:isc)))
+
 (define-public ocaml-ocurl
   (package
     (name "ocaml-ocurl")
-- 
2.38.1