From: Guillaume Le Vaillant <glv@posteo.net>
To: Efraim Flashner <efraim@flashner.co.il>
Cc: guix-devel@gnu.org
Subject: Re: Question about sbcl-package->ecl-package
Date: Wed, 16 Oct 2019 16:06:56 +0200 [thread overview]
Message-ID: <87zhi0u6m7.fsf@yamatai> (raw)
In-Reply-To: <20191016124745.GH1014@E5400>
Efraim Flashner skribis:
> On Wed, Oct 16, 2019 at 01:59:01PM +0200, Pierre Neidhardt wrote:
>> I've encountered the same problem a couple of times.
>> If you try to compile ecl-dexador, you'll see it fails because it does
>> not re-use the arguments of sbcl-dexador which patches out a failing
>> test.
>>
>> Something is wrong in sbcl-package->ecl-package.
>> Andy?
>>
>> That said, it's not a very big deal, since the cl- package works for all compilers.
>>
>
> Sounds like the conversion isn't "recursive enough". On a per-package
> basis you can replace the created ecl package with the real one. The
> better option would be to look at how python defines python2- variants,
> which sounds a lot like the problem you're having here.
I suspect the problem comes from the 'rewrite' function used to change
the package inputs. In 'guix/build-system/asdf.scm':
--8<---------------cut here---------------start------------->8---
(define rewrite
(match-lambda
((name content . rest)
(let* ((is-package? (package? content))
(new-content (if is-package? (transform content) content)))
`(,name ,new-content ,@rest)))))
--8<---------------cut here---------------end--------------->8---
Won't '(transform content)' create a new ecl-package for each input
package instead of trying to find the already defined ecl-package?
Maybe it could be replaced by something like:
--8<---------------cut here---------------start------------->8---
(let* ((sbcl-input-name (package-name content))
(ecl-input-name (transform-package-name sbcl-input-name))
(ecl-input-package (find-package ecl-name)))
(if (package? ecl-input-package)
ecl-input-package
(transform content)))
--8<---------------cut here---------------end--------------->8---
However, it's the first time I look at the internals of Guix, so I'm
not sure if this would work or not...
What do you think?
next prev parent reply other threads:[~2019-10-16 14:07 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-10-16 9:26 Question about sbcl-package->ecl-package Guillaume Le Vaillant
2019-10-16 11:59 ` Pierre Neidhardt
2019-10-16 12:47 ` Efraim Flashner
2019-10-16 14:06 ` Guillaume Le Vaillant [this message]
2019-10-17 12:01 ` Guillaume Le Vaillant
2019-10-17 12:20 ` Pierre Neidhardt
2019-10-17 13:09 ` Guillaume Le Vaillant
2019-10-17 13:16 ` Pierre Neidhardt
2019-10-17 13:35 ` Guillaume Le Vaillant
2019-10-17 13:48 ` Pierre Neidhardt
2019-10-17 14:47 ` Guillaume Le Vaillant
2019-10-17 14:54 ` Pierre Neidhardt
2019-10-18 9:22 ` Pierre Neidhardt
2019-10-18 11:55 ` Guillaume Le Vaillant
2019-10-17 13:16 ` Guillaume Le Vaillant
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=87zhi0u6m7.fsf@yamatai \
--to=glv@posteo.net \
--cc=efraim@flashner.co.il \
--cc=guix-devel@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.