Subject: [bug#60673] [PATCH 15/39] gnu: Add ocaml-ppx-cstruct.

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

From: raingloom <[email-masked]>

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

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index ee4c1cf91a..72cb000fd9 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -4469,6 +4469,28 @@ (define-public ocaml4.07-cstruct
 (define ocaml-cstruct-unix ocaml-cstruct)
 (define ocaml-cstruct-sexp ocaml-cstruct)
 
+(define-public ocaml-ppx-cstruct
+  (package
+    (inherit ocaml-cstruct)
+    (name "ocaml-ppx-cstruct")
+    (properties `((upstream-name . "ppx_cstruct")))
+    (arguments '(#:package "ppx_cstruct"
+                 ;; TODO doesn't find test deps for some reason?
+                 ;; I have no clue why.
+                 #:tests? #f))
+    (propagated-inputs
+     (modify-inputs
+         (package-propagated-inputs ocaml-cstruct)
+       (append ocaml-cstruct
+               ocaml-ppxlib
+               ocaml-sexplib)))
+    (native-inputs
+     (modify-inputs
+         (package-propagated-inputs ocaml-cstruct)
+       (append ocaml-cstruct-sexp
+               ocaml-findlib
+               ocaml-ppx-sexp-conv)))))
+
 (define-public ocaml-hex
   (package
     (name "ocaml-hex")
-- 
2.38.1