Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 539124

Summary: [Future EAPI] RECOMMENDED_USE for default use status and conditional use recommendations
Product: Gentoo Hosted Projects Reporter: Adam Feldman <np-hardass>
Component: PMS/EAPIAssignee: PMS/EAPI <pms>
Status: UNCONFIRMED ---    
Severity: normal CC: esigra, zlg
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 174380    

Description Adam Feldman gentoo-dev 2015-02-06 16:15:47 UTC
Primarily, the idea here that a maintainer may want to have IUSE="foo bar" and bar is recommended if foo is selected.  Currently, the only way to recommend a use flag is IUSE="+baz"  This doesn't work with the above mentioned example because IUSE="foo +bar" would recommend bar regardless of whether foo is selected or not.

For backwards compatibility, the IUSE + syntax can be maintained, but alternatively, it may be simpler, and make more sense to have something like:
IUSE="foo bar baz"
RECOMMENDED_USE="
    foo? ( bar )
    baz"
So in this example:
IUSE="baz"
RECOMMENDED_USE="baz"
is equivalent to IUSE="+baz"

The original inspiration for this idea was the following, app-emulation/wine works both with and without X.  Most users who use X would most likely want the USE flags lcms and xcomposite, but setting them + in IUSE makes compiling wine with -X more complicated, as every flag that + just for X users would have to be unset for non-X users.  The above system simplifies this by only setting + on lcms and xcomposite if X is set.

Alternatively, other names could be used, like DEFAULT_USE instead of RECOMMENDED_USE, but that is a side note to the primary point.

Any thoughts on the idea would be greatly appreciated, and thank you in advance for your time.