[OE-core] [PATCH] eglibc: Add gettext-native to DEPENDS

Phil Blundell pb at pbcl.net
Wed Apr 24 07:58:03 UTC 2013


On Tue, 2013-04-23 at 22:45 +0100, Richard Purdie wrote:
> On Tue, 2013-04-23 at 17:44 +0100, Phil Blundell wrote:
> >  # nptl needs unwind support in gcc, which can't be built without glibc.
> > -DEPENDS = "virtual/${TARGET_PREFIX}gcc-initial linux-libc-headers virtual/${TARGET_PREFIX}libc-initial"
> > +DEPENDS = "virtual/${TARGET_PREFIX}gcc-initial linux-libc-headers virtual/${TARGET_PREFIX}libc-initial gettext-native"
> >  # nptl needs libgcc but dlopens it, so our shlibs code doesn't detect this
> >  #RDEPENDS_${PN} += "${@['','libgcc']['nptl' in '${GLIBC_ADDONS}']}"
> >  PROVIDES = "virtual/libc virtual/${TARGET_PREFIX}libc-for-gcc"
> 
> This will have a significant adverse affect on build speed due to build
> dependency bottlenecks :(
> 
> Are there any good options for avoiding this?

Well, obviously folks who do have it in the host environment can set
ASSUME_PROVIDED.  I assume most people do have that installed, otherwise
this would be failing all the time.

Other than that, I think your options are:

1. figure out a way to defer catalog building to later, e.g. put it in
eglibc-locale instead.  This would probably involve some hacking of the
eglibc makefiles but I don't think it would be especially hard.

2. find a way to disable catalog generation entirely for folks who don't
want it.  That might involve inventing DISTRO_FEATURES="l10n" or
something and patching (albeit trivial) to both configure.in and the
makefiles.  I imagine that change would be upstreamable in eglibc.

3. reimplement msgcat as a python script or something else that doesn't
need compiling, or pull out msgcat.c into its own recipe that just
builds this single file (avoiding the autotools overhead that
gettext-native has).

I can't think of any other obvious choices offhand but I'm sure there
are more.

The thing that does seem a bit puzzling is that this problem didn't use
to happen with older versions of oe-core (in particular, I never saw it
with my previous snapshot which used eglibc 2.16).  I'm not quite sure
what changed to make it suddenly become an issue.

p.






More information about the Openembedded-core mailing list