Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 471658 - [Future EAPI] A way to declare 'soft' dependencies of USE flags (unlike REQUIRED_USE)
Summary: [Future EAPI] A way to declare 'soft' dependencies of USE flags (unlike REQUI...
Status: RESOLVED OBSOLETE
Alias: None
Product: Gentoo Hosted Projects
Classification: Unclassified
Component: PMS/EAPI (show other bugs)
Hardware: All Linux
: Normal enhancement (vote)
Assignee: PMS/EAPI
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: future-eapi
  Show dependency tree
 
Reported: 2013-05-29 06:56 UTC by Michał Górny
Modified: 2017-02-14 12:34 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2013-05-29 06:56:22 UTC
REQUIRED_USE supports only declaring 'hard' dependencies of two USE flags -- that is, 'foo? ( bar )' makes PM fail if USE='-bar foo' and require him to adjust the flags. This is mostly expected but there are cases when the enforcing flags are set in the profile.

For example, if a package that has an optional dep on Python stated:

  REQUIRED_USE="!python? ( !python_targets_... )"

to express that PYTHON_TARGETS are meaningless without USE=python, PM would require user to unset all Python targets on the package which is not really helpful.

What I would see is a 'soft' counterpart to REQUIRED_USE. For example:

  MEANINGFUL_USE="!python ( !python_targets_... )"

would solely 'gray out' PYTHON_TARGETS and avoid rebuilding the package on PYTHON_TARGETS change when USE=-python is used.
Comment 1 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2014-09-06 15:35:51 UTC
Runtime USE flags can serve as 'good enough' replacement.
Comment 2 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2017-02-14 12:34:19 UTC
I'm going to roll out a more complete proposal for this.