summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJackie Huang <jackie.huang@windriver.com>2016-09-26 15:56:29 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-09-28 10:16:03 +0100
commitb7fac3f2607097aafa20a09efe3fb5f3a507bc2f (patch)
tree2b856717d160e0cb411d783b1b05794b4de262c9
parent55cab158e45bd3f2b961ddbe7faf625c0be64d8c (diff)
downloadpoky-b7fac3f2607097aafa20a09efe3fb5f3a507bc2f.tar.gz
boost: add support for additional boost libs
* 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. (From OE-Core rev: a715a4ef10eed0ccffac1c38af89e16090d8159e) Signed-off-by: Jackie Huang <jackie.huang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-support/boost/boost.inc33
1 files changed, 30 insertions, 3 deletions
diff --git a/meta/recipes-support/boost/boost.inc b/meta/recipes-support/boost/boost.inc
index 5696b6adb6..7637a4e932 100644
--- a/meta/recipes-support/boost/boost.inc
+++ b/meta/recipes-support/boost/boost.inc
@@ -8,11 +8,14 @@ ARM_INSTRUCTION_SET_armv5 = "arm"
8BOOST_LIBS = "\ 8BOOST_LIBS = "\
9 atomic \ 9 atomic \
10 chrono \ 10 chrono \
11 container \
11 date_time \ 12 date_time \
13 exception \
12 filesystem \ 14 filesystem \
13 graph \ 15 graph \
14 iostreams \ 16 iostreams \
15 log \ 17 log \
18 math \
16 program_options \ 19 program_options \
17 random \ 20 random \
18 regex \ 21 regex \
@@ -22,12 +25,28 @@ BOOST_LIBS = "\
22 timer \ 25 timer \
23 test \ 26 test \
24 thread \ 27 thread \
28 wave \
25 " 29 "
26 30
27# optional boost-python library 31# only supported by x86 and powerpc
28PACKAGECONFIG ??= "" 32BOOST_LIBS_append_x86 = " context coroutine"
33BOOST_LIBS_append_x86-64 = " context coroutine"
34BOOST_LIBS_append_powerpc = " context coroutine"
35
36# optional libraries
37PACKAGECONFIG ??= "locale"
38PACKAGECONFIG[locale] = ",,icu"
39PACKAGECONFIG[graph_parallel] = ",,,boost-mpi mpich"
40PACKAGECONFIG[mpi] = ",,mpich"
29PACKAGECONFIG[python] = ",,python python3" 41PACKAGECONFIG[python] = ",,python python3"
30BOOST_LIBS += "${@bb.utils.contains('PACKAGECONFIG', 'python', 'python python3', '', d)}" 42
43BOOST_LIBS += "\
44 ${@bb.utils.contains('PACKAGECONFIG', 'locale', 'locale', '', d)} \
45 ${@bb.utils.contains('PACKAGECONFIG', 'graph_parallel', 'graph_parallel mpi', \
46 bb.utils.contains('PACKAGECONFIG', 'mpi', 'mpi', '', d), d)} \
47 ${@bb.utils.contains('PACKAGECONFIG', 'python', 'python python3', '', d)} \
48"
49
31inherit python-dir 50inherit python-dir
32PYTHON_ROOT = "${STAGING_DIR_HOST}/${prefix}" 51PYTHON_ROOT = "${STAGING_DIR_HOST}/${prefix}"
33 52
@@ -54,6 +73,10 @@ python __anonymous () {
54} 73}
55 74
56# Override the contents of specific packages 75# Override the contents of specific packages
76FILES_${PN}-graph = "${libdir}/libboost_graph.so.*"
77FILES_${PN}-graph_parallel = "${libdir}/libboost_graph_parallel.so.*"
78FILES_${PN}-locale = "${libdir}/libboost_locale.so.*"
79FILES_${PN}-mpi = "${libdir}/mpi.so ${libdir}/libboost_mpi*.so.*"
57FILES_boost-serialization = "${libdir}/libboost_serialization*.so.* \ 80FILES_boost-serialization = "${libdir}/libboost_serialization*.so.* \
58 ${libdir}/libboost_wserialization*.so.*" 81 ${libdir}/libboost_wserialization*.so.*"
59FILES_boost-test = "${libdir}/libboost_prg_exec_monitor*.so.* \ 82FILES_boost-test = "${libdir}/libboost_prg_exec_monitor*.so.* \
@@ -159,6 +182,10 @@ do_configure() {
159 echo "using python : ${PYTHON_BASEVERSION} : : ${STAGING_INCDIR}/python${PYTHON_BASEVERSION} ;" >> ${WORKDIR}/user-config.jam 182 echo "using python : ${PYTHON_BASEVERSION} : : ${STAGING_INCDIR}/python${PYTHON_BASEVERSION} ;" >> ${WORKDIR}/user-config.jam
160 echo "using python : 3.5 : : ${STAGING_INCDIR}/python3.5m ;" >> ${WORKDIR}/user-config.jam 183 echo "using python : 3.5 : : ${STAGING_INCDIR}/python3.5m ;" >> ${WORKDIR}/user-config.jam
161 184
185 if ${@bb.utils.contains('BOOST_LIBS', 'mpi', 'true', 'false', d)}; then
186 echo "using mpi : : <find-shared-library>mpi ;" >> ${WORKDIR}/user-config.jam
187 fi
188
162 CC="${BUILD_CC}" CFLAGS="${BUILD_CFLAGS}" ./bootstrap.sh --with-bjam=bjam --with-toolset=gcc --with-python-root=${PYTHON_ROOT} 189 CC="${BUILD_CC}" CFLAGS="${BUILD_CFLAGS}" ./bootstrap.sh --with-bjam=bjam --with-toolset=gcc --with-python-root=${PYTHON_ROOT}
163 sed -i '/^using python/d' ${S}/project-config.jam 190 sed -i '/^using python/d' ${S}/project-config.jam
164} 191}