Gentoo Archives: gentoo-commits

From: David Seifert <soap@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-util/boost-build/files/, dev-util/boost-build/
Date: Sat, 14 Sep 2019 18:30:49
Message-Id: 1568485781.7c5cac8011ada68f211a05c48150f390aa7666de.soap@gentoo
1 commit: 7c5cac8011ada68f211a05c48150f390aa7666de
2 Author: David Seifert <soap <AT> gentoo <DOT> org>
3 AuthorDate: Sat Sep 14 18:29:41 2019 +0000
4 Commit: David Seifert <soap <AT> gentoo <DOT> org>
5 CommitDate: Sat Sep 14 18:29:41 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7c5cac80
7
8 dev-util/boost-build: Version bump to 1.71.0
9
10 Bug: https://bugs.gentoo.org/624616
11 Package-Manager: Portage-2.3.76, Repoman-2.3.17
12 Signed-off-by: David Seifert <soap <AT> gentoo.org>
13
14 dev-util/boost-build/Manifest | 1 +
15 dev-util/boost-build/boost-build-1.71.0.ebuild | 122 +++++++++++++++++++++
16 .../boost-build-1.71.0-respect-c_ld-flags.patch | 9 ++
17 3 files changed, 132 insertions(+)
18
19 diff --git a/dev-util/boost-build/Manifest b/dev-util/boost-build/Manifest
20 index 5f560092574..c189b10ccc4 100644
21 --- a/dev-util/boost-build/Manifest
22 +++ b/dev-util/boost-build/Manifest
23 @@ -1,2 +1,3 @@
24 DIST boost_1_65_0.tar.bz2 82597718 BLAKE2B 0080956d6ad2f14130ce4a4734b1bd1ce83d3651b226653689e02770baa83cf11811ef4e44948ff68a168d9ce5cbfaea4f758970df2b4e9faa2d410181885f5b SHA512 7142650fb8d61e3ef16ba066fc918e087f19e9bc2ad1d6a11fb10bf0d6b1b5ad05ab032f076a5233a1624b3669e952b2cc38b7dc074bbf53018e2970ee90fcdd
25 DIST boost_1_70_0.tar.bz2 97887058 BLAKE2B dc7a974c6dc2662b767dbd87cb832cd1749c24fb745779d1059b73f19f7e52b33b645adfe72b0296c5e098e5cdb3b9f5eddd382374f33fbcd2ad5739287b2206 SHA512 7f2ea9636baf0210e8ed1d21ee798efb6ce23c0710ff8228b285e2214f82193bcd2d912fd435929c554289a59101c7be2e27ce798f93833f307976f0dd070b49
26 +DIST boost_1_71_0.tar.bz2 100124647 BLAKE2B edf5a03d5a5a63ef5826ef3c19a5ee862a43eb93e8e3d76f8a0d1f2c23122f5a0535e045058110574cd19092f3199c28ab9dae53f9db05ffe8c0b0b8cdbe27a9 SHA512 b7937d50c4512cf13cadd0ca829de36cf2cbc6fb788f45b1d4565ad0753e2b206c545125a5862016c2f16016f2e4a6b687928963b466fff17c3e0a4437142c20
27
28 diff --git a/dev-util/boost-build/boost-build-1.71.0.ebuild b/dev-util/boost-build/boost-build-1.71.0.ebuild
29 new file mode 100644
30 index 00000000000..2aa4b388cbd
31 --- /dev/null
32 +++ b/dev-util/boost-build/boost-build-1.71.0.ebuild
33 @@ -0,0 +1,122 @@
34 +# Copyright 1999-2019 Gentoo Authors
35 +# Distributed under the terms of the GNU General Public License v2
36 +
37 +EAPI=7
38 +
39 +PYTHON_COMPAT=( python2_7 )
40 +inherit flag-o-matic prefix python-single-r1 toolchain-funcs
41 +
42 +MY_PV="$(ver_rs 1- _)"
43 +
44 +DESCRIPTION="A system for large project software construction, simple to use and powerful"
45 +HOMEPAGE="https://boostorg.github.io/build/"
46 +SRC_URI="https://dl.bintray.com/boostorg/release/${PV}/source/boost_${MY_PV}.tar.bz2"
47 +
48 +LICENSE="Boost-1.0"
49 +SLOT="0"
50 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
51 +IUSE="examples python test"
52 +RESTRICT="test"
53 +
54 +RDEPEND="python? ( ${PYTHON_DEPS} )
55 + !<dev-libs/boost-1.35.0
56 + !<=dev-util/boost-build-1.35.0-r1"
57 +DEPEND="${RDEPEND}
58 + test? (
59 + sys-apps/diffutils
60 + ${PYTHON_DEPS}
61 + )"
62 +
63 +REQUIRED_USE="
64 + python? ( ${PYTHON_REQUIRED_USE} )
65 + test? ( ${PYTHON_REQUIRED_USE} )"
66 +
67 +S="${WORKDIR}/boost_${MY_PV}/tools/build/src"
68 +
69 +PATCHES=(
70 + "${FILESDIR}"/${PN}-1.48.0-disable_python_rpath.patch
71 + "${FILESDIR}"/${PN}-1.49.0-darwin-gentoo-toolchain.patch
72 + "${FILESDIR}"/${PN}-1.62.0-sparc-no-default-flags.patch
73 + "${FILESDIR}"/${PN}-1.66.0-add-none-feature-options.patch
74 + "${FILESDIR}"/${PN}-1.71.0-respect-c_ld-flags.patch
75 +)
76 +
77 +pkg_setup() {
78 + if use python || use test; then
79 + python-single-r1_pkg_setup
80 + fi
81 +}
82 +
83 +src_unpack() {
84 + tar xojf "${DISTDIR}/${A}" boost_${MY_PV}/tools/build || die "unpacking tar failed"
85 +}
86 +
87 +src_prepare() {
88 + default
89 +
90 + pushd .. >/dev/null || die
91 + eapply "${FILESDIR}/${PN}-1.54.0-fix-test.patch"
92 + popd >/dev/null || die
93 +
94 + # remove default -march/-mcpu definitions
95 + # bjam is trying to be clever and injects -march= in order to
96 + # optimize code for you. This breaks on 32-bit builds, because
97 + # -march=i686 will not work on an i486 CHOST.
98 + # https://bugs.gentoo.org/624616
99 + sed -e '/^cpu-flags\s*gcc\s*OPTIONS/d' \
100 + -e '/toolset\.flags\s*gcc\s*OPTIONS/d' \
101 + -e "/cpu_flags('gcc',\s*'OPTIONS'/d" \
102 + -i tools/gcc.{jam,py} || die "Failed removing -march/-mcpu"
103 +}
104 +
105 +src_configure() {
106 + hprefixify engine/Jambase
107 + if use python; then
108 + # replace versions by user-selected one (TODO: fix this when slot-op
109 + # deps are available to always match the best version available)
110 + sed -i \
111 + -e "s|27 26 25 24 23 22|${EPYTHON#python}|" \
112 + engine/build.jam || die "sed failed"
113 + fi
114 +
115 + tc-export CXX
116 +}
117 +
118 +src_compile() {
119 + cd engine || die
120 + ./build.sh cxx -d+2 $(use_with python python "${ESYSROOT}"/usr) || die "building bjam failed"
121 +}
122 +
123 +src_test() {
124 + cd ../test || die
125 +
126 + local -x TMP="${T}"
127 +
128 + DO_DIFF="${EPREFIX}/usr/bin/diff" "${EPYTHON}" test_all.py
129 +
130 + if [[ -s test_results.txt ]]; then
131 + eerror "At least one test failed: $(<test_results.txt)"
132 + die "tests failed"
133 + fi
134 +}
135 +
136 +src_install() {
137 + dobin engine/{bjam,b2}
138 +
139 + insinto /usr/share/boost-build
140 + doins -r "${FILESDIR}/site-config.jam" \
141 + ../boost-build.jam bootstrap.jam build-system.jam ../example/user-config.jam *.py \
142 + build kernel options tools util
143 +
144 + if ! use python; then
145 + find "${ED}/usr/share/boost-build" -iname "*.py" -delete || die "removing experimental python files failed"
146 + fi
147 +
148 + dodoc ../notes/{changes,release_procedure,build_dir_option,relative_source_paths}.txt
149 +
150 + if use examples; then
151 + docinto examples
152 + dodoc -r ../example/.
153 + docompress -x /usr/share/doc/${PF}/examples
154 + fi
155 +}
156
157 diff --git a/dev-util/boost-build/files/boost-build-1.71.0-respect-c_ld-flags.patch b/dev-util/boost-build/files/boost-build-1.71.0-respect-c_ld-flags.patch
158 new file mode 100644
159 index 00000000000..f51abea61f8
160 --- /dev/null
161 +++ b/dev-util/boost-build/files/boost-build-1.71.0-respect-c_ld-flags.patch
162 @@ -0,0 +1,9 @@
163 +--- a/engine/build.sh
164 ++++ b/engine/build.sh
165 +@@ -439,5 +439,5 @@
166 + if check_debug_build "$@" ; then B2_CXXFLAGS="${B2_CXXFLAGS_DEBUG}"
167 + else B2_CXXFLAGS="${B2_CXXFLAGS_RELEASE} -DNDEBUG"
168 + fi
169 +-echo_run ${B2_CXX} ${CXXFLAGS} ${B2_CXXFLAGS} ${B2_SOURCES} -o b2
170 ++echo_run ${B2_CXX} ${CPPFLAGS} ${CXXFLAGS} ${LDFLAGS} ${B2_CXXFLAGS} ${B2_SOURCES} -o b2
171 + echo_run cp b2 bjam