On 27/02/16 21:40, Alan McKinnon wrote:
I don't know much about PYTHON_SINGLE_TARGET and PYTHON_TARGET, it all
seemed to just work so I never looked further. Until now. Of all
packages, libreoffice seems to want only python3:
I can set it in make.conf but as expected that causes all manner of
other packages to fail emerge checks as they need python2.7.
What's the preferred way to deal with this situation?
PYTHON_TARGETS="python2_7 python3_4"
PYTHON_SINGLE_TARGET="python3_4"
For packages that require another PYTHON_SINGLE_TARGET version, you can
set "python_single_target_python2_7" in package.use. For example:
app-text/asciidoc python_single_target_python2_7
The reverse is also true. You can set:
PYTHON_SINGLE_TARGET="python2_7"
in make.conf, and then set "python_single_target_python3_4" in
package.use for packages that require 3.4:
app-office/libreoffice python_single_target_python3_4
I use the first method.
Yes, it's a PITA :-)
PS:
Another syntax is also available for package.use:
app-text/asciidoc <other USE flags> PYTHON_SINGLE_TARGET: python2_7
Just saw a blog post about it; I think it's undocumented and works for
all USE_EXPAND flags. The downside is that it has to appear at the end
of the line.