From 76079f921e596125b0e281ca95e2394d7688aaf2 Mon Sep 17 00:00:00 2001 From: Ross Burton Date: Tue, 6 Oct 2020 12:14:42 +0100 Subject: 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. Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- meta/conf/distro/include/maintainers.inc | 2 +- meta/recipes-support/boost/bjam-native_1.74.0.bb | 18 ----------------- .../boost/boost-build-native_4.3.0.bb | 23 ++++++++++++++++++++++ meta/recipes-support/boost/boost.inc | 8 ++++---- 4 files changed, 28 insertions(+), 23 deletions(-) delete mode 100644 meta/recipes-support/boost/bjam-native_1.74.0.bb create mode 100644 meta/recipes-support/boost/boost-build-native_4.3.0.bb 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 RECIPE_MAINTAINER_pn-binutils-cross-testsuite = "Khem Raj " RECIPE_MAINTAINER_pn-binutils-crosssdk-${SDK_SYS} = "Khem Raj " RECIPE_MAINTAINER_pn-bison = "Chen Qi " -RECIPE_MAINTAINER_pn-bjam-native = "Alexander Kanavin " RECIPE_MAINTAINER_pn-blktool = "Yi Zhao " RECIPE_MAINTAINER_pn-blktrace = "Alexander Kanavin " RECIPE_MAINTAINER_pn-bluez5 = "Anuj Mittal " RECIPE_MAINTAINER_pn-bmap-tools = "Anuj Mittal " RECIPE_MAINTAINER_pn-boost = "Alexander Kanavin " +RECIPE_MAINTAINER_pn-boost-build-native = "Alexander Kanavin " RECIPE_MAINTAINER_pn-bootchart2 = "Alexander Kanavin " RECIPE_MAINTAINER_pn-bsd-headers = "Khem Raj " RECIPE_MAINTAINER_pn-btrfs-tools = "Wang Mingyu " 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 @@ -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 index 0000000000..d8096de5af --- /dev/null +++ b/meta/recipes-support/boost/boost-build-native_4.3.0.bb @@ -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" 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 @@ 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 : : 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 -- cgit 1.2.3-korg