guix_mirror_bot pushed a commit to branch ocaml-team
in repository guix.

commit c78623b382a1365937c4d25d56b8c2095dd7d6a2
Author: Jason Conroy <[email protected]>
AuthorDate: Sun Dec 21 11:31:34 2025 -0500

    gnu: ocaml: Move ocaml5.3-dune-bootstrap to module `ocaml5`.
    
    * gnu/packages/ocaml.scm (ocaml5.3-dune-bootstrap): Delete variable.
    * gnu/packages/ocaml5.scm (ocaml5.3-dune-bootstrap): New variable.
    
    Change-Id: I3f3e453e15638e36afbe7fd7bd920bc5fa328d06
    Signed-off-by: Julien Lepiller <[email protected]>
---
 gnu/packages/ocaml.scm  | 11 ++++-------
 gnu/packages/ocaml5.scm | 37 +++++++++++++++++++++++++++++++++++++
 2 files changed, 41 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 46d1dfecad..81eba200ff 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -1939,9 +1939,6 @@ Descriptions of projects, libraries and executables are 
provided in
 (define-public ocaml5.0-dune-bootstrap
   (package-with-ocaml5.0 dune-bootstrap))
 
-(define-public ocaml5.3-dune-bootstrap
-  (package-with-ocaml5.3 dune-bootstrap))
-
 (define-public dune-configurator
   (package
     (inherit dune-bootstrap)
@@ -2006,7 +2003,7 @@ config.h files for instance.  Among other things, 
dune-configurator allows one t
     (name "ocaml5.3-dune-configurator")
     (arguments
      `(,@(package-arguments dune-configurator)
-       #:dune ,ocaml5.3-dune-bootstrap
+       #:dune ,ocaml5:ocaml5.3-dune-bootstrap
        #:ocaml ,ocaml5:ocaml-5.3
        #:findlib ,ocaml5:ocaml5.3-findlib))
     (propagated-inputs (list ocaml5.3-csexp))))
@@ -2049,7 +2046,7 @@ config.h files for instance.  Among other things, 
dune-configurator allows one t
 
 (define-public ocaml5.3-dune
   (package
-    (inherit ocaml5.3-dune-bootstrap)
+    (inherit ocaml5:ocaml5.3-dune-bootstrap)
     (propagated-inputs
      (list ocaml5.3-dune-configurator))))
 
@@ -2228,7 +2225,7 @@ module of this library is parameterised by the type of 
S-expressions.")
      `(#:ocaml ,ocaml5:ocaml-5.3
        #:findlib ,ocaml5:ocaml5.3-findlib
        ,@(substitute-keyword-arguments (package-arguments ocaml-csexp)
-           ((#:dune _) ocaml5.3-dune-bootstrap))))
+           ((#:dune _) ocaml5:ocaml5.3-dune-bootstrap))))
     (propagated-inputs
      `(("ocaml-result" ,ocaml5.3-result)))))
 
@@ -2383,7 +2380,7 @@ defined in this library.")
     (inherit ocaml-result)
     (name "ocaml5.3-result")
     (arguments
-     `(#:dune ,ocaml5.3-dune-bootstrap
+     `(#:dune ,ocaml5:ocaml5.3-dune-bootstrap
        #:ocaml ,ocaml5:ocaml-5.3
        #:findlib ,ocaml5:ocaml5.3-findlib))))
 
diff --git a/gnu/packages/ocaml5.scm b/gnu/packages/ocaml5.scm
index 4288985c17..6e81f11d42 100644
--- a/gnu/packages/ocaml5.scm
+++ b/gnu/packages/ocaml5.scm
@@ -60,6 +60,7 @@
   #:use-module ((guix build-system ocaml)
                 #:select ((ocaml5-build-system . ocaml-build-system)))
   #:use-module (guix build-system gnu)
+  #:use-module (guix gexp)
   #:use-module (guix git-download)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages))
@@ -144,6 +145,42 @@ functional, imperative and object-oriented styles of 
programming.")
                (base32
                 "05jhy9zn53v12rn3sg3vllqf5blv1gp7f06803npimc58crxy6rv"))))))
 
+(define-public ocaml5.3-dune-bootstrap
+  (package
+    (name "ocaml5.3-dune")
+    (version "3.19.1")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                     (url "https://github.com/ocaml/dune";)
+                     (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "01ys792jnld5yihhyirwkk4jlqm59bk0vrqjvvk5xjn8pp26vryq"))))
+    (build-system ocaml-build-system)
+    (arguments
+     `(#:tests? #f; require odoc
+       #:make-flags ,#~(list "release"
+                             (string-append "PREFIX=" #$output)
+                             (string-append "LIBDIR=" #$output
+                                            "/lib/ocaml/site-lib"))
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'configure
+           (lambda* (#:key outputs #:allow-other-keys)
+             (mkdir-p "src/dune")
+             (invoke "./configure")
+             #t)))))
+    (home-page "https://github.com/ocaml/dune";)
+    (synopsis "OCaml build system")
+    (description "Dune is a build system for OCaml.  It provides a consistent
+experience and takes care of the low-level details of OCaml compilation.
+Descriptions of projects, libraries and executables are provided in
+@file{dune} files following an s-expression syntax.")
+    (properties '((hidden? . #t)))
+    (license license:expat)))
+
 (define-public ocaml5.3-findlib
   (package
     (name "ocaml5.3-findlib")

Reply via email to