Subject: bug#37550: closed (Re: bug#37550: [core-updates] [PATCH] gnu: gcc: Fix i686-linux cross compiler.)

From: [email-masked] (GNU bug Tracking System)
Date: Sun, 29 Sep 2019 14:23:02 +0000

Your bug report

#37550: [core-updates] [PATCH] gnu: gcc: Fix i686-linux cross compiler. 

which was filed against the guix package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
37550: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=37550
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#37550: [core-updates] [PATCH] gnu: gcc: Fix i686-linux cross compiler.
From: Jan Nieuwenhuizen <[email-masked]>
To: Marius Bakke <[email-masked]>
Cc: [email-masked]
Date: Sun, 29 Sep 2019 16:22:07 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Marius Bakke writes:

> Jan Nieuwenhuizen <[email-masked]> writes:
>> I stumbled upon this while working to fix #37549.  Where should this
>> patch land?
>
> This patch should be safe for 'core-updates'.  Please double check that
> it does not rebuild the world, though.  :-)

I was hesitating and re-checked on a fresh computer.

> libmpx does not build natively either (see 01e8263febb) and has been
> removed from GCC entirely in version 9.

Ah, good to know.  I was worrying about just dropping it.

>> +                               "--disable-libmpx" ; C compiler cannot create executables
>
> IMO the comment is unnecessary.  LGTM!
>

Removed, and pushed to core-updates as 43124a54744b64dcdbdd8f92d2a037bf8e0dd215

Thanks!
janneke

-- 
Jan Nieuwenhuizen <[email-masked]> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com

Subject: [core-updates] [PATCH] gnu: gcc: Fix i686-linux cross compiler.
From: Jan Nieuwenhuizen <[email-masked]>
To: [email-masked]
Date: Sun, 29 Sep 2019 13:21:11 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Running

    ./pre-inst-env guix build --target=i686-unknown-linux-gnu hello

on core-updates (and similarly on core-updates-next) fails with

--8<---------------cut here---------------start------------->8---
checking for i686-unknown-linux-gnu-gcc... /tmp/guix-build-gcc-cross-sans-libc-i686-unknown-linux-gnu-7.4.0.drv-0/build/./gcc/xgcc -B/tmp/guix-build-gcc-cross-sans-libc-i686-unknown-linux-gnu-7.4.0.drv-0/build/./gcc/ -B/gnu/store/p4x4981zidgq36rjkx0bxb466s81xk2z-gcc-cross-sans-libc-i686-unknown-linux-gnu-7.4.0/i686-unknown-linux-gnu/bin/ -B/gnu/store/p4x4981zidgq36rjkx0bxb466s81xk2z-gcc-cross-sans-libc-i686-unknown-linux-gnu-7.4.0/i686-unknown-linux-gnu/lib/ -isystem /gnu/store/p4x4981zidgq36rjkx0bxb466s81xk2z-gcc-cross-sans-libc-i686-unknown-linux-gnu-7.4.0/i686-unknown-linux-gnu/include -isystem /gnu/store/p4x4981zidgq36rjkx0bxb466s81xk2z-gcc-cross-sans-libc-i686-unknown-linux-gnu-7.4.0/i686-unknown-linux-gnu/sys-include   
checking for C compiler default output file name... 
configure: error: in `/tmp/guix-build-gcc-cross-sans-libc-i686-unknown-linux-gnu-7.4.0.drv-0/build/i686-unknown-linux-gnu/libmpx':
configure: error: C compiler cannot create executables
See `config.log' for more details.
--8<---------------cut here---------------end--------------->8---

The attached patch fixes this.

I stumbled upon this while working to fix #37549.  Where should this
patch land?

Greetings,
janneke

>From 522aac698a66ca8ab73ac3827c61cb65627684d3 Mon Sep 17 00:00:00 2001
From: Jan Nieuwenhuizen <[email-masked]>
Date: Sun, 29 Sep 2019 13:08:01 +0200
Subject: [PATCH] gnu: gcc: Fix i686-linux cross compiler.

This resurrects

    ./pre-inst-env guix build --target=i686-unknown-linux-gnu hello

* gnu/packages/cross-base.scm (cross-gcc-arguments): Do not build libmpx;
does not cross-configure.
---
 gnu/packages/cross-base.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm
index 7108000f06..fab4636450 100644
--- a/gnu/packages/cross-base.scm
+++ b/gnu/packages/cross-base.scm
@@ -144,6 +144,7 @@ base compiler and using LIBC (which may be either a libc package or #f.)"
                                "--disable-libatomic"
                                "--disable-libmudflap"
                                "--disable-libgomp"
+                               "--disable-libmpx" ; C compiler cannot create executables
                                "--disable-libssp"
                                "--disable-libquadmath"
                                "--disable-decimal-float" ;would need libc
-- 
2.23.0

-- 
Jan Nieuwenhuizen <[email-masked]> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com