diff mbox series

[bug#55757] reproducible builds: disable parllel build in isl

Message ID 87a6awaugz.fsf@contorta
State New
Headers show
Series [bug#55757] reproducible builds: disable parllel build in isl | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue

Commit Message

Vagrant Cascadian June 1, 2022, 10:29 p.m. UTC
The attached patch makes isl build reproducibly in guix by disabling
parallelism.

Admittedly, I'm unsure what the root cause is, and Debian's build of isl
does not appear to have this problem, despite building in parallel.

Seems like patches to isl should go to core-updates:

  $ guix refresh --list-dependent isl                                                               
  Building the following 2192 packages would ensure 5967 dependent packages are rebuilt: ...


live well,
  vagrant

Comments

M June 1, 2022, 10:49 p.m. UTC | #1
Vagrant Cascadian schreef op wo 01-06-2022 om 15:29 [-0700]:
>   $ guix refresh --list-dependent
> isl                                                               
>   Building the following 2192 packages would ensure 5967 dependent
> packages are rebuilt: ...


Even worse, it is used by gcc, which is (indirectly) used by pretty
much everything.  Agreed with core-updates.
Tobias Geerinckx-Rice June 1, 2022, 11:14 p.m. UTC | #2
Maxime Devos 写道:
> Agreed with core-updates.

…with a ‘build reproducibly’ comment.

Kind regards,

T G-R
Vagrant Cascadian June 9, 2022, 3:28 p.m. UTC | #3
On 2022-06-01, Vagrant Cascadian wrote:
> The attached patch makes isl build reproducibly in guix by disabling
> parallelism.
>
> Admittedly, I'm unsure what the root cause is, and Debian's build of isl
> does not appear to have this problem, despite building in parallel.
>
> Seems like patches to isl should go to core-updates:
>
>   $ guix refresh --list-dependent isl                                                               
>   Building the following 2192 packages would ensure 5967 dependent packages are rebuilt: ...

I'm less confident this actually fixes reproducibility issues, as I've
had several cases with other packages (that didn't need to go through
core-updates) that *seemed* to be fixed by disabling parallelism on my
local builds, but once ci and bordeaux built them, they were still
unreproducible... (need to follow-up and revert those changes on master,
too)

Given that parallelism isn't an issue for the Debian package, my guess
is my "fix" for this is probably not necessarily effective either.


live well,
  vagrant

>
>
> live well,
>   vagrant
> From 234e662df27771742b3e8b82e2115284e1cab5a8 Mon Sep 17 00:00:00 2001
> From: Vagrant Cascadian <vagrant@reproducible-builds.org>
> Date: Wed, 1 Jun 2022 11:58:41 -0700
> Subject: [PATCH 1/4] gnu: isl: Disable parallel build.
>
> * gnu/packages/gcc.scm (isl)[arguments]: Pass parallel-build #f.
> ---
>  gnu/packages/gcc.scm | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm
> index cd144772b8..560a35af2d 100644
> --- a/gnu/packages/gcc.scm
> +++ b/gnu/packages/gcc.scm
> @@ -1218,7 +1218,8 @@ (define-public isl
>      (build-system gnu-build-system)
>      (outputs '("out" "static"))
>      (arguments
> -     '(#:phases (modify-phases %standard-phases
> +     '(#:parallel-build? #f
> +       #:phases (modify-phases %standard-phases
>                    (add-after 'install 'move-static-library
>                      (lambda* (#:key outputs #:allow-other-keys)
>                        (let* ((out (assoc-ref outputs "out"))
> -- 
> 2.35.1
diff mbox series

Patch

From 234e662df27771742b3e8b82e2115284e1cab5a8 Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagrant@reproducible-builds.org>
Date: Wed, 1 Jun 2022 11:58:41 -0700
Subject: [PATCH 1/4] gnu: isl: Disable parallel build.

* gnu/packages/gcc.scm (isl)[arguments]: Pass parallel-build #f.
---
 gnu/packages/gcc.scm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm
index cd144772b8..560a35af2d 100644
--- a/gnu/packages/gcc.scm
+++ b/gnu/packages/gcc.scm
@@ -1218,7 +1218,8 @@  (define-public isl
     (build-system gnu-build-system)
     (outputs '("out" "static"))
     (arguments
-     '(#:phases (modify-phases %standard-phases
+     '(#:parallel-build? #f
+       #:phases (modify-phases %standard-phases
                   (add-after 'install 'move-static-library
                     (lambda* (#:key outputs #:allow-other-keys)
                       (let* ((out (assoc-ref outputs "out"))
-- 
2.35.1