It's not automatically doing magic but using things specified in the
profile. In this case look at ${PORTDIR}/profile/base/package.use
Setting PYTHON_SINGLE_TARGET (which is expanded to those USEFlags) in your
make.conf will shadow those from the profile and spit out an error.

2018-07-07 21:45 GMT+03:00 Vadim A. Misbakh-Soloviov <gen...@mva.name>:

> The package you're referring to have only support of python2 interpreters
> (python2_7 (CPython) and pypy (not the pypy3)).
>
> It seems, by default (if neither of PYTHON_SINGLE_TARGET is set), portage
> tries to do the "magic" (well, in my opinion, it opposes to the Gentoo
> Philosophy, and it should throw the same error even with "defaults") and
> automatically chooses the 2_7 single target for it.
>
> But when you explicitly specify the targets in make.conf, it obeys and
> don't
> do that magic anymore, so condition of "exactly one of supported
> single_targets (pypy, pyhton2.7)" is not meeting anymore".
>
> That's why you getting the error.
>
> В письме от суббота, 7 июля 2018 г. 21:31:48 MSK пользователь Andreas Fink
> написал:
> > Hello,
> > I have a question considering PYTHON_SINGLE_TARGET because it seems to
> > behave inconsistently on my system and I cannot find any documentation
> > about it, that would guide me in the right direction how to fix it.
> > Running emerge --info I see the following (I'm on ~amd64):
> > ... PYTHON_SINGLE_TARGET="python3_5" PYTHON_TARGETS="python2_7
> python3_5"
> > ...
> >
> > This output is the default for ~amd64, neither PYTHON_SINGLE_TARGET nor
> > PYTHON_TARGETS has been set explicitly.
> > If I do an emerge -av asciidoc, I see the following output:
> > ebuild   R    ] app-text/asciidoc-8.6.10::gentoo  USE="-examples
> -graphviz
> > -highlight {-test}" PYTHON_SINGLE_TARGET="python2_7 -pypy"
> > PYTHON_TARGETS="python2_7 -pypy"
> >
> > Setting PYTHON_SINGLE_TARGET and PYTHON_TARGETS in /etc/portage/make.conf
> > explicitly to: PYTHON_SINGLE_TARGET="python3_5"
> > PYTHON_TARGETS="python2_7 python3_5"
> >
> > Now emerge --info doesn't show any difference. It's still the same
> output.
> > Doing an emerge -av asciidoc I get now this output:
> > !!! The ebuild selected to satisfy "asciidoc" has unmet requirements.
> > - app-text/asciidoc-8.6.10::gentoo USE="-examples -graphviz -highlight
> > -test" ABI_X86="(64)" PYTHON_SINGLE_TARGET="-pypy -python2_7"
> > PYTHON_TARGETS="python2_7 -pypy"
> >
> >   The following REQUIRED_USE flag constraints are unsatisfied:
> >     exactly-one-of ( python_single_target_pypy
> > python_single_target_python2_7 )
> >
> >
> > This seems for me to be really inconsistent, considering the fact that we
> > usually request users to provide an emerge --info, which wouldn't show
> any
> > difference.
> > Why am I able to merge in the first case the package, but in the second
> case
> > I get an error? I really cannot understand where the
> > python_single_target_python2_7 is set in the first case.
> > Anyone who has more insight into that case?
> >
> > Cheers
> > Andreas
>
>
>
>
>
>

Reply via email to