From 77c372e1669cd6250aa6e0b0b0888be02595fe64 Mon Sep 17 00:00:00 2001 From: Sam James Date: Tue, 14 Dec 2021 23:28:15 +0000 Subject: dev-util/boost-build: fix incorrectly skipping targets (upstream fix) Fixes installation of Boost 1.78's Python bindings. Closes: https://bugs.gentoo.org/829031 Signed-off-by: Sam James --- dev-util/boost-build/boost-build-1.78.0-r1.ebuild | 74 ++++++++++++++++++++++ dev-util/boost-build/boost-build-1.78.0.ebuild | 73 --------------------- ...st-build-1.78.0-fix-python-bindings-build.patch | 20 ++++++ 3 files changed, 94 insertions(+), 73 deletions(-) create mode 100644 dev-util/boost-build/boost-build-1.78.0-r1.ebuild delete mode 100644 dev-util/boost-build/boost-build-1.78.0.ebuild create mode 100644 dev-util/boost-build/files/boost-build-1.78.0-fix-python-bindings-build.patch (limited to 'dev-util/boost-build') diff --git a/dev-util/boost-build/boost-build-1.78.0-r1.ebuild b/dev-util/boost-build/boost-build-1.78.0-r1.ebuild new file mode 100644 index 000000000000..09152764b546 --- /dev/null +++ b/dev-util/boost-build/boost-build-1.78.0-r1.ebuild @@ -0,0 +1,74 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic toolchain-funcs + +MY_PV="$(ver_rs 1- _)" + +DESCRIPTION="A system for large project software construction, simple to use and powerful" +HOMEPAGE="https://www.boost.org/build/" +SRC_URI="https://boostorg.jfrog.io/artifactory/main/release/${PV}/source/boost_${MY_PV}.tar.bz2" +S="${WORKDIR}/boost_${MY_PV}/tools/build/src" + +LICENSE="Boost-1.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="examples" +RESTRICT="test" + +PATCHES=( + "${FILESDIR}"/${PN}-1.71.0-disable_python_rpath.patch + "${FILESDIR}"/${PN}-1.78.0-darwin-gentoo-toolchain.patch + "${FILESDIR}"/${PN}-1.73.0-add-none-feature-options.patch + "${FILESDIR}"/${PN}-1.76.0-respect-user-flags.patch + "${FILESDIR}"/${PN}-1.78.0-no-implicit-march-flags.patch + "${FILESDIR}"/${P}-fix-python-bindings-build.patch +) + +src_unpack() { + tar xojf "${DISTDIR}/${A}" boost_${MY_PV}/tools/build || die "unpacking tar failed" +} + +src_prepare() { + default + + pushd .. >/dev/null || die + eapply "${FILESDIR}"/${PN}-1.71.0-fix-test.patch + popd >/dev/null || die +} + +src_configure() { + # need to enable LFS explicitly for 64-bit offsets on 32-bit hosts (#761100) + append-lfs-flags +} + +src_compile() { + cd engine || die + ${CONFIG_SHELL:-${BASH}} ./build.sh cxx --cxx="$(tc-getCXX)" --cxxflags="${CXXFLAGS}" -d+2 --without-python || die "building bjam failed" +} + +src_test() { + # Forget tests, bjam is a lost cause + : +} + +src_install() { + dobin engine/{bjam,b2} + + insinto /usr/share/boost-build/src + doins -r "${FILESDIR}/site-config.jam" \ + ../boost-build.jam bootstrap.jam build-system.jam ../example/user-config.jam *.py \ + build kernel options tools util + + find "${ED}"/usr/share/boost-build/src -iname '*.py' -delete || die + + dodoc ../notes/{changes,release_procedure,build_dir_option,relative_source_paths}.txt + + if use examples; then + docinto examples + dodoc -r ../example/. + docompress -x /usr/share/doc/${PF}/examples + fi +} diff --git a/dev-util/boost-build/boost-build-1.78.0.ebuild b/dev-util/boost-build/boost-build-1.78.0.ebuild deleted file mode 100644 index 08719032391a..000000000000 --- a/dev-util/boost-build/boost-build-1.78.0.ebuild +++ /dev/null @@ -1,73 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit flag-o-matic toolchain-funcs - -MY_PV="$(ver_rs 1- _)" - -DESCRIPTION="A system for large project software construction, simple to use and powerful" -HOMEPAGE="https://www.boost.org/build/" -SRC_URI="https://boostorg.jfrog.io/artifactory/main/release/${PV}/source/boost_${MY_PV}.tar.bz2" -S="${WORKDIR}/boost_${MY_PV}/tools/build/src" - -LICENSE="Boost-1.0" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="examples" -RESTRICT="test" - -PATCHES=( - "${FILESDIR}"/${PN}-1.71.0-disable_python_rpath.patch - "${FILESDIR}"/${PN}-1.78.0-darwin-gentoo-toolchain.patch - "${FILESDIR}"/${PN}-1.73.0-add-none-feature-options.patch - "${FILESDIR}"/${PN}-1.76.0-respect-user-flags.patch - "${FILESDIR}"/${PN}-1.78.0-no-implicit-march-flags.patch -) - -src_unpack() { - tar xojf "${DISTDIR}/${A}" boost_${MY_PV}/tools/build || die "unpacking tar failed" -} - -src_prepare() { - default - - pushd .. >/dev/null || die - eapply "${FILESDIR}"/${PN}-1.71.0-fix-test.patch - popd >/dev/null || die -} - -src_configure() { - # need to enable LFS explicitly for 64-bit offsets on 32-bit hosts (#761100) - append-lfs-flags -} - -src_compile() { - cd engine || die - ${CONFIG_SHELL:-${BASH}} ./build.sh cxx --cxx="$(tc-getCXX)" --cxxflags="${CXXFLAGS}" -d+2 --without-python || die "building bjam failed" -} - -src_test() { - # Forget tests, bjam is a lost cause - : -} - -src_install() { - dobin engine/{bjam,b2} - - insinto /usr/share/boost-build/src - doins -r "${FILESDIR}/site-config.jam" \ - ../boost-build.jam bootstrap.jam build-system.jam ../example/user-config.jam *.py \ - build kernel options tools util - - find "${ED}"/usr/share/boost-build/src -iname '*.py' -delete || die - - dodoc ../notes/{changes,release_procedure,build_dir_option,relative_source_paths}.txt - - if use examples; then - docinto examples - dodoc -r ../example/. - docompress -x /usr/share/doc/${PF}/examples - fi -} diff --git a/dev-util/boost-build/files/boost-build-1.78.0-fix-python-bindings-build.patch b/dev-util/boost-build/files/boost-build-1.78.0-fix-python-bindings-build.patch new file mode 100644 index 000000000000..ddcdf0850031 --- /dev/null +++ b/dev-util/boost-build/files/boost-build-1.78.0-fix-python-bindings-build.patch @@ -0,0 +1,20 @@ +https://bugs.gentoo.org/829031 +https://github.com/bfgroup/b2/pull/113 + +From: Dmitry Arkhipov +Date: Thu, 9 Dec 2021 08:11:57 +0300 +Subject: [PATCH] Don't skip install targets if there's no in ureqs + +--- a/tools/stage.jam ++++ b/tools/stage.jam +@@ -478,6 +478,10 @@ class install-target-class : basic-target + return [ sequence.unique $(result2) ] ; + } + ++ rule skip-from-usage-requirements ( ) ++ { ++ } ++ + # Returns true iff 'type' is subtype of some element of 'types-to-include'. + # + local rule include-type ( type : types-to-include * ) -- cgit v1.2.3-65-gdbad