Re: [PATCH] Build C++ cross-compiler by default.

2016-01-13 Thread Ludovic Courtès
Ricardo Wurmus  skribis:

> the configure flags defined in “cross-gcc-arguments” disabled the C++
> compiler to prevent an error that happens when building libstdc++-v3.
> Since I needed a C++ cross-compiler for ARM I added “c++” to the list of
> enabled languages and added the configure flag
> “--disable-libstdc++-v3”.  This is now the same as what is done in
> “gcc-boot0” in “commencement.scm”.

Cool.

> Will this cause a rebuild of every package on ARM?  Is it okay to push
> this to core-updates?

AFAICS, this causes a rebuild of the cross-compilation infrastructure
only (for Hydra, that’s several times GCC plus a bunch of packages that
we cross-build to make sure the basic functionality is alright.)

So it could even go to ‘master’, but since Hydra is now building all of
‘core-updates’, it’s more energy-efficient to push it to ‘core-updates’
as well.

> From 021febc7f7f35ccffe381af798e0b20d7687c94e Mon Sep 17 00:00:00 2001
> From: Ricardo Wurmus 
> Date: Mon, 11 Jan 2016 19:43:25 +0100
> Subject: [PATCH] gnu: cross-gcc-arguments: Enable C++, disable building of
>  libstdc++-v3.
>
> * gnu/packages/cross-base.scm (cross-gcc-arguments)[arguments]: Disable
>   building libstdc++-v3 and enable building C++ compiler.

LGTM!

Thanks,
Ludo’.



[PATCH] Build C++ cross-compiler by default.

2016-01-11 Thread Ricardo Wurmus
Hi Guix,

the configure flags defined in “cross-gcc-arguments” disabled the C++
compiler to prevent an error that happens when building libstdc++-v3.
Since I needed a C++ cross-compiler for ARM I added “c++” to the list of
enabled languages and added the configure flag
“--disable-libstdc++-v3”.  This is now the same as what is done in
“gcc-boot0” in “commencement.scm”.

Will this cause a rebuild of every package on ARM?  Is it okay to push
this to core-updates?

~~ Ricardo

>From 021febc7f7f35ccffe381af798e0b20d7687c94e Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus 
Date: Mon, 11 Jan 2016 19:43:25 +0100
Subject: [PATCH] gnu: cross-gcc-arguments: Enable C++, disable building of
 libstdc++-v3.

* gnu/packages/cross-base.scm (cross-gcc-arguments)[arguments]: Disable
  building libstdc++-v3 and enable building C++ compiler.
---
 gnu/packages/cross-base.scm | 9 +
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm
index d64cdd1..f947e7a 100644
--- a/gnu/packages/cross-base.scm
+++ b/gnu/packages/cross-base.scm
@@ -105,11 +105,12 @@ may be either a libc package or #f.)"
"--disable-libcilkrts")
  `( ;; Disable features not needed at this stage.
"--disable-shared" "--enable-static"
+   "--enable-languages=c,c++"
 
-   ;; Disable C++ because libstdc++'s configure
-   ;; script otherwise fails with "Link tests are not
-   ;; allowed after GCC_NO_EXECUTABLES."
-   "--enable-languages=c"
+   ;; libstdc++ cannot be built at this stage
+   ;; ("Link tests are not allowed after
+   ;; GCC_NO_EXECUTABLES.").
+   "--disable-libstdc++-v3"
 
"--disable-threads" ;libgcc, would need libc
"--disable-libatomic"
-- 
2.5.0