all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Ludovic Courtès" <ludo@gnu.org>
To: 61180@debbugs.gnu.org
Cc: "Ludovic Courtès" <ludo@gnu.org>, 60947@debbugs.gnu.org
Subject: [bug#61180] [PATCH] build-system: Always pass #:graft? #f to 'gexp->derivation'.
Date: Mon, 30 Jan 2023 17:08:10 +0100	[thread overview]
Message-ID: <20230130160810.14356-1-ludo@gnu.org> (raw)
In-Reply-To: <87y1pkypo1.fsf@gnu.org>

Fixes <https://issues.guix.gnu.org/60947>.

Fixes a bug whereby packages referred via 'ungexp' in package arguments
would be "double-grafted": 'gexp->derivation' would first replace those
references by references to the grafted package, only to repeat the
grafting process on the result.

Build systems such as 'gnu', 'cmake', and 'pyproject' were already doing
this.  Only the rest of them is affected.

* guix/build-system/cargo.scm (cargo-build): Pass #:graft? #f to
'gexp->derivation'.
* guix/build-system/copy.scm (copy-build): Likewise.
* guix/build-system/dune.scm (dune-build): Likewise.
* guix/build-system/font.scm (font-build): Likewise.
* guix/build-system/guile.scm (guile-build): Likewise.
(guile-cross-build): Likewise.
* guix/build-system/ocaml.scm (ocaml-build): Likewise.
* guix/build-system/ruby.scm (ruby-build): Likewise.
* guix/build-system/scons.scm (scons-build): Likewise.
* guix/build-system/texlive.scm (texlive-build): Likewise.
* guix/build-system/waf.scm (waf-build): Likewise.
---
 guix/build-system/cargo.scm   | 1 +
 guix/build-system/copy.scm    | 1 +
 guix/build-system/dune.scm    | 1 +
 guix/build-system/font.scm    | 1 +
 guix/build-system/guile.scm   | 2 ++
 guix/build-system/ocaml.scm   | 1 +
 guix/build-system/ruby.scm    | 1 +
 guix/build-system/scons.scm   | 1 +
 guix/build-system/texlive.scm | 1 +
 guix/build-system/waf.scm     | 1 +
 10 files changed, 11 insertions(+)

diff --git a/guix/build-system/cargo.scm b/guix/build-system/cargo.scm
index 60c35eed07..912400a191 100644
--- a/guix/build-system/cargo.scm
+++ b/guix/build-system/cargo.scm
@@ -123,6 +123,7 @@ (define builder
   (gexp->derivation name builder
                     #:system system
                     #:target #f
+                    #:graft? #f
                     #:guile-for-build guile))
 
 (define (package-cargo-inputs p)
diff --git a/guix/build-system/copy.scm b/guix/build-system/copy.scm
index 4894ba46fb..42a48b037c 100644
--- a/guix/build-system/copy.scm
+++ b/guix/build-system/copy.scm
@@ -129,6 +129,7 @@ (define builder
     (gexp->derivation name builder
                       #:system system
                       #:target #f
+                      #:graft? #f
                       #:guile-for-build guile)))
 
 (define copy-build-system
diff --git a/guix/build-system/dune.scm b/guix/build-system/dune.scm
index 12100fd8e8..3f81d21441 100644
--- a/guix/build-system/dune.scm
+++ b/guix/build-system/dune.scm
@@ -157,6 +157,7 @@ (define builder
   (gexp->derivation name builder
                     #:system system
                     #:target #f
+                    #:graft? #f
                     #:guile-for-build guile))
 
 (define dune-build-system
diff --git a/guix/build-system/font.scm b/guix/build-system/font.scm
index 74dc80b5db..a99f76c66b 100644
--- a/guix/build-system/font.scm
+++ b/guix/build-system/font.scm
@@ -112,6 +112,7 @@ (define builder
     (gexp->derivation name builder
                       #:system system
                       #:target #f
+                      #:graft? #f
                       #:guile-for-build guile)))
 
 (define font-build-system
diff --git a/guix/build-system/guile.scm b/guix/build-system/guile.scm
index 36a88e181a..ffc892260a 100644
--- a/guix/build-system/guile.scm
+++ b/guix/build-system/guile.scm
@@ -114,6 +114,7 @@ (define builder
     (gexp->derivation name builder
                       #:system system
                       #:target #f
+                      #:graft? #f
                       #:guile-for-build guile)))
 
 (define* (guile-cross-build name
@@ -170,6 +171,7 @@ (define %outputs
     (gexp->derivation name builder
                       #:system system
                       #:target target
+                      #:graft? #f
                       #:guile-for-build guile)))
 
 (define guile-build-system
diff --git a/guix/build-system/ocaml.scm b/guix/build-system/ocaml.scm
index b08985cd4d..921c1f8629 100644
--- a/guix/build-system/ocaml.scm
+++ b/guix/build-system/ocaml.scm
@@ -310,6 +310,7 @@ (define builder
   (gexp->derivation name builder
                     #:system system
                     #:target #f
+                    #:graft? #f
                     #:guile-for-build guile))
 
 (define ocaml-build-system
diff --git a/guix/build-system/ruby.scm b/guix/build-system/ruby.scm
index 342daf7978..0aa273b4f4 100644
--- a/guix/build-system/ruby.scm
+++ b/guix/build-system/ruby.scm
@@ -114,6 +114,7 @@ (define build
     (gexp->derivation name build
                       #:system system
                       #:target #f
+                      #:graft? #f
                       #:modules imported-modules
                       #:guile-for-build guile)))
 
diff --git a/guix/build-system/scons.scm b/guix/build-system/scons.scm
index 7a02fa8a0f..9af24d40f8 100644
--- a/guix/build-system/scons.scm
+++ b/guix/build-system/scons.scm
@@ -121,6 +121,7 @@ (define builder
   (gexp->derivation name builder
                     #:system system
                     #:target #f
+                    #:graft? #f
                     #:guile-for-build guile))
 
 (define scons-build-system
diff --git a/guix/build-system/texlive.scm b/guix/build-system/texlive.scm
index dbb72cd24a..336e192d83 100644
--- a/guix/build-system/texlive.scm
+++ b/guix/build-system/texlive.scm
@@ -182,6 +182,7 @@ (define builder
     (gexp->derivation name builder
                       #:system system
                       #:target #f
+                      #:graft? #f
                       #:substitutable? substitutable?
                       #:guile-for-build guile)))
 
diff --git a/guix/build-system/waf.scm b/guix/build-system/waf.scm
index e8cd5520b8..1d520050f6 100644
--- a/guix/build-system/waf.scm
+++ b/guix/build-system/waf.scm
@@ -111,6 +111,7 @@ (define build
     (gexp->derivation name build
                       #:system system
                       #:target #f
+                      #:graft? #f
                       #:modules imported-modules
                       #:guile-for-build guile)))
 

base-commit: dbf965dd7b76dfa50ee80e037a7404e163b9917c
-- 
2.39.1





  reply	other threads:[~2023-01-30 16:09 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-19 15:45 bug#60947: Two different derivations for ‘guix’ depending on whether grafts are enabled Ludovic Courtès
2023-01-19 16:58 ` Ludovic Courtès
2023-01-30 16:04 ` Ludovic Courtès
2023-01-30 16:08   ` Ludovic Courtès [this message]
2023-02-03 15:28     ` bug#61180: [PATCH] build-system: Always pass #:graft? #f to 'gexp->derivation' Ludovic Courtès
2023-01-30 16:19   ` bug#60947: Two different derivations for ‘guix’ depending on whether grafts are enabled Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230130160810.14356-1-ludo@gnu.org \
    --to=ludo@gnu.org \
    --cc=60947@debbugs.gnu.org \
    --cc=61180@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.