From: Robert Yang <liezhi.yang@windriver.com>
To: "Purdie, Richard" <richard.purdie@intel.com>
Cc: openembedded-core@lists.openembedded.org
Subject: Re: [PATCH 1/2] nativesdk-perl: fix dependecy
Date: Tue, 16 Oct 2012 16:16:10 +0800 [thread overview]
Message-ID: <507D17CA.9060309@windriver.com> (raw)
In-Reply-To: <b2e451207c62285312f27eb6a6d2003ecbc534f2.1350300631.git.kai.kang@windriver.com>
Hi Richard,
Here are more details for this problem:
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.
I have checked the value of PACKAGES after do_split_packages, it 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.
The current patch would fix the problem, but I don't know the root cause,
do you have any comments or directions, please?
// Robert
On 10/15/2012 07:32 PM, Kang Kai wrote:
> From: Robert Yang <liezhi.yang@windriver.com>
>
> perl use variable "PACKAGES" to calculate dependency of perl-modules. It
> works for target perl-modules package, but doesn't work for
> nativesdk-perl-modules.
>
> It seems value of "PACKAGES" is cached and doesn't be re-calculate for
> nativesdk build. The root cause is still searching.
>
> This patch is a work around to add each single nativesdk perl modules to
> be nativesdk-perl-modules's dependencies.
>
> Signed-off-by: Kang Kai <kai.kang@windriver.com>
> ---
> meta/recipes-devtools/perl/perl_5.14.2.bb | 4 ++--
> 1 files changed, 2 insertions(+), 2 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..643ec0d 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"
> @@ -294,7 +294,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 +301,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-*"
>
next prev parent reply other threads:[~2012-10-16 8:29 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-10-15 11:32 [PATCH 0/2] Fix nativesdk-perl dependency Kang Kai
2012-10-15 11:32 ` [PATCH 1/2] nativesdk-perl: fix dependecy Kang Kai
2012-10-16 8:16 ` Robert Yang [this message]
2012-10-17 16:20 ` Richard Purdie
2012-10-15 11:32 ` [PATCH 2/2] nativesdk-packagegroup-sdk-host: add perl modules Kang Kai
2012-10-15 20:55 ` Richard Purdie
2012-10-16 1:59 ` Kang Kai
2012-10-17 16:22 ` Richard Purdie
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=507D17CA.9060309@windriver.com \
--to=liezhi.yang@windriver.com \
--cc=openembedded-core@lists.openembedded.org \
--cc=richard.purdie@intel.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox