summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKang Kai <kai.kang@windriver.com>2012-12-18 18:16:28 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-01-07 11:09:36 +0000
commit61583fe11f2494e37ec0dd6e3bdeadf33f25f199 (patch)
treee29f0d343260bfc62819c1c4e1133211943284a0
parent52c6393375d49ca469aa9e6bfcc608b74fcb1c44 (diff)
downloadpoky-61583fe11f2494e37ec0dd6e3bdeadf33f25f199.tar.gz
perl: add sub-package perl-tests
In perl source code, run "make test" will run perl test cases. Put these cases into a seprated sub-package then we can run the perl test on target. Add following module to nonxs_ext to install extra modules that required by perl test cases: CPAN/Meta CPAN/Meta/YAML Dumpvalue Env File/CheckTree HTTP/Tiny I18N/Collate JSON/PP Perl/OSType Version/Requirements Commands to run test: cd /opt/perl-tests/t && ./TEST [Yocto 3296] (From OE-Core rev: 96fb96ddd00881947875518df832fa74faec8a45) Signed-off-by: Kang Kai <kai.kang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-devtools/perl/perl-5.14.2/config.sh18
-rw-r--r--meta/recipes-devtools/perl/perl-tests.inc34
-rw-r--r--meta/recipes-devtools/perl/perl_5.14.2.bb3
3 files changed, 53 insertions, 2 deletions
diff --git a/meta/recipes-devtools/perl/perl-5.14.2/config.sh b/meta/recipes-devtools/perl/perl-5.14.2/config.sh
index d1db02e711..324a67c71f 100644
--- a/meta/recipes-devtools/perl/perl-5.14.2/config.sh
+++ b/meta/recipes-devtools/perl/perl-5.14.2/config.sh
@@ -847,7 +847,23 @@ netdb_net_type='in_addr_t'
847nm='nm' 847nm='nm'
848nm_opt='' 848nm_opt=''
849nm_so_opt='--dynamic' 849nm_so_opt='--dynamic'
850nonxs_ext='Archive/Extract Archive/Tar Attribute/Handlers AutoLoader B/Debug B/Deparse B/Lint CGI CPAN CPANPLUS CPANPLUS/Dist/Build Class/ISA Devel/SelfStubber Digest Errno ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/ParseXS File/Fetch File/Path File/Temp FileCache Filter/Simple Getopt/Long I18N/LangTags IO/Compress IO/Zlib IPC/Cmd IPC/Open2 IPC/Open3 Locale/Codes Locale/Maketext Locale/Maketext/Simple Log/Message Log/Message/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Pluggable NEXT Net/Ping Object/Accessor Package/Constants Params/Check Parse/CPAN/Meta PerlIO/via/QuotedPrint Pod/Escapes Pod/Html Pod/LaTeX Pod/Parser Pod/Perldoc Pod/Plainer Pod/Simple Safe SelfLoader Shell Switch Term/ANSIColor Term/Cap Term/UI Test Test/Harness Test/Simple Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Hash/NamedCapture Tie/Memoize Tie/RefHash Time/Local Unicode/Collate XSLoader autodie autouse base bignum constant encoding/warnings if lib libnet parent podlators' 850nonxs_ext='Archive/Extract Archive/Tar Attribute/Handlers AutoLoader B/Debug \
851B/Deparse B/Lint CGI CPAN CPAN/Meta CPAN/Meta/YAML CPANPLUS CPANPLUS/Dist/Build \
852Class/ISA Devel/SelfStubber Digest Dumpvalue Env Errno ExtUtils/CBuilder \
853ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker \
854ExtUtils/Manifest ExtUtils/ParseXS File/CheckTree File/Fetch File/Path File/Temp \
855FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags \
856IO/Compress IO/Zlib IPC/Cmd IPC/Open2 IPC/Open3 JSON/PP Locale/Codes \
857Locale/Maketext Locale/Maketext/Simple Log/Message Log/Message/Simple \
858Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList \
859Module/Load Module/Load/Conditional Module/Loaded Module/Pluggable NEXT Net/Ping \
860Object/Accessor Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType \
861PerlIO/via/QuotedPrint Pod/Escapes Pod/Html Pod/LaTeX Pod/Parser Pod/Perldoc \
862Pod/Plainer Pod/Simple Safe SelfLoader Shell Switch Term/ANSIColor Term/Cap \
863Term/UI Test Test/Harness Test/Simple Text/Balanced Text/ParseWords Text/Tabs \
864Thread/Queue Thread/Semaphore Tie/File Tie/Hash/NamedCapture Tie/Memoize \
865Tie/RefHash Time/Local Unicode/Collate Version/Requirements XSLoader autodie \
866autouse base bignum constant encoding/warnings if lib libnet parent podlators'
851nroff='nroff' 867nroff='nroff'
852nvEUformat='"E"' 868nvEUformat='"E"'
853nvFUformat='"F"' 869nvFUformat='"F"'
diff --git a/meta/recipes-devtools/perl/perl-tests.inc b/meta/recipes-devtools/perl/perl-tests.inc
new file mode 100644
index 0000000000..c968eb645b
--- /dev/null
+++ b/meta/recipes-devtools/perl/perl-tests.inc
@@ -0,0 +1,34 @@
1PACKAGES += "perl-tests"
2PERL_TEST_DIR = "/opt/perl-tests"
3
4do_install_append () {
5 mkdir -p ${D}${PERL_TEST_DIR}
6 cp -pv TestInit.pm MANIFEST config.sh ${D}${PERL_TEST_DIR}/
7
8 tar -cf - t/ | ( cd ${D}${PERL_TEST_DIR} && tar -xf - )
9 ln -sf ${bindir}/perl ${D}${PERL_TEST_DIR}/t/
10 ln -sf ${libdir}/perl/${PV} ${D}${PERL_TEST_DIR}/lib
11
12 for dir in `find ext/ dist/ cpan/ -maxdepth 2 -type d -name t ` ; do
13 tar -cf - $dir | ( cd ${D}${PERL_TEST_DIR} && tar -xf - )
14 done
15 for file in `find ext dist cpan -name \*.t -o -name \test.pl`; do
16 tar -cf - $file | ( cd ${D}${PERL_TEST_DIR} && tar -xf - )
17 done
18
19 # Tweaks to make tests pass
20 cp -pv lib/unicore/TestProp.pl ${D}${libdir}/perl/${PV}/unicore/
21 cp -pv lib/AnyDBM_File.t ${D}${libdir}/perl/${PV}/
22
23 mkdir -p ${D}${libdir}/perl/${PV}/XS
24 cp -pv lib/XS/{APItest,Typemap}.pm ${D}${libdir}/perl/${PV}/XS/
25 mkdir -p ${D}${libdir}/perl/${PV}/auto/XS/APItest
26 cp -pv lib/auto/XS/APItest/APItest.so ${D}${libdir}/perl/${PV}/auto/XS/APItest/
27 cp -pv lib/auto/XS/Typemap/Typemap.so ${D}${libdir}/perl/${PV}/auto/XS/Typemap/
28
29 cp -pv cpan/Digest-MD5/{README,MD5.xs} ${D}${PERL_TEST_DIR}/cpan/Digest-MD5/
30}
31
32FILES_${PN}-tests = "${PERL_TEST_DIR} \
33 ${libdir}/perl/${PV}/AnyDBM_File.t"
34RDEPENDS_${PN}-tests = "${PN}-modules ${PN}-doc ${PN}-misc"
diff --git a/meta/recipes-devtools/perl/perl_5.14.2.bb b/meta/recipes-devtools/perl/perl_5.14.2.bb
index 4dac5ceb86..8cff7f58cf 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)
8DEPENDS = "virtual/db grep-native" 8DEPENDS = "virtual/db grep-native"
9DEPENDS += "gdbm zlib" 9DEPENDS += "gdbm zlib"
10PR = "r15" 10PR = "r16"
11 11
12# 5.10.1 has Module::Build built-in 12# 5.10.1 has Module::Build built-in
13PROVIDES += "libmodule-build-perl" 13PROVIDES += "libmodule-build-perl"
@@ -319,6 +319,7 @@ RPROVIDES_perl-lib = "perl-lib"
319require perl-rdepends_${PV}.inc 319require perl-rdepends_${PV}.inc
320require perl-rprovides.inc 320require perl-rprovides.inc
321require perl-rprovides_${PV}.inc 321require perl-rprovides_${PV}.inc
322include perl-tests.inc
322 323
323SSTATE_SCAN_FILES += "*.pm *.pod *.h *.pl *.sh" 324SSTATE_SCAN_FILES += "*.pm *.pod *.h *.pl *.sh"
324 325