diff mbox

[1/1] boost: add option to build boost_coroutine

Message ID 1446569978-10357-1-git-send-email-edson.siqueira@datacom.ind.br
State Accepted
Headers show

Commit Message

Edson Siqueira Nov. 3, 2015, 4:59 p.m. UTC
It was disabled by default by commit 611dfe6cb55ed72d7df3b7c102f4a723248a4037
due to the upgrade to boost 1.54.0.

Signed-off-by: Edson Siqueira <edson.siqueira@datacom.ind.br>
---
 package/boost/Config.in | 4 ++++
 package/boost/boost.mk  | 4 +---
 2 files changed, 5 insertions(+), 3 deletions(-)

Comments

Thomas Petazzoni Nov. 3, 2015, 5:35 p.m. UTC | #1
Dear Edson Siqueira,

On Tue,  3 Nov 2015 14:59:38 -0200, Edson Siqueira wrote:
> It was disabled by default by commit 611dfe6cb55ed72d7df3b7c102f4a723248a4037
> due to the upgrade to boost 1.54.0.
> 
> Signed-off-by: Edson Siqueira <edson.siqueira@datacom.ind.br>

Thanks for your contribution. However, you don't explain why you think
that the problems that lead to commit
611dfe6cb55ed72d7df3b7c102f4a723248a4037 have now been fixed. Can you
give more details ? Have you tested the configurations pointed by the
611dfe6cb55ed72d7df3b7c102f4a723248a4037 commit log and verified that
they now build fine with the coroutine module enabled ?

Thanks,

Thomas
Edson Siqueira Nov. 3, 2015, 6:14 p.m. UTC | #2
Hello Thomas Petazzoni,

At the time of commit 611dfe6cb55ed72d7df3b7c102f4a723248a4037, this library
was new to boost and being built regardless of the config. The fix was to
always remove it from compilation to avoid problems with some compilers.
Now, with a proper option, it should be possible to enable it only when
the compiler supports the compilation of this library.

I've tested this patch using a ppc32 toolchain to build the library.

Thanks,

On 03-11-2015 15:35, Thomas Petazzoni wrote:
> Dear Edson Siqueira,
>
> On Tue,  3 Nov 2015 14:59:38 -0200, Edson Siqueira wrote:
>> It was disabled by default by commit 611dfe6cb55ed72d7df3b7c102f4a723248a4037
>> due to the upgrade to boost 1.54.0.
>>
>> Signed-off-by: Edson Siqueira <edson.siqueira@datacom.ind.br>
> Thanks for your contribution. However, you don't explain why you think
> that the problems that lead to commit
> 611dfe6cb55ed72d7df3b7c102f4a723248a4037 have now been fixed. Can you
> give more details ? Have you tested the configurations pointed by the
> 611dfe6cb55ed72d7df3b7c102f4a723248a4037 commit log and verified that
> they now build fine with the coroutine module enabled ?
>
> Thanks,
>
> Thomas
Thomas Petazzoni Nov. 3, 2015, 8:17 p.m. UTC | #3
Dear Edson Siqueira,

On Tue,  3 Nov 2015 14:59:38 -0200, Edson Siqueira wrote:
> It was disabled by default by commit 611dfe6cb55ed72d7df3b7c102f4a723248a4037
> due to the upgrade to boost 1.54.0.
> 
> Signed-off-by: Edson Siqueira <edson.siqueira@datacom.ind.br>
> ---
>  package/boost/Config.in | 4 ++++
>  package/boost/boost.mk  | 4 +---
>  2 files changed, 5 insertions(+), 3 deletions(-)

Thanks, I've applied after doing a bit of research, and tweaking the
commit log as follows:

    boost: add option to build boost_coroutine
    
    It was disabled by default by commit
    611dfe6cb55ed72d7df3b7c102f4a723248a4037 because it caused some build
    failures on AArch64 and SuperH. However, the coroutine module needs
    the context module, which is only available on certain architectures.
    
    We can therefore allow enabling the coroutine module, but only if the
    context module is available.

Best regards,

Thomas
diff mbox

Patch

diff --git a/package/boost/Config.in b/package/boost/Config.in
index ac70152..150174c 100644
--- a/package/boost/Config.in
+++ b/package/boost/Config.in
@@ -70,6 +70,10 @@  config BR2_PACKAGE_BOOST_CONTEXT
 	depends on (BR2_arm || BR2_armeb || BR2_i386 || BR2_mips || BR2_mipsel \
 			|| BR2_powerpc || BR2_sparc || BR2_x86_64)
 
+config BR2_PACKAGE_BOOST_COROUTINE
+        bool "boost-coroutine"
+        depends on BR2_PACKAGE_BOOST_CONTEXT
+
 config BR2_PACKAGE_BOOST_DATE_TIME
 	bool "boost-date_time"
 
diff --git a/package/boost/boost.mk b/package/boost/boost.mk
index 16d05cd..80325b0 100644
--- a/package/boost/boost.mk
+++ b/package/boost/boost.mk
@@ -20,13 +20,11 @@  HOST_BOOST_FLAGS = --without-icu \
 	iostreams locale log math mpi program_options python random regex \
 	serialization signals system test thread timer wave)
 
-# coroutine breaks on some weak toolchains and it's new for 1.54+
-BOOST_WITHOUT_FLAGS = coroutine
-
 BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_ATOMIC),,atomic)
 BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_CHRONO),,chrono)
 BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_CONTAINER),,container)
 BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_CONTEXT),,context)
+BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_COROUTINE),,coroutine)
 BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_DATE_TIME),,date_time)
 BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_EXCEPTION),,exception)
 BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_FILESYSTEM),,filesystem)