From ec23f200ec4bb500ef619752bc7d9aeb080ae674 Mon Sep 17 00:00:00 2001 From: Jason Conroy Date: Sun, 21 Dec 2025 11:52:40 -0500 Subject: [PATCH] gnu: ocaml: Move ocaml5.3-dune-configurator to module `ocaml5`. * gnu/packages/ocaml.scm (ocaml5.3-dune-configurator): Delete variable. * gnu/packages/ocaml5.scm (ocaml5.3-dune-configurator): New variable. Change-Id: I8d8a0e4687e6bca9b80ca964a8da115fc58f0c6e Signed-off-by: Julien Lepiller --- gnu/packages/ocaml.scm | 15 ++------------- gnu/packages/ocaml5.scm | 31 +++++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 13 deletions(-) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index e446174f93e..91055926cf8 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -1961,7 +1961,7 @@ Descriptions of projects, libraries and executables are provided in (list ocaml-csexp)) (properties `((ocaml4.09-variant . ,(delay ocaml4.09-dune-configurator)) (ocaml5.0-variant . ,(delay ocaml5.0-dune-configurator)) - (ocaml5.3-variant . ,(delay ocaml5.3-dune-configurator)))) + (ocaml5.3-variant . ,(delay ocaml5:ocaml5.3-dune-configurator)))) (synopsis "Dune helper library for gathering system configuration") (description "Dune-configurator is a small library that helps writing OCaml scripts that test features available on the system, in order to generate @@ -1997,17 +1997,6 @@ config.h files for instance. Among other things, dune-configurator allows one t #:findlib ,ocaml5.0-findlib)) (propagated-inputs (list ocaml5.0-csexp)))) -(define-public ocaml5.3-dune-configurator - (package - (inherit dune-configurator) - (name "ocaml5.3-dune-configurator") - (arguments - `(,@(package-arguments dune-configurator) - #:dune ,ocaml5:ocaml5.3-dune-bootstrap - #:ocaml ,ocaml5:ocaml-5.3 - #:findlib ,ocaml5:ocaml5.3-findlib)) - (propagated-inputs (list ocaml5:ocaml5.3-csexp)))) - (define-public dune (package (inherit dune-bootstrap) @@ -2048,7 +2037,7 @@ config.h files for instance. Among other things, dune-configurator allows one t (package (inherit ocaml5:ocaml5.3-dune-bootstrap) (propagated-inputs - (list ocaml5.3-dune-configurator)))) + (list ocaml5:ocaml5.3-dune-configurator)))) (define-public ocaml-pp (package diff --git a/gnu/packages/ocaml5.scm b/gnu/packages/ocaml5.scm index 43dc151ec9e..6f2c7c554b3 100644 --- a/gnu/packages/ocaml5.scm +++ b/gnu/packages/ocaml5.scm @@ -248,6 +248,37 @@ To avoid a dependency on a particular S-expression library, the only module of this library is parameterised by the type of S-expressions.") (license license:expat))) +(define-public ocaml5.3-dune-configurator + (package + (inherit ocaml5.3-dune-bootstrap) + (name "ocaml5.3-dune-configurator") + (build-system dune-build-system) + (arguments + `(#:package "dune-configurator" + #:dune ,ocaml5.3-dune-bootstrap + ;; require ppx_expect + #:tests? #f + #:phases (modify-phases %standard-phases + ;; When building dune, these directories are normally removed after + ;; the bootstrap. + (add-before 'build 'remove-vendor + (lambda _ + (delete-file-recursively "vendor/csexp") + (delete-file-recursively "vendor/pp")))))) + (propagated-inputs (list ocaml5.3-csexp)) + (synopsis "Dune helper library for gathering system configuration") + (description + "Dune-configurator is a small library that helps writing +OCaml scripts that test features available on the system, in order to generate +config.h files for instance. Among other things, dune-configurator allows one to: + +@itemize +@item test if a C program compiles +@item query pkg-config +@item import #define from OCaml header files +@item generate config.h file +@end itemize"))) + (define-public ocaml5.3-findlib (package (name "ocaml5.3-findlib")