bug-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#54407: Issues building grub for powerpc64le, could not force big-end


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 18-08-2022 10:11, Maxime Devos wrote:


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))
(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)
(currently compiling, let's see if if it works ...)

The #:system doesn't work, trying

(use-modules (guix utils) (guix packages) (guix gexp))
(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)
instead.

Attachment: OpenPGP_0x49E3EE22191725EE.asc
Description: OpenPGP public key

Attachment: OpenPGP_signature
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]