dev-util/boost-build: Sync with gentoo

It's from gentoo commit 530551e67b618aa77eee811226d0776392340c5d.
This commit is contained in:
Krzesimir Nowak 2021-12-01 19:46:27 +01:00
parent c354154a82
commit d7078780e7
8 changed files with 93 additions and 43 deletions

View File

@ -1,2 +1,2 @@
DIST boost_1_74_0.tar.bz2 109600630 BLAKE2B 2982f64fccf6fdb3b4b74452e603f459242d7abb42df4162278d9b558b637786a2eb97442126967b19088d591777c64ced8f60a23e71eaa0b7545e80f800de63 SHA512 4ec9c1164ec9b95ce46ba1c073e586c94b3882dce5b7347ea14bbef0c1da230e12aa5328a501ce38cae1b1d7623daa3246325625899179b4cc309242540982a4 DIST boost_1_76_0.tar.bz2 110073117 BLAKE2B 45445e6a9725cb99131e0b831b2fac0840d083692c13887b41adeac5cb8b3732026db3641d6be20591a676b78a87fcf363eb9b1508f87ed26039bba6a1ced533 SHA512 5d68bed98c57e03b4cb2420d9b856e5f0669561a6142a4b0c9c8a58dc5b6b28e16ccbb16ac559c3a3198c45769a246bf996b96cb7b6a019dd15f05c2270e9429
DIST boost_1_75_0.tar.bz2 121849575 BLAKE2B ce7ecd8bcee518ce54f7e5302f202acbea60cedd6ae9248708c0bb5bbc2713607b2e1967a9e6f77cc20a4c008c1ee4db651def55937efc80407487a7a44fa8d6 SHA512 d86f060245e98dca5c7f3f831c98ea9ccbfa8310f20830dd913d9d4c939fbe7cb94accd35f1128e7c4faf6c27adb6f4bb54e5477a6bde983dfc7aa33c4eed03a DIST boost_1_77_0.tar.bz2 110361537 BLAKE2B 106aeb09ec7705b595f2ca966a76c53c649eac6fac50d88c156862e0991c33c89a2f3a09edcbcb453fa44bf71cdde030b35d0a0889ad97b65f3a868cb877a532 SHA512 39b45c9b60bc5a2a4c669a4463d1272c1e093376b2fb374d7f20a84ea10a3e23bb04b335a735a83a04575731f874d9bff77e89acd947524b3fbbae1b26ae1f2f

View File

@ -3,13 +3,14 @@
EAPI=7 EAPI=7
inherit flag-o-matic prefix toolchain-funcs inherit flag-o-matic toolchain-funcs
MY_PV="$(ver_rs 1- _)" MY_PV="$(ver_rs 1- _)"
DESCRIPTION="A system for large project software construction, simple to use and powerful" DESCRIPTION="A system for large project software construction, simple to use and powerful"
HOMEPAGE="https://boostorg.github.io/build/" HOMEPAGE="https://www.boost.org/build/"
SRC_URI="https://dl.bintray.com/boostorg/release/${PV}/source/boost_${MY_PV}.tar.bz2" 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" LICENSE="Boost-1.0"
SLOT="0" SLOT="0"
@ -17,14 +18,13 @@ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x
IUSE="examples" IUSE="examples"
RESTRICT="test" RESTRICT="test"
S="${WORKDIR}/boost_${MY_PV}/tools/build/src"
PATCHES=( PATCHES=(
"${FILESDIR}"/${PN}-1.71.0-disable_python_rpath.patch "${FILESDIR}"/${PN}-1.71.0-disable_python_rpath.patch
"${FILESDIR}"/${PN}-1.71.0-darwin-gentoo-toolchain.patch "${FILESDIR}"/${PN}-1.71.0-darwin-gentoo-toolchain.patch
"${FILESDIR}"/${PN}-1.73.0-add-none-feature-options.patch "${FILESDIR}"/${PN}-1.73.0-add-none-feature-options.patch
"${FILESDIR}"/${PN}-1.71.0-respect-c_ld-flags.patch "${FILESDIR}"/${PN}-1.76.0-respect-user-flags.patch
"${FILESDIR}"/${PN}-1.74.0-no-implicit-march-flags.patch "${FILESDIR}"/${PN}-1.74.0-no-implicit-march-flags.patch
"${FILESDIR}"/${PN}-1.76.0-python-numpy.patch
) )
src_unpack() { src_unpack() {
@ -40,12 +40,13 @@ src_prepare() {
} }
src_configure() { src_configure() {
tc-export CXX # need to enable LFS explicitly for 64-bit offsets on 32-bit hosts (#761100)
append-lfs-flags
} }
src_compile() { src_compile() {
cd engine || die cd engine || die
./build.sh cxx -d+2 --without-python || die "building bjam failed" ${CONFIG_SHELL:-${BASH}} ./build.sh cxx --cxx="$(tc-getCXX)" --cxxflags="${CXXFLAGS}" -d+2 --without-python || die "building bjam failed"
} }
src_test() { src_test() {
@ -56,12 +57,12 @@ src_test() {
src_install() { src_install() {
dobin engine/{bjam,b2} dobin engine/{bjam,b2}
insinto /usr/share/boost-build insinto /usr/share/boost-build/src
doins -r "${FILESDIR}/site-config.jam" \ doins -r "${FILESDIR}/site-config.jam" \
../boost-build.jam bootstrap.jam build-system.jam ../example/user-config.jam *.py \ ../boost-build.jam bootstrap.jam build-system.jam ../example/user-config.jam *.py \
build kernel options tools util build kernel options tools util
find "${ED}"/usr/share/boost-build -iname '*.py' -delete || die find "${ED}"/usr/share/boost-build/src -iname '*.py' -delete || die
dodoc ../notes/{changes,release_procedure,build_dir_option,relative_source_paths}.txt dodoc ../notes/{changes,release_procedure,build_dir_option,relative_source_paths}.txt

View File

@ -1,29 +1,28 @@
# Copyright 1999-2021 Gentoo Authors # Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
EAPI=7 EAPI=8
inherit flag-o-matic prefix toolchain-funcs inherit flag-o-matic toolchain-funcs
MY_PV="$(ver_rs 1- _)" MY_PV="$(ver_rs 1- _)"
DESCRIPTION="A system for large project software construction, simple to use and powerful" DESCRIPTION="A system for large project software construction, simple to use and powerful"
HOMEPAGE="https://boostorg.github.io/build/" HOMEPAGE="https://www.boost.org/build/"
SRC_URI="https://dl.bintray.com/boostorg/release/${PV}/source/boost_${MY_PV}.tar.bz2" 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" LICENSE="Boost-1.0"
SLOT="0" SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~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" 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" IUSE="examples"
RESTRICT="test" RESTRICT="test"
S="${WORKDIR}/boost_${MY_PV}/tools/build/src"
PATCHES=( PATCHES=(
"${FILESDIR}"/${PN}-1.71.0-disable_python_rpath.patch "${FILESDIR}"/${PN}-1.71.0-disable_python_rpath.patch
"${FILESDIR}"/${PN}-1.71.0-darwin-gentoo-toolchain.patch "${FILESDIR}"/${PN}-1.77.0-darwin-gentoo-toolchain.patch
"${FILESDIR}"/${PN}-1.73.0-add-none-feature-options.patch "${FILESDIR}"/${PN}-1.73.0-add-none-feature-options.patch
"${FILESDIR}"/${PN}-1.71.0-respect-c_ld-flags.patch "${FILESDIR}"/${PN}-1.76.0-respect-user-flags.patch
"${FILESDIR}"/${PN}-1.74.0-no-implicit-march-flags.patch "${FILESDIR}"/${PN}-1.74.0-no-implicit-march-flags.patch
) )
@ -40,15 +39,13 @@ src_prepare() {
} }
src_configure() { src_configure() {
tc-export CXX
# need to enable LFS explicitly for 64-bit offsets on 32-bit hosts (#761100) # need to enable LFS explicitly for 64-bit offsets on 32-bit hosts (#761100)
append-lfs-flags append-lfs-flags
} }
src_compile() { src_compile() {
cd engine || die cd engine || die
./build.sh cxx -d+2 --without-python || die "building bjam failed" ${CONFIG_SHELL:-${BASH}} ./build.sh cxx --cxx="$(tc-getCXX)" --cxxflags="${CXXFLAGS}" -d+2 --without-python || die "building bjam failed"
} }
src_test() { src_test() {
@ -59,12 +56,12 @@ src_test() {
src_install() { src_install() {
dobin engine/{bjam,b2} dobin engine/{bjam,b2}
insinto /usr/share/boost-build insinto /usr/share/boost-build/src
doins -r "${FILESDIR}/site-config.jam" \ doins -r "${FILESDIR}/site-config.jam" \
../boost-build.jam bootstrap.jam build-system.jam ../example/user-config.jam *.py \ ../boost-build.jam bootstrap.jam build-system.jam ../example/user-config.jam *.py \
build kernel options tools util build kernel options tools util
find "${ED}"/usr/share/boost-build -iname '*.py' -delete || die find "${ED}"/usr/share/boost-build/src -iname '*.py' -delete || die
dodoc ../notes/{changes,release_procedure,build_dir_option,relative_source_paths}.txt dodoc ../notes/{changes,release_procedure,build_dir_option,relative_source_paths}.txt

View File

@ -1,9 +0,0 @@
--- a/engine/build.sh
+++ b/engine/build.sh
@@ -439,5 +439,5 @@
if check_debug_build "$@" ; then B2_CXXFLAGS="${B2_CXXFLAGS_DEBUG}"
else B2_CXXFLAGS="${B2_CXXFLAGS_RELEASE} -DNDEBUG"
fi
-echo_run ${B2_CXX} ${CXXFLAGS} ${B2_CXXFLAGS} ${B2_SOURCES} -o b2
+echo_run ${B2_CXX} ${CPPFLAGS} ${CXXFLAGS} ${LDFLAGS} ${B2_CXXFLAGS} ${B2_SOURCES} -o b2
echo_run cp b2 bjam

View File

@ -0,0 +1,24 @@
From 61adb508853be1fa2c01a0c3a0c55fbd16cb9a52 Mon Sep 17 00:00:00 2001
From: Peter Dimov <pdimov@gmail.com>
Date: Mon, 24 May 2021 22:11:23 +0300
Subject: [PATCH] Declare the /python//numpy target to hold the include path
(fixes #725)
---
tools/python.jam | 3 +++
1 file changed, 3 insertions(+)
diff --git a/tools/python.jam b/tools/python.jam
index 00706932d2..0dfc750a22 100644
--- a/tools/python.jam
+++ b/tools/python.jam
@@ -1052,6 +1052,9 @@ local rule configure ( version ? : cmd-or-prefix ? : includes * : libraries ? :
;
}
+ # Declare the numpy target, which contains the NumPy include directory
+
+ alias numpy : : $(target-requirements) : : <include>$(.numpy-include) ;
}
# Conditional rule specification that will prevent building of a target

View File

@ -0,0 +1,11 @@
--- a/engine/build.sh
+++ b/engine/build.sh
@@ -496,7 +496,7 @@
if test_true ${B2_DEBUG_OPT} ; then B2_CXXFLAGS="${B2_CXXFLAGS_DEBUG}"
else B2_CXXFLAGS="${B2_CXXFLAGS_RELEASE} -DNDEBUG"
fi
- ( B2_VERBOSE_OPT=${TRUE} echo_run ${B2_CXX} ${B2_CXXFLAGS} ${B2_SOURCES} -o b2 )
+ ( B2_VERBOSE_OPT=${TRUE} echo_run ${B2_CXX} ${CPPFLAGS} ${B2_CXXFLAGS} ${LDFLAGS} ${B2_SOURCES} -o b2 )
( B2_VERBOSE_OPT=${TRUE} echo_run cp b2 bjam )
}

View File

@ -0,0 +1,26 @@
Avoid adding all kinds of things to the toolchain's flags that within
Gentoo (Prefix) we really shouldn't, such as sysroot, deployment target,
arch, etc.
--- a/tools/darwin.jam
+++ b/tools/darwin.jam
@@ -240,6 +240,9 @@
}
}
+ # leave compiler flags etc. up to the toolchain
+ return $(version-feature) ;
+
if $(version-feature)
{
if $(.debug-configuration)
@@ -448,7 +451,8 @@
support-ppc64 = ;
}
}
- switch $(arch)
+ # Gentoo Prefix toolchain doesn't do multi-arch, so don't try either
+ switch $(donotaddarchpleaseXXXarch)
{
case combined :
{

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata> <pkgmetadata>
<maintainer type="person"> <maintainer type="person">
<email>soap@gentoo.org</email> <email>soap@gentoo.org</email>