On 09/21/2012 12:08 PM, Pacho Ramos wrote:
> Hello
> 
> This comes from this gentoo-dev thread:
> http://www.gossamer-threads.com/lists/gentoo/dev/260536
> 
> In that one, we try to use the following:
> has vala ${IUSE//+/} && ! use vala && return 0 
> 
> as already done in many eclasses/ebuilds. The problem is that Ciaran
> wants to forbid it because he says it's not specified in PMS. My
> suggestion was to simply specify it as it's currently implemented in
> portage because that functionality is (apart of needed) being used for a
> long time in the tree by numerous eclasses/ebuilds, then, from my point
> of view, wouldn't be any sense on lose time for moving them to current
> functionality to a worse one, wait for the next eapi and, finally,
> revert them back to current behavior.
> 
> The problem is that I cannot find any doc about how this is currently
> handled in portage. Could you help me on it please?

That `has vala ${IUSE//+/}` thing should work for all versions of
portage that have existed since PMS came around. The way that it works
is that that ebuild.sh sources the ebuild, and the inherit function
makes temporary backups of IUSE so that the IUSE settings from all of
the eclasses and the ebuild can be stacked together after the sourcing
is complete. The stacked IUSE value that's generated then remains in the
ebuild's environment for all phases.
-- 
Thanks,
Zac

Reply via email to