From 78ffbe094400d277627b2c19ceb182d637b8baca Mon Sep 17 00:00:00 2001 From: Rene Rivera Date: Sat, 16 Jul 2016 15:53:30 -0500 Subject: [PATCH] Fix not having a default python interpreter version on targets. This change adds a toolset requirement that sets the python version feature of the first configured python for a given target OS (usually the host OS). This allows to correctly configure different python interpreters for different target OSes. --- a/tools/build/src/tools/python.jam | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/tools/build/src/tools/python.jam b/tools/build/src/tools/python.jam index 6404d8ad37..6ee32167fc 100644 --- a/tools/build/src/tools/python.jam +++ b/tools/build/src/tools/python.jam @@ -900,6 +900,19 @@ local rule configure ( version ? : cmd-or-prefix ? : includes * : libraries ? : toolset.add-requirements $(target-requirements:J=,):$(interpreter-cmd) ; + # 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) ] ; + if ! in $(toolset-target-os-requirements:G) + { + toolset.add-requirements $(target-os):$(version:E=default) ; + } + # Register the right suffix for extensions. register-extension-suffix $(extension-suffix) : $(target-requirements) ;