diff options
| author | Robert Yang <liezhi.yang@windriver.com> | 2012-10-19 19:22:04 +0800 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-10-19 17:26:14 +0100 |
| commit | 51cbb5ae76a22d465e2f6c5ef923ec2682624e3b (patch) | |
| tree | 6f70f846fea9e1278a3c5e653da7d92bcbbfca1c /meta/recipes-devtools/perl | |
| parent | ee8d3fb19fb0132812dec2bde1dfb7026deb642d (diff) | |
| download | poky-51cbb5ae76a22d465e2f6c5ef923ec2682624e3b.tar.gz | |
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.
(From OE-Core rev: d50be1876f7a41822ef7e73207fdf8cccd39e400)
Signed-off-by: Kang Kai <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/perl')
| -rw-r--r-- | 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 d9206d86d3..d566a79a03 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 \ | |||
| 7 | # We need gnugrep (for -I) | 7 | # We need gnugrep (for -I) |
| 8 | DEPENDS = "virtual/db grep-native" | 8 | DEPENDS = "virtual/db grep-native" |
| 9 | DEPENDS += "gdbm zlib" | 9 | DEPENDS += "gdbm zlib" |
| 10 | PR = "r11" | 10 | PR = "r12" |
| 11 | 11 | ||
| 12 | # 5.10.1 has Module::Build built-in | 12 | # 5.10.1 has Module::Build built-in |
| 13 | PROVIDES += "libmodule-build-perl" | 13 | PROVIDES += "libmodule-build-perl" |
| @@ -243,7 +243,13 @@ perl_package_preprocess () { | |||
| 243 | 243 | ||
| 244 | PACKAGES = "perl-dbg perl perl-misc perl-dev perl-pod perl-doc perl-lib \ | 244 | PACKAGES = "perl-dbg perl perl-misc perl-dev perl-pod perl-doc perl-lib \ |
| 245 | perl-module-cpan perl-module-cpanplus perl-module-unicore" | 245 | perl-module-cpan perl-module-cpanplus perl-module-unicore" |
| 246 | FILES_${PN} = "${bindir}/perl ${bindir}/perl${PV}" | 246 | FILES_${PN} = "${bindir}/perl ${bindir}/perl${PV} \ |
| 247 | ${libdir}/perl/${PV}/Config.pm \ | ||
| 248 | ${libdir}/perl/${PV}/strict.pm \ | ||
| 249 | ${libdir}/perl/${PV}/warnings.pm \ | ||
| 250 | ${libdir}/perl/${PV}/warnings \ | ||
| 251 | ${libdir}/perl/${PV}/vars.pm \ | ||
| 252 | " | ||
| 247 | FILES_${PN}-dev = "${libdir}/perl/${PV}/CORE" | 253 | FILES_${PN}-dev = "${libdir}/perl/${PV}/CORE" |
| 248 | FILES_${PN}-lib = "${libdir}/libperl.so* \ | 254 | FILES_${PN}-lib = "${libdir}/libperl.so* \ |
| 249 | ${libdir}/perl5 \ | 255 | ${libdir}/perl5 \ |
| @@ -294,7 +300,6 @@ FILES_perl-module-unicore += "${libdir}/perl/${PV}/unicore" | |||
| 294 | # packages (actually the non modules packages and not created too) | 300 | # packages (actually the non modules packages and not created too) |
| 295 | ALLOW_EMPTY_perl-modules = "1" | 301 | ALLOW_EMPTY_perl-modules = "1" |
| 296 | PACKAGES_append = " perl-modules " | 302 | PACKAGES_append = " perl-modules " |
| 297 | 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 ', '')}" | ||
| 298 | 303 | ||
| 299 | python populate_packages_prepend () { | 304 | python populate_packages_prepend () { |
| 300 | libdir = d.expand('${libdir}/perl/${PV}') | 305 | libdir = d.expand('${libdir}/perl/${PV}') |
| @@ -302,6 +307,7 @@ python populate_packages_prepend () { | |||
| 302 | do_split_packages(d, libdir, 'auto/([^/]*)/.*', 'perl-module-%s', 'perl module %s', recursive=True, allow_dirs=False, match_path=True, prepend=False) | 307 | do_split_packages(d, libdir, 'auto/([^/]*)/.*', 'perl-module-%s', 'perl module %s', recursive=True, allow_dirs=False, match_path=True, prepend=False) |
| 303 | do_split_packages(d, libdir, 'Module/([^\/]*).*', 'perl-module-%s', 'perl module %s', recursive=True, allow_dirs=False, match_path=True, prepend=False) | 308 | do_split_packages(d, libdir, 'Module/([^\/]*).*', 'perl-module-%s', 'perl module %s', recursive=True, allow_dirs=False, match_path=True, prepend=False) |
| 304 | 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) | 309 | 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) |
| 310 | 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 ', '')) | ||
| 305 | } | 311 | } |
| 306 | 312 | ||
| 307 | PACKAGES_DYNAMIC = "perl-module-*" | 313 | PACKAGES_DYNAMIC = "perl-module-*" |
