python*-r1.eclass: Deprecate python_gen_usedep
authorMichał Górny <mgorny@gentoo.org>
Fri, 29 Nov 2019 10:20:33 +0000 (11:20 +0100)
committerMichał Górny <mgorny@gentoo.org>
Sat, 7 Dec 2019 14:36:25 +0000 (15:36 +0100)
commit26467bacc4d873a6d9ad43ef61e8adc3927c6090
tree5e1f0bc1792df68e3670288505fab0536414df7b
parentf981af79945e28a40dab2b5196329f7835afe78b
python*-r1.eclass: Deprecate python_gen_usedep

Deprecate python_gen_usedep() in favor of python_gen_cond_dep().
The latter is a newer API that generates full USE-conditional blocks
rather than pure USE-dependency strings.  As such, it can replace all
uses of the former, and is safer to use in general.  In particular:

  dev-python/foo[$(python_gen_usedep -2)]
  dev-python/bar[$(python_gen_usedep -2)]

installs the dependency (with no implementation match enforced) even
if there's no python2 implementation enabled, while:

  $(python_gen_cond_dep '
    dev-python/foo[${PYTHON_USEDEP}]
    dev-python/bar[${PYTHON_USEDEP}]
  ' -2)

installs it only if there's at least one implementation requiring it.

Since the functions are used in global scope only, a deprecation warning
is emitted only once, during the sourcing for pkg_setup phase.  This
avoids having it output during metadata cache regeneration.

Signed-off-by: Michał Górny <mgorny@gentoo.org>
eclass/python-r1.eclass
eclass/python-single-r1.eclass