Gentoo Archives: gentoo-dev

From: Ben de Groot <yngwin@g.o>
To: gentoo-dev@l.g.o
Cc: kensington@g.o
Subject: Re: [gentoo-dev] Patch: Linguas USE support for cmake-utils.eclass
Date: Sun, 24 Jun 2012 08:36:05
Message-Id: CAB9SyzTtEc2MPzyV9gru-0niLsqe6NBonfVt3gxcmHqhV6ZoOw@mail.gmail.com
In Reply to: Re: [gentoo-dev] Patch: Linguas USE support for cmake-utils.eclass by "Michał Górny"
On 24 June 2012 01:57, Michał Górny <mgorny@g.o> wrote:
> On Sun, 24 Jun 2012 03:37:59 +1000 > Michael Palimaka <kensington@g.o> wrote: > >> --- cmake-utils.eclass >> +++ cmake-utils.eclass >> @@ -20,0 +21,29 @@ >> +# @ECLASS-VARIABLE: LANGS > > Please prefix. > >> +# @DEFAULT_UNSET >> +# @DESCRIPTION: >> +# In case your application provides various translations, use this >> variable to specify >> +# them in order to populate "linguas_*" IUSE automatically. Make >> sure that you set this >> +# variable before inheriting cmake-utils eclass. >> +# Example: >> +# @CODE >> +#   LANGS="en el de" >> +# @CODE >> +for x in ${LANGS}; do >> +       IUSE+=" linguas_${x}" >> +done >> + >> +# @ECLASS-VARIABLE: LANGSLONG >> +# @DEFAULT_UNSET >> +# @DESCRIPTION: >> +# Same as above, but this variable is for LINGUAS that must be in >> long format. >> +# Remember to set this variable before inheriting cmake-utils eclass. >> +# Look at ${PORTDIR}/profiles/desc/linguas.desc for details. >> +# Example: >> +# @CODE >> +#   LANGS="de_DE hu_HU" >> +# @CODE > > Shouldn't this be LANGSLONG? > >> +for x in ${LANGSLONG}; do >> +       IUSE+=" linguas_${x%_*}" >> +done >> +unset x >> + > > And how does it exactly differ from LANGS above? Is there a reason > those two can't be coerced into a single variable?
Some linguas correspond 1:1 between the package and portage's linguas.desc, while others need the long form (e.g. el_GR) for the package, but the short form (el) is used in portage.
> Shouldn't those do something more than setting IUSE? For example, > actually ensuring those LINGUAS will be installed?
That would be a nice improvement. We at qt@ have been discussing this on and off. We would like to see a linguas.eclass happen, because already now we start having code duplication. So instead of this duplication of code between qt4-r2 and cmake-utils eclasses, why not put this into a separate linguas.eclass that both can inherit? Obviously the problem with handling more than just setting IUSE is the variety of ways in which linguas are handled by different packages and different build systems. I'll be submitting some additions to qt4-r2.eclass for comments later. I hope we can continue this discussion. Ideas are very welcome! -- Cheers, Ben | yngwin Gentoo developer Gentoo Qt project lead

Replies