From 9ec825fd06f32757f45f31880e7b238bba769884 Mon Sep 17 00:00:00 2001 Message-Id: <9ec825fd06f32757f45f31880e7b238bba769884.1694806866.git.striness@tilde.club> In-Reply-To: <73b2dfe98591073104fd069622ede2acab0c7655.1694806866.git.striness@tilde.club> References: <73b2dfe98591073104fd069622ede2acab0c7655.1694806866.git.striness@tilde.club> From: Ulf Herrman Date: Fri, 15 Sep 2023 08:45:39 -0500 Subject: [PATCH 4/5] build-system: {cargo,dune,ocaml,scons}: use drv guile-for-build. These all pass a guile *package* to gexp->derivation in their bag->derivation builders, but it wants a derivation. * guix/build-system/cargo.scm (cargo-build): use package->derivation to get guile for build. * guix/build-system/dune.scm (dune-build): same. * guix/build-system/ocaml.scm (ocaml-build): same. * guix/build-system/scons.scm (scons-build): same. --- guix/build-system/cargo.scm | 12 +++++++----- guix/build-system/dune.scm | 14 ++++++++------ guix/build-system/ocaml.scm | 13 ++++++++----- guix/build-system/scons.scm | 13 ++++++++----- 4 files changed, 31 insertions(+), 21 deletions(-) diff --git a/guix/build-system/cargo.scm b/guix/build-system/cargo.scm index 84efea019e..30d6d2ead9 100644 --- a/guix/build-system/cargo.scm +++ b/guix/build-system/cargo.scm @@ -120,11 +120,13 @@ (define* (cargo-build name inputs (map search-path-specification->sexp search-paths)))))) - (gexp->derivation name builder - #:system system - #:target #f - #:graft? #f - #:guile-for-build guile)) + (mlet %store-monad ((guile (package->derivation (or guile (default-guile)) + system #:graft? #f))) + (gexp->derivation name builder + #:system system + #:target #f + #:graft? #f + #:guile-for-build guile))) (define (package-cargo-inputs p) (apply diff --git a/guix/build-system/dune.scm b/guix/build-system/dune.scm index bad523b9eb..1bf93361aa 100644 --- a/guix/build-system/dune.scm +++ b/guix/build-system/dune.scm @@ -21,6 +21,7 @@ (define-module (guix build-system dune) #:use-module (guix store) + #:use-module (guix monads) #:use-module (guix utils) #:use-module (guix gexp) #:use-module (guix search-paths) @@ -154,12 +155,13 @@ (define* (dune-build name inputs #:strip-binaries? #$strip-binaries? #:strip-flags #$strip-flags #:strip-directories #$strip-directories)))) - - (gexp->derivation name builder - #:system system - #:target #f - #:graft? #f - #:guile-for-build guile)) + (mlet %store-monad ((guile (package->derivation (or guile (default-guile)) + system #:graft? #f))) + (gexp->derivation name builder + #:system system + #:target #f + #:graft? #f + #:guile-for-build guile))) (define dune-build-system (build-system diff --git a/guix/build-system/ocaml.scm b/guix/build-system/ocaml.scm index 91dda0c391..20327295f9 100644 --- a/guix/build-system/ocaml.scm +++ b/guix/build-system/ocaml.scm @@ -21,6 +21,7 @@ (define-module (guix build-system ocaml) #:use-module (guix store) #:use-module (guix utils) #:use-module (guix gexp) + #:use-module (guix monads) #:use-module (guix search-paths) #:use-module (guix build-system) #:use-module (guix build-system gnu) @@ -309,11 +310,13 @@ (define* (ocaml-build name inputs #:strip-flags #$strip-flags #:strip-directories #$strip-directories)))) - (gexp->derivation name builder - #:system system - #:target #f - #:graft? #f - #:guile-for-build guile)) + (mlet %store-monad ((guile (package->derivation (or guile (default-guile)) + system #:graft? #f))) + (gexp->derivation name builder + #:system system + #:target #f + #:graft? #f + #:guile-for-build guile))) (define ocaml-build-system (build-system diff --git a/guix/build-system/scons.scm b/guix/build-system/scons.scm index 95c75c817f..e504db90c2 100644 --- a/guix/build-system/scons.scm +++ b/guix/build-system/scons.scm @@ -22,6 +22,7 @@ (define-module (guix build-system scons) #:use-module (guix packages) #:use-module (guix monads) #:use-module (guix gexp) + #:use-module (guix store) #:use-module (guix search-paths) #:use-module (guix build-system) #:use-module (guix build-system gnu) @@ -121,11 +122,13 @@ (define* (scons-build name inputs (map search-path-specification->sexp search-paths))))))) - (gexp->derivation name builder - #:system system - #:target #f - #:graft? #f - #:guile-for-build guile)) + (mlet %store-monad ((guile (package->derivation (or guile (default-guile)) + system #:graft? #f))) + (gexp->derivation name builder + #:system system + #:target #f + #:graft? #f + #:guile-for-build guile))) (define scons-build-system (build-system -- 2.40.1