|
From: | Maxime Devos |
Subject: | bug#54407: Issues building grub for powerpc64le, could not force big-endian |
Date: | Thu, 18 Aug 2022 10:14:27 +0200 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.12.0 |
On 04-04-2022 21:37, Christopher Baines wrote:
Maybe you could add a gcc compiling for 32-bit ppc (maybe without a glibc since this is grub) and patch the configuration script to use the 32-bit ppc gcc instead of using the 64-bit ppc+-m32?I've had a go at this, using something like what I've included below, but I haven't stumbled upon the right options yet, or a way to work out why gcc still thinks "-m32 not supported". [...]I was thinking of skipping the multilib and maybe skipping support for multiple endians, something like:
(use-modules (guix utils) (guix packages) (guix gexp))(currently compiling, let's see if if it works ...)
(define (ppc-32bit-gcc)
(if (%current-target-system)
(error "not supported -- TODO make a cross-compiler to 32-bit ppc here with cross-gcc")
(package
(inherit (@ (gnu packages gcc) gcc))
(arguments
(substitute-keyword-arguments
(package-arguments (@ (gnu packages gcc) gcc))
((#:system _) "ppc-linux")
((#:configure-flags flags)
(pk 'f #~(append (list "--with-endian=big") #$flags))))))))
(ppc-32bit-gcc)
The #:system doesn't work, trying
(use-modules (guix utils) (guix packages) (guix gexp))instead.
(define (ppc-32bit-gcc)
(if (%current-target-system)
(error "not supported -- TODO make a cross-compiler to 32-bit ppc here with cross-gcc")
(package
(inherit (@ (gnu packages gcc) gcc))
(arguments
(substitute-keyword-arguments
(cons* #:system "powerpc-linux" (package-arguments (@ (gnu packages gcc) gcc)))
((#:configure-flags flags)
(pk 'f #~(append (list "--with-endian=big") #$flags))))))))
(ppc-32bit-gcc)
OpenPGP_0x49E3EE22191725EE.asc
Description: OpenPGP public key
OpenPGP_signature
Description: OpenPGP digital signature
[Prev in Thread] | Current Thread | [Next in Thread] |