On 9/7/2012 10:32 AM, Fabian Groffen wrote:
With the introduction of IMPLICIT_IUSE (scheduled for EAPI 5), a phrase has been added to PMS, that finally makes a statement on what's supposed to be in IUSE, and what not[2]. To me, this patch means that things like userland_BSD, elibc_glibc, etc. do *NOT* belong in IUSE of an ebuild/eclass (and hence should b removed). 'prefix', on the other hand, should be added to IUSE of those ebuilds/eclasses that use them.
What, exactly, is the difference -- the principle behind the "should"s above? USE_EXPAND? Probably more a problem of me being lazy than anything being wrong with it, but [2] reads like Greek to me.
For EAPI 5 (assuming it contains IMPLICIT_IUSE) the base profile can be enriched with IMPLICIT_IUSE="prefix". For all currently Council approved EAPIs this means 'prefix' has to be added to IUSE.
I haven't looked into IMPLICIT_IUSE too carefully, but ... shouldn't this be... implicit? Sorry, I'm being super lazy and not reading anything here.
In case you wonder why this is a problem now, Portage/repoman has a rule that USE-flags that are masked in the profiles implicitly are defined.
Probably making a total ass of myself at this point but... could you define "defined"? I'm guessing I'd understand how to get flags masked implicitly if I read the IMPLICIT_IUSE stuff? Or do you mean "are defined implicitly" (in which case, again, I don't see why we'd need to make them explicit).
[2] http://git.overlays.gentoo.org/gitweb/?p=proj/pms.git;a=commitdiff;h=d9040ab3482af5f790368bac5d053bf1cd760ba8;hp=f9f7729c047300e1924ad768a49c660e12c2f906
Apologies for these questions -- in my defense, being both lazy and ignorant puts me at a real disadvantage here :)
-gmt