Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/1] package/boost: enable all features except python on host
@ 2022-01-15 10:37 Fabrice Fontaine
  2022-01-15 13:08 ` Yann E. MORIN
  2022-07-27 14:31 ` Thomas Petazzoni via buildroot
  0 siblings, 2 replies; 3+ messages in thread
From: Fabrice Fontaine @ 2022-01-15 10:37 UTC (permalink / raw)
  To: buildroot; +Cc: Fabrice Fontaine

Enable all features except python on host variant as suggested by
Yann E. Morin in
https://patchwork.ozlabs.org/project/buildroot/patch/20220114171847.634174-1-fontaine.fabrice@gmail.com

Indeed, host packages have no way to express their dependencies on host
boost

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
 package/boost/boost.mk | 8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

diff --git a/package/boost/boost.mk b/package/boost/boost.mk
index 2d2a8fb311..ad071ed206 100644
--- a/package/boost/boost.mk
+++ b/package/boost/boost.mk
@@ -12,13 +12,7 @@ BOOST_LICENSE = BSL-1.0
 BOOST_LICENSE_FILES = LICENSE_1_0.txt
 BOOST_CPE_ID_VENDOR = boost
 
-# keep host variant as minimal as possible
-HOST_BOOST_FLAGS = --without-icu --with-toolset=gcc \
-	--without-libraries=$(subst $(space),$(comma),atomic chrono context \
-	contract container coroutine date_time exception fiber filesystem graph \
-	graph_parallel iostreams json locale log math mpi nowide program_options \
-	python random serialization stacktrace test thread timer \
-	type_erasure wave)
+HOST_BOOST_FLAGS = --without-icu --with-toolset=gcc --without-libraries=python
 
 BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_ATOMIC),,atomic)
 BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_CHRONO),,chrono)
-- 
2.34.1

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [Buildroot] [PATCH 1/1] package/boost: enable all features except python on host
  2022-01-15 10:37 [Buildroot] [PATCH 1/1] package/boost: enable all features except python on host Fabrice Fontaine
@ 2022-01-15 13:08 ` Yann E. MORIN
  2022-07-27 14:31 ` Thomas Petazzoni via buildroot
  1 sibling, 0 replies; 3+ messages in thread
From: Yann E. MORIN @ 2022-01-15 13:08 UTC (permalink / raw)
  To: Fabrice Fontaine; +Cc: Thomas Petazzoni, buildroot

Fabrice, All,

+Peter K., +Thomas P., +Arnout.

On 2022-01-15 11:37 +0100, Fabrice Fontaine spake thusly:
> Enable all features except python on host variant as suggested by
> Yann E. Morin in
> https://patchwork.ozlabs.org/project/buildroot/patch/20220114171847.634174-1-fontaine.fabrice@gmail.com
> 
> Indeed, host packages have no way to express their dependencies on host
> boost

So, I was not expecting an actual patch so fast, and I was doing more
testing here...

So, with a recent-enough gcc (e.g. gcc-10 as is available in our Docker
image used in our CI), the full Boost (save for python) is indeed built.

So I gave it a shot on a much older system, like my autobuilder, that is
still running gcc-4.8. And there, only the headers component is built;
everything else is just skipped.

This means that host packages that depend on specific features of
host-boost will fail randomly depending on the host system, and there is
no way to prevent that, except by adding appropriate Config.in.host
options for host-boost.

Note: in our case, host-riscv-isa-sim already depends on gcc >= 4.9, so
it would not be selectable on my autobuilder. But still...

So I wonder what we should do... Any idea?

Regards,
Yann E. MORIN.

> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> ---
>  package/boost/boost.mk | 8 +-------
>  1 file changed, 1 insertion(+), 7 deletions(-)
> 
> diff --git a/package/boost/boost.mk b/package/boost/boost.mk
> index 2d2a8fb311..ad071ed206 100644
> --- a/package/boost/boost.mk
> +++ b/package/boost/boost.mk
> @@ -12,13 +12,7 @@ BOOST_LICENSE = BSL-1.0
>  BOOST_LICENSE_FILES = LICENSE_1_0.txt
>  BOOST_CPE_ID_VENDOR = boost
>  
> -# keep host variant as minimal as possible
> -HOST_BOOST_FLAGS = --without-icu --with-toolset=gcc \
> -	--without-libraries=$(subst $(space),$(comma),atomic chrono context \
> -	contract container coroutine date_time exception fiber filesystem graph \
> -	graph_parallel iostreams json locale log math mpi nowide program_options \
> -	python random serialization stacktrace test thread timer \
> -	type_erasure wave)
> +HOST_BOOST_FLAGS = --without-icu --with-toolset=gcc --without-libraries=python
>  
>  BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_ATOMIC),,atomic)
>  BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_CHRONO),,chrono)
> -- 
> 2.34.1
> 
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Buildroot] [PATCH 1/1] package/boost: enable all features except python on host
  2022-01-15 10:37 [Buildroot] [PATCH 1/1] package/boost: enable all features except python on host Fabrice Fontaine
  2022-01-15 13:08 ` Yann E. MORIN
@ 2022-07-27 14:31 ` Thomas Petazzoni via buildroot
  1 sibling, 0 replies; 3+ messages in thread
From: Thomas Petazzoni via buildroot @ 2022-07-27 14:31 UTC (permalink / raw)
  To: Fabrice Fontaine; +Cc: buildroot

Hello Fabrice,

On Sat, 15 Jan 2022 11:37:54 +0100
Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote:

> Enable all features except python on host variant as suggested by
> Yann E. Morin in
> https://patchwork.ozlabs.org/project/buildroot/patch/20220114171847.634174-1-fontaine.fabrice@gmail.com
> 
> Indeed, host packages have no way to express their dependencies on host
> boost
> 
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>

As Yann said in
https://patchwork.ozlabs.org/project/buildroot/patch/20220114171847.634174-1-fontaine.fabrice@gmail.com,
it significantly increases the build time of host-boost, and for no
good reason.

We discussed with Arnout, and we prefer to keep things as they are
today: progressively enable the host-boost features that are needed by
our packages, when needed. With luck, our CPUs will grow in computing
power faster than we enable host-boost features, and we won't see a
visible build time increase.

Worst case, we can always add package/boost/Config.in.host with some
blind options BR2_PACKAGE_HOST_BOOST_xyz that other packages can select
to request enabling a particular feature in a host package they depend
on.

Thomas
-- 
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2022-07-27 14:31 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-01-15 10:37 [Buildroot] [PATCH 1/1] package/boost: enable all features except python on host Fabrice Fontaine
2022-01-15 13:08 ` Yann E. MORIN
2022-07-27 14:31 ` Thomas Petazzoni via buildroot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox