On Thu, Feb 11, 2016 at 7:12 PM, Daniel Campbell <z...@gentoo.org> wrote: > > No, lazy USE in this discussion is akin to installing, say, Steam. > That requires a lot of packages that must be rebuilt with abi_x86_32. > In such a situation, if there was something like USE="~abi_x86_32" > (the ~ is just a symbol, it wouldn't have to be that exact symbol), > then packages that need that USE flag would automatically use it, and > those that don't need it wouldn't be built with it.
Actually, I was proposing that you'd only need USE="~abi_x86_32" if you set USE="-abi_x86_32" someplace else. Adding a ~ would just remove any previous settings - it wouldn't cause a use flag to be turned on or off. You could have a flag like that even without lazy use flag support - it could be used to cause a single package to revert to its default use flags. I'm not really sure if it is a terribly useful feature at all. In my proposal you wouldn't need to do anything at all on a default profile to have USE="abi_x86_32" enabled for packages that had that use dependency in some other package. Just running emerge steam would cause rebuilds on anything that didn't already have 32-bit support which required it. You'd only need to mess with your flags if you had explicitly set USE="-abi_x86_32" - which makes sense since you've now given portage two contradicting directives. Just as you don't need to do anything special to have "emerge chromium" pull in libX11, you wouldn't need to do anything special to have "emerge chromium" cause hwids to rebuild with USE=usb if it isn't already built that way, unless you had explicitly set USE=-usb. And of course this should be something that can be turned off, and users can always run -pv to see what portage is going to do. -- Rich