Revert Boost.Build change that breaks building for two Python versions.

A change to tools/build/src/tools/python.jam means that the python=2.7
argument to b2 is ignored and both libboost_python.so and
libboost_python3.so are linked to libpython2.7.so. Reverting that change
restores the previous behaviour that allowed building Boost.Python in
two different ways.
This commit is contained in:
Jonathan Wakely 2017-02-16 13:29:32 +00:00
parent e1dabc540b
commit d2c3a27558
2 changed files with 55 additions and 1 deletions

View File

@ -0,0 +1,46 @@
--- boost_1_63_0/tools/build/src/tools/python.jam.orig 2017-02-16 18:51:14.005483084 +0000
+++ boost_1_63_0/tools/build/src/tools/python.jam 2017-02-16 18:51:24.912497496 +0000
@@ -926,27 +926,27 @@
# for a particular target OS as the default. This makes it so that we can
# select a python interpreter with only knowledge of the target OS. And hence
# can configure different Pythons based on the target OS only.
- local toolset-requirements = [ toolset.requirements ] ;
- local toolset-target-os-requirements
- = [ property.evaluate-conditionals-in-context
- [ $(toolset-requirements).raw ] : <target-os>$(target-os) ] ;
- if ! <python> in $(toolset-target-os-requirements:G)
- {
- toolset.add-requirements <target-os>$(target-os):<python>$(version:E=default) ;
- }
+ #local toolset-requirements = [ toolset.requirements ] ;
+ #local toolset-target-os-requirements
+ # = [ property.evaluate-conditionals-in-context
+ # [ $(toolset-requirements).raw ] : <target-os>$(target-os) ] ;
+ #if ! <python> in $(toolset-target-os-requirements:G)
+ #{
+ # toolset.add-requirements <target-os>$(target-os):<python>$(version:E=default) ;
+ #}
# We also set a default requirement that assigns the first python configured
# for a particular target OS as the default. This makes it so that we can
# select a python interpreter with only knowledge of the target OS. And hence
# can configure different Pythons based on the target OS only.
- local toolset-requirements = [ toolset.requirements ] ;
- local toolset-target-os-requirements
- = [ property.evaluate-conditionals-in-context
- [ $(toolset-requirements).raw ] : <target-os>$(target-os) ] ;
- if ! <python> in $(toolset-target-os-requirements:G)
- {
- toolset.add-requirements <target-os>$(target-os):<python>$(version:E=default) ;
- }
+ #local toolset-requirements = [ toolset.requirements ] ;
+ #local toolset-target-os-requirements
+ # = [ property.evaluate-conditionals-in-context
+ # [ $(toolset-requirements).raw ] : <target-os>$(target-os) ] ;
+ #if ! <python> in $(toolset-target-os-requirements:G)
+ #{
+ # toolset.add-requirements <target-os>$(target-os):<python>$(version:E=default) ;
+ #}
# Register the right suffix for extensions.
register-extension-suffix $(extension-suffix) : $(target-requirements) ;

View File

@ -38,7 +38,7 @@ Name: boost
Summary: The free peer-reviewed portable C++ source libraries
Version: 1.63.0
%global version_enc 1_63_0
Release: 3%{?dist}
Release: 4%{?dist}
License: Boost and MIT and Python
%global toplev_dirname %{name}_%{version_enc}
@ -130,6 +130,10 @@ Patch68: boost-1.58.0-address-model.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=1318383
Patch82: boost-1.60.0-no-rpath.patch
# https://github.com/boostorg/build/issues/163
Patch83: boost-1.63.0-dual-python-build.patch
%bcond_with tests
%bcond_with docs_generated
@ -649,6 +653,7 @@ a number of significant features and is now developed independently
%patch65 -p1
%patch68 -p1
%patch82 -p0
%patch83 -p1
# At least python2_version needs to be a macro so that it's visible in
# %%install as well.
@ -1294,6 +1299,9 @@ fi
%{_mandir}/man1/bjam.1*
%changelog
* Thu Feb 16 2017 Jonathan Wakely <jwakely@redhat.com> - 1.63.0-4
- Revert Boost.Build change that breaks building for two Python versions.
* Thu Feb 09 2017 Jonathan Wakely <jwakely@redhat.com> - 1.63.0-3
- Add --without-fiber when Boost.Context is not supported.