On Fri, 20 Jul 2012 13:43:15 -0400 Alexandre Rostovtsev wrote: > > If you dep upon foo[linguas_en(+)] and linguas_en isn't in IUSE, > > what happens? > > Fatal error. If a package installs its translations implicitly via > gettext's rules depending on the value of LINGUAS at configure time, > then obviously other packages must rely on that package having > installed any particular translation. Uh, the entire point of the (+) is that it's *not* a fatal error if you have a default. > > > Otherwise, it is treated just like a normal environment variable, > > > and portage doesn't touch it. > > > > It's not a normal environment variable, and it never has been. > > LINGUAS has been an environment variable with a special meaning for > gettext-based build systems, which are rather popular in the free > software world, since, oh, at least the year 2002 or so, when > gettext-0.11 was released. Maybe even earlier. And? Gentoo has decided to handle it otherwise. > > > For most gettext packages, there is absolutely no reason that the > > > ebuild maintainer should have to keep track of every translation > > > available in a given package across version bumps. If you change > > > this behavior in a future EAPI, you will break this. > > > > Don't use a USE_EXPAND variable if you don't want USE_EXPAND > > behaviour. > > Thousands of packages rely on a particular interpretation of LINGUAS > that has been standard across all distros for a decade. If that > behavior changed in EAPI5, then EAPI5 is not suitable for adoption in > Gentoo. The feature was already approved by the Council for the EAPI originally known as 3. It's necessary to make use dependency defaults work correctly for USE_EXPAND variables (which they currently do not, due to it being omitted from what became EAPI 4). -- Ciaran McCreesh