poco: Fix ptests

testrunners file was coming out to be empty after anon python was turned
into a prepend to populate_packages which is executed during do_package
and hence POCO_TESTRUNNERS was not populated when it was used during
do_ptest_install now. Therefore alter the logic to collect the list of
tests to run into testrunners file. Also package the ignore file which
is platform specific, here the lnx version is packaged and specified
using -ignore cmd to tests

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
This commit is contained in:
Khem Raj 2025-07-13 11:46:14 +02:00 committed by Armin Kuster
parent 88f1dc85d8
commit 06fc0278f1
2 changed files with 6 additions and 5 deletions

View File

@ -3,6 +3,6 @@ while read runner; do
oldpath=`pwd` >/dev/null
cd bin
echo Testing $runner
./$runner-testrunner -all
./$runner -ignore $oldpath/cppignore.lnx -all
cd $oldpath >/dev/null
done < testrunners

View File

@ -66,17 +66,14 @@ python populate_packages:prepend () {
poco_libdir = d.expand('${libdir}')
pn = d.getVar("PN")
packages = []
testrunners = []
def hook(f, pkg, file_regex, output_pattern, modulename):
packages.append(pkg)
testrunners.append(modulename)
do_split_packages(d, poco_libdir, r'^libPoco(.*)\.so\..*$',
'poco-%s', 'Poco %s component', extra_depends='', prepend=True, hook=hook)
d.setVar("RRECOMMENDS:%s" % pn, " ".join(packages))
d.setVar("POCO_TESTRUNNERS", "\n".join(testrunners))
}
do_install_ptest () {
@ -84,7 +81,11 @@ do_install_ptest () {
cp -f ${B}/lib/libCppUnit.so* ${D}${libdir}
cp -rf ${B}/*/testsuite/data ${D}${PTEST_PATH}/bin/
find "${D}${PTEST_PATH}" -executable -exec chrpath -d {} \;
echo "${POCO_TESTRUNNERS}" > "${D}${PTEST_PATH}/testrunners"
rm -f ${D}${PTEST_PATH}/testrunners
for f in ${D}${PTEST_PATH}/bin/*-testrunner; do
echo `basename $f` >> ${D}${PTEST_PATH}/testrunners
done
install -Dm 0644 ${S}/cppignore.lnx ${D}${PTEST_PATH}/cppignore.lnx
}
PACKAGES_DYNAMIC = "poco-.*"