All of lore.kernel.org
 help / color / mirror / Atom feed
From: Martin Jansa <martin.jansa@gmail.com>
To: Robert Yang <liezhi.yang@windriver.com>
Cc: openembedded-core@lists.openembedded.org,
	openembedded-devel@lists.openembedded.org,
	openembedded-commits@lists.openembedded.org
Subject: Re: [oe-commits] Robert Yang : perl: fix dependecies
Date: Mon, 22 Oct 2012 10:34:41 +0200	[thread overview]
Message-ID: <20121022083441.GA3269@jama.jama.net> (raw)
In-Reply-To: <20121019163541.436A0103AB@opal>

[-- 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 --]

       reply	other threads:[~2012-10-22  8:47 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20121019163541.436A0103AB@opal>
2012-10-22  8:34 ` Martin Jansa [this message]
2012-10-22 10:49   ` [oe-commits] Robert Yang : perl: fix dependecies 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

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20121022083441.GA3269@jama.jama.net \
    --to=martin.jansa@gmail.com \
    --cc=liezhi.yang@windriver.com \
    --cc=openembedded-commits@lists.openembedded.org \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=openembedded-devel@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.