All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] boost: build context and coroutine on ARM
@ 2017-03-27 15:26 Ross Burton
  2017-03-27 15:26 ` [PATCH 2/2] boost: enable more libraries Ross Burton
  2017-03-28  7:53 ` [PATCH 1/2] boost: build context and coroutine on ARM Richard Purdie
  0 siblings, 2 replies; 3+ messages in thread
From: Ross Burton @ 2017-03-27 15:26 UTC (permalink / raw)
  To: openembedded-core

With the right flags to the build, the context library can be built on ARM.

[ YOCTO #11253 ]

Signed-off-by: Ross Burton <ross.burton@intel.com>
---
 meta/recipes-support/boost/boost.inc | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/meta/recipes-support/boost/boost.inc b/meta/recipes-support/boost/boost.inc
index 4ff70e3..f85e1d1 100644
--- a/meta/recipes-support/boost/boost.inc
+++ b/meta/recipes-support/boost/boost.inc
@@ -28,12 +28,15 @@ BOOST_LIBS = "\
 	wave \
 	"
 
-# only supported by x86 and powerpc
+# Enable context only on platforms we've verified it builds on
+BOOST_LIBS_append_arm = " context coroutine"
+BOOST_LIBS_append_arm-64 = " context coroutine"
+BOOST_LIBS_append_powerpc = " context coroutine"
 BOOST_LIBS_append_x86 = " context coroutine"
 BOOST_LIBS_append_x86-64 = " context coroutine"
-BOOST_LIBS_append_powerpc = " context coroutine"
 # need consistent settings for native builds (x86 override not applied for native)
 BOOST_LIBS_remove_class-native = " context coroutine"
+
 # does not compile
 BOOST_LIBS_remove_mips16e = "wave"
 
@@ -168,7 +171,9 @@ BJAM_OPTS    = '${BOOST_PARALLEL_MAKE} -d+2 -q \
 # Native compilation of bzip2 isn't working
 BJAM_OPTS_append_class-native = ' -sNO_BZIP2=1'
 
-# Adjust the build for x32
+# Teach bjam how to build as it ignores the compiler flags we pass
+BJAM_OPTS_append_arm += " abi=aapcs binary-format=elf address-model=32 architecture=arm"
+BJAM_OPTS_append_arm-64 += " abi=aapcs binary-format=elf address-model=64 architecture=arm"
 BJAM_OPTS_append_linux-gnux32 = " abi=x32 address-model=64"
 
 do_configure() {
-- 
2.8.1



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

* [PATCH 2/2] boost: enable more libraries
  2017-03-27 15:26 [PATCH 1/2] boost: build context and coroutine on ARM Ross Burton
@ 2017-03-27 15:26 ` Ross Burton
  2017-03-28  7:53 ` [PATCH 1/2] boost: build context and coroutine on ARM Richard Purdie
  1 sibling, 0 replies; 3+ messages in thread
From: Ross Burton @ 2017-03-27 15:26 UTC (permalink / raw)
  To: openembedded-core

Enable the fiber, metaparse, and type_erasure libraries.

We can't enable coroutine2 as it needs C++11 and it appears our hacks to
configure the compiler mean boost doesn't think we support that.

Signed-off-by: Ross Burton <ross.burton@intel.com>
---
 meta/recipes-support/boost/boost.inc | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/meta/recipes-support/boost/boost.inc b/meta/recipes-support/boost/boost.inc
index f85e1d1..100fb0d 100644
--- a/meta/recipes-support/boost/boost.inc
+++ b/meta/recipes-support/boost/boost.inc
@@ -5,17 +5,21 @@ DEPENDS = "bjam-native zlib bzip2"
 ARM_INSTRUCTION_SET_armv4 = "arm"
 ARM_INSTRUCTION_SET_armv5 = "arm"
 
+# When we don't insist that our GCC is 4.3.1 (see below) hopefully coroutine2
+# (which needs C++11) will work.
 BOOST_LIBS = "\
 	atomic \
 	chrono \
 	container \
 	date_time \
 	exception \
+	fiber \
 	filesystem \
 	graph \
 	iostreams \
 	log \
 	math \
+	metaparse \
 	program_options \
 	random \
 	regex \
@@ -24,6 +28,7 @@ BOOST_LIBS = "\
 	system \
 	timer \
 	test \
+	type_erasure \
 	thread \
 	wave \
 	"
-- 
2.8.1



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

* Re: [PATCH 1/2] boost: build context and coroutine on ARM
  2017-03-27 15:26 [PATCH 1/2] boost: build context and coroutine on ARM Ross Burton
  2017-03-27 15:26 ` [PATCH 2/2] boost: enable more libraries Ross Burton
@ 2017-03-28  7:53 ` Richard Purdie
  1 sibling, 0 replies; 3+ messages in thread
From: Richard Purdie @ 2017-03-28  7:53 UTC (permalink / raw)
  To: Ross Burton, openembedded-core

On Mon, 2017-03-27 at 16:26 +0100, Ross Burton wrote:
> With the right flags to the build, the context library can be built
> on ARM.
> 
> [ YOCTO #11253 ]
> 
> Signed-off-by: Ross Burton <ross.burton@intel.com>
> ---
>  meta/recipes-support/boost/boost.inc | 11 ++++++++---
>  1 file changed, 8 insertions(+), 3 deletions(-)

Sorry, but:

https://autobuilder.yocto.io/builders/nightly-arm/builds/270
https://autobuilder.yocto.io/builders/nightly-arm-lsb/builds/218

Cheers,

Richard


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

end of thread, other threads:[~2017-03-28  7:53 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-03-27 15:26 [PATCH 1/2] boost: build context and coroutine on ARM Ross Burton
2017-03-27 15:26 ` [PATCH 2/2] boost: enable more libraries Ross Burton
2017-03-28  7:53 ` [PATCH 1/2] boost: build context and coroutine on ARM Richard Purdie

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.