reproducible builds: disable parllel build in isl

OpenSubmitted by Vagrant Cascadian.
Details
3 participants
  • Maxime Devos
  • Tobias Geerinckx-Rice
  • Vagrant Cascadian
Owner
unassigned
Severity
normal
V
V
Vagrant Cascadian wrote on 2 Jun 00:29 +0200
(address . guix-patches@gnu.org)
87a6awaugz.fsf@contorta
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
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(-)

Toggle diff (16 lines)
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
-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQRlgHNhO/zFx+LkXUXcUY/If5cWqgUCYpfoPQAKCRDcUY/If5cW
qmb6AP4ncwu0/0MzESIFjkCWOmlp3jVk6A769V83gqs4in5YeQD+KrTnNsc7w00i
U0AZtN8mCj6hSJItCdcu9bCrwF104QA=
=sScp
-----END PGP SIGNATURE-----

M
M
Maxime Devos wrote on 2 Jun 00:49 +0200
be16f6edbdcaf0eec3f253254bfffd9280e7702b.camel@telenet.be
Vagrant Cascadian schreef op wo 01-06-2022 om 15:29 [-0700]:
Toggle quote (6 lines)
>   $ 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.
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYpftAxccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7miwAQDb1NwBQevLYC1JZwWsT0TDekCQ
e+DIufQbRo0CRnY9fgEAmEyOcnqSA2LddjJT9k7mb8kxGvMJjoNejFw4S/dRYgQ=
=ffUN
-----END PGP SIGNATURE-----


T
T
Tobias Geerinckx-Rice wrote on 2 Jun 01:14 +0200
(name . Maxime Devos)(address . maximedevos@telenet.be)
87ilpk7z63@nckx
Maxime Devos 写道:
Toggle quote (2 lines)
> Agreed with core-updates.

…with a ‘build reproducibly’ comment.

Kind regards,

T G-R
-----BEGIN PGP SIGNATURE-----

iIMEARYKACsWIQT12iAyS4c9C3o4dnINsP+IT1VteQUCYpfzNA0cbWVAdG9iaWFz
LmdyAAoJEA2w/4hPVW15yzwBAISELfSV+L0UzFAL0p5cADW5s5WMKeOqYS1EjOpi
60eSAP9SDgHsjpgwP5jMqQtv+irCIR4Ph77aEQqwrwJU7dThDw==
=u/jy
-----END PGP SIGNATURE-----

V
V
Vagrant Cascadian wrote on 9 Jun 17:28 +0200
Re: reproducible builds: disable parllel build in isl
(address . 55757@debbugs.gnu.org)
87o7z1onzv.fsf@contorta
On 2022-06-01, Vagrant Cascadian wrote:
Toggle quote (11 lines)
> 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

Toggle quote (30 lines)
>
>
> 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
-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQRlgHNhO/zFx+LkXUXcUY/If5cWqgUCYqIRhQAKCRDcUY/If5cW
qrMMAP4lIQjwUV97pcmsYCj2lMPoOfT7pBJr1wEsf79lnmv+HQEAiCkQc4RKxUhZ
Tb7senFQcdooCqESyCZDe9co1wrcewA=
=t6j0
-----END PGP SIGNATURE-----

?