summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/perl/perl-ptest.inc
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/perl/perl-ptest.inc')
-rw-r--r--meta/recipes-devtools/perl/perl-ptest.inc50
1 files changed, 50 insertions, 0 deletions
diff --git a/meta/recipes-devtools/perl/perl-ptest.inc b/meta/recipes-devtools/perl/perl-ptest.inc
new file mode 100644
index 0000000000..85deb12ce2
--- /dev/null
+++ b/meta/recipes-devtools/perl/perl-ptest.inc
@@ -0,0 +1,50 @@
1inherit ptest
2
3SRC_URI += "file://run-ptest \
4 "
5
6do_install_ptest () {
7 mkdir -p ${D}${PTEST_PATH}
8 cp -pv TestInit.pm MANIFEST config.sh ${D}${PTEST_PATH}/
9
10 tar -cf - t/ | ( cd ${D}${PTEST_PATH} && tar -xf - )
11 ln -sf ${bindir}/perl ${D}${PTEST_PATH}/t/
12 ln -sf ${libdir}/perl/${PV} ${D}${PTEST_PATH}/lib
13
14 for dir in `find ext/ dist/ cpan/ -maxdepth 2 -type d -name t ` ; do
15 tar -cf - $dir | ( cd ${D}${PTEST_PATH} && tar -xf - )
16 done
17 for file in `find ext dist cpan -name \*.t -o -name \test.pl`; do
18 tar -cf - $file | ( cd ${D}${PTEST_PATH} && tar -xf - )
19 done
20
21 # Tweaks to make tests pass
22 cp -pv lib/unicore/TestProp.pl ${D}${libdir}/perl/${PV}/unicore/
23 # Put all *.t files from the lib dir in the ptest package
24 cd lib
25 for file in `find -name \*.t`; do
26 tar -cf - $file | ( cd ${D}${libdir}/perl/${PV} && tar -xf - )
27 done
28 cd ..
29
30 mkdir -p ${D}${libdir}/perl/${PV}/XS
31 cp -pv lib/XS/APItest.pm ${D}${libdir}/perl/${PV}/XS/
32 cp -pv lib/XS/Typemap.pm ${D}${libdir}/perl/${PV}/XS/
33 mkdir -p ${D}${libdir}/perl/${PV}/auto/XS/APItest
34 cp -pv lib/auto/XS/APItest/APItest.so ${D}${libdir}/perl/${PV}/auto/XS/APItest/
35 mkdir -p ${D}${libdir}/perl/${PV}/auto/XS/Typemap
36 cp -pv lib/auto/XS/Typemap/Typemap.so ${D}${libdir}/perl/${PV}/auto/XS/Typemap/
37 cp -pv cpan/Digest-MD5/README ${D}${PTEST_PATH}/cpan/Digest-MD5/
38 cp -pv cpan/Digest-MD5/MD5.xs ${D}${PTEST_PATH}/cpan/Digest-MD5/
39}
40
41python populate_packages_prepend() {
42 # Put all *.t files from the lib dir in the ptest package
43 # do_split_packages requires a pair of () in the regex, but we have nothing
44 # to match, so use an empty pair.
45 if oe.utils.contains('PTEST_ENABLED', '1', True, False, d):
46 do_split_packages(d, d.expand('${libdir}/perl/${PV}'), '.*\.t()',
47 '${PN}-ptest%s', '%s', recursive=True, match_path=True)
48}
49
50RDEPENDS_${PN}-ptest += "${PN}-modules ${PN}-doc ${PN}-misc"