Subject: Re: bug#47615: [PATCH 2/9] gnu: guile-3.0: Fix building on powerpc-linux.

From: Chris Marusich <[email-masked]>
Date: Tue, 13 Apr 2021 21:00:43 -0700

Efraim Flashner <[email-masked]> writes:

> * gnu/packages/guile.scm (guile-3.0)[arguments]: On powerpc add two
> phases to adjust for 32-bit big-endian systems.
> ---
>  gnu/packages/guile.scm | 21 ++++++++++++++++++++-
>  1 file changed, 20 insertions(+), 1 deletion(-)
>
> diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
> index f63322794d..dca1b1c16f 100644
> --- a/gnu/packages/guile.scm
> +++ b/gnu/packages/guile.scm
> @@ -305,7 +305,26 @@ without requiring the source code to be rewritten.")
>           (substitute-keyword-arguments (package-arguments guile-2.2)
>             ((#:configure-flags flags ''())
>              `(cons "--disable-jit" ,flags)))
> -         (package-arguments guile-2.2)))
> +         (if (string-prefix? "powerpc-" (%current-system))
> +           (substitute-keyword-arguments (package-arguments guile-2.2)
> +             ((#:phases phases)
> +              `(modify-phases ,phases
> +                 (add-after 'unpack 'adjust-bootstrap-flags
> +                   (lambda _
> +                     ;; Upstream not yet notified about suggested solution.
> +                     ;; See existing bug reports:
> +                     ;; https://debbugs.gnu.org/cgi/bugreport.cgi?bug=45214
> +                     ;; https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=977223
> +                     (substitute* "bootstrap/Makefile.in"
> +                       (("^GUILE_OPTIMIZATIONS.*")
> +                        "GUILE_OPTIMIZATIONS = -O1 -Oresolve-primitives -Ocps\n"))
> +                     #t))
> +                 (add-after 'unpack 'remove-failing-tests
> +                   (lambda _
> +                     ;; TODO: Discover why this test fails on powerpc-linux
> +                     (delete-file "test-suite/standalone/test-out-of-memory")
> +                     #t)))))
> +           (package-arguments guile-2.2))))
>      (native-search-paths
>       (list (search-path-specification
>              (variable "GUILE_LOAD_PATH")

Generally this looks reasonable.  I understand 3 weeks is a long
iteration time!  I think it's OK to proceed if it works for
bootstrapping other software on this platform.  Especially since the
change is isolated to just powerpc-linux.

Has the Guile test failure been reported upstream?

-- 
Chris