]> code.ossystems Code Review - openembedded-core.git/commitdiff
boost: build a standalone boost.build
authorRoss Burton <ross@burtonini.com>
Tue, 6 Oct 2020 11:14:42 +0000 (12:14 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 8 Oct 2020 09:22:06 +0000 (10:22 +0100)
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.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/conf/distro/include/maintainers.inc
meta/recipes-support/boost/bjam-native_1.74.0.bb [deleted file]
meta/recipes-support/boost/boost-build-native_4.3.0.bb [new file with mode: 0644]
meta/recipes-support/boost/boost.inc

index 5a3f913b0f3b9bf85e1bdf66a0a15b8acb4c24fc..7935f968c7fb29fd3bccb6e15a061f7a1f302598 100644 (file)
@@ -70,12 +70,12 @@ RECIPE_MAINTAINER_pn-binutils-cross-canadian-${TRANSLATED_TARGET_ARCH} = "Khem R
 RECIPE_MAINTAINER_pn-binutils-cross-testsuite = "Khem Raj <raj.khem@gmail.com>"
 RECIPE_MAINTAINER_pn-binutils-crosssdk-${SDK_SYS} = "Khem Raj <raj.khem@gmail.com>"
 RECIPE_MAINTAINER_pn-bison = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-bjam-native = "Alexander Kanavin <alex.kanavin@gmail.com>"
 RECIPE_MAINTAINER_pn-blktool = "Yi Zhao <yi.zhao@windriver.com>"
 RECIPE_MAINTAINER_pn-blktrace = "Alexander Kanavin <alex.kanavin@gmail.com>"
 RECIPE_MAINTAINER_pn-bluez5 = "Anuj Mittal <anuj.mittal@intel.com>"
 RECIPE_MAINTAINER_pn-bmap-tools = "Anuj Mittal <anuj.mittal@intel.com>"
 RECIPE_MAINTAINER_pn-boost = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER_pn-boost-build-native = "Alexander Kanavin <alex.kanavin@gmail.com>"
 RECIPE_MAINTAINER_pn-bootchart2 = "Alexander Kanavin <alex.kanavin@gmail.com>"
 RECIPE_MAINTAINER_pn-bsd-headers = "Khem Raj <raj.khem@gmail.com>"
 RECIPE_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 (file)
index c0eeed6..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-require boost-${PV}.inc
-
-SUMMARY = "Portable Boost.Jam build tool for boost"
-SECTION = "devel"
-
-inherit native
-
-do_compile() {
-    ./bootstrap.sh --with-toolset=gcc
-}
-
-do_install() {
-    install -d ${D}${bindir}/
-    install b2 ${D}${bindir}/bjam
-}
-
-# The build is either release mode (pre-stripped) or debug (-O0).
-INSANE_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 (file)
index 0000000..d8096de
--- /dev/null
@@ -0,0 +1,23 @@
+SUMMARY = "Boost.Build"
+SECTION = "devel"
+
+LICENSE = "BSL-1.0"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=e4224ccaecb14d942c71d31bef20d78c"
+
+SRC_URI = "git://github.com/boostorg/build;protocol=https"
+SRCREV = "632ea768f3eb225b4472c5ed6d20afee708724ad"
+
+inherit native
+
+S = "${WORKDIR}/git"
+
+do_compile() {
+    ./bootstrap.sh
+}
+
+do_install() {
+    ./b2 install --prefix=${prefix} staging-prefix=${D}${prefix}
+}
+
+# The build is either release mode (pre-stripped) or debug (-O0).
+INSANE_SKIP_${PN} = "already-stripped"
index ea1bc123b86bdb5cddecb45040ca104cff13a23b..e74c7d6f7dd11cc05b3d79cedbf8fbbe39c68134 100644 (file)
@@ -1,6 +1,6 @@
 SUMMARY = "Free peer-reviewed portable C++ source libraries"
 SECTION = "libs"
-DEPENDS = "bjam-native zlib bzip2"
+DEPENDS = "boost-build-native zlib bzip2"
 
 CVE_PRODUCT = "boost:boost"
 
@@ -180,7 +180,7 @@ do_configure() {
                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
+       CC="${BUILD_CC}" CFLAGS="${BUILD_CFLAGS}" ./bootstrap.sh --with-bjam=b2 --with-toolset=gcc
 
        # Boost can't be trusted to find Python on it's own, so remove any mention
        # of it from the boost configuration
@@ -189,7 +189,7 @@ do_configure() {
 
 do_compile() {
        cd ${S}
-       bjam ${BJAM_OPTS} \
+       b2 ${BJAM_OPTS} \
                --prefix=${prefix} \
                --exec-prefix=${exec_prefix} \
                --libdir=${libdir} \
@@ -199,7 +199,7 @@ do_compile() {
 
 do_install() {
        cd ${S}
-       bjam ${BJAM_OPTS} \
+       b2 ${BJAM_OPTS} \
                --libdir=${D}${libdir} \
                --includedir=${D}${includedir} \
                install