[OE-core] [pyro][PATCH 19/25] texinfo: Avoid a problem with a dependency on perl(Locale::gettext_xs)
Peter Kjellerstedt
peter.kjellerstedt at axis.com
Thu Aug 31 13:58:28 UTC 2017
> -----Original Message-----
> From: Richard Purdie [mailto:richard.purdie at linuxfoundation.org]
> Sent: den 30 augusti 2017 23:37
> To: Peter Kjellerstedt <peter.kjellerstedt at axis.com>; Armin Kuster
> <akuster808 at gmail.com>; openembedded-core at lists.openembedded.org
> Subject: Re: [OE-core] [pyro][PATCH 19/25] texinfo: Avoid a problem
> with a dependency on perl(Locale::gettext_xs)
>
> On Tue, 2017-08-29 at 23:21 +0200, Peter Kjellerstedt wrote:
> > We do not build the Locale::gettext_xs Perl module and the code will
> > test for it and happily use Locale::gettext_pp instead if it is not
> > found. However, this still causes a file dependency on
> > perl(Locale::gettext_xs) to be generated, which must be satisfied by
> > adding an explicit provide for it.
> >
> > Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt at axis.com>
> > Signed-off-by: Mark Hatle <mark.hatle at windriver.com>
> > Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
> > ---
> > meta/recipes-extended/texinfo/texinfo_6.3.bb | 6 ++++++
> > 1 file changed, 6 insertions(+)
> >
> > diff --git a/meta/recipes-extended/texinfo/texinfo_6.3.bb
> > b/meta/recipes-extended/texinfo/texinfo_6.3.bb
> > index d82731e11e..f58df928aa 100644
> > --- a/meta/recipes-extended/texinfo/texinfo_6.3.bb
> > +++ b/meta/recipes-extended/texinfo/texinfo_6.3.bb
> > @@ -79,4 +79,10 @@ FILES_${PN}-doc = "${infodir}/texinfo* \
> > ${datadir}/${tex_texinfo} \
> > ${mandir}/man1 ${mandir}/man5"
> >
> > +# Lie about providing the Locale::gettext_xs module. It is not
> > actually built,
> > +# but the code will test for it and if not found use
> > Locale::gettext_pp instead.
> > +# However, this causes a file dependency on perl(Locale::gettext_xs)
> > to be
> > +# generated, which must be satisfied.
> > +RPROVIDES_${PN} += "perl(Locale::gettext_xs)"
> > +
> > BBCLASSEXTEND = "native nativesdk"
>
> Breaks in do_package_write_deb:
>
> e.g.
> https://autobuilder.yoctoproject.org/main/builders/nightly-
> arm64/builds/827
>
> but also many other builds. Possibly missing some other backport?
>
> Cheers,
>
> Richard
Ok, the problem was easily reproducible by building nativesdk-texinfo
with package_deb in PACKAGE_CLASSES. What that result in, is an error
like this:
dpkg-deb: error: parsing file 'tmp/work/x86_64-nativesdk-pokysdk-linux/nativesdk-texinfo/6.3-r0/packages-split/nativesdk-texinfo/DEBIAN/control' near line 15 package 'nativesdk-texinfo':
'Provides' field, reference to 'nativesdk-perl__Locale': invalid architecture name ':gettext_xs__': must start with an alphanumeric
Which is due to the following line in the Debian control file:
Provides: nativesdk-perl__Locale::gettext_xs__
And it is clear that dpkg does not like the two colons on that line.
However, that got me thinking. Why is this not a problem when building
with master of Poky? So I went and built the same with master and
looked at log.do_package_write_dep for nativesdl-texinfo, and as I
suspected the error was there as well. However, the error was ignored
which led to the build succeeding, but without actually producing the
texinfo deb package!
After some testing it turned out that commit dd540fba "package_deb:
Enable multithreaded package creation" is the culprit. If I revert
that, building nativesdk-texinfo will start to fail for master if
Debian packaging is enabled.
Given that Mark disabled Perl dependencies from being generated, I
think the easiest solution is to just drop this patch from Pyro, and
revert the corresponding patch from master.
I will leave fixing the multithreaded package creation support in
package_deb.bbclass to you because I have no idea about that...
//Peter
More information about the Openembedded-core
mailing list