All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: [oe-commits] Robert Yang : perl: fix dependecies
       [not found] <20121019163541.436A0103AB@opal>
@ 2012-10-22  8:34 ` Martin Jansa
  2012-10-22 10:49     ` [OE-core] " Richard Purdie
  0 siblings, 1 reply; 5+ messages in thread
From: Martin Jansa @ 2012-10-22  8:34 UTC (permalink / raw)
  To: Robert Yang; +Cc: openembedded-core, openembedded-devel, openembedded-commits

[-- Attachment #1: Type: text/plain, Size: 5707 bytes --]

On Fri, Oct 19, 2012 at 04:35:40PM +0000, git@git.openembedded.org wrote:
> Module: openembedded-core.git
> Branch: master
> Commit: d50be1876f7a41822ef7e73207fdf8cccd39e400
> URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=d50be1876f7a41822ef7e73207fdf8cccd39e400
> 
> Author: Robert Yang <liezhi.yang@windriver.com>
> Date:   Fri Oct 19 19:22:04 2012 +0800
> 
> perl: fix dependecies
> 
> This patch fixes 2 problems.
> 
> The first one is that when run "perl -V" on target, it fails with lack
> of some .pm files. So add these perl module files to package perl itself
> to fix this failure.
> 
> The second problem is that package nativesdk-perl-modules doesn't depends
> on the single perl modules.
> 
> In the .bb file, dependencies of perl-modules are set by:
> 
> RRECOMMENDS_perl-modules = "${@d.getVar('PACKAGES', True)...}"
> 
> The PACKAGES would be reset by do_split_packages since:
> 
> PACKAGES_DYNAMIC = "perl-module-*"
> PACKAGES_DYNAMIC_virtclass-nativesdk = "nativesdk-perl-module-*"
> 
> Then:
> 1) The target perl-modules RRECOMMENDS on perl-module-*, this is what
>    we expect.
> 
> 2) But the nativesdk-perl-modules doesn't RRECOMMENDS on
>    nativesdk-perl-module-*, this is not what we expect.
> 
> The value of PACKAGES after do_split_packages has been set correctly (it
> contains the nativesdk-perl-module-* packages)
> 
> But the:
> 
> RRECOMMENDS_perl-modules = "${@d.getVar('PACKAGES', True)...}"
> 
> doesn't work correctly for nativesdk, the
> 
> d.getVar('RRECOMMENDS_perl-modules', True)
> 
> doesn't get the new value of the PACKAGES, it gets the value of PACKAGES
> before the do_split_packages.
> 
> This patch will fix the problem.
> 
> Signed-off-by: Kang Kai <kai.kang@windriver.com>
> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
> 
> ---
> 
>  meta/recipes-devtools/perl/perl_5.14.2.bb |   12 +++++++++---
>  1 files changed, 9 insertions(+), 3 deletions(-)
> 
> diff --git a/meta/recipes-devtools/perl/perl_5.14.2.bb b/meta/recipes-devtools/perl/perl_5.14.2.bb
> index d9206d8..d566a79 100644
> --- a/meta/recipes-devtools/perl/perl_5.14.2.bb
> +++ b/meta/recipes-devtools/perl/perl_5.14.2.bb
> @@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://Copying;md5=2b4c6ffbcfcbdee469f02565f253d81a \
>  # We need gnugrep (for -I)
>  DEPENDS = "virtual/db grep-native"
>  DEPENDS += "gdbm zlib"
> -PR = "r11"
> +PR = "r12"
>  
>  # 5.10.1 has Module::Build built-in
>  PROVIDES += "libmodule-build-perl"
> @@ -243,7 +243,13 @@ perl_package_preprocess () {
>  
>  PACKAGES = "perl-dbg perl perl-misc perl-dev perl-pod perl-doc perl-lib \
>              perl-module-cpan perl-module-cpanplus perl-module-unicore"
> -FILES_${PN} = "${bindir}/perl ${bindir}/perl${PV}"
> +FILES_${PN} = "${bindir}/perl ${bindir}/perl${PV} \
> +               ${libdir}/perl/${PV}/Config.pm \
> +               ${libdir}/perl/${PV}/strict.pm \
> +               ${libdir}/perl/${PV}/warnings.pm \
> +               ${libdir}/perl/${PV}/warnings \
> +               ${libdir}/perl/${PV}/vars.pm \
> +              "

I think this breaks at least automake, tiobench and libtimedate-perl

OE @ ~/openembedded-core $ git grep perl-module-strict
meta/recipes-devtools/automake/automake_1.12.3.bb:    perl-module-strict \
meta/recipes-extended/perl/libtimedate-perl_1.20.bb:RDEPENDS_${PN} += "perl-module-carp perl-module-exporter perl-module-strict perl-module-time-local"
OE @ ~/meta-openembedded $ git grep perl-module-strict
meta-oe/recipes-benchmark/tiobench/tiobench_0.3.3.bb:    perl-module-strict \
OE @ ~/openembedded-core $ git grep perl-module-vars
meta/recipes-devtools/automake/automake_1.12.3.bb:    perl-module-vars "

perl-module-strict and perl-module-vars are not created now, probably empty.

>  FILES_${PN}-dev = "${libdir}/perl/${PV}/CORE"
>  FILES_${PN}-lib = "${libdir}/libperl.so* \
>                     ${libdir}/perl5 \
> @@ -294,7 +300,6 @@ FILES_perl-module-unicore += "${libdir}/perl/${PV}/unicore"
>  # packages (actually the non modules packages and not created too)
>  ALLOW_EMPTY_perl-modules = "1"
>  PACKAGES_append = " perl-modules "
> -RRECOMMENDS_perl-modules = "${@d.getVar('PACKAGES', True).replace('${PN}-modules ', '').replace('${PN}-dbg ', '').replace('${PN}-misc ', '').replace('${PN}-dev ', '').replace('${PN}-pod ', '').replace('${PN}-doc ', '')}"
>  
>  python populate_packages_prepend () {
>      libdir = d.expand('${libdir}/perl/${PV}')
> @@ -302,6 +307,7 @@ python populate_packages_prepend () {
>      do_split_packages(d, libdir, 'auto/([^/]*)/.*', 'perl-module-%s', 'perl module %s', recursive=True, allow_dirs=False, match_path=True, prepend=False)
>      do_split_packages(d, libdir, 'Module/([^\/]*).*', 'perl-module-%s', 'perl module %s', recursive=True, allow_dirs=False, match_path=True, prepend=False)
>      do_split_packages(d, libdir, '(^(?!(CPAN\/|CPANPLUS\/|Module\/|unicore\/|auto\/)[^\/]).*)\.(pm|pl|e2x)', 'perl-module-%s', 'perl module %s', recursive=True, allow_dirs=False, match_path=True, prepend=False)
> +    d.setVar("RRECOMMENDS_${PN}-modules", d.getVar('PACKAGES', True).replace('${PN}-modules ', '').replace('${PN}-dbg ', '').replace('${PN}-misc ', '').replace('${PN}-dev ', '').replace('${PN}-pod ', '').replace('${PN}-doc ', ''))
>  }
>  
>  PACKAGES_DYNAMIC = "perl-module-*"
> 
> 
> _______________________________________________
> Openembedded-commits mailing list
> Openembedded-commits@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-commits

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [oe-commits] Robert Yang : perl: fix dependecies
  2012-10-22  8:34 ` [oe-commits] Robert Yang : perl: fix dependecies Martin Jansa
@ 2012-10-22 10:49     ` Richard Purdie
  0 siblings, 0 replies; 5+ messages in thread
From: Richard Purdie @ 2012-10-22 10:49 UTC (permalink / raw)
  To: Martin Jansa; +Cc: openembedded-commits, openembedded-devel, openembedded-core

On Mon, 2012-10-22 at 10:34 +0200, Martin Jansa wrote:
> >  # 5.10.1 has Module::Build built-in
> >  PROVIDES += "libmodule-build-perl"
> > @@ -243,7 +243,13 @@ perl_package_preprocess () {
> >  
> >  PACKAGES = "perl-dbg perl perl-misc perl-dev perl-pod perl-doc perl-lib \
> >              perl-module-cpan perl-module-cpanplus perl-module-unicore"
> > -FILES_${PN} = "${bindir}/perl ${bindir}/perl${PV}"
> > +FILES_${PN} = "${bindir}/perl ${bindir}/perl${PV} \
> > +               ${libdir}/perl/${PV}/Config.pm \
> > +               ${libdir}/perl/${PV}/strict.pm \
> > +               ${libdir}/perl/${PV}/warnings.pm \
> > +               ${libdir}/perl/${PV}/warnings \
> > +               ${libdir}/perl/${PV}/vars.pm \
> > +              "
> 
> I think this breaks at least automake, tiobench and libtimedate-perl
> 
> OE @ ~/openembedded-core $ git grep perl-module-strict
> meta/recipes-devtools/automake/automake_1.12.3.bb:    perl-module-strict \
> meta/recipes-extended/perl/libtimedate-perl_1.20.bb:RDEPENDS_${PN} += "perl-module-carp perl-module-exporter perl-module-strict perl-module-time-local"
> OE @ ~/meta-openembedded $ git grep perl-module-strict
> meta-oe/recipes-benchmark/tiobench/tiobench_0.3.3.bb:    perl-module-strict \
> OE @ ~/openembedded-core $ git grep perl-module-vars
> meta/recipes-devtools/automake/automake_1.12.3.bb:    perl-module-vars "
> 
> perl-module-strict and perl-module-vars are not created now, probably empty.
> 

It does, the autobuilder also noticed this and I pushed in a fix this
morning:

http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=072a6d352f55bbe481b04db02aa6d9cde7d90057

Cheers,

Richard




^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [OE-core] [oe-commits] Robert Yang : perl: fix dependecies
@ 2012-10-22 10:49     ` Richard Purdie
  0 siblings, 0 replies; 5+ messages in thread
From: Richard Purdie @ 2012-10-22 10:49 UTC (permalink / raw)
  To: Martin Jansa; +Cc: openembedded-commits, openembedded-devel, openembedded-core

On Mon, 2012-10-22 at 10:34 +0200, Martin Jansa wrote:
> >  # 5.10.1 has Module::Build built-in
> >  PROVIDES += "libmodule-build-perl"
> > @@ -243,7 +243,13 @@ perl_package_preprocess () {
> >  
> >  PACKAGES = "perl-dbg perl perl-misc perl-dev perl-pod perl-doc perl-lib \
> >              perl-module-cpan perl-module-cpanplus perl-module-unicore"
> > -FILES_${PN} = "${bindir}/perl ${bindir}/perl${PV}"
> > +FILES_${PN} = "${bindir}/perl ${bindir}/perl${PV} \
> > +               ${libdir}/perl/${PV}/Config.pm \
> > +               ${libdir}/perl/${PV}/strict.pm \
> > +               ${libdir}/perl/${PV}/warnings.pm \
> > +               ${libdir}/perl/${PV}/warnings \
> > +               ${libdir}/perl/${PV}/vars.pm \
> > +              "
> 
> I think this breaks at least automake, tiobench and libtimedate-perl
> 
> OE @ ~/openembedded-core $ git grep perl-module-strict
> meta/recipes-devtools/automake/automake_1.12.3.bb:    perl-module-strict \
> meta/recipes-extended/perl/libtimedate-perl_1.20.bb:RDEPENDS_${PN} += "perl-module-carp perl-module-exporter perl-module-strict perl-module-time-local"
> OE @ ~/meta-openembedded $ git grep perl-module-strict
> meta-oe/recipes-benchmark/tiobench/tiobench_0.3.3.bb:    perl-module-strict \
> OE @ ~/openembedded-core $ git grep perl-module-vars
> meta/recipes-devtools/automake/automake_1.12.3.bb:    perl-module-vars "
> 
> perl-module-strict and perl-module-vars are not created now, probably empty.
> 

It does, the autobuilder also noticed this and I pushed in a fix this
morning:

http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=072a6d352f55bbe481b04db02aa6d9cde7d90057

Cheers,

Richard




^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [oe-commits] Robert Yang : perl: fix dependecies
  2012-10-22 10:49     ` [OE-core] " Richard Purdie
@ 2012-10-22 11:01       ` Martin Jansa
  -1 siblings, 0 replies; 5+ messages in thread
From: Martin Jansa @ 2012-10-22 11:01 UTC (permalink / raw)
  To: Richard Purdie
  Cc: openembedded-commits, openembedded-devel, openembedded-core

[-- Attachment #1: Type: text/plain, Size: 2299 bytes --]

On Mon, Oct 22, 2012 at 11:49:09AM +0100, Richard Purdie wrote:
> On Mon, 2012-10-22 at 10:34 +0200, Martin Jansa wrote:
> > >  # 5.10.1 has Module::Build built-in
> > >  PROVIDES += "libmodule-build-perl"
> > > @@ -243,7 +243,13 @@ perl_package_preprocess () {
> > >  
> > >  PACKAGES = "perl-dbg perl perl-misc perl-dev perl-pod perl-doc perl-lib \
> > >              perl-module-cpan perl-module-cpanplus perl-module-unicore"
> > > -FILES_${PN} = "${bindir}/perl ${bindir}/perl${PV}"
> > > +FILES_${PN} = "${bindir}/perl ${bindir}/perl${PV} \
> > > +               ${libdir}/perl/${PV}/Config.pm \
> > > +               ${libdir}/perl/${PV}/strict.pm \
> > > +               ${libdir}/perl/${PV}/warnings.pm \
> > > +               ${libdir}/perl/${PV}/warnings \
> > > +               ${libdir}/perl/${PV}/vars.pm \
> > > +              "
> > 
> > I think this breaks at least automake, tiobench and libtimedate-perl
> > 
> > OE @ ~/openembedded-core $ git grep perl-module-strict
> > meta/recipes-devtools/automake/automake_1.12.3.bb:    perl-module-strict \
> > meta/recipes-extended/perl/libtimedate-perl_1.20.bb:RDEPENDS_${PN} += "perl-module-carp perl-module-exporter perl-module-strict perl-module-time-local"
> > OE @ ~/meta-openembedded $ git grep perl-module-strict
> > meta-oe/recipes-benchmark/tiobench/tiobench_0.3.3.bb:    perl-module-strict \
> > OE @ ~/openembedded-core $ git grep perl-module-vars
> > meta/recipes-devtools/automake/automake_1.12.3.bb:    perl-module-vars "
> > 
> > perl-module-strict and perl-module-vars are not created now, probably empty.
> > 
> 
> It does, the autobuilder also noticed this and I pushed in a fix this
> morning:
> 
> http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=072a6d352f55bbe481b04db02aa6d9cde7d90057

What about using something like world-image target? I'm using something
like that to test that all recipes in my feed are not only buildable,
but also able to install in do_rootfs. Only problem with this could be
that more packages need to be excluded because some recipes are can be
built together, but not installed in same images (packages with RCONFLICTS).

It should help find those issues on autobuilder.

Cheers,

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [OE-core] [oe-commits] Robert Yang : perl: fix dependecies
@ 2012-10-22 11:01       ` Martin Jansa
  0 siblings, 0 replies; 5+ messages in thread
From: Martin Jansa @ 2012-10-22 11:01 UTC (permalink / raw)
  To: Richard Purdie
  Cc: openembedded-commits, openembedded-devel, openembedded-core

[-- Attachment #1: Type: text/plain, Size: 2299 bytes --]

On Mon, Oct 22, 2012 at 11:49:09AM +0100, Richard Purdie wrote:
> On Mon, 2012-10-22 at 10:34 +0200, Martin Jansa wrote:
> > >  # 5.10.1 has Module::Build built-in
> > >  PROVIDES += "libmodule-build-perl"
> > > @@ -243,7 +243,13 @@ perl_package_preprocess () {
> > >  
> > >  PACKAGES = "perl-dbg perl perl-misc perl-dev perl-pod perl-doc perl-lib \
> > >              perl-module-cpan perl-module-cpanplus perl-module-unicore"
> > > -FILES_${PN} = "${bindir}/perl ${bindir}/perl${PV}"
> > > +FILES_${PN} = "${bindir}/perl ${bindir}/perl${PV} \
> > > +               ${libdir}/perl/${PV}/Config.pm \
> > > +               ${libdir}/perl/${PV}/strict.pm \
> > > +               ${libdir}/perl/${PV}/warnings.pm \
> > > +               ${libdir}/perl/${PV}/warnings \
> > > +               ${libdir}/perl/${PV}/vars.pm \
> > > +              "
> > 
> > I think this breaks at least automake, tiobench and libtimedate-perl
> > 
> > OE @ ~/openembedded-core $ git grep perl-module-strict
> > meta/recipes-devtools/automake/automake_1.12.3.bb:    perl-module-strict \
> > meta/recipes-extended/perl/libtimedate-perl_1.20.bb:RDEPENDS_${PN} += "perl-module-carp perl-module-exporter perl-module-strict perl-module-time-local"
> > OE @ ~/meta-openembedded $ git grep perl-module-strict
> > meta-oe/recipes-benchmark/tiobench/tiobench_0.3.3.bb:    perl-module-strict \
> > OE @ ~/openembedded-core $ git grep perl-module-vars
> > meta/recipes-devtools/automake/automake_1.12.3.bb:    perl-module-vars "
> > 
> > perl-module-strict and perl-module-vars are not created now, probably empty.
> > 
> 
> It does, the autobuilder also noticed this and I pushed in a fix this
> morning:
> 
> http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=072a6d352f55bbe481b04db02aa6d9cde7d90057

What about using something like world-image target? I'm using something
like that to test that all recipes in my feed are not only buildable,
but also able to install in do_rootfs. Only problem with this could be
that more packages need to be excluded because some recipes are can be
built together, but not installed in same images (packages with RCONFLICTS).

It should help find those issues on autobuilder.

Cheers,

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2012-10-22 11:14 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20121019163541.436A0103AB@opal>
2012-10-22  8:34 ` [oe-commits] Robert Yang : perl: fix dependecies Martin Jansa
2012-10-22 10:49   ` Richard Purdie
2012-10-22 10:49     ` [OE-core] " Richard Purdie
2012-10-22 11:01     ` Martin Jansa
2012-10-22 11:01       ` [OE-core] " Martin Jansa

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.