guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Python-build-system does not honour phases


From: Ludovic Courtès
Subject: Re: Python-build-system does not honour phases
Date: Tue, 10 Sep 2013 19:48:30 +0200
User-agent: Gnus/5.130007 (Ma Gnus v0.7) Emacs/24.3 (gnu/linux)

Andreas Enge <address@hidden> skribis:

> On Mon, Sep 09, 2013 at 11:35:55PM +0200, Ludovic Courtès wrote:
>> The problem is that both the gnu-build-system and the
>> python-build-system were getting imported, and both export a
>> ‘%standard-phases’.
>
> That is what I thought. I tried to add a
>   #:use-module ((guix build-system gnu)
>                 #:select (gnu-build-system))
> but that was not enough.

You’re mixing different things: the line above is on the host side,
whereas the patch I proposed changes the modules imported on the build
side.

>> The fix is to use only python-build-system:
>
> That also does not seem to work.

Could you be more specific?  :-)

With the patch I sent, the builder should start with:

  (begin
    (use-modules (guix build python-build-system)
                 (guix build utils))

    ...)

So the global variable named ‘%standard-phases’ here is necessarily that
of (guix build python-build-system).

Can you try this patch to check the value of ‘phases’?

diff --git a/guix/build/python-build-system.scm 
b/guix/build/python-build-system.scm
index 8429979..1b5eaa8 100644
--- a/guix/build/python-build-system.scm
+++ b/guix/build/python-build-system.scm
@@ -96,6 +96,6 @@
 (define* (python-build #:key inputs (phases %standard-phases)
                        #:allow-other-keys #:rest args)
   "Build the given Python package, applying all of PHASES in order."
-  (apply gnu:gnu-build #:inputs inputs #:phases phases args))
+  (apply gnu:gnu-build #:inputs inputs #:phases (pk 'the-python-phases phases) 
args))
 
 ;;; python-build-system.scm ends here
[...]

> Maybe we should try to use a variable name %python-standard-phases instead.

That would be cheating.  ;-)
And really, it’s unnecessary.

Ludo’.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]