diff options
Diffstat (limited to 'meta')
-rw-r--r-- | meta/classes/ptest-perl.bbclass | 30 | ||||
-rw-r--r-- | meta/files/ptest-perl/run-ptest | 16 |
2 files changed, 46 insertions, 0 deletions
diff --git a/meta/classes/ptest-perl.bbclass b/meta/classes/ptest-perl.bbclass new file mode 100644 index 0000000000..a4bc40b51a --- /dev/null +++ b/meta/classes/ptest-perl.bbclass | |||
@@ -0,0 +1,30 @@ | |||
1 | inherit ptest | ||
2 | |||
3 | FILESEXTRAPATHS_prepend := "${COREBASE}/meta/files:" | ||
4 | |||
5 | SRC_URI += "file://ptest-perl/run-ptest" | ||
6 | |||
7 | do_install_ptest_perl() { | ||
8 | install -d ${D}${PTEST_PATH} | ||
9 | if [ ! -f ${D}${PTEST_PATH}/run-ptest ]; then | ||
10 | install -m 0755 ${WORKDIR}/ptest-perl/run-ptest ${D}${PTEST_PATH} | ||
11 | fi | ||
12 | cp -r ${B}/t ${D}${PTEST_PATH} | ||
13 | chown -R root:root ${D}${PTEST_PATH} | ||
14 | } | ||
15 | |||
16 | FILES_${PN}-ptest_prepend = "${PTEST_PATH}/t/* ${PTEST_PATH}/run-ptest " | ||
17 | |||
18 | RDEPENDS_${PN}-ptest_prepend = "perl " | ||
19 | |||
20 | addtask install_ptest_perl after do_install_ptest_base before do_package | ||
21 | |||
22 | python () { | ||
23 | if not bb.data.inherits_class('native', d) and not bb.data.inherits_class('cross', d): | ||
24 | d.setVarFlag('do_install_ptest_perl', 'fakeroot', '1') | ||
25 | |||
26 | # Remove all '*ptest_perl' tasks when ptest is not enabled | ||
27 | if not(d.getVar('PTEST_ENABLED') == "1"): | ||
28 | for i in ['do_install_ptest_perl']: | ||
29 | bb.build.deltask(i, d) | ||
30 | } | ||
diff --git a/meta/files/ptest-perl/run-ptest b/meta/files/ptest-perl/run-ptest new file mode 100644 index 0000000000..c9f9ca94d0 --- /dev/null +++ b/meta/files/ptest-perl/run-ptest | |||
@@ -0,0 +1,16 @@ | |||
1 | #!/bin/sh | ||
2 | |||
3 | for case in `find t -type f -name '*.t'`; do | ||
4 | perl $case >$case.output 2>&1 | ||
5 | ret=$? | ||
6 | cat $case.output | ||
7 | if [ $ret -ne 0 ]; then | ||
8 | echo "FAIL: ${case%.t}" | ||
9 | elif grep -i 'SKIP' $case.output; then | ||
10 | echo "SKIP: ${case%.t}" | ||
11 | else | ||
12 | echo "PASS: ${case%.t}" | ||
13 | fi | ||
14 | |||
15 | rm -f $case.output | ||
16 | done | ||