unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
To: 74909@debbugs.gnu.org
Cc: Maxim Cournoyer <maxim.cournoyer@gmail.com>,
	Maxim Cournoyer <maxim.cournoyer@gmail.com>
Subject: [bug#74909] [PATCH 2/3] build/guile: Disable parallel build for now.
Date: Mon, 16 Dec 2024 15:28:04 +0900	[thread overview]
Message-ID: <d13269b557132bb136aa7c634c5995b1225fdf17.1734329084.git.maxim.cournoyer@gmail.com> (raw)
In-Reply-To: <cover.1734329084.git.maxim.cournoyer@gmail.com>

Following discussions in bug #74204.

* guix/build-system/guile.scm (guile-build): Add a #:parallel-build? flag,
defaulting to #f for now.
(guile-cross-build): Likewise.
* guix/build/guile-build-system.scm (build): Honor it.

Change-Id: Ibf12ac098e9dcea83da7b9685796e501df606c6c
---
 guix/build-system/guile.scm       | 11 +++++++++++
 guix/build/guile-build-system.scm |  6 +++++-
 2 files changed, 16 insertions(+), 1 deletion(-)

diff --git a/guix/build-system/guile.scm b/guix/build-system/guile.scm
index ee59bb15f2..df6988a1b7 100644
--- a/guix/build-system/guile.scm
+++ b/guix/build-system/guile.scm
@@ -85,6 +85,10 @@ (define* (guile-build name inputs
                       (source-directory ".")
                       not-compiled-file-regexp
                       (scheme-file-regexp %scheme-file-regexp)
+                      ;; FIXME: Turn on parallel building of Guile modules by
+                      ;; default after the non-determinism issues in the Guile byte
+                      ;; compiler are resolved (see bug #20272).
+                      (parallel-build? #f)
                       (compile-flags %compile-flags)
                       (imported-modules %guile-build-system-modules)
                       (modules '((guix build guile-build-system)
@@ -101,6 +105,7 @@ (define* (guile-build name inputs
                        #:source-directory #$source-directory
                        #:scheme-file-regexp #$scheme-file-regexp
                        #:not-compiled-file-regexp #$not-compiled-file-regexp
+                       #:parallel-build? #$parallel-build?
                        #:compile-flags #$compile-flags
                        #:phases #$phases
                        #:system #$system
@@ -132,6 +137,11 @@ (define* (guile-cross-build name
                             (source-directory ".")
                             (scheme-file-regexp %scheme-file-regexp)
                             not-compiled-file-regexp
+                            ;; FIXME: Turn on parallel building of Guile
+                            ;; modules by default after the non-determinism
+                            ;; issues in the Guile byte compiler are resolved
+                            ;; (see bug #20272).
+                            (parallel-build? #f)
                             (compile-flags %compile-flags)
                             (imported-modules %guile-build-system-modules)
                             (modules '((guix build guile-build-system)
@@ -159,6 +169,7 @@ (define* (guile-cross-build name
                        #:source-directory #$source-directory
                        #:scheme-file-regexp #$scheme-file-regexp
                        #:not-compiled-file-regexp #$not-compiled-file-regexp
+                       #:parallel-build? #$parallel-build?
                        #:compile-flags #$compile-flags
                        #:inputs %build-target-inputs
                        #:native-inputs %build-host-inputs
diff --git a/guix/build/guile-build-system.scm b/guix/build/guile-build-system.scm
index 37a1654ce4..b497573c0a 100644
--- a/guix/build/guile-build-system.scm
+++ b/guix/build/guile-build-system.scm
@@ -145,6 +145,10 @@ (define* (report-build-progress total completed
 (define* (build #:key outputs inputs native-inputs
                 (source-directory ".")
                 (compile-flags '())
+                ;; FIXME: Turn on parallel building of Guile modules by
+                ;; default after the non-determinism issues in the Guile byte
+                ;; compiler are resolved (see bug #20272).
+                (parallel-build? #f)
                 (scheme-file-regexp %scheme-file-regexp)
                 (not-compiled-file-regexp #f)
                 target
@@ -205,7 +209,7 @@ (define* (build #:key outputs inputs native-inputs
                                  (string-append source-directory "/" file)
                                  flags)))
                    source-files)
-       #:max-processes (parallel-job-count)
+       #:max-processes (if parallel-build? (parallel-job-count) 1)
        #:report-progress report-build-progress))))
 
 (define* (install-documentation #:key outputs
-- 
2.46.0





  parent reply	other threads:[~2024-12-16  6:30 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-16  6:07 [bug#74909] [PATCH 0/3] Make guile-build-system packages reproducible Maxim Cournoyer
2024-12-16  6:28 ` [bug#74909] [PATCH 1/3] build/guile-build-system: Remove trailing #t in phases Maxim Cournoyer
2024-12-16  6:28 ` Maxim Cournoyer [this message]
2024-12-16  6:28 ` [bug#74909] [PATCH 3/3] build/guile-build-system: Fix byte-compilation warnings Maxim Cournoyer

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

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=d13269b557132bb136aa7c634c5995b1225fdf17.1734329084.git.maxim.cournoyer@gmail.com \
    --to=maxim.cournoyer@gmail.com \
    --cc=74909@debbugs.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 public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).