GNU bug report logs - #76582
[PATCH] build-system: asdf: Don't search and replace inputs when unnecessary.

Previous Next

Package: guix-patches;

Reported by: Christopher Baines <mail <at> cbaines.net>

Date: Wed, 26 Feb 2025 10:41:02 UTC

Severity: normal

Tags: patch

Done: Christopher Baines <mail <at> cbaines.net>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Christopher Baines <mail <at> cbaines.net>
Subject: bug#76582: closed (Re: [bug#76582] [PATCH] build-system: asdf:
 Don't search and replace inputs when unnecessary.)
Date: Mon, 03 Mar 2025 14:34:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#76582: [PATCH] build-system: asdf: Don't search and replace inputs when unnecessary.

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 76582 <at> debbugs.gnu.org.

-- 
76582: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=76582
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Christopher Baines <mail <at> cbaines.net>
To: Guillaume Le Vaillant <glv <at> posteo.net>
Cc: 76582-done <at> debbugs.gnu.org
Subject: Re: [bug#76582] [PATCH] build-system: asdf: Don't search and
 replace inputs when unnecessary.
Date: Mon, 03 Mar 2025 14:33:23 +0000
[Message part 3 (text/plain, inline)]
Guillaume Le Vaillant <glv <at> posteo.net> writes:

> Christopher Baines <mail <at> cbaines.net> skribis:
>
>> If the new-name matches the original name, just use the original package.
>> This avoids situations where there are several packages matching the name and
>> the behaviour will be inconsistent, occasionally picking different packages.
>>
>> Since there are multiple glibc packages currently, I'm seeing this behaviour
>> with cl-posix-mqueue and ecl-cl-posix-mqueue, occasionally they'll use the
>> hurd glibc variant.
>>
>> * guix/build-system/asdf.scm (package-with-build-system): Use the original
>> input packages unless the new-name differs.
>>
>> Change-Id: I08a1f3ad1290689b5497d31950ada4dc0bfa3a3a
>> ---
>>  guix/build-system/asdf.scm | 10 +++++++---
>>  1 file changed, 7 insertions(+), 3 deletions(-)
>>
>> diff --git a/guix/build-system/asdf.scm b/guix/build-system/asdf.scm
>> index 26b5a5008a..ad0fb993f6 100644
>> --- a/guix/build-system/asdf.scm
>> +++ b/guix/build-system/asdf.scm
>> @@ -155,9 +155,13 @@ (define* (package-with-build-system from-build-system to-build-system
>>  
>>    (define (find-input-package pkg)
>>      (let* ((name (package-name pkg))
>> -           (new-name (transform-package-name name))
>> -           (pkgs (find-packages-by-name new-name)))
>> -      (if (null? pkgs) #f (list-ref pkgs 0))))
>> +           (new-name (transform-package-name name)))
>> +      (if (string=? name new-name)
>> +          pkg
>> +          (let ((pkgs (find-packages-by-name new-name)))
>> +            (if (null? pkgs)
>> +                #f
>> +                (list-ref pkgs 0))))))
>>  
>>    (define transform
>>      (mlambda (pkg)
>>
>> base-commit: 90ee330bafc5a95493f9cdae2e32ddf740104ebc
>
> Yes, that seems logical. I have not yet tried recompiling packages with
> this patch, but visually it looks good to me.

Thanks for taking a look, with the minimal testing I've done locally it
seems OK, so I've pushed this as
15615db61b106c6e77cfabe042edb9e77d578c95.

Chris
[signature.asc (application/pgp-signature, inline)]
[Message part 5 (message/rfc822, inline)]
From: Christopher Baines <mail <at> cbaines.net>
To: guix-patches <at> gnu.org
Subject: [PATCH] build-system: asdf: Don't search and replace inputs when
 unnecessary.
Date: Wed, 26 Feb 2025 10:38:30 +0000
If the new-name matches the original name, just use the original package.
This avoids situations where there are several packages matching the name and
the behaviour will be inconsistent, occasionally picking different packages.

Since there are multiple glibc packages currently, I'm seeing this behaviour
with cl-posix-mqueue and ecl-cl-posix-mqueue, occasionally they'll use the
hurd glibc variant.

* guix/build-system/asdf.scm (package-with-build-system): Use the original
input packages unless the new-name differs.

Change-Id: I08a1f3ad1290689b5497d31950ada4dc0bfa3a3a
---
 guix/build-system/asdf.scm | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/guix/build-system/asdf.scm b/guix/build-system/asdf.scm
index 26b5a5008a..ad0fb993f6 100644
--- a/guix/build-system/asdf.scm
+++ b/guix/build-system/asdf.scm
@@ -155,9 +155,13 @@ (define* (package-with-build-system from-build-system to-build-system
 
   (define (find-input-package pkg)
     (let* ((name (package-name pkg))
-           (new-name (transform-package-name name))
-           (pkgs (find-packages-by-name new-name)))
-      (if (null? pkgs) #f (list-ref pkgs 0))))
+           (new-name (transform-package-name name)))
+      (if (string=? name new-name)
+          pkg
+          (let ((pkgs (find-packages-by-name new-name)))
+            (if (null? pkgs)
+                #f
+                (list-ref pkgs 0))))))
 
   (define transform
     (mlambda (pkg)

base-commit: 90ee330bafc5a95493f9cdae2e32ddf740104ebc
-- 
2.48.1




This bug report was last modified 80 days ago.

Previous Next


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