* [PATCH 0/2 v2] boost: add support for additional boost libs
@ 2016-09-26 7:56 jackie.huang
2016-09-26 7:56 ` [PATCH 1/2 v2] boost: disable pch when build boost-math jackie.huang
2016-09-26 7:56 ` [PATCH 2/2 v2] boost: add support for additional boost libs jackie.huang
0 siblings, 2 replies; 10+ messages in thread
From: jackie.huang @ 2016-09-26 7:56 UTC (permalink / raw)
To: openembedded-core
From: Jackie Huang <jackie.huang@windriver.com>
Changes in v2:
1. Add a workaround as a separate commit for the issue found in:
http://autobuilder.yocto.io:8010/builders/nightly-x86-64-lsb/builds/56/
2. Add PACKAGECONFIG for graph_parallel and mpi but disable by default
since they depend on mpich which is in meta-oe.
3. Add proper configs in user-config.jam for boost-mpi.
Tested with:
- default PACKAGECONFIG
- all libs in PACKAGECONFIG (need to add meta-oe)
Notes:
boost-exception will not be created since it's intentional.
----
The following changes since commit 8dfcfbeb14a179a5d5722007d7c986da1dd41b40:
arch-mips: Add mips64-o32 tunes (2016-09-24 07:30:10 +0100)
are available in the git repository at:
git://git.pokylinux.org/poky-contrib.git jhuang0/r_add_boost_libs_160926-1
http://git.pokylinux.org/cgit.cgi//log/?h=jhuang0/r_add_boost_libs_160926-1
Jackie Huang (2):
boost: disable pch when build boost-math
boost: add support for additional boost libs
meta/recipes-support/boost/boost.inc | 33 ++++++++++++++++++++--
.../boost/boost-math-disable-pch-for-gcc.patch | 31 ++++++++++++++++++++
meta/recipes-support/boost/boost_1.61.0.bb | 1 +
3 files changed, 62 insertions(+), 3 deletions(-)
create mode 100644 meta/recipes-support/boost/boost/boost-math-disable-pch-for-gcc.patch
--
2.8.3
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH 1/2 v2] boost: disable pch when build boost-math
2016-09-26 7:56 [PATCH 0/2 v2] boost: add support for additional boost libs jackie.huang
@ 2016-09-26 7:56 ` jackie.huang
2016-09-26 7:56 ` [PATCH 2/2 v2] boost: add support for additional boost libs jackie.huang
1 sibling, 0 replies; 10+ messages in thread
From: jackie.huang @ 2016-09-26 7:56 UTC (permalink / raw)
To: openembedded-core
From: Jackie Huang <jackie.huang@windriver.com>
It's a work around for a defect when build in parallel:
https://svn.boost.org/trac/boost/ticket/12477
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
---
.../boost/boost-math-disable-pch-for-gcc.patch | 31 ++++++++++++++++++++++
meta/recipes-support/boost/boost_1.61.0.bb | 1 +
2 files changed, 32 insertions(+)
create mode 100644 meta/recipes-support/boost/boost/boost-math-disable-pch-for-gcc.patch
diff --git a/meta/recipes-support/boost/boost/boost-math-disable-pch-for-gcc.patch b/meta/recipes-support/boost/boost/boost-math-disable-pch-for-gcc.patch
new file mode 100644
index 0000000..595ba17
--- /dev/null
+++ b/meta/recipes-support/boost/boost/boost-math-disable-pch-for-gcc.patch
@@ -0,0 +1,31 @@
+From cabfcba1ff7511ffd6b91ca244288d44f585aad2 Mon Sep 17 00:00:00 2001
+From: Jackie Huang <jackie.huang@windriver.com>
+Date: Fri, 23 Sep 2016 01:04:50 -0700
+Subject: [PATCH] boost-math: disable pch for gcc
+
+Upstream-Status: Inappropriate [*]
+
+* It's a work around for a defect when build in parallel:
+https://svn.boost.org/trac/boost/ticket/12477
+
+Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
+---
+ libs/math/build/Jamfile.v2 | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/libs/math/build/Jamfile.v2 b/libs/math/build/Jamfile.v2
+index e19fb2e..82472a7 100644
+--- a/libs/math/build/Jamfile.v2
++++ b/libs/math/build/Jamfile.v2
+@@ -13,7 +13,7 @@ project
+ #<toolset>intel-linux:<pch>off
+ <toolset>intel-darwin:<pch>off
+ <toolset>msvc-7.1:<pch>off
+- <toolset>gcc,<target-os>windows:<pch>off
++ <toolset>gcc:<pch>off
+ #<toolset>gcc:<cxxflags>-fvisibility=hidden
+ <toolset>intel-linux:<cxxflags>-fvisibility=hidden
+ #<toolset>sun:<cxxflags>-xldscope=hidden
+--
+2.7.4
+
diff --git a/meta/recipes-support/boost/boost_1.61.0.bb b/meta/recipes-support/boost/boost_1.61.0.bb
index 33f209c..40e3870 100644
--- a/meta/recipes-support/boost/boost_1.61.0.bb
+++ b/meta/recipes-support/boost/boost_1.61.0.bb
@@ -9,4 +9,5 @@ SRC_URI += "\
file://0002-boost-test-execution_monitor.hpp-fix-mips-soft-float.patch \
file://0003-smart_ptr-mips-assembly-doesn-t-compile-in-mips16e-m.patch \
file://0004-Use-atomic-by-default-when-BOOST_NO_CXX11_HDR_ATOMIC.patch \
+ file://boost-math-disable-pch-for-gcc.patch \
"
--
2.8.3
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 2/2 v2] boost: add support for additional boost libs
2016-09-26 7:56 [PATCH 0/2 v2] boost: add support for additional boost libs jackie.huang
2016-09-26 7:56 ` [PATCH 1/2 v2] boost: disable pch when build boost-math jackie.huang
@ 2016-09-26 7:56 ` jackie.huang
2016-09-26 8:53 ` André Draszik
2016-09-27 12:28 ` Burton, Ross
1 sibling, 2 replies; 10+ messages in thread
From: jackie.huang @ 2016-09-26 7:56 UTC (permalink / raw)
To: openembedded-core
From: Jackie Huang <jackie.huang@windriver.com>
* Added libs:
- container
- context
- coroutine
- exception
- graph_parallel
- locale
- math
- mpi
- wave
* Add PACKAGECONFIG to add proper dependencies for:
graph_parallel, locale, and mpi.
* boost-mpi depends on mpich which is in meta-oe,
and boost-graph_parallel depends on boost-mpi,
so they are disabled by default, but can be enabled
in a distro that needs them.
* context and coroutine are added only for x86 and powerpc.
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
---
meta/recipes-support/boost/boost.inc | 33 ++++++++++++++++++++++++++++++---
1 file changed, 30 insertions(+), 3 deletions(-)
diff --git a/meta/recipes-support/boost/boost.inc b/meta/recipes-support/boost/boost.inc
index 5696b6a..7637a4e 100644
--- a/meta/recipes-support/boost/boost.inc
+++ b/meta/recipes-support/boost/boost.inc
@@ -8,11 +8,14 @@ ARM_INSTRUCTION_SET_armv5 = "arm"
BOOST_LIBS = "\
atomic \
chrono \
+ container \
date_time \
+ exception \
filesystem \
graph \
iostreams \
log \
+ math \
program_options \
random \
regex \
@@ -22,12 +25,28 @@ BOOST_LIBS = "\
timer \
test \
thread \
+ wave \
"
-# optional boost-python library
-PACKAGECONFIG ??= ""
+# only supported by x86 and powerpc
+BOOST_LIBS_append_x86 = " context coroutine"
+BOOST_LIBS_append_x86-64 = " context coroutine"
+BOOST_LIBS_append_powerpc = " context coroutine"
+
+# optional libraries
+PACKAGECONFIG ??= "locale"
+PACKAGECONFIG[locale] = ",,icu"
+PACKAGECONFIG[graph_parallel] = ",,,boost-mpi mpich"
+PACKAGECONFIG[mpi] = ",,mpich"
PACKAGECONFIG[python] = ",,python python3"
-BOOST_LIBS += "${@bb.utils.contains('PACKAGECONFIG', 'python', 'python python3', '', d)}"
+
+BOOST_LIBS += "\
+ ${@bb.utils.contains('PACKAGECONFIG', 'locale', 'locale', '', d)} \
+ ${@bb.utils.contains('PACKAGECONFIG', 'graph_parallel', 'graph_parallel mpi', \
+ bb.utils.contains('PACKAGECONFIG', 'mpi', 'mpi', '', d), d)} \
+ ${@bb.utils.contains('PACKAGECONFIG', 'python', 'python python3', '', d)} \
+"
+
inherit python-dir
PYTHON_ROOT = "${STAGING_DIR_HOST}/${prefix}"
@@ -54,6 +73,10 @@ python __anonymous () {
}
# Override the contents of specific packages
+FILES_${PN}-graph = "${libdir}/libboost_graph.so.*"
+FILES_${PN}-graph_parallel = "${libdir}/libboost_graph_parallel.so.*"
+FILES_${PN}-locale = "${libdir}/libboost_locale.so.*"
+FILES_${PN}-mpi = "${libdir}/mpi.so ${libdir}/libboost_mpi*.so.*"
FILES_boost-serialization = "${libdir}/libboost_serialization*.so.* \
${libdir}/libboost_wserialization*.so.*"
FILES_boost-test = "${libdir}/libboost_prg_exec_monitor*.so.* \
@@ -159,6 +182,10 @@ do_configure() {
echo "using python : ${PYTHON_BASEVERSION} : : ${STAGING_INCDIR}/python${PYTHON_BASEVERSION} ;" >> ${WORKDIR}/user-config.jam
echo "using python : 3.5 : : ${STAGING_INCDIR}/python3.5m ;" >> ${WORKDIR}/user-config.jam
+ if ${@bb.utils.contains('BOOST_LIBS', 'mpi', 'true', 'false', d)}; then
+ echo "using mpi : : <find-shared-library>mpi ;" >> ${WORKDIR}/user-config.jam
+ fi
+
CC="${BUILD_CC}" CFLAGS="${BUILD_CFLAGS}" ./bootstrap.sh --with-bjam=bjam --with-toolset=gcc --with-python-root=${PYTHON_ROOT}
sed -i '/^using python/d' ${S}/project-config.jam
}
--
2.8.3
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH 2/2 v2] boost: add support for additional boost libs
2016-09-26 7:56 ` [PATCH 2/2 v2] boost: add support for additional boost libs jackie.huang
@ 2016-09-26 8:53 ` André Draszik
2016-09-27 2:26 ` Huang, Jie (Jackie)
2016-09-27 12:28 ` Burton, Ross
1 sibling, 1 reply; 10+ messages in thread
From: André Draszik @ 2016-09-26 8:53 UTC (permalink / raw)
To: jackie.huang, openembedded-core
On Mo, 2016-09-26 at 15:56 +0800, jackie.huang@windriver.com wrote:
> From: Jackie Huang <jackie.huang@windriver.com>
>
> * Added libs:
> - container
> - context
> - coroutine
> - exception
> - graph_parallel
> - locale
> - math
> - mpi
> - wave
>
> * Add PACKAGECONFIG to add proper dependencies for:
> graph_parallel, locale, and mpi.
>
> * boost-mpi depends on mpich which is in meta-oe,
> and boost-graph_parallel depends on boost-mpi,
> so they are disabled by default, but can be enabled
> in a distro that needs them.
>
> * context and coroutine are added only for x86 and powerpc.
>
> Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
> ---
> meta/recipes-support/boost/boost.inc | 33 ++++++++++++++++++++++++++++++-
> --
> 1 file changed, 30 insertions(+), 3 deletions(-)
>
> diff --git a/meta/recipes-support/boost/boost.inc b/meta/recipes-
> support/boost/boost.inc
> index 5696b6a..7637a4e 100644
> --- a/meta/recipes-support/boost/boost.inc
> +++ b/meta/recipes-support/boost/boost.inc
> @@ -8,11 +8,14 @@ ARM_INSTRUCTION_SET_armv5 = "arm"
> BOOST_LIBS = "\
> atomic \
> chrono \
> + container \
> date_time \
> + exception \
> filesystem \
> graph \
> iostreams \
> log \
> + math \
> program_options \
> random \
> regex \
> @@ -22,12 +25,28 @@ BOOST_LIBS = "\
> timer \
> test \
> thread \
> + wave \
> "
>
> -# optional boost-python library
> -PACKAGECONFIG ??= ""
> +# only supported by x86 and powerpc
> +BOOST_LIBS_append_x86 = " context coroutine"
> +BOOST_LIBS_append_x86-64 = " context coroutine"
> +BOOST_LIBS_append_powerpc = " context coroutine"
> +
> +# optional libraries
> +PACKAGECONFIG ??= "locale"
> +PACKAGECONFIG[locale] = ",,icu"
> +PACKAGECONFIG[graph_parallel] = ",,,boost-mpi mpich"
> +PACKAGECONFIG[mpi] = ",,mpich"
> PACKAGECONFIG[python] = ",,python python3"
> -BOOST_LIBS += "${@bb.utils.contains('PACKAGECONFIG', 'python', 'python
> python3', '', d)}"
> +
> +BOOST_LIBS += "\
> + ${@bb.utils.contains('PACKAGECONFIG', 'locale', 'locale', '', d)} \
> + ${@bb.utils.contains('PACKAGECONFIG', 'graph_parallel',
> 'graph_parallel mpi', \
> + bb.utils.contains('PACKAGECONFIG', 'mpi', 'mpi',
> '', d), d)} \
> + ${@bb.utils.contains('PACKAGECONFIG', 'python', 'python python3', '',
> d)} \
> +"
Rather than having two ways to define what packages to build, PACKAGECONFIG
and BOOST_LIBS, where each of them only supports a different subset of
boost's libraries, can we just have one, PACKAGECONFIG, and have it support
all of the potential libraries?
Cheers,
Andre'
> +
> inherit python-dir
> PYTHON_ROOT = "${STAGING_DIR_HOST}/${prefix}"
>
> @@ -54,6 +73,10 @@ python __anonymous () {
> }
>
> # Override the contents of specific packages
> +FILES_${PN}-graph = "${libdir}/libboost_graph.so.*"
> +FILES_${PN}-graph_parallel = "${libdir}/libboost_graph_parallel.so.*"
> +FILES_${PN}-locale = "${libdir}/libboost_locale.so.*"
> +FILES_${PN}-mpi = "${libdir}/mpi.so ${libdir}/libboost_mpi*.so.*"
> FILES_boost-serialization = "${libdir}/libboost_serialization*.so.* \
> ${libdir}/libboost_wserialization*.so.*"
> FILES_boost-test = "${libdir}/libboost_prg_exec_monitor*.so.* \
> @@ -159,6 +182,10 @@ do_configure() {
> echo "using python : ${PYTHON_BASEVERSION} : :
> ${STAGING_INCDIR}/python${PYTHON_BASEVERSION} ;" >> ${WORKDIR}/user-
> config.jam
> echo "using python : 3.5 : : ${STAGING_INCDIR}/python3.5m ;" >>
> ${WORKDIR}/user-config.jam
>
> + if ${@bb.utils.contains('BOOST_LIBS', 'mpi', 'true', 'false',
> d)}; then
> + echo "using mpi : : <find-shared-library>mpi ;" >>
> ${WORKDIR}/user-config.jam
> + fi
> +
> CC="${BUILD_CC}" CFLAGS="${BUILD_CFLAGS}" ./bootstrap.sh --with-
> bjam=bjam --with-toolset=gcc --with-python-root=${PYTHON_ROOT}
> sed -i '/^using python/d' ${S}/project-config.jam
> }
> --
> 2.8.3
>
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 2/2 v2] boost: add support for additional boost libs
2016-09-26 8:53 ` André Draszik
@ 2016-09-27 2:26 ` Huang, Jie (Jackie)
2016-09-27 8:08 ` André Draszik
0 siblings, 1 reply; 10+ messages in thread
From: Huang, Jie (Jackie) @ 2016-09-27 2:26 UTC (permalink / raw)
To: André Draszik, openembedded-core
> -----Original Message-----
> From: André Draszik [mailto:git@andred.net]
> Sent: Monday, September 26, 2016 4:54 PM
> To: Huang, Jie (Jackie); openembedded-core@lists.openembedded.org
> Subject: Re: [OE-core] [PATCH 2/2 v2] boost: add support for additional boost libs
>
> On Mo, 2016-09-26 at 15:56 +0800, jackie.huang@windriver.com wrote:
> > From: Jackie Huang <jackie.huang@windriver.com>
> >
> > * Added libs:
> > - container
> > - context
> > - coroutine
> > - exception
> > - graph_parallel
> > - locale
> > - math
> > - mpi
> > - wave
> >
> > * Add PACKAGECONFIG to add proper dependencies for:
> > graph_parallel, locale, and mpi.
> >
> > * boost-mpi depends on mpich which is in meta-oe,
> > and boost-graph_parallel depends on boost-mpi,
> > so they are disabled by default, but can be enabled
> > in a distro that needs them.
> >
> > * context and coroutine are added only for x86 and powerpc.
> >
> > Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
> > ---
> > meta/recipes-support/boost/boost.inc | 33 ++++++++++++++++++++++++++++++-
> > --
> > 1 file changed, 30 insertions(+), 3 deletions(-)
> >
> > diff --git a/meta/recipes-support/boost/boost.inc b/meta/recipes-
> > support/boost/boost.inc
> > index 5696b6a..7637a4e 100644
> > --- a/meta/recipes-support/boost/boost.inc
> > +++ b/meta/recipes-support/boost/boost.inc
> > @@ -8,11 +8,14 @@ ARM_INSTRUCTION_SET_armv5 = "arm"
> > BOOST_LIBS = "\
> > atomic \
> > chrono \
> > + container \
> > date_time \
> > + exception \
> > filesystem \
> > graph \
> > iostreams \
> > log \
> > + math \
> > program_options \
> > random \
> > regex \
> > @@ -22,12 +25,28 @@ BOOST_LIBS = "\
> > timer \
> > test \
> > thread \
> > + wave \
> > "
> >
> > -# optional boost-python library
> > -PACKAGECONFIG ??= ""
> > +# only supported by x86 and powerpc
> > +BOOST_LIBS_append_x86 = " context coroutine"
> > +BOOST_LIBS_append_x86-64 = " context coroutine"
> > +BOOST_LIBS_append_powerpc = " context coroutine"
> > +
> > +# optional libraries
> > +PACKAGECONFIG ??= "locale"
> > +PACKAGECONFIG[locale] = ",,icu"
> > +PACKAGECONFIG[graph_parallel] = ",,,boost-mpi mpich"
> > +PACKAGECONFIG[mpi] = ",,mpich"
> > PACKAGECONFIG[python] = ",,python python3"
> > -BOOST_LIBS += "${@bb.utils.contains('PACKAGECONFIG', 'python', 'python
> > python3', '', d)}"
> > +
> > +BOOST_LIBS += "\
> > + ${@bb.utils.contains('PACKAGECONFIG', 'locale', 'locale', '', d)} \
> > + ${@bb.utils.contains('PACKAGECONFIG', 'graph_parallel',
> > 'graph_parallel mpi', \
> > + bb.utils.contains('PACKAGECONFIG', 'mpi', 'mpi',
> > '', d), d)} \
> > + ${@bb.utils.contains('PACKAGECONFIG', 'python', 'python python3', '',
> > d)} \
> > +"
>
> Rather than having two ways to define what packages to build, PACKAGECONFIG
> and BOOST_LIBS, where each of them only supports a different subset of
I'm not a fan of this way, I just keep using the way it was.
> boost's libraries, can we just have one, PACKAGECONFIG, and have it support
> all of the potential libraries?
Yes, I think it's possible, but it will most likely end up with many empty
PACKAGECONFIG definitions like:
PACKAGECONFIG[atomic] = ",,,"
PACKAGECONFIG[chrono] = ",,,"
PACKAGECONFIG[container] = ",,,"
PACKAGECONFIG[date_time] = ",,,"
PACKAGECONFIG[exception] = ",,,"
If you think it's a better way and no other objection, I think I will do that in a
separate commit as follow-up.
Thanks,
Jackie
>
>
> Cheers,
> Andre'
>
>
> > +
> > inherit python-dir
> > PYTHON_ROOT = "${STAGING_DIR_HOST}/${prefix}"
> >
> > @@ -54,6 +73,10 @@ python __anonymous () {
> > }
> >
> > # Override the contents of specific packages
> > +FILES_${PN}-graph = "${libdir}/libboost_graph.so.*"
> > +FILES_${PN}-graph_parallel = "${libdir}/libboost_graph_parallel.so.*"
> > +FILES_${PN}-locale = "${libdir}/libboost_locale.so.*"
> > +FILES_${PN}-mpi = "${libdir}/mpi.so ${libdir}/libboost_mpi*.so.*"
> > FILES_boost-serialization = "${libdir}/libboost_serialization*.so.* \
> > ${libdir}/libboost_wserialization*.so.*"
> > FILES_boost-test = "${libdir}/libboost_prg_exec_monitor*.so.* \
> > @@ -159,6 +182,10 @@ do_configure() {
> > echo "using python : ${PYTHON_BASEVERSION} : :
> > ${STAGING_INCDIR}/python${PYTHON_BASEVERSION} ;" >> ${WORKDIR}/user-
> > config.jam
> > echo "using python : 3.5 : : ${STAGING_INCDIR}/python3.5m ;" >>
> > ${WORKDIR}/user-config.jam
> >
> > + if ${@bb.utils.contains('BOOST_LIBS', 'mpi', 'true', 'false',
> > d)}; then
> > + echo "using mpi : : <find-shared-library>mpi ;" >>
> > ${WORKDIR}/user-config.jam
> > + fi
> > +
> > CC="${BUILD_CC}" CFLAGS="${BUILD_CFLAGS}" ./bootstrap.sh --with-
> > bjam=bjam --with-toolset=gcc --with-python-root=${PYTHON_ROOT}
> > sed -i '/^using python/d' ${S}/project-config.jam
> > }
> > --
> > 2.8.3
> >
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 2/2 v2] boost: add support for additional boost libs
2016-09-27 2:26 ` Huang, Jie (Jackie)
@ 2016-09-27 8:08 ` André Draszik
2016-09-27 8:22 ` Huang, Jie (Jackie)
0 siblings, 1 reply; 10+ messages in thread
From: André Draszik @ 2016-09-27 8:08 UTC (permalink / raw)
To: Huang, Jie (Jackie), openembedded-core
On Di, 2016-09-27 at 02:26 +0000, Huang, Jie (Jackie) wrote:
>
> >
> > -----Original Message-----
> > From: André Draszik [mailto:git@andred.net]
> > Sent: Monday, September 26, 2016 4:54 PM
> > To: Huang, Jie (Jackie); openembedded-core@lists.openembedded.org
> > Subject: Re: [OE-core] [PATCH 2/2 v2] boost: add support for additional
> > boost libs
> >
> > On Mo, 2016-09-26 at 15:56 +0800, jackie.huang@windriver.com wrote:
> > >
> > > From: Jackie Huang <jackie.huang@windriver.com>
> > >
> > > * Added libs:
> > > - container
> > > - context
> > > - coroutine
> > > - exception
> > > - graph_parallel
> > > - locale
> > > - math
> > > - mpi
> > > - wave
> > >
> > > * Add PACKAGECONFIG to add proper dependencies for:
> > > graph_parallel, locale, and mpi.
> > >
> > > * boost-mpi depends on mpich which is in meta-oe,
> > > and boost-graph_parallel depends on boost-mpi,
> > > so they are disabled by default, but can be enabled
> > > in a distro that needs them.
> > >
> > > * context and coroutine are added only for x86 and powerpc.
> > >
> > > Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
> > > ---
> > > meta/recipes-support/boost/boost.inc | 33
> > > ++++++++++++++++++++++++++++++-
> > > --
> > > 1 file changed, 30 insertions(+), 3 deletions(-)
> > >
> > > diff --git a/meta/recipes-support/boost/boost.inc b/meta/recipes-
> > > support/boost/boost.inc
> > > index 5696b6a..7637a4e 100644
> > > --- a/meta/recipes-support/boost/boost.inc
> > > +++ b/meta/recipes-support/boost/boost.inc
> > > @@ -8,11 +8,14 @@ ARM_INSTRUCTION_SET_armv5 = "arm"
> > > BOOST_LIBS = "\
> > > atomic \
> > > chrono \
> > > + container \
> > > date_time \
> > > + exception \
> > > filesystem \
> > > graph \
> > > iostreams \
> > > log \
> > > + math \
> > > program_options \
> > > random \
> > > regex \
> > > @@ -22,12 +25,28 @@ BOOST_LIBS = "\
> > > timer \
> > > test \
> > > thread \
> > > + wave \
> > > "
> > >
> > > -# optional boost-python library
> > > -PACKAGECONFIG ??= ""
> > > +# only supported by x86 and powerpc
> > > +BOOST_LIBS_append_x86 = " context coroutine"
> > > +BOOST_LIBS_append_x86-64 = " context coroutine"
> > > +BOOST_LIBS_append_powerpc = " context coroutine"
> > > +
> > > +# optional libraries
> > > +PACKAGECONFIG ??= "locale"
> > > +PACKAGECONFIG[locale] = ",,icu"
> > > +PACKAGECONFIG[graph_parallel] = ",,,boost-mpi mpich"
> > > +PACKAGECONFIG[mpi] = ",,mpich"
> > > PACKAGECONFIG[python] = ",,python python3"
> > > -BOOST_LIBS += "${@bb.utils.contains('PACKAGECONFIG', 'python',
> > > 'python
> > > python3', '', d)}"
> > > +
> > > +BOOST_LIBS += "\
> > > + ${@bb.utils.contains('PACKAGECONFIG', 'locale', 'locale', '', d)}
> > > \
> > > + ${@bb.utils.contains('PACKAGECONFIG', 'graph_parallel',
> > > 'graph_parallel mpi', \
> > > + bb.utils.contains('PACKAGECONFIG', 'mpi',
> > > 'mpi',
> > > '', d), d)} \
> > > + ${@bb.utils.contains('PACKAGECONFIG', 'python', 'python python3',
> > > '',
> > > d)} \
> > > +"
> >
> > Rather than having two ways to define what packages to build,
> > PACKAGECONFIG
> > and BOOST_LIBS, where each of them only supports a different subset of
>
> I'm not a fan of this way, I just keep using the way it was.
>
> >
> > boost's libraries, can we just have one, PACKAGECONFIG, and have it
> > support
> > all of the potential libraries?
>
> Yes, I think it's possible, but it will most likely end up with many empty
> PACKAGECONFIG definitions like:
> PACKAGECONFIG[atomic] = ",,,"
> PACKAGECONFIG[chrono] = ",,,"
> PACKAGECONFIG[container] = ",,,"
> PACKAGECONFIG[date_time] = ",,,"
> PACKAGECONFIG[exception] = ",,,"
>
> If you think it's a better way and no other objection, I think I will do
> that in a
> separate commit as follow-up.
I don't think you'd need empty PACKAGECONFIG[flag] definitions, see
base.bbclass.
Cheers,
Andre'
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 2/2 v2] boost: add support for additional boost libs
2016-09-27 8:08 ` André Draszik
@ 2016-09-27 8:22 ` Huang, Jie (Jackie)
2016-09-27 9:13 ` André Draszik
0 siblings, 1 reply; 10+ messages in thread
From: Huang, Jie (Jackie) @ 2016-09-27 8:22 UTC (permalink / raw)
To: André Draszik, openembedded-core
> -----Original Message-----
> From: André Draszik [mailto:git@andred.net]
> Sent: Tuesday, September 27, 2016 4:09 PM
> To: Huang, Jie (Jackie); openembedded-core@lists.openembedded.org
> Subject: Re: [OE-core] [PATCH 2/2 v2] boost: add support for additional boost libs
>
> On Di, 2016-09-27 at 02:26 +0000, Huang, Jie (Jackie) wrote:
> >
> > >
> > > -----Original Message-----
> > > From: André Draszik [mailto:git@andred.net]
> > > Sent: Monday, September 26, 2016 4:54 PM
> > > To: Huang, Jie (Jackie); openembedded-core@lists.openembedded.org
> > > Subject: Re: [OE-core] [PATCH 2/2 v2] boost: add support for additional
> > > boost libs
> > >
> > > On Mo, 2016-09-26 at 15:56 +0800, jackie.huang@windriver.com wrote:
> > > >
> > > > From: Jackie Huang <jackie.huang@windriver.com>
> > > >
> > > > * Added libs:
> > > > - container
> > > > - context
> > > > - coroutine
> > > > - exception
> > > > - graph_parallel
> > > > - locale
> > > > - math
> > > > - mpi
> > > > - wave
> > > >
> > > > * Add PACKAGECONFIG to add proper dependencies for:
> > > > graph_parallel, locale, and mpi.
> > > >
> > > > * boost-mpi depends on mpich which is in meta-oe,
> > > > and boost-graph_parallel depends on boost-mpi,
> > > > so they are disabled by default, but can be enabled
> > > > in a distro that needs them.
> > > >
> > > > * context and coroutine are added only for x86 and powerpc.
> > > >
> > > > Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
> > > > ---
> > > > meta/recipes-support/boost/boost.inc | 33
> > > > ++++++++++++++++++++++++++++++-
> > > > --
> > > > 1 file changed, 30 insertions(+), 3 deletions(-)
> > > >
> > > > diff --git a/meta/recipes-support/boost/boost.inc b/meta/recipes-
> > > > support/boost/boost.inc
> > > > index 5696b6a..7637a4e 100644
> > > > --- a/meta/recipes-support/boost/boost.inc
> > > > +++ b/meta/recipes-support/boost/boost.inc
> > > > @@ -8,11 +8,14 @@ ARM_INSTRUCTION_SET_armv5 = "arm"
> > > > BOOST_LIBS = "\
> > > > atomic \
> > > > chrono \
> > > > + container \
> > > > date_time \
> > > > + exception \
> > > > filesystem \
> > > > graph \
> > > > iostreams \
> > > > log \
> > > > + math \
> > > > program_options \
> > > > random \
> > > > regex \
> > > > @@ -22,12 +25,28 @@ BOOST_LIBS = "\
> > > > timer \
> > > > test \
> > > > thread \
> > > > + wave \
> > > > "
> > > >
> > > > -# optional boost-python library
> > > > -PACKAGECONFIG ??= ""
> > > > +# only supported by x86 and powerpc
> > > > +BOOST_LIBS_append_x86 = " context coroutine"
> > > > +BOOST_LIBS_append_x86-64 = " context coroutine"
> > > > +BOOST_LIBS_append_powerpc = " context coroutine"
> > > > +
> > > > +# optional libraries
> > > > +PACKAGECONFIG ??= "locale"
> > > > +PACKAGECONFIG[locale] = ",,icu"
> > > > +PACKAGECONFIG[graph_parallel] = ",,,boost-mpi mpich"
> > > > +PACKAGECONFIG[mpi] = ",,mpich"
> > > > PACKAGECONFIG[python] = ",,python python3"
> > > > -BOOST_LIBS += "${@bb.utils.contains('PACKAGECONFIG', 'python',
> > > > 'python
> > > > python3', '', d)}"
> > > > +
> > > > +BOOST_LIBS += "\
> > > > + ${@bb.utils.contains('PACKAGECONFIG', 'locale', 'locale', '', d)}
> > > > \
> > > > + ${@bb.utils.contains('PACKAGECONFIG', 'graph_parallel',
> > > > 'graph_parallel mpi', \
> > > > + bb.utils.contains('PACKAGECONFIG', 'mpi',
> > > > 'mpi',
> > > > '', d), d)} \
> > > > + ${@bb.utils.contains('PACKAGECONFIG', 'python', 'python python3',
> > > > '',
> > > > d)} \
> > > > +"
> > >
> > > Rather than having two ways to define what packages to build,
> > > PACKAGECONFIG
> > > and BOOST_LIBS, where each of them only supports a different subset of
> >
> > I'm not a fan of this way, I just keep using the way it was.
> >
> > >
> > > boost's libraries, can we just have one, PACKAGECONFIG, and have it
> > > support
> > > all of the potential libraries?
> >
> > Yes, I think it's possible, but it will most likely end up with many empty
> > PACKAGECONFIG definitions like:
> > PACKAGECONFIG[atomic] = ",,,"
> > PACKAGECONFIG[chrono] = ",,,"
> > PACKAGECONFIG[container] = ",,,"
> > PACKAGECONFIG[date_time] = ",,,"
> > PACKAGECONFIG[exception] = ",,,"
> >
> > If you think it's a better way and no other objection, I think I will do
> > that in a
> > separate commit as follow-up.
>
> I don't think you'd need empty PACKAGECONFIG[flag] definitions, see
> base.bbclass.
Could you be more specific?
I think it's needed because I got QA issues without the definitions:
WARNING: boost-1.61.0-r0 do_configure: QA Issue: boost: invalid PACKAGECONFIG: atomic [invalid-packageconfig]
Thanks,
Jackie
>
> Cheers,
> Andre'
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 2/2 v2] boost: add support for additional boost libs
2016-09-27 8:22 ` Huang, Jie (Jackie)
@ 2016-09-27 9:13 ` André Draszik
0 siblings, 0 replies; 10+ messages in thread
From: André Draszik @ 2016-09-27 9:13 UTC (permalink / raw)
To: Huang, Jie (Jackie), openembedded-core
On Di, 2016-09-27 at 08:22 +0000, Huang, Jie (Jackie) wrote:
>
> >
> > -----Original Message-----
> > From: André Draszik [mailto:git@andred.net]
> > Sent: Tuesday, September 27, 2016 4:09 PM
> > To: Huang, Jie (Jackie); openembedded-core@lists.openembedded.org
> > Subject: Re: [OE-core] [PATCH 2/2 v2] boost: add support for additional
> > boost libs
> >
> > On Di, 2016-09-27 at 02:26 +0000, Huang, Jie (Jackie) wrote:
> > >
> > >
> > > >
> > > >
> > > > -----Original Message-----
> > > > From: André Draszik [mailto:git@andred.net]
> > > > Sent: Monday, September 26, 2016 4:54 PM
> > > > To: Huang, Jie (Jackie); openembedded-core@lists.openembedded.org
> > > > Subject: Re: [OE-core] [PATCH 2/2 v2] boost: add support for
> > > > additional
> > > > boost libs
> > > >
> > > > On Mo, 2016-09-26 at 15:56 +0800, jackie.huang@windriver.com wrote:
> > > > >
> > > > >
> > > > > From: Jackie Huang <jackie.huang@windriver.com>
> > > > >
> > > > > * Added libs:
> > > > > - container
> > > > > - context
> > > > > - coroutine
> > > > > - exception
> > > > > - graph_parallel
> > > > > - locale
> > > > > - math
> > > > > - mpi
> > > > > - wave
> > > > >
> > > > > * Add PACKAGECONFIG to add proper dependencies for:
> > > > > graph_parallel, locale, and mpi.
> > > > >
> > > > > * boost-mpi depends on mpich which is in meta-oe,
> > > > > and boost-graph_parallel depends on boost-mpi,
> > > > > so they are disabled by default, but can be enabled
> > > > > in a distro that needs them.
> > > > >
> > > > > * context and coroutine are added only for x86 and powerpc.
> > > > >
> > > > > Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
> > > > > ---
> > > > > meta/recipes-support/boost/boost.inc | 33
> > > > > ++++++++++++++++++++++++++++++-
> > > > > --
> > > > > 1 file changed, 30 insertions(+), 3 deletions(-)
> > > > >
> > > > > diff --git a/meta/recipes-support/boost/boost.inc b/meta/recipes-
> > > > > support/boost/boost.inc
> > > > > index 5696b6a..7637a4e 100644
> > > > > --- a/meta/recipes-support/boost/boost.inc
> > > > > +++ b/meta/recipes-support/boost/boost.inc
> > > > > @@ -8,11 +8,14 @@ ARM_INSTRUCTION_SET_armv5 = "arm"
> > > > > BOOST_LIBS = "\
> > > > > atomic \
> > > > > chrono \
> > > > > + container \
> > > > > date_time \
> > > > > + exception \
> > > > > filesystem \
> > > > > graph \
> > > > > iostreams \
> > > > > log \
> > > > > + math \
> > > > > program_options \
> > > > > random \
> > > > > regex \
> > > > > @@ -22,12 +25,28 @@ BOOST_LIBS = "\
> > > > > timer \
> > > > > test \
> > > > > thread \
> > > > > + wave \
> > > > > "
> > > > >
> > > > > -# optional boost-python library
> > > > > -PACKAGECONFIG ??= ""
> > > > > +# only supported by x86 and powerpc
> > > > > +BOOST_LIBS_append_x86 = " context coroutine"
> > > > > +BOOST_LIBS_append_x86-64 = " context coroutine"
> > > > > +BOOST_LIBS_append_powerpc = " context coroutine"
> > > > > +
> > > > > +# optional libraries
> > > > > +PACKAGECONFIG ??= "locale"
> > > > > +PACKAGECONFIG[locale] = ",,icu"
> > > > > +PACKAGECONFIG[graph_parallel] = ",,,boost-mpi mpich"
> > > > > +PACKAGECONFIG[mpi] = ",,mpich"
> > > > > PACKAGECONFIG[python] = ",,python python3"
> > > > > -BOOST_LIBS += "${@bb.utils.contains('PACKAGECONFIG', 'python',
> > > > > 'python
> > > > > python3', '', d)}"
> > > > > +
> > > > > +BOOST_LIBS += "\
> > > > > + ${@bb.utils.contains('PACKAGECONFIG', 'locale', 'locale', '',
> > > > > d)}
> > > > > \
> > > > > + ${@bb.utils.contains('PACKAGECONFIG', 'graph_parallel',
> > > > > 'graph_parallel mpi', \
> > > > > + bb.utils.contains('PACKAGECONFIG',
> > > > > 'mpi',
> > > > > 'mpi',
> > > > > '', d), d)} \
> > > > > + ${@bb.utils.contains('PACKAGECONFIG', 'python', 'python
> > > > > python3',
> > > > > '',
> > > > > d)} \
> > > > > +"
> > > >
> > > > Rather than having two ways to define what packages to build,
> > > > PACKAGECONFIG
> > > > and BOOST_LIBS, where each of them only supports a different subset
> > > > of
> > >
> > > I'm not a fan of this way, I just keep using the way it was.
> > >
> > > >
> > > >
> > > > boost's libraries, can we just have one, PACKAGECONFIG, and have it
> > > > support
> > > > all of the potential libraries?
> > >
> > > Yes, I think it's possible, but it will most likely end up with many
> > > empty
> > > PACKAGECONFIG definitions like:
> > > PACKAGECONFIG[atomic] = ",,,"
> > > PACKAGECONFIG[chrono] = ",,,"
> > > PACKAGECONFIG[container] = ",,,"
> > > PACKAGECONFIG[date_time] = ",,,"
> > > PACKAGECONFIG[exception] = ",,,"
> > >
> > > If you think it's a better way and no other objection, I think I will
> > > do
> > > that in a
> > > separate commit as follow-up.
> >
> > I don't think you'd need empty PACKAGECONFIG[flag] definitions, see
> > base.bbclass.
>
> Could you be more specific?
>
> I think it's needed because I got QA issues without the definitions:
>
> WARNING: boost-1.61.0-r0 do_configure: QA Issue: boost: invalid
> PACKAGECONFIG: atomic [invalid-packageconfig]
OK, you're right. That's from insane.bbclass :-(
Cheers,
Andre'
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 2/2 v2] boost: add support for additional boost libs
2016-09-26 7:56 ` [PATCH 2/2 v2] boost: add support for additional boost libs jackie.huang
2016-09-26 8:53 ` André Draszik
@ 2016-09-27 12:28 ` Burton, Ross
2016-09-28 0:43 ` Huang, Jie (Jackie)
1 sibling, 1 reply; 10+ messages in thread
From: Burton, Ross @ 2016-09-27 12:28 UTC (permalink / raw)
To: jackie.huang; +Cc: OE-core
[-- Attachment #1: Type: text/plain, Size: 475 bytes --]
On 26 September 2016 at 08:56, <jackie.huang@windriver.com> wrote:
> +FILES_${PN}-graph = "${libdir}/libboost_graph.so.*"
> +FILES_${PN}-graph_parallel = "${libdir}/libboost_graph_parallel.so.*"
> +FILES_${PN}-locale = "${libdir}/libboost_locale.so.*"
> +FILES_${PN}-mpi = "${libdir}/mpi.so ${libdir}/libboost_mpi*.so.*"
>
Are all of these really required? Apart from ${libdir}/mpi.so they look
like they'll be handled by the Python logic in the recipe.
Ross
[-- Attachment #2: Type: text/html, Size: 950 bytes --]
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 2/2 v2] boost: add support for additional boost libs
2016-09-27 12:28 ` Burton, Ross
@ 2016-09-28 0:43 ` Huang, Jie (Jackie)
0 siblings, 0 replies; 10+ messages in thread
From: Huang, Jie (Jackie) @ 2016-09-28 0:43 UTC (permalink / raw)
To: BURTON, ROSS; +Cc: OE-core
[-- Attachment #1: Type: text/plain, Size: 1229 bytes --]
Yes, they are needed for the cases not handled by the python logic, or I met QA issues:
WARNING: Variable key FILES_${PN}-locale (${datadir}/locale) replaces original key FILES_boost-locale (${libdir}/libboost_locale.so.*)
WARNING: boost-1.61.0-r0 do_package: QA Issue: boost: Files/directories were installed but not shipped in any package:
/usr/lib64/libboost_locale.so.1.61.0
For the graph parts, all libboost_graph* will go into PN-graph and PN-graph_parallel will be empty.
Thanks,
Jackie
From: Burton, Ross [mailto:ross.burton@intel.com]
Sent: Tuesday, September 27, 2016 8:29 PM
To: Huang, Jie (Jackie)
Cc: OE-core
Subject: Re: [OE-core] [PATCH 2/2 v2] boost: add support for additional boost libs
On 26 September 2016 at 08:56, <jackie.huang@windriver.com<mailto:jackie.huang@windriver.com>> wrote:
+FILES_${PN}-graph = "${libdir}/libboost_graph.so.*"
+FILES_${PN}-graph_parallel = "${libdir}/libboost_graph_parallel.so.*"
+FILES_${PN}-locale = "${libdir}/libboost_locale.so.*"
+FILES_${PN}-mpi = "${libdir}/mpi.so ${libdir}/libboost_mpi*.so.*"
Are all of these really required? Apart from ${libdir}/mpi.so they look like they'll be handled by the Python logic in the recipe.
Ross
[-- Attachment #2: Type: text/html, Size: 5742 bytes --]
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2016-09-28 0:43 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-09-26 7:56 [PATCH 0/2 v2] boost: add support for additional boost libs jackie.huang
2016-09-26 7:56 ` [PATCH 1/2 v2] boost: disable pch when build boost-math jackie.huang
2016-09-26 7:56 ` [PATCH 2/2 v2] boost: add support for additional boost libs jackie.huang
2016-09-26 8:53 ` André Draszik
2016-09-27 2:26 ` Huang, Jie (Jackie)
2016-09-27 8:08 ` André Draszik
2016-09-27 8:22 ` Huang, Jie (Jackie)
2016-09-27 9:13 ` André Draszik
2016-09-27 12:28 ` Burton, Ross
2016-09-28 0:43 ` Huang, Jie (Jackie)
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.