GNU bug report logs - #58384
copy-build-system assumes that strip-flags, strip-directories is a S-exp, but it isn't.

Previous Next

Package: guix;

Reported by: Maxime Devos <maximedevos <at> telenet.be>

Date: Sat, 8 Oct 2022 18:53:01 UTC

Severity: normal

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 58384 in the body.
You can then email your comments to 58384 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#58384; Package guix. (Sat, 08 Oct 2022 18:53:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Maxime Devos <maximedevos <at> telenet.be>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Sat, 08 Oct 2022 18:53:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Maxime Devos <maximedevos <at> telenet.be>
To: bug-guix <at> gnu.org
Subject: copy-build-system assumes that strip-flags, strip-directories is a
 S-exp, but it isn't.
Date: Sat, 8 Oct 2022 20:52:04 +0200
[Message part 1 (text/plain, inline)]
Hi,

In commit 
https://git.savannah.gnu.org/cgit/guix.git/commit/?h=core-updates&id=ccc2658e2a111590ec25e308946e47a24d357785, 
the default 'strip-flags' and 'strip-directories' argument were changed 
from a S-exp to %strip-flags and %strip-directories from (guix 
build-system gnu).

This is fine, except for copy-build doing (sexp->gexp ...) on those, 
even though %strip-flags etc. are G-exps, not S-exps, causing errors like

> ice-9/read.scm:126:4: In procedure read-expr*:
> /gnu/store/abb0wz0223bjsxkw9av768szz955m2xh-openjpeg-data-2021.09.26-builder:1:2504: Unknown # object: "#<"
> builder for `/gnu/store/qbc93ywsbm3bwwiqn7h8fv124i1yqh53-openjpeg-data-2021.09.26.drv' failed with exit code 1
> derivation '/gnu/store/qbc93ywsbm3bwwiqn7h8fv124i1yqh53-openjpeg-data-2021.09.26.drv' offloaded to '141.80.167.174' failed: build of `/gnu/store/qbc93ywsbm3bwwiqn7h8fv124i1yqh53-openjpeg-data-2021.09.26.drv' failed


Changing '(sexp->gexp strip-flags)' to 'strip-flags' and likewise for 
'strip-directories' should fix things (unverified).

Greetings,
Maxime.
[OpenPGP_0x49E3EE22191725EE.asc (application/pgp-keys, attachment)]
[OpenPGP_signature (application/pgp-signature, attachment)]

Information forwarded to bug-guix <at> gnu.org:
bug#58384; Package guix. (Sat, 08 Oct 2022 18:55:02 GMT) Full text and rfc822 format available.

Message #8 received at 58384 <at> debbugs.gnu.org (full text, mbox):

From: Maxime Devos <maximedevos <at> telenet.be>
To: 58384 <at> debbugs.gnu.org
Subject: Re: copy-build-system assumes that strip-flags, strip-directories is
 a S-exp, but it isn't.
Date: Sat, 8 Oct 2022 20:54:03 +0200
[Message part 1 (text/plain, inline)]
(bug on core-updates, not master)
[OpenPGP_0x49E3EE22191725EE.asc (application/pgp-keys, attachment)]
[OpenPGP_signature (application/pgp-signature, attachment)]

Information forwarded to bug-guix <at> gnu.org:
bug#58384; Package guix. (Sun, 09 Oct 2022 09:40:02 GMT) Full text and rfc822 format available.

Message #11 received at 58384 <at> debbugs.gnu.org (full text, mbox):

From: Maxime Devos <maximedevos <at> telenet.be>
To: 58384 <at> debbugs.gnu.org
Cc: Maxime Devos <maximedevos <at> telenet.be>
Subject: [core-updates] build-system: Fix uses of #:strip-flags and
 #:strip-directories.
Date: Sun,  9 Oct 2022 11:39:16 +0200
This fixes a bug introduced in ccc2658e2a111590ec25e308946e47a24d357785,
reported at <https://issues.guix.gnu.org/issue/58384>.

Tested with "./pre-inst-env guix build openjpeg-data".

Fixes: https://issues.guix.gnu.org/issue/58384

* guix/build-system/copy.scm (copy-build): 'strip-flags' and
'#:strip-directories' are G-exps, not S-exps, so don't use sexp->gexp.
* guix/build-system/cmake.scm (copy-build): Likewise.
* guix/build-system/glib-or-gtk.scm
(glib-or-gtk-build,glib-or-gtk-cross-build): Likewise.
* guix/build-system/maven.scm (maven-build): Likewise.
* guix/build-system/meson.scm
(meson-build,meson-cross-build): Likewise.
---
 guix/build-system/cmake.scm       | 4 ++--
 guix/build-system/copy.scm        | 4 ++--
 guix/build-system/glib-or-gtk.scm | 8 ++++----
 guix/build-system/maven.scm       | 4 ++--
 guix/build-system/meson.scm       | 8 ++++----
 5 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/guix/build-system/cmake.scm b/guix/build-system/cmake.scm
index ffd04867a2..effb54f044 100644
--- a/guix/build-system/cmake.scm
+++ b/guix/build-system/cmake.scm
@@ -149,8 +149,8 @@ (define build
                              #:validate-runpath? #$validate-runpath?
                              #:patch-shebangs? #$patch-shebangs?
                              #:strip-binaries? #$strip-binaries?
-                             #:strip-flags #$(sexp->gexp strip-flags)
-                             #:strip-directories #$(sexp->gexp strip-directories))))))
+                             #:strip-flags #$strip-flags
+                             #:strip-directories #$strip-directories)))))
 
   (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
                                                   system #:graft? #f)))
diff --git a/guix/build-system/copy.scm b/guix/build-system/copy.scm
index ea85719286..bf7fcaedba 100644
--- a/guix/build-system/copy.scm
+++ b/guix/build-system/copy.scm
@@ -122,8 +122,8 @@ (define builder
                             #:validate-runpath? #$validate-runpath?
                             #:patch-shebangs? #$patch-shebangs?
                             #:strip-binaries? #$strip-binaries?
-                            #:strip-flags #$(sexp->gexp strip-flags)
-                            #:strip-directories #$(sexp->gexp strip-directories))))))
+                            #:strip-flags #$strip-flags
+                            #:strip-directories #$strip-directories)))))
 
   (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
                                                   system #:graft? #f)))
diff --git a/guix/build-system/glib-or-gtk.scm b/guix/build-system/glib-or-gtk.scm
index a9041bb9f9..f4f431273b 100644
--- a/guix/build-system/glib-or-gtk.scm
+++ b/guix/build-system/glib-or-gtk.scm
@@ -178,9 +178,9 @@ (define build
                                    #:validate-runpath? #$validate-runpath?
                                    #:patch-shebangs? #$patch-shebangs?
                                    #:strip-binaries? #$strip-binaries?
-                                   #:strip-flags #$(sexp->gexp strip-flags)
+                                   #:strip-flags #$strip-flags
                                    #:strip-directories
-                                   #$(sexp->gexp strip-directories))))))
+                                   #$strip-directories)))))
 
 
   (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
@@ -271,9 +271,9 @@ (define %outputs
                            #:make-dynamic-linker-cache? #$make-dynamic-linker-cache?
                            #:patch-shebangs? #$patch-shebangs?
                            #:strip-binaries? #$strip-binaries?
-                           #:strip-flags #$(sexp->gexp strip-flags)
+                           #:strip-flags #$strip-flags
                            #:strip-directories
-                           #$(sexp->gexp strip-directories))))
+                           #$strip-directories)))
 
 
   (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
diff --git a/guix/build-system/maven.scm b/guix/build-system/maven.scm
index c5a26c8754..9a17dea977 100644
--- a/guix/build-system/maven.scm
+++ b/guix/build-system/maven.scm
@@ -183,8 +183,8 @@ (define builder
                        #:validate-runpath? #$validate-runpath?
                        #:patch-shebangs? #$patch-shebangs?
                        #:strip-binaries? #$strip-binaries?
-                       #:strip-flags #$(sexp->gexp strip-flags)
-                       #:strip-directories #$(sexp->gexp strip-directories)))))
+                       #:strip-flags #$strip-flags
+                       #:strip-directories #$strip-directories))))
 
   (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
                                                   system #:graft? #f)))
diff --git a/guix/build-system/meson.scm b/guix/build-system/meson.scm
index e75c1a17cb..ba3ffa6b1c 100644
--- a/guix/build-system/meson.scm
+++ b/guix/build-system/meson.scm
@@ -227,8 +227,8 @@ (define build-phases
                              #:validate-runpath? #$validate-runpath?
                              #:patch-shebangs? #$patch-shebangs?
                              #:strip-binaries? #$strip-binaries?
-                             #:strip-flags #$(sexp->gexp strip-flags)
-                             #:strip-directories #$(sexp->gexp strip-directories)
+                             #:strip-flags #$strip-flags
+                             #:strip-directories #$strip-directories
                              #:elf-directories #$(sexp->gexp elf-directories))))))
 
   (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
@@ -339,8 +339,8 @@ (define build-phases
                        #:validate-runpath? #$validate-runpath?
                        #:patch-shebangs? #$patch-shebangs?
                        #:strip-binaries? #$strip-binaries?
-                       #:strip-flags #$(sexp->gexp strip-flags)
-                       #:strip-directories #$(sexp->gexp strip-directories)
+                       #:strip-flags #$strip-flags
+                       #:strip-directories #$strip-directories
                        #:elf-directories #$(sexp->gexp elf-directories)))))
 
   (mlet %store-monad ((guile (package->derivation (or guile (default-guile))

base-commit: ccc2658e2a111590ec25e308946e47a24d357785
prerequisite-patch-id: 87e197146284fb770478e0c2d73027e68ee3db6d
prerequisite-patch-id: 32ea6453c34258e3ac8a8766aa14ebb5fe1f5f88
-- 
2.37.3





Reply sent to Ludovic Courtès <ludo <at> gnu.org>:
You have taken responsibility. (Sun, 09 Oct 2022 16:55:01 GMT) Full text and rfc822 format available.

Notification sent to Maxime Devos <maximedevos <at> telenet.be>:
bug acknowledged by developer. (Sun, 09 Oct 2022 16:55:01 GMT) Full text and rfc822 format available.

Message #16 received at 58384-done <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Maxime Devos <maximedevos <at> telenet.be>
Cc: 58384-done <at> debbugs.gnu.org
Subject: Re: bug#58384: copy-build-system assumes that strip-flags,
 strip-directories is a S-exp, but it isn't.
Date: Sun, 09 Oct 2022 18:54:30 +0200
Hi,

Maxime Devos <maximedevos <at> telenet.be> skribis:

> This fixes a bug introduced in ccc2658e2a111590ec25e308946e47a24d357785,
> reported at <https://issues.guix.gnu.org/issue/58384>.
>
> Tested with "./pre-inst-env guix build openjpeg-data".
>
> Fixes: https://issues.guix.gnu.org/issue/58384
>
> * guix/build-system/copy.scm (copy-build): 'strip-flags' and
> '#:strip-directories' are G-exps, not S-exps, so don't use sexp->gexp.
> * guix/build-system/cmake.scm (copy-build): Likewise.
> * guix/build-system/glib-or-gtk.scm
> (glib-or-gtk-build,glib-or-gtk-cross-build): Likewise.
> * guix/build-system/maven.scm (maven-build): Likewise.
> * guix/build-system/meson.scm
> (meson-build,meson-cross-build): Likewise.

Oops.  Applied, thanks for the quick fix!

Ludo’.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Mon, 07 Nov 2022 12:24:11 GMT) Full text and rfc822 format available.

This bug report was last modified 2 years and 224 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.