guix-devel
[Top][All Lists]
Advanced

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

Re: Building Guix with Guile 2.1


From: Taylan Ulrich Bayırlı/Kammer
Subject: Re: Building Guix with Guile 2.1
Date: Wed, 28 Sep 2016 16:56:10 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux)

address@hidden (Ludovic Courtès) writes:

> address@hidden (Taylan Ulrich "Bayırlı/Kammer") skribis:
>
>> I think we can keep the (compile 'dummy) hack.  That leaves two issues
>> which may be solved in a cleaner manner than in this patch:
>>
>> - The (define foo (@@ (bar) foo)) parts.
>> - Making %tty-gid public.  (The above didn't work for this one...)
>
> Fixed in 3c185b24f593c982aeb33996324fa6878c6ed21b, thanks for reporting
> it!

Thanks for the fixes. :-)

I haven't made much progress regarding the -O1 setting to speed up
building, but for the time being here's the patch that would make the
build process work at all on 2.2, including for 'guix pull'.

>From 91d8e2f426f442de094166d724e91cc24e6cbd96 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Taylan=20Ulrich=20Bay=C4=B1rl=C4=B1/Kammer?=
 <address@hidden>
Date: Tue, 27 Sep 2016 22:34:06 +0200
Subject: [PATCH] build: Improve Guile 2.2 compatibility.

* build-aux/compile-all.scm (compile-file*): Ensure loading of
  compilation related modules before going parallel.
* guix/build/pull.scm (build-guix): Ditto.
---
 build-aux/compile-all.scm | 3 +++
 guix/build/pull.scm       | 3 +++
 2 files changed, 6 insertions(+)

diff --git a/build-aux/compile-all.scm b/build-aux/compile-all.scm
index 7c937a0..46b3817 100644
--- a/build-aux/compile-all.scm
+++ b/build-aux/compile-all.scm
@@ -81,6 +81,9 @@
    (let ((files (filter file-needs-compilation? files)))
      (for-each load-module-file files)
      (let ((mutex (make-mutex)))
+       ;; Make sure compilation related modules are loaded before starting to
+       ;; compile files in parallel.
+       (compile #f)
        (par-for-each (lambda (file)
                        (compile-file* file mutex))
                      files)))))
diff --git a/guix/build/pull.scm b/guix/build/pull.scm
index ccf1868..871bf6f 100644
--- a/guix/build/pull.scm
+++ b/guix/build/pull.scm
@@ -125,6 +125,9 @@ containing the source code.  Write any debugging output to 
DEBUG-PORT."
       (newline)
       (let ((mutex (make-mutex))
             (completed 0))
+        ;; Make sure compilation related modules are loaded before starting to
+        ;; compile files in parallel.
+        (compile #f)
         (par-for-each
          (lambda (file)
            (with-mutex mutex
-- 
2.10.0


reply via email to

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