summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoss Burton <ross@burtonini.com>2020-10-06 12:14:42 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2020-10-08 10:22:10 +0100
commitaf7b126c7a18fd81fd397fc8e3823fb63e91566f (patch)
tree9f60860c4e5c6788d4129e10a88ae8ab6fa015d3
parentb6d30c21b09e3cd8488868804e7d34e13243a26a (diff)
downloadpoky-af7b126c7a18fd81fd397fc8e3823fb63e91566f.tar.gz
boost: build a standalone boost.build
Boost is a huge unirepo made from multiple submodules. To bootstrap it we need boost.build (previously bjam) which is also available as a solo repository. This smaller repository can unpack/build/package faster than the Boost unirepo can unpack. Rename the recipe to the current name of Boost.Build that installs a b2 binary, use the solo repository, and update the Boost recipe to use the b2 binary instead of bjam. (From OE-Core rev: 76079f921e596125b0e281ca95e2394d7688aaf2) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/conf/distro/include/maintainers.inc2
-rw-r--r--meta/recipes-support/boost/bjam-native_1.74.0.bb18
-rw-r--r--meta/recipes-support/boost/boost-build-native_4.3.0.bb23
-rw-r--r--meta/recipes-support/boost/boost.inc8
4 files changed, 28 insertions, 23 deletions
diff --git a/meta/conf/distro/include/maintainers.inc b/meta/conf/distro/include/maintainers.inc
index 5a3f913b0f..7935f968c7 100644
--- a/meta/conf/distro/include/maintainers.inc
+++ b/meta/conf/distro/include/maintainers.inc
@@ -70,12 +70,12 @@ RECIPE_MAINTAINER_pn-binutils-cross-canadian-${TRANSLATED_TARGET_ARCH} = "Khem R
70RECIPE_MAINTAINER_pn-binutils-cross-testsuite = "Khem Raj <raj.khem@gmail.com>" 70RECIPE_MAINTAINER_pn-binutils-cross-testsuite = "Khem Raj <raj.khem@gmail.com>"
71RECIPE_MAINTAINER_pn-binutils-crosssdk-${SDK_SYS} = "Khem Raj <raj.khem@gmail.com>" 71RECIPE_MAINTAINER_pn-binutils-crosssdk-${SDK_SYS} = "Khem Raj <raj.khem@gmail.com>"
72RECIPE_MAINTAINER_pn-bison = "Chen Qi <Qi.Chen@windriver.com>" 72RECIPE_MAINTAINER_pn-bison = "Chen Qi <Qi.Chen@windriver.com>"
73RECIPE_MAINTAINER_pn-bjam-native = "Alexander Kanavin <alex.kanavin@gmail.com>"
74RECIPE_MAINTAINER_pn-blktool = "Yi Zhao <yi.zhao@windriver.com>" 73RECIPE_MAINTAINER_pn-blktool = "Yi Zhao <yi.zhao@windriver.com>"
75RECIPE_MAINTAINER_pn-blktrace = "Alexander Kanavin <alex.kanavin@gmail.com>" 74RECIPE_MAINTAINER_pn-blktrace = "Alexander Kanavin <alex.kanavin@gmail.com>"
76RECIPE_MAINTAINER_pn-bluez5 = "Anuj Mittal <anuj.mittal@intel.com>" 75RECIPE_MAINTAINER_pn-bluez5 = "Anuj Mittal <anuj.mittal@intel.com>"
77RECIPE_MAINTAINER_pn-bmap-tools = "Anuj Mittal <anuj.mittal@intel.com>" 76RECIPE_MAINTAINER_pn-bmap-tools = "Anuj Mittal <anuj.mittal@intel.com>"
78RECIPE_MAINTAINER_pn-boost = "Alexander Kanavin <alex.kanavin@gmail.com>" 77RECIPE_MAINTAINER_pn-boost = "Alexander Kanavin <alex.kanavin@gmail.com>"
78RECIPE_MAINTAINER_pn-boost-build-native = "Alexander Kanavin <alex.kanavin@gmail.com>"
79RECIPE_MAINTAINER_pn-bootchart2 = "Alexander Kanavin <alex.kanavin@gmail.com>" 79RECIPE_MAINTAINER_pn-bootchart2 = "Alexander Kanavin <alex.kanavin@gmail.com>"
80RECIPE_MAINTAINER_pn-bsd-headers = "Khem Raj <raj.khem@gmail.com>" 80RECIPE_MAINTAINER_pn-bsd-headers = "Khem Raj <raj.khem@gmail.com>"
81RECIPE_MAINTAINER_pn-btrfs-tools = "Wang Mingyu <wangmy@cn.fujitsu.com>" 81RECIPE_MAINTAINER_pn-btrfs-tools = "Wang Mingyu <wangmy@cn.fujitsu.com>"
diff --git a/meta/recipes-support/boost/bjam-native_1.74.0.bb b/meta/recipes-support/boost/bjam-native_1.74.0.bb
deleted file mode 100644
index c0eeed60b0..0000000000
--- a/meta/recipes-support/boost/bjam-native_1.74.0.bb
+++ /dev/null
@@ -1,18 +0,0 @@
1require boost-${PV}.inc
2
3SUMMARY = "Portable Boost.Jam build tool for boost"
4SECTION = "devel"
5
6inherit native
7
8do_compile() {
9 ./bootstrap.sh --with-toolset=gcc
10}
11
12do_install() {
13 install -d ${D}${bindir}/
14 install b2 ${D}${bindir}/bjam
15}
16
17# The build is either release mode (pre-stripped) or debug (-O0).
18INSANE_SKIP_${PN} = "already-stripped"
diff --git a/meta/recipes-support/boost/boost-build-native_4.3.0.bb b/meta/recipes-support/boost/boost-build-native_4.3.0.bb
new file mode 100644
index 0000000000..d8096de5af
--- /dev/null
+++ b/meta/recipes-support/boost/boost-build-native_4.3.0.bb
@@ -0,0 +1,23 @@
1SUMMARY = "Boost.Build"
2SECTION = "devel"
3
4LICENSE = "BSL-1.0"
5LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=e4224ccaecb14d942c71d31bef20d78c"
6
7SRC_URI = "git://github.com/boostorg/build;protocol=https"
8SRCREV = "632ea768f3eb225b4472c5ed6d20afee708724ad"
9
10inherit native
11
12S = "${WORKDIR}/git"
13
14do_compile() {
15 ./bootstrap.sh
16}
17
18do_install() {
19 ./b2 install --prefix=${prefix} staging-prefix=${D}${prefix}
20}
21
22# The build is either release mode (pre-stripped) or debug (-O0).
23INSANE_SKIP_${PN} = "already-stripped"
diff --git a/meta/recipes-support/boost/boost.inc b/meta/recipes-support/boost/boost.inc
index ea1bc123b8..e74c7d6f7d 100644
--- a/meta/recipes-support/boost/boost.inc
+++ b/meta/recipes-support/boost/boost.inc
@@ -1,6 +1,6 @@
1SUMMARY = "Free peer-reviewed portable C++ source libraries" 1SUMMARY = "Free peer-reviewed portable C++ source libraries"
2SECTION = "libs" 2SECTION = "libs"
3DEPENDS = "bjam-native zlib bzip2" 3DEPENDS = "boost-build-native zlib bzip2"
4 4
5CVE_PRODUCT = "boost:boost" 5CVE_PRODUCT = "boost:boost"
6 6
@@ -180,7 +180,7 @@ do_configure() {
180 echo "using mpi : : <find-shared-library>mpi ;" >> ${WORKDIR}/user-config.jam 180 echo "using mpi : : <find-shared-library>mpi ;" >> ${WORKDIR}/user-config.jam
181 fi 181 fi
182 182
183 CC="${BUILD_CC}" CFLAGS="${BUILD_CFLAGS}" ./bootstrap.sh --with-bjam=bjam --with-toolset=gcc 183 CC="${BUILD_CC}" CFLAGS="${BUILD_CFLAGS}" ./bootstrap.sh --with-bjam=b2 --with-toolset=gcc
184 184
185 # Boost can't be trusted to find Python on it's own, so remove any mention 185 # Boost can't be trusted to find Python on it's own, so remove any mention
186 # of it from the boost configuration 186 # of it from the boost configuration
@@ -189,7 +189,7 @@ do_configure() {
189 189
190do_compile() { 190do_compile() {
191 cd ${S} 191 cd ${S}
192 bjam ${BJAM_OPTS} \ 192 b2 ${BJAM_OPTS} \
193 --prefix=${prefix} \ 193 --prefix=${prefix} \
194 --exec-prefix=${exec_prefix} \ 194 --exec-prefix=${exec_prefix} \
195 --libdir=${libdir} \ 195 --libdir=${libdir} \
@@ -199,7 +199,7 @@ do_compile() {
199 199
200do_install() { 200do_install() {
201 cd ${S} 201 cd ${S}
202 bjam ${BJAM_OPTS} \ 202 b2 ${BJAM_OPTS} \
203 --libdir=${D}${libdir} \ 203 --libdir=${D}${libdir} \
204 --includedir=${D}${includedir} \ 204 --includedir=${D}${includedir} \
205 install 205 install