[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Question about sbcl-package->ecl-package
From: |
Guillaume Le Vaillant |
Subject: |
Re: Question about sbcl-package->ecl-package |
Date: |
Wed, 16 Oct 2019 16:06:56 +0200 |
User-agent: |
mu4e 1.2.0; emacs 26.3 |
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?
- Question about sbcl-package->ecl-package, Guillaume Le Vaillant, 2019/10/16
- Re: Question about sbcl-package->ecl-package, Pierre Neidhardt, 2019/10/16
- Re: Question about sbcl-package->ecl-package, Efraim Flashner, 2019/10/16
- Re: Question about sbcl-package->ecl-package,
Guillaume Le Vaillant <=
- Re: Question about sbcl-package->ecl-package, Guillaume Le Vaillant, 2019/10/17
- Re: Question about sbcl-package->ecl-package, Pierre Neidhardt, 2019/10/17
- Re: Question about sbcl-package->ecl-package, Guillaume Le Vaillant, 2019/10/17
- Re: Question about sbcl-package->ecl-package, Guillaume Le Vaillant, 2019/10/17
- Re: Question about sbcl-package->ecl-package, Pierre Neidhardt, 2019/10/17
- Re: Question about sbcl-package->ecl-package, Guillaume Le Vaillant, 2019/10/17
- Re: Question about sbcl-package->ecl-package, Pierre Neidhardt, 2019/10/17
- Re: Question about sbcl-package->ecl-package, Guillaume Le Vaillant, 2019/10/17
- Re: Question about sbcl-package->ecl-package, Pierre Neidhardt, 2019/10/17
- Re: Question about sbcl-package->ecl-package, Pierre Neidhardt, 2019/10/18