[OE-core] [meta-oe][PATCH] perl: native modules will not trigger build perl for target.

Krzysztof Taborski taborskikrzysztof at gmail.com
Tue Jul 24 07:22:14 UTC 2018


Hello,
Example recipe (recipe.bb for example):
"""
LICENSE="CLOSED"

RDEPENDS_${PN} = "perl-module-file-glob"

BBCLASSEXTEND = "native nativesdk"
do_install() {
    install -d ${D}/${bindir}
    echo "my perl script" > ${D}/${bindir}/recipe.pl
}
inherit perlnative
""

When my patch is removed and I will call: "'bitbake recipe-native".
Then I have dependency:
recipe-native -> perl (target version)
This is not correct, that native recipe has dependency to target recipe.

When I called (bitbake recipe-native -g) I can find:
"recipe-native" -> "perl"
in recipe-depends.dot

This was my original problem. Please correct me, if missed something.

usage of += with an over-ride - I've just copied it from nativesdk
over-ride, which was already in perl recipe.


Best regards,
Krzysztof Taborski

2018-07-23 19:23 GMT+02:00 Andre McCurdy <armccurdy at gmail.com>:

> On Mon, Jul 23, 2018 at 5:57 AM, Krzysztof Taborski
> <taborskikrzysztof at gmail.com> wrote:
> > Change was already merged:
> > http://cgit.openembedded.org/openembedded-core/commit/meta/
> recipes-devtools?id=7dd9772eca6df52db09b65537fdf689f1aa3fd8f
> >
> > Is your request still valid?
>
> Yes, although the change was merged, it's not clear that it was correct.
>
> Native recipes aren't split into packages, so there are no -native
> versions of the perl modules. If you have a recipe which depends on
> "perl-module-XXX-native" it's likely a bug in that recipe - not in
> perl-native.
>
> What recipe did you find which depends on a -native version of a perl
> module?
>
> > 2018-07-09 21:40 GMT+02:00 Andre McCurdy <armccurdy at gmail.com>:
> >>
> >> On Wed, May 9, 2018 at 7:16 AM, taborskikrzysztof
> >> <taborskikrzysztof at gmail.com> wrote:
> >> > Can I request review?
> >> > -------- Oryginalna wiadomość --------
> >> > Od: Krzysztof Taborski <taborskikrzysztof at gmail.com>
> >> > Data: 08.05.2018 18:46 (GMT+01:00)
> >> > Do: openembedded-core at lists.openembedded.org
> >> > DW: Krzysztof Taborski <taborskikrzysztof at gmail.com>
> >> > Temat: [meta-oe][PATCH] perl: native modules will not trigger build
> perl
> >> > for
> >> > target.
> >> >
> >> > Currently building perl-native modules triggers
> >> > build perl for target due to PACKAGES_DYNAMIC regex.
> >> >
> >> > This commit will cause, that perl native modules will
> >> > trigger perl-native build.
> >>
> >> Can you give an example of how to reproduce the problem?
> >>
> >> > Signed-off-by: Krzysztof Taborski <taborskikrzysztof at gmail.com>
> >> > ---
> >> > meta/recipes-devtools/perl/perl-native_5.24.1.bb | 2 ++
> >> > meta/recipes-devtools/perl/perl_5.24.1.bb        | 2 +-
> >> > 2 files changed, 3 insertions(+), 1 deletion(-)
> >> >
> >> > diff --git a/meta/recipes-devtools/perl/perl-native_5.24.1.bb
> >> > b/meta/recipes-devtools/perl/perl-native_5.24.1.bb
> >> > index a9ab17d16c..71f45890b0 100644
> >> > --- a/meta/recipes-devtools/perl/perl-native_5.24.1.bb
> >> > +++ b/meta/recipes-devtools/perl/perl-native_5.24.1.bb
> >> > @@ -135,3 +135,5 @@ EOF
> >> >
> >> > # Fix the path in sstate
> >> > SSTATE_SCAN_FILES += "*.pm *.pod *.h *.pl *.sh"
> >> > +PACKAGES_DYNAMIC_class-native += "^perl-module-.*native$"
> >>
> >> This usage of += with an over-ride is not correct.
> >>
> >> However, regardless of that, was this change actually needed?
> >>
> >> If you know of a -native recipe which depends on a
> >> perl-module-XXX-native package then it's probably a bug in the -native
> >> recipe. Having perl-native pretend to provide perl-module packages
> >> probably isn't the right solution.
> >>
> >> > diff --git a/meta/recipes-devtools/perl/perl_5.24.1.bb
> >> > b/meta/recipes-devtools/perl/perl_5.24.1.bb
> >> > index 53a426289a..4c6a71082f 100644
> >> > --- a/meta/recipes-devtools/perl/perl_5.24.1.bb
> >> > +++ b/meta/recipes-devtools/perl/perl_5.24.1.bb
> >> > @@ -339,7 +339,7 @@ python split_perl_packages () {
> >> >      d.setVar(d.expand("RRECOMMENDS_${PN}-modules"), '
> '.join(packages))
> >> > }
> >> >
> >> > -PACKAGES_DYNAMIC += "^perl-module-.*"
> >> > +PACKAGES_DYNAMIC += "^perl-module-.*(?<!\-native)$"
> >> > PACKAGES_DYNAMIC_class-nativesdk += "^nativesdk-perl-module-.*"
> >>
> >> This usage of += with an over-ride is not correct.
> >>
> >> > RPROVIDES_perl-lib = "perl-lib"
> >> > --
> >> > 2.13.6
> >> >
> >> >
> >> > --
> >> > _______________________________________________
> >> > Openembedded-core mailing list
> >> > Openembedded-core at lists.openembedded.org
> >> > http://lists.openembedded.org/mailman/listinfo/openembedded-core
> >> >
> >
> >
> >
> >
> > --
> > Pozdrawiam,
> > Krzysiek Taborski
>



-- 
Pozdrawiam,
Krzysiek Taborski
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20180724/1e3b406c/attachment-0002.html>


More information about the Openembedded-core mailing list